From 03637d88e44060480070432593b98115a0e58cbb Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Fri, 15 Mar 2024 13:17:43 -0400 Subject: [PATCH 01/40] Moved Lottie Island project files over to this repo --- .gitignore | 4 +- CppApp/App.xaml | 21 + CppApp/App.xaml.cpp | 38 + CppApp/App.xaml.h | 19 + CppApp/Assets/LottieLogo1.json | 7390 +++++++++++++++++ CppApp/Assets/LottieLogo1.png | Bin 0 -> 17039 bytes CppApp/Assets/SplashScreen.png | Bin 0 -> 78102 bytes CppApp/Assets/Square150x150Logo.png | Bin 0 -> 10887 bytes CppApp/Assets/Square44x44Logo.png | Bin 0 -> 2793 bytes CppApp/Assets/Wide310x150Logo.png | Bin 0 -> 11204 bytes CppApp/Assets/logo.png | Bin 0 -> 3138 bytes CppApp/Assets/windows-sdk.ico | Bin 0 -> 2150 bytes CppApp/CppApp.vcxproj | 215 + CppApp/CppApp.vcxproj.filters | 66 + CppApp/MainPage.xaml | 13 + CppApp/MainPage.xaml.cpp | 41 + CppApp/MainPage.xaml.h | 29 + CppApp/MainWindow.xaml | 13 + CppApp/MainWindow.xaml.cpp | 89 + CppApp/MainWindow.xaml.h | 29 + CppApp/Package.appxmanifest | 60 + CppApp/Project.idl | 50 + CppApp/SampleConfiguration.cpp | 25 + CppApp/SampleConfiguration.h | 15 + CppApp/SettingsPage.xaml | 40 + CppApp/SettingsPage.xaml.cpp | 51 + CppApp/SettingsPage.xaml.h | 23 + CppApp/Styles.xaml | 132 + CppApp/app.manifest | 15 + CppApp/packages.config | 7 + CppApp/pch.cpp | 4 + CppApp/pch.h | 31 + Lottie-Windows.sln | 79 + .../Lottie-Windows-WinUI3.csproj | 2 +- Lottie/AnimatedVisuals.LottieLogo1.cpp | 4310 ++++++++++ Lottie/AnimatedVisuals.LottieLogo1.h | 77 + Lottie/AnimatedVisuals.LottieLogo1.idl | 29 + Lottie/Assets/LottieLogo1.json | 7390 +++++++++++++++++ Lottie/Assets/LottieLogo1.png | Bin 0 -> 17039 bytes Lottie/Resource.h | 32 + Lottie/SimpleIslandApp.cpp | 401 + Lottie/SimpleIslandApp.h | 5 + Lottie/SimpleIslandApp.ico | Bin 0 -> 46227 bytes Lottie/SimpleIslandApp.rc | Bin 0 -> 7142 bytes Lottie/SimpleIslandApp.sln | 182 + Lottie/SimpleIslandApp.vcxproj | 290 + Lottie/SimpleIslandApp.vcxproj.filters | 78 + Lottie/package.appxmanifest | 55 + Lottie/packages.config | 7 + Lottie/pch.cpp | 3 + Lottie/pch.h | 22 + Lottie/small.ico | Bin 0 -> 46227 bytes Lottie/targetver.h | 9 + LottieGen/AnimatedVisuals.LottieLogo1.cpp | 4309 ++++++++++ LottieGen/AnimatedVisuals.LottieLogo1.h | 77 + LottieGen/AnimatedVisuals.LottieLogo1.idl | 29 + LottieIsland/LottieContentIsland.cpp | 136 + LottieIsland/LottieContentIsland.h | 59 + LottieIsland/LottieContentIsland.idl | 29 + LottieIsland/LottieIsland.def | 3 + LottieIsland/LottieIsland.vcxproj | 168 + LottieIsland/LottieIsland.vcxproj.filters | 35 + LottieIsland/PropertySheet.props | 16 + LottieIsland/packages.config | 6 + LottieIsland/pch.cpp | 1 + LottieIsland/pch.h | 29 + LottieIsland/readme.txt | 23 + LottieIsland2/LottieContentIsland2.cs | 111 + LottieIsland2/LottieIsland2.csproj | 21 + LottieLogo1.cs | 4227 ++++++++++ LottieWinRT/LottieVisualSourceWinRT.cs | 81 + LottieWinRT/LottieWinRT.csproj | 21 + source/Lottie/Lottie.projitems | 1 + source/Lottie/LottieVisualSource2.cs | 336 + 74 files changed, 31107 insertions(+), 2 deletions(-) create mode 100644 CppApp/App.xaml create mode 100644 CppApp/App.xaml.cpp create mode 100644 CppApp/App.xaml.h create mode 100644 CppApp/Assets/LottieLogo1.json create mode 100644 CppApp/Assets/LottieLogo1.png create mode 100644 CppApp/Assets/SplashScreen.png create mode 100644 CppApp/Assets/Square150x150Logo.png create mode 100644 CppApp/Assets/Square44x44Logo.png create mode 100644 CppApp/Assets/Wide310x150Logo.png create mode 100644 CppApp/Assets/logo.png create mode 100644 CppApp/Assets/windows-sdk.ico create mode 100644 CppApp/CppApp.vcxproj create mode 100644 CppApp/CppApp.vcxproj.filters create mode 100644 CppApp/MainPage.xaml create mode 100644 CppApp/MainPage.xaml.cpp create mode 100644 CppApp/MainPage.xaml.h create mode 100644 CppApp/MainWindow.xaml create mode 100644 CppApp/MainWindow.xaml.cpp create mode 100644 CppApp/MainWindow.xaml.h create mode 100644 CppApp/Package.appxmanifest create mode 100644 CppApp/Project.idl create mode 100644 CppApp/SampleConfiguration.cpp create mode 100644 CppApp/SampleConfiguration.h create mode 100644 CppApp/SettingsPage.xaml create mode 100644 CppApp/SettingsPage.xaml.cpp create mode 100644 CppApp/SettingsPage.xaml.h create mode 100644 CppApp/Styles.xaml create mode 100644 CppApp/app.manifest create mode 100644 CppApp/packages.config create mode 100644 CppApp/pch.cpp create mode 100644 CppApp/pch.h create mode 100644 Lottie/AnimatedVisuals.LottieLogo1.cpp create mode 100644 Lottie/AnimatedVisuals.LottieLogo1.h create mode 100644 Lottie/AnimatedVisuals.LottieLogo1.idl create mode 100644 Lottie/Assets/LottieLogo1.json create mode 100644 Lottie/Assets/LottieLogo1.png create mode 100644 Lottie/Resource.h create mode 100644 Lottie/SimpleIslandApp.cpp create mode 100644 Lottie/SimpleIslandApp.h create mode 100644 Lottie/SimpleIslandApp.ico create mode 100644 Lottie/SimpleIslandApp.rc create mode 100644 Lottie/SimpleIslandApp.sln create mode 100644 Lottie/SimpleIslandApp.vcxproj create mode 100644 Lottie/SimpleIslandApp.vcxproj.filters create mode 100644 Lottie/package.appxmanifest create mode 100644 Lottie/packages.config create mode 100644 Lottie/pch.cpp create mode 100644 Lottie/pch.h create mode 100644 Lottie/small.ico create mode 100644 Lottie/targetver.h create mode 100644 LottieGen/AnimatedVisuals.LottieLogo1.cpp create mode 100644 LottieGen/AnimatedVisuals.LottieLogo1.h create mode 100644 LottieGen/AnimatedVisuals.LottieLogo1.idl create mode 100644 LottieIsland/LottieContentIsland.cpp create mode 100644 LottieIsland/LottieContentIsland.h create mode 100644 LottieIsland/LottieContentIsland.idl create mode 100644 LottieIsland/LottieIsland.def create mode 100644 LottieIsland/LottieIsland.vcxproj create mode 100644 LottieIsland/LottieIsland.vcxproj.filters create mode 100644 LottieIsland/PropertySheet.props create mode 100644 LottieIsland/packages.config create mode 100644 LottieIsland/pch.cpp create mode 100644 LottieIsland/pch.h create mode 100644 LottieIsland/readme.txt create mode 100644 LottieIsland2/LottieContentIsland2.cs create mode 100644 LottieIsland2/LottieIsland2.csproj create mode 100644 LottieLogo1.cs create mode 100644 LottieWinRT/LottieVisualSourceWinRT.cs create mode 100644 LottieWinRT/LottieWinRT.csproj create mode 100644 source/Lottie/LottieVisualSource2.cs diff --git a/.gitignore b/.gitignore index 5539efd0e..a07454b77 100644 --- a/.gitignore +++ b/.gitignore @@ -234,4 +234,6 @@ msbuild.binlog LottieGenOutput-*/ # Visual Studio debugging configuration file. -launchSettings.json \ No newline at end of file +launchSettings.json + +Generated Files/ \ No newline at end of file diff --git a/CppApp/App.xaml b/CppApp/App.xaml new file mode 100644 index 000000000..4ddf47626 --- /dev/null +++ b/CppApp/App.xaml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + diff --git a/CppApp/App.xaml.cpp b/CppApp/App.xaml.cpp new file mode 100644 index 000000000..869a8fd9e --- /dev/null +++ b/CppApp/App.xaml.cpp @@ -0,0 +1,38 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +#include "pch.h" + +#include "App.xaml.h" +#include "MainWindow.xaml.h" + +namespace winrt +{ + using namespace Windows::Foundation; + using namespace Microsoft::UI::Xaml; +} + +namespace winrt::CppApp::implementation +{ + App::App() + { + InitializeComponent(); + +#if defined _DEBUG && !defined DISABLE_XAML_GENERATED_BREAK_ON_UNHANDLED_EXCEPTION + UnhandledException([](winrt::IInspectable const&, winrt::UnhandledExceptionEventArgs const& e) + { + if (IsDebuggerPresent()) + { + auto errorMessage = e.Message(); + __debugbreak(); + } + }); +#endif + } + + void App::OnLaunched(winrt::LaunchActivatedEventArgs const&) + { + window = winrt::make(); + window.Activate(); + } +} diff --git a/CppApp/App.xaml.h b/CppApp/App.xaml.h new file mode 100644 index 000000000..31b689b93 --- /dev/null +++ b/CppApp/App.xaml.h @@ -0,0 +1,19 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +#pragma once +#include "App.xaml.g.h" +#include "pch.h" + +namespace winrt::CppApp::implementation +{ + struct App : AppT + { + App(); + + void OnLaunched(Microsoft::UI::Xaml::LaunchActivatedEventArgs const&); + + private: + Microsoft::UI::Xaml::Window window{ nullptr }; + }; +} diff --git a/CppApp/Assets/LottieLogo1.json b/CppApp/Assets/LottieLogo1.json new file mode 100644 index 000000000..cb637e3ea --- /dev/null +++ b/CppApp/Assets/LottieLogo1.json @@ -0,0 +1,7390 @@ +{ + "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/CppApp/Assets/LottieLogo1.png b/CppApp/Assets/LottieLogo1.png new file mode 100644 index 0000000000000000000000000000000000000000..45198c75c20bee1032afe869bfafb6b816fa0633 GIT binary patch literal 17039 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 literal 0 HcmV?d00001 diff --git a/CppApp/Assets/Square44x44Logo.png b/CppApp/Assets/Square44x44Logo.png new file mode 100644 index 0000000000000000000000000000000000000000..844b60c201cf8c1eb46866ac5bee1def5e5e6a24 GIT binary patch literal 2793 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 bR~Z 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 WwDLL`=mUcOt0oOr5U&t32>3tVaPEr$ literal 0 HcmV?d00001 diff --git a/CppApp/Assets/logo.png b/CppApp/Assets/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..fd2293e7bd8621a23122c5d65ddcba9ed2dd8f45 GIT binary patch literal 3138 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 Z7r%3*fy_O`MXDNeo#;(s(E^)w`~)@M5;Fh* literal 0 HcmV?d00001 diff --git a/CppApp/CppApp.vcxproj b/CppApp/CppApp.vcxproj new file mode 100644 index 000000000..3a1ef5ddb --- /dev/null +++ b/CppApp/CppApp.vcxproj @@ -0,0 +1,215 @@ + + + + + ..\packages + + + + + + + true + true + true + {34a4ad19-a703-47f3-b279-e505c6a2a935} + CppApp + CppApp + + $(RootNamespace) + en-US + 16.0 + false + true + Windows Store + 10.0 + 10.0 + 10.0.17763.0 + true + true + + + + + Debug + Win32 + + + Debug + x64 + + + Debug + ARM64 + + + Release + Win32 + + + Release + x64 + + + Release + ARM64 + + + + Application + Unicode + true + + + true + true + + + false + true + false + + + + + + + + + + Use + pch.h + $(IntDir)pch.pch + Level4 + %(AdditionalOptions) /bigobj + + + + + _DEBUG;%(PreprocessorDefinitions) + + + + + NDEBUG;%(PreprocessorDefinitions) + + + true + true + + + + + + + + MainPage.xaml + Code + + + + App.xaml + + + MainWindow.xaml + + + + SettingsPage.xaml + Code + + + + + + Designer + + + + Designer + + + Designer + + + + + MainPage.xaml + Code + + + Create + + + App.xaml + + + MainWindow.xaml + + + + + SettingsPage.xaml + Code + + + + + Code + + + + + + + + + + + + + + + + + + true + + + + + + Designer + + + + + {dda0d223-4b59-455d-a8b1-cfae59523ffb} + true + + + + + + + + + + + + This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. + + + + + + + + + + \ No newline at end of file diff --git a/CppApp/CppApp.vcxproj.filters b/CppApp/CppApp.vcxproj.filters new file mode 100644 index 000000000..becc754c3 --- /dev/null +++ b/CppApp/CppApp.vcxproj.filters @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Assets + + + Assets + + + Assets + + + Assets + + + Assets + + + Assets + + + Assets + + + + + {$guid1} + + + + + + + + + + + + + + Assets + + + \ No newline at end of file diff --git a/CppApp/MainPage.xaml b/CppApp/MainPage.xaml new file mode 100644 index 000000000..36d5a9a73 --- /dev/null +++ b/CppApp/MainPage.xaml @@ -0,0 +1,13 @@ + + + + + diff --git a/CppApp/MainPage.xaml.cpp b/CppApp/MainPage.xaml.cpp new file mode 100644 index 000000000..1316df4d8 --- /dev/null +++ b/CppApp/MainPage.xaml.cpp @@ -0,0 +1,41 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +#include "pch.h" +#include "MainPage.xaml.h" +#if __has_include("MainPage.g.cpp") +#include "MainPage.g.cpp" +#endif + +#include +#include + +namespace winrt +{ + using namespace Microsoft::UI::Composition; + using namespace Microsoft::UI::Xaml; + using namespace Microsoft::UI::Xaml::Controls; + using namespace Microsoft::UI::Xaml::Hosting; + using namespace Microsoft::UI::Xaml::Media; + using namespace Microsoft::UI::Xaml::Media::Animation; + using namespace Microsoft::UI::Xaml::Navigation; + using namespace LottieWinRT; +} + +namespace winrt::CppApp::implementation +{ + CppApp::MainPage MainPage::current{ nullptr }; + + MainPage::MainPage() + { + InitializeComponent(); + MainPage::current = *this; + + m_compositor = ElementCompositionPreview::GetElementVisual(MyGrid()).Compositor(); + m_rootVisual = m_compositor.CreateContainerVisual(); + ElementCompositionPreview::SetElementChildVisual(MyGrid(), m_rootVisual); + + winrt::LottieWinRT::LottieVisualSourceWinRT lottieAnimatedVisual; + lottieAnimatedVisual.SetUpLottie(m_compositor, m_rootVisual, L"ms-appx:///LottieLogo1.json"); + } +} diff --git a/CppApp/MainPage.xaml.h b/CppApp/MainPage.xaml.h new file mode 100644 index 000000000..1979ae935 --- /dev/null +++ b/CppApp/MainPage.xaml.h @@ -0,0 +1,29 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +#pragma once +#include "MainPage.g.h" + +namespace winrt::CppApp::implementation +{ + struct MainPage : MainPageT + { + MainPage(); + static CppApp::MainPage Current() { return current; } + static Windows::Foundation::Collections::IVector Scenarios() { return scenariosInner; } + + private: + static Windows::Foundation::Collections::IVector scenariosInner; + static CppApp::MainPage current; + winrt::Microsoft::UI::Composition::Compositor m_compositor{ nullptr }; + winrt::Microsoft::UI::Composition::ContainerVisual m_rootVisual{ nullptr }; + winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisualSource m_animatedVisualSource{ nullptr }; + }; +} + +namespace winrt::CppApp::factory_implementation +{ + struct MainPage : MainPageT + { + }; +} diff --git a/CppApp/MainWindow.xaml b/CppApp/MainWindow.xaml new file mode 100644 index 000000000..a1f056aea --- /dev/null +++ b/CppApp/MainWindow.xaml @@ -0,0 +1,13 @@ + + + + + diff --git a/CppApp/MainWindow.xaml.cpp b/CppApp/MainWindow.xaml.cpp new file mode 100644 index 000000000..4b6d72bf9 --- /dev/null +++ b/CppApp/MainWindow.xaml.cpp @@ -0,0 +1,89 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +#include "pch.h" +#include "MainWindow.xaml.h" +#if __has_include("MainWindow.g.cpp") +#include "MainWindow.g.cpp" + +#include "microsoft.ui.xaml.window.h" +#include "SampleConfiguration.h" +#endif + +namespace winrt +{ + using namespace Microsoft::UI::Xaml; +} + +namespace winrt::CppApp::implementation +{ + MainWindow::MainWindow() + { + InitializeComponent(); + + Title(winrt::CppApp::SampleConfig::FeatureName); + + HWND hwnd = GetWindowHandle(); + LoadIcon(hwnd, L"Assets/windows-sdk.ico"); + SetWindowSize(hwnd, 1050, 800); + PlacementCenterWindowInMonitorWin32(hwnd); + } + + HWND MainWindow::GetWindowHandle() + { + if (_hwnd == nullptr) + { + Window window = *this; + window.as()->get_WindowHandle(&_hwnd); + } + return _hwnd; + } + + void MainWindow::LoadIcon(HWND hwnd, wchar_t const* iconPath) + { + HANDLE hSmallIcon = LoadImageW(nullptr, iconPath, IMAGE_ICON, + GetSystemMetrics(SM_CXSMICON), GetSystemMetrics(SM_CYSMICON), + LR_LOADFROMFILE | LR_SHARED); + SendMessageW(hwnd, WM_SETICON, ICON_SMALL, reinterpret_cast(hSmallIcon)); + + HANDLE hBigIcon = LoadImageW(nullptr, iconPath, IMAGE_ICON, + GetSystemMetrics(SM_CXICON), GetSystemMetrics(SM_CYICON), + LR_LOADFROMFILE | LR_SHARED); + SendMessageW(hwnd, WM_SETICON, ICON_BIG, reinterpret_cast(hBigIcon)); + } + + void MainWindow::SetWindowSize(HWND hwnd, int width, int height) + { + // Win32 uses pixels and WinUI 3 uses effective pixels, so you should apply the DPI scale factor + const UINT dpi = GetDpiForWindow(hwnd); + const float scalingFactor = static_cast(dpi) / 96; + const int widthScaled = static_cast(width * scalingFactor); + const int heightScaled = static_cast(height * scalingFactor); + + SetWindowPos(hwnd, nullptr, 0, 0, widthScaled, heightScaled, SWP_NOMOVE | SWP_NOZORDER); + } + + void MainWindow::PlacementCenterWindowInMonitorWin32(HWND hwnd) + { + RECT windowMontiorRectToAdjust; + GetWindowRect(hwnd, &windowMontiorRectToAdjust); + ClipOrCenterRectToMonitorWin32(windowMontiorRectToAdjust); + SetWindowPos(hwnd, nullptr, windowMontiorRectToAdjust.left, + windowMontiorRectToAdjust.top, 0, 0, SWP_NOSIZE | SWP_NOZORDER | SWP_NOACTIVATE); + } + + void MainWindow::ClipOrCenterRectToMonitorWin32(RECT& adjustedWindowRect) + { + MONITORINFO mi{ sizeof(mi) }; + GetMonitorInfoW(MonitorFromRect(&adjustedWindowRect, MONITOR_DEFAULTTONEAREST), &mi); + + const auto& rcWork = mi.rcWork; + const int w = adjustedWindowRect.right - adjustedWindowRect.left; + const int h = adjustedWindowRect.bottom - adjustedWindowRect.top; + + adjustedWindowRect.left = rcWork.left + (rcWork.right - rcWork.left - w) / 2; + adjustedWindowRect.top = rcWork.top + (rcWork.bottom - rcWork.top - h) / 2; + adjustedWindowRect.right = adjustedWindowRect.left + w; + adjustedWindowRect.bottom = adjustedWindowRect.top + h; + } +} diff --git a/CppApp/MainWindow.xaml.h b/CppApp/MainWindow.xaml.h new file mode 100644 index 000000000..27c0f2b66 --- /dev/null +++ b/CppApp/MainWindow.xaml.h @@ -0,0 +1,29 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +#pragma once +#include "MainWindow.g.h" +#include "pch.h" + +namespace winrt::CppApp::implementation +{ + struct MainWindow : MainWindowT + { + MainWindow(); + + private: + HWND _hwnd{ nullptr }; + void SetWindowSize(HWND hwnd, const int width, const int height); + HWND GetWindowHandle(); + void LoadIcon(HWND hwnd, wchar_t const* iconName); + void ClipOrCenterRectToMonitorWin32(RECT& rc); + void PlacementCenterWindowInMonitorWin32(HWND hwnd); + }; +} + +namespace winrt::CppApp::factory_implementation +{ + struct MainWindow : MainWindowT + { + }; +} diff --git a/CppApp/Package.appxmanifest b/CppApp/Package.appxmanifest new file mode 100644 index 000000000..e72350721 --- /dev/null +++ b/CppApp/Package.appxmanifest @@ -0,0 +1,60 @@ + + + + + + + + CppApp + Microsoft Corporation + Assets\logo.png + + + + + + + + + + + + + + + + + + + + + + + + + WinRT.Host.dll + + + + + + + + + + diff --git a/CppApp/Project.idl b/CppApp/Project.idl new file mode 100644 index 000000000..b97fd728a --- /dev/null +++ b/CppApp/Project.idl @@ -0,0 +1,50 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +namespace CppApp +{ + /* The following code is scenario/feature-specific IDL. + Samples authors should modify these runtime classes as appropriate. */ + + /*[default_interface] + runtimeclass Scenario1_CustomControl : Microsoft.UI.Xaml.Controls.Page + { + Scenario1_CustomControl(); + } + + [default_interface] + runtimeclass Scenario2_UserControl : Microsoft.UI.Xaml.Controls.Page + { + Scenario2_UserControl(); + }*/ + + /* The following code is template-specific IDL. + These runtime classes are the same across all C++/WinRT WinUI samples. */ + + [default_interface] + runtimeclass MainPage : Microsoft.UI.Xaml.Controls.Page + { + MainPage(); + static MainPage Current(); + //void NotifyUser(String strMessage, Microsoft.UI.Xaml.Controls.InfoBarSeverity severity); + } + + // To use Scenario in a winrt::Windows::Foundation::Collections::IVector, Scenario should be a WinRT type + struct Scenario + { + String Title; + String ClassName; + }; + + [default_interface] + runtimeclass MainWindow : Microsoft.UI.Xaml.Window + { + MainWindow(); + } + + [default_interface] + runtimeclass SettingsPage : Microsoft.UI.Xaml.Controls.Page + { + SettingsPage(); + } +} diff --git a/CppApp/SampleConfiguration.cpp b/CppApp/SampleConfiguration.cpp new file mode 100644 index 000000000..2b18ed07b --- /dev/null +++ b/CppApp/SampleConfiguration.cpp @@ -0,0 +1,25 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +#pragma once +#include "pch.h" +#include "SampleConfiguration.h" +#include "MainPage.xaml.h" + +namespace winrt +{ + using namespace Microsoft::UI::Xaml; + using namespace Windows::Foundation::Collections; +} + +namespace winrt::CppApp +{ + IVector implementation::MainPage::scenariosInner = single_threaded_observable_vector( + { + /*Scenario{ L"Custom Control", hstring(name_of())}, + Scenario{ L"User Control", hstring(name_of())}*/ + }); + + hstring SampleConfig::FeatureName{ L"CppApp" }; + ElementTheme SampleConfig::CurrentTheme{ ElementTheme::Default }; +} diff --git a/CppApp/SampleConfiguration.h b/CppApp/SampleConfiguration.h new file mode 100644 index 000000000..26cb27c95 --- /dev/null +++ b/CppApp/SampleConfiguration.h @@ -0,0 +1,15 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +#pragma once +#include "pch.h" + +namespace winrt::CppApp +{ + struct SampleConfig + { + public: + static hstring FeatureName; + static Microsoft::UI::Xaml::ElementTheme CurrentTheme; + }; +} diff --git a/CppApp/SettingsPage.xaml b/CppApp/SettingsPage.xaml new file mode 100644 index 000000000..5a4e12dc0 --- /dev/null +++ b/CppApp/SettingsPage.xaml @@ -0,0 +1,40 @@ + + + + + + + + + + + Light + + + + + Dark + + + + + Default + + + + + + + + + + + diff --git a/CppApp/SettingsPage.xaml.cpp b/CppApp/SettingsPage.xaml.cpp new file mode 100644 index 000000000..b889cc401 --- /dev/null +++ b/CppApp/SettingsPage.xaml.cpp @@ -0,0 +1,51 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +#include "pch.h" +#include "SettingsPage.xaml.h" +#if __has_include("SettingsPage.g.cpp") +#include "SettingsPage.g.cpp" +#endif +#include + +namespace winrt +{ + using namespace Microsoft::UI::Xaml; + using namespace Microsoft::UI::Xaml::Controls; + using namespace Microsoft::UI::Xaml::Navigation; + using namespace Windows::Foundation; +} + +namespace winrt::CppApp::implementation +{ + SettingsPage::SettingsPage() + { + InitializeComponent(); + } + + void SettingsPage::OnNavigatedTo(NavigationEventArgs const&) + { + for (UIElement&& c : themePanel().Children()) + { + auto tag = c.as().Tag().as(); + if (tag == SampleConfig::CurrentTheme) + { + auto radioButton = c.as(); + radioButton.IsChecked(true); + } + } + } + + void SettingsPage::OnThemeRadioButtonChecked(IInspectable const& sender, RoutedEventArgs const&) + { + auto radiobutton = sender.as(); + auto selectedTheme = unbox_value(radiobutton.Tag()); + + auto content = MainPage::Current().Content().as(); + if (content != nullptr) + { + content.RequestedTheme(selectedTheme); + SampleConfig::CurrentTheme = content.RequestedTheme(); + } + } +} diff --git a/CppApp/SettingsPage.xaml.h b/CppApp/SettingsPage.xaml.h new file mode 100644 index 000000000..0fd19146c --- /dev/null +++ b/CppApp/SettingsPage.xaml.h @@ -0,0 +1,23 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +#pragma once + +#include "SettingsPage.g.h" + +namespace winrt::CppApp::implementation +{ + struct SettingsPage : SettingsPageT + { + SettingsPage(); + void OnNavigatedTo(Microsoft::UI::Xaml::Navigation::NavigationEventArgs const& e); + void OnThemeRadioButtonChecked(winrt::Windows::Foundation::IInspectable const& sender, winrt::Microsoft::UI::Xaml::RoutedEventArgs const& e); + }; +} + +namespace winrt::CppApp::factory_implementation +{ + struct SettingsPage : SettingsPageT + { + }; +} diff --git a/CppApp/Styles.xaml b/CppApp/Styles.xaml new file mode 100644 index 000000000..748aef03d --- /dev/null +++ b/CppApp/Styles.xaml @@ -0,0 +1,132 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/CppApp/app.manifest b/CppApp/app.manifest new file mode 100644 index 000000000..6f36cae81 --- /dev/null +++ b/CppApp/app.manifest @@ -0,0 +1,15 @@ + + + + + + + + true/PM + PerMonitorV2, PerMonitor + + + diff --git a/CppApp/packages.config b/CppApp/packages.config new file mode 100644 index 000000000..79483e749 --- /dev/null +++ b/CppApp/packages.config @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/CppApp/pch.cpp b/CppApp/pch.cpp new file mode 100644 index 000000000..40e691ba7 --- /dev/null +++ b/CppApp/pch.cpp @@ -0,0 +1,4 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +#include "pch.h" diff --git a/CppApp/pch.h b/CppApp/pch.h new file mode 100644 index 000000000..6db010fc5 --- /dev/null +++ b/CppApp/pch.h @@ -0,0 +1,31 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +#pragma once +#include +#include +#include +#include + +// Undefine GetCurrentTime macro to prevent +// conflict with Storyboard::GetCurrentTime +#undef GetCurrentTime + +#include +#include +#include +#include //For using xaml_typename + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include diff --git a/Lottie-Windows.sln b/Lottie-Windows.sln index 5bbb5a05f..aba23b3f9 100644 --- a/Lottie-Windows.sln +++ b/Lottie-Windows.sln @@ -171,6 +171,10 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lottie-Windows-WinUI3", "Lo EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LottieSamples", "LottieSamples\LottieSamples.csproj", "{6AB50ED0-6273-4919-9ADE-50195664EF15}" EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CppApp", "CppApp\CppApp.vcxproj", "{34A4AD19-A703-47F3-B279-E505C6A2A935}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LottieWinRT", "LottieWinRT\LottieWinRT.csproj", "{DDA0D223-4B59-455D-A8B1-CFAE59523FFB}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution BETA|Any CPU = BETA|Any CPU @@ -613,6 +617,81 @@ Global {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|x86.ActiveCfg = Release|x86 {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|x86.Build.0 = Release|x86 {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|x86.Deploy.0 = Release|x86 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|Any CPU.ActiveCfg = Debug|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|Any CPU.Build.0 = Debug|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|Any CPU.Deploy.0 = Debug|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|ARM.ActiveCfg = Debug|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|ARM.Build.0 = Debug|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|ARM.Deploy.0 = Debug|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|ARM64.ActiveCfg = Debug|ARM64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|ARM64.Build.0 = Debug|ARM64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|ARM64.Deploy.0 = Debug|ARM64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|x64.ActiveCfg = Debug|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|x64.Build.0 = Debug|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|x64.Deploy.0 = Debug|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|x86.ActiveCfg = Debug|Win32 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|x86.Build.0 = Debug|Win32 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|x86.Deploy.0 = Debug|Win32 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|Any CPU.ActiveCfg = Debug|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|Any CPU.Build.0 = Debug|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|Any CPU.Deploy.0 = Debug|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|ARM.ActiveCfg = Debug|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|ARM.Build.0 = Debug|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|ARM.Deploy.0 = Debug|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|ARM64.Build.0 = Debug|ARM64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|ARM64.Deploy.0 = Debug|ARM64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|x64.ActiveCfg = Debug|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|x64.Build.0 = Debug|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|x64.Deploy.0 = Debug|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|x86.ActiveCfg = Debug|Win32 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|x86.Build.0 = Debug|Win32 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|x86.Deploy.0 = Debug|Win32 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|Any CPU.ActiveCfg = Release|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|Any CPU.Build.0 = Release|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|Any CPU.Deploy.0 = Release|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|ARM.ActiveCfg = Release|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|ARM.Build.0 = Release|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|ARM.Deploy.0 = Release|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|ARM64.ActiveCfg = Release|ARM64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|ARM64.Build.0 = Release|ARM64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|ARM64.Deploy.0 = Release|ARM64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|x64.ActiveCfg = Release|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|x64.Build.0 = Release|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|x64.Deploy.0 = Release|x64 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|x86.ActiveCfg = Release|Win32 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|x86.Build.0 = Release|Win32 + {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|x86.Deploy.0 = Release|Win32 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.ActiveCfg = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.Build.0 = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.ActiveCfg = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.Build.0 = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM64.ActiveCfg = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM64.Build.0 = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x64.ActiveCfg = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x64.Build.0 = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x86.ActiveCfg = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x86.Build.0 = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.Build.0 = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.ActiveCfg = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.Build.0 = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM64.Build.0 = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x64.ActiveCfg = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x64.Build.0 = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x86.ActiveCfg = Debug|x86 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x86.Build.0 = Debug|x86 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.ActiveCfg = Release|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.Build.0 = Release|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM.ActiveCfg = Release|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM.Build.0 = Release|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM64.ActiveCfg = Release|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM64.Build.0 = Release|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|x64.ActiveCfg = Release|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|x64.Build.0 = Release|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|x86.ActiveCfg = Release|x86 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|x86.Build.0 = Release|x86 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj b/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj index 4414d8626..29a711ed8 100644 --- a/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj +++ b/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj @@ -1,7 +1,7 @@  - net7.0-windows10.0.18362.0 + net7.0-windows10.0.19041.0 Library CommunityToolkit.WinUI.Lottie diff --git a/Lottie/AnimatedVisuals.LottieLogo1.cpp b/Lottie/AnimatedVisuals.LottieLogo1.cpp new file mode 100644 index 000000000..507d03cf9 --- /dev/null +++ b/Lottie/AnimatedVisuals.LottieLogo1.cpp @@ -0,0 +1,4310 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// LottieGen version: +// 8.0.230813-rc.7+0443b1e789 +// +// Command: +// LottieGen -Language Cppwinrt -WinUIVersion 3.0 -InputFile LottieLogo1.json +// +// Input file: +// LottieLogo1.json (190271 bytes created 0:40-04:00 Mar 13 2024) +// +// LottieGen source: +// http://aka.ms/Lottie +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ +// ____________________________________ +// | Object stats | Count | +// |__________________________|_______| +// | All CompositionObjects | 610 | +// |--------------------------+-------| +// | Expression animators | 52 | +// | KeyFrame animators | 121 | +// | Reference parameters | 52 | +// | Expression operations | 0 | +// |--------------------------+-------| +// | Animated brushes | - | +// | Animated gradient stops | - | +// | ExpressionAnimations | 50 | +// | PathKeyFrameAnimations | - | +// |--------------------------+-------| +// | ContainerVisuals | 1 | +// | ShapeVisuals | 1 | +// |--------------------------+-------| +// | ContainerShapes | 23 | +// | CompositionSpriteShapes | 45 | +// |--------------------------+-------| +// | Brushes | 3 | +// | Gradient stops | - | +// | CompositionVisualSurface | - | +// ------------------------------------ +#include "pch.h" +#include "AnimatedVisuals.LottieLogo1.h" +#if __has_include ("AnimatedVisuals.LottieLogo1.g.cpp") +#include "AnimatedVisuals.LottieLogo1.g.cpp" +#endif +#include +#include +#include +#include +#include "d2d1.h" +#include +#include +#include +#ifdef BUILD_WINDOWS +namespace ABI +{ +#include +} +#else +#include +#endif +#include + +using namespace winrt::Microsoft::UI; +using namespace winrt::Microsoft::UI::Composition; +using namespace winrt::Microsoft::UI::Xaml::Controls; +using namespace winrt::Windows::Foundation; +using namespace winrt::Windows::Foundation::Numerics; +using namespace winrt::Windows::Graphics; +using Color = winrt::Windows::UI::Color; +using CompositionPropertySet = winrt::Microsoft::UI::Composition::CompositionPropertySet; +using TimeSpan = winrt::Windows::Foundation::TimeSpan; + +namespace winrt::AnimatedVisuals::implementation +{ + class CanvasGeometry : public winrt::implements + { + winrt::com_ptr _geometry{ nullptr }; + + public: + CanvasGeometry(winrt::com_ptr geometry) + : _geometry{ geometry } + { } + + // IGeometrySource2D. + winrt::com_ptr Geometry() { return _geometry; } + + // IGeometrySource2DInterop. + IFACEMETHODIMP GetGeometry(ID2D1Geometry** value) noexcept(true) override + { + _geometry.copy_to(value); + return S_OK; + } + + // IGeometrySource2DInterop. + IFACEMETHODIMP TryGetGeometryUsingFactory(ID2D1Factory*, ID2D1Geometry**) noexcept(true) override + { + return E_NOTIMPL; + } + }; + class LottieLogo1_AnimatedVisual : public winrt::implements + { + winrt::com_ptr _d2dFactory{ nullptr }; + static constexpr int64_t c_durationTicks{ 59666666L }; + Compositor const _c{ nullptr }; + ExpressionAnimation const _reusableExpressionAnimation{ nullptr }; + AnimationController _animationController_0{ nullptr }; + AnimationController _animationController_1{ nullptr }; + CompositionColorBrush _colorBrush_AlmostTeal_FF007A87{ nullptr }; + CompositionColorBrush _colorBrush_White{ nullptr }; + CompositionContainerShape _containerShape_00{ nullptr }; + CompositionContainerShape _containerShape_01{ nullptr }; + CompositionContainerShape _containerShape_02{ nullptr }; + CompositionContainerShape _containerShape_03{ nullptr }; + CompositionContainerShape _containerShape_04{ nullptr }; + CompositionContainerShape _containerShape_05{ nullptr }; + CompositionContainerShape _containerShape_06{ nullptr }; + CompositionContainerShape _containerShape_07{ nullptr }; + CompositionContainerShape _containerShape_08{ nullptr }; + CompositionContainerShape _containerShape_09{ nullptr }; + CompositionContainerShape _containerShape_10{ nullptr }; + CompositionContainerShape _containerShape_11{ nullptr }; + CompositionContainerShape _containerShape_12{ nullptr }; + CompositionContainerShape _containerShape_13{ nullptr }; + CompositionContainerShape _containerShape_14{ nullptr }; + CompositionContainerShape _containerShape_15{ nullptr }; + CompositionContainerShape _containerShape_16{ nullptr }; + CompositionContainerShape _containerShape_17{ nullptr }; + CompositionContainerShape _containerShape_18{ nullptr }; + CompositionContainerShape _containerShape_19{ nullptr }; + CompositionContainerShape _containerShape_20{ nullptr }; + CompositionContainerShape _containerShape_21{ nullptr }; + CompositionContainerShape _containerShape_22{ nullptr }; + CompositionEllipseGeometry _ellipse_0_0{ nullptr }; + CompositionEllipseGeometry _ellipse_0_1{ nullptr }; + CompositionEllipseGeometry _ellipse_4p7{ nullptr }; + CompositionPath _path_0{ nullptr }; + CompositionPath _path_1{ nullptr }; + CompositionPath _path_2{ nullptr }; + CompositionPath _path_3{ nullptr }; + CompositionPath _path_4{ nullptr }; + CompositionPath _path_5{ nullptr }; + CompositionPath _path_6{ nullptr }; + CompositionPath _path_7{ nullptr }; + CompositionPath _path_8{ nullptr }; + CompositionPathGeometry _pathGeometry_00{ nullptr }; + CompositionPathGeometry _pathGeometry_01{ nullptr }; + CompositionPathGeometry _pathGeometry_02{ nullptr }; + CompositionPathGeometry _pathGeometry_03{ nullptr }; + CompositionPathGeometry _pathGeometry_04{ nullptr }; + CompositionPathGeometry _pathGeometry_05{ nullptr }; + CompositionPathGeometry _pathGeometry_06{ nullptr }; + CompositionPathGeometry _pathGeometry_07{ nullptr }; + CompositionPathGeometry _pathGeometry_08{ nullptr }; + CompositionPathGeometry _pathGeometry_09{ nullptr }; + CompositionPathGeometry _pathGeometry_10{ nullptr }; + CompositionPathGeometry _pathGeometry_11{ nullptr }; + CompositionPathGeometry _pathGeometry_12{ nullptr }; + CompositionPathGeometry _pathGeometry_13{ nullptr }; + CompositionPathGeometry _pathGeometry_14{ nullptr }; + CompositionPathGeometry _pathGeometry_15{ nullptr }; + CompositionPathGeometry _pathGeometry_16{ nullptr }; + CompositionPathGeometry _pathGeometry_17{ nullptr }; + CompositionPathGeometry _pathGeometry_18{ nullptr }; + CompositionPathGeometry _pathGeometry_19{ nullptr }; + CompositionPathGeometry _pathGeometry_20{ nullptr }; + CompositionPathGeometry _pathGeometry_21{ nullptr }; + CompositionPathGeometry _pathGeometry_22{ nullptr }; + CompositionPathGeometry _pathGeometry_23{ nullptr }; + CompositionPathGeometry _pathGeometry_24{ nullptr }; + CompositionPathGeometry _pathGeometry_25{ nullptr }; + CompositionPathGeometry _pathGeometry_26{ nullptr }; + CompositionPathGeometry _pathGeometry_27{ nullptr }; + CompositionPathGeometry _pathGeometry_28{ nullptr }; + CompositionPathGeometry _pathGeometry_29{ nullptr }; + CompositionPathGeometry _pathGeometry_30{ nullptr }; + CompositionPathGeometry _pathGeometry_31{ nullptr }; + CompositionPathGeometry _pathGeometry_32{ nullptr }; + CompositionPathGeometry _pathGeometry_33{ nullptr }; + CompositionPathGeometry _pathGeometry_34{ nullptr }; + CompositionPathGeometry _pathGeometry_35{ nullptr }; + CompositionPathGeometry _pathGeometry_36{ nullptr }; + CompositionPathGeometry _pathGeometry_37{ nullptr }; + CompositionPathGeometry _pathGeometry_38{ nullptr }; + CompositionSpriteShape _spriteShape_11{ nullptr }; + CompositionSpriteShape _spriteShape_12{ nullptr }; + CompositionSpriteShape _spriteShape_13{ nullptr }; + CompositionSpriteShape _spriteShape_14{ nullptr }; + CompositionSpriteShape _spriteShape_15{ nullptr }; + CompositionSpriteShape _spriteShape_19{ nullptr }; + CompositionSpriteShape _spriteShape_22{ nullptr }; + CompositionSpriteShape _spriteShape_23{ nullptr }; + CompositionSpriteShape _spriteShape_36{ nullptr }; + CompositionSpriteShape _spriteShape_37{ nullptr }; + CompositionSpriteShape _spriteShape_38{ nullptr }; + ContainerVisual _root{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_0{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_1{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_2{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_3{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_4{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_5{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_6{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_7{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_8{ nullptr }; + ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_02{ nullptr }; + ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_03{ nullptr }; + ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_06{ nullptr }; + ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_11{ nullptr }; + ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_13{ nullptr }; + ScalarKeyFrameAnimation _tStartScalarAnimation_0_to_0p249{ nullptr }; + ScalarKeyFrameAnimation _tStartScalarAnimation_0p87_to_0_02{ nullptr }; + StepEasingFunction _holdThenStepEasingFunction{ nullptr }; + StepEasingFunction _stepThenHoldEasingFunction{ nullptr }; + Vector2KeyFrameAnimation _offsetVector2Animation_02{ nullptr }; + Vector2KeyFrameAnimation _offsetVector2Animation_03{ nullptr }; + Vector2KeyFrameAnimation _offsetVector2Animation_04{ nullptr }; + Vector2KeyFrameAnimation _offsetVector2Animation_05{ nullptr }; + Vector2KeyFrameAnimation _offsetVector2Animation_06{ nullptr }; + Vector2KeyFrameAnimation _radiusVector2Animation{ nullptr }; + Vector2KeyFrameAnimation _shapeVisibilityAnimation_04{ nullptr }; + + void BindProperty( + CompositionObject target, + winrt::hstring animatedPropertyName, + winrt::hstring expression, + winrt::hstring referenceParameterName, + CompositionObject referencedObject) + { + _reusableExpressionAnimation.ClearAllParameters(); + _reusableExpressionAnimation.Expression(expression); + _reusableExpressionAnimation.SetReferenceParameter(referenceParameterName, referencedObject); + target.StartAnimation(animatedPropertyName, _reusableExpressionAnimation); + } + + ScalarKeyFrameAnimation CreateScalarKeyFrameAnimation(float initialProgress, float initialValue, CompositionEasingFunction initialEasingFunction) + { + const auto result = _c.CreateScalarKeyFrameAnimation(); + result.Duration(TimeSpan{ c_durationTicks }); + result.InsertKeyFrame(initialProgress, initialValue, initialEasingFunction); + return result; + } + + Vector2KeyFrameAnimation CreateVector2KeyFrameAnimation(float initialProgress, float2 initialValue, CompositionEasingFunction initialEasingFunction) + { + const auto result = _c.CreateVector2KeyFrameAnimation(); + result.Duration(TimeSpan{ c_durationTicks }); + result.InsertKeyFrame(initialProgress, initialValue, initialEasingFunction); + return result; + } + + CompositionSpriteShape CreateSpriteShape(CompositionGeometry geometry, float3x2 transformMatrix) + { + const auto result = _c.CreateSpriteShape(geometry); + result.TransformMatrix(transformMatrix); + return result; + } + + CompositionSpriteShape CreateSpriteShape(CompositionGeometry geometry, float3x2 transformMatrix, CompositionBrush fillBrush) + { + const auto result = _c.CreateSpriteShape(geometry); + result.TransformMatrix(transformMatrix); + result.FillBrush(fillBrush); + return result; + } + + AnimationController AnimationController_0() + { + if (_animationController_0 != nullptr) { return _animationController_0; } + const auto result = _animationController_0 = _c.CreateAnimationController(); + result.Pause(); + BindProperty(_animationController_0, L"Progress", L"_.Progress", L"_", _root); + return result; + } + + // - Layer aggregator + // Layer: Dot1 + AnimationController AnimationController_1() + { + if (_animationController_1 != nullptr) { return _animationController_1; } + const auto result = _animationController_1 = _c.CreateAnimationController(); + result.Pause(); + BindProperty(_animationController_1, L"Progress", L"_.Progress*0.9835165+0.01648352", L"_", _root); + return result; + } + + winrt::com_ptr Geometry_00() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -13.6639996F, -0.144999996F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 75.663002F, 0.289999992F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_01() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 0.859000027F, -21.1429996F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ -4.35900021F, 70.3919983F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_02() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -26.6700001F, -0.282999992F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 99.1709976F, 0.0659999996F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_03() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -13.6639996F, -0.144999996F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 62.1629982F, 0.289999992F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_04() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -30.7199993F, 63.7610016F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddBezier({ { -30.6889992F, 63.1669998F }, { -30.7889996F, 50.8470001F }, { -30.7409992F, 45.1920013F } }); + sink->AddBezier({ { -30.6650009F, 36.2140007F }, { -37.3429985F, 27.0739994F }, { -37.3969994F, 27.0139999F } }); + sink->AddBezier({ { -38.5579987F, 25.7140007F }, { -39.7519989F, 24.1469994F }, { -40.6980019F, 22.6609993F } }); + sink->AddBezier({ { -46.637001F, 13.3339996F }, { -47.8400002F, 0.933000028F }, { -37.8730011F, -7.1170001F } }); + sink->AddBezier({ { -13.1960001F, -27.0459995F }, { 8.96000004F, 11.559F }, { 49.5060005F, 11.559F } }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_05() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 246.649994F, 213.813995F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 340.955994F, 213.628006F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_06() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 1.68099999F, -29.9920006F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ -1.68099999F, 29.9920006F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_07() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 1.76800001F, -25.9659996F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ -1.76800001F, 25.9659996F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_08() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -8.83699989F, -58.2290001F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddBezier({ { -8.83699989F, -58.2290001F }, { -10.1630001F, 29.4950008F }, { -35.8339996F, 33.6619987F } }); + sink->AddBezier({ { -44.0579987F, 34.9970016F }, { -50.2319984F, 30.0499992F }, { -51.6879997F, 23.1480007F } }); + sink->AddBezier({ { -53.144001F, 16.2450008F }, { -49.6549988F, 9.15600014F }, { -41.1739998F, 7.29300022F } }); + sink->AddBezier({ { -17.3570004F, 2.05999994F }, { 4.23500013F, 57.1879997F }, { 51.7970009F, 44.1780014F } }); + sink->AddBezier({ { 51.9570007F, 44.1339989F }, { 52.6870003F, 43.8740005F }, { 53.1879997F, 43.7410011F } }); + sink->AddBezier({ { 53.6889992F, 43.6080017F }, { 68.9710007F, 41.3569984F }, { 140.393997F, 43.6720009F } }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_09() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -67.125F, -112.0F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddBezier({ { -67.125F, -112.0F }, { -73.5579987F, -100.719002F }, { -75.4580002F, -89.9509964F } }); + sink->AddBezier({ { -78.625F, -72.0F }, { -79.375F, -58.25F }, { -80.375F, -39.25F } }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_10() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -67.25F, -105.5F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddBezier({ { -67.25F, -105.5F }, { -70.4329987F, -94.9690018F }, { -72.3330002F, -84.2009964F } }); + sink->AddBezier({ { -75.5F, -66.25F }, { -75.5F, -56.75F }, { -76.5F, -37.75F } }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_11() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 34.5F, -13.0500002F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddBezier({ { 7.5F, -14.5F }, { -4.0F, -37.0F }, { -35.0460014F, -35.5789986F } }); + sink->AddBezier({ { -61.4720001F, -34.3689995F }, { -62.25F, -5.75F }, { -62.25F, -5.75F } }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_12() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -3.0F, 35.9500008F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddBezier({ { -3.0F, 35.9500008F }, { -1.5F, 7.5F }, { -1.352F, -6.75600004F } }); + sink->AddBezier({ { -9.90299988F, -15.0190001F }, { -21.5699997F, -20.5790005F }, { -32.0460014F, -20.5790005F } }); + sink->AddBezier({ { -53.5F, -20.5790005F }, { -42.25F, 4.25F }, { -42.25F, 4.25F } }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_13() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 16.2310009F, 39.0730019F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ -32.769001F, 57.3650017F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_14() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 7.44999981F, 21.9500008F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ -32.75F, 55.75F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_15() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -94.5F, 37.0730019F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ -48.769001F, 55.3650017F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_16() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -87.5F, 20.9500008F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ -48.75F, 54.75F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_17() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 166.731003F, -7.92700005F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 136.731003F, 7.11499977F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_18() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 156.449997F, -23.0499992F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 132.0F, 2.75F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_19() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 169.5F, 18.073F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 137.481003F, 11.3649998F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_20() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 119.5F, -45.0499992F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 82.75F, -44.75F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_21() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 119.25F, -20.0499992F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 63.5F, -20.5F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_22() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 128.0F, 3.6500001F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 78.25F, 3.5F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_23() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 149.623993F, 8.24400043F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 136.647995F, 10.1560001F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_24() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 144.429001F, -5.39699984F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 132.274994F, 4.73099995F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_25() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 145.677002F, 22.2199993F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 134.921997F, 14.7489996F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_26() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 147.699005F, 13.0249996F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 133.195007F, 13.21F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_27() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 142.182999F, -5.11199999F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 130.029007F, 5.01599979F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_28() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 142.037994F, 29.2779999F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 131.281998F, 21.8069992F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + // - Layer aggregator + // Offset:<187.5, 333.5> + CompositionColorBrush ColorBrush_AlmostDarkTurquoise_FF00D1C1() + { + return _c.CreateColorBrush({ 0xFF, 0x00, 0xD1, 0xC1 }); + } + + CompositionColorBrush ColorBrush_AlmostTeal_FF007A87() + { + return (_colorBrush_AlmostTeal_FF007A87 == nullptr) + ? _colorBrush_AlmostTeal_FF007A87 = _c.CreateColorBrush({ 0xFF, 0x00, 0x7A, 0x87 }) + : _colorBrush_AlmostTeal_FF007A87; + } + + CompositionColorBrush ColorBrush_White() + { + return (_colorBrush_White == nullptr) + ? _colorBrush_White = _c.CreateColorBrush({ 0xFF, 0xFF, 0xFF, 0xFF }) + : _colorBrush_White; + } + + // Layer aggregator + // Transforms for Bncr + CompositionContainerShape ContainerShape_00() + { + if (_containerShape_00 != nullptr) { return _containerShape_00; } + const auto result = _containerShape_00 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // Transforms: Dot-Y + result.Shapes().Append(ContainerShape_01()); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + // Transforms for Dot-Y + CompositionContainerShape ContainerShape_01() + { + if (_containerShape_01 != nullptr) { return _containerShape_01; } + const auto result = _containerShape_01 = _c.CreateContainerShape(); + // ShapeGroup: Ellipse 1 Offset:<196, 267> + result.Shapes().Append(SpriteShape_01()); + return result; + } + + // Layer aggregator + // Transforms for E3-Y + CompositionContainerShape ContainerShape_02() + { + if (_containerShape_02 != nullptr) { return _containerShape_02; } + const auto result = _containerShape_02 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // ShapeGroup: Group 1 Offset:<344.674, 261.877> + result.Shapes().Append(SpriteShape_02()); + return result; + } + + // Layer aggregator + // Transforms for E3-Y + CompositionContainerShape ContainerShape_03() + { + if (_containerShape_03 != nullptr) { return _containerShape_03; } + const auto result = _containerShape_03 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // Transforms: E3-B Offset:<0.06500244, 0> + result.Shapes().Append(SpriteShape_03()); + return result; + } + + // Layer aggregator + // Transforms for I-Y + CompositionContainerShape ContainerShape_04() + { + if (_containerShape_04 != nullptr) { return _containerShape_04; } + const auto result = _containerShape_04 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // ShapeGroup: Group 6 Offset:<304.135, 282.409> + result.Shapes().Append(SpriteShape_04()); + return result; + } + + // Layer aggregator + // Transforms for I-Y + CompositionContainerShape ContainerShape_05() + { + if (_containerShape_05 != nullptr) { return _containerShape_05; } + const auto result = _containerShape_05 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // Transforms: I-B + result.Shapes().Append(SpriteShape_05()); + return result; + } + + // Layer aggregator + // Transforms for E2-Y + CompositionContainerShape ContainerShape_06() + { + if (_containerShape_06 != nullptr) { return _containerShape_06; } + const auto result = _containerShape_06 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // ShapeGroup: Group 3 Offset:<331.664, 238.14> + result.Shapes().Append(SpriteShape_06()); + return result; + } + + // Layer aggregator + // Transforms for E2-Y + CompositionContainerShape ContainerShape_07() + { + if (_containerShape_07 != nullptr) { return _containerShape_07; } + const auto result = _containerShape_07 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // Transforms: E2-B + result.Shapes().Append(SpriteShape_07()); + return result; + } + + // Layer aggregator + // Transforms for E1-Y + CompositionContainerShape ContainerShape_08() + { + if (_containerShape_08 != nullptr) { return _containerShape_08; } + const auto result = _containerShape_08 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // ShapeGroup: Group 2 Offset:<344.672, 214.842> + result.Shapes().Append(SpriteShape_08()); + return result; + } + + // Layer aggregator + // Transforms for E1-Y + CompositionContainerShape ContainerShape_09() + { + if (_containerShape_09 != nullptr) { return _containerShape_09; } + const auto result = _containerShape_09 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // Transforms: E1-B + result.Shapes().Append(SpriteShape_09()); + return result; + } + + // Layer aggregator + // Transforms for T1a-Y + CompositionContainerShape ContainerShape_10() + { + if (_containerShape_10 != nullptr) { return _containerShape_10; } + const auto result = _containerShape_10 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // ShapeGroup: Group 9 Offset:<227.677, 234.375> + result.Shapes().Append(SpriteShape_10()); + return result; + } + + // Layer aggregator + // Transforms for O-Y + CompositionContainerShape ContainerShape_11() + { + if (_containerShape_11 != nullptr) { return _containerShape_11; } + const auto result = _containerShape_11 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + const auto shapes = result.Shapes(); + // ShapeGroup: Ellipse 1 Offset:<196, 267> + shapes.Append(SpriteShape_16()); + // ShapeGroup: Ellipse 1 Offset:<196, 267> + shapes.Append(SpriteShape_17()); + return result; + } + + // Layer aggregator + // Transforms for T1a-Y 2 + CompositionContainerShape ContainerShape_12() + { + if (_containerShape_12 != nullptr) { return _containerShape_12; } + const auto result = _containerShape_12 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // ShapeGroup: Group 9 Offset:<227.677, 234.375> + result.Shapes().Append(SpriteShape_18()); + return result; + } + + // Layer aggregator + // Transforms for T1a-Y + CompositionContainerShape ContainerShape_13() + { + if (_containerShape_13 != nullptr) { return _containerShape_13; } + const auto result = _containerShape_13 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // Transforms: T1a-B + result.Shapes().Append(SpriteShape_20()); + return result; + } + + // Layer aggregator + // Transforms for N + CompositionContainerShape ContainerShape_14() + { + if (_containerShape_14 != nullptr) { return _containerShape_14; } + const auto result = _containerShape_14 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // Transforms: Dot-Y + result.Shapes().Append(ContainerShape_15()); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + // Transforms for Dot-Y + CompositionContainerShape ContainerShape_15() + { + if (_containerShape_15 != nullptr) { return _containerShape_15; } + const auto result = _containerShape_15 = _c.CreateContainerShape(); + // ShapeGroup: Ellipse 1 Offset:<196, 267> + result.Shapes().Append(SpriteShape_21()); + return result; + } + + // Layer aggregator + // Transforms for Dot1 + CompositionContainerShape ContainerShape_16() + { + if (_containerShape_16 != nullptr) { return _containerShape_16; } + const auto result = _containerShape_16 = _c.CreateContainerShape(); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // ShapeGroup: Ellipse 1 Offset:<196, 267> + result.Shapes().Append(SpriteShape_24()); + return result; + } + + // Layer aggregator + // Layer: S1-Y + CompositionContainerShape ContainerShape_17() + { + if (_containerShape_17 != nullptr) { return _containerShape_17; } + const auto result = _containerShape_17 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + const auto shapes = result.Shapes(); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_25()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_26()); + return result; + } + + // Layer aggregator + // Layer: S7 + CompositionContainerShape ContainerShape_18() + { + if (_containerShape_18 != nullptr) { return _containerShape_18; } + const auto result = _containerShape_18 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + const auto shapes = result.Shapes(); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_27()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_28()); + return result; + } + + // Layer aggregator + // Layer: S3-Y + CompositionContainerShape ContainerShape_19() + { + if (_containerShape_19 != nullptr) { return _containerShape_19; } + const auto result = _containerShape_19 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + const auto shapes = result.Shapes(); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_29()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_30()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_31()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_32()); + return result; + } + + // Layer aggregator + // Layer: S3-Y 2 + CompositionContainerShape ContainerShape_20() + { + if (_containerShape_20 != nullptr) { return _containerShape_20; } + const auto result = _containerShape_20 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + const auto shapes = result.Shapes(); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_33()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_34()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_35()); + return result; + } + + // Layer aggregator + // Layer: S3-Y 3 + CompositionContainerShape ContainerShape_21() + { + if (_containerShape_21 != nullptr) { return _containerShape_21; } + const auto result = _containerShape_21 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + const auto shapes = result.Shapes(); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_39()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_40()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_41()); + return result; + } + + // Layer aggregator + // Layer: S3-Y 4 + CompositionContainerShape ContainerShape_22() + { + if (_containerShape_22 != nullptr) { return _containerShape_22; } + const auto result = _containerShape_22 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + const auto shapes = result.Shapes(); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_42()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_43()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_44()); + return result; + } + + // - - Layer aggregator + // - Layer: O-Y + // ShapeGroup: Ellipse 1 Offset:<196, 267> + // Ellipse Path 1.EllipseGeometry + CompositionEllipseGeometry Ellipse_0_0() + { + if (_ellipse_0_0 != nullptr) { return _ellipse_0_0; } + const auto result = _ellipse_0_0 = _c.CreateEllipseGeometry(); + result.Center({ 0.800000012F, -0.5F }); + result.Radius({ 0.0F, 0.0F }); + return result; + } + + // - - Layer aggregator + // - Layer: O-Y + // ShapeGroup: Ellipse 1 Offset:<196, 267> + // Ellipse Path 1.EllipseGeometry + CompositionEllipseGeometry Ellipse_0_1() + { + if (_ellipse_0_1 != nullptr) { return _ellipse_0_1; } + const auto result = _ellipse_0_1 = _c.CreateEllipseGeometry(); + result.Center({ 0.800000012F, -0.5F }); + result.Radius({ 0.0F, 0.0F }); + return result; + } + + // - - - Layer aggregator + // - - Layer: Dot-Y + // - Transforms: Dot-Y + // ShapeGroup: Ellipse 1 Offset:<196, 267> + // Ellipse Path 1.EllipseGeometry + CompositionEllipseGeometry Ellipse_4p6() + { + const auto result = _c.CreateEllipseGeometry(); + result.Center({ 0.800000012F, -0.5F }); + result.Radius({ 4.5999999F, 4.5999999F }); + return result; + } + + // Ellipse Path 1.EllipseGeometry + CompositionEllipseGeometry Ellipse_4p7() + { + if (_ellipse_4p7 != nullptr) { return _ellipse_4p7; } + const auto result = _ellipse_4p7 = _c.CreateEllipseGeometry(); + result.Center({ 0.800000012F, -0.5F }); + result.Radius({ 4.69999981F, 4.69999981F }); + return result; + } + + CompositionPath Path_0() + { + if (_path_0 != nullptr) { return _path_0; } + const auto result = _path_0 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_00())); + return result; + } + + CompositionPath Path_1() + { + if (_path_1 != nullptr) { return _path_1; } + const auto result = _path_1 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_01())); + return result; + } + + CompositionPath Path_2() + { + if (_path_2 != nullptr) { return _path_2; } + const auto result = _path_2 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_02())); + return result; + } + + CompositionPath Path_3() + { + if (_path_3 != nullptr) { return _path_3; } + const auto result = _path_3 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_03())); + return result; + } + + CompositionPath Path_4() + { + if (_path_4 != nullptr) { return _path_4; } + const auto result = _path_4 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_04())); + return result; + } + + CompositionPath Path_5() + { + if (_path_5 != nullptr) { return _path_5; } + const auto result = _path_5 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_05())); + return result; + } + + CompositionPath Path_6() + { + if (_path_6 != nullptr) { return _path_6; } + const auto result = _path_6 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_06())); + return result; + } + + CompositionPath Path_7() + { + if (_path_7 != nullptr) { return _path_7; } + const auto result = _path_7 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_07())); + return result; + } + + CompositionPath Path_8() + { + if (_path_8 != nullptr) { return _path_8; } + const auto result = _path_8 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_08())); + return result; + } + + // - - Layer aggregator + // - Layer: E3-Y + // ShapeGroup: Group 1 Offset:<344.674, 261.877> + CompositionPathGeometry PathGeometry_00() + { + if (_pathGeometry_00 != nullptr) { return _pathGeometry_00; } + const auto result = _pathGeometry_00 = _c.CreatePathGeometry(Path_0()); + return result; + } + + // - - Layer aggregator + // - Layer: E3-B + // Transforms: E3-B Offset:<0.06500244, 0> + CompositionPathGeometry PathGeometry_01() + { + if (_pathGeometry_01 != nullptr) { return _pathGeometry_01; } + const auto result = _pathGeometry_01 = _c.CreatePathGeometry(Path_0()); + return result; + } + + // - - Layer aggregator + // - Layer: I-Y + // ShapeGroup: Group 6 Offset:<304.135, 282.409> + CompositionPathGeometry PathGeometry_02() + { + if (_pathGeometry_02 != nullptr) { return _pathGeometry_02; } + const auto result = _pathGeometry_02 = _c.CreatePathGeometry(Path_1()); + return result; + } + + // - - Layer aggregator + // - Layer: I-B + // Transforms: I-B + CompositionPathGeometry PathGeometry_03() + { + if (_pathGeometry_03 != nullptr) { return _pathGeometry_03; } + const auto result = _pathGeometry_03 = _c.CreatePathGeometry(Path_1()); + return result; + } + + // - - Layer aggregator + // - Layer: E2-Y + // ShapeGroup: Group 3 Offset:<331.664, 238.14> + CompositionPathGeometry PathGeometry_04() + { + if (_pathGeometry_04 != nullptr) { return _pathGeometry_04; } + const auto result = _pathGeometry_04 = _c.CreatePathGeometry(Path_2()); + return result; + } + + // - - Layer aggregator + // - Layer: E2-B + // Transforms: E2-B + CompositionPathGeometry PathGeometry_05() + { + if (_pathGeometry_05 != nullptr) { return _pathGeometry_05; } + const auto result = _pathGeometry_05 = _c.CreatePathGeometry(Path_2()); + return result; + } + + // - - Layer aggregator + // - Layer: E1-Y + // ShapeGroup: Group 2 Offset:<344.672, 214.842> + CompositionPathGeometry PathGeometry_06() + { + if (_pathGeometry_06 != nullptr) { return _pathGeometry_06; } + const auto result = _pathGeometry_06 = _c.CreatePathGeometry(Path_3()); + return result; + } + + // - - Layer aggregator + // - Layer: E1-B + // Transforms: E1-B + CompositionPathGeometry PathGeometry_07() + { + if (_pathGeometry_07 != nullptr) { return _pathGeometry_07; } + const auto result = _pathGeometry_07 = _c.CreatePathGeometry(Path_3()); + return result; + } + + CompositionPathGeometry PathGeometry_08() + { + if (_pathGeometry_08 != nullptr) { return _pathGeometry_08; } + const auto result = _pathGeometry_08 = _c.CreatePathGeometry(Path_4()); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 0.0F); + propertySet.InsertScalar(L"TStart", 0.0F); + BindProperty(_pathGeometry_08, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_08); + BindProperty(_pathGeometry_08, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_08); + return result; + } + + // - Layer aggregator + // Layer: T2b-Y + CompositionPathGeometry PathGeometry_09() + { + if (_pathGeometry_09 != nullptr) { return _pathGeometry_09; } + const auto result = _pathGeometry_09 = _c.CreatePathGeometry(Path_5()); + return result; + } + + // - Layer aggregator + // Layer: T2a-Y + CompositionPathGeometry PathGeometry_10() + { + if (_pathGeometry_10 != nullptr) { return _pathGeometry_10; } + const auto result = _pathGeometry_10 = _c.CreatePathGeometry(Path_6()); + return result; + } + + // - Layer aggregator + // Layer: T2b-B + CompositionPathGeometry PathGeometry_11() + { + if (_pathGeometry_11 != nullptr) { return _pathGeometry_11; } + const auto result = _pathGeometry_11 = _c.CreatePathGeometry(Path_5()); + return result; + } + + // - Layer aggregator + // Layer: T1b-Y + CompositionPathGeometry PathGeometry_12() + { + if (_pathGeometry_12 != nullptr) { return _pathGeometry_12; } + const auto result = _pathGeometry_12 = _c.CreatePathGeometry(Path_7()); + return result; + } + + // - Layer aggregator + // Layer: T1b-B + CompositionPathGeometry PathGeometry_13() + { + if (_pathGeometry_13 != nullptr) { return _pathGeometry_13; } + const auto result = _pathGeometry_13 = _c.CreatePathGeometry(Path_7()); + return result; + } + + CompositionPathGeometry PathGeometry_14() + { + if (_pathGeometry_14 != nullptr) { return _pathGeometry_14; } + const auto result = _pathGeometry_14 = _c.CreatePathGeometry(Path_4()); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 0.0F); + propertySet.InsertScalar(L"TStart", 0.0F); + BindProperty(_pathGeometry_14, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_14); + BindProperty(_pathGeometry_14, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_14); + return result; + } + + // - Layer aggregator + // Layer: T2a-B + CompositionPathGeometry PathGeometry_15() + { + if (_pathGeometry_15 != nullptr) { return _pathGeometry_15; } + const auto result = _pathGeometry_15 = _c.CreatePathGeometry(Path_6()); + return result; + } + + // - - Layer aggregator + // - Layer: T1a-B + // Transforms: T1a-B + CompositionPathGeometry PathGeometry_16() + { + if (_pathGeometry_16 != nullptr) { return _pathGeometry_16; } + const auto result = _pathGeometry_16 = _c.CreatePathGeometry(Path_4()); + result.TrimStart(0.248999998F); + return result; + } + + CompositionPathGeometry PathGeometry_17() + { + if (_pathGeometry_17 != nullptr) { return _pathGeometry_17; } + const auto result = _pathGeometry_17 = _c.CreatePathGeometry(Path_8()); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 0.810000002F); + propertySet.InsertScalar(L"TStart", 0.800000012F); + BindProperty(_pathGeometry_17, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_17); + BindProperty(_pathGeometry_17, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_17); + return result; + } + + CompositionPathGeometry PathGeometry_18() + { + if (_pathGeometry_18 != nullptr) { return _pathGeometry_18; } + const auto result = _pathGeometry_18 = _c.CreatePathGeometry(Path_8()); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 0.810000002F); + propertySet.InsertScalar(L"TStart", 0.800000012F); + BindProperty(_pathGeometry_18, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_18); + BindProperty(_pathGeometry_18, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_18); + return result; + } + + CompositionPathGeometry PathGeometry_19() + { + if (_pathGeometry_19 != nullptr) { return _pathGeometry_19; } + const auto result = _pathGeometry_19 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_09()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_19, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_19); + BindProperty(_pathGeometry_19, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_19); + return result; + } + + CompositionPathGeometry PathGeometry_20() + { + if (_pathGeometry_20 != nullptr) { return _pathGeometry_20; } + const auto result = _pathGeometry_20 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_10()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_20, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_20); + BindProperty(_pathGeometry_20, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_20); + return result; + } + + CompositionPathGeometry PathGeometry_21() + { + if (_pathGeometry_21 != nullptr) { return _pathGeometry_21; } + const auto result = _pathGeometry_21 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_11()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_21, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_21); + BindProperty(_pathGeometry_21, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_21); + return result; + } + + CompositionPathGeometry PathGeometry_22() + { + if (_pathGeometry_22 != nullptr) { return _pathGeometry_22; } + const auto result = _pathGeometry_22 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_12()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_22, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_22); + BindProperty(_pathGeometry_22, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_22); + return result; + } + + CompositionPathGeometry PathGeometry_23() + { + if (_pathGeometry_23 != nullptr) { return _pathGeometry_23; } + const auto result = _pathGeometry_23 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_13()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_23, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_23); + BindProperty(_pathGeometry_23, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_23); + return result; + } + + CompositionPathGeometry PathGeometry_24() + { + if (_pathGeometry_24 != nullptr) { return _pathGeometry_24; } + const auto result = _pathGeometry_24 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_14()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_24, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_24); + BindProperty(_pathGeometry_24, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_24); + return result; + } + + CompositionPathGeometry PathGeometry_25() + { + if (_pathGeometry_25 != nullptr) { return _pathGeometry_25; } + const auto result = _pathGeometry_25 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_15()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_25, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_25); + BindProperty(_pathGeometry_25, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_25); + return result; + } + + CompositionPathGeometry PathGeometry_26() + { + if (_pathGeometry_26 != nullptr) { return _pathGeometry_26; } + const auto result = _pathGeometry_26 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_16()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_26, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_26); + BindProperty(_pathGeometry_26, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_26); + return result; + } + + CompositionPathGeometry PathGeometry_27() + { + if (_pathGeometry_27 != nullptr) { return _pathGeometry_27; } + const auto result = _pathGeometry_27 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_17()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_27, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_27); + BindProperty(_pathGeometry_27, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_27); + return result; + } + + CompositionPathGeometry PathGeometry_28() + { + if (_pathGeometry_28 != nullptr) { return _pathGeometry_28; } + const auto result = _pathGeometry_28 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_18()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_28, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_28); + BindProperty(_pathGeometry_28, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_28); + return result; + } + + CompositionPathGeometry PathGeometry_29() + { + if (_pathGeometry_29 != nullptr) { return _pathGeometry_29; } + const auto result = _pathGeometry_29 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_19()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_29, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_29); + BindProperty(_pathGeometry_29, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_29); + return result; + } + + CompositionPathGeometry PathGeometry_30() + { + if (_pathGeometry_30 != nullptr) { return _pathGeometry_30; } + const auto result = _pathGeometry_30 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_20()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_30, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_30); + BindProperty(_pathGeometry_30, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_30); + return result; + } + + CompositionPathGeometry PathGeometry_31() + { + if (_pathGeometry_31 != nullptr) { return _pathGeometry_31; } + const auto result = _pathGeometry_31 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_21()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_31, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_31); + BindProperty(_pathGeometry_31, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_31); + return result; + } + + CompositionPathGeometry PathGeometry_32() + { + if (_pathGeometry_32 != nullptr) { return _pathGeometry_32; } + const auto result = _pathGeometry_32 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_22()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_32, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_32); + BindProperty(_pathGeometry_32, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_32); + return result; + } + + CompositionPathGeometry PathGeometry_33() + { + if (_pathGeometry_33 != nullptr) { return _pathGeometry_33; } + const auto result = _pathGeometry_33 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_23()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_33, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_33); + BindProperty(_pathGeometry_33, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_33); + return result; + } + + CompositionPathGeometry PathGeometry_34() + { + if (_pathGeometry_34 != nullptr) { return _pathGeometry_34; } + const auto result = _pathGeometry_34 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_24()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_34, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_34); + BindProperty(_pathGeometry_34, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_34); + return result; + } + + CompositionPathGeometry PathGeometry_35() + { + if (_pathGeometry_35 != nullptr) { return _pathGeometry_35; } + const auto result = _pathGeometry_35 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_25()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_35, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_35); + BindProperty(_pathGeometry_35, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_35); + return result; + } + + CompositionPathGeometry PathGeometry_36() + { + if (_pathGeometry_36 != nullptr) { return _pathGeometry_36; } + const auto result = _pathGeometry_36 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_26()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_36, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_36); + BindProperty(_pathGeometry_36, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_36); + return result; + } + + CompositionPathGeometry PathGeometry_37() + { + if (_pathGeometry_37 != nullptr) { return _pathGeometry_37; } + const auto result = _pathGeometry_37 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_27()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_37, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_37); + BindProperty(_pathGeometry_37, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_37); + return result; + } + + CompositionPathGeometry PathGeometry_38() + { + if (_pathGeometry_38 != nullptr) { return _pathGeometry_38; } + const auto result = _pathGeometry_38 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_28()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_38, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_38); + BindProperty(_pathGeometry_38, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_38); + return result; + } + + // - Layer aggregator + // Offset:<187.5, 333.5> + // Rectangle Path 1.RectangleGeometry + CompositionRectangleGeometry Rectangle_375x667() + { + const auto result = _c.CreateRectangleGeometry(); + result.Offset({ -187.5F, -333.5F }); + result.Size({ 375.0F, 667.0F }); + return result; + } + + // Layer aggregator + // Rectangle Path 1 + CompositionSpriteShape SpriteShape_00() + { + // Offset:<187.5, 333.5> + const auto geometry = Rectangle_375x667(); + const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 187.5F, 333.5F }, ColorBrush_AlmostDarkTurquoise_FF00D1C1());; + return result; + } + + // - - Layer aggregator + // - Layer: Dot-Y + // Transforms: Dot-Y + // Ellipse Path 1 + CompositionSpriteShape SpriteShape_01() + { + // Offset:<196, 267> + const auto geometry = Ellipse_4p6(); + const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F }, ColorBrush_White());; + return result; + } + + // - Layer aggregator + // Layer: E3-Y + // Path 1 + CompositionSpriteShape SpriteShape_02() + { + // Offset:<344.674, 261.877> + const auto result = CreateSpriteShape(PathGeometry_00(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.674011F, 261.877014F });; + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.56200027F); + return result; + } + + // - Layer aggregator + // Layer: E3-B + // Path 1 + CompositionSpriteShape SpriteShape_03() + { + // Offset:<344.739, 261.877> + const auto result = CreateSpriteShape(PathGeometry_01(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.739014F, 261.877014F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.56200027F); + return result; + } + + // - Layer aggregator + // Layer: I-Y + // Path 1 + CompositionSpriteShape SpriteShape_04() + { + // Offset:<304.135, 282.409> + const auto result = CreateSpriteShape(PathGeometry_02(), { 1.0F, 0.0F, 0.0F, 1.0F, 304.13501F, 282.408997F });; + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Square); + result.StrokeStartCap(CompositionStrokeCap::Square); + result.StrokeEndCap(CompositionStrokeCap::Square); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(8.39999962F); + return result; + } + + // - Layer aggregator + // Layer: I-B + // Path 1 + CompositionSpriteShape SpriteShape_05() + { + // Offset:<304.135, 282.409> + const auto result = CreateSpriteShape(PathGeometry_03(), { 1.0F, 0.0F, 0.0F, 1.0F, 304.13501F, 282.408997F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Square); + result.StrokeStartCap(CompositionStrokeCap::Square); + result.StrokeEndCap(CompositionStrokeCap::Square); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // - Layer aggregator + // Layer: E2-Y + // Path 1 + CompositionSpriteShape SpriteShape_06() + { + // Offset:<331.664, 238.14> + const auto result = CreateSpriteShape(PathGeometry_04(), { 1.0F, 0.0F, 0.0F, 1.0F, 331.664001F, 238.139999F });; + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(8.39999962F); + return result; + } + + // - Layer aggregator + // Layer: E2-B + // Path 1 + CompositionSpriteShape SpriteShape_07() + { + // Offset:<331.664, 238.14> + const auto result = CreateSpriteShape(PathGeometry_05(), { 1.0F, 0.0F, 0.0F, 1.0F, 331.664001F, 238.139999F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.56200027F); + return result; + } + + // - Layer aggregator + // Layer: E1-Y + // Path 1 + CompositionSpriteShape SpriteShape_08() + { + // Offset:<344.672, 214.842> + const auto result = CreateSpriteShape(PathGeometry_06(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.671997F, 214.841995F });; + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(8.39999962F); + return result; + } + + // - Layer aggregator + // Layer: E1-B + // Path 1 + CompositionSpriteShape SpriteShape_09() + { + // Offset:<344.672, 214.842> + const auto result = CreateSpriteShape(PathGeometry_07(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.671997F, 214.841995F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.56200027F); + return result; + } + + // - Layer aggregator + // Layer: T1a-Y + // Path 1 + CompositionSpriteShape SpriteShape_10() + { + // Offset:<227.677, 234.375> + const auto result = CreateSpriteShape(PathGeometry_08(), { 1.0F, 0.0F, 0.0F, 1.0F, 227.677002F, 234.375F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(8.39999962F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_11() + { + // Offset:<-56.5, 83.5> + if (_spriteShape_11 != nullptr) { return _spriteShape_11; } + const auto result = _spriteShape_11 = CreateSpriteShape(PathGeometry_09(), { 1.0F, 0.0F, 0.0F, 1.0F, -56.5F, 83.5F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_12() + { + // Offset:<221.198, 330.758> + if (_spriteShape_12 != nullptr) { return _spriteShape_12; } + const auto result = _spriteShape_12 = CreateSpriteShape(PathGeometry_10(), { 1.0F, 0.0F, 0.0F, 1.0F, 221.197998F, 330.757996F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Square); + result.StrokeStartCap(CompositionStrokeCap::Square); + result.StrokeEndCap(CompositionStrokeCap::Square); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_13() + { + // Offset:<-56.5, 83.5> + if (_spriteShape_13 != nullptr) { return _spriteShape_13; } + const auto result = _spriteShape_13 = CreateSpriteShape(PathGeometry_11(), { 1.0F, 0.0F, 0.0F, 1.0F, -56.5F, 83.5F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_14() + { + // Offset:<186.256, 349.081> + if (_spriteShape_14 != nullptr) { return _spriteShape_14; } + const auto result = _spriteShape_14 = CreateSpriteShape(PathGeometry_12(), { 1.0F, 0.0F, 0.0F, 1.0F, 186.255997F, 349.080994F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeLineJoin(CompositionStrokeLineJoin::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(8.39999962F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_15() + { + // Offset:<186.256, 349.081> + if (_spriteShape_15 != nullptr) { return _spriteShape_15; } + const auto result = _spriteShape_15 = CreateSpriteShape(PathGeometry_13(), { 1.0F, 0.0F, 0.0F, 1.0F, 186.255997F, 349.080994F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeLineJoin(CompositionStrokeLineJoin::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // - Layer aggregator + // Layer: O-Y + // Ellipse Path 1 + CompositionSpriteShape SpriteShape_16() + { + // Offset:<196, 267> + const auto result = CreateSpriteShape(Ellipse_0_0(), { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeThickness(8.80000019F); + return result; + } + + // - Layer aggregator + // Layer: O-Y + // Ellipse Path 1 + CompositionSpriteShape SpriteShape_17() + { + // Offset:<196, 267> + const auto result = CreateSpriteShape(Ellipse_0_1(), { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F });; + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeThickness(9.19400024F); + return result; + } + + // - Layer aggregator + // Layer: T1a-Y 2 + // Path 1 + CompositionSpriteShape SpriteShape_18() + { + // Offset:<227.677, 234.375> + const auto result = CreateSpriteShape(PathGeometry_14(), { 1.0F, 0.0F, 0.0F, 1.0F, 227.677002F, 234.375F });; + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(8.39999962F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_19() + { + // Offset:<221.198, 330.758> + if (_spriteShape_19 != nullptr) { return _spriteShape_19; } + const auto result = _spriteShape_19 = CreateSpriteShape(PathGeometry_15(), { 1.0F, 0.0F, 0.0F, 1.0F, 221.197998F, 330.757996F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Square); + result.StrokeStartCap(CompositionStrokeCap::Square); + result.StrokeEndCap(CompositionStrokeCap::Square); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // - Layer aggregator + // Layer: T1a-B + // Path 1 + CompositionSpriteShape SpriteShape_20() + { + // Offset:<227.677, 234.375> + const auto result = CreateSpriteShape(PathGeometry_16(), { 1.0F, 0.0F, 0.0F, 1.0F, 227.677002F, 234.375F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // - - Layer aggregator + // - Layer: Dot-Y + // Transforms: Dot-Y + // Ellipse Path 1 + CompositionSpriteShape SpriteShape_21() + { + // Offset:<196, 267> + const auto geometry = Ellipse_4p7(); + const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F }, ColorBrush_White());; + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_22() + { + // Offset:<109.52901, 354.143> + if (_spriteShape_22 != nullptr) { return _spriteShape_22; } + const auto result = _spriteShape_22 = CreateSpriteShape(PathGeometry_17(), { 1.0F, 0.0F, 0.0F, 1.0F, 109.529007F, 354.143005F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(8.39999962F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_23() + { + // Offset:<109.52901, 354.143> + if (_spriteShape_23 != nullptr) { return _spriteShape_23; } + const auto result = _spriteShape_23 = CreateSpriteShape(PathGeometry_18(), { 1.0F, 0.0F, 0.0F, 1.0F, 109.529007F, 354.143005F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // - Layer aggregator + // Layer: Dot1 + // Ellipse Path 1 + CompositionSpriteShape SpriteShape_24() + { + // Offset:<196, 267> + const auto geometry = Ellipse_4p7(); + const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F }, ColorBrush_White());; + return result; + } + + // - Layer aggregator + // Layer: S1-Y + // Path 1 + CompositionSpriteShape SpriteShape_25() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_19(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(1.5F); + return result; + } + + // - Layer aggregator + // Layer: S1-Y + // Path 1 + CompositionSpriteShape SpriteShape_26() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_20(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(1.5F); + return result; + } + + // - Layer aggregator + // Layer: S7 + // Path 1 + CompositionSpriteShape SpriteShape_27() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_21(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(1.5F); + return result; + } + + // - Layer aggregator + // Layer: S7 + // Path 1 + CompositionSpriteShape SpriteShape_28() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_22(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(1.5F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y + // Path 1 + CompositionSpriteShape SpriteShape_29() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_23(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y + // Path 1 + CompositionSpriteShape SpriteShape_30() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_24(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y + // Path 1 + CompositionSpriteShape SpriteShape_31() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_25(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y + // Path 1 + CompositionSpriteShape SpriteShape_32() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_26(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 2 + // Path 1 + CompositionSpriteShape SpriteShape_33() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_27(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 2 + // Path 1 + CompositionSpriteShape SpriteShape_34() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_28(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 2 + // Path 1 + CompositionSpriteShape SpriteShape_35() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_29(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_36() + { + // Offset:<179.5, 333.5> + if (_spriteShape_36 != nullptr) { return _spriteShape_36; } + const auto result = _spriteShape_36 = CreateSpriteShape(PathGeometry_30(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(1.5F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_37() + { + // Offset:<179.5, 333.5> + if (_spriteShape_37 != nullptr) { return _spriteShape_37; } + const auto result = _spriteShape_37 = CreateSpriteShape(PathGeometry_31(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(1.5F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_38() + { + // Offset:<179.5, 333.5> + if (_spriteShape_38 != nullptr) { return _spriteShape_38; } + const auto result = _spriteShape_38 = CreateSpriteShape(PathGeometry_32(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(1.5F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 3 + // Path 1 + CompositionSpriteShape SpriteShape_39() + { + // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees + const auto result = CreateSpriteShape(PathGeometry_33(), { -0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 3 + // Path 1 + CompositionSpriteShape SpriteShape_40() + { + // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees + const auto result = CreateSpriteShape(PathGeometry_34(), { -0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 3 + // Path 1 + CompositionSpriteShape SpriteShape_41() + { + // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees + const auto result = CreateSpriteShape(PathGeometry_35(), { -0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 4 + // Path 1 + CompositionSpriteShape SpriteShape_42() + { + // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, + // Scale:<0.99999994, 0.99999994> + const auto result = CreateSpriteShape(PathGeometry_36(), { 0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 4 + // Path 1 + CompositionSpriteShape SpriteShape_43() + { + // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, + // Scale:<0.99999994, 0.99999994> + const auto result = CreateSpriteShape(PathGeometry_37(), { 0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 4 + // Path 1 + CompositionSpriteShape SpriteShape_44() + { + // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, + // Scale:<0.99999994, 0.99999994> + const auto result = CreateSpriteShape(PathGeometry_38(), { 0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // The root of the composition. + ContainerVisual Root() + { + if (_root != nullptr) { return _root; } + const auto result = _root = _c.CreateContainerVisual(); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"Progress", 0.0F); + propertySet.InsertScalar(L"t0", 0.0F); + // Layer aggregator + result.Children().InsertAtTop(ShapeVisual_0()); + return result; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_0() + { + return (_cubicBezierEasingFunction_0 == nullptr) + ? _cubicBezierEasingFunction_0 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.180000007F, 1.0F }) + : _cubicBezierEasingFunction_0; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_1() + { + return (_cubicBezierEasingFunction_1 == nullptr) + ? _cubicBezierEasingFunction_1 = _c.CreateCubicBezierEasingFunction({ 0.819999993F, 0.0F }, { 0.833000004F, 0.833000004F }) + : _cubicBezierEasingFunction_1; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_2() + { + return (_cubicBezierEasingFunction_2 == nullptr) + ? _cubicBezierEasingFunction_2 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.833000004F, 0.833000004F }) + : _cubicBezierEasingFunction_2; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_3() + { + return (_cubicBezierEasingFunction_3 == nullptr) + ? _cubicBezierEasingFunction_3 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.666999996F, 1.0F }) + : _cubicBezierEasingFunction_3; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_4() + { + return (_cubicBezierEasingFunction_4 == nullptr) + ? _cubicBezierEasingFunction_4 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.119999997F, 1.0F }) + : _cubicBezierEasingFunction_4; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_5() + { + return (_cubicBezierEasingFunction_5 == nullptr) + ? _cubicBezierEasingFunction_5 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.0F }, { 0.119999997F, 1.0F }) + : _cubicBezierEasingFunction_5; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_6() + { + return (_cubicBezierEasingFunction_6 == nullptr) + ? _cubicBezierEasingFunction_6 = _c.CreateCubicBezierEasingFunction({ 0.300999999F, 0.0F }, { 0.666999996F, 1.0F }) + : _cubicBezierEasingFunction_6; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_7() + { + return (_cubicBezierEasingFunction_7 == nullptr) + ? _cubicBezierEasingFunction_7 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.0599999987F, 1.0F }) + : _cubicBezierEasingFunction_7; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_8() + { + return (_cubicBezierEasingFunction_8 == nullptr) + ? _cubicBezierEasingFunction_8 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.337000012F, 1.0F }) + : _cubicBezierEasingFunction_8; + } + + ScalarKeyFrameAnimation t0ScalarAnimation_0_to_1() + { + // Frame 35.26. + const auto result = CreateScalarKeyFrameAnimation(0.196966499F, 0.0F, StepThenHoldEasingFunction()); + result.SetReferenceParameter(L"_", _root); + // Frame 44. + result.InsertKeyFrame(0.245810047F, 1.0F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.197999999F }, { 0.638000011F, 1.0F })); + // Frame 44. + result.InsertKeyFrame(0.245810062F, 0.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675946F, 1.0F, _c.CreateCubicBezierEasingFunction({ 0.523000002F, 0.0F }, { 0.795000017F, 1.0F })); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_0_to_1_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); + // Frame 74. + result.InsertKeyFrame(0.413407832F, 1.0F, CubicBezierEasingFunction_6()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_0_to_1_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 1.0F, CubicBezierEasingFunction_6()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_0p81_to_0p734_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.810000002F, StepThenHoldEasingFunction()); + // Frame 16. + result.InsertKeyFrame(0.0893854722F, 0.810000002F, HoldThenStepEasingFunction()); + // Frame 27. + result.InsertKeyFrame(0.150837988F, 0.734000027F, CubicBezierEasingFunction_8()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_0p81_to_0p734_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.810000002F, StepThenHoldEasingFunction()); + // Frame 18. + result.InsertKeyFrame(0.100558661F, 0.810000002F, HoldThenStepEasingFunction()); + // Frame 29. + result.InsertKeyFrame(0.162011176F, 0.734000027F, CubicBezierEasingFunction_8()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_00() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 29. + result.InsertKeyFrame(0.162011176F, 1.0F, HoldThenStepEasingFunction()); + // Frame 33. + result.InsertKeyFrame(0.184357539F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 36. + result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_01() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 29. + result.InsertKeyFrame(0.162011176F, 1.0F, HoldThenStepEasingFunction()); + // Frame 33. + result.InsertKeyFrame(0.184357539F, 0.690559983F, CubicBezierEasingFunction_2()); + // Frame 36. + result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_02() + { + // Frame 0. + if (_tEndScalarAnimation_1_to_0_02 != nullptr) { return _tEndScalarAnimation_1_to_0_02; } + const auto result = _tEndScalarAnimation_1_to_0_02 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 65. + result.InsertKeyFrame(0.363128483F, 1.0F, HoldThenStepEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_03() + { + // Frame 0. + if (_tEndScalarAnimation_1_to_0_03 != nullptr) { return _tEndScalarAnimation_1_to_0_03; } + const auto result = _tEndScalarAnimation_1_to_0_03 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_04() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.758560002F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_05() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.704559982F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_06() + { + // Frame 0. + if (_tEndScalarAnimation_1_to_0_06 != nullptr) { return _tEndScalarAnimation_1_to_0_06; } + const auto result = _tEndScalarAnimation_1_to_0_06 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 1.0F, HoldThenStepEasingFunction()); + // Frame 100. + result.InsertKeyFrame(0.558659196F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_07() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 1.0F, HoldThenStepEasingFunction()); + // Frame 100. + result.InsertKeyFrame(0.558659196F, 0.758560002F, CubicBezierEasingFunction_2()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_08() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 80. + result.InsertKeyFrame(0.446927369F, 1.0F, HoldThenStepEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 87. + result.InsertKeyFrame(0.486033529F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_09() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, 1.0F, HoldThenStepEasingFunction()); + // Frame 87. + result.InsertKeyFrame(0.486033529F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_10() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 1.0F, HoldThenStepEasingFunction()); + // Frame 90. + result.InsertKeyFrame(0.502793312F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 94. + result.InsertKeyFrame(0.525139689F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_11() + { + // Frame 0. + if (_tEndScalarAnimation_1_to_0_11 != nullptr) { return _tEndScalarAnimation_1_to_0_11; } + const auto result = _tEndScalarAnimation_1_to_0_11 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 1.0F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_12() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 1.0F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.758560002F, CubicBezierEasingFunction_2()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_13() + { + // Frame 0. + if (_tEndScalarAnimation_1_to_0_13 != nullptr) { return _tEndScalarAnimation_1_to_0_13; } + const auto result = _tEndScalarAnimation_1_to_0_13 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 1.0F, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_14() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 1.0F, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.758560002F, CubicBezierEasingFunction_2()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E2-Y + // - ShapeGroup: Group 3 Offset:<331.664, 238.14> + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p43_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.0F, HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, 0.430000007F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E2-B + // - Transforms: E2-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p43_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 86. + result.InsertKeyFrame(0.480446935F, 0.0F, HoldThenStepEasingFunction()); + // Frame 95. + result.InsertKeyFrame(0.530726254F, 0.430000007F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E3-Y + // - ShapeGroup: Group 1 Offset:<344.674, 261.877> + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p316_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, 0.0F, HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, 0.316000015F, CubicBezierEasingFunction_2()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E3-B + // - Transforms: E3-B Offset:<0.06500244, 0> + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p316_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, 0.0F, HoldThenStepEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 0.316000015F, CubicBezierEasingFunction_2()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E1-Y + // - ShapeGroup: Group 2 Offset:<344.672, 214.842> + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p375_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.0F, HoldThenStepEasingFunction()); + // Frame 88. + result.InsertKeyFrame(0.491620123F, 0.375F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E1-B + // - Transforms: E1-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p375_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, 0.0F, HoldThenStepEasingFunction()); + // Frame 93. + result.InsertKeyFrame(0.519553065F, 0.375F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: I-Y + // - ShapeGroup: Group 6 Offset:<304.135, 282.409> + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p457_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.0F, HoldThenStepEasingFunction()); + // Frame 88. + result.InsertKeyFrame(0.491620123F, 0.456999987F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: I-B + // - Transforms: I-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p457_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 81. + result.InsertKeyFrame(0.452513963F, 0.0F, HoldThenStepEasingFunction()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0.456999987F, CubicBezierEasingFunction_4()); + return result; + } + + // - - Layer aggregator + // - Layer: T2a-Y + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p5_to_1_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); + // Frame 72. + result.InsertKeyFrame(0.402234644F, 0.5F, HoldThenStepEasingFunction()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 1.0F, CubicBezierEasingFunction_7()); + return result; + } + + // - - Layer aggregator + // - Layer: T2a-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p5_to_1_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.5F, HoldThenStepEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 1.0F, CubicBezierEasingFunction_7()); + return result; + } + + // - - Layer aggregator + // - Layer: T1b-Y + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p117_to_1_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.116999999F, StepThenHoldEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, 0.116999999F, HoldThenStepEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 1.0F, CubicBezierEasingFunction_2()); + return result; + } + + // - - Layer aggregator + // - Layer: T1b-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p117_to_1_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.116999999F, StepThenHoldEasingFunction()); + // Frame 81. + result.InsertKeyFrame(0.452513963F, 0.116999999F, HoldThenStepEasingFunction()); + // Frame 88. + result.InsertKeyFrame(0.491620123F, 1.0F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.209999993F, 1.0F })); + return result; + } + + // - - - Layer aggregator + // - - Layer: T1a-B + // - Transforms: T1a-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p249_to_0p891() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.248999998F, StepThenHoldEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, 0.248999998F, HoldThenStepEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, 0.890999973F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.672999978F, 1.0F })); + return result; + } + + // - - Layer aggregator + // - Layer: T2b-Y + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p411_to_0p665_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.411000013F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 0.411000013F, HoldThenStepEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 0.665000021F, CubicBezierEasingFunction_4()); + return result; + } + + // - - Layer aggregator + // - Layer: T2b-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p411_to_0p665_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.411000013F, StepThenHoldEasingFunction()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.411000013F, HoldThenStepEasingFunction()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0.665000021F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: O-Y + // - ShapeGroup: Ellipse 1 Offset:<196, 267> + // Ellipse Path 1.EllipseGeometry + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_1_to_0p88() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); + // Frame 63. + result.InsertKeyFrame(0.351955295F, 0.879999995F, CubicBezierEasingFunction_2()); + return result; + } + + // - - - Layer aggregator + // - - Layer: O-Y + // - ShapeGroup: Ellipse 1 Offset:<196, 267> + // Ellipse Path 1.EllipseGeometry + // TrimStart + ScalarKeyFrameAnimation TrimStartScalarAnimation_0_to_0p399() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); + // Frame 63. + result.InsertKeyFrame(0.351955295F, 0.300000012F, CubicBezierEasingFunction_2()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0.398999989F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 1.0F }, { 0.432000011F, 1.0F })); + return result; + } + + // - - Layer aggregator + // - Layer: T2a-Y + // TrimStart + ScalarKeyFrameAnimation TrimStartScalarAnimation_0p5_to_0_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); + // Frame 72. + result.InsertKeyFrame(0.402234644F, 0.5F, HoldThenStepEasingFunction()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_7()); + return result; + } + + // - - Layer aggregator + // - Layer: T2a-B + // TrimStart + ScalarKeyFrameAnimation TrimStartScalarAnimation_0p5_to_0_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.5F, HoldThenStepEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 0.0F, CubicBezierEasingFunction_7()); + return result; + } + + // - - Layer aggregator + // - Layer: T2b-Y + // TrimStart + ScalarKeyFrameAnimation TrimStartScalarAnimation_0p29_to_0_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.289999992F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 0.289999992F, HoldThenStepEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 0.0F, CubicBezierEasingFunction_4()); + return result; + } + + // - - Layer aggregator + // - Layer: T2b-B + // TrimStart + ScalarKeyFrameAnimation TrimStartScalarAnimation_0p29_to_0_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.289999992F, StepThenHoldEasingFunction()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.289999992F, HoldThenStepEasingFunction()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0.0F, CubicBezierEasingFunction_4()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0_to_0p249() + { + // Frame 0. + if (_tStartScalarAnimation_0_to_0p249 != nullptr) { return _tStartScalarAnimation_0_to_0p249; } + const auto result = _tStartScalarAnimation_0_to_0p249 = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, 0.248999998F, _c.CreateCubicBezierEasingFunction({ 0.300999999F, 0.0F }, { 0.833000004F, 1.0F })); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p8_to_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.800000012F, StepThenHoldEasingFunction()); + // Frame 16. + result.InsertKeyFrame(0.0893854722F, 0.800000012F, HoldThenStepEasingFunction()); + // Frame 20. + result.InsertKeyFrame(0.111731842F, 0.5F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.703000009F, 0.856999993F })); + // Frame 28. + result.InsertKeyFrame(0.156424582F, 0.0F, _c.CreateCubicBezierEasingFunction({ 0.333000004F, 0.202000007F }, { 0.938000023F, 1.0F })); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p8_to_0p3() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.800000012F, StepThenHoldEasingFunction()); + // Frame 18. + result.InsertKeyFrame(0.100558661F, 0.800000012F, HoldThenStepEasingFunction()); + // Frame 23. + result.InsertKeyFrame(0.128491625F, 0.5F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.703000009F, 0.82099998F })); + // Frame 55. + result.InsertKeyFrame(0.30726257F, 0.300000012F, _c.CreateCubicBezierEasingFunction({ 0.0370000005F, 0.167999998F }, { 0.263000011F, 1.0F })); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_00() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 29. + result.InsertKeyFrame(0.162011176F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 33. + result.InsertKeyFrame(0.184357539F, 0.375330001F, CubicBezierEasingFunction_2()); + // Frame 36. + result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_01() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 29. + result.InsertKeyFrame(0.162011176F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 33. + result.InsertKeyFrame(0.184357539F, 0.253329992F, CubicBezierEasingFunction_2()); + // Frame 36. + result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_02() + { + // Frame 0. + if (_tStartScalarAnimation_0p87_to_0_02 != nullptr) { return _tStartScalarAnimation_0p87_to_0_02; } + const auto result = _tStartScalarAnimation_0p87_to_0_02 = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 65. + result.InsertKeyFrame(0.363128483F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, 0.212329999F, CubicBezierEasingFunction_2()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_03() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.421330005F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_04() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.438329995F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_05() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.506330013F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_06() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.439330012F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_07() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 100. + result.InsertKeyFrame(0.558659196F, 0.421330005F, CubicBezierEasingFunction_2()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_08() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 100. + result.InsertKeyFrame(0.558659196F, 0.438329995F, CubicBezierEasingFunction_2()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_09() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 100. + result.InsertKeyFrame(0.558659196F, 0.506330013F, CubicBezierEasingFunction_2()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_10() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 80. + result.InsertKeyFrame(0.446927369F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.212329999F, CubicBezierEasingFunction_2()); + // Frame 87. + result.InsertKeyFrame(0.486033529F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_11() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 87. + result.InsertKeyFrame(0.486033529F, 0.212329999F, CubicBezierEasingFunction_2()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_12() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 90. + result.InsertKeyFrame(0.502793312F, 0.212329999F, CubicBezierEasingFunction_2()); + // Frame 94. + result.InsertKeyFrame(0.525139689F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_13() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.421330005F, CubicBezierEasingFunction_2()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_14() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.438329995F, CubicBezierEasingFunction_2()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_15() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.506330013F, CubicBezierEasingFunction_2()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_16() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.421330005F, CubicBezierEasingFunction_2()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_17() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.438329995F, CubicBezierEasingFunction_2()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_18() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.506330013F, CubicBezierEasingFunction_2()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // Layer aggregator + ShapeVisual ShapeVisual_0() + { + const auto result = _c.CreateShapeVisual(); + result.Size({ 375.0F, 667.0F }); + const auto shapes = result.Shapes(); + // Offset:<187.5, 333.5> + shapes.Append(SpriteShape_00()); + // Layer: Dot-Y + shapes.Append(ContainerShape_00()); + // Layer: E3-Y + shapes.Append(ContainerShape_02()); + // Layer: E3-B + shapes.Append(ContainerShape_03()); + // Layer: I-Y + shapes.Append(ContainerShape_04()); + // Layer: I-B + shapes.Append(ContainerShape_05()); + // Layer: E2-Y + shapes.Append(ContainerShape_06()); + // Layer: E2-B + shapes.Append(ContainerShape_07()); + // Layer: E1-Y + shapes.Append(ContainerShape_08()); + // Layer: E1-B + shapes.Append(ContainerShape_09()); + // Layer: T1a-Y + shapes.Append(ContainerShape_10()); + // Layer: T2b-Y + shapes.Append(SpriteShape_11()); + // Layer: T2a-Y + shapes.Append(SpriteShape_12()); + // Layer: T2b-B + shapes.Append(SpriteShape_13()); + // Layer: T1b-Y + shapes.Append(SpriteShape_14()); + // Layer: T1b-B + shapes.Append(SpriteShape_15()); + // Layer: O-Y + shapes.Append(ContainerShape_11()); + // Layer: T1a-Y 2 + shapes.Append(ContainerShape_12()); + // Layer: T2a-B + shapes.Append(SpriteShape_19()); + // Layer: T1a-B + shapes.Append(ContainerShape_13()); + // Layer: Dot-Y + shapes.Append(ContainerShape_14()); + // Layer: L-Y + shapes.Append(SpriteShape_22()); + // Layer: L-B + shapes.Append(SpriteShape_23()); + // Layer: Dot1 + shapes.Append(ContainerShape_16()); + // Layer: S1-Y + shapes.Append(ContainerShape_17()); + // Layer: S7 + shapes.Append(ContainerShape_18()); + // Layer: S3-Y + shapes.Append(ContainerShape_19()); + // Layer: S3-Y 2 + shapes.Append(ContainerShape_20()); + // Layer: S11 + shapes.Append(SpriteShape_36()); + // Layer: S12 + shapes.Append(SpriteShape_37()); + // Layer: S13 + shapes.Append(SpriteShape_38()); + // Layer: S3-Y 3 + shapes.Append(ContainerShape_21()); + // Layer: S3-Y 4 + shapes.Append(ContainerShape_22()); + return result; + } + + StepEasingFunction HoldThenStepEasingFunction() + { + if (_holdThenStepEasingFunction != nullptr) { return _holdThenStepEasingFunction; } + const auto result = _holdThenStepEasingFunction = _c.CreateStepEasingFunction(); + result.IsFinalStepSingleFrame(true); + return result; + } + + StepEasingFunction StepThenHoldEasingFunction() + { + if (_stepThenHoldEasingFunction != nullptr) { return _stepThenHoldEasingFunction; } + const auto result = _stepThenHoldEasingFunction = _c.CreateStepEasingFunction(); + result.IsInitialStepSingleFrame(true); + return result; + } + + // - - Layer aggregator + // - Layer: Dot-Y + // Transforms: Dot-Y + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_00() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { -153.528F, -206.753998F }, StepThenHoldEasingFunction()); + // Frame 96. + result.InsertKeyFrame(0.536312878F, { -153.528F, -206.753998F }, HoldThenStepEasingFunction()); + // Frame 108. + result.InsertKeyFrame(0.603351951F, { -134.278F, -206.753998F }, _c.CreateCubicBezierEasingFunction({ 0.0F, 0.0F }, { 0.0F, 0.811999977F })); + // Frame 115. + result.InsertKeyFrame(0.642458081F, { -133.028F, -206.753998F }, _c.CreateCubicBezierEasingFunction({ 0.389999986F, 0.707000017F }, { 0.708000004F, 1.0F })); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_01() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 104.781998F, -2.52699995F }, StepThenHoldEasingFunction()); + // Frame 96. + result.InsertKeyFrame(0.536312878F, { 104.781998F, -2.52699995F }, HoldThenStepEasingFunction()); + // Frame 99. + result.InsertKeyFrame(0.553072631F, { 104.781998F, -4.52699995F }, CubicBezierEasingFunction_0()); + // Frame 102. + result.InsertKeyFrame(0.569832385F, { 104.781998F, -2.52699995F }, CubicBezierEasingFunction_1()); + // Frame 105. + result.InsertKeyFrame(0.586592197F, { 104.781998F, -3.09100008F }, CubicBezierEasingFunction_0()); + // Frame 108. + result.InsertKeyFrame(0.603351951F, { 104.781998F, -2.52699995F }, CubicBezierEasingFunction_1()); + return result; + } + + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_02() + { + // Frame 0. + if (_offsetVector2Animation_02 != nullptr) { return _offsetVector2Animation_02; } + const auto result = _offsetVector2Animation_02 = CreateVector2KeyFrameAnimation(0.0F, { -225.957001F, -204.322006F }, StepThenHoldEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, { -225.957001F, -204.322006F }, HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, { -207.957001F, -204.322006F }, CubicBezierEasingFunction_3()); + // Frame 96. + result.InsertKeyFrame(0.536312878F, { -210.957001F, -204.322006F }, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.0F }, { 0.666999996F, 1.0F })); + return result; + } + + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_03() + { + // Frame 0. + if (_offsetVector2Animation_03 != nullptr) { return _offsetVector2Animation_03; } + const auto result = _offsetVector2Animation_03 = CreateVector2KeyFrameAnimation(0.0F, { -210.207993F, -219.320999F }, StepThenHoldEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, { -210.207993F, -219.320999F }, HoldThenStepEasingFunction()); + // Frame 88. + result.InsertKeyFrame(0.491620123F, { -211.175995F, -199.352997F }, CubicBezierEasingFunction_4()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, { -210.957993F, -204.320999F }, CubicBezierEasingFunction_5()); + return result; + } + + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_04() + { + // Frame 0. + if (_offsetVector2Animation_04 != nullptr) { return _offsetVector2Animation_04; } + const auto result = _offsetVector2Animation_04 = CreateVector2KeyFrameAnimation(0.0F, { -222.957993F, -204.322006F }, StepThenHoldEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, { -222.957993F, -204.322006F }, HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, { -210.957993F, -204.322006F }, CubicBezierEasingFunction_4()); + return result; + } + + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_05() + { + // Frame 0. + if (_offsetVector2Animation_05 != nullptr) { return _offsetVector2Animation_05; } + const auto result = _offsetVector2Animation_05 = CreateVector2KeyFrameAnimation(0.0F, { -230.957001F, -205.695999F }, StepThenHoldEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, { -230.957001F, -205.695999F }, HoldThenStepEasingFunction()); + // Frame 88. + result.InsertKeyFrame(0.491620123F, { -206.957001F, -205.695999F }, CubicBezierEasingFunction_4()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, { -210.957001F, -205.695999F }, CubicBezierEasingFunction_5()); + return result; + } + + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_06() + { + // Frame 0. + if (_offsetVector2Animation_06 != nullptr) { return _offsetVector2Animation_06; } + const auto result = _offsetVector2Animation_06 = CreateVector2KeyFrameAnimation(0.0F, { -210.957001F, -201.322006F }, StepThenHoldEasingFunction()); + // Frame 56. + result.InsertKeyFrame(0.312849164F, { -210.957001F, -201.322006F }, HoldThenStepEasingFunction()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, { -210.957001F, -204.322006F }, CubicBezierEasingFunction_3()); + return result; + } + + // - Layer aggregator + // Layer: O-Y + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_07() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { -259.583008F, -193.447006F }, StepThenHoldEasingFunction()); + result.SetReferenceParameter(L"_", _root); + // Frame 31. + result.InsertKeyFrame(0.17318435F, { -259.583008F, -193.447006F }, HoldThenStepEasingFunction()); + // Frame 35.26. + result.InsertKeyFrame(0.196966484F, { -250.582993F, -258.946991F }, CubicBezierEasingFunction_2()); + // Frame 44. + result.InsertExpressionKeyFrame(0.245810047F, L"Pow(1-_.t0,3)*Vector2(-250.583,-258.947)+(3*Square(1-_.t0)*_.t0*Vector2(-250.583,-258.947))+(3*(1-_.t0)*Square(_.t0)*Vector2(-249.6143,-337.5837))+(Pow(_.t0,3)*Vector2(-230.458,-339.322))", StepThenHoldEasingFunction()); + // Frame 54. + result.InsertExpressionKeyFrame(0.301675946F, L"Pow(1-_.t0,3)*Vector2(-230.458,-339.322)+(3*Square(1-_.t0)*_.t0*Vector2(-214.2505,-340.7927))+(3*(1-_.t0)*Square(_.t0)*Vector2(-210.958,-164.322))+(Pow(_.t0,3)*Vector2(-210.958,-164.322))", StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, { -210.957993F, -164.322006F }, StepThenHoldEasingFunction()); + // Frame 63. + result.InsertKeyFrame(0.351955295F, { -210.957993F, -207.322006F }, _c.CreateCubicBezierEasingFunction({ 0.180000007F, 0.0F }, { 0.34799999F, 1.0F })); + // Frame 73. + result.InsertKeyFrame(0.407821238F, { -210.957993F, -204.322006F }, _c.CreateCubicBezierEasingFunction({ 0.693000019F, 0.0F }, { 0.270000011F, 1.0F })); + return result; + } + + // - - Layer aggregator + // - Layer: Dot-Y + // Transforms: Dot-Y + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_08() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { -156.916F, -206.503998F }, StepThenHoldEasingFunction()); + // Frame 28. + result.InsertKeyFrame(0.156424582F, { -156.916F, -206.503998F }, HoldThenStepEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, { -117.416F, -206.503998F }, CubicBezierEasingFunction_2()); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_09() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { -93.6669998F, -51.8180008F }, StepThenHoldEasingFunction()); + // Frame 28. + result.InsertKeyFrame(0.156424582F, { -93.6669998F, -51.8180008F }, HoldThenStepEasingFunction()); + // Frame 40. + result.InsertKeyFrame(0.223463684F, { -93.6669998F, -132.817993F }, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.25999999F, 1.0F })); + // Frame 54. + result.InsertKeyFrame(0.301675975F, { -93.6669998F, 42.0569992F }, _c.CreateCubicBezierEasingFunction({ 0.74000001F, 0.0F }, { 0.833000004F, 0.833000004F })); + return result; + } + + // - Layer aggregator + // Layer: Dot1 + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_10() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 98.9800034F, -157.509995F }, HoldThenStepEasingFunction()); + // Frame 18.69. + result.InsertKeyFrame(0.104395606F, { -161.020004F, -157.509995F }, _c.CreateCubicBezierEasingFunction({ 0.823000014F, 0.0F }, { 0.833000004F, 0.833000004F })); + return result; + } + + // Radius + Vector2KeyFrameAnimation RadiusVector2Animation() + { + // Frame 0. + if (_radiusVector2Animation != nullptr) { return _radiusVector2Animation; } + const auto result = _radiusVector2Animation = CreateVector2KeyFrameAnimation(0.0F, { 1.5F, 1.5F }, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, { 1.5F, 1.5F }, HoldThenStepEasingFunction()); + // Frame 61. + result.InsertKeyFrame(0.340782136F, { 22.2999992F, 22.2999992F }, _c.CreateCubicBezierEasingFunction({ 0.333000004F, 0.0F }, { 0.666999996F, 1.0F })); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_00() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 96. + result.InsertKeyFrame(0.536312878F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E3-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_01() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 102. + result.InsertKeyFrame(0.569832385F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E3-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_02() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: I-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_03() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 93. + result.InsertKeyFrame(0.519553065F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + Vector2KeyFrameAnimation ShapeVisibilityAnimation_04() + { + // Frame 0. + if (_shapeVisibilityAnimation_04 != nullptr) { return _shapeVisibilityAnimation_04; } + const auto result = _shapeVisibilityAnimation_04 = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 81. + result.InsertKeyFrame(0.452513963F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E2-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_05() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 96. + result.InsertKeyFrame(0.536312878F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E2-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_06() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 86. + result.InsertKeyFrame(0.480446935F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E1-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_07() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 94. + result.InsertKeyFrame(0.525139689F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E1-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_08() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T1a-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_09() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 59. + result.InsertKeyFrame(0.329608947F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 156. + result.InsertKeyFrame(0.87150836F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T2b-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_10() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T2a-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_11() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 72. + result.InsertKeyFrame(0.402234644F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 89. + result.InsertKeyFrame(0.497206718F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T2b-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_12() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T1b-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_13() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 161. + result.InsertKeyFrame(0.899441361F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: O-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_14() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T1a-Y 2 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_15() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 59. + result.InsertKeyFrame(0.329608947F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T2a-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_16() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T1a-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_17() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_18() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 28. + result.InsertKeyFrame(0.156424582F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: L-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_19() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 16. + result.InsertKeyFrame(0.0893854722F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: L-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_20() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 18. + result.InsertKeyFrame(0.100558661F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: Dot1 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_21() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 17. + result.InsertKeyFrame(0.0949720666F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S1-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_22() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 30. + result.InsertKeyFrame(0.167597771F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 37. + result.InsertKeyFrame(0.206703916F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S7 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_23() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 65. + result.InsertKeyFrame(0.363128483F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S3-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_24() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 2 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_25() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S11 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_26() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 80. + result.InsertKeyFrame(0.446927369F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 90. + result.InsertKeyFrame(0.502793312F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S12 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_27() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 94. + result.InsertKeyFrame(0.525139689F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S13 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_28() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 95. + result.InsertKeyFrame(0.530726254F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 3 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_29() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 4 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_30() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + static IGeometrySource2D CanvasGeometryToIGeometrySource2D(winrt::com_ptr geo) + { + return geo.as(); + } + + public: + LottieLogo1_AnimatedVisual(Compositor compositor) + : _c{compositor} + , _reusableExpressionAnimation(compositor.CreateExpressionAnimation()) + { + winrt::check_hresult(D2D1CreateFactory(D2D1_FACTORY_TYPE_SINGLE_THREADED, _d2dFactory.put())); + const auto _ = Root(); + } + + void Close() + { + if (_root) + { + _root.Close(); + } + } + + TimeSpan Duration() const + { + return TimeSpan{ c_durationTicks }; + } + + Visual RootVisual() const + { + return _root; + } + + float2 Size() const + { + return { 375.0F, 667.0F }; + } + + void CreateAnimations() + { + _containerShape_00.StartAnimation(L"Offset", OffsetVector2Animation_01(), AnimationController_0()); + _containerShape_00.StartAnimation(L"Scale", ShapeVisibilityAnimation_00(), AnimationController_0()); + _containerShape_01.StartAnimation(L"Offset", OffsetVector2Animation_00(), AnimationController_0()); + _containerShape_02.StartAnimation(L"Offset", OffsetVector2Animation_02(), AnimationController_0()); + _containerShape_02.StartAnimation(L"Scale", ShapeVisibilityAnimation_01(), AnimationController_0()); + _containerShape_03.StartAnimation(L"Offset", OffsetVector2Animation_02(), AnimationController_0()); + _containerShape_03.StartAnimation(L"Scale", ShapeVisibilityAnimation_02(), AnimationController_0()); + _containerShape_04.StartAnimation(L"Offset", OffsetVector2Animation_03(), AnimationController_0()); + _containerShape_04.StartAnimation(L"Scale", ShapeVisibilityAnimation_03(), AnimationController_0()); + _containerShape_05.StartAnimation(L"Offset", OffsetVector2Animation_03(), AnimationController_0()); + _containerShape_05.StartAnimation(L"Scale", ShapeVisibilityAnimation_04(), AnimationController_0()); + _containerShape_06.StartAnimation(L"Offset", OffsetVector2Animation_04(), AnimationController_0()); + _containerShape_06.StartAnimation(L"Scale", ShapeVisibilityAnimation_05(), AnimationController_0()); + _containerShape_07.StartAnimation(L"Offset", OffsetVector2Animation_04(), AnimationController_0()); + _containerShape_07.StartAnimation(L"Scale", ShapeVisibilityAnimation_06(), AnimationController_0()); + _containerShape_08.StartAnimation(L"Offset", OffsetVector2Animation_05(), AnimationController_0()); + _containerShape_08.StartAnimation(L"Scale", ShapeVisibilityAnimation_07(), AnimationController_0()); + _containerShape_09.StartAnimation(L"Offset", OffsetVector2Animation_05(), AnimationController_0()); + _containerShape_09.StartAnimation(L"Scale", ShapeVisibilityAnimation_08(), AnimationController_0()); + _containerShape_10.StartAnimation(L"Offset", OffsetVector2Animation_06(), AnimationController_0()); + _containerShape_10.StartAnimation(L"Scale", ShapeVisibilityAnimation_09(), AnimationController_0()); + _containerShape_11.StartAnimation(L"Offset", OffsetVector2Animation_07(), AnimationController_0()); + _containerShape_11.StartAnimation(L"Scale", ShapeVisibilityAnimation_14(), AnimationController_0()); + _containerShape_12.StartAnimation(L"Offset", OffsetVector2Animation_06(), AnimationController_0()); + _containerShape_12.StartAnimation(L"Scale", ShapeVisibilityAnimation_15(), AnimationController_0()); + _containerShape_13.StartAnimation(L"Offset", OffsetVector2Animation_06(), AnimationController_0()); + _containerShape_13.StartAnimation(L"Scale", ShapeVisibilityAnimation_17(), AnimationController_0()); + _containerShape_14.StartAnimation(L"Offset", OffsetVector2Animation_09(), AnimationController_0()); + _containerShape_14.StartAnimation(L"Scale", ShapeVisibilityAnimation_18(), AnimationController_0()); + _containerShape_15.StartAnimation(L"Offset", OffsetVector2Animation_08(), AnimationController_0()); + _containerShape_16.StartAnimation(L"Offset", OffsetVector2Animation_10(), AnimationController_1()); + _containerShape_16.StartAnimation(L"Scale", ShapeVisibilityAnimation_21(), AnimationController_0()); + _containerShape_17.StartAnimation(L"Scale", ShapeVisibilityAnimation_22(), AnimationController_0()); + _containerShape_18.StartAnimation(L"Scale", ShapeVisibilityAnimation_23(), AnimationController_0()); + _containerShape_19.StartAnimation(L"Scale", ShapeVisibilityAnimation_24(), AnimationController_0()); + _containerShape_20.StartAnimation(L"Scale", ShapeVisibilityAnimation_25(), AnimationController_0()); + _containerShape_21.StartAnimation(L"Scale", ShapeVisibilityAnimation_29(), AnimationController_0()); + _containerShape_22.StartAnimation(L"Scale", ShapeVisibilityAnimation_30(), AnimationController_0()); + _ellipse_0_0.StartAnimation(L"Radius", RadiusVector2Animation(), AnimationController_0()); + _ellipse_0_1.StartAnimation(L"Radius", RadiusVector2Animation(), AnimationController_0()); + _ellipse_0_1.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0_to_0p399(), AnimationController_0()); + _ellipse_0_1.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_1_to_0p88(), AnimationController_0()); + _pathGeometry_00.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p316_0(), AnimationController_0()); + _pathGeometry_01.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p316_1(), AnimationController_0()); + _pathGeometry_02.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p457_0(), AnimationController_0()); + _pathGeometry_03.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p457_1(), AnimationController_0()); + _pathGeometry_04.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p43_0(), AnimationController_0()); + _pathGeometry_05.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p43_1(), AnimationController_0()); + _pathGeometry_06.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p375_0(), AnimationController_0()); + _pathGeometry_07.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p375_1(), AnimationController_0()); + _pathGeometry_08.StartAnimation(L"TStart", TStartScalarAnimation_0_to_0p249(), AnimationController_0()); + _pathGeometry_08.StartAnimation(L"TEnd", TEndScalarAnimation_0_to_1_0(), AnimationController_0()); + _pathGeometry_09.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p29_to_0_0(), AnimationController_0()); + _pathGeometry_09.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p411_to_0p665_0(), AnimationController_0()); + _pathGeometry_10.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p5_to_0_0(), AnimationController_0()); + _pathGeometry_10.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p5_to_1_0(), AnimationController_0()); + _pathGeometry_11.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p29_to_0_1(), AnimationController_0()); + _pathGeometry_11.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p411_to_0p665_1(), AnimationController_0()); + _pathGeometry_12.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p117_to_1_0(), AnimationController_0()); + _pathGeometry_13.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p117_to_1_1(), AnimationController_0()); + _pathGeometry_14.StartAnimation(L"TStart", TStartScalarAnimation_0_to_0p249(), AnimationController_0()); + _pathGeometry_14.StartAnimation(L"TEnd", TEndScalarAnimation_0_to_1_1(), AnimationController_0()); + _pathGeometry_15.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p5_to_0_1(), AnimationController_0()); + _pathGeometry_15.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p5_to_1_1(), AnimationController_0()); + _pathGeometry_16.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p249_to_0p891(), AnimationController_0()); + _pathGeometry_17.StartAnimation(L"TStart", TStartScalarAnimation_0p8_to_0(), AnimationController_0()); + _pathGeometry_17.StartAnimation(L"TEnd", TEndScalarAnimation_0p81_to_0p734_0(), AnimationController_0()); + _pathGeometry_18.StartAnimation(L"TStart", TStartScalarAnimation_0p8_to_0p3(), AnimationController_0()); + _pathGeometry_18.StartAnimation(L"TEnd", TEndScalarAnimation_0p81_to_0p734_1(), AnimationController_0()); + _pathGeometry_19.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_00(), AnimationController_0()); + _pathGeometry_19.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_00(), AnimationController_0()); + _pathGeometry_20.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_01(), AnimationController_0()); + _pathGeometry_20.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_01(), AnimationController_0()); + _pathGeometry_21.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_02(), AnimationController_0()); + _pathGeometry_21.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_02(), AnimationController_0()); + _pathGeometry_22.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_02(), AnimationController_0()); + _pathGeometry_22.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_02(), AnimationController_0()); + _pathGeometry_23.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_03(), AnimationController_0()); + _pathGeometry_23.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_03(), AnimationController_0()); + _pathGeometry_24.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_04(), AnimationController_0()); + _pathGeometry_24.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_03(), AnimationController_0()); + _pathGeometry_25.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_05(), AnimationController_0()); + _pathGeometry_25.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_04(), AnimationController_0()); + _pathGeometry_26.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_06(), AnimationController_0()); + _pathGeometry_26.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_05(), AnimationController_0()); + _pathGeometry_27.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_07(), AnimationController_0()); + _pathGeometry_27.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_06(), AnimationController_0()); + _pathGeometry_28.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_08(), AnimationController_0()); + _pathGeometry_28.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_06(), AnimationController_0()); + _pathGeometry_29.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_09(), AnimationController_0()); + _pathGeometry_29.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_07(), AnimationController_0()); + _pathGeometry_30.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_10(), AnimationController_0()); + _pathGeometry_30.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_08(), AnimationController_0()); + _pathGeometry_31.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_11(), AnimationController_0()); + _pathGeometry_31.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_09(), AnimationController_0()); + _pathGeometry_32.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_12(), AnimationController_0()); + _pathGeometry_32.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_10(), AnimationController_0()); + _pathGeometry_33.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_13(), AnimationController_0()); + _pathGeometry_33.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_11(), AnimationController_0()); + _pathGeometry_34.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_14(), AnimationController_0()); + _pathGeometry_34.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_11(), AnimationController_0()); + _pathGeometry_35.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_15(), AnimationController_0()); + _pathGeometry_35.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_12(), AnimationController_0()); + _pathGeometry_36.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_16(), AnimationController_0()); + _pathGeometry_36.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_13(), AnimationController_0()); + _pathGeometry_37.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_17(), AnimationController_0()); + _pathGeometry_37.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_13(), AnimationController_0()); + _pathGeometry_38.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_18(), AnimationController_0()); + _pathGeometry_38.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_14(), AnimationController_0()); + _spriteShape_11.StartAnimation(L"Scale", ShapeVisibilityAnimation_10(), AnimationController_0()); + _spriteShape_12.StartAnimation(L"Scale", ShapeVisibilityAnimation_11(), AnimationController_0()); + _spriteShape_13.StartAnimation(L"Scale", ShapeVisibilityAnimation_12(), AnimationController_0()); + _spriteShape_14.StartAnimation(L"Scale", ShapeVisibilityAnimation_13(), AnimationController_0()); + _spriteShape_15.StartAnimation(L"Scale", ShapeVisibilityAnimation_04(), AnimationController_0()); + _spriteShape_19.StartAnimation(L"Scale", ShapeVisibilityAnimation_16(), AnimationController_0()); + _spriteShape_22.StartAnimation(L"Scale", ShapeVisibilityAnimation_19(), AnimationController_0()); + _spriteShape_23.StartAnimation(L"Scale", ShapeVisibilityAnimation_20(), AnimationController_0()); + _spriteShape_36.StartAnimation(L"Scale", ShapeVisibilityAnimation_26(), AnimationController_0()); + _spriteShape_37.StartAnimation(L"Scale", ShapeVisibilityAnimation_27(), AnimationController_0()); + _spriteShape_38.StartAnimation(L"Scale", ShapeVisibilityAnimation_28(), AnimationController_0()); + _root.Properties().StartAnimation(L"t0", t0ScalarAnimation_0_to_1(), AnimationController_0()); + } + + void DestroyAnimations() + { + _containerShape_00.StopAnimation(L"Offset"); + _containerShape_00.StopAnimation(L"Scale"); + _containerShape_01.StopAnimation(L"Offset"); + _containerShape_02.StopAnimation(L"Offset"); + _containerShape_02.StopAnimation(L"Scale"); + _containerShape_03.StopAnimation(L"Offset"); + _containerShape_03.StopAnimation(L"Scale"); + _containerShape_04.StopAnimation(L"Offset"); + _containerShape_04.StopAnimation(L"Scale"); + _containerShape_05.StopAnimation(L"Offset"); + _containerShape_05.StopAnimation(L"Scale"); + _containerShape_06.StopAnimation(L"Offset"); + _containerShape_06.StopAnimation(L"Scale"); + _containerShape_07.StopAnimation(L"Offset"); + _containerShape_07.StopAnimation(L"Scale"); + _containerShape_08.StopAnimation(L"Offset"); + _containerShape_08.StopAnimation(L"Scale"); + _containerShape_09.StopAnimation(L"Offset"); + _containerShape_09.StopAnimation(L"Scale"); + _containerShape_10.StopAnimation(L"Offset"); + _containerShape_10.StopAnimation(L"Scale"); + _containerShape_11.StopAnimation(L"Offset"); + _containerShape_11.StopAnimation(L"Scale"); + _containerShape_12.StopAnimation(L"Offset"); + _containerShape_12.StopAnimation(L"Scale"); + _containerShape_13.StopAnimation(L"Offset"); + _containerShape_13.StopAnimation(L"Scale"); + _containerShape_14.StopAnimation(L"Offset"); + _containerShape_14.StopAnimation(L"Scale"); + _containerShape_15.StopAnimation(L"Offset"); + _containerShape_16.StopAnimation(L"Offset"); + _containerShape_16.StopAnimation(L"Scale"); + _containerShape_17.StopAnimation(L"Scale"); + _containerShape_18.StopAnimation(L"Scale"); + _containerShape_19.StopAnimation(L"Scale"); + _containerShape_20.StopAnimation(L"Scale"); + _containerShape_21.StopAnimation(L"Scale"); + _containerShape_22.StopAnimation(L"Scale"); + _ellipse_0_0.StopAnimation(L"Radius"); + _ellipse_0_1.StopAnimation(L"Radius"); + _ellipse_0_1.StopAnimation(L"TrimStart"); + _ellipse_0_1.StopAnimation(L"TrimEnd"); + _pathGeometry_00.StopAnimation(L"TrimEnd"); + _pathGeometry_01.StopAnimation(L"TrimEnd"); + _pathGeometry_02.StopAnimation(L"TrimEnd"); + _pathGeometry_03.StopAnimation(L"TrimEnd"); + _pathGeometry_04.StopAnimation(L"TrimEnd"); + _pathGeometry_05.StopAnimation(L"TrimEnd"); + _pathGeometry_06.StopAnimation(L"TrimEnd"); + _pathGeometry_07.StopAnimation(L"TrimEnd"); + _pathGeometry_08.StopAnimation(L"TStart"); + _pathGeometry_08.StopAnimation(L"TEnd"); + _pathGeometry_09.StopAnimation(L"TrimStart"); + _pathGeometry_09.StopAnimation(L"TrimEnd"); + _pathGeometry_10.StopAnimation(L"TrimStart"); + _pathGeometry_10.StopAnimation(L"TrimEnd"); + _pathGeometry_11.StopAnimation(L"TrimStart"); + _pathGeometry_11.StopAnimation(L"TrimEnd"); + _pathGeometry_12.StopAnimation(L"TrimEnd"); + _pathGeometry_13.StopAnimation(L"TrimEnd"); + _pathGeometry_14.StopAnimation(L"TStart"); + _pathGeometry_14.StopAnimation(L"TEnd"); + _pathGeometry_15.StopAnimation(L"TrimStart"); + _pathGeometry_15.StopAnimation(L"TrimEnd"); + _pathGeometry_16.StopAnimation(L"TrimEnd"); + _pathGeometry_17.StopAnimation(L"TStart"); + _pathGeometry_17.StopAnimation(L"TEnd"); + _pathGeometry_18.StopAnimation(L"TStart"); + _pathGeometry_18.StopAnimation(L"TEnd"); + _pathGeometry_19.StopAnimation(L"TStart"); + _pathGeometry_19.StopAnimation(L"TEnd"); + _pathGeometry_20.StopAnimation(L"TStart"); + _pathGeometry_20.StopAnimation(L"TEnd"); + _pathGeometry_21.StopAnimation(L"TStart"); + _pathGeometry_21.StopAnimation(L"TEnd"); + _pathGeometry_22.StopAnimation(L"TStart"); + _pathGeometry_22.StopAnimation(L"TEnd"); + _pathGeometry_23.StopAnimation(L"TStart"); + _pathGeometry_23.StopAnimation(L"TEnd"); + _pathGeometry_24.StopAnimation(L"TStart"); + _pathGeometry_24.StopAnimation(L"TEnd"); + _pathGeometry_25.StopAnimation(L"TStart"); + _pathGeometry_25.StopAnimation(L"TEnd"); + _pathGeometry_26.StopAnimation(L"TStart"); + _pathGeometry_26.StopAnimation(L"TEnd"); + _pathGeometry_27.StopAnimation(L"TStart"); + _pathGeometry_27.StopAnimation(L"TEnd"); + _pathGeometry_28.StopAnimation(L"TStart"); + _pathGeometry_28.StopAnimation(L"TEnd"); + _pathGeometry_29.StopAnimation(L"TStart"); + _pathGeometry_29.StopAnimation(L"TEnd"); + _pathGeometry_30.StopAnimation(L"TStart"); + _pathGeometry_30.StopAnimation(L"TEnd"); + _pathGeometry_31.StopAnimation(L"TStart"); + _pathGeometry_31.StopAnimation(L"TEnd"); + _pathGeometry_32.StopAnimation(L"TStart"); + _pathGeometry_32.StopAnimation(L"TEnd"); + _pathGeometry_33.StopAnimation(L"TStart"); + _pathGeometry_33.StopAnimation(L"TEnd"); + _pathGeometry_34.StopAnimation(L"TStart"); + _pathGeometry_34.StopAnimation(L"TEnd"); + _pathGeometry_35.StopAnimation(L"TStart"); + _pathGeometry_35.StopAnimation(L"TEnd"); + _pathGeometry_36.StopAnimation(L"TStart"); + _pathGeometry_36.StopAnimation(L"TEnd"); + _pathGeometry_37.StopAnimation(L"TStart"); + _pathGeometry_37.StopAnimation(L"TEnd"); + _pathGeometry_38.StopAnimation(L"TStart"); + _pathGeometry_38.StopAnimation(L"TEnd"); + _spriteShape_11.StopAnimation(L"Scale"); + _spriteShape_12.StopAnimation(L"Scale"); + _spriteShape_13.StopAnimation(L"Scale"); + _spriteShape_14.StopAnimation(L"Scale"); + _spriteShape_15.StopAnimation(L"Scale"); + _spriteShape_19.StopAnimation(L"Scale"); + _spriteShape_22.StopAnimation(L"Scale"); + _spriteShape_23.StopAnimation(L"Scale"); + _spriteShape_36.StopAnimation(L"Scale"); + _spriteShape_37.StopAnimation(L"Scale"); + _spriteShape_38.StopAnimation(L"Scale"); + _root.Properties().StopAnimation(L"t0"); + } + + }; + + winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual LottieLogo1::TryCreateAnimatedVisual( + Compositor const& compositor) + { + IInspectable diagnostics = nullptr; + return TryCreateAnimatedVisual(compositor, diagnostics); + } + + winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual LottieLogo1::TryCreateAnimatedVisual( + Compositor const& compositor, + IInspectable& diagnostics) + { + diagnostics = nullptr; + auto result = winrt::make(compositor); + result.CreateAnimations(); + return result; + } + + double LottieLogo1::FrameCount() + { + return 179.0; + } + + double LottieLogo1::Framerate() + { + return 30.0; + } + + TimeSpan LottieLogo1::Duration() + { + return TimeSpan{ 59666666L }; + } + + double LottieLogo1::FrameToProgress(double frameNumber) + { + return frameNumber / 179.0; + } + + winrt::Windows::Foundation::Collections::IMapView LottieLogo1::Markers() + { + return winrt::single_threaded_map( + std::map + { + } + ).GetView(); + } + + void LottieLogo1::SetColorProperty(hstring const&, Color) + { + } + + void LottieLogo1::SetScalarProperty(hstring const&, double) + { + } +} // end namespace diff --git a/Lottie/AnimatedVisuals.LottieLogo1.h b/Lottie/AnimatedVisuals.LottieLogo1.h new file mode 100644 index 000000000..aa1f90655 --- /dev/null +++ b/Lottie/AnimatedVisuals.LottieLogo1.h @@ -0,0 +1,77 @@ +#pragma once +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// LottieGen version: +// 8.0.230813-rc.7+0443b1e789 +// +// Command: +// LottieGen -Language Cppwinrt -RootNamespace SimpleIslandApp -WinUIVersion 3.0 -InputFile LottieLogo1.json +// +// Input file: +// LottieLogo1.json (190271 bytes created 0:40-04:00 Mar 13 2024) +// +// LottieGen source: +// http://aka.ms/Lottie +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ +#include "AnimatedVisuals.LottieLogo1.g.h" + +namespace winrt::AnimatedVisuals +{ + // Frame rate: 30 fps + // Frame count: 179 + // Duration: 5966.7 mS + namespace implementation + { + class LottieLogo1 + : public LottieLogo1T + { + public: + // Animation duration: 5.967 seconds. + static constexpr int64_t c_durationTicks{ 59666666L }; + + winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual TryCreateAnimatedVisual( + winrt::Microsoft::UI::Composition::Compositor const& compositor); + + winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual TryCreateAnimatedVisual( + winrt::Microsoft::UI::Composition::Compositor const& compositor, + winrt::Windows::Foundation::IInspectable& diagnostics); + + // Gets the number of frames in the animation. + double FrameCount(); + + // Gets the framerate of the animation. + double Framerate(); + + // Gets the duration of the animation. + winrt::Windows::Foundation::TimeSpan Duration(); + + // Converts a zero-based frame number to the corresponding progress value denoting the + // start of the frame. + double FrameToProgress(double frameNumber); + + // Returns a map from marker names to corresponding progress values. + winrt::Windows::Foundation::Collections::IMapView Markers(); + + // Sets the color property with the given name, or does nothing if no such property + // exists. + void SetColorProperty(hstring const& propertyName, winrt::Windows::UI::Color value); + + // Sets the scalar property with the given name, or does nothing if no such property + // exists. + void SetScalarProperty(hstring const& propertyName, double value); + }; + } + + namespace factory_implementation + { + struct LottieLogo1 : LottieLogo1T + { + }; + } +} diff --git a/Lottie/AnimatedVisuals.LottieLogo1.idl b/Lottie/AnimatedVisuals.LottieLogo1.idl new file mode 100644 index 000000000..571cbbb15 --- /dev/null +++ b/Lottie/AnimatedVisuals.LottieLogo1.idl @@ -0,0 +1,29 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// LottieGen version: +// 8.0.230813-rc.7+0443b1e789 +// +// Command: +// LottieGen -Language Cppwinrt -RootNamespace SimpleIslandApp -WinUIVersion 3.0 -InputFile LottieLogo1.json +// +// Input file: +// LottieLogo1.json (190271 bytes created 0:40-04:00 Mar 13 2024) +// +// LottieGen source: +// http://aka.ms/Lottie +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ +namespace AnimatedVisuals +{ + runtimeclass LottieLogo1 + : [default] Microsoft.UI.Xaml.Controls.IAnimatedVisualSource + , Microsoft.UI.Xaml.Controls.IAnimatedVisualSource2 + { + LottieLogo1(); + }; +} diff --git a/Lottie/Assets/LottieLogo1.json b/Lottie/Assets/LottieLogo1.json new file mode 100644 index 000000000..cb637e3ea --- /dev/null +++ b/Lottie/Assets/LottieLogo1.json @@ -0,0 +1,7390 @@ +{ + "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/Lottie/Assets/LottieLogo1.png b/Lottie/Assets/LottieLogo1.png new file mode 100644 index 0000000000000000000000000000000000000000..45198c75c20bee1032afe869bfafb6b816fa0633 GIT binary patch literal 17039 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 // For ContentPreTranslateMessage +#include +//#include +#include +#include + +namespace winrt +{ + using namespace winrt::Microsoft::UI; + using namespace winrt::Microsoft::UI::Content; + using namespace winrt::Microsoft::UI::Dispatching; +} + +// Forward declarations of functions included in this code module: +void MyRegisterClass(HINSTANCE hInstance, const wchar_t* szWindowClass); +HWND InitInstance(HINSTANCE, int, const wchar_t* szTitle, const wchar_t* szWindowClass); +LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM); +INT_PTR CALLBACK About(HWND, UINT, WPARAM, LPARAM); +bool ProcessMessageForTabNavigation(const HWND topLevelWindow, MSG* msg); + +// Extra state for our top-level window, we point to from GWLP_USERDATA. +struct WindowInfo +{ + // winrt::DesktopWindowXamlSource DesktopWindowXamlSource{ nullptr }; + winrt::Microsoft::UI::Composition::Compositor Compositor{}; + winrt::DesktopChildSiteBridge Bridge{ nullptr }; + winrt::event_token TakeFocusRequestedToken{}; + HWND LastFocusedWindow{ NULL }; + winrt::LottieIsland::LottieContentIsland LottieIsland{ nullptr }; +}; + +int APIENTRY wWinMain(_In_ HINSTANCE hInstance, + _In_opt_ HINSTANCE hPrevInstance, + _In_ LPWSTR lpCmdLine, + _In_ int nCmdShow) +{ + UNREFERENCED_PARAMETER(hPrevInstance); + UNREFERENCED_PARAMETER(lpCmdLine); + + try + { + // Island-support: Call init_apartment to initialize COM and WinRT for the thread. + winrt::init_apartment(winrt::apartment_type::single_threaded); + + // Island-support: We must start a DispatcherQueueController before we can create an island or use Xaml. + auto dispatcherQueueController{ winrt::DispatcherQueueController::CreateOnCurrentThread() }; + + // Island-support: Create our custom Xaml App object. This is needed to properly use the controls and metadata + // in Microsoft.ui.xaml.controls.dll. + // auto simpleIslandApp{ winrt::make() }; + + // The title bar text + WCHAR szTitle[100]; + winrt::check_bool(LoadStringW(hInstance, IDS_APP_TITLE, szTitle, ARRAYSIZE(szTitle)) != 0); + + // The main window class name + WCHAR szWindowClass[100]; + winrt::check_bool(LoadStringW(hInstance, IDC_SIMPLEISLANDAPP, szWindowClass, ARRAYSIZE(szWindowClass)) != 0); + + MyRegisterClass(hInstance, szWindowClass); + + // Perform application initialization: + HWND topLevelWindow = InitInstance(hInstance, nCmdShow, szTitle, szWindowClass); + + HACCEL hAccelTable = LoadAccelerators(hInstance, MAKEINTRESOURCE(IDC_SIMPLEISLANDAPP)); + + MSG msg{}; + + // Main message loop: + while (GetMessage(&msg, nullptr, 0, 0)) + { + // Island-support: It's important to call ContentPreTranslateMessage in the event loop so that WinAppSDK can be aware of + // the messages. If you don't need to use an accelerator table, you could just call DispatcherQueue.RunEventLoop + // to do the message pump for you (it will call ContentPreTranslateMessage automatically). + if (::ContentPreTranslateMessage(&msg)) + { + continue; + } + + if (TranslateAccelerator(msg.hwnd, hAccelTable, &msg)) + { + continue; + } + + // Island-support: This is needed so that the user can correctly tab and shift+tab into islands. + if (ProcessMessageForTabNavigation(topLevelWindow, &msg)) + { + continue; + } + + TranslateMessage(&msg); + DispatchMessage(&msg); + } + + // Island-support: To properly shut down after using a DispatcherQueue, call ShutdownQueue[Aysnc](). + dispatcherQueueController.ShutdownQueue(); + } + catch (const winrt::hresult_error& exception) + { + // An exception was thrown, let's make the exit code the HR value of the exception. + return exception.code().value; + } + + return 0; +} + +// Returns "true" if the function handled the message and it shouldn't be processed any further. +// Intended to be called from the main message loop. +bool ProcessMessageForTabNavigation(const HWND /*topLevelWindow*/, MSG* /*msg*/) +{ + //if (msg->message == WM_KEYDOWN && msg->wParam == VK_TAB) + //{ + // // The user is pressing the "tab" key. We want to handle this ourselves so we can pass information into Xaml + // // about the tab navigation. Specifically, we need to tell Xaml whether this is a forward tab, or a backward + // // shift+tab, so Xaml will know whether to put focus on the first Xaml element in the island or the last + // // Xaml element. (This is done in the call to DesktopWindowXamlSource.NavigateFocus()). + // const HWND currentFocusedWindow = ::GetFocus(); + // if (::GetAncestor(currentFocusedWindow, GA_ROOT) != topLevelWindow) + // { + // // This is a window outside of our top-level window, let the system process it. + // return false; + // } + + // const bool isShiftKeyDown = ((HIWORD(::GetKeyState(VK_SHIFT)) & 0x8000) != 0); + // const HWND nextFocusedWindow = ::GetNextDlgTabItem(topLevelWindow, currentFocusedWindow, isShiftKeyDown /*bPrevious*/); + + // WindowInfo* windowInfo = reinterpret_cast(::GetWindowLongPtr(topLevelWindow, GWLP_USERDATA)); + // const HWND dwxsWindow = winrt::GetWindowFromWindowId(windowInfo->DesktopWindowXamlSource.SiteBridge().WindowId()); + // if (dwxsWindow == nextFocusedWindow) + // { + // // Focus is moving to our DesktopWindowXamlSource. Instead of just calling SetFocus on it, we call NavigateFocus(), + // // which allows us to tell Xaml which direction the keyboard focus is moving. + // // If your app has multiple DesktopWindowXamlSources in the window, you'll want to loop over them and check to + // // see if focus is moving to each one. + // winrt::XamlSourceFocusNavigationRequest request{ + // isShiftKeyDown ? + // winrt::XamlSourceFocusNavigationReason::Last : + // winrt::XamlSourceFocusNavigationReason::First }; + + // windowInfo->DesktopWindowXamlSource.NavigateFocus(request); + // return true; + // } + + // // Focus isn't moving to our DesktopWindowXamlSource. IsDialogMessage will automatically do the tab navigation + // // for us for this msg. + // const bool handled = (::IsDialogMessage(topLevelWindow, msg) == TRUE); + // return handled; + //} + return false; +} + +// +// FUNCTION: MyRegisterClass() +// +// PURPOSE: Registers the window class. +// +void MyRegisterClass(HINSTANCE hInstance, const wchar_t* szWindowClass) +{ + WNDCLASSEXW wcex; + + wcex.cbSize = sizeof(WNDCLASSEX); + + wcex.style = CS_HREDRAW | CS_VREDRAW; + wcex.lpfnWndProc = WndProc; + wcex.cbClsExtra = 0; + wcex.cbWndExtra = 0; + wcex.hInstance = hInstance; + wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_SIMPLEISLANDAPP)); + wcex.hCursor = LoadCursor(nullptr, IDC_ARROW); + wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1); + wcex.lpszMenuName = MAKEINTRESOURCEW(IDC_SIMPLEISLANDAPP); + wcex.lpszClassName = szWindowClass; + wcex.hIconSm = LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_SMALL)); + + winrt::check_bool(RegisterClassExW(&wcex) != 0); +} + +// +// FUNCTION: InitInstance(HINSTANCE, int) +// +// PURPOSE: Saves instance handle and creates main window +// +// COMMENTS: +// +// In this function, we save the instance handle in a global variable and +// create and display the main program window. +// +HWND InitInstance(HINSTANCE /*hInstance*/, int nCmdShow, const wchar_t* szTitle, const wchar_t* szWindowClass) +{ + HWND hWnd = CreateWindowW(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW, + CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, nullptr, nullptr, ::GetModuleHandle(NULL), nullptr); + winrt::check_bool(hWnd != NULL); + + ShowWindow(hWnd, nCmdShow); + UpdateWindow(hWnd); + return hWnd; +} + +// +// FUNCTION: WndProc(HWND, UINT, WPARAM, LPARAM) +// +// PURPOSE: Processes messages for the main window. +// +// WM_COMMAND - process the application menu +// WM_PAINT - Paint the main window +// WM_DESTROY - post a quit message and return +// +// +LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) +{ + WindowInfo* windowInfo = reinterpret_cast(::GetWindowLongPtr(hWnd, GWLP_USERDATA)); + + switch (message) + { + case WM_CREATE: + { + windowInfo = new WindowInfo(); + ::SetWindowLongPtr(hWnd, GWLP_USERDATA, reinterpret_cast(windowInfo)); + + const HINSTANCE hInst = (HINSTANCE)GetWindowLongPtr(hWnd, GWLP_HINSTANCE); + ::CreateWindow(L"BUTTON", L"Win32 Button 1", WS_TABSTOP | WS_VISIBLE | WS_CHILD, 10, 10, 150, 40, hWnd, (HMENU)501, hInst, NULL); + + windowInfo->Bridge = winrt::DesktopChildSiteBridge::Create( + windowInfo->Compositor, + winrt::GetWindowIdFromWindow(hWnd)); + + //windowInfo->LottieIsland = winrt::LottieIsland::LottieContentIsland{ windowInfo->Compositor }; + windowInfo->LottieIsland = winrt::LottieIsland::LottieContentIsland{ windowInfo->Compositor }; + + windowInfo->Bridge.Connect(windowInfo->LottieIsland.Island()); + windowInfo->Bridge.Show(); + + // C++/WinRT precompiled animation! + windowInfo->LottieIsland.AnimatedVisualSource(winrt::AnimatedVisuals::LottieLogo1()); + + // Live JSON loaded animation! + winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisualSource animatedVisualSource = winrt::LottieVisualWinRT::Class1::LoadLottie(L"ms-appx:///LottieLogo1.json", windowInfo->Compositor); + windowInfo->LottieIsland.AnimatedVisualSource(animatedVisualSource); + + //// Create our DesktopWindowXamlSource and attach it to our hwnd. This is our "island". + //windowInfo->DesktopWindowXamlSource = winrt::DesktopWindowXamlSource{}; + //windowInfo->DesktopWindowXamlSource.Initialize(winrt::GetWindowIdFromWindow(hWnd)); + + //// Enable the DesktopWindowXamlSource to be a tab stop. + //::SetWindowLong( + // winrt::GetWindowFromWindowId(windowInfo->DesktopWindowXamlSource.SiteBridge().WindowId()), + // GWL_STYLE, + // WS_TABSTOP | WS_CHILD | WS_VISIBLE); + + //// Put a new instance of our Xaml "MainPage" into our island. This is our UI content. + //windowInfo->DesktopWindowXamlSource.Content(winrt::make()); + + ::CreateWindow(L"BUTTON", L"Win32 Button 2", WS_TABSTOP | WS_VISIBLE | WS_CHILD, 10, 400, 150, 40, hWnd, (HMENU)502, hInst, NULL); + + // Subscribe to the TakeFocusRequested event, which will be raised when Xaml wants to move keyboard focus back to our window. + //windowInfo->TakeFocusRequestedToken = windowInfo->DesktopWindowXamlSource.TakeFocusRequested( + // [hWnd](winrt::DesktopWindowXamlSource const& /*sender*/, winrt::DesktopWindowXamlSourceTakeFocusRequestedEventArgs const& args) { + // if (args.Request().Reason() == winrt::XamlSourceFocusNavigationReason::First) + // { + // // The reason "First" means the user is tabbing forward, so put the focus on the button in the tab order + // // after the DesktopWindowXamlSource. + // ::SetFocus(::GetDlgItem(hWnd, 502)); + // } + // else if (args.Request().Reason() == winrt::XamlSourceFocusNavigationReason::Last) + // { + // // The reason "Last" means the user is tabbing backward (shift-tab, so put the focus on button prior to + // // the DesktopWindowXamlSource. + // ::SetFocus(::GetDlgItem(hWnd, 501)); + // } + // }); + } + break; + case WM_SIZE: + { + const int width = LOWORD(lParam); + const int height = HIWORD(lParam); + + ::SetWindowPos(::GetDlgItem(hWnd, 501), NULL, 10, 10, 150, 40, SWP_NOZORDER); + ::SetWindowPos(::GetDlgItem(hWnd, 502), NULL, 10, height - 50, 150, 40, SWP_NOZORDER); + if (windowInfo->Bridge) + { + windowInfo->Bridge.MoveAndResize({ 10, 60, width - 20, height - 120 }); + } + + /*if (windowInfo->DesktopWindowXamlSource) + { + windowInfo->DesktopWindowXamlSource.SiteBridge().MoveAndResize({ 10, 60, width - 20, height - 120 }); + }*/ + } + break; + case WM_ACTIVATE: + { + // Make focus work nicely when the user presses alt+tab to activate a different window, and then alt+tab + // again to come back to this window. We want the focus to go back to the same child HWND that was focused + // before. + const bool isGettingDeactivated = (LOWORD(wParam) == WA_INACTIVE); + if (isGettingDeactivated) + { + // Remember the HWND that had focus. + windowInfo->LastFocusedWindow = ::GetFocus(); + } + else if (windowInfo->LastFocusedWindow != NULL) + { + ::SetFocus(windowInfo->LastFocusedWindow); + } + } + break; + case WM_COMMAND: + { + int wmId = LOWORD(wParam); + int wmCode = HIWORD(wParam); + // Parse the menu selections: + switch (wmId) + { + case IDM_ABOUT: + DialogBox(::GetModuleHandle(NULL), MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, About); + break; + case IDM_EXIT: + DestroyWindow(hWnd); + break; + case 501: // Button 1 + if (wmCode == BN_CLICKED) + { + auto prop = windowInfo->LottieIsland.MyProperty(); + --prop; + windowInfo->LottieIsland.MyProperty(prop); + OutputDebugString(L"Property: "); + OutputDebugString(std::to_wstring(prop).c_str()); + OutputDebugString(L"\n"); + } + break; + case 502: // Button 2 + if (wmCode == BN_CLICKED) + { + auto prop = windowInfo->LottieIsland.MyProperty(); + ++prop; + windowInfo->LottieIsland.MyProperty(prop); + OutputDebugString(L"Property: "); + OutputDebugString(std::to_wstring(prop).c_str()); + OutputDebugString(L"\n"); + } + break; + default: + return DefWindowProc(hWnd, message, wParam, lParam); + } + } + break; + case WM_PAINT: + { + PAINTSTRUCT ps; + HDC hdc = BeginPaint(hWnd, &ps); + // TODO: Add any drawing code that uses hdc here... + UNREFERENCED_PARAMETER(hdc); + EndPaint(hWnd, &ps); + } + break; + case WM_DESTROY: + PostQuitMessage(0); + break; + case WM_NCDESTROY: + /*if (windowInfo->DesktopWindowXamlSource && windowInfo->TakeFocusRequestedToken.value != 0) + { + windowInfo->DesktopWindowXamlSource.TakeFocusRequested(windowInfo->TakeFocusRequestedToken); + windowInfo->TakeFocusRequestedToken = {}; + }*/ + delete windowInfo; + ::SetWindowLong(hWnd, GWLP_USERDATA, NULL); + break; + default: + return DefWindowProc(hWnd, message, wParam, lParam); + } + return 0; +} + +// Message handler for about box. +INT_PTR CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) +{ + UNREFERENCED_PARAMETER(lParam); + switch (message) + { + case WM_INITDIALOG: + return (INT_PTR)TRUE; + + case WM_COMMAND: + if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL) + { + EndDialog(hDlg, LOWORD(wParam)); + return (INT_PTR)TRUE; + } + break; + } + return (INT_PTR)FALSE; +} diff --git a/Lottie/SimpleIslandApp.h b/Lottie/SimpleIslandApp.h new file mode 100644 index 000000000..385a70ac3 --- /dev/null +++ b/Lottie/SimpleIslandApp.h @@ -0,0 +1,5 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +#pragma once + +#include "resource.h" diff --git a/Lottie/SimpleIslandApp.ico b/Lottie/SimpleIslandApp.ico new file mode 100644 index 0000000000000000000000000000000000000000..b3ec03bd617f32e58128fa977fd6ac9605124f4b GIT binary patch literal 46227 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 + + + + + + + Debug + ARM64 + + + Debug + Win32 + + + Release + ARM64 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + 17.0 + + {350a5ec2-b156-4aaf-9d80-a864c76ba0c5} + SimpleIslandApp + + Windows Store + 10.0 + + true + true + true + true + SimpleIslandApp + SimpleIslandApp + $(RootNamespace) + en-US + false + 10.0 + 10.0 + + 10.0.17763.0 + true + true + + + + + Debug + Win32 + + + Debug + x64 + + + Debug + ARM64 + + + Release + Win32 + + + Release + x64 + + + Release + ARM64 + + + + Application + Unicode + true + + + true + true + + + false + true + false + + + + + + + + + + + + + + Use + pch.h + $(IntDir)pch.pch + + + user32.lib;Ole32.lib;%(AdditionalDependencies) + Microsoft.UI.Windowing.Core.dll + + + + + Level4 + true + true + WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions) + true + + + Windows + true + + + + + Level4 + true + true + true + true + WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions) + true + + + Windows + true + true + true + + + + + Level4 + true + true + _DEBUG;_WINDOWS;%(PreprocessorDefinitions) + true + + + Windows + true + + + + + Level4 + true + true + _DEBUG;_WINDOWS;%(PreprocessorDefinitions) + true + + + Windows + true + + + + + Level4 + true + true + true + true + NDEBUG;_WINDOWS;%(PreprocessorDefinitions) + true + + + Windows + true + true + true + + + + + Level4 + true + true + true + true + NDEBUG;_WINDOWS;%(PreprocessorDefinitions) + true + + + Windows + true + true + true + + + + + + + + + AnimatedVisuals.LottieLogo1.idl + + + + + AnimatedVisuals.LottieLogo1.idl + + + Create + + + + + + + + + + + + + + + + + + + + + true + false + Document + + + + + + {9ba7a2f2-b723-458b-a575-3f726d271465} + + + {7cf889af-6b9b-4f9c-815c-990f5f73c9a0} + all + + + + + Designer + + + + + + + + + + + + This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. + + + + + + + + + + \ No newline at end of file diff --git a/Lottie/SimpleIslandApp.vcxproj.filters b/Lottie/SimpleIslandApp.vcxproj.filters new file mode 100644 index 000000000..ad53995eb --- /dev/null +++ b/Lottie/SimpleIslandApp.vcxproj.filters @@ -0,0 +1,78 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Source Files + + + + + Source Files + + + Source Files + + + Source Files + + + + + Resource Files + + + + + Resource Files + + + Resource Files + + + Resource Files + + + + + + + + + + + + + + + + + Source Files + + + \ No newline at end of file diff --git a/Lottie/package.appxmanifest b/Lottie/package.appxmanifest new file mode 100644 index 000000000..87bc516b6 --- /dev/null +++ b/Lottie/package.appxmanifest @@ -0,0 +1,55 @@ + + + + + + SimpleIslandApp + Microsoft Corporation + Assets\logo.png + + + + + + + + + + + + + + + + + + + + + + + + WinRT.Host.dll + + + + + + + + + + \ No newline at end of file diff --git a/Lottie/packages.config b/Lottie/packages.config new file mode 100644 index 000000000..26a6e74b1 --- /dev/null +++ b/Lottie/packages.config @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/Lottie/pch.cpp b/Lottie/pch.cpp new file mode 100644 index 000000000..b7f2ce9c0 --- /dev/null +++ b/Lottie/pch.cpp @@ -0,0 +1,3 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +#include "pch.h" diff --git a/Lottie/pch.h b/Lottie/pch.h new file mode 100644 index 000000000..9ceb279f1 --- /dev/null +++ b/Lottie/pch.h @@ -0,0 +1,22 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +#pragma once + +#include "targetver.h" +#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers +// Windows Header Files +#include + +// There's an API named GetCurrentTime in the Storyboard type. +#undef GetCurrentTime + +// Com and WinRT headers +#include + +// Some generated files, like MainPage.xaml.g.h need files such as Microsoft.UI.Xaml.Markup.h +// to already be included. Let's just include a bunch of stuff we know we'll need here in the PCH. +#include +#include +#include +#include +#include diff --git a/Lottie/small.ico b/Lottie/small.ico new file mode 100644 index 0000000000000000000000000000000000000000..b3ec03bd617f32e58128fa977fd6ac9605124f4b GIT binary patch literal 46227 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 diff --git a/LottieGen/AnimatedVisuals.LottieLogo1.cpp b/LottieGen/AnimatedVisuals.LottieLogo1.cpp new file mode 100644 index 000000000..43756ea1b --- /dev/null +++ b/LottieGen/AnimatedVisuals.LottieLogo1.cpp @@ -0,0 +1,4309 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// LottieGen version: +// 8.0.230813-rc.7+0443b1e789 +// +// Command: +// LottieGen -Language Cppwinrt -WinUIVersion 3.0 -InputFile LottieLogo1.json +// +// Input file: +// LottieLogo1.json (190271 bytes created 0:40-04:00 Mar 13 2024) +// +// LottieGen source: +// http://aka.ms/Lottie +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ +// ____________________________________ +// | Object stats | Count | +// |__________________________|_______| +// | All CompositionObjects | 610 | +// |--------------------------+-------| +// | Expression animators | 52 | +// | KeyFrame animators | 121 | +// | Reference parameters | 52 | +// | Expression operations | 0 | +// |--------------------------+-------| +// | Animated brushes | - | +// | Animated gradient stops | - | +// | ExpressionAnimations | 50 | +// | PathKeyFrameAnimations | - | +// |--------------------------+-------| +// | ContainerVisuals | 1 | +// | ShapeVisuals | 1 | +// |--------------------------+-------| +// | ContainerShapes | 23 | +// | CompositionSpriteShapes | 45 | +// |--------------------------+-------| +// | Brushes | 3 | +// | Gradient stops | - | +// | CompositionVisualSurface | - | +// ------------------------------------ +#include "pch.h" +#include "AnimatedVisuals.LottieLogo1.h" +#if __has_include ("AnimatedVisuals.LottieLogo1.g.cpp") +#include "AnimatedVisuals.LottieLogo1.g.cpp" +#endif +#include +#include +#include +#include "d2d1.h" +#include +#include +#include +#ifdef BUILD_WINDOWS +namespace ABI +{ +#include +} +#else +#include +#endif +#include + +using namespace winrt::Microsoft::UI; +using namespace winrt::Microsoft::UI::Composition; +using namespace winrt::Microsoft::UI::Xaml::Controls; +using namespace winrt::Windows::Foundation; +using namespace winrt::Windows::Foundation::Numerics; +using namespace winrt::Windows::Graphics; +using Color = winrt::Windows::UI::Color; +using CompositionPropertySet = winrt::Microsoft::UI::Composition::CompositionPropertySet; +using TimeSpan = winrt::Windows::Foundation::TimeSpan; + +namespace winrt::AnimatedVisuals::implementation +{ + class CanvasGeometry : public winrt::implements + { + winrt::com_ptr _geometry{ nullptr }; + + public: + CanvasGeometry(winrt::com_ptr geometry) + : _geometry{ geometry } + { } + + // IGeometrySource2D. + winrt::com_ptr Geometry() { return _geometry; } + + // IGeometrySource2DInterop. + IFACEMETHODIMP GetGeometry(ID2D1Geometry** value) noexcept(true) override + { + _geometry.copy_to(value); + return S_OK; + } + + // IGeometrySource2DInterop. + IFACEMETHODIMP TryGetGeometryUsingFactory(ID2D1Factory*, ID2D1Geometry**) noexcept(true) override + { + return E_NOTIMPL; + } + }; + class LottieLogo1_AnimatedVisual : public winrt::implements + { + winrt::com_ptr _d2dFactory{ nullptr }; + static constexpr int64_t c_durationTicks{ 59666666L }; + Compositor const _c{ nullptr }; + ExpressionAnimation const _reusableExpressionAnimation{ nullptr }; + AnimationController _animationController_0{ nullptr }; + AnimationController _animationController_1{ nullptr }; + CompositionColorBrush _colorBrush_AlmostTeal_FF007A87{ nullptr }; + CompositionColorBrush _colorBrush_White{ nullptr }; + CompositionContainerShape _containerShape_00{ nullptr }; + CompositionContainerShape _containerShape_01{ nullptr }; + CompositionContainerShape _containerShape_02{ nullptr }; + CompositionContainerShape _containerShape_03{ nullptr }; + CompositionContainerShape _containerShape_04{ nullptr }; + CompositionContainerShape _containerShape_05{ nullptr }; + CompositionContainerShape _containerShape_06{ nullptr }; + CompositionContainerShape _containerShape_07{ nullptr }; + CompositionContainerShape _containerShape_08{ nullptr }; + CompositionContainerShape _containerShape_09{ nullptr }; + CompositionContainerShape _containerShape_10{ nullptr }; + CompositionContainerShape _containerShape_11{ nullptr }; + CompositionContainerShape _containerShape_12{ nullptr }; + CompositionContainerShape _containerShape_13{ nullptr }; + CompositionContainerShape _containerShape_14{ nullptr }; + CompositionContainerShape _containerShape_15{ nullptr }; + CompositionContainerShape _containerShape_16{ nullptr }; + CompositionContainerShape _containerShape_17{ nullptr }; + CompositionContainerShape _containerShape_18{ nullptr }; + CompositionContainerShape _containerShape_19{ nullptr }; + CompositionContainerShape _containerShape_20{ nullptr }; + CompositionContainerShape _containerShape_21{ nullptr }; + CompositionContainerShape _containerShape_22{ nullptr }; + CompositionEllipseGeometry _ellipse_0_0{ nullptr }; + CompositionEllipseGeometry _ellipse_0_1{ nullptr }; + CompositionEllipseGeometry _ellipse_4p7{ nullptr }; + CompositionPath _path_0{ nullptr }; + CompositionPath _path_1{ nullptr }; + CompositionPath _path_2{ nullptr }; + CompositionPath _path_3{ nullptr }; + CompositionPath _path_4{ nullptr }; + CompositionPath _path_5{ nullptr }; + CompositionPath _path_6{ nullptr }; + CompositionPath _path_7{ nullptr }; + CompositionPath _path_8{ nullptr }; + CompositionPathGeometry _pathGeometry_00{ nullptr }; + CompositionPathGeometry _pathGeometry_01{ nullptr }; + CompositionPathGeometry _pathGeometry_02{ nullptr }; + CompositionPathGeometry _pathGeometry_03{ nullptr }; + CompositionPathGeometry _pathGeometry_04{ nullptr }; + CompositionPathGeometry _pathGeometry_05{ nullptr }; + CompositionPathGeometry _pathGeometry_06{ nullptr }; + CompositionPathGeometry _pathGeometry_07{ nullptr }; + CompositionPathGeometry _pathGeometry_08{ nullptr }; + CompositionPathGeometry _pathGeometry_09{ nullptr }; + CompositionPathGeometry _pathGeometry_10{ nullptr }; + CompositionPathGeometry _pathGeometry_11{ nullptr }; + CompositionPathGeometry _pathGeometry_12{ nullptr }; + CompositionPathGeometry _pathGeometry_13{ nullptr }; + CompositionPathGeometry _pathGeometry_14{ nullptr }; + CompositionPathGeometry _pathGeometry_15{ nullptr }; + CompositionPathGeometry _pathGeometry_16{ nullptr }; + CompositionPathGeometry _pathGeometry_17{ nullptr }; + CompositionPathGeometry _pathGeometry_18{ nullptr }; + CompositionPathGeometry _pathGeometry_19{ nullptr }; + CompositionPathGeometry _pathGeometry_20{ nullptr }; + CompositionPathGeometry _pathGeometry_21{ nullptr }; + CompositionPathGeometry _pathGeometry_22{ nullptr }; + CompositionPathGeometry _pathGeometry_23{ nullptr }; + CompositionPathGeometry _pathGeometry_24{ nullptr }; + CompositionPathGeometry _pathGeometry_25{ nullptr }; + CompositionPathGeometry _pathGeometry_26{ nullptr }; + CompositionPathGeometry _pathGeometry_27{ nullptr }; + CompositionPathGeometry _pathGeometry_28{ nullptr }; + CompositionPathGeometry _pathGeometry_29{ nullptr }; + CompositionPathGeometry _pathGeometry_30{ nullptr }; + CompositionPathGeometry _pathGeometry_31{ nullptr }; + CompositionPathGeometry _pathGeometry_32{ nullptr }; + CompositionPathGeometry _pathGeometry_33{ nullptr }; + CompositionPathGeometry _pathGeometry_34{ nullptr }; + CompositionPathGeometry _pathGeometry_35{ nullptr }; + CompositionPathGeometry _pathGeometry_36{ nullptr }; + CompositionPathGeometry _pathGeometry_37{ nullptr }; + CompositionPathGeometry _pathGeometry_38{ nullptr }; + CompositionSpriteShape _spriteShape_11{ nullptr }; + CompositionSpriteShape _spriteShape_12{ nullptr }; + CompositionSpriteShape _spriteShape_13{ nullptr }; + CompositionSpriteShape _spriteShape_14{ nullptr }; + CompositionSpriteShape _spriteShape_15{ nullptr }; + CompositionSpriteShape _spriteShape_19{ nullptr }; + CompositionSpriteShape _spriteShape_22{ nullptr }; + CompositionSpriteShape _spriteShape_23{ nullptr }; + CompositionSpriteShape _spriteShape_36{ nullptr }; + CompositionSpriteShape _spriteShape_37{ nullptr }; + CompositionSpriteShape _spriteShape_38{ nullptr }; + ContainerVisual _root{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_0{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_1{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_2{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_3{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_4{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_5{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_6{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_7{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_8{ nullptr }; + ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_02{ nullptr }; + ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_03{ nullptr }; + ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_06{ nullptr }; + ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_11{ nullptr }; + ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_13{ nullptr }; + ScalarKeyFrameAnimation _tStartScalarAnimation_0_to_0p249{ nullptr }; + ScalarKeyFrameAnimation _tStartScalarAnimation_0p87_to_0_02{ nullptr }; + StepEasingFunction _holdThenStepEasingFunction{ nullptr }; + StepEasingFunction _stepThenHoldEasingFunction{ nullptr }; + Vector2KeyFrameAnimation _offsetVector2Animation_02{ nullptr }; + Vector2KeyFrameAnimation _offsetVector2Animation_03{ nullptr }; + Vector2KeyFrameAnimation _offsetVector2Animation_04{ nullptr }; + Vector2KeyFrameAnimation _offsetVector2Animation_05{ nullptr }; + Vector2KeyFrameAnimation _offsetVector2Animation_06{ nullptr }; + Vector2KeyFrameAnimation _radiusVector2Animation{ nullptr }; + Vector2KeyFrameAnimation _shapeVisibilityAnimation_04{ nullptr }; + + void BindProperty( + CompositionObject target, + winrt::hstring animatedPropertyName, + winrt::hstring expression, + winrt::hstring referenceParameterName, + CompositionObject referencedObject) + { + _reusableExpressionAnimation.ClearAllParameters(); + _reusableExpressionAnimation.Expression(expression); + _reusableExpressionAnimation.SetReferenceParameter(referenceParameterName, referencedObject); + target.StartAnimation(animatedPropertyName, _reusableExpressionAnimation); + } + + ScalarKeyFrameAnimation CreateScalarKeyFrameAnimation(float initialProgress, float initialValue, CompositionEasingFunction initialEasingFunction) + { + const auto result = _c.CreateScalarKeyFrameAnimation(); + result.Duration(TimeSpan{ c_durationTicks }); + result.InsertKeyFrame(initialProgress, initialValue, initialEasingFunction); + return result; + } + + Vector2KeyFrameAnimation CreateVector2KeyFrameAnimation(float initialProgress, float2 initialValue, CompositionEasingFunction initialEasingFunction) + { + const auto result = _c.CreateVector2KeyFrameAnimation(); + result.Duration(TimeSpan{ c_durationTicks }); + result.InsertKeyFrame(initialProgress, initialValue, initialEasingFunction); + return result; + } + + CompositionSpriteShape CreateSpriteShape(CompositionGeometry geometry, float3x2 transformMatrix) + { + const auto result = _c.CreateSpriteShape(geometry); + result.TransformMatrix(transformMatrix); + return result; + } + + CompositionSpriteShape CreateSpriteShape(CompositionGeometry geometry, float3x2 transformMatrix, CompositionBrush fillBrush) + { + const auto result = _c.CreateSpriteShape(geometry); + result.TransformMatrix(transformMatrix); + result.FillBrush(fillBrush); + return result; + } + + AnimationController AnimationController_0() + { + if (_animationController_0 != nullptr) { return _animationController_0; } + const auto result = _animationController_0 = _c.CreateAnimationController(); + result.Pause(); + BindProperty(_animationController_0, L"Progress", L"_.Progress", L"_", _root); + return result; + } + + // - Layer aggregator + // Layer: Dot1 + AnimationController AnimationController_1() + { + if (_animationController_1 != nullptr) { return _animationController_1; } + const auto result = _animationController_1 = _c.CreateAnimationController(); + result.Pause(); + BindProperty(_animationController_1, L"Progress", L"_.Progress*0.9835165+0.01648352", L"_", _root); + return result; + } + + winrt::com_ptr Geometry_00() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -13.6639996F, -0.144999996F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 75.663002F, 0.289999992F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_01() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 0.859000027F, -21.1429996F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ -4.35900021F, 70.3919983F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_02() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -26.6700001F, -0.282999992F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 99.1709976F, 0.0659999996F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_03() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -13.6639996F, -0.144999996F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 62.1629982F, 0.289999992F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_04() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -30.7199993F, 63.7610016F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddBezier({ { -30.6889992F, 63.1669998F }, { -30.7889996F, 50.8470001F }, { -30.7409992F, 45.1920013F } }); + sink->AddBezier({ { -30.6650009F, 36.2140007F }, { -37.3429985F, 27.0739994F }, { -37.3969994F, 27.0139999F } }); + sink->AddBezier({ { -38.5579987F, 25.7140007F }, { -39.7519989F, 24.1469994F }, { -40.6980019F, 22.6609993F } }); + sink->AddBezier({ { -46.637001F, 13.3339996F }, { -47.8400002F, 0.933000028F }, { -37.8730011F, -7.1170001F } }); + sink->AddBezier({ { -13.1960001F, -27.0459995F }, { 8.96000004F, 11.559F }, { 49.5060005F, 11.559F } }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_05() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 246.649994F, 213.813995F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 340.955994F, 213.628006F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_06() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 1.68099999F, -29.9920006F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ -1.68099999F, 29.9920006F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_07() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 1.76800001F, -25.9659996F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ -1.76800001F, 25.9659996F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_08() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -8.83699989F, -58.2290001F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddBezier({ { -8.83699989F, -58.2290001F }, { -10.1630001F, 29.4950008F }, { -35.8339996F, 33.6619987F } }); + sink->AddBezier({ { -44.0579987F, 34.9970016F }, { -50.2319984F, 30.0499992F }, { -51.6879997F, 23.1480007F } }); + sink->AddBezier({ { -53.144001F, 16.2450008F }, { -49.6549988F, 9.15600014F }, { -41.1739998F, 7.29300022F } }); + sink->AddBezier({ { -17.3570004F, 2.05999994F }, { 4.23500013F, 57.1879997F }, { 51.7970009F, 44.1780014F } }); + sink->AddBezier({ { 51.9570007F, 44.1339989F }, { 52.6870003F, 43.8740005F }, { 53.1879997F, 43.7410011F } }); + sink->AddBezier({ { 53.6889992F, 43.6080017F }, { 68.9710007F, 41.3569984F }, { 140.393997F, 43.6720009F } }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_09() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -67.125F, -112.0F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddBezier({ { -67.125F, -112.0F }, { -73.5579987F, -100.719002F }, { -75.4580002F, -89.9509964F } }); + sink->AddBezier({ { -78.625F, -72.0F }, { -79.375F, -58.25F }, { -80.375F, -39.25F } }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_10() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -67.25F, -105.5F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddBezier({ { -67.25F, -105.5F }, { -70.4329987F, -94.9690018F }, { -72.3330002F, -84.2009964F } }); + sink->AddBezier({ { -75.5F, -66.25F }, { -75.5F, -56.75F }, { -76.5F, -37.75F } }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_11() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 34.5F, -13.0500002F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddBezier({ { 7.5F, -14.5F }, { -4.0F, -37.0F }, { -35.0460014F, -35.5789986F } }); + sink->AddBezier({ { -61.4720001F, -34.3689995F }, { -62.25F, -5.75F }, { -62.25F, -5.75F } }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_12() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -3.0F, 35.9500008F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddBezier({ { -3.0F, 35.9500008F }, { -1.5F, 7.5F }, { -1.352F, -6.75600004F } }); + sink->AddBezier({ { -9.90299988F, -15.0190001F }, { -21.5699997F, -20.5790005F }, { -32.0460014F, -20.5790005F } }); + sink->AddBezier({ { -53.5F, -20.5790005F }, { -42.25F, 4.25F }, { -42.25F, 4.25F } }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_13() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 16.2310009F, 39.0730019F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ -32.769001F, 57.3650017F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_14() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 7.44999981F, 21.9500008F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ -32.75F, 55.75F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_15() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -94.5F, 37.0730019F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ -48.769001F, 55.3650017F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_16() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -87.5F, 20.9500008F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ -48.75F, 54.75F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_17() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 166.731003F, -7.92700005F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 136.731003F, 7.11499977F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_18() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 156.449997F, -23.0499992F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 132.0F, 2.75F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_19() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 169.5F, 18.073F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 137.481003F, 11.3649998F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_20() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 119.5F, -45.0499992F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 82.75F, -44.75F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_21() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 119.25F, -20.0499992F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 63.5F, -20.5F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_22() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 128.0F, 3.6500001F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 78.25F, 3.5F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_23() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 149.623993F, 8.24400043F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 136.647995F, 10.1560001F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_24() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 144.429001F, -5.39699984F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 132.274994F, 4.73099995F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_25() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 145.677002F, 22.2199993F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 134.921997F, 14.7489996F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_26() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 147.699005F, 13.0249996F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 133.195007F, 13.21F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_27() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 142.182999F, -5.11199999F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 130.029007F, 5.01599979F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_28() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 142.037994F, 29.2779999F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 131.281998F, 21.8069992F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + // - Layer aggregator + // Offset:<187.5, 333.5> + CompositionColorBrush ColorBrush_AlmostDarkTurquoise_FF00D1C1() + { + return _c.CreateColorBrush({ 0xFF, 0x00, 0xD1, 0xC1 }); + } + + CompositionColorBrush ColorBrush_AlmostTeal_FF007A87() + { + return (_colorBrush_AlmostTeal_FF007A87 == nullptr) + ? _colorBrush_AlmostTeal_FF007A87 = _c.CreateColorBrush({ 0xFF, 0x00, 0x7A, 0x87 }) + : _colorBrush_AlmostTeal_FF007A87; + } + + CompositionColorBrush ColorBrush_White() + { + return (_colorBrush_White == nullptr) + ? _colorBrush_White = _c.CreateColorBrush({ 0xFF, 0xFF, 0xFF, 0xFF }) + : _colorBrush_White; + } + + // Layer aggregator + // Transforms for Bncr + CompositionContainerShape ContainerShape_00() + { + if (_containerShape_00 != nullptr) { return _containerShape_00; } + const auto result = _containerShape_00 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // Transforms: Dot-Y + result.Shapes().Append(ContainerShape_01()); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + // Transforms for Dot-Y + CompositionContainerShape ContainerShape_01() + { + if (_containerShape_01 != nullptr) { return _containerShape_01; } + const auto result = _containerShape_01 = _c.CreateContainerShape(); + // ShapeGroup: Ellipse 1 Offset:<196, 267> + result.Shapes().Append(SpriteShape_01()); + return result; + } + + // Layer aggregator + // Transforms for E3-Y + CompositionContainerShape ContainerShape_02() + { + if (_containerShape_02 != nullptr) { return _containerShape_02; } + const auto result = _containerShape_02 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // ShapeGroup: Group 1 Offset:<344.674, 261.877> + result.Shapes().Append(SpriteShape_02()); + return result; + } + + // Layer aggregator + // Transforms for E3-Y + CompositionContainerShape ContainerShape_03() + { + if (_containerShape_03 != nullptr) { return _containerShape_03; } + const auto result = _containerShape_03 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // Transforms: E3-B Offset:<0.06500244, 0> + result.Shapes().Append(SpriteShape_03()); + return result; + } + + // Layer aggregator + // Transforms for I-Y + CompositionContainerShape ContainerShape_04() + { + if (_containerShape_04 != nullptr) { return _containerShape_04; } + const auto result = _containerShape_04 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // ShapeGroup: Group 6 Offset:<304.135, 282.409> + result.Shapes().Append(SpriteShape_04()); + return result; + } + + // Layer aggregator + // Transforms for I-Y + CompositionContainerShape ContainerShape_05() + { + if (_containerShape_05 != nullptr) { return _containerShape_05; } + const auto result = _containerShape_05 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // Transforms: I-B + result.Shapes().Append(SpriteShape_05()); + return result; + } + + // Layer aggregator + // Transforms for E2-Y + CompositionContainerShape ContainerShape_06() + { + if (_containerShape_06 != nullptr) { return _containerShape_06; } + const auto result = _containerShape_06 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // ShapeGroup: Group 3 Offset:<331.664, 238.14> + result.Shapes().Append(SpriteShape_06()); + return result; + } + + // Layer aggregator + // Transforms for E2-Y + CompositionContainerShape ContainerShape_07() + { + if (_containerShape_07 != nullptr) { return _containerShape_07; } + const auto result = _containerShape_07 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // Transforms: E2-B + result.Shapes().Append(SpriteShape_07()); + return result; + } + + // Layer aggregator + // Transforms for E1-Y + CompositionContainerShape ContainerShape_08() + { + if (_containerShape_08 != nullptr) { return _containerShape_08; } + const auto result = _containerShape_08 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // ShapeGroup: Group 2 Offset:<344.672, 214.842> + result.Shapes().Append(SpriteShape_08()); + return result; + } + + // Layer aggregator + // Transforms for E1-Y + CompositionContainerShape ContainerShape_09() + { + if (_containerShape_09 != nullptr) { return _containerShape_09; } + const auto result = _containerShape_09 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // Transforms: E1-B + result.Shapes().Append(SpriteShape_09()); + return result; + } + + // Layer aggregator + // Transforms for T1a-Y + CompositionContainerShape ContainerShape_10() + { + if (_containerShape_10 != nullptr) { return _containerShape_10; } + const auto result = _containerShape_10 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // ShapeGroup: Group 9 Offset:<227.677, 234.375> + result.Shapes().Append(SpriteShape_10()); + return result; + } + + // Layer aggregator + // Transforms for O-Y + CompositionContainerShape ContainerShape_11() + { + if (_containerShape_11 != nullptr) { return _containerShape_11; } + const auto result = _containerShape_11 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + const auto shapes = result.Shapes(); + // ShapeGroup: Ellipse 1 Offset:<196, 267> + shapes.Append(SpriteShape_16()); + // ShapeGroup: Ellipse 1 Offset:<196, 267> + shapes.Append(SpriteShape_17()); + return result; + } + + // Layer aggregator + // Transforms for T1a-Y 2 + CompositionContainerShape ContainerShape_12() + { + if (_containerShape_12 != nullptr) { return _containerShape_12; } + const auto result = _containerShape_12 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // ShapeGroup: Group 9 Offset:<227.677, 234.375> + result.Shapes().Append(SpriteShape_18()); + return result; + } + + // Layer aggregator + // Transforms for T1a-Y + CompositionContainerShape ContainerShape_13() + { + if (_containerShape_13 != nullptr) { return _containerShape_13; } + const auto result = _containerShape_13 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // Transforms: T1a-B + result.Shapes().Append(SpriteShape_20()); + return result; + } + + // Layer aggregator + // Transforms for N + CompositionContainerShape ContainerShape_14() + { + if (_containerShape_14 != nullptr) { return _containerShape_14; } + const auto result = _containerShape_14 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // Transforms: Dot-Y + result.Shapes().Append(ContainerShape_15()); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + // Transforms for Dot-Y + CompositionContainerShape ContainerShape_15() + { + if (_containerShape_15 != nullptr) { return _containerShape_15; } + const auto result = _containerShape_15 = _c.CreateContainerShape(); + // ShapeGroup: Ellipse 1 Offset:<196, 267> + result.Shapes().Append(SpriteShape_21()); + return result; + } + + // Layer aggregator + // Transforms for Dot1 + CompositionContainerShape ContainerShape_16() + { + if (_containerShape_16 != nullptr) { return _containerShape_16; } + const auto result = _containerShape_16 = _c.CreateContainerShape(); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // ShapeGroup: Ellipse 1 Offset:<196, 267> + result.Shapes().Append(SpriteShape_24()); + return result; + } + + // Layer aggregator + // Layer: S1-Y + CompositionContainerShape ContainerShape_17() + { + if (_containerShape_17 != nullptr) { return _containerShape_17; } + const auto result = _containerShape_17 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + const auto shapes = result.Shapes(); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_25()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_26()); + return result; + } + + // Layer aggregator + // Layer: S7 + CompositionContainerShape ContainerShape_18() + { + if (_containerShape_18 != nullptr) { return _containerShape_18; } + const auto result = _containerShape_18 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + const auto shapes = result.Shapes(); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_27()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_28()); + return result; + } + + // Layer aggregator + // Layer: S3-Y + CompositionContainerShape ContainerShape_19() + { + if (_containerShape_19 != nullptr) { return _containerShape_19; } + const auto result = _containerShape_19 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + const auto shapes = result.Shapes(); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_29()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_30()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_31()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_32()); + return result; + } + + // Layer aggregator + // Layer: S3-Y 2 + CompositionContainerShape ContainerShape_20() + { + if (_containerShape_20 != nullptr) { return _containerShape_20; } + const auto result = _containerShape_20 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + const auto shapes = result.Shapes(); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_33()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_34()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_35()); + return result; + } + + // Layer aggregator + // Layer: S3-Y 3 + CompositionContainerShape ContainerShape_21() + { + if (_containerShape_21 != nullptr) { return _containerShape_21; } + const auto result = _containerShape_21 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + const auto shapes = result.Shapes(); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_39()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_40()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_41()); + return result; + } + + // Layer aggregator + // Layer: S3-Y 4 + CompositionContainerShape ContainerShape_22() + { + if (_containerShape_22 != nullptr) { return _containerShape_22; } + const auto result = _containerShape_22 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + const auto shapes = result.Shapes(); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_42()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_43()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_44()); + return result; + } + + // - - Layer aggregator + // - Layer: O-Y + // ShapeGroup: Ellipse 1 Offset:<196, 267> + // Ellipse Path 1.EllipseGeometry + CompositionEllipseGeometry Ellipse_0_0() + { + if (_ellipse_0_0 != nullptr) { return _ellipse_0_0; } + const auto result = _ellipse_0_0 = _c.CreateEllipseGeometry(); + result.Center({ 0.800000012F, -0.5F }); + result.Radius({ 0.0F, 0.0F }); + return result; + } + + // - - Layer aggregator + // - Layer: O-Y + // ShapeGroup: Ellipse 1 Offset:<196, 267> + // Ellipse Path 1.EllipseGeometry + CompositionEllipseGeometry Ellipse_0_1() + { + if (_ellipse_0_1 != nullptr) { return _ellipse_0_1; } + const auto result = _ellipse_0_1 = _c.CreateEllipseGeometry(); + result.Center({ 0.800000012F, -0.5F }); + result.Radius({ 0.0F, 0.0F }); + return result; + } + + // - - - Layer aggregator + // - - Layer: Dot-Y + // - Transforms: Dot-Y + // ShapeGroup: Ellipse 1 Offset:<196, 267> + // Ellipse Path 1.EllipseGeometry + CompositionEllipseGeometry Ellipse_4p6() + { + const auto result = _c.CreateEllipseGeometry(); + result.Center({ 0.800000012F, -0.5F }); + result.Radius({ 4.5999999F, 4.5999999F }); + return result; + } + + // Ellipse Path 1.EllipseGeometry + CompositionEllipseGeometry Ellipse_4p7() + { + if (_ellipse_4p7 != nullptr) { return _ellipse_4p7; } + const auto result = _ellipse_4p7 = _c.CreateEllipseGeometry(); + result.Center({ 0.800000012F, -0.5F }); + result.Radius({ 4.69999981F, 4.69999981F }); + return result; + } + + CompositionPath Path_0() + { + if (_path_0 != nullptr) { return _path_0; } + const auto result = _path_0 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_00())); + return result; + } + + CompositionPath Path_1() + { + if (_path_1 != nullptr) { return _path_1; } + const auto result = _path_1 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_01())); + return result; + } + + CompositionPath Path_2() + { + if (_path_2 != nullptr) { return _path_2; } + const auto result = _path_2 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_02())); + return result; + } + + CompositionPath Path_3() + { + if (_path_3 != nullptr) { return _path_3; } + const auto result = _path_3 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_03())); + return result; + } + + CompositionPath Path_4() + { + if (_path_4 != nullptr) { return _path_4; } + const auto result = _path_4 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_04())); + return result; + } + + CompositionPath Path_5() + { + if (_path_5 != nullptr) { return _path_5; } + const auto result = _path_5 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_05())); + return result; + } + + CompositionPath Path_6() + { + if (_path_6 != nullptr) { return _path_6; } + const auto result = _path_6 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_06())); + return result; + } + + CompositionPath Path_7() + { + if (_path_7 != nullptr) { return _path_7; } + const auto result = _path_7 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_07())); + return result; + } + + CompositionPath Path_8() + { + if (_path_8 != nullptr) { return _path_8; } + const auto result = _path_8 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_08())); + return result; + } + + // - - Layer aggregator + // - Layer: E3-Y + // ShapeGroup: Group 1 Offset:<344.674, 261.877> + CompositionPathGeometry PathGeometry_00() + { + if (_pathGeometry_00 != nullptr) { return _pathGeometry_00; } + const auto result = _pathGeometry_00 = _c.CreatePathGeometry(Path_0()); + return result; + } + + // - - Layer aggregator + // - Layer: E3-B + // Transforms: E3-B Offset:<0.06500244, 0> + CompositionPathGeometry PathGeometry_01() + { + if (_pathGeometry_01 != nullptr) { return _pathGeometry_01; } + const auto result = _pathGeometry_01 = _c.CreatePathGeometry(Path_0()); + return result; + } + + // - - Layer aggregator + // - Layer: I-Y + // ShapeGroup: Group 6 Offset:<304.135, 282.409> + CompositionPathGeometry PathGeometry_02() + { + if (_pathGeometry_02 != nullptr) { return _pathGeometry_02; } + const auto result = _pathGeometry_02 = _c.CreatePathGeometry(Path_1()); + return result; + } + + // - - Layer aggregator + // - Layer: I-B + // Transforms: I-B + CompositionPathGeometry PathGeometry_03() + { + if (_pathGeometry_03 != nullptr) { return _pathGeometry_03; } + const auto result = _pathGeometry_03 = _c.CreatePathGeometry(Path_1()); + return result; + } + + // - - Layer aggregator + // - Layer: E2-Y + // ShapeGroup: Group 3 Offset:<331.664, 238.14> + CompositionPathGeometry PathGeometry_04() + { + if (_pathGeometry_04 != nullptr) { return _pathGeometry_04; } + const auto result = _pathGeometry_04 = _c.CreatePathGeometry(Path_2()); + return result; + } + + // - - Layer aggregator + // - Layer: E2-B + // Transforms: E2-B + CompositionPathGeometry PathGeometry_05() + { + if (_pathGeometry_05 != nullptr) { return _pathGeometry_05; } + const auto result = _pathGeometry_05 = _c.CreatePathGeometry(Path_2()); + return result; + } + + // - - Layer aggregator + // - Layer: E1-Y + // ShapeGroup: Group 2 Offset:<344.672, 214.842> + CompositionPathGeometry PathGeometry_06() + { + if (_pathGeometry_06 != nullptr) { return _pathGeometry_06; } + const auto result = _pathGeometry_06 = _c.CreatePathGeometry(Path_3()); + return result; + } + + // - - Layer aggregator + // - Layer: E1-B + // Transforms: E1-B + CompositionPathGeometry PathGeometry_07() + { + if (_pathGeometry_07 != nullptr) { return _pathGeometry_07; } + const auto result = _pathGeometry_07 = _c.CreatePathGeometry(Path_3()); + return result; + } + + CompositionPathGeometry PathGeometry_08() + { + if (_pathGeometry_08 != nullptr) { return _pathGeometry_08; } + const auto result = _pathGeometry_08 = _c.CreatePathGeometry(Path_4()); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 0.0F); + propertySet.InsertScalar(L"TStart", 0.0F); + BindProperty(_pathGeometry_08, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_08); + BindProperty(_pathGeometry_08, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_08); + return result; + } + + // - Layer aggregator + // Layer: T2b-Y + CompositionPathGeometry PathGeometry_09() + { + if (_pathGeometry_09 != nullptr) { return _pathGeometry_09; } + const auto result = _pathGeometry_09 = _c.CreatePathGeometry(Path_5()); + return result; + } + + // - Layer aggregator + // Layer: T2a-Y + CompositionPathGeometry PathGeometry_10() + { + if (_pathGeometry_10 != nullptr) { return _pathGeometry_10; } + const auto result = _pathGeometry_10 = _c.CreatePathGeometry(Path_6()); + return result; + } + + // - Layer aggregator + // Layer: T2b-B + CompositionPathGeometry PathGeometry_11() + { + if (_pathGeometry_11 != nullptr) { return _pathGeometry_11; } + const auto result = _pathGeometry_11 = _c.CreatePathGeometry(Path_5()); + return result; + } + + // - Layer aggregator + // Layer: T1b-Y + CompositionPathGeometry PathGeometry_12() + { + if (_pathGeometry_12 != nullptr) { return _pathGeometry_12; } + const auto result = _pathGeometry_12 = _c.CreatePathGeometry(Path_7()); + return result; + } + + // - Layer aggregator + // Layer: T1b-B + CompositionPathGeometry PathGeometry_13() + { + if (_pathGeometry_13 != nullptr) { return _pathGeometry_13; } + const auto result = _pathGeometry_13 = _c.CreatePathGeometry(Path_7()); + return result; + } + + CompositionPathGeometry PathGeometry_14() + { + if (_pathGeometry_14 != nullptr) { return _pathGeometry_14; } + const auto result = _pathGeometry_14 = _c.CreatePathGeometry(Path_4()); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 0.0F); + propertySet.InsertScalar(L"TStart", 0.0F); + BindProperty(_pathGeometry_14, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_14); + BindProperty(_pathGeometry_14, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_14); + return result; + } + + // - Layer aggregator + // Layer: T2a-B + CompositionPathGeometry PathGeometry_15() + { + if (_pathGeometry_15 != nullptr) { return _pathGeometry_15; } + const auto result = _pathGeometry_15 = _c.CreatePathGeometry(Path_6()); + return result; + } + + // - - Layer aggregator + // - Layer: T1a-B + // Transforms: T1a-B + CompositionPathGeometry PathGeometry_16() + { + if (_pathGeometry_16 != nullptr) { return _pathGeometry_16; } + const auto result = _pathGeometry_16 = _c.CreatePathGeometry(Path_4()); + result.TrimStart(0.248999998F); + return result; + } + + CompositionPathGeometry PathGeometry_17() + { + if (_pathGeometry_17 != nullptr) { return _pathGeometry_17; } + const auto result = _pathGeometry_17 = _c.CreatePathGeometry(Path_8()); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 0.810000002F); + propertySet.InsertScalar(L"TStart", 0.800000012F); + BindProperty(_pathGeometry_17, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_17); + BindProperty(_pathGeometry_17, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_17); + return result; + } + + CompositionPathGeometry PathGeometry_18() + { + if (_pathGeometry_18 != nullptr) { return _pathGeometry_18; } + const auto result = _pathGeometry_18 = _c.CreatePathGeometry(Path_8()); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 0.810000002F); + propertySet.InsertScalar(L"TStart", 0.800000012F); + BindProperty(_pathGeometry_18, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_18); + BindProperty(_pathGeometry_18, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_18); + return result; + } + + CompositionPathGeometry PathGeometry_19() + { + if (_pathGeometry_19 != nullptr) { return _pathGeometry_19; } + const auto result = _pathGeometry_19 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_09()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_19, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_19); + BindProperty(_pathGeometry_19, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_19); + return result; + } + + CompositionPathGeometry PathGeometry_20() + { + if (_pathGeometry_20 != nullptr) { return _pathGeometry_20; } + const auto result = _pathGeometry_20 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_10()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_20, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_20); + BindProperty(_pathGeometry_20, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_20); + return result; + } + + CompositionPathGeometry PathGeometry_21() + { + if (_pathGeometry_21 != nullptr) { return _pathGeometry_21; } + const auto result = _pathGeometry_21 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_11()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_21, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_21); + BindProperty(_pathGeometry_21, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_21); + return result; + } + + CompositionPathGeometry PathGeometry_22() + { + if (_pathGeometry_22 != nullptr) { return _pathGeometry_22; } + const auto result = _pathGeometry_22 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_12()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_22, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_22); + BindProperty(_pathGeometry_22, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_22); + return result; + } + + CompositionPathGeometry PathGeometry_23() + { + if (_pathGeometry_23 != nullptr) { return _pathGeometry_23; } + const auto result = _pathGeometry_23 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_13()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_23, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_23); + BindProperty(_pathGeometry_23, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_23); + return result; + } + + CompositionPathGeometry PathGeometry_24() + { + if (_pathGeometry_24 != nullptr) { return _pathGeometry_24; } + const auto result = _pathGeometry_24 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_14()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_24, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_24); + BindProperty(_pathGeometry_24, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_24); + return result; + } + + CompositionPathGeometry PathGeometry_25() + { + if (_pathGeometry_25 != nullptr) { return _pathGeometry_25; } + const auto result = _pathGeometry_25 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_15()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_25, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_25); + BindProperty(_pathGeometry_25, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_25); + return result; + } + + CompositionPathGeometry PathGeometry_26() + { + if (_pathGeometry_26 != nullptr) { return _pathGeometry_26; } + const auto result = _pathGeometry_26 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_16()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_26, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_26); + BindProperty(_pathGeometry_26, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_26); + return result; + } + + CompositionPathGeometry PathGeometry_27() + { + if (_pathGeometry_27 != nullptr) { return _pathGeometry_27; } + const auto result = _pathGeometry_27 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_17()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_27, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_27); + BindProperty(_pathGeometry_27, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_27); + return result; + } + + CompositionPathGeometry PathGeometry_28() + { + if (_pathGeometry_28 != nullptr) { return _pathGeometry_28; } + const auto result = _pathGeometry_28 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_18()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_28, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_28); + BindProperty(_pathGeometry_28, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_28); + return result; + } + + CompositionPathGeometry PathGeometry_29() + { + if (_pathGeometry_29 != nullptr) { return _pathGeometry_29; } + const auto result = _pathGeometry_29 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_19()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_29, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_29); + BindProperty(_pathGeometry_29, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_29); + return result; + } + + CompositionPathGeometry PathGeometry_30() + { + if (_pathGeometry_30 != nullptr) { return _pathGeometry_30; } + const auto result = _pathGeometry_30 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_20()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_30, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_30); + BindProperty(_pathGeometry_30, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_30); + return result; + } + + CompositionPathGeometry PathGeometry_31() + { + if (_pathGeometry_31 != nullptr) { return _pathGeometry_31; } + const auto result = _pathGeometry_31 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_21()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_31, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_31); + BindProperty(_pathGeometry_31, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_31); + return result; + } + + CompositionPathGeometry PathGeometry_32() + { + if (_pathGeometry_32 != nullptr) { return _pathGeometry_32; } + const auto result = _pathGeometry_32 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_22()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_32, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_32); + BindProperty(_pathGeometry_32, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_32); + return result; + } + + CompositionPathGeometry PathGeometry_33() + { + if (_pathGeometry_33 != nullptr) { return _pathGeometry_33; } + const auto result = _pathGeometry_33 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_23()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_33, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_33); + BindProperty(_pathGeometry_33, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_33); + return result; + } + + CompositionPathGeometry PathGeometry_34() + { + if (_pathGeometry_34 != nullptr) { return _pathGeometry_34; } + const auto result = _pathGeometry_34 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_24()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_34, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_34); + BindProperty(_pathGeometry_34, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_34); + return result; + } + + CompositionPathGeometry PathGeometry_35() + { + if (_pathGeometry_35 != nullptr) { return _pathGeometry_35; } + const auto result = _pathGeometry_35 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_25()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_35, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_35); + BindProperty(_pathGeometry_35, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_35); + return result; + } + + CompositionPathGeometry PathGeometry_36() + { + if (_pathGeometry_36 != nullptr) { return _pathGeometry_36; } + const auto result = _pathGeometry_36 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_26()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_36, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_36); + BindProperty(_pathGeometry_36, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_36); + return result; + } + + CompositionPathGeometry PathGeometry_37() + { + if (_pathGeometry_37 != nullptr) { return _pathGeometry_37; } + const auto result = _pathGeometry_37 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_27()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_37, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_37); + BindProperty(_pathGeometry_37, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_37); + return result; + } + + CompositionPathGeometry PathGeometry_38() + { + if (_pathGeometry_38 != nullptr) { return _pathGeometry_38; } + const auto result = _pathGeometry_38 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_28()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_38, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_38); + BindProperty(_pathGeometry_38, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_38); + return result; + } + + // - Layer aggregator + // Offset:<187.5, 333.5> + // Rectangle Path 1.RectangleGeometry + CompositionRectangleGeometry Rectangle_375x667() + { + const auto result = _c.CreateRectangleGeometry(); + result.Offset({ -187.5F, -333.5F }); + result.Size({ 375.0F, 667.0F }); + return result; + } + + // Layer aggregator + // Rectangle Path 1 + CompositionSpriteShape SpriteShape_00() + { + // Offset:<187.5, 333.5> + const auto geometry = Rectangle_375x667(); + const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 187.5F, 333.5F }, ColorBrush_AlmostDarkTurquoise_FF00D1C1());; + return result; + } + + // - - Layer aggregator + // - Layer: Dot-Y + // Transforms: Dot-Y + // Ellipse Path 1 + CompositionSpriteShape SpriteShape_01() + { + // Offset:<196, 267> + const auto geometry = Ellipse_4p6(); + const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F }, ColorBrush_White());; + return result; + } + + // - Layer aggregator + // Layer: E3-Y + // Path 1 + CompositionSpriteShape SpriteShape_02() + { + // Offset:<344.674, 261.877> + const auto result = CreateSpriteShape(PathGeometry_00(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.674011F, 261.877014F });; + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.56200027F); + return result; + } + + // - Layer aggregator + // Layer: E3-B + // Path 1 + CompositionSpriteShape SpriteShape_03() + { + // Offset:<344.739, 261.877> + const auto result = CreateSpriteShape(PathGeometry_01(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.739014F, 261.877014F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.56200027F); + return result; + } + + // - Layer aggregator + // Layer: I-Y + // Path 1 + CompositionSpriteShape SpriteShape_04() + { + // Offset:<304.135, 282.409> + const auto result = CreateSpriteShape(PathGeometry_02(), { 1.0F, 0.0F, 0.0F, 1.0F, 304.13501F, 282.408997F });; + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Square); + result.StrokeStartCap(CompositionStrokeCap::Square); + result.StrokeEndCap(CompositionStrokeCap::Square); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(8.39999962F); + return result; + } + + // - Layer aggregator + // Layer: I-B + // Path 1 + CompositionSpriteShape SpriteShape_05() + { + // Offset:<304.135, 282.409> + const auto result = CreateSpriteShape(PathGeometry_03(), { 1.0F, 0.0F, 0.0F, 1.0F, 304.13501F, 282.408997F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Square); + result.StrokeStartCap(CompositionStrokeCap::Square); + result.StrokeEndCap(CompositionStrokeCap::Square); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // - Layer aggregator + // Layer: E2-Y + // Path 1 + CompositionSpriteShape SpriteShape_06() + { + // Offset:<331.664, 238.14> + const auto result = CreateSpriteShape(PathGeometry_04(), { 1.0F, 0.0F, 0.0F, 1.0F, 331.664001F, 238.139999F });; + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(8.39999962F); + return result; + } + + // - Layer aggregator + // Layer: E2-B + // Path 1 + CompositionSpriteShape SpriteShape_07() + { + // Offset:<331.664, 238.14> + const auto result = CreateSpriteShape(PathGeometry_05(), { 1.0F, 0.0F, 0.0F, 1.0F, 331.664001F, 238.139999F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.56200027F); + return result; + } + + // - Layer aggregator + // Layer: E1-Y + // Path 1 + CompositionSpriteShape SpriteShape_08() + { + // Offset:<344.672, 214.842> + const auto result = CreateSpriteShape(PathGeometry_06(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.671997F, 214.841995F });; + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(8.39999962F); + return result; + } + + // - Layer aggregator + // Layer: E1-B + // Path 1 + CompositionSpriteShape SpriteShape_09() + { + // Offset:<344.672, 214.842> + const auto result = CreateSpriteShape(PathGeometry_07(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.671997F, 214.841995F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.56200027F); + return result; + } + + // - Layer aggregator + // Layer: T1a-Y + // Path 1 + CompositionSpriteShape SpriteShape_10() + { + // Offset:<227.677, 234.375> + const auto result = CreateSpriteShape(PathGeometry_08(), { 1.0F, 0.0F, 0.0F, 1.0F, 227.677002F, 234.375F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(8.39999962F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_11() + { + // Offset:<-56.5, 83.5> + if (_spriteShape_11 != nullptr) { return _spriteShape_11; } + const auto result = _spriteShape_11 = CreateSpriteShape(PathGeometry_09(), { 1.0F, 0.0F, 0.0F, 1.0F, -56.5F, 83.5F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_12() + { + // Offset:<221.198, 330.758> + if (_spriteShape_12 != nullptr) { return _spriteShape_12; } + const auto result = _spriteShape_12 = CreateSpriteShape(PathGeometry_10(), { 1.0F, 0.0F, 0.0F, 1.0F, 221.197998F, 330.757996F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Square); + result.StrokeStartCap(CompositionStrokeCap::Square); + result.StrokeEndCap(CompositionStrokeCap::Square); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_13() + { + // Offset:<-56.5, 83.5> + if (_spriteShape_13 != nullptr) { return _spriteShape_13; } + const auto result = _spriteShape_13 = CreateSpriteShape(PathGeometry_11(), { 1.0F, 0.0F, 0.0F, 1.0F, -56.5F, 83.5F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_14() + { + // Offset:<186.256, 349.081> + if (_spriteShape_14 != nullptr) { return _spriteShape_14; } + const auto result = _spriteShape_14 = CreateSpriteShape(PathGeometry_12(), { 1.0F, 0.0F, 0.0F, 1.0F, 186.255997F, 349.080994F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeLineJoin(CompositionStrokeLineJoin::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(8.39999962F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_15() + { + // Offset:<186.256, 349.081> + if (_spriteShape_15 != nullptr) { return _spriteShape_15; } + const auto result = _spriteShape_15 = CreateSpriteShape(PathGeometry_13(), { 1.0F, 0.0F, 0.0F, 1.0F, 186.255997F, 349.080994F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeLineJoin(CompositionStrokeLineJoin::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // - Layer aggregator + // Layer: O-Y + // Ellipse Path 1 + CompositionSpriteShape SpriteShape_16() + { + // Offset:<196, 267> + const auto result = CreateSpriteShape(Ellipse_0_0(), { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeThickness(8.80000019F); + return result; + } + + // - Layer aggregator + // Layer: O-Y + // Ellipse Path 1 + CompositionSpriteShape SpriteShape_17() + { + // Offset:<196, 267> + const auto result = CreateSpriteShape(Ellipse_0_1(), { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F });; + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeThickness(9.19400024F); + return result; + } + + // - Layer aggregator + // Layer: T1a-Y 2 + // Path 1 + CompositionSpriteShape SpriteShape_18() + { + // Offset:<227.677, 234.375> + const auto result = CreateSpriteShape(PathGeometry_14(), { 1.0F, 0.0F, 0.0F, 1.0F, 227.677002F, 234.375F });; + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(8.39999962F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_19() + { + // Offset:<221.198, 330.758> + if (_spriteShape_19 != nullptr) { return _spriteShape_19; } + const auto result = _spriteShape_19 = CreateSpriteShape(PathGeometry_15(), { 1.0F, 0.0F, 0.0F, 1.0F, 221.197998F, 330.757996F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Square); + result.StrokeStartCap(CompositionStrokeCap::Square); + result.StrokeEndCap(CompositionStrokeCap::Square); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // - Layer aggregator + // Layer: T1a-B + // Path 1 + CompositionSpriteShape SpriteShape_20() + { + // Offset:<227.677, 234.375> + const auto result = CreateSpriteShape(PathGeometry_16(), { 1.0F, 0.0F, 0.0F, 1.0F, 227.677002F, 234.375F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // - - Layer aggregator + // - Layer: Dot-Y + // Transforms: Dot-Y + // Ellipse Path 1 + CompositionSpriteShape SpriteShape_21() + { + // Offset:<196, 267> + const auto geometry = Ellipse_4p7(); + const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F }, ColorBrush_White());; + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_22() + { + // Offset:<109.52901, 354.143> + if (_spriteShape_22 != nullptr) { return _spriteShape_22; } + const auto result = _spriteShape_22 = CreateSpriteShape(PathGeometry_17(), { 1.0F, 0.0F, 0.0F, 1.0F, 109.529007F, 354.143005F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(8.39999962F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_23() + { + // Offset:<109.52901, 354.143> + if (_spriteShape_23 != nullptr) { return _spriteShape_23; } + const auto result = _spriteShape_23 = CreateSpriteShape(PathGeometry_18(), { 1.0F, 0.0F, 0.0F, 1.0F, 109.529007F, 354.143005F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // - Layer aggregator + // Layer: Dot1 + // Ellipse Path 1 + CompositionSpriteShape SpriteShape_24() + { + // Offset:<196, 267> + const auto geometry = Ellipse_4p7(); + const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F }, ColorBrush_White());; + return result; + } + + // - Layer aggregator + // Layer: S1-Y + // Path 1 + CompositionSpriteShape SpriteShape_25() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_19(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(1.5F); + return result; + } + + // - Layer aggregator + // Layer: S1-Y + // Path 1 + CompositionSpriteShape SpriteShape_26() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_20(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(1.5F); + return result; + } + + // - Layer aggregator + // Layer: S7 + // Path 1 + CompositionSpriteShape SpriteShape_27() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_21(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(1.5F); + return result; + } + + // - Layer aggregator + // Layer: S7 + // Path 1 + CompositionSpriteShape SpriteShape_28() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_22(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(1.5F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y + // Path 1 + CompositionSpriteShape SpriteShape_29() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_23(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y + // Path 1 + CompositionSpriteShape SpriteShape_30() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_24(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y + // Path 1 + CompositionSpriteShape SpriteShape_31() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_25(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y + // Path 1 + CompositionSpriteShape SpriteShape_32() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_26(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 2 + // Path 1 + CompositionSpriteShape SpriteShape_33() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_27(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 2 + // Path 1 + CompositionSpriteShape SpriteShape_34() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_28(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 2 + // Path 1 + CompositionSpriteShape SpriteShape_35() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_29(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_36() + { + // Offset:<179.5, 333.5> + if (_spriteShape_36 != nullptr) { return _spriteShape_36; } + const auto result = _spriteShape_36 = CreateSpriteShape(PathGeometry_30(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(1.5F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_37() + { + // Offset:<179.5, 333.5> + if (_spriteShape_37 != nullptr) { return _spriteShape_37; } + const auto result = _spriteShape_37 = CreateSpriteShape(PathGeometry_31(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(1.5F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_38() + { + // Offset:<179.5, 333.5> + if (_spriteShape_38 != nullptr) { return _spriteShape_38; } + const auto result = _spriteShape_38 = CreateSpriteShape(PathGeometry_32(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(1.5F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 3 + // Path 1 + CompositionSpriteShape SpriteShape_39() + { + // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees + const auto result = CreateSpriteShape(PathGeometry_33(), { -0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 3 + // Path 1 + CompositionSpriteShape SpriteShape_40() + { + // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees + const auto result = CreateSpriteShape(PathGeometry_34(), { -0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 3 + // Path 1 + CompositionSpriteShape SpriteShape_41() + { + // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees + const auto result = CreateSpriteShape(PathGeometry_35(), { -0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 4 + // Path 1 + CompositionSpriteShape SpriteShape_42() + { + // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, + // Scale:<0.99999994, 0.99999994> + const auto result = CreateSpriteShape(PathGeometry_36(), { 0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 4 + // Path 1 + CompositionSpriteShape SpriteShape_43() + { + // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, + // Scale:<0.99999994, 0.99999994> + const auto result = CreateSpriteShape(PathGeometry_37(), { 0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 4 + // Path 1 + CompositionSpriteShape SpriteShape_44() + { + // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, + // Scale:<0.99999994, 0.99999994> + const auto result = CreateSpriteShape(PathGeometry_38(), { 0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // The root of the composition. + ContainerVisual Root() + { + if (_root != nullptr) { return _root; } + const auto result = _root = _c.CreateContainerVisual(); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"Progress", 0.0F); + propertySet.InsertScalar(L"t0", 0.0F); + // Layer aggregator + result.Children().InsertAtTop(ShapeVisual_0()); + return result; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_0() + { + return (_cubicBezierEasingFunction_0 == nullptr) + ? _cubicBezierEasingFunction_0 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.180000007F, 1.0F }) + : _cubicBezierEasingFunction_0; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_1() + { + return (_cubicBezierEasingFunction_1 == nullptr) + ? _cubicBezierEasingFunction_1 = _c.CreateCubicBezierEasingFunction({ 0.819999993F, 0.0F }, { 0.833000004F, 0.833000004F }) + : _cubicBezierEasingFunction_1; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_2() + { + return (_cubicBezierEasingFunction_2 == nullptr) + ? _cubicBezierEasingFunction_2 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.833000004F, 0.833000004F }) + : _cubicBezierEasingFunction_2; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_3() + { + return (_cubicBezierEasingFunction_3 == nullptr) + ? _cubicBezierEasingFunction_3 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.666999996F, 1.0F }) + : _cubicBezierEasingFunction_3; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_4() + { + return (_cubicBezierEasingFunction_4 == nullptr) + ? _cubicBezierEasingFunction_4 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.119999997F, 1.0F }) + : _cubicBezierEasingFunction_4; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_5() + { + return (_cubicBezierEasingFunction_5 == nullptr) + ? _cubicBezierEasingFunction_5 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.0F }, { 0.119999997F, 1.0F }) + : _cubicBezierEasingFunction_5; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_6() + { + return (_cubicBezierEasingFunction_6 == nullptr) + ? _cubicBezierEasingFunction_6 = _c.CreateCubicBezierEasingFunction({ 0.300999999F, 0.0F }, { 0.666999996F, 1.0F }) + : _cubicBezierEasingFunction_6; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_7() + { + return (_cubicBezierEasingFunction_7 == nullptr) + ? _cubicBezierEasingFunction_7 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.0599999987F, 1.0F }) + : _cubicBezierEasingFunction_7; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_8() + { + return (_cubicBezierEasingFunction_8 == nullptr) + ? _cubicBezierEasingFunction_8 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.337000012F, 1.0F }) + : _cubicBezierEasingFunction_8; + } + + ScalarKeyFrameAnimation t0ScalarAnimation_0_to_1() + { + // Frame 35.26. + const auto result = CreateScalarKeyFrameAnimation(0.196966499F, 0.0F, StepThenHoldEasingFunction()); + result.SetReferenceParameter(L"_", _root); + // Frame 44. + result.InsertKeyFrame(0.245810047F, 1.0F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.197999999F }, { 0.638000011F, 1.0F })); + // Frame 44. + result.InsertKeyFrame(0.245810062F, 0.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675946F, 1.0F, _c.CreateCubicBezierEasingFunction({ 0.523000002F, 0.0F }, { 0.795000017F, 1.0F })); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_0_to_1_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); + // Frame 74. + result.InsertKeyFrame(0.413407832F, 1.0F, CubicBezierEasingFunction_6()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_0_to_1_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 1.0F, CubicBezierEasingFunction_6()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_0p81_to_0p734_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.810000002F, StepThenHoldEasingFunction()); + // Frame 16. + result.InsertKeyFrame(0.0893854722F, 0.810000002F, HoldThenStepEasingFunction()); + // Frame 27. + result.InsertKeyFrame(0.150837988F, 0.734000027F, CubicBezierEasingFunction_8()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_0p81_to_0p734_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.810000002F, StepThenHoldEasingFunction()); + // Frame 18. + result.InsertKeyFrame(0.100558661F, 0.810000002F, HoldThenStepEasingFunction()); + // Frame 29. + result.InsertKeyFrame(0.162011176F, 0.734000027F, CubicBezierEasingFunction_8()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_00() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 29. + result.InsertKeyFrame(0.162011176F, 1.0F, HoldThenStepEasingFunction()); + // Frame 33. + result.InsertKeyFrame(0.184357539F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 36. + result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_01() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 29. + result.InsertKeyFrame(0.162011176F, 1.0F, HoldThenStepEasingFunction()); + // Frame 33. + result.InsertKeyFrame(0.184357539F, 0.690559983F, CubicBezierEasingFunction_2()); + // Frame 36. + result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_02() + { + // Frame 0. + if (_tEndScalarAnimation_1_to_0_02 != nullptr) { return _tEndScalarAnimation_1_to_0_02; } + const auto result = _tEndScalarAnimation_1_to_0_02 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 65. + result.InsertKeyFrame(0.363128483F, 1.0F, HoldThenStepEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_03() + { + // Frame 0. + if (_tEndScalarAnimation_1_to_0_03 != nullptr) { return _tEndScalarAnimation_1_to_0_03; } + const auto result = _tEndScalarAnimation_1_to_0_03 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_04() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.758560002F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_05() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.704559982F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_06() + { + // Frame 0. + if (_tEndScalarAnimation_1_to_0_06 != nullptr) { return _tEndScalarAnimation_1_to_0_06; } + const auto result = _tEndScalarAnimation_1_to_0_06 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 1.0F, HoldThenStepEasingFunction()); + // Frame 100. + result.InsertKeyFrame(0.558659196F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_07() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 1.0F, HoldThenStepEasingFunction()); + // Frame 100. + result.InsertKeyFrame(0.558659196F, 0.758560002F, CubicBezierEasingFunction_2()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_08() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 80. + result.InsertKeyFrame(0.446927369F, 1.0F, HoldThenStepEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 87. + result.InsertKeyFrame(0.486033529F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_09() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, 1.0F, HoldThenStepEasingFunction()); + // Frame 87. + result.InsertKeyFrame(0.486033529F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_10() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 1.0F, HoldThenStepEasingFunction()); + // Frame 90. + result.InsertKeyFrame(0.502793312F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 94. + result.InsertKeyFrame(0.525139689F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_11() + { + // Frame 0. + if (_tEndScalarAnimation_1_to_0_11 != nullptr) { return _tEndScalarAnimation_1_to_0_11; } + const auto result = _tEndScalarAnimation_1_to_0_11 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 1.0F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_12() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 1.0F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.758560002F, CubicBezierEasingFunction_2()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_13() + { + // Frame 0. + if (_tEndScalarAnimation_1_to_0_13 != nullptr) { return _tEndScalarAnimation_1_to_0_13; } + const auto result = _tEndScalarAnimation_1_to_0_13 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 1.0F, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_14() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 1.0F, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.758560002F, CubicBezierEasingFunction_2()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E2-Y + // - ShapeGroup: Group 3 Offset:<331.664, 238.14> + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p43_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.0F, HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, 0.430000007F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E2-B + // - Transforms: E2-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p43_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 86. + result.InsertKeyFrame(0.480446935F, 0.0F, HoldThenStepEasingFunction()); + // Frame 95. + result.InsertKeyFrame(0.530726254F, 0.430000007F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E3-Y + // - ShapeGroup: Group 1 Offset:<344.674, 261.877> + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p316_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, 0.0F, HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, 0.316000015F, CubicBezierEasingFunction_2()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E3-B + // - Transforms: E3-B Offset:<0.06500244, 0> + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p316_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, 0.0F, HoldThenStepEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 0.316000015F, CubicBezierEasingFunction_2()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E1-Y + // - ShapeGroup: Group 2 Offset:<344.672, 214.842> + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p375_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.0F, HoldThenStepEasingFunction()); + // Frame 88. + result.InsertKeyFrame(0.491620123F, 0.375F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E1-B + // - Transforms: E1-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p375_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, 0.0F, HoldThenStepEasingFunction()); + // Frame 93. + result.InsertKeyFrame(0.519553065F, 0.375F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: I-Y + // - ShapeGroup: Group 6 Offset:<304.135, 282.409> + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p457_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.0F, HoldThenStepEasingFunction()); + // Frame 88. + result.InsertKeyFrame(0.491620123F, 0.456999987F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: I-B + // - Transforms: I-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p457_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 81. + result.InsertKeyFrame(0.452513963F, 0.0F, HoldThenStepEasingFunction()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0.456999987F, CubicBezierEasingFunction_4()); + return result; + } + + // - - Layer aggregator + // - Layer: T2a-Y + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p5_to_1_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); + // Frame 72. + result.InsertKeyFrame(0.402234644F, 0.5F, HoldThenStepEasingFunction()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 1.0F, CubicBezierEasingFunction_7()); + return result; + } + + // - - Layer aggregator + // - Layer: T2a-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p5_to_1_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.5F, HoldThenStepEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 1.0F, CubicBezierEasingFunction_7()); + return result; + } + + // - - Layer aggregator + // - Layer: T1b-Y + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p117_to_1_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.116999999F, StepThenHoldEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, 0.116999999F, HoldThenStepEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 1.0F, CubicBezierEasingFunction_2()); + return result; + } + + // - - Layer aggregator + // - Layer: T1b-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p117_to_1_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.116999999F, StepThenHoldEasingFunction()); + // Frame 81. + result.InsertKeyFrame(0.452513963F, 0.116999999F, HoldThenStepEasingFunction()); + // Frame 88. + result.InsertKeyFrame(0.491620123F, 1.0F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.209999993F, 1.0F })); + return result; + } + + // - - - Layer aggregator + // - - Layer: T1a-B + // - Transforms: T1a-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p249_to_0p891() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.248999998F, StepThenHoldEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, 0.248999998F, HoldThenStepEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, 0.890999973F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.672999978F, 1.0F })); + return result; + } + + // - - Layer aggregator + // - Layer: T2b-Y + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p411_to_0p665_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.411000013F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 0.411000013F, HoldThenStepEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 0.665000021F, CubicBezierEasingFunction_4()); + return result; + } + + // - - Layer aggregator + // - Layer: T2b-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p411_to_0p665_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.411000013F, StepThenHoldEasingFunction()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.411000013F, HoldThenStepEasingFunction()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0.665000021F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: O-Y + // - ShapeGroup: Ellipse 1 Offset:<196, 267> + // Ellipse Path 1.EllipseGeometry + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_1_to_0p88() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); + // Frame 63. + result.InsertKeyFrame(0.351955295F, 0.879999995F, CubicBezierEasingFunction_2()); + return result; + } + + // - - - Layer aggregator + // - - Layer: O-Y + // - ShapeGroup: Ellipse 1 Offset:<196, 267> + // Ellipse Path 1.EllipseGeometry + // TrimStart + ScalarKeyFrameAnimation TrimStartScalarAnimation_0_to_0p399() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); + // Frame 63. + result.InsertKeyFrame(0.351955295F, 0.300000012F, CubicBezierEasingFunction_2()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0.398999989F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 1.0F }, { 0.432000011F, 1.0F })); + return result; + } + + // - - Layer aggregator + // - Layer: T2a-Y + // TrimStart + ScalarKeyFrameAnimation TrimStartScalarAnimation_0p5_to_0_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); + // Frame 72. + result.InsertKeyFrame(0.402234644F, 0.5F, HoldThenStepEasingFunction()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_7()); + return result; + } + + // - - Layer aggregator + // - Layer: T2a-B + // TrimStart + ScalarKeyFrameAnimation TrimStartScalarAnimation_0p5_to_0_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.5F, HoldThenStepEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 0.0F, CubicBezierEasingFunction_7()); + return result; + } + + // - - Layer aggregator + // - Layer: T2b-Y + // TrimStart + ScalarKeyFrameAnimation TrimStartScalarAnimation_0p29_to_0_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.289999992F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 0.289999992F, HoldThenStepEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 0.0F, CubicBezierEasingFunction_4()); + return result; + } + + // - - Layer aggregator + // - Layer: T2b-B + // TrimStart + ScalarKeyFrameAnimation TrimStartScalarAnimation_0p29_to_0_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.289999992F, StepThenHoldEasingFunction()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.289999992F, HoldThenStepEasingFunction()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0.0F, CubicBezierEasingFunction_4()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0_to_0p249() + { + // Frame 0. + if (_tStartScalarAnimation_0_to_0p249 != nullptr) { return _tStartScalarAnimation_0_to_0p249; } + const auto result = _tStartScalarAnimation_0_to_0p249 = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, 0.248999998F, _c.CreateCubicBezierEasingFunction({ 0.300999999F, 0.0F }, { 0.833000004F, 1.0F })); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p8_to_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.800000012F, StepThenHoldEasingFunction()); + // Frame 16. + result.InsertKeyFrame(0.0893854722F, 0.800000012F, HoldThenStepEasingFunction()); + // Frame 20. + result.InsertKeyFrame(0.111731842F, 0.5F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.703000009F, 0.856999993F })); + // Frame 28. + result.InsertKeyFrame(0.156424582F, 0.0F, _c.CreateCubicBezierEasingFunction({ 0.333000004F, 0.202000007F }, { 0.938000023F, 1.0F })); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p8_to_0p3() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.800000012F, StepThenHoldEasingFunction()); + // Frame 18. + result.InsertKeyFrame(0.100558661F, 0.800000012F, HoldThenStepEasingFunction()); + // Frame 23. + result.InsertKeyFrame(0.128491625F, 0.5F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.703000009F, 0.82099998F })); + // Frame 55. + result.InsertKeyFrame(0.30726257F, 0.300000012F, _c.CreateCubicBezierEasingFunction({ 0.0370000005F, 0.167999998F }, { 0.263000011F, 1.0F })); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_00() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 29. + result.InsertKeyFrame(0.162011176F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 33. + result.InsertKeyFrame(0.184357539F, 0.375330001F, CubicBezierEasingFunction_2()); + // Frame 36. + result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_01() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 29. + result.InsertKeyFrame(0.162011176F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 33. + result.InsertKeyFrame(0.184357539F, 0.253329992F, CubicBezierEasingFunction_2()); + // Frame 36. + result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_02() + { + // Frame 0. + if (_tStartScalarAnimation_0p87_to_0_02 != nullptr) { return _tStartScalarAnimation_0p87_to_0_02; } + const auto result = _tStartScalarAnimation_0p87_to_0_02 = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 65. + result.InsertKeyFrame(0.363128483F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, 0.212329999F, CubicBezierEasingFunction_2()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_03() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.421330005F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_04() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.438329995F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_05() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.506330013F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_06() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.439330012F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_07() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 100. + result.InsertKeyFrame(0.558659196F, 0.421330005F, CubicBezierEasingFunction_2()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_08() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 100. + result.InsertKeyFrame(0.558659196F, 0.438329995F, CubicBezierEasingFunction_2()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_09() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 100. + result.InsertKeyFrame(0.558659196F, 0.506330013F, CubicBezierEasingFunction_2()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_10() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 80. + result.InsertKeyFrame(0.446927369F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.212329999F, CubicBezierEasingFunction_2()); + // Frame 87. + result.InsertKeyFrame(0.486033529F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_11() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 87. + result.InsertKeyFrame(0.486033529F, 0.212329999F, CubicBezierEasingFunction_2()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_12() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 90. + result.InsertKeyFrame(0.502793312F, 0.212329999F, CubicBezierEasingFunction_2()); + // Frame 94. + result.InsertKeyFrame(0.525139689F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_13() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.421330005F, CubicBezierEasingFunction_2()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_14() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.438329995F, CubicBezierEasingFunction_2()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_15() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.506330013F, CubicBezierEasingFunction_2()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_16() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.421330005F, CubicBezierEasingFunction_2()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_17() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.438329995F, CubicBezierEasingFunction_2()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_18() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.506330013F, CubicBezierEasingFunction_2()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // Layer aggregator + ShapeVisual ShapeVisual_0() + { + const auto result = _c.CreateShapeVisual(); + result.Size({ 375.0F, 667.0F }); + const auto shapes = result.Shapes(); + // Offset:<187.5, 333.5> + shapes.Append(SpriteShape_00()); + // Layer: Dot-Y + shapes.Append(ContainerShape_00()); + // Layer: E3-Y + shapes.Append(ContainerShape_02()); + // Layer: E3-B + shapes.Append(ContainerShape_03()); + // Layer: I-Y + shapes.Append(ContainerShape_04()); + // Layer: I-B + shapes.Append(ContainerShape_05()); + // Layer: E2-Y + shapes.Append(ContainerShape_06()); + // Layer: E2-B + shapes.Append(ContainerShape_07()); + // Layer: E1-Y + shapes.Append(ContainerShape_08()); + // Layer: E1-B + shapes.Append(ContainerShape_09()); + // Layer: T1a-Y + shapes.Append(ContainerShape_10()); + // Layer: T2b-Y + shapes.Append(SpriteShape_11()); + // Layer: T2a-Y + shapes.Append(SpriteShape_12()); + // Layer: T2b-B + shapes.Append(SpriteShape_13()); + // Layer: T1b-Y + shapes.Append(SpriteShape_14()); + // Layer: T1b-B + shapes.Append(SpriteShape_15()); + // Layer: O-Y + shapes.Append(ContainerShape_11()); + // Layer: T1a-Y 2 + shapes.Append(ContainerShape_12()); + // Layer: T2a-B + shapes.Append(SpriteShape_19()); + // Layer: T1a-B + shapes.Append(ContainerShape_13()); + // Layer: Dot-Y + shapes.Append(ContainerShape_14()); + // Layer: L-Y + shapes.Append(SpriteShape_22()); + // Layer: L-B + shapes.Append(SpriteShape_23()); + // Layer: Dot1 + shapes.Append(ContainerShape_16()); + // Layer: S1-Y + shapes.Append(ContainerShape_17()); + // Layer: S7 + shapes.Append(ContainerShape_18()); + // Layer: S3-Y + shapes.Append(ContainerShape_19()); + // Layer: S3-Y 2 + shapes.Append(ContainerShape_20()); + // Layer: S11 + shapes.Append(SpriteShape_36()); + // Layer: S12 + shapes.Append(SpriteShape_37()); + // Layer: S13 + shapes.Append(SpriteShape_38()); + // Layer: S3-Y 3 + shapes.Append(ContainerShape_21()); + // Layer: S3-Y 4 + shapes.Append(ContainerShape_22()); + return result; + } + + StepEasingFunction HoldThenStepEasingFunction() + { + if (_holdThenStepEasingFunction != nullptr) { return _holdThenStepEasingFunction; } + const auto result = _holdThenStepEasingFunction = _c.CreateStepEasingFunction(); + result.IsFinalStepSingleFrame(true); + return result; + } + + StepEasingFunction StepThenHoldEasingFunction() + { + if (_stepThenHoldEasingFunction != nullptr) { return _stepThenHoldEasingFunction; } + const auto result = _stepThenHoldEasingFunction = _c.CreateStepEasingFunction(); + result.IsInitialStepSingleFrame(true); + return result; + } + + // - - Layer aggregator + // - Layer: Dot-Y + // Transforms: Dot-Y + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_00() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { -153.528F, -206.753998F }, StepThenHoldEasingFunction()); + // Frame 96. + result.InsertKeyFrame(0.536312878F, { -153.528F, -206.753998F }, HoldThenStepEasingFunction()); + // Frame 108. + result.InsertKeyFrame(0.603351951F, { -134.278F, -206.753998F }, _c.CreateCubicBezierEasingFunction({ 0.0F, 0.0F }, { 0.0F, 0.811999977F })); + // Frame 115. + result.InsertKeyFrame(0.642458081F, { -133.028F, -206.753998F }, _c.CreateCubicBezierEasingFunction({ 0.389999986F, 0.707000017F }, { 0.708000004F, 1.0F })); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_01() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 104.781998F, -2.52699995F }, StepThenHoldEasingFunction()); + // Frame 96. + result.InsertKeyFrame(0.536312878F, { 104.781998F, -2.52699995F }, HoldThenStepEasingFunction()); + // Frame 99. + result.InsertKeyFrame(0.553072631F, { 104.781998F, -4.52699995F }, CubicBezierEasingFunction_0()); + // Frame 102. + result.InsertKeyFrame(0.569832385F, { 104.781998F, -2.52699995F }, CubicBezierEasingFunction_1()); + // Frame 105. + result.InsertKeyFrame(0.586592197F, { 104.781998F, -3.09100008F }, CubicBezierEasingFunction_0()); + // Frame 108. + result.InsertKeyFrame(0.603351951F, { 104.781998F, -2.52699995F }, CubicBezierEasingFunction_1()); + return result; + } + + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_02() + { + // Frame 0. + if (_offsetVector2Animation_02 != nullptr) { return _offsetVector2Animation_02; } + const auto result = _offsetVector2Animation_02 = CreateVector2KeyFrameAnimation(0.0F, { -225.957001F, -204.322006F }, StepThenHoldEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, { -225.957001F, -204.322006F }, HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, { -207.957001F, -204.322006F }, CubicBezierEasingFunction_3()); + // Frame 96. + result.InsertKeyFrame(0.536312878F, { -210.957001F, -204.322006F }, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.0F }, { 0.666999996F, 1.0F })); + return result; + } + + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_03() + { + // Frame 0. + if (_offsetVector2Animation_03 != nullptr) { return _offsetVector2Animation_03; } + const auto result = _offsetVector2Animation_03 = CreateVector2KeyFrameAnimation(0.0F, { -210.207993F, -219.320999F }, StepThenHoldEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, { -210.207993F, -219.320999F }, HoldThenStepEasingFunction()); + // Frame 88. + result.InsertKeyFrame(0.491620123F, { -211.175995F, -199.352997F }, CubicBezierEasingFunction_4()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, { -210.957993F, -204.320999F }, CubicBezierEasingFunction_5()); + return result; + } + + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_04() + { + // Frame 0. + if (_offsetVector2Animation_04 != nullptr) { return _offsetVector2Animation_04; } + const auto result = _offsetVector2Animation_04 = CreateVector2KeyFrameAnimation(0.0F, { -222.957993F, -204.322006F }, StepThenHoldEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, { -222.957993F, -204.322006F }, HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, { -210.957993F, -204.322006F }, CubicBezierEasingFunction_4()); + return result; + } + + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_05() + { + // Frame 0. + if (_offsetVector2Animation_05 != nullptr) { return _offsetVector2Animation_05; } + const auto result = _offsetVector2Animation_05 = CreateVector2KeyFrameAnimation(0.0F, { -230.957001F, -205.695999F }, StepThenHoldEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, { -230.957001F, -205.695999F }, HoldThenStepEasingFunction()); + // Frame 88. + result.InsertKeyFrame(0.491620123F, { -206.957001F, -205.695999F }, CubicBezierEasingFunction_4()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, { -210.957001F, -205.695999F }, CubicBezierEasingFunction_5()); + return result; + } + + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_06() + { + // Frame 0. + if (_offsetVector2Animation_06 != nullptr) { return _offsetVector2Animation_06; } + const auto result = _offsetVector2Animation_06 = CreateVector2KeyFrameAnimation(0.0F, { -210.957001F, -201.322006F }, StepThenHoldEasingFunction()); + // Frame 56. + result.InsertKeyFrame(0.312849164F, { -210.957001F, -201.322006F }, HoldThenStepEasingFunction()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, { -210.957001F, -204.322006F }, CubicBezierEasingFunction_3()); + return result; + } + + // - Layer aggregator + // Layer: O-Y + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_07() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { -259.583008F, -193.447006F }, StepThenHoldEasingFunction()); + result.SetReferenceParameter(L"_", _root); + // Frame 31. + result.InsertKeyFrame(0.17318435F, { -259.583008F, -193.447006F }, HoldThenStepEasingFunction()); + // Frame 35.26. + result.InsertKeyFrame(0.196966484F, { -250.582993F, -258.946991F }, CubicBezierEasingFunction_2()); + // Frame 44. + result.InsertExpressionKeyFrame(0.245810047F, L"Pow(1-_.t0,3)*Vector2(-250.583,-258.947)+(3*Square(1-_.t0)*_.t0*Vector2(-250.583,-258.947))+(3*(1-_.t0)*Square(_.t0)*Vector2(-249.6143,-337.5837))+(Pow(_.t0,3)*Vector2(-230.458,-339.322))", StepThenHoldEasingFunction()); + // Frame 54. + result.InsertExpressionKeyFrame(0.301675946F, L"Pow(1-_.t0,3)*Vector2(-230.458,-339.322)+(3*Square(1-_.t0)*_.t0*Vector2(-214.2505,-340.7927))+(3*(1-_.t0)*Square(_.t0)*Vector2(-210.958,-164.322))+(Pow(_.t0,3)*Vector2(-210.958,-164.322))", StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, { -210.957993F, -164.322006F }, StepThenHoldEasingFunction()); + // Frame 63. + result.InsertKeyFrame(0.351955295F, { -210.957993F, -207.322006F }, _c.CreateCubicBezierEasingFunction({ 0.180000007F, 0.0F }, { 0.34799999F, 1.0F })); + // Frame 73. + result.InsertKeyFrame(0.407821238F, { -210.957993F, -204.322006F }, _c.CreateCubicBezierEasingFunction({ 0.693000019F, 0.0F }, { 0.270000011F, 1.0F })); + return result; + } + + // - - Layer aggregator + // - Layer: Dot-Y + // Transforms: Dot-Y + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_08() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { -156.916F, -206.503998F }, StepThenHoldEasingFunction()); + // Frame 28. + result.InsertKeyFrame(0.156424582F, { -156.916F, -206.503998F }, HoldThenStepEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, { -117.416F, -206.503998F }, CubicBezierEasingFunction_2()); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_09() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { -93.6669998F, -51.8180008F }, StepThenHoldEasingFunction()); + // Frame 28. + result.InsertKeyFrame(0.156424582F, { -93.6669998F, -51.8180008F }, HoldThenStepEasingFunction()); + // Frame 40. + result.InsertKeyFrame(0.223463684F, { -93.6669998F, -132.817993F }, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.25999999F, 1.0F })); + // Frame 54. + result.InsertKeyFrame(0.301675975F, { -93.6669998F, 42.0569992F }, _c.CreateCubicBezierEasingFunction({ 0.74000001F, 0.0F }, { 0.833000004F, 0.833000004F })); + return result; + } + + // - Layer aggregator + // Layer: Dot1 + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_10() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 98.9800034F, -157.509995F }, HoldThenStepEasingFunction()); + // Frame 18.69. + result.InsertKeyFrame(0.104395606F, { -161.020004F, -157.509995F }, _c.CreateCubicBezierEasingFunction({ 0.823000014F, 0.0F }, { 0.833000004F, 0.833000004F })); + return result; + } + + // Radius + Vector2KeyFrameAnimation RadiusVector2Animation() + { + // Frame 0. + if (_radiusVector2Animation != nullptr) { return _radiusVector2Animation; } + const auto result = _radiusVector2Animation = CreateVector2KeyFrameAnimation(0.0F, { 1.5F, 1.5F }, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, { 1.5F, 1.5F }, HoldThenStepEasingFunction()); + // Frame 61. + result.InsertKeyFrame(0.340782136F, { 22.2999992F, 22.2999992F }, _c.CreateCubicBezierEasingFunction({ 0.333000004F, 0.0F }, { 0.666999996F, 1.0F })); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_00() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 96. + result.InsertKeyFrame(0.536312878F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E3-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_01() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 102. + result.InsertKeyFrame(0.569832385F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E3-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_02() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: I-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_03() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 93. + result.InsertKeyFrame(0.519553065F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + Vector2KeyFrameAnimation ShapeVisibilityAnimation_04() + { + // Frame 0. + if (_shapeVisibilityAnimation_04 != nullptr) { return _shapeVisibilityAnimation_04; } + const auto result = _shapeVisibilityAnimation_04 = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 81. + result.InsertKeyFrame(0.452513963F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E2-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_05() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 96. + result.InsertKeyFrame(0.536312878F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E2-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_06() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 86. + result.InsertKeyFrame(0.480446935F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E1-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_07() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 94. + result.InsertKeyFrame(0.525139689F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E1-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_08() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T1a-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_09() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 59. + result.InsertKeyFrame(0.329608947F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 156. + result.InsertKeyFrame(0.87150836F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T2b-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_10() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T2a-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_11() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 72. + result.InsertKeyFrame(0.402234644F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 89. + result.InsertKeyFrame(0.497206718F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T2b-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_12() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T1b-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_13() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 161. + result.InsertKeyFrame(0.899441361F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: O-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_14() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T1a-Y 2 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_15() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 59. + result.InsertKeyFrame(0.329608947F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T2a-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_16() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T1a-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_17() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_18() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 28. + result.InsertKeyFrame(0.156424582F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: L-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_19() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 16. + result.InsertKeyFrame(0.0893854722F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: L-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_20() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 18. + result.InsertKeyFrame(0.100558661F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: Dot1 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_21() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 17. + result.InsertKeyFrame(0.0949720666F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S1-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_22() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 30. + result.InsertKeyFrame(0.167597771F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 37. + result.InsertKeyFrame(0.206703916F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S7 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_23() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 65. + result.InsertKeyFrame(0.363128483F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S3-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_24() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 2 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_25() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S11 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_26() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 80. + result.InsertKeyFrame(0.446927369F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 90. + result.InsertKeyFrame(0.502793312F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S12 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_27() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 94. + result.InsertKeyFrame(0.525139689F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S13 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_28() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 95. + result.InsertKeyFrame(0.530726254F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 3 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_29() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 4 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_30() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + static IGeometrySource2D CanvasGeometryToIGeometrySource2D(winrt::com_ptr geo) + { + return geo.as(); + } + + public: + LottieLogo1_AnimatedVisual(Compositor compositor) + : _c{compositor} + , _reusableExpressionAnimation(compositor.CreateExpressionAnimation()) + { + winrt::check_hresult(D2D1CreateFactory(D2D1_FACTORY_TYPE_SINGLE_THREADED, _d2dFactory.put())); + const auto _ = Root(); + } + + void Close() + { + if (_root) + { + _root.Close(); + } + } + + TimeSpan Duration() const + { + return TimeSpan{ c_durationTicks }; + } + + Visual RootVisual() const + { + return _root; + } + + float2 Size() const + { + return { 375.0F, 667.0F }; + } + + void CreateAnimations() + { + _containerShape_00.StartAnimation(L"Offset", OffsetVector2Animation_01(), AnimationController_0()); + _containerShape_00.StartAnimation(L"Scale", ShapeVisibilityAnimation_00(), AnimationController_0()); + _containerShape_01.StartAnimation(L"Offset", OffsetVector2Animation_00(), AnimationController_0()); + _containerShape_02.StartAnimation(L"Offset", OffsetVector2Animation_02(), AnimationController_0()); + _containerShape_02.StartAnimation(L"Scale", ShapeVisibilityAnimation_01(), AnimationController_0()); + _containerShape_03.StartAnimation(L"Offset", OffsetVector2Animation_02(), AnimationController_0()); + _containerShape_03.StartAnimation(L"Scale", ShapeVisibilityAnimation_02(), AnimationController_0()); + _containerShape_04.StartAnimation(L"Offset", OffsetVector2Animation_03(), AnimationController_0()); + _containerShape_04.StartAnimation(L"Scale", ShapeVisibilityAnimation_03(), AnimationController_0()); + _containerShape_05.StartAnimation(L"Offset", OffsetVector2Animation_03(), AnimationController_0()); + _containerShape_05.StartAnimation(L"Scale", ShapeVisibilityAnimation_04(), AnimationController_0()); + _containerShape_06.StartAnimation(L"Offset", OffsetVector2Animation_04(), AnimationController_0()); + _containerShape_06.StartAnimation(L"Scale", ShapeVisibilityAnimation_05(), AnimationController_0()); + _containerShape_07.StartAnimation(L"Offset", OffsetVector2Animation_04(), AnimationController_0()); + _containerShape_07.StartAnimation(L"Scale", ShapeVisibilityAnimation_06(), AnimationController_0()); + _containerShape_08.StartAnimation(L"Offset", OffsetVector2Animation_05(), AnimationController_0()); + _containerShape_08.StartAnimation(L"Scale", ShapeVisibilityAnimation_07(), AnimationController_0()); + _containerShape_09.StartAnimation(L"Offset", OffsetVector2Animation_05(), AnimationController_0()); + _containerShape_09.StartAnimation(L"Scale", ShapeVisibilityAnimation_08(), AnimationController_0()); + _containerShape_10.StartAnimation(L"Offset", OffsetVector2Animation_06(), AnimationController_0()); + _containerShape_10.StartAnimation(L"Scale", ShapeVisibilityAnimation_09(), AnimationController_0()); + _containerShape_11.StartAnimation(L"Offset", OffsetVector2Animation_07(), AnimationController_0()); + _containerShape_11.StartAnimation(L"Scale", ShapeVisibilityAnimation_14(), AnimationController_0()); + _containerShape_12.StartAnimation(L"Offset", OffsetVector2Animation_06(), AnimationController_0()); + _containerShape_12.StartAnimation(L"Scale", ShapeVisibilityAnimation_15(), AnimationController_0()); + _containerShape_13.StartAnimation(L"Offset", OffsetVector2Animation_06(), AnimationController_0()); + _containerShape_13.StartAnimation(L"Scale", ShapeVisibilityAnimation_17(), AnimationController_0()); + _containerShape_14.StartAnimation(L"Offset", OffsetVector2Animation_09(), AnimationController_0()); + _containerShape_14.StartAnimation(L"Scale", ShapeVisibilityAnimation_18(), AnimationController_0()); + _containerShape_15.StartAnimation(L"Offset", OffsetVector2Animation_08(), AnimationController_0()); + _containerShape_16.StartAnimation(L"Offset", OffsetVector2Animation_10(), AnimationController_1()); + _containerShape_16.StartAnimation(L"Scale", ShapeVisibilityAnimation_21(), AnimationController_0()); + _containerShape_17.StartAnimation(L"Scale", ShapeVisibilityAnimation_22(), AnimationController_0()); + _containerShape_18.StartAnimation(L"Scale", ShapeVisibilityAnimation_23(), AnimationController_0()); + _containerShape_19.StartAnimation(L"Scale", ShapeVisibilityAnimation_24(), AnimationController_0()); + _containerShape_20.StartAnimation(L"Scale", ShapeVisibilityAnimation_25(), AnimationController_0()); + _containerShape_21.StartAnimation(L"Scale", ShapeVisibilityAnimation_29(), AnimationController_0()); + _containerShape_22.StartAnimation(L"Scale", ShapeVisibilityAnimation_30(), AnimationController_0()); + _ellipse_0_0.StartAnimation(L"Radius", RadiusVector2Animation(), AnimationController_0()); + _ellipse_0_1.StartAnimation(L"Radius", RadiusVector2Animation(), AnimationController_0()); + _ellipse_0_1.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0_to_0p399(), AnimationController_0()); + _ellipse_0_1.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_1_to_0p88(), AnimationController_0()); + _pathGeometry_00.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p316_0(), AnimationController_0()); + _pathGeometry_01.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p316_1(), AnimationController_0()); + _pathGeometry_02.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p457_0(), AnimationController_0()); + _pathGeometry_03.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p457_1(), AnimationController_0()); + _pathGeometry_04.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p43_0(), AnimationController_0()); + _pathGeometry_05.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p43_1(), AnimationController_0()); + _pathGeometry_06.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p375_0(), AnimationController_0()); + _pathGeometry_07.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p375_1(), AnimationController_0()); + _pathGeometry_08.StartAnimation(L"TStart", TStartScalarAnimation_0_to_0p249(), AnimationController_0()); + _pathGeometry_08.StartAnimation(L"TEnd", TEndScalarAnimation_0_to_1_0(), AnimationController_0()); + _pathGeometry_09.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p29_to_0_0(), AnimationController_0()); + _pathGeometry_09.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p411_to_0p665_0(), AnimationController_0()); + _pathGeometry_10.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p5_to_0_0(), AnimationController_0()); + _pathGeometry_10.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p5_to_1_0(), AnimationController_0()); + _pathGeometry_11.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p29_to_0_1(), AnimationController_0()); + _pathGeometry_11.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p411_to_0p665_1(), AnimationController_0()); + _pathGeometry_12.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p117_to_1_0(), AnimationController_0()); + _pathGeometry_13.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p117_to_1_1(), AnimationController_0()); + _pathGeometry_14.StartAnimation(L"TStart", TStartScalarAnimation_0_to_0p249(), AnimationController_0()); + _pathGeometry_14.StartAnimation(L"TEnd", TEndScalarAnimation_0_to_1_1(), AnimationController_0()); + _pathGeometry_15.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p5_to_0_1(), AnimationController_0()); + _pathGeometry_15.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p5_to_1_1(), AnimationController_0()); + _pathGeometry_16.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p249_to_0p891(), AnimationController_0()); + _pathGeometry_17.StartAnimation(L"TStart", TStartScalarAnimation_0p8_to_0(), AnimationController_0()); + _pathGeometry_17.StartAnimation(L"TEnd", TEndScalarAnimation_0p81_to_0p734_0(), AnimationController_0()); + _pathGeometry_18.StartAnimation(L"TStart", TStartScalarAnimation_0p8_to_0p3(), AnimationController_0()); + _pathGeometry_18.StartAnimation(L"TEnd", TEndScalarAnimation_0p81_to_0p734_1(), AnimationController_0()); + _pathGeometry_19.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_00(), AnimationController_0()); + _pathGeometry_19.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_00(), AnimationController_0()); + _pathGeometry_20.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_01(), AnimationController_0()); + _pathGeometry_20.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_01(), AnimationController_0()); + _pathGeometry_21.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_02(), AnimationController_0()); + _pathGeometry_21.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_02(), AnimationController_0()); + _pathGeometry_22.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_02(), AnimationController_0()); + _pathGeometry_22.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_02(), AnimationController_0()); + _pathGeometry_23.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_03(), AnimationController_0()); + _pathGeometry_23.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_03(), AnimationController_0()); + _pathGeometry_24.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_04(), AnimationController_0()); + _pathGeometry_24.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_03(), AnimationController_0()); + _pathGeometry_25.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_05(), AnimationController_0()); + _pathGeometry_25.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_04(), AnimationController_0()); + _pathGeometry_26.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_06(), AnimationController_0()); + _pathGeometry_26.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_05(), AnimationController_0()); + _pathGeometry_27.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_07(), AnimationController_0()); + _pathGeometry_27.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_06(), AnimationController_0()); + _pathGeometry_28.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_08(), AnimationController_0()); + _pathGeometry_28.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_06(), AnimationController_0()); + _pathGeometry_29.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_09(), AnimationController_0()); + _pathGeometry_29.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_07(), AnimationController_0()); + _pathGeometry_30.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_10(), AnimationController_0()); + _pathGeometry_30.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_08(), AnimationController_0()); + _pathGeometry_31.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_11(), AnimationController_0()); + _pathGeometry_31.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_09(), AnimationController_0()); + _pathGeometry_32.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_12(), AnimationController_0()); + _pathGeometry_32.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_10(), AnimationController_0()); + _pathGeometry_33.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_13(), AnimationController_0()); + _pathGeometry_33.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_11(), AnimationController_0()); + _pathGeometry_34.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_14(), AnimationController_0()); + _pathGeometry_34.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_11(), AnimationController_0()); + _pathGeometry_35.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_15(), AnimationController_0()); + _pathGeometry_35.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_12(), AnimationController_0()); + _pathGeometry_36.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_16(), AnimationController_0()); + _pathGeometry_36.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_13(), AnimationController_0()); + _pathGeometry_37.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_17(), AnimationController_0()); + _pathGeometry_37.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_13(), AnimationController_0()); + _pathGeometry_38.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_18(), AnimationController_0()); + _pathGeometry_38.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_14(), AnimationController_0()); + _spriteShape_11.StartAnimation(L"Scale", ShapeVisibilityAnimation_10(), AnimationController_0()); + _spriteShape_12.StartAnimation(L"Scale", ShapeVisibilityAnimation_11(), AnimationController_0()); + _spriteShape_13.StartAnimation(L"Scale", ShapeVisibilityAnimation_12(), AnimationController_0()); + _spriteShape_14.StartAnimation(L"Scale", ShapeVisibilityAnimation_13(), AnimationController_0()); + _spriteShape_15.StartAnimation(L"Scale", ShapeVisibilityAnimation_04(), AnimationController_0()); + _spriteShape_19.StartAnimation(L"Scale", ShapeVisibilityAnimation_16(), AnimationController_0()); + _spriteShape_22.StartAnimation(L"Scale", ShapeVisibilityAnimation_19(), AnimationController_0()); + _spriteShape_23.StartAnimation(L"Scale", ShapeVisibilityAnimation_20(), AnimationController_0()); + _spriteShape_36.StartAnimation(L"Scale", ShapeVisibilityAnimation_26(), AnimationController_0()); + _spriteShape_37.StartAnimation(L"Scale", ShapeVisibilityAnimation_27(), AnimationController_0()); + _spriteShape_38.StartAnimation(L"Scale", ShapeVisibilityAnimation_28(), AnimationController_0()); + _root.Properties().StartAnimation(L"t0", t0ScalarAnimation_0_to_1(), AnimationController_0()); + } + + void DestroyAnimations() + { + _containerShape_00.StopAnimation(L"Offset"); + _containerShape_00.StopAnimation(L"Scale"); + _containerShape_01.StopAnimation(L"Offset"); + _containerShape_02.StopAnimation(L"Offset"); + _containerShape_02.StopAnimation(L"Scale"); + _containerShape_03.StopAnimation(L"Offset"); + _containerShape_03.StopAnimation(L"Scale"); + _containerShape_04.StopAnimation(L"Offset"); + _containerShape_04.StopAnimation(L"Scale"); + _containerShape_05.StopAnimation(L"Offset"); + _containerShape_05.StopAnimation(L"Scale"); + _containerShape_06.StopAnimation(L"Offset"); + _containerShape_06.StopAnimation(L"Scale"); + _containerShape_07.StopAnimation(L"Offset"); + _containerShape_07.StopAnimation(L"Scale"); + _containerShape_08.StopAnimation(L"Offset"); + _containerShape_08.StopAnimation(L"Scale"); + _containerShape_09.StopAnimation(L"Offset"); + _containerShape_09.StopAnimation(L"Scale"); + _containerShape_10.StopAnimation(L"Offset"); + _containerShape_10.StopAnimation(L"Scale"); + _containerShape_11.StopAnimation(L"Offset"); + _containerShape_11.StopAnimation(L"Scale"); + _containerShape_12.StopAnimation(L"Offset"); + _containerShape_12.StopAnimation(L"Scale"); + _containerShape_13.StopAnimation(L"Offset"); + _containerShape_13.StopAnimation(L"Scale"); + _containerShape_14.StopAnimation(L"Offset"); + _containerShape_14.StopAnimation(L"Scale"); + _containerShape_15.StopAnimation(L"Offset"); + _containerShape_16.StopAnimation(L"Offset"); + _containerShape_16.StopAnimation(L"Scale"); + _containerShape_17.StopAnimation(L"Scale"); + _containerShape_18.StopAnimation(L"Scale"); + _containerShape_19.StopAnimation(L"Scale"); + _containerShape_20.StopAnimation(L"Scale"); + _containerShape_21.StopAnimation(L"Scale"); + _containerShape_22.StopAnimation(L"Scale"); + _ellipse_0_0.StopAnimation(L"Radius"); + _ellipse_0_1.StopAnimation(L"Radius"); + _ellipse_0_1.StopAnimation(L"TrimStart"); + _ellipse_0_1.StopAnimation(L"TrimEnd"); + _pathGeometry_00.StopAnimation(L"TrimEnd"); + _pathGeometry_01.StopAnimation(L"TrimEnd"); + _pathGeometry_02.StopAnimation(L"TrimEnd"); + _pathGeometry_03.StopAnimation(L"TrimEnd"); + _pathGeometry_04.StopAnimation(L"TrimEnd"); + _pathGeometry_05.StopAnimation(L"TrimEnd"); + _pathGeometry_06.StopAnimation(L"TrimEnd"); + _pathGeometry_07.StopAnimation(L"TrimEnd"); + _pathGeometry_08.StopAnimation(L"TStart"); + _pathGeometry_08.StopAnimation(L"TEnd"); + _pathGeometry_09.StopAnimation(L"TrimStart"); + _pathGeometry_09.StopAnimation(L"TrimEnd"); + _pathGeometry_10.StopAnimation(L"TrimStart"); + _pathGeometry_10.StopAnimation(L"TrimEnd"); + _pathGeometry_11.StopAnimation(L"TrimStart"); + _pathGeometry_11.StopAnimation(L"TrimEnd"); + _pathGeometry_12.StopAnimation(L"TrimEnd"); + _pathGeometry_13.StopAnimation(L"TrimEnd"); + _pathGeometry_14.StopAnimation(L"TStart"); + _pathGeometry_14.StopAnimation(L"TEnd"); + _pathGeometry_15.StopAnimation(L"TrimStart"); + _pathGeometry_15.StopAnimation(L"TrimEnd"); + _pathGeometry_16.StopAnimation(L"TrimEnd"); + _pathGeometry_17.StopAnimation(L"TStart"); + _pathGeometry_17.StopAnimation(L"TEnd"); + _pathGeometry_18.StopAnimation(L"TStart"); + _pathGeometry_18.StopAnimation(L"TEnd"); + _pathGeometry_19.StopAnimation(L"TStart"); + _pathGeometry_19.StopAnimation(L"TEnd"); + _pathGeometry_20.StopAnimation(L"TStart"); + _pathGeometry_20.StopAnimation(L"TEnd"); + _pathGeometry_21.StopAnimation(L"TStart"); + _pathGeometry_21.StopAnimation(L"TEnd"); + _pathGeometry_22.StopAnimation(L"TStart"); + _pathGeometry_22.StopAnimation(L"TEnd"); + _pathGeometry_23.StopAnimation(L"TStart"); + _pathGeometry_23.StopAnimation(L"TEnd"); + _pathGeometry_24.StopAnimation(L"TStart"); + _pathGeometry_24.StopAnimation(L"TEnd"); + _pathGeometry_25.StopAnimation(L"TStart"); + _pathGeometry_25.StopAnimation(L"TEnd"); + _pathGeometry_26.StopAnimation(L"TStart"); + _pathGeometry_26.StopAnimation(L"TEnd"); + _pathGeometry_27.StopAnimation(L"TStart"); + _pathGeometry_27.StopAnimation(L"TEnd"); + _pathGeometry_28.StopAnimation(L"TStart"); + _pathGeometry_28.StopAnimation(L"TEnd"); + _pathGeometry_29.StopAnimation(L"TStart"); + _pathGeometry_29.StopAnimation(L"TEnd"); + _pathGeometry_30.StopAnimation(L"TStart"); + _pathGeometry_30.StopAnimation(L"TEnd"); + _pathGeometry_31.StopAnimation(L"TStart"); + _pathGeometry_31.StopAnimation(L"TEnd"); + _pathGeometry_32.StopAnimation(L"TStart"); + _pathGeometry_32.StopAnimation(L"TEnd"); + _pathGeometry_33.StopAnimation(L"TStart"); + _pathGeometry_33.StopAnimation(L"TEnd"); + _pathGeometry_34.StopAnimation(L"TStart"); + _pathGeometry_34.StopAnimation(L"TEnd"); + _pathGeometry_35.StopAnimation(L"TStart"); + _pathGeometry_35.StopAnimation(L"TEnd"); + _pathGeometry_36.StopAnimation(L"TStart"); + _pathGeometry_36.StopAnimation(L"TEnd"); + _pathGeometry_37.StopAnimation(L"TStart"); + _pathGeometry_37.StopAnimation(L"TEnd"); + _pathGeometry_38.StopAnimation(L"TStart"); + _pathGeometry_38.StopAnimation(L"TEnd"); + _spriteShape_11.StopAnimation(L"Scale"); + _spriteShape_12.StopAnimation(L"Scale"); + _spriteShape_13.StopAnimation(L"Scale"); + _spriteShape_14.StopAnimation(L"Scale"); + _spriteShape_15.StopAnimation(L"Scale"); + _spriteShape_19.StopAnimation(L"Scale"); + _spriteShape_22.StopAnimation(L"Scale"); + _spriteShape_23.StopAnimation(L"Scale"); + _spriteShape_36.StopAnimation(L"Scale"); + _spriteShape_37.StopAnimation(L"Scale"); + _spriteShape_38.StopAnimation(L"Scale"); + _root.Properties().StopAnimation(L"t0"); + } + + }; + + winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual LottieLogo1::TryCreateAnimatedVisual( + Compositor const& compositor) + { + IInspectable diagnostics = nullptr; + return TryCreateAnimatedVisual(compositor, diagnostics); + } + + winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual LottieLogo1::TryCreateAnimatedVisual( + Compositor const& compositor, + IInspectable& diagnostics) + { + diagnostics = nullptr; + auto result = winrt::make(compositor); + result.CreateAnimations(); + return result; + } + + double LottieLogo1::FrameCount() + { + return 179.0; + } + + double LottieLogo1::Framerate() + { + return 30.0; + } + + TimeSpan LottieLogo1::Duration() + { + return TimeSpan{ 59666666L }; + } + + double LottieLogo1::FrameToProgress(double frameNumber) + { + return frameNumber / 179.0; + } + + winrt::Windows::Foundation::Collections::IMapView LottieLogo1::Markers() + { + return winrt::single_threaded_map( + std::map + { + } + ).GetView(); + } + + void LottieLogo1::SetColorProperty(hstring const&, Color) + { + } + + void LottieLogo1::SetScalarProperty(hstring const&, double) + { + } +} // end namespace diff --git a/LottieGen/AnimatedVisuals.LottieLogo1.h b/LottieGen/AnimatedVisuals.LottieLogo1.h new file mode 100644 index 000000000..dea9aeec8 --- /dev/null +++ b/LottieGen/AnimatedVisuals.LottieLogo1.h @@ -0,0 +1,77 @@ +#pragma once +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// LottieGen version: +// 8.0.230813-rc.7+0443b1e789 +// +// Command: +// LottieGen -Language Cppwinrt -WinUIVersion 3.0 -InputFile LottieLogo1.json +// +// Input file: +// LottieLogo1.json (190271 bytes created 0:40-04:00 Mar 13 2024) +// +// LottieGen source: +// http://aka.ms/Lottie +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ +#include "AnimatedVisuals.LottieLogo1.g.h" + +namespace winrt::AnimatedVisuals +{ + // Frame rate: 30 fps + // Frame count: 179 + // Duration: 5966.7 mS + namespace implementation + { + class LottieLogo1 + : public LottieLogo1T + { + public: + // Animation duration: 5.967 seconds. + static constexpr int64_t c_durationTicks{ 59666666L }; + + winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual TryCreateAnimatedVisual( + winrt::Microsoft::UI::Composition::Compositor const& compositor); + + winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual TryCreateAnimatedVisual( + winrt::Microsoft::UI::Composition::Compositor const& compositor, + winrt::Windows::Foundation::IInspectable& diagnostics); + + // Gets the number of frames in the animation. + double FrameCount(); + + // Gets the framerate of the animation. + double Framerate(); + + // Gets the duration of the animation. + winrt::Windows::Foundation::TimeSpan Duration(); + + // Converts a zero-based frame number to the corresponding progress value denoting the + // start of the frame. + double FrameToProgress(double frameNumber); + + // Returns a map from marker names to corresponding progress values. + winrt::Windows::Foundation::Collections::IMapView Markers(); + + // Sets the color property with the given name, or does nothing if no such property + // exists. + void SetColorProperty(hstring const& propertyName, winrt::Windows::UI::Color value); + + // Sets the scalar property with the given name, or does nothing if no such property + // exists. + void SetScalarProperty(hstring const& propertyName, double value); + }; + } + + namespace factory_implementation + { + struct LottieLogo1 : LottieLogo1T + { + }; + } +} diff --git a/LottieGen/AnimatedVisuals.LottieLogo1.idl b/LottieGen/AnimatedVisuals.LottieLogo1.idl new file mode 100644 index 000000000..2351887c1 --- /dev/null +++ b/LottieGen/AnimatedVisuals.LottieLogo1.idl @@ -0,0 +1,29 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// LottieGen version: +// 8.0.230813-rc.7+0443b1e789 +// +// Command: +// LottieGen -Language Cppwinrt -WinUIVersion 3.0 -InputFile LottieLogo1.json +// +// Input file: +// LottieLogo1.json (190271 bytes created 0:40-04:00 Mar 13 2024) +// +// LottieGen source: +// http://aka.ms/Lottie +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ +namespace AnimatedVisuals +{ + runtimeclass LottieLogo1 + : [default] Microsoft.UI.Xaml.Controls.IAnimatedVisualSource + , Microsoft.UI.Xaml.Controls.IAnimatedVisualSource2 + { + LottieLogo1(); + }; +} diff --git a/LottieIsland/LottieContentIsland.cpp b/LottieIsland/LottieContentIsland.cpp new file mode 100644 index 000000000..67582aaa7 --- /dev/null +++ b/LottieIsland/LottieContentIsland.cpp @@ -0,0 +1,136 @@ +#include "pch.h" +#include "LottieContentIsland.h" +#include "LottieContentIsland.g.cpp" + +namespace winrt::LottieIsland::implementation +{ + LottieContentIsland::LottieContentIsland( + const winrt::Compositor& compositor) + : m_compositor(compositor) + { + m_rootVisual = m_compositor.CreateContainerVisual(); + m_island = winrt::ContentIsland::Create(m_rootVisual); + + InitializeTree(); + } + + int32_t LottieContentIsland::MyProperty() + { + return m_myProperty; + } + + void LottieContentIsland::MyProperty(int32_t value) + { + m_myProperty = value; + } + + winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisualSource LottieContentIsland::AnimatedVisualSource() const + { + // Return the AnimatedVisualSource + return m_animatedVisualSource; + } + + void LottieContentIsland::AnimatedVisualSource(winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisualSource const& value) + { + // Set the AnimatedVisualSource + m_animatedVisualSource = value; + winrt::Windows::Foundation::IInspectable diagnostics; + winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual animatedVisual = m_animatedVisualSource.TryCreateAnimatedVisual(m_compositor, diagnostics); + + // Set up lottie + m_rootVisual.Children().InsertAtTop(animatedVisual.RootVisual()); + auto animation = m_compositor.CreateScalarKeyFrameAnimation(); + animation.Duration(animatedVisual.Duration()); + auto linearEasing = m_compositor.CreateLinearEasingFunction(); + animation.InsertKeyFrame(0, 0); + animation.InsertKeyFrame(1, 1, linearEasing); + animation.IterationBehavior(winrt::Microsoft::UI::Composition::AnimationIterationBehavior::Forever); + animatedVisual.RootVisual().Properties().StartAnimation(L"Progress", animation); + } + + winrt::Windows::Foundation::TimeSpan LottieContentIsland::Duration() const + { + if (m_animatedVisualSource == nullptr) + { + return 0ms; + } + + throw winrt::hresult_not_implemented{}; + } + + bool LottieContentIsland::IsAnimationLoaded() const + { + if (m_animatedVisualSource == nullptr) + { + return false; + } + + throw winrt::hresult_not_implemented{}; + } + + bool LottieContentIsland::IsPlaying() const + { + if (m_animatedVisualSource == nullptr) + { + return false; + } + + throw winrt::hresult_not_implemented{}; + } + + void LottieContentIsland::Pause() + { + throw winrt::hresult_not_implemented{}; + } + + winrt::Windows::Foundation::IAsyncAction LottieContentIsland::PlayAsync(double fromProgress, double toProgress, bool looped) + { + throw winrt::hresult_not_implemented{}; + } + + void LottieContentIsland::Resume() + { + throw winrt::hresult_not_implemented{}; + } + + void LottieContentIsland::Stop() + { + throw winrt::hresult_not_implemented{}; + } + + void LottieContentIsland::InitializeTree() + { + // Make a blue square with a red square inside of it. + // Add some animations to the red square + + // 300 x 300 blue background + auto blueVisual = m_compositor.CreateSpriteVisual(); + auto blueBrush = m_compositor.CreateColorBrush(winrt::Windows::UI::Colors::Blue()); + blueVisual.Brush(blueBrush); + blueVisual.Size({ 300, 300 }); + + m_rootVisual.Children().InsertAtTop(blueVisual); + + // 50 x 50 red square + auto redVisual = m_compositor.CreateSpriteVisual(); + auto redBrush = m_compositor.CreateColorBrush(winrt::Windows::UI::Colors::Red()); + redVisual.Brush(redBrush); + redVisual.Size({ 50, 50 }); + + m_rootVisual.Children().InsertAtTop(redVisual); + + // Setup an animation + + auto keyFrameAnimation = m_compositor.CreateVector3KeyFrameAnimation(); + keyFrameAnimation.InsertKeyFrame(0.0f, { 0, 0, 0 }); + keyFrameAnimation.InsertKeyFrame(1.0f, { 250.f, 250.f, 0 }); + + // Bounce back and forth forever + keyFrameAnimation.Duration(2000ms); + keyFrameAnimation.Direction(winrt::AnimationDirection::Alternate); + keyFrameAnimation.IterationBehavior(winrt::AnimationIterationBehavior::Forever); + + // Start animation + redVisual.StartAnimation(L"Offset", keyFrameAnimation); + } +} diff --git a/LottieIsland/LottieContentIsland.h b/LottieIsland/LottieContentIsland.h new file mode 100644 index 000000000..69f8be278 --- /dev/null +++ b/LottieIsland/LottieContentIsland.h @@ -0,0 +1,59 @@ +#pragma once + +#include "LottieContentIsland.g.h" + +namespace winrt::Microsoft::UI::Xaml::Controls +{ + interface IAnimatedVisualSource; +} + +namespace winrt::LottieIsland::implementation +{ + struct LottieContentIsland : LottieContentIslandT + { + LottieContentIsland(const winrt::Compositor& compositor); + + int32_t MyProperty(); + void MyProperty(int32_t value); + + winrt::ContentIsland Island() const + { + return m_island; + } + + winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisualSource AnimatedVisualSource() const; + void AnimatedVisualSource(const winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisualSource& source); + + winrt::Windows::Foundation::TimeSpan Duration() const; + + bool IsAnimationLoaded() const; + + bool IsPlaying() const; + + void Pause(); + + winrt::Windows::Foundation::IAsyncAction PlayAsync(double fromProgress, double toProgress, bool looped); + + void Resume(); + + void Stop(); + + private: + void InitializeTree(); + + int32_t m_myProperty = 42; + winrt::Compositor m_compositor{ nullptr }; + winrt::ContainerVisual m_rootVisual{ nullptr }; + winrt::ContentIsland m_island{ nullptr }; + winrt::IAnimatedVisualSource m_animatedVisualSource{ nullptr }; + winrt::hstring m_uri; + winrt::LottieVisualWinRT::Class1 m_class1{ nullptr }; + }; +} + +namespace winrt::LottieIsland::factory_implementation +{ + struct LottieContentIsland : LottieContentIslandT + { + }; +} diff --git a/LottieIsland/LottieContentIsland.idl b/LottieIsland/LottieContentIsland.idl new file mode 100644 index 000000000..505340f7f --- /dev/null +++ b/LottieIsland/LottieContentIsland.idl @@ -0,0 +1,29 @@ +namespace LottieIsland +{ + [default_interface] + runtimeclass LottieContentIsland + { + LottieContentIsland(Microsoft.UI.Composition.Compositor compositor); + + Int32 MyProperty; + + Microsoft.UI.Content.ContentIsland Island{ get; }; + + // TODO: actually give this the right type + Microsoft.UI.Xaml.Controls.IAnimatedVisualSource AnimatedVisualSource; + + Windows.Foundation.TimeSpan Duration{ get; }; + + Boolean IsAnimationLoaded{ get; }; + + Boolean IsPlaying{ get; }; + + void Pause(); + + Windows.Foundation.IAsyncAction PlayAsync(Double fromProgress, Double toProgress, Boolean looped); + + void Resume(); + + void Stop(); + } +} diff --git a/LottieIsland/LottieIsland.def b/LottieIsland/LottieIsland.def new file mode 100644 index 000000000..24e7c1235 --- /dev/null +++ b/LottieIsland/LottieIsland.def @@ -0,0 +1,3 @@ +EXPORTS +DllCanUnloadNow = WINRT_CanUnloadNow PRIVATE +DllGetActivationFactory = WINRT_GetActivationFactory PRIVATE diff --git a/LottieIsland/LottieIsland.vcxproj b/LottieIsland/LottieIsland.vcxproj new file mode 100644 index 000000000..a920ab704 --- /dev/null +++ b/LottieIsland/LottieIsland.vcxproj @@ -0,0 +1,168 @@ + + + + + + + true + true + true + {9ba7a2f2-b723-458b-a575-3f726d271465} + LottieIsland + LottieIsland + en-US + 14.0 + Windows Store + 10.0 + 10.0.22621.0 + 10.0.17134.0 + None + Win32Proj + + + + + Debug + ARM + + + Debug + ARM64 + + + Debug + Win32 + + + Debug + x64 + + + Release + ARM + + + Release + ARM64 + + + Release + Win32 + + + Release + x64 + + + + DynamicLibrary + v143 + v142 + v141 + v140 + Unicode + false + + + true + true + + + false + true + false + + + + + + + + + + + + + + + $(SolutionDir)$(Platform)\$(Configuration)\ + + + $(SolutionDir)$(Platform)\$(Configuration)\ + + + + Use + pch.h + $(IntDir)pch.pch + Level4 + %(AdditionalOptions) /bigobj + _WINRT_DLL;WIN32_LEAN_AND_MEAN;WINRT_LEAN_AND_MEAN;%(PreprocessorDefinitions) + $(WindowsSDK_WindowsMetadata);$(AdditionalUsingDirectories) + + + Console + false + LottieIsland.def + + + + + _DEBUG;%(PreprocessorDefinitions) + + + + + NDEBUG;%(PreprocessorDefinitions) + + + true + true + + + + + + LottieContentIsland.idl + + + + + Create + + + LottieContentIsland.idl + + + + + + + + + + + + + + false + + + + + + + + + + + This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. + + + + + + + + + \ No newline at end of file diff --git a/LottieIsland/LottieIsland.vcxproj.filters b/LottieIsland/LottieIsland.vcxproj.filters new file mode 100644 index 000000000..095340aa3 --- /dev/null +++ b/LottieIsland/LottieIsland.vcxproj.filters @@ -0,0 +1,35 @@ + + + + + accd3aa8-1ba0-4223-9bbe-0c431709210b + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tga;tiff;tif;png;wav;mfcribbon-ms + + + {926ab91d-31b4-48c3-b9a4-e681349f27f0} + + + {8de2e0c6-cc70-4b56-a68f-dd3ec76ce5fc} + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/LottieIsland/PropertySheet.props b/LottieIsland/PropertySheet.props new file mode 100644 index 000000000..e34141b01 --- /dev/null +++ b/LottieIsland/PropertySheet.props @@ -0,0 +1,16 @@ + + + + + + + + \ No newline at end of file diff --git a/LottieIsland/packages.config b/LottieIsland/packages.config new file mode 100644 index 000000000..a61b5642a --- /dev/null +++ b/LottieIsland/packages.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/LottieIsland/pch.cpp b/LottieIsland/pch.cpp new file mode 100644 index 000000000..bcb5590be --- /dev/null +++ b/LottieIsland/pch.cpp @@ -0,0 +1 @@ +#include "pch.h" diff --git a/LottieIsland/pch.h b/LottieIsland/pch.h new file mode 100644 index 000000000..731ef0c69 --- /dev/null +++ b/LottieIsland/pch.h @@ -0,0 +1,29 @@ +#pragma once + +#include + +#include + +// Xaml has a GetCurrentTime, and somewhere in the windows sdk there's a macro for it. +// These conflict and cause issues. +#undef GetCurrentTime + +#include +#include +#include +#include +#include +#include + +#include + +namespace winrt +{ + using namespace ::winrt::Microsoft::UI::Composition; + using namespace ::winrt::Microsoft::UI::Content; + + using IAnimatedVisualSource = ::winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisualSource; +} + +// Opt into time literals (i.e. 200ms, 1min, 15s) +using namespace std::chrono_literals; diff --git a/LottieIsland/readme.txt b/LottieIsland/readme.txt new file mode 100644 index 000000000..ee517a42b --- /dev/null +++ b/LottieIsland/readme.txt @@ -0,0 +1,23 @@ +======================================================================== + C++/WinRT LottieIsland Project Overview +======================================================================== + +This project demonstrates how to get started authoring Windows Runtime +classes directly with standard C++, using the C++/WinRT SDK component +to generate implementation headers from interface (IDL) files. The +generated Windows Runtime component binary and WinMD files should then +be bundled with the Universal Windows Platform (UWP) app consuming them. + +Steps: +1. Create an interface (IDL) file to define your Windows Runtime class, + its default interface, and any other interfaces it implements. +2. Build the project once to generate module.g.cpp, module.h.cpp, and + implementation templates under the "Generated Files" folder, as + well as skeleton class definitions under "Generated Files\sources". +3. Use the skeleton class definitions for reference to implement your + Windows Runtime classes. + +======================================================================== +Learn more about C++/WinRT here: +http://aka.ms/cppwinrt/ +======================================================================== diff --git a/LottieIsland2/LottieContentIsland2.cs b/LottieIsland2/LottieContentIsland2.cs new file mode 100644 index 000000000..229859056 --- /dev/null +++ b/LottieIsland2/LottieContentIsland2.cs @@ -0,0 +1,111 @@ +using CommunityToolkit.WinUI.Lottie; +using Microsoft.UI.Composition; +using Microsoft.UI.Content; +using Microsoft.UI.Xaml.Controls; +using System.Diagnostics; + +namespace LottieIsland2 +{ + public sealed class LottieContentIsland2 + { + public int MyProperty { get; set; } + public ContentIsland Island { get => m_island; } + public IAnimatedVisualSource? AnimatedVisualSource + { + get => m_animatedVisualSource; + set + { + m_animatedVisualSource = value; + object diagnostics; + if (m_animatedVisualSource != null) + { + IAnimatedVisual animatedVisual = m_animatedVisualSource.TryCreateAnimatedVisual(m_compositor, out diagnostics); + + // Set up lottie + m_rootVisual.Children.InsertAtTop(animatedVisual.RootVisual); + var animation = m_compositor.CreateScalarKeyFrameAnimation(); + animation.Duration = animatedVisual.Duration; + var linearEasing = m_compositor.CreateLinearEasingFunction(); + animation.InsertKeyFrame(0, 0); + animation.InsertKeyFrame(1, 1, linearEasing); + animation.IterationBehavior = AnimationIterationBehavior.Forever; + animatedVisual.RootVisual.Properties.StartAnimation("Progress", animation); + } + } + } + + public string? Uri + { + get => m_uri; + set + { + m_uri = value; + if (m_uri != null) + { + //// THIS LINE causes the SimpleIslandApp to crash + //var lottieVisualSource = LottieVisualSource.CreateFromString(m_uri); + //if (lottieVisualSource != null) + //{ + // lottieVisualSource.AnimatedVisualInvalidated += LottieVisualSource_AnimatedVisualInvalidated; + //} + } + } + } + + TimeSpan Duration { get; } + + bool IsAnimationLoaded { get; } + + bool IsPlaying { get; } + + public void Pause() { throw new NotImplementedException(); } + + Windows.Foundation.IAsyncAction PlayAsync(Double fromProgress, Double toProgress, Boolean looped) { throw new NotImplementedException(); } + + void Resume() { throw new NotImplementedException(); } + + void Stop() { throw new NotImplementedException(); } + + private Compositor m_compositor; + private ContainerVisual m_rootVisual; + private ContentIsland m_island; + private IAnimatedVisualSource? m_animatedVisualSource; + private string? m_uri; + + public LottieContentIsland2(Compositor compositor) + { + m_compositor = compositor; + m_rootVisual = m_compositor.CreateContainerVisual(); + m_island = ContentIsland.Create(m_rootVisual); + } + + private void LottieVisualSource_AnimatedVisualInvalidated(IDynamicAnimatedVisualSource? sender, object? args) + { + object? diagnostics = null; + IAnimatedVisual? animatedVisual = sender?.TryCreateAnimatedVisual(m_compositor, out diagnostics); + + if (m_rootVisual != null) + { + m_rootVisual.Children.InsertAtTop(animatedVisual?.RootVisual); + if (m_compositor != null) + { + var animation = m_compositor.CreateScalarKeyFrameAnimation(); + if (animatedVisual != null) + { + animation.Duration = animatedVisual.Duration; + var linearEasing = m_compositor.CreateLinearEasingFunction(); + + // Play from beginning to end. + animation.InsertKeyFrame(0, 0); + animation.InsertKeyFrame(1, 1, linearEasing); + + animation.IterationBehavior = AnimationIterationBehavior.Forever; + + // Start the animation and get the controller. + animatedVisual.RootVisual.Properties.StartAnimation("Progress", animation); + } + } + } + } + } +} diff --git a/LottieIsland2/LottieIsland2.csproj b/LottieIsland2/LottieIsland2.csproj new file mode 100644 index 000000000..94e094150 --- /dev/null +++ b/LottieIsland2/LottieIsland2.csproj @@ -0,0 +1,21 @@ + + + + net7.0-windows10.0.19041.0 + x64;x86;ARM64 + enable + enable + true + LottieIsland2 + win10-x86;win10-x64;win10-arm64 + false + + + + + + + + + + diff --git a/LottieLogo1.cs b/LottieLogo1.cs new file mode 100644 index 000000000..17910ca63 --- /dev/null +++ b/LottieLogo1.cs @@ -0,0 +1,4227 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// LottieGen version: +// 8.0.230813-rc.7+0443b1e789 +// +// Command: +// LottieGen -Language CSharp -Public -WinUIVersion 3.0 -InputFile LottieLogo1.json +// +// Input file: +// LottieLogo1.json (190271 bytes created 16:03-04:00 Mar 11 2024) +// +// LottieGen source: +// http://aka.ms/Lottie +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ +// ____________________________________ +// | Object stats | Count | +// |__________________________|_______| +// | All CompositionObjects | 610 | +// |--------------------------+-------| +// | Expression animators | 52 | +// | KeyFrame animators | 121 | +// | Reference parameters | 52 | +// | Expression operations | 0 | +// |--------------------------+-------| +// | Animated brushes | - | +// | Animated gradient stops | - | +// | ExpressionAnimations | 50 | +// | PathKeyFrameAnimations | - | +// |--------------------------+-------| +// | ContainerVisuals | 1 | +// | ShapeVisuals | 1 | +// |--------------------------+-------| +// | ContainerShapes | 23 | +// | CompositionSpriteShapes | 45 | +// |--------------------------+-------| +// | Brushes | 3 | +// | Gradient stops | - | +// | CompositionVisualSurface | - | +// ------------------------------------ +using Microsoft.Graphics; +using Microsoft.Graphics.Canvas.Geometry; +using Microsoft.UI.Composition; +using System; +using System.Collections.Generic; +using System.Numerics; +using Windows.UI; + +namespace AnimatedVisuals +{ + // Frame rate: 30 fps + // Frame count: 179 + // Duration: 5966.7 mS + sealed class LottieLogo1 + : Microsoft.UI.Xaml.Controls.IAnimatedVisualSource + , Microsoft.UI.Xaml.Controls.IAnimatedVisualSource2 + { + // Animation duration: 5.967 seconds. + internal const long c_durationTicks = 59666666; + + public Microsoft.UI.Xaml.Controls.IAnimatedVisual TryCreateAnimatedVisual(Compositor compositor) + { + object ignored = null; + return TryCreateAnimatedVisual(compositor, out ignored); + } + + public Microsoft.UI.Xaml.Controls.IAnimatedVisual TryCreateAnimatedVisual(Compositor compositor, out object diagnostics) + { + diagnostics = null; + + var res = + new LottieLogo1_AnimatedVisual( + compositor + ); + res.CreateAnimations(); + return res; + } + + /// + /// Gets the number of frames in the animation. + /// + public double FrameCount => 179d; + + /// + /// Gets the frame rate of the animation. + /// + public double Framerate => 30d; + + /// + /// Gets the duration of the animation. + /// + public TimeSpan Duration => TimeSpan.FromTicks(59666666); + + /// + /// Converts a zero-based frame number to the corresponding progress value denoting the + /// start of the frame. + /// + public double FrameToProgress(double frameNumber) + { + return frameNumber / 179d; + } + + /// + /// Returns a map from marker names to corresponding progress values. + /// + public IReadOnlyDictionary Markers => + new Dictionary + { + }; + + /// + /// Sets the color property with the given name, or does nothing if no such property + /// exists. + /// + public void SetColorProperty(string propertyName, Color value) + { + } + + /// + /// Sets the scalar property with the given name, or does nothing if no such property + /// exists. + /// + public void SetScalarProperty(string propertyName, double value) + { + } + + sealed class LottieLogo1_AnimatedVisual + : Microsoft.UI.Xaml.Controls.IAnimatedVisual + , Microsoft.UI.Xaml.Controls.IAnimatedVisual2 + { + const long c_durationTicks = 59666666; + readonly Compositor _c; + readonly ExpressionAnimation _reusableExpressionAnimation; + AnimationController _animationController_0; + AnimationController _animationController_1; + CompositionColorBrush _colorBrush_AlmostTeal_FF007A87; + CompositionColorBrush _colorBrush_White; + CompositionContainerShape _containerShape_00; + CompositionContainerShape _containerShape_01; + CompositionContainerShape _containerShape_02; + CompositionContainerShape _containerShape_03; + CompositionContainerShape _containerShape_04; + CompositionContainerShape _containerShape_05; + CompositionContainerShape _containerShape_06; + CompositionContainerShape _containerShape_07; + CompositionContainerShape _containerShape_08; + CompositionContainerShape _containerShape_09; + CompositionContainerShape _containerShape_10; + CompositionContainerShape _containerShape_11; + CompositionContainerShape _containerShape_12; + CompositionContainerShape _containerShape_13; + CompositionContainerShape _containerShape_14; + CompositionContainerShape _containerShape_15; + CompositionContainerShape _containerShape_16; + CompositionContainerShape _containerShape_17; + CompositionContainerShape _containerShape_18; + CompositionContainerShape _containerShape_19; + CompositionContainerShape _containerShape_20; + CompositionContainerShape _containerShape_21; + CompositionContainerShape _containerShape_22; + CompositionEllipseGeometry _ellipse_0_0; + CompositionEllipseGeometry _ellipse_0_1; + CompositionEllipseGeometry _ellipse_4p7; + CompositionPath _path_0; + CompositionPath _path_1; + CompositionPath _path_2; + CompositionPath _path_3; + CompositionPath _path_4; + CompositionPath _path_5; + CompositionPath _path_6; + CompositionPath _path_7; + CompositionPath _path_8; + CompositionPathGeometry _pathGeometry_00; + CompositionPathGeometry _pathGeometry_01; + CompositionPathGeometry _pathGeometry_02; + CompositionPathGeometry _pathGeometry_03; + CompositionPathGeometry _pathGeometry_04; + CompositionPathGeometry _pathGeometry_05; + CompositionPathGeometry _pathGeometry_06; + CompositionPathGeometry _pathGeometry_07; + CompositionPathGeometry _pathGeometry_08; + CompositionPathGeometry _pathGeometry_09; + CompositionPathGeometry _pathGeometry_10; + CompositionPathGeometry _pathGeometry_11; + CompositionPathGeometry _pathGeometry_12; + CompositionPathGeometry _pathGeometry_13; + CompositionPathGeometry _pathGeometry_14; + CompositionPathGeometry _pathGeometry_15; + CompositionPathGeometry _pathGeometry_16; + CompositionPathGeometry _pathGeometry_17; + CompositionPathGeometry _pathGeometry_18; + CompositionPathGeometry _pathGeometry_19; + CompositionPathGeometry _pathGeometry_20; + CompositionPathGeometry _pathGeometry_21; + CompositionPathGeometry _pathGeometry_22; + CompositionPathGeometry _pathGeometry_23; + CompositionPathGeometry _pathGeometry_24; + CompositionPathGeometry _pathGeometry_25; + CompositionPathGeometry _pathGeometry_26; + CompositionPathGeometry _pathGeometry_27; + CompositionPathGeometry _pathGeometry_28; + CompositionPathGeometry _pathGeometry_29; + CompositionPathGeometry _pathGeometry_30; + CompositionPathGeometry _pathGeometry_31; + CompositionPathGeometry _pathGeometry_32; + CompositionPathGeometry _pathGeometry_33; + CompositionPathGeometry _pathGeometry_34; + CompositionPathGeometry _pathGeometry_35; + CompositionPathGeometry _pathGeometry_36; + CompositionPathGeometry _pathGeometry_37; + CompositionPathGeometry _pathGeometry_38; + CompositionSpriteShape _spriteShape_11; + CompositionSpriteShape _spriteShape_12; + CompositionSpriteShape _spriteShape_13; + CompositionSpriteShape _spriteShape_14; + CompositionSpriteShape _spriteShape_15; + CompositionSpriteShape _spriteShape_19; + CompositionSpriteShape _spriteShape_22; + CompositionSpriteShape _spriteShape_23; + CompositionSpriteShape _spriteShape_36; + CompositionSpriteShape _spriteShape_37; + CompositionSpriteShape _spriteShape_38; + ContainerVisual _root; + CubicBezierEasingFunction _cubicBezierEasingFunction_0; + CubicBezierEasingFunction _cubicBezierEasingFunction_1; + CubicBezierEasingFunction _cubicBezierEasingFunction_2; + CubicBezierEasingFunction _cubicBezierEasingFunction_3; + CubicBezierEasingFunction _cubicBezierEasingFunction_4; + CubicBezierEasingFunction _cubicBezierEasingFunction_5; + CubicBezierEasingFunction _cubicBezierEasingFunction_6; + CubicBezierEasingFunction _cubicBezierEasingFunction_7; + CubicBezierEasingFunction _cubicBezierEasingFunction_8; + ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_02; + ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_03; + ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_06; + ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_11; + ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_13; + ScalarKeyFrameAnimation _tStartScalarAnimation_0_to_0p249; + ScalarKeyFrameAnimation _tStartScalarAnimation_0p87_to_0_02; + StepEasingFunction _holdThenStepEasingFunction; + StepEasingFunction _stepThenHoldEasingFunction; + Vector2KeyFrameAnimation _offsetVector2Animation_02; + Vector2KeyFrameAnimation _offsetVector2Animation_03; + Vector2KeyFrameAnimation _offsetVector2Animation_04; + Vector2KeyFrameAnimation _offsetVector2Animation_05; + Vector2KeyFrameAnimation _offsetVector2Animation_06; + Vector2KeyFrameAnimation _radiusVector2Animation; + Vector2KeyFrameAnimation _shapeVisibilityAnimation_04; + + void BindProperty( + CompositionObject target, + string animatedPropertyName, + string expression, + string referenceParameterName, + CompositionObject referencedObject) + { + _reusableExpressionAnimation.ClearAllParameters(); + _reusableExpressionAnimation.Expression = expression; + _reusableExpressionAnimation.SetReferenceParameter(referenceParameterName, referencedObject); + target.StartAnimation(animatedPropertyName, _reusableExpressionAnimation); + } + + ScalarKeyFrameAnimation CreateScalarKeyFrameAnimation(float initialProgress, float initialValue, CompositionEasingFunction initialEasingFunction) + { + var result = _c.CreateScalarKeyFrameAnimation(); + result.Duration = TimeSpan.FromTicks(c_durationTicks); + result.InsertKeyFrame(initialProgress, initialValue, initialEasingFunction); + return result; + } + + Vector2KeyFrameAnimation CreateVector2KeyFrameAnimation(float initialProgress, Vector2 initialValue, CompositionEasingFunction initialEasingFunction) + { + var result = _c.CreateVector2KeyFrameAnimation(); + result.Duration = TimeSpan.FromTicks(c_durationTicks); + result.InsertKeyFrame(initialProgress, initialValue, initialEasingFunction); + return result; + } + + CompositionSpriteShape CreateSpriteShape(CompositionGeometry geometry, Matrix3x2 transformMatrix) + { + var result = _c.CreateSpriteShape(geometry); + result.TransformMatrix = transformMatrix; + return result; + } + + CompositionSpriteShape CreateSpriteShape(CompositionGeometry geometry, Matrix3x2 transformMatrix, CompositionBrush fillBrush) + { + var result = _c.CreateSpriteShape(geometry); + result.TransformMatrix = transformMatrix; + result.FillBrush = fillBrush; + return result; + } + + AnimationController AnimationController_0() + { + if (_animationController_0 != null) { return _animationController_0; } + var result = _animationController_0 = _c.CreateAnimationController(); + result.Pause(); + BindProperty(_animationController_0, "Progress", "_.Progress", "_", _root); + return result; + } + + // - Layer aggregator + // Layer: Dot1 + AnimationController AnimationController_1() + { + if (_animationController_1 != null) { return _animationController_1; } + var result = _animationController_1 = _c.CreateAnimationController(); + result.Pause(); + BindProperty(_animationController_1, "Progress", "_.Progress*0.9835165+0.01648352", "_", _root); + return result; + } + + CanvasGeometry Geometry_00() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(-13.6639996F, -0.144999996F)); + builder.AddLine(new Vector2(75.663002F, 0.289999992F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_01() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(0.859000027F, -21.1429996F)); + builder.AddLine(new Vector2(-4.35900021F, 70.3919983F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_02() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(-26.6700001F, -0.282999992F)); + builder.AddLine(new Vector2(99.1709976F, 0.0659999996F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_03() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(-13.6639996F, -0.144999996F)); + builder.AddLine(new Vector2(62.1629982F, 0.289999992F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_04() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(-30.7199993F, 63.7610016F)); + builder.AddCubicBezier(new Vector2(-30.6889992F, 63.1669998F), new Vector2(-30.7889996F, 50.8470001F), new Vector2(-30.7409992F, 45.1920013F)); + builder.AddCubicBezier(new Vector2(-30.6650009F, 36.2140007F), new Vector2(-37.3429985F, 27.0739994F), new Vector2(-37.3969994F, 27.0139999F)); + builder.AddCubicBezier(new Vector2(-38.5579987F, 25.7140007F), new Vector2(-39.7519989F, 24.1469994F), new Vector2(-40.6980019F, 22.6609993F)); + builder.AddCubicBezier(new Vector2(-46.637001F, 13.3339996F), new Vector2(-47.8400002F, 0.933000028F), new Vector2(-37.8730011F, -7.1170001F)); + builder.AddCubicBezier(new Vector2(-13.1960001F, -27.0459995F), new Vector2(8.96000004F, 11.559F), new Vector2(49.5060005F, 11.559F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_05() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(246.649994F, 213.813995F)); + builder.AddLine(new Vector2(340.955994F, 213.628006F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_06() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(1.68099999F, -29.9920006F)); + builder.AddLine(new Vector2(-1.68099999F, 29.9920006F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_07() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(1.76800001F, -25.9659996F)); + builder.AddLine(new Vector2(-1.76800001F, 25.9659996F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_08() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(-8.83699989F, -58.2290001F)); + builder.AddCubicBezier(new Vector2(-8.83699989F, -58.2290001F), new Vector2(-10.1630001F, 29.4950008F), new Vector2(-35.8339996F, 33.6619987F)); + builder.AddCubicBezier(new Vector2(-44.0579987F, 34.9970016F), new Vector2(-50.2319984F, 30.0499992F), new Vector2(-51.6879997F, 23.1480007F)); + builder.AddCubicBezier(new Vector2(-53.144001F, 16.2450008F), new Vector2(-49.6549988F, 9.15600014F), new Vector2(-41.1739998F, 7.29300022F)); + builder.AddCubicBezier(new Vector2(-17.3570004F, 2.05999994F), new Vector2(4.23500013F, 57.1879997F), new Vector2(51.7970009F, 44.1780014F)); + builder.AddCubicBezier(new Vector2(51.9570007F, 44.1339989F), new Vector2(52.6870003F, 43.8740005F), new Vector2(53.1879997F, 43.7410011F)); + builder.AddCubicBezier(new Vector2(53.6889992F, 43.6080017F), new Vector2(68.9710007F, 41.3569984F), new Vector2(140.393997F, 43.6720009F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_09() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(-67.125F, -112F)); + builder.AddCubicBezier(new Vector2(-67.125F, -112F), new Vector2(-73.5579987F, -100.719002F), new Vector2(-75.4580002F, -89.9509964F)); + builder.AddCubicBezier(new Vector2(-78.625F, -72F), new Vector2(-79.375F, -58.25F), new Vector2(-80.375F, -39.25F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_10() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(-67.25F, -105.5F)); + builder.AddCubicBezier(new Vector2(-67.25F, -105.5F), new Vector2(-70.4329987F, -94.9690018F), new Vector2(-72.3330002F, -84.2009964F)); + builder.AddCubicBezier(new Vector2(-75.5F, -66.25F), new Vector2(-75.5F, -56.75F), new Vector2(-76.5F, -37.75F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_11() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(34.5F, -13.0500002F)); + builder.AddCubicBezier(new Vector2(7.5F, -14.5F), new Vector2(-4F, -37F), new Vector2(-35.0460014F, -35.5789986F)); + builder.AddCubicBezier(new Vector2(-61.4720001F, -34.3689995F), new Vector2(-62.25F, -5.75F), new Vector2(-62.25F, -5.75F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_12() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(-3F, 35.9500008F)); + builder.AddCubicBezier(new Vector2(-3F, 35.9500008F), new Vector2(-1.5F, 7.5F), new Vector2(-1.352F, -6.75600004F)); + builder.AddCubicBezier(new Vector2(-9.90299988F, -15.0190001F), new Vector2(-21.5699997F, -20.5790005F), new Vector2(-32.0460014F, -20.5790005F)); + builder.AddCubicBezier(new Vector2(-53.5F, -20.5790005F), new Vector2(-42.25F, 4.25F), new Vector2(-42.25F, 4.25F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_13() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(16.2310009F, 39.0730019F)); + builder.AddLine(new Vector2(-32.769001F, 57.3650017F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_14() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(7.44999981F, 21.9500008F)); + builder.AddLine(new Vector2(-32.75F, 55.75F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_15() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(-94.5F, 37.0730019F)); + builder.AddLine(new Vector2(-48.769001F, 55.3650017F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_16() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(-87.5F, 20.9500008F)); + builder.AddLine(new Vector2(-48.75F, 54.75F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_17() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(166.731003F, -7.92700005F)); + builder.AddLine(new Vector2(136.731003F, 7.11499977F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_18() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(156.449997F, -23.0499992F)); + builder.AddLine(new Vector2(132F, 2.75F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_19() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(169.5F, 18.073F)); + builder.AddLine(new Vector2(137.481003F, 11.3649998F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_20() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(119.5F, -45.0499992F)); + builder.AddLine(new Vector2(82.75F, -44.75F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_21() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(119.25F, -20.0499992F)); + builder.AddLine(new Vector2(63.5F, -20.5F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_22() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(128F, 3.6500001F)); + builder.AddLine(new Vector2(78.25F, 3.5F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_23() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(149.623993F, 8.24400043F)); + builder.AddLine(new Vector2(136.647995F, 10.1560001F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_24() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(144.429001F, -5.39699984F)); + builder.AddLine(new Vector2(132.274994F, 4.73099995F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_25() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(145.677002F, 22.2199993F)); + builder.AddLine(new Vector2(134.921997F, 14.7489996F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_26() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(147.699005F, 13.0249996F)); + builder.AddLine(new Vector2(133.195007F, 13.21F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_27() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(142.182999F, -5.11199999F)); + builder.AddLine(new Vector2(130.029007F, 5.01599979F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + CanvasGeometry Geometry_28() + { + CanvasGeometry result; + using (var builder = new CanvasPathBuilder(null)) + { + builder.BeginFigure(new Vector2(142.037994F, 29.2779999F)); + builder.AddLine(new Vector2(131.281998F, 21.8069992F)); + builder.EndFigure(CanvasFigureLoop.Open); + result = CanvasGeometry.CreatePath(builder); + } + return result; + } + + // - Layer aggregator + // Offset:<187.5, 333.5> + CompositionColorBrush ColorBrush_AlmostDarkTurquoise_FF00D1C1() + { + return _c.CreateColorBrush(Color.FromArgb(0xFF, 0x00, 0xD1, 0xC1)); + } + + CompositionColorBrush ColorBrush_AlmostTeal_FF007A87() + { + return (_colorBrush_AlmostTeal_FF007A87 == null) + ? _colorBrush_AlmostTeal_FF007A87 = _c.CreateColorBrush(Color.FromArgb(0xFF, 0x00, 0x7A, 0x87)) + : _colorBrush_AlmostTeal_FF007A87; + } + + CompositionColorBrush ColorBrush_White() + { + return (_colorBrush_White == null) + ? _colorBrush_White = _c.CreateColorBrush(Color.FromArgb(0xFF, 0xFF, 0xFF, 0xFF)) + : _colorBrush_White; + } + + // Layer aggregator + // Transforms for Bncr + CompositionContainerShape ContainerShape_00() + { + if (_containerShape_00 != null) { return _containerShape_00; } + var result = _containerShape_00 = _c.CreateContainerShape(); + result.Scale = new Vector2(0F, 0F); + // Offset:<154.457, 287.822> + result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); + // Transforms: Dot-Y + result.Shapes.Add(ContainerShape_01()); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + // Transforms for Dot-Y + CompositionContainerShape ContainerShape_01() + { + if (_containerShape_01 != null) { return _containerShape_01; } + var result = _containerShape_01 = _c.CreateContainerShape(); + // ShapeGroup: Ellipse 1 Offset:<196, 267> + result.Shapes.Add(SpriteShape_01()); + return result; + } + + // Layer aggregator + // Transforms for E3-Y + CompositionContainerShape ContainerShape_02() + { + if (_containerShape_02 != null) { return _containerShape_02; } + var result = _containerShape_02 = _c.CreateContainerShape(); + result.Scale = new Vector2(0F, 0F); + // Offset:<154.457, 287.822> + result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); + // ShapeGroup: Group 1 Offset:<344.674, 261.877> + result.Shapes.Add(SpriteShape_02()); + return result; + } + + // Layer aggregator + // Transforms for E3-Y + CompositionContainerShape ContainerShape_03() + { + if (_containerShape_03 != null) { return _containerShape_03; } + var result = _containerShape_03 = _c.CreateContainerShape(); + result.Scale = new Vector2(0F, 0F); + // Offset:<154.457, 287.822> + result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); + // Transforms: E3-B Offset:<0.06500244, 0> + result.Shapes.Add(SpriteShape_03()); + return result; + } + + // Layer aggregator + // Transforms for I-Y + CompositionContainerShape ContainerShape_04() + { + if (_containerShape_04 != null) { return _containerShape_04; } + var result = _containerShape_04 = _c.CreateContainerShape(); + result.Scale = new Vector2(0F, 0F); + // Offset:<154.457, 287.822> + result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); + // ShapeGroup: Group 6 Offset:<304.135, 282.409> + result.Shapes.Add(SpriteShape_04()); + return result; + } + + // Layer aggregator + // Transforms for I-Y + CompositionContainerShape ContainerShape_05() + { + if (_containerShape_05 != null) { return _containerShape_05; } + var result = _containerShape_05 = _c.CreateContainerShape(); + result.Scale = new Vector2(0F, 0F); + // Offset:<154.457, 287.822> + result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); + // Transforms: I-B + result.Shapes.Add(SpriteShape_05()); + return result; + } + + // Layer aggregator + // Transforms for E2-Y + CompositionContainerShape ContainerShape_06() + { + if (_containerShape_06 != null) { return _containerShape_06; } + var result = _containerShape_06 = _c.CreateContainerShape(); + result.Scale = new Vector2(0F, 0F); + // Offset:<154.457, 287.822> + result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); + // ShapeGroup: Group 3 Offset:<331.664, 238.14> + result.Shapes.Add(SpriteShape_06()); + return result; + } + + // Layer aggregator + // Transforms for E2-Y + CompositionContainerShape ContainerShape_07() + { + if (_containerShape_07 != null) { return _containerShape_07; } + var result = _containerShape_07 = _c.CreateContainerShape(); + result.Scale = new Vector2(0F, 0F); + // Offset:<154.457, 287.822> + result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); + // Transforms: E2-B + result.Shapes.Add(SpriteShape_07()); + return result; + } + + // Layer aggregator + // Transforms for E1-Y + CompositionContainerShape ContainerShape_08() + { + if (_containerShape_08 != null) { return _containerShape_08; } + var result = _containerShape_08 = _c.CreateContainerShape(); + result.Scale = new Vector2(0F, 0F); + // Offset:<154.457, 287.822> + result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); + // ShapeGroup: Group 2 Offset:<344.672, 214.842> + result.Shapes.Add(SpriteShape_08()); + return result; + } + + // Layer aggregator + // Transforms for E1-Y + CompositionContainerShape ContainerShape_09() + { + if (_containerShape_09 != null) { return _containerShape_09; } + var result = _containerShape_09 = _c.CreateContainerShape(); + result.Scale = new Vector2(0F, 0F); + // Offset:<154.457, 287.822> + result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); + // Transforms: E1-B + result.Shapes.Add(SpriteShape_09()); + return result; + } + + // Layer aggregator + // Transforms for T1a-Y + CompositionContainerShape ContainerShape_10() + { + if (_containerShape_10 != null) { return _containerShape_10; } + var result = _containerShape_10 = _c.CreateContainerShape(); + result.Scale = new Vector2(0F, 0F); + // Offset:<154.457, 287.822> + result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); + // ShapeGroup: Group 9 Offset:<227.677, 234.375> + result.Shapes.Add(SpriteShape_10()); + return result; + } + + // Layer aggregator + // Transforms for O-Y + CompositionContainerShape ContainerShape_11() + { + if (_containerShape_11 != null) { return _containerShape_11; } + var result = _containerShape_11 = _c.CreateContainerShape(); + result.Scale = new Vector2(0F, 0F); + // Offset:<154.457, 287.822> + result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); + var shapes = result.Shapes; + // ShapeGroup: Ellipse 1 Offset:<196, 267> + shapes.Add(SpriteShape_16()); + // ShapeGroup: Ellipse 1 Offset:<196, 267> + shapes.Add(SpriteShape_17()); + return result; + } + + // Layer aggregator + // Transforms for T1a-Y 2 + CompositionContainerShape ContainerShape_12() + { + if (_containerShape_12 != null) { return _containerShape_12; } + var result = _containerShape_12 = _c.CreateContainerShape(); + result.Scale = new Vector2(0F, 0F); + // Offset:<154.457, 287.822> + result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); + // ShapeGroup: Group 9 Offset:<227.677, 234.375> + result.Shapes.Add(SpriteShape_18()); + return result; + } + + // Layer aggregator + // Transforms for T1a-Y + CompositionContainerShape ContainerShape_13() + { + if (_containerShape_13 != null) { return _containerShape_13; } + var result = _containerShape_13 = _c.CreateContainerShape(); + result.Scale = new Vector2(0F, 0F); + // Offset:<154.457, 287.822> + result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); + // Transforms: T1a-B + result.Shapes.Add(SpriteShape_20()); + return result; + } + + // Layer aggregator + // Transforms for N + CompositionContainerShape ContainerShape_14() + { + if (_containerShape_14 != null) { return _containerShape_14; } + var result = _containerShape_14 = _c.CreateContainerShape(); + result.Scale = new Vector2(0F, 0F); + // Offset:<154.457, 287.822> + result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); + // Transforms: Dot-Y + result.Shapes.Add(ContainerShape_15()); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + // Transforms for Dot-Y + CompositionContainerShape ContainerShape_15() + { + if (_containerShape_15 != null) { return _containerShape_15; } + var result = _containerShape_15 = _c.CreateContainerShape(); + // ShapeGroup: Ellipse 1 Offset:<196, 267> + result.Shapes.Add(SpriteShape_21()); + return result; + } + + // Layer aggregator + // Transforms for Dot1 + CompositionContainerShape ContainerShape_16() + { + if (_containerShape_16 != null) { return _containerShape_16; } + var result = _containerShape_16 = _c.CreateContainerShape(); + // Offset:<154.457, 287.822> + result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); + // ShapeGroup: Ellipse 1 Offset:<196, 267> + result.Shapes.Add(SpriteShape_24()); + return result; + } + + // Layer aggregator + // Layer: S1-Y + CompositionContainerShape ContainerShape_17() + { + if (_containerShape_17 != null) { return _containerShape_17; } + var result = _containerShape_17 = _c.CreateContainerShape(); + result.Scale = new Vector2(0F, 0F); + var shapes = result.Shapes; + // Offset:<154.457, 287.822> + shapes.Add(SpriteShape_25()); + // Offset:<154.457, 287.822> + shapes.Add(SpriteShape_26()); + return result; + } + + // Layer aggregator + // Layer: S7 + CompositionContainerShape ContainerShape_18() + { + if (_containerShape_18 != null) { return _containerShape_18; } + var result = _containerShape_18 = _c.CreateContainerShape(); + result.Scale = new Vector2(0F, 0F); + var shapes = result.Shapes; + // Offset:<154.457, 287.822> + shapes.Add(SpriteShape_27()); + // Offset:<154.457, 287.822> + shapes.Add(SpriteShape_28()); + return result; + } + + // Layer aggregator + // Layer: S3-Y + CompositionContainerShape ContainerShape_19() + { + if (_containerShape_19 != null) { return _containerShape_19; } + var result = _containerShape_19 = _c.CreateContainerShape(); + result.Scale = new Vector2(0F, 0F); + var shapes = result.Shapes; + // Offset:<154.457, 287.822> + shapes.Add(SpriteShape_29()); + // Offset:<154.457, 287.822> + shapes.Add(SpriteShape_30()); + // Offset:<154.457, 287.822> + shapes.Add(SpriteShape_31()); + // Offset:<154.457, 287.822> + shapes.Add(SpriteShape_32()); + return result; + } + + // Layer aggregator + // Layer: S3-Y 2 + CompositionContainerShape ContainerShape_20() + { + if (_containerShape_20 != null) { return _containerShape_20; } + var result = _containerShape_20 = _c.CreateContainerShape(); + result.Scale = new Vector2(0F, 0F); + var shapes = result.Shapes; + // Offset:<154.457, 287.822> + shapes.Add(SpriteShape_33()); + // Offset:<154.457, 287.822> + shapes.Add(SpriteShape_34()); + // Offset:<154.457, 287.822> + shapes.Add(SpriteShape_35()); + return result; + } + + // Layer aggregator + // Layer: S3-Y 3 + CompositionContainerShape ContainerShape_21() + { + if (_containerShape_21 != null) { return _containerShape_21; } + var result = _containerShape_21 = _c.CreateContainerShape(); + result.Scale = new Vector2(0F, 0F); + var shapes = result.Shapes; + // Offset:<154.457, 287.822> + shapes.Add(SpriteShape_39()); + // Offset:<154.457, 287.822> + shapes.Add(SpriteShape_40()); + // Offset:<154.457, 287.822> + shapes.Add(SpriteShape_41()); + return result; + } + + // Layer aggregator + // Layer: S3-Y 4 + CompositionContainerShape ContainerShape_22() + { + if (_containerShape_22 != null) { return _containerShape_22; } + var result = _containerShape_22 = _c.CreateContainerShape(); + result.Scale = new Vector2(0F, 0F); + var shapes = result.Shapes; + // Offset:<154.457, 287.822> + shapes.Add(SpriteShape_42()); + // Offset:<154.457, 287.822> + shapes.Add(SpriteShape_43()); + // Offset:<154.457, 287.822> + shapes.Add(SpriteShape_44()); + return result; + } + + // - - Layer aggregator + // - Layer: O-Y + // ShapeGroup: Ellipse 1 Offset:<196, 267> + // Ellipse Path 1.EllipseGeometry + CompositionEllipseGeometry Ellipse_0_0() + { + if (_ellipse_0_0 != null) { return _ellipse_0_0; } + var result = _ellipse_0_0 = _c.CreateEllipseGeometry(); + result.Center = new Vector2(0.800000012F, -0.5F); + result.Radius = new Vector2(0F, 0F); + return result; + } + + // - - Layer aggregator + // - Layer: O-Y + // ShapeGroup: Ellipse 1 Offset:<196, 267> + // Ellipse Path 1.EllipseGeometry + CompositionEllipseGeometry Ellipse_0_1() + { + if (_ellipse_0_1 != null) { return _ellipse_0_1; } + var result = _ellipse_0_1 = _c.CreateEllipseGeometry(); + result.Center = new Vector2(0.800000012F, -0.5F); + result.Radius = new Vector2(0F, 0F); + return result; + } + + // - - - Layer aggregator + // - - Layer: Dot-Y + // - Transforms: Dot-Y + // ShapeGroup: Ellipse 1 Offset:<196, 267> + // Ellipse Path 1.EllipseGeometry + CompositionEllipseGeometry Ellipse_4p6() + { + var result = _c.CreateEllipseGeometry(); + result.Center = new Vector2(0.800000012F, -0.5F); + result.Radius = new Vector2(4.5999999F, 4.5999999F); + return result; + } + + // Ellipse Path 1.EllipseGeometry + CompositionEllipseGeometry Ellipse_4p7() + { + if (_ellipse_4p7 != null) { return _ellipse_4p7; } + var result = _ellipse_4p7 = _c.CreateEllipseGeometry(); + result.Center = new Vector2(0.800000012F, -0.5F); + result.Radius = new Vector2(4.69999981F, 4.69999981F); + return result; + } + + CompositionPath Path_0() + { + if (_path_0 != null) { return _path_0; } + var result = _path_0 = new CompositionPath(Geometry_00()); + return result; + } + + CompositionPath Path_1() + { + if (_path_1 != null) { return _path_1; } + var result = _path_1 = new CompositionPath(Geometry_01()); + return result; + } + + CompositionPath Path_2() + { + if (_path_2 != null) { return _path_2; } + var result = _path_2 = new CompositionPath(Geometry_02()); + return result; + } + + CompositionPath Path_3() + { + if (_path_3 != null) { return _path_3; } + var result = _path_3 = new CompositionPath(Geometry_03()); + return result; + } + + CompositionPath Path_4() + { + if (_path_4 != null) { return _path_4; } + var result = _path_4 = new CompositionPath(Geometry_04()); + return result; + } + + CompositionPath Path_5() + { + if (_path_5 != null) { return _path_5; } + var result = _path_5 = new CompositionPath(Geometry_05()); + return result; + } + + CompositionPath Path_6() + { + if (_path_6 != null) { return _path_6; } + var result = _path_6 = new CompositionPath(Geometry_06()); + return result; + } + + CompositionPath Path_7() + { + if (_path_7 != null) { return _path_7; } + var result = _path_7 = new CompositionPath(Geometry_07()); + return result; + } + + CompositionPath Path_8() + { + if (_path_8 != null) { return _path_8; } + var result = _path_8 = new CompositionPath(Geometry_08()); + return result; + } + + // - - Layer aggregator + // - Layer: E3-Y + // ShapeGroup: Group 1 Offset:<344.674, 261.877> + CompositionPathGeometry PathGeometry_00() + { + if (_pathGeometry_00 != null) { return _pathGeometry_00; } + var result = _pathGeometry_00 = _c.CreatePathGeometry(Path_0()); + return result; + } + + // - - Layer aggregator + // - Layer: E3-B + // Transforms: E3-B Offset:<0.06500244, 0> + CompositionPathGeometry PathGeometry_01() + { + if (_pathGeometry_01 != null) { return _pathGeometry_01; } + var result = _pathGeometry_01 = _c.CreatePathGeometry(Path_0()); + return result; + } + + // - - Layer aggregator + // - Layer: I-Y + // ShapeGroup: Group 6 Offset:<304.135, 282.409> + CompositionPathGeometry PathGeometry_02() + { + if (_pathGeometry_02 != null) { return _pathGeometry_02; } + var result = _pathGeometry_02 = _c.CreatePathGeometry(Path_1()); + return result; + } + + // - - Layer aggregator + // - Layer: I-B + // Transforms: I-B + CompositionPathGeometry PathGeometry_03() + { + if (_pathGeometry_03 != null) { return _pathGeometry_03; } + var result = _pathGeometry_03 = _c.CreatePathGeometry(Path_1()); + return result; + } + + // - - Layer aggregator + // - Layer: E2-Y + // ShapeGroup: Group 3 Offset:<331.664, 238.14> + CompositionPathGeometry PathGeometry_04() + { + if (_pathGeometry_04 != null) { return _pathGeometry_04; } + var result = _pathGeometry_04 = _c.CreatePathGeometry(Path_2()); + return result; + } + + // - - Layer aggregator + // - Layer: E2-B + // Transforms: E2-B + CompositionPathGeometry PathGeometry_05() + { + if (_pathGeometry_05 != null) { return _pathGeometry_05; } + var result = _pathGeometry_05 = _c.CreatePathGeometry(Path_2()); + return result; + } + + // - - Layer aggregator + // - Layer: E1-Y + // ShapeGroup: Group 2 Offset:<344.672, 214.842> + CompositionPathGeometry PathGeometry_06() + { + if (_pathGeometry_06 != null) { return _pathGeometry_06; } + var result = _pathGeometry_06 = _c.CreatePathGeometry(Path_3()); + return result; + } + + // - - Layer aggregator + // - Layer: E1-B + // Transforms: E1-B + CompositionPathGeometry PathGeometry_07() + { + if (_pathGeometry_07 != null) { return _pathGeometry_07; } + var result = _pathGeometry_07 = _c.CreatePathGeometry(Path_3()); + return result; + } + + CompositionPathGeometry PathGeometry_08() + { + if (_pathGeometry_08 != null) { return _pathGeometry_08; } + var result = _pathGeometry_08 = _c.CreatePathGeometry(Path_4()); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 0F); + propertySet.InsertScalar("TStart", 0F); + BindProperty(_pathGeometry_08, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_08); + BindProperty(_pathGeometry_08, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_08); + return result; + } + + // - Layer aggregator + // Layer: T2b-Y + CompositionPathGeometry PathGeometry_09() + { + if (_pathGeometry_09 != null) { return _pathGeometry_09; } + var result = _pathGeometry_09 = _c.CreatePathGeometry(Path_5()); + return result; + } + + // - Layer aggregator + // Layer: T2a-Y + CompositionPathGeometry PathGeometry_10() + { + if (_pathGeometry_10 != null) { return _pathGeometry_10; } + var result = _pathGeometry_10 = _c.CreatePathGeometry(Path_6()); + return result; + } + + // - Layer aggregator + // Layer: T2b-B + CompositionPathGeometry PathGeometry_11() + { + if (_pathGeometry_11 != null) { return _pathGeometry_11; } + var result = _pathGeometry_11 = _c.CreatePathGeometry(Path_5()); + return result; + } + + // - Layer aggregator + // Layer: T1b-Y + CompositionPathGeometry PathGeometry_12() + { + if (_pathGeometry_12 != null) { return _pathGeometry_12; } + var result = _pathGeometry_12 = _c.CreatePathGeometry(Path_7()); + return result; + } + + // - Layer aggregator + // Layer: T1b-B + CompositionPathGeometry PathGeometry_13() + { + if (_pathGeometry_13 != null) { return _pathGeometry_13; } + var result = _pathGeometry_13 = _c.CreatePathGeometry(Path_7()); + return result; + } + + CompositionPathGeometry PathGeometry_14() + { + if (_pathGeometry_14 != null) { return _pathGeometry_14; } + var result = _pathGeometry_14 = _c.CreatePathGeometry(Path_4()); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 0F); + propertySet.InsertScalar("TStart", 0F); + BindProperty(_pathGeometry_14, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_14); + BindProperty(_pathGeometry_14, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_14); + return result; + } + + // - Layer aggregator + // Layer: T2a-B + CompositionPathGeometry PathGeometry_15() + { + if (_pathGeometry_15 != null) { return _pathGeometry_15; } + var result = _pathGeometry_15 = _c.CreatePathGeometry(Path_6()); + return result; + } + + // - - Layer aggregator + // - Layer: T1a-B + // Transforms: T1a-B + CompositionPathGeometry PathGeometry_16() + { + if (_pathGeometry_16 != null) { return _pathGeometry_16; } + var result = _pathGeometry_16 = _c.CreatePathGeometry(Path_4()); + result.TrimStart = 0.248999998F; + return result; + } + + CompositionPathGeometry PathGeometry_17() + { + if (_pathGeometry_17 != null) { return _pathGeometry_17; } + var result = _pathGeometry_17 = _c.CreatePathGeometry(Path_8()); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 0.810000002F); + propertySet.InsertScalar("TStart", 0.800000012F); + BindProperty(_pathGeometry_17, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_17); + BindProperty(_pathGeometry_17, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_17); + return result; + } + + CompositionPathGeometry PathGeometry_18() + { + if (_pathGeometry_18 != null) { return _pathGeometry_18; } + var result = _pathGeometry_18 = _c.CreatePathGeometry(Path_8()); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 0.810000002F); + propertySet.InsertScalar("TStart", 0.800000012F); + BindProperty(_pathGeometry_18, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_18); + BindProperty(_pathGeometry_18, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_18); + return result; + } + + CompositionPathGeometry PathGeometry_19() + { + if (_pathGeometry_19 != null) { return _pathGeometry_19; } + var result = _pathGeometry_19 = _c.CreatePathGeometry(new CompositionPath(Geometry_09())); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 1F); + propertySet.InsertScalar("TStart", 0.870000005F); + BindProperty(_pathGeometry_19, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_19); + BindProperty(_pathGeometry_19, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_19); + return result; + } + + CompositionPathGeometry PathGeometry_20() + { + if (_pathGeometry_20 != null) { return _pathGeometry_20; } + var result = _pathGeometry_20 = _c.CreatePathGeometry(new CompositionPath(Geometry_10())); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 1F); + propertySet.InsertScalar("TStart", 0.870000005F); + BindProperty(_pathGeometry_20, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_20); + BindProperty(_pathGeometry_20, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_20); + return result; + } + + CompositionPathGeometry PathGeometry_21() + { + if (_pathGeometry_21 != null) { return _pathGeometry_21; } + var result = _pathGeometry_21 = _c.CreatePathGeometry(new CompositionPath(Geometry_11())); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 1F); + propertySet.InsertScalar("TStart", 0.870000005F); + BindProperty(_pathGeometry_21, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_21); + BindProperty(_pathGeometry_21, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_21); + return result; + } + + CompositionPathGeometry PathGeometry_22() + { + if (_pathGeometry_22 != null) { return _pathGeometry_22; } + var result = _pathGeometry_22 = _c.CreatePathGeometry(new CompositionPath(Geometry_12())); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 1F); + propertySet.InsertScalar("TStart", 0.870000005F); + BindProperty(_pathGeometry_22, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_22); + BindProperty(_pathGeometry_22, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_22); + return result; + } + + CompositionPathGeometry PathGeometry_23() + { + if (_pathGeometry_23 != null) { return _pathGeometry_23; } + var result = _pathGeometry_23 = _c.CreatePathGeometry(new CompositionPath(Geometry_13())); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 1F); + propertySet.InsertScalar("TStart", 0.870000005F); + BindProperty(_pathGeometry_23, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_23); + BindProperty(_pathGeometry_23, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_23); + return result; + } + + CompositionPathGeometry PathGeometry_24() + { + if (_pathGeometry_24 != null) { return _pathGeometry_24; } + var result = _pathGeometry_24 = _c.CreatePathGeometry(new CompositionPath(Geometry_14())); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 1F); + propertySet.InsertScalar("TStart", 0.870000005F); + BindProperty(_pathGeometry_24, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_24); + BindProperty(_pathGeometry_24, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_24); + return result; + } + + CompositionPathGeometry PathGeometry_25() + { + if (_pathGeometry_25 != null) { return _pathGeometry_25; } + var result = _pathGeometry_25 = _c.CreatePathGeometry(new CompositionPath(Geometry_15())); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 1F); + propertySet.InsertScalar("TStart", 0.870000005F); + BindProperty(_pathGeometry_25, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_25); + BindProperty(_pathGeometry_25, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_25); + return result; + } + + CompositionPathGeometry PathGeometry_26() + { + if (_pathGeometry_26 != null) { return _pathGeometry_26; } + var result = _pathGeometry_26 = _c.CreatePathGeometry(new CompositionPath(Geometry_16())); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 1F); + propertySet.InsertScalar("TStart", 0.870000005F); + BindProperty(_pathGeometry_26, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_26); + BindProperty(_pathGeometry_26, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_26); + return result; + } + + CompositionPathGeometry PathGeometry_27() + { + if (_pathGeometry_27 != null) { return _pathGeometry_27; } + var result = _pathGeometry_27 = _c.CreatePathGeometry(new CompositionPath(Geometry_17())); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 1F); + propertySet.InsertScalar("TStart", 0.870000005F); + BindProperty(_pathGeometry_27, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_27); + BindProperty(_pathGeometry_27, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_27); + return result; + } + + CompositionPathGeometry PathGeometry_28() + { + if (_pathGeometry_28 != null) { return _pathGeometry_28; } + var result = _pathGeometry_28 = _c.CreatePathGeometry(new CompositionPath(Geometry_18())); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 1F); + propertySet.InsertScalar("TStart", 0.870000005F); + BindProperty(_pathGeometry_28, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_28); + BindProperty(_pathGeometry_28, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_28); + return result; + } + + CompositionPathGeometry PathGeometry_29() + { + if (_pathGeometry_29 != null) { return _pathGeometry_29; } + var result = _pathGeometry_29 = _c.CreatePathGeometry(new CompositionPath(Geometry_19())); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 1F); + propertySet.InsertScalar("TStart", 0.870000005F); + BindProperty(_pathGeometry_29, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_29); + BindProperty(_pathGeometry_29, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_29); + return result; + } + + CompositionPathGeometry PathGeometry_30() + { + if (_pathGeometry_30 != null) { return _pathGeometry_30; } + var result = _pathGeometry_30 = _c.CreatePathGeometry(new CompositionPath(Geometry_20())); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 1F); + propertySet.InsertScalar("TStart", 0.870000005F); + BindProperty(_pathGeometry_30, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_30); + BindProperty(_pathGeometry_30, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_30); + return result; + } + + CompositionPathGeometry PathGeometry_31() + { + if (_pathGeometry_31 != null) { return _pathGeometry_31; } + var result = _pathGeometry_31 = _c.CreatePathGeometry(new CompositionPath(Geometry_21())); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 1F); + propertySet.InsertScalar("TStart", 0.870000005F); + BindProperty(_pathGeometry_31, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_31); + BindProperty(_pathGeometry_31, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_31); + return result; + } + + CompositionPathGeometry PathGeometry_32() + { + if (_pathGeometry_32 != null) { return _pathGeometry_32; } + var result = _pathGeometry_32 = _c.CreatePathGeometry(new CompositionPath(Geometry_22())); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 1F); + propertySet.InsertScalar("TStart", 0.870000005F); + BindProperty(_pathGeometry_32, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_32); + BindProperty(_pathGeometry_32, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_32); + return result; + } + + CompositionPathGeometry PathGeometry_33() + { + if (_pathGeometry_33 != null) { return _pathGeometry_33; } + var result = _pathGeometry_33 = _c.CreatePathGeometry(new CompositionPath(Geometry_23())); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 1F); + propertySet.InsertScalar("TStart", 0.870000005F); + BindProperty(_pathGeometry_33, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_33); + BindProperty(_pathGeometry_33, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_33); + return result; + } + + CompositionPathGeometry PathGeometry_34() + { + if (_pathGeometry_34 != null) { return _pathGeometry_34; } + var result = _pathGeometry_34 = _c.CreatePathGeometry(new CompositionPath(Geometry_24())); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 1F); + propertySet.InsertScalar("TStart", 0.870000005F); + BindProperty(_pathGeometry_34, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_34); + BindProperty(_pathGeometry_34, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_34); + return result; + } + + CompositionPathGeometry PathGeometry_35() + { + if (_pathGeometry_35 != null) { return _pathGeometry_35; } + var result = _pathGeometry_35 = _c.CreatePathGeometry(new CompositionPath(Geometry_25())); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 1F); + propertySet.InsertScalar("TStart", 0.870000005F); + BindProperty(_pathGeometry_35, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_35); + BindProperty(_pathGeometry_35, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_35); + return result; + } + + CompositionPathGeometry PathGeometry_36() + { + if (_pathGeometry_36 != null) { return _pathGeometry_36; } + var result = _pathGeometry_36 = _c.CreatePathGeometry(new CompositionPath(Geometry_26())); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 1F); + propertySet.InsertScalar("TStart", 0.870000005F); + BindProperty(_pathGeometry_36, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_36); + BindProperty(_pathGeometry_36, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_36); + return result; + } + + CompositionPathGeometry PathGeometry_37() + { + if (_pathGeometry_37 != null) { return _pathGeometry_37; } + var result = _pathGeometry_37 = _c.CreatePathGeometry(new CompositionPath(Geometry_27())); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 1F); + propertySet.InsertScalar("TStart", 0.870000005F); + BindProperty(_pathGeometry_37, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_37); + BindProperty(_pathGeometry_37, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_37); + return result; + } + + CompositionPathGeometry PathGeometry_38() + { + if (_pathGeometry_38 != null) { return _pathGeometry_38; } + var result = _pathGeometry_38 = _c.CreatePathGeometry(new CompositionPath(Geometry_28())); + var propertySet = result.Properties; + propertySet.InsertScalar("TEnd", 1F); + propertySet.InsertScalar("TStart", 0.870000005F); + BindProperty(_pathGeometry_38, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_38); + BindProperty(_pathGeometry_38, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_38); + return result; + } + + // - Layer aggregator + // Offset:<187.5, 333.5> + // Rectangle Path 1.RectangleGeometry + CompositionRectangleGeometry Rectangle_375x667() + { + var result = _c.CreateRectangleGeometry(); + result.Offset = new Vector2(-187.5F, -333.5F); + result.Size = new Vector2(375F, 667F); + return result; + } + + // Layer aggregator + // Rectangle Path 1 + CompositionSpriteShape SpriteShape_00() + { + // Offset:<187.5, 333.5> + var geometry = Rectangle_375x667(); + var result = CreateSpriteShape(geometry, new Matrix3x2(1F, 0F, 0F, 1F, 187.5F, 333.5F), ColorBrush_AlmostDarkTurquoise_FF00D1C1());; + return result; + } + + // - - Layer aggregator + // - Layer: Dot-Y + // Transforms: Dot-Y + // Ellipse Path 1 + CompositionSpriteShape SpriteShape_01() + { + // Offset:<196, 267> + var geometry = Ellipse_4p6(); + var result = CreateSpriteShape(geometry, new Matrix3x2(1F, 0F, 0F, 1F, 196F, 267F), ColorBrush_White());; + return result; + } + + // - Layer aggregator + // Layer: E3-Y + // Path 1 + CompositionSpriteShape SpriteShape_02() + { + // Offset:<344.674, 261.877> + var result = CreateSpriteShape(PathGeometry_00(), new Matrix3x2(1F, 0F, 0F, 1F, 344.674011F, 261.877014F));; + result.StrokeBrush = ColorBrush_AlmostTeal_FF007A87(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 5F; + result.StrokeThickness = 9.56200027F; + return result; + } + + // - Layer aggregator + // Layer: E3-B + // Path 1 + CompositionSpriteShape SpriteShape_03() + { + // Offset:<344.739, 261.877> + var result = CreateSpriteShape(PathGeometry_01(), new Matrix3x2(1F, 0F, 0F, 1F, 344.739014F, 261.877014F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 5F; + result.StrokeThickness = 9.56200027F; + return result; + } + + // - Layer aggregator + // Layer: I-Y + // Path 1 + CompositionSpriteShape SpriteShape_04() + { + // Offset:<304.135, 282.409> + var result = CreateSpriteShape(PathGeometry_02(), new Matrix3x2(1F, 0F, 0F, 1F, 304.13501F, 282.408997F));; + result.StrokeBrush = ColorBrush_AlmostTeal_FF007A87(); + result.StrokeDashCap = CompositionStrokeCap.Square; + result.StrokeStartCap = CompositionStrokeCap.Square; + result.StrokeEndCap = CompositionStrokeCap.Square; + result.StrokeMiterLimit = 5F; + result.StrokeThickness = 8.39999962F; + return result; + } + + // - Layer aggregator + // Layer: I-B + // Path 1 + CompositionSpriteShape SpriteShape_05() + { + // Offset:<304.135, 282.409> + var result = CreateSpriteShape(PathGeometry_03(), new Matrix3x2(1F, 0F, 0F, 1F, 304.13501F, 282.408997F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Square; + result.StrokeStartCap = CompositionStrokeCap.Square; + result.StrokeEndCap = CompositionStrokeCap.Square; + result.StrokeMiterLimit = 5F; + result.StrokeThickness = 9.19400024F; + return result; + } + + // - Layer aggregator + // Layer: E2-Y + // Path 1 + CompositionSpriteShape SpriteShape_06() + { + // Offset:<331.664, 238.14> + var result = CreateSpriteShape(PathGeometry_04(), new Matrix3x2(1F, 0F, 0F, 1F, 331.664001F, 238.139999F));; + result.StrokeBrush = ColorBrush_AlmostTeal_FF007A87(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 5F; + result.StrokeThickness = 8.39999962F; + return result; + } + + // - Layer aggregator + // Layer: E2-B + // Path 1 + CompositionSpriteShape SpriteShape_07() + { + // Offset:<331.664, 238.14> + var result = CreateSpriteShape(PathGeometry_05(), new Matrix3x2(1F, 0F, 0F, 1F, 331.664001F, 238.139999F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 5F; + result.StrokeThickness = 9.56200027F; + return result; + } + + // - Layer aggregator + // Layer: E1-Y + // Path 1 + CompositionSpriteShape SpriteShape_08() + { + // Offset:<344.672, 214.842> + var result = CreateSpriteShape(PathGeometry_06(), new Matrix3x2(1F, 0F, 0F, 1F, 344.671997F, 214.841995F));; + result.StrokeBrush = ColorBrush_AlmostTeal_FF007A87(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 5F; + result.StrokeThickness = 8.39999962F; + return result; + } + + // - Layer aggregator + // Layer: E1-B + // Path 1 + CompositionSpriteShape SpriteShape_09() + { + // Offset:<344.672, 214.842> + var result = CreateSpriteShape(PathGeometry_07(), new Matrix3x2(1F, 0F, 0F, 1F, 344.671997F, 214.841995F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 5F; + result.StrokeThickness = 9.56200027F; + return result; + } + + // - Layer aggregator + // Layer: T1a-Y + // Path 1 + CompositionSpriteShape SpriteShape_10() + { + // Offset:<227.677, 234.375> + var result = CreateSpriteShape(PathGeometry_08(), new Matrix3x2(1F, 0F, 0F, 1F, 227.677002F, 234.375F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 5F; + result.StrokeThickness = 8.39999962F; + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_11() + { + // Offset:<-56.5, 83.5> + if (_spriteShape_11 != null) { return _spriteShape_11; } + var result = _spriteShape_11 = CreateSpriteShape(PathGeometry_09(), new Matrix3x2(1F, 0F, 0F, 1F, -56.5F, 83.5F));; + result.Scale = new Vector2(0F, 0F); + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 5F; + result.StrokeThickness = 9.19400024F; + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_12() + { + // Offset:<221.198, 330.758> + if (_spriteShape_12 != null) { return _spriteShape_12; } + var result = _spriteShape_12 = CreateSpriteShape(PathGeometry_10(), new Matrix3x2(1F, 0F, 0F, 1F, 221.197998F, 330.757996F));; + result.Scale = new Vector2(0F, 0F); + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Square; + result.StrokeStartCap = CompositionStrokeCap.Square; + result.StrokeEndCap = CompositionStrokeCap.Square; + result.StrokeMiterLimit = 5F; + result.StrokeThickness = 9.19400024F; + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_13() + { + // Offset:<-56.5, 83.5> + if (_spriteShape_13 != null) { return _spriteShape_13; } + var result = _spriteShape_13 = CreateSpriteShape(PathGeometry_11(), new Matrix3x2(1F, 0F, 0F, 1F, -56.5F, 83.5F));; + result.Scale = new Vector2(0F, 0F); + result.StrokeBrush = ColorBrush_AlmostTeal_FF007A87(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 5F; + result.StrokeThickness = 9.19400024F; + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_14() + { + // Offset:<186.256, 349.081> + if (_spriteShape_14 != null) { return _spriteShape_14; } + var result = _spriteShape_14 = CreateSpriteShape(PathGeometry_12(), new Matrix3x2(1F, 0F, 0F, 1F, 186.255997F, 349.080994F));; + result.Scale = new Vector2(0F, 0F); + result.StrokeBrush = ColorBrush_AlmostTeal_FF007A87(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeLineJoin = CompositionStrokeLineJoin.Round; + result.StrokeMiterLimit = 2F; + result.StrokeThickness = 8.39999962F; + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_15() + { + // Offset:<186.256, 349.081> + if (_spriteShape_15 != null) { return _spriteShape_15; } + var result = _spriteShape_15 = CreateSpriteShape(PathGeometry_13(), new Matrix3x2(1F, 0F, 0F, 1F, 186.255997F, 349.080994F));; + result.Scale = new Vector2(0F, 0F); + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeLineJoin = CompositionStrokeLineJoin.Round; + result.StrokeMiterLimit = 2F; + result.StrokeThickness = 9.19400024F; + return result; + } + + // - Layer aggregator + // Layer: O-Y + // Ellipse Path 1 + CompositionSpriteShape SpriteShape_16() + { + // Offset:<196, 267> + var result = CreateSpriteShape(Ellipse_0_0(), new Matrix3x2(1F, 0F, 0F, 1F, 196F, 267F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeThickness = 8.80000019F; + return result; + } + + // - Layer aggregator + // Layer: O-Y + // Ellipse Path 1 + CompositionSpriteShape SpriteShape_17() + { + // Offset:<196, 267> + var result = CreateSpriteShape(Ellipse_0_1(), new Matrix3x2(1F, 0F, 0F, 1F, 196F, 267F));; + result.StrokeBrush = ColorBrush_AlmostTeal_FF007A87(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeThickness = 9.19400024F; + return result; + } + + // - Layer aggregator + // Layer: T1a-Y 2 + // Path 1 + CompositionSpriteShape SpriteShape_18() + { + // Offset:<227.677, 234.375> + var result = CreateSpriteShape(PathGeometry_14(), new Matrix3x2(1F, 0F, 0F, 1F, 227.677002F, 234.375F));; + result.StrokeBrush = ColorBrush_AlmostTeal_FF007A87(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 5F; + result.StrokeThickness = 8.39999962F; + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_19() + { + // Offset:<221.198, 330.758> + if (_spriteShape_19 != null) { return _spriteShape_19; } + var result = _spriteShape_19 = CreateSpriteShape(PathGeometry_15(), new Matrix3x2(1F, 0F, 0F, 1F, 221.197998F, 330.757996F));; + result.Scale = new Vector2(0F, 0F); + result.StrokeBrush = ColorBrush_AlmostTeal_FF007A87(); + result.StrokeDashCap = CompositionStrokeCap.Square; + result.StrokeStartCap = CompositionStrokeCap.Square; + result.StrokeEndCap = CompositionStrokeCap.Square; + result.StrokeMiterLimit = 5F; + result.StrokeThickness = 9.19400024F; + return result; + } + + // - Layer aggregator + // Layer: T1a-B + // Path 1 + CompositionSpriteShape SpriteShape_20() + { + // Offset:<227.677, 234.375> + var result = CreateSpriteShape(PathGeometry_16(), new Matrix3x2(1F, 0F, 0F, 1F, 227.677002F, 234.375F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 5F; + result.StrokeThickness = 9.19400024F; + return result; + } + + // - - Layer aggregator + // - Layer: Dot-Y + // Transforms: Dot-Y + // Ellipse Path 1 + CompositionSpriteShape SpriteShape_21() + { + // Offset:<196, 267> + var geometry = Ellipse_4p7(); + var result = CreateSpriteShape(geometry, new Matrix3x2(1F, 0F, 0F, 1F, 196F, 267F), ColorBrush_White());; + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_22() + { + // Offset:<109.52901, 354.143> + if (_spriteShape_22 != null) { return _spriteShape_22; } + var result = _spriteShape_22 = CreateSpriteShape(PathGeometry_17(), new Matrix3x2(1F, 0F, 0F, 1F, 109.529007F, 354.143005F));; + result.Scale = new Vector2(0F, 0F); + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 5F; + result.StrokeThickness = 8.39999962F; + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_23() + { + // Offset:<109.52901, 354.143> + if (_spriteShape_23 != null) { return _spriteShape_23; } + var result = _spriteShape_23 = CreateSpriteShape(PathGeometry_18(), new Matrix3x2(1F, 0F, 0F, 1F, 109.529007F, 354.143005F));; + result.Scale = new Vector2(0F, 0F); + result.StrokeBrush = ColorBrush_AlmostTeal_FF007A87(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 5F; + result.StrokeThickness = 9.19400024F; + return result; + } + + // - Layer aggregator + // Layer: Dot1 + // Ellipse Path 1 + CompositionSpriteShape SpriteShape_24() + { + // Offset:<196, 267> + var geometry = Ellipse_4p7(); + var result = CreateSpriteShape(geometry, new Matrix3x2(1F, 0F, 0F, 1F, 196F, 267F), ColorBrush_White());; + return result; + } + + // - Layer aggregator + // Layer: S1-Y + // Path 1 + CompositionSpriteShape SpriteShape_25() + { + // Offset:<179.5, 333.5> + var result = CreateSpriteShape(PathGeometry_19(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 2F; + result.StrokeThickness = 1.5F; + return result; + } + + // - Layer aggregator + // Layer: S1-Y + // Path 1 + CompositionSpriteShape SpriteShape_26() + { + // Offset:<179.5, 333.5> + var result = CreateSpriteShape(PathGeometry_20(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 2F; + result.StrokeThickness = 1.5F; + return result; + } + + // - Layer aggregator + // Layer: S7 + // Path 1 + CompositionSpriteShape SpriteShape_27() + { + // Offset:<179.5, 333.5> + var result = CreateSpriteShape(PathGeometry_21(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 2F; + result.StrokeThickness = 1.5F; + return result; + } + + // - Layer aggregator + // Layer: S7 + // Path 1 + CompositionSpriteShape SpriteShape_28() + { + // Offset:<179.5, 333.5> + var result = CreateSpriteShape(PathGeometry_22(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 2F; + result.StrokeThickness = 1.5F; + return result; + } + + // - Layer aggregator + // Layer: S3-Y + // Path 1 + CompositionSpriteShape SpriteShape_29() + { + // Offset:<179.5, 333.5> + var result = CreateSpriteShape(PathGeometry_23(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 2F; + result.StrokeThickness = 2F; + return result; + } + + // - Layer aggregator + // Layer: S3-Y + // Path 1 + CompositionSpriteShape SpriteShape_30() + { + // Offset:<179.5, 333.5> + var result = CreateSpriteShape(PathGeometry_24(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 2F; + result.StrokeThickness = 2F; + return result; + } + + // - Layer aggregator + // Layer: S3-Y + // Path 1 + CompositionSpriteShape SpriteShape_31() + { + // Offset:<179.5, 333.5> + var result = CreateSpriteShape(PathGeometry_25(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 2F; + result.StrokeThickness = 2F; + return result; + } + + // - Layer aggregator + // Layer: S3-Y + // Path 1 + CompositionSpriteShape SpriteShape_32() + { + // Offset:<179.5, 333.5> + var result = CreateSpriteShape(PathGeometry_26(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 2F; + result.StrokeThickness = 2F; + return result; + } + + // - Layer aggregator + // Layer: S3-Y 2 + // Path 1 + CompositionSpriteShape SpriteShape_33() + { + // Offset:<179.5, 333.5> + var result = CreateSpriteShape(PathGeometry_27(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 2F; + result.StrokeThickness = 2F; + return result; + } + + // - Layer aggregator + // Layer: S3-Y 2 + // Path 1 + CompositionSpriteShape SpriteShape_34() + { + // Offset:<179.5, 333.5> + var result = CreateSpriteShape(PathGeometry_28(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 2F; + result.StrokeThickness = 2F; + return result; + } + + // - Layer aggregator + // Layer: S3-Y 2 + // Path 1 + CompositionSpriteShape SpriteShape_35() + { + // Offset:<179.5, 333.5> + var result = CreateSpriteShape(PathGeometry_29(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 2F; + result.StrokeThickness = 2F; + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_36() + { + // Offset:<179.5, 333.5> + if (_spriteShape_36 != null) { return _spriteShape_36; } + var result = _spriteShape_36 = CreateSpriteShape(PathGeometry_30(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; + result.Scale = new Vector2(0F, 0F); + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 2F; + result.StrokeThickness = 1.5F; + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_37() + { + // Offset:<179.5, 333.5> + if (_spriteShape_37 != null) { return _spriteShape_37; } + var result = _spriteShape_37 = CreateSpriteShape(PathGeometry_31(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; + result.Scale = new Vector2(0F, 0F); + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 2F; + result.StrokeThickness = 1.5F; + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_38() + { + // Offset:<179.5, 333.5> + if (_spriteShape_38 != null) { return _spriteShape_38; } + var result = _spriteShape_38 = CreateSpriteShape(PathGeometry_32(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; + result.Scale = new Vector2(0F, 0F); + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 2F; + result.StrokeThickness = 1.5F; + return result; + } + + // - Layer aggregator + // Layer: S3-Y 3 + // Path 1 + CompositionSpriteShape SpriteShape_39() + { + // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees + var result = CreateSpriteShape(PathGeometry_33(), new Matrix3x2(-0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 2F; + result.StrokeThickness = 2F; + return result; + } + + // - Layer aggregator + // Layer: S3-Y 3 + // Path 1 + CompositionSpriteShape SpriteShape_40() + { + // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees + var result = CreateSpriteShape(PathGeometry_34(), new Matrix3x2(-0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 2F; + result.StrokeThickness = 2F; + return result; + } + + // - Layer aggregator + // Layer: S3-Y 3 + // Path 1 + CompositionSpriteShape SpriteShape_41() + { + // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees + var result = CreateSpriteShape(PathGeometry_35(), new Matrix3x2(-0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 2F; + result.StrokeThickness = 2F; + return result; + } + + // - Layer aggregator + // Layer: S3-Y 4 + // Path 1 + CompositionSpriteShape SpriteShape_42() + { + // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, + // Scale:<0.99999994, 0.99999994> + var result = CreateSpriteShape(PathGeometry_36(), new Matrix3x2(0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 2F; + result.StrokeThickness = 2F; + return result; + } + + // - Layer aggregator + // Layer: S3-Y 4 + // Path 1 + CompositionSpriteShape SpriteShape_43() + { + // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, + // Scale:<0.99999994, 0.99999994> + var result = CreateSpriteShape(PathGeometry_37(), new Matrix3x2(0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 2F; + result.StrokeThickness = 2F; + return result; + } + + // - Layer aggregator + // Layer: S3-Y 4 + // Path 1 + CompositionSpriteShape SpriteShape_44() + { + // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, + // Scale:<0.99999994, 0.99999994> + var result = CreateSpriteShape(PathGeometry_38(), new Matrix3x2(0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F));; + result.StrokeBrush = ColorBrush_White(); + result.StrokeDashCap = CompositionStrokeCap.Round; + result.StrokeStartCap = CompositionStrokeCap.Round; + result.StrokeEndCap = CompositionStrokeCap.Round; + result.StrokeMiterLimit = 2F; + result.StrokeThickness = 2F; + return result; + } + + // The root of the composition. + ContainerVisual Root() + { + if (_root != null) { return _root; } + var result = _root = _c.CreateContainerVisual(); + var propertySet = result.Properties; + propertySet.InsertScalar("Progress", 0F); + propertySet.InsertScalar("t0", 0F); + // Layer aggregator + result.Children.InsertAtTop(ShapeVisual_0()); + return result; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_0() + { + return (_cubicBezierEasingFunction_0 == null) + ? _cubicBezierEasingFunction_0 = _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.166999996F), new Vector2(0.180000007F, 1F)) + : _cubicBezierEasingFunction_0; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_1() + { + return (_cubicBezierEasingFunction_1 == null) + ? _cubicBezierEasingFunction_1 = _c.CreateCubicBezierEasingFunction(new Vector2(0.819999993F, 0F), new Vector2(0.833000004F, 0.833000004F)) + : _cubicBezierEasingFunction_1; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_2() + { + return (_cubicBezierEasingFunction_2 == null) + ? _cubicBezierEasingFunction_2 = _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.166999996F), new Vector2(0.833000004F, 0.833000004F)) + : _cubicBezierEasingFunction_2; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_3() + { + return (_cubicBezierEasingFunction_3 == null) + ? _cubicBezierEasingFunction_3 = _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.166999996F), new Vector2(0.666999996F, 1F)) + : _cubicBezierEasingFunction_3; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_4() + { + return (_cubicBezierEasingFunction_4 == null) + ? _cubicBezierEasingFunction_4 = _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.166999996F), new Vector2(0.119999997F, 1F)) + : _cubicBezierEasingFunction_4; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_5() + { + return (_cubicBezierEasingFunction_5 == null) + ? _cubicBezierEasingFunction_5 = _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0F), new Vector2(0.119999997F, 1F)) + : _cubicBezierEasingFunction_5; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_6() + { + return (_cubicBezierEasingFunction_6 == null) + ? _cubicBezierEasingFunction_6 = _c.CreateCubicBezierEasingFunction(new Vector2(0.300999999F, 0F), new Vector2(0.666999996F, 1F)) + : _cubicBezierEasingFunction_6; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_7() + { + return (_cubicBezierEasingFunction_7 == null) + ? _cubicBezierEasingFunction_7 = _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.166999996F), new Vector2(0.0599999987F, 1F)) + : _cubicBezierEasingFunction_7; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_8() + { + return (_cubicBezierEasingFunction_8 == null) + ? _cubicBezierEasingFunction_8 = _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.166999996F), new Vector2(0.337000012F, 1F)) + : _cubicBezierEasingFunction_8; + } + + ScalarKeyFrameAnimation t0ScalarAnimation_0_to_1() + { + // Frame 35.26. + var result = CreateScalarKeyFrameAnimation(0.196966499F, 0F, StepThenHoldEasingFunction()); + result.SetReferenceParameter("_", _root); + // Frame 44. + result.InsertKeyFrame(0.245810047F, 1F, _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.197999999F), new Vector2(0.638000011F, 1F))); + // Frame 44. + result.InsertKeyFrame(0.245810062F, 0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675946F, 1F, _c.CreateCubicBezierEasingFunction(new Vector2(0.523000002F, 0F), new Vector2(0.795000017F, 1F))); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_0_to_1_0() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0F, HoldThenStepEasingFunction()); + // Frame 74. + result.InsertKeyFrame(0.413407832F, 1F, CubicBezierEasingFunction_6()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_0_to_1_1() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 1F, CubicBezierEasingFunction_6()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_0p81_to_0p734_0() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.810000002F, StepThenHoldEasingFunction()); + // Frame 16. + result.InsertKeyFrame(0.0893854722F, 0.810000002F, HoldThenStepEasingFunction()); + // Frame 27. + result.InsertKeyFrame(0.150837988F, 0.734000027F, CubicBezierEasingFunction_8()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_0p81_to_0p734_1() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.810000002F, StepThenHoldEasingFunction()); + // Frame 18. + result.InsertKeyFrame(0.100558661F, 0.810000002F, HoldThenStepEasingFunction()); + // Frame 29. + result.InsertKeyFrame(0.162011176F, 0.734000027F, CubicBezierEasingFunction_8()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_00() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); + // Frame 29. + result.InsertKeyFrame(0.162011176F, 1F, HoldThenStepEasingFunction()); + // Frame 33. + result.InsertKeyFrame(0.184357539F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 36. + result.InsertKeyFrame(0.201117322F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_01() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); + // Frame 29. + result.InsertKeyFrame(0.162011176F, 1F, HoldThenStepEasingFunction()); + // Frame 33. + result.InsertKeyFrame(0.184357539F, 0.690559983F, CubicBezierEasingFunction_2()); + // Frame 36. + result.InsertKeyFrame(0.201117322F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_02() + { + // Frame 0. + if (_tEndScalarAnimation_1_to_0_02 != null) { return _tEndScalarAnimation_1_to_0_02; } + var result = _tEndScalarAnimation_1_to_0_02 = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); + // Frame 65. + result.InsertKeyFrame(0.363128483F, 1F, HoldThenStepEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_03() + { + // Frame 0. + if (_tEndScalarAnimation_1_to_0_03 != null) { return _tEndScalarAnimation_1_to_0_03; } + var result = _tEndScalarAnimation_1_to_0_03 = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 1F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_04() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 1F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.758560002F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_05() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 1F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.704559982F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_06() + { + // Frame 0. + if (_tEndScalarAnimation_1_to_0_06 != null) { return _tEndScalarAnimation_1_to_0_06; } + var result = _tEndScalarAnimation_1_to_0_06 = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 1F, HoldThenStepEasingFunction()); + // Frame 100. + result.InsertKeyFrame(0.558659196F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_07() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 1F, HoldThenStepEasingFunction()); + // Frame 100. + result.InsertKeyFrame(0.558659196F, 0.758560002F, CubicBezierEasingFunction_2()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_08() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); + // Frame 80. + result.InsertKeyFrame(0.446927369F, 1F, HoldThenStepEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 87. + result.InsertKeyFrame(0.486033529F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_09() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, 1F, HoldThenStepEasingFunction()); + // Frame 87. + result.InsertKeyFrame(0.486033529F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_10() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 1F, HoldThenStepEasingFunction()); + // Frame 90. + result.InsertKeyFrame(0.502793312F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 94. + result.InsertKeyFrame(0.525139689F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_11() + { + // Frame 0. + if (_tEndScalarAnimation_1_to_0_11 != null) { return _tEndScalarAnimation_1_to_0_11; } + var result = _tEndScalarAnimation_1_to_0_11 = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 1F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_12() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 1F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.758560002F, CubicBezierEasingFunction_2()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_13() + { + // Frame 0. + if (_tEndScalarAnimation_1_to_0_13 != null) { return _tEndScalarAnimation_1_to_0_13; } + var result = _tEndScalarAnimation_1_to_0_13 = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 1F, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_14() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 1F, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.758560002F, CubicBezierEasingFunction_2()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E2-Y + // - ShapeGroup: Group 3 Offset:<331.664, 238.14> + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p43_0() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0F, HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, 0.430000007F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E2-B + // - Transforms: E2-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p43_1() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); + // Frame 86. + result.InsertKeyFrame(0.480446935F, 0F, HoldThenStepEasingFunction()); + // Frame 95. + result.InsertKeyFrame(0.530726254F, 0.430000007F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E3-Y + // - ShapeGroup: Group 1 Offset:<344.674, 261.877> + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p316_0() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, 0F, HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, 0.316000015F, CubicBezierEasingFunction_2()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E3-B + // - Transforms: E3-B Offset:<0.06500244, 0> + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p316_1() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, 0F, HoldThenStepEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 0.316000015F, CubicBezierEasingFunction_2()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E1-Y + // - ShapeGroup: Group 2 Offset:<344.672, 214.842> + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p375_0() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0F, HoldThenStepEasingFunction()); + // Frame 88. + result.InsertKeyFrame(0.491620123F, 0.375F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E1-B + // - Transforms: E1-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p375_1() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, 0F, HoldThenStepEasingFunction()); + // Frame 93. + result.InsertKeyFrame(0.519553065F, 0.375F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: I-Y + // - ShapeGroup: Group 6 Offset:<304.135, 282.409> + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p457_0() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0F, HoldThenStepEasingFunction()); + // Frame 88. + result.InsertKeyFrame(0.491620123F, 0.456999987F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: I-B + // - Transforms: I-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p457_1() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); + // Frame 81. + result.InsertKeyFrame(0.452513963F, 0F, HoldThenStepEasingFunction()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0.456999987F, CubicBezierEasingFunction_4()); + return result; + } + + // - - Layer aggregator + // - Layer: T2a-Y + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p5_to_1_0() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.5F, StepThenHoldEasingFunction()); + // Frame 72. + result.InsertKeyFrame(0.402234644F, 0.5F, HoldThenStepEasingFunction()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 1F, CubicBezierEasingFunction_7()); + return result; + } + + // - - Layer aggregator + // - Layer: T2a-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p5_to_1_1() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.5F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.5F, HoldThenStepEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 1F, CubicBezierEasingFunction_7()); + return result; + } + + // - - Layer aggregator + // - Layer: T1b-Y + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p117_to_1_0() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.116999999F, StepThenHoldEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, 0.116999999F, HoldThenStepEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 1F, CubicBezierEasingFunction_2()); + return result; + } + + // - - Layer aggregator + // - Layer: T1b-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p117_to_1_1() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.116999999F, StepThenHoldEasingFunction()); + // Frame 81. + result.InsertKeyFrame(0.452513963F, 0.116999999F, HoldThenStepEasingFunction()); + // Frame 88. + result.InsertKeyFrame(0.491620123F, 1F, _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.166999996F), new Vector2(0.209999993F, 1F))); + return result; + } + + // - - - Layer aggregator + // - - Layer: T1a-B + // - Transforms: T1a-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p249_to_0p891() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.248999998F, StepThenHoldEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, 0.248999998F, HoldThenStepEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, 0.890999973F, _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.166999996F), new Vector2(0.672999978F, 1F))); + return result; + } + + // - - Layer aggregator + // - Layer: T2b-Y + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p411_to_0p665_0() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.411000013F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 0.411000013F, HoldThenStepEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 0.665000021F, CubicBezierEasingFunction_4()); + return result; + } + + // - - Layer aggregator + // - Layer: T2b-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p411_to_0p665_1() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.411000013F, StepThenHoldEasingFunction()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.411000013F, HoldThenStepEasingFunction()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0.665000021F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: O-Y + // - ShapeGroup: Ellipse 1 Offset:<196, 267> + // Ellipse Path 1.EllipseGeometry + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_1_to_0p88() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 1F, HoldThenStepEasingFunction()); + // Frame 63. + result.InsertKeyFrame(0.351955295F, 0.879999995F, CubicBezierEasingFunction_2()); + return result; + } + + // - - - Layer aggregator + // - - Layer: O-Y + // - ShapeGroup: Ellipse 1 Offset:<196, 267> + // Ellipse Path 1.EllipseGeometry + // TrimStart + ScalarKeyFrameAnimation TrimStartScalarAnimation_0_to_0p399() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0F, HoldThenStepEasingFunction()); + // Frame 63. + result.InsertKeyFrame(0.351955295F, 0.300000012F, CubicBezierEasingFunction_2()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0.398999989F, _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 1F), new Vector2(0.432000011F, 1F))); + return result; + } + + // - - Layer aggregator + // - Layer: T2a-Y + // TrimStart + ScalarKeyFrameAnimation TrimStartScalarAnimation_0p5_to_0_0() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.5F, StepThenHoldEasingFunction()); + // Frame 72. + result.InsertKeyFrame(0.402234644F, 0.5F, HoldThenStepEasingFunction()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0F, CubicBezierEasingFunction_7()); + return result; + } + + // - - Layer aggregator + // - Layer: T2a-B + // TrimStart + ScalarKeyFrameAnimation TrimStartScalarAnimation_0p5_to_0_1() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.5F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.5F, HoldThenStepEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 0F, CubicBezierEasingFunction_7()); + return result; + } + + // - - Layer aggregator + // - Layer: T2b-Y + // TrimStart + ScalarKeyFrameAnimation TrimStartScalarAnimation_0p29_to_0_0() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.289999992F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 0.289999992F, HoldThenStepEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 0F, CubicBezierEasingFunction_4()); + return result; + } + + // - - Layer aggregator + // - Layer: T2b-B + // TrimStart + ScalarKeyFrameAnimation TrimStartScalarAnimation_0p29_to_0_1() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.289999992F, StepThenHoldEasingFunction()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.289999992F, HoldThenStepEasingFunction()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0F, CubicBezierEasingFunction_4()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0_to_0p249() + { + // Frame 0. + if (_tStartScalarAnimation_0_to_0p249 != null) { return _tStartScalarAnimation_0_to_0p249; } + var result = _tStartScalarAnimation_0_to_0p249 = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0F, HoldThenStepEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, 0.248999998F, _c.CreateCubicBezierEasingFunction(new Vector2(0.300999999F, 0F), new Vector2(0.833000004F, 1F))); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p8_to_0() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.800000012F, StepThenHoldEasingFunction()); + // Frame 16. + result.InsertKeyFrame(0.0893854722F, 0.800000012F, HoldThenStepEasingFunction()); + // Frame 20. + result.InsertKeyFrame(0.111731842F, 0.5F, _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.166999996F), new Vector2(0.703000009F, 0.856999993F))); + // Frame 28. + result.InsertKeyFrame(0.156424582F, 0F, _c.CreateCubicBezierEasingFunction(new Vector2(0.333000004F, 0.202000007F), new Vector2(0.938000023F, 1F))); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p8_to_0p3() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.800000012F, StepThenHoldEasingFunction()); + // Frame 18. + result.InsertKeyFrame(0.100558661F, 0.800000012F, HoldThenStepEasingFunction()); + // Frame 23. + result.InsertKeyFrame(0.128491625F, 0.5F, _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.166999996F), new Vector2(0.703000009F, 0.82099998F))); + // Frame 55. + result.InsertKeyFrame(0.30726257F, 0.300000012F, _c.CreateCubicBezierEasingFunction(new Vector2(0.0370000005F, 0.167999998F), new Vector2(0.263000011F, 1F))); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_00() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 29. + result.InsertKeyFrame(0.162011176F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 33. + result.InsertKeyFrame(0.184357539F, 0.375330001F, CubicBezierEasingFunction_2()); + // Frame 36. + result.InsertKeyFrame(0.201117322F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_01() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 29. + result.InsertKeyFrame(0.162011176F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 33. + result.InsertKeyFrame(0.184357539F, 0.253329992F, CubicBezierEasingFunction_2()); + // Frame 36. + result.InsertKeyFrame(0.201117322F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_02() + { + // Frame 0. + if (_tStartScalarAnimation_0p87_to_0_02 != null) { return _tStartScalarAnimation_0p87_to_0_02; } + var result = _tStartScalarAnimation_0p87_to_0_02 = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 65. + result.InsertKeyFrame(0.363128483F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, 0.212329999F, CubicBezierEasingFunction_2()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_03() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.421330005F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_04() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.438329995F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_05() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.506330013F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_06() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.439330012F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_07() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 100. + result.InsertKeyFrame(0.558659196F, 0.421330005F, CubicBezierEasingFunction_2()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_08() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 100. + result.InsertKeyFrame(0.558659196F, 0.438329995F, CubicBezierEasingFunction_2()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_09() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 100. + result.InsertKeyFrame(0.558659196F, 0.506330013F, CubicBezierEasingFunction_2()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_10() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 80. + result.InsertKeyFrame(0.446927369F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.212329999F, CubicBezierEasingFunction_2()); + // Frame 87. + result.InsertKeyFrame(0.486033529F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_11() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 87. + result.InsertKeyFrame(0.486033529F, 0.212329999F, CubicBezierEasingFunction_2()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_12() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 90. + result.InsertKeyFrame(0.502793312F, 0.212329999F, CubicBezierEasingFunction_2()); + // Frame 94. + result.InsertKeyFrame(0.525139689F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_13() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.421330005F, CubicBezierEasingFunction_2()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_14() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.438329995F, CubicBezierEasingFunction_2()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_15() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.506330013F, CubicBezierEasingFunction_2()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_16() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.421330005F, CubicBezierEasingFunction_2()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_17() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.438329995F, CubicBezierEasingFunction_2()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_18() + { + // Frame 0. + var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.506330013F, CubicBezierEasingFunction_2()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0F, CubicBezierEasingFunction_2()); + return result; + } + + // Layer aggregator + ShapeVisual ShapeVisual_0() + { + var result = _c.CreateShapeVisual(); + result.Size = new Vector2(375F, 667F); + var shapes = result.Shapes; + // Offset:<187.5, 333.5> + shapes.Add(SpriteShape_00()); + // Layer: Dot-Y + shapes.Add(ContainerShape_00()); + // Layer: E3-Y + shapes.Add(ContainerShape_02()); + // Layer: E3-B + shapes.Add(ContainerShape_03()); + // Layer: I-Y + shapes.Add(ContainerShape_04()); + // Layer: I-B + shapes.Add(ContainerShape_05()); + // Layer: E2-Y + shapes.Add(ContainerShape_06()); + // Layer: E2-B + shapes.Add(ContainerShape_07()); + // Layer: E1-Y + shapes.Add(ContainerShape_08()); + // Layer: E1-B + shapes.Add(ContainerShape_09()); + // Layer: T1a-Y + shapes.Add(ContainerShape_10()); + // Layer: T2b-Y + shapes.Add(SpriteShape_11()); + // Layer: T2a-Y + shapes.Add(SpriteShape_12()); + // Layer: T2b-B + shapes.Add(SpriteShape_13()); + // Layer: T1b-Y + shapes.Add(SpriteShape_14()); + // Layer: T1b-B + shapes.Add(SpriteShape_15()); + // Layer: O-Y + shapes.Add(ContainerShape_11()); + // Layer: T1a-Y 2 + shapes.Add(ContainerShape_12()); + // Layer: T2a-B + shapes.Add(SpriteShape_19()); + // Layer: T1a-B + shapes.Add(ContainerShape_13()); + // Layer: Dot-Y + shapes.Add(ContainerShape_14()); + // Layer: L-Y + shapes.Add(SpriteShape_22()); + // Layer: L-B + shapes.Add(SpriteShape_23()); + // Layer: Dot1 + shapes.Add(ContainerShape_16()); + // Layer: S1-Y + shapes.Add(ContainerShape_17()); + // Layer: S7 + shapes.Add(ContainerShape_18()); + // Layer: S3-Y + shapes.Add(ContainerShape_19()); + // Layer: S3-Y 2 + shapes.Add(ContainerShape_20()); + // Layer: S11 + shapes.Add(SpriteShape_36()); + // Layer: S12 + shapes.Add(SpriteShape_37()); + // Layer: S13 + shapes.Add(SpriteShape_38()); + // Layer: S3-Y 3 + shapes.Add(ContainerShape_21()); + // Layer: S3-Y 4 + shapes.Add(ContainerShape_22()); + return result; + } + + StepEasingFunction HoldThenStepEasingFunction() + { + if (_holdThenStepEasingFunction != null) { return _holdThenStepEasingFunction; } + var result = _holdThenStepEasingFunction = _c.CreateStepEasingFunction(); + result.IsFinalStepSingleFrame = true; + return result; + } + + StepEasingFunction StepThenHoldEasingFunction() + { + if (_stepThenHoldEasingFunction != null) { return _stepThenHoldEasingFunction; } + var result = _stepThenHoldEasingFunction = _c.CreateStepEasingFunction(); + result.IsInitialStepSingleFrame = true; + return result; + } + + // - - Layer aggregator + // - Layer: Dot-Y + // Transforms: Dot-Y + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_00() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(-153.528F, -206.753998F), StepThenHoldEasingFunction()); + // Frame 96. + result.InsertKeyFrame(0.536312878F, new Vector2(-153.528F, -206.753998F), HoldThenStepEasingFunction()); + // Frame 108. + result.InsertKeyFrame(0.603351951F, new Vector2(-134.278F, -206.753998F), _c.CreateCubicBezierEasingFunction(new Vector2(0F, 0F), new Vector2(0F, 0.811999977F))); + // Frame 115. + result.InsertKeyFrame(0.642458081F, new Vector2(-133.028F, -206.753998F), _c.CreateCubicBezierEasingFunction(new Vector2(0.389999986F, 0.707000017F), new Vector2(0.708000004F, 1F))); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_01() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(104.781998F, -2.52699995F), StepThenHoldEasingFunction()); + // Frame 96. + result.InsertKeyFrame(0.536312878F, new Vector2(104.781998F, -2.52699995F), HoldThenStepEasingFunction()); + // Frame 99. + result.InsertKeyFrame(0.553072631F, new Vector2(104.781998F, -4.52699995F), CubicBezierEasingFunction_0()); + // Frame 102. + result.InsertKeyFrame(0.569832385F, new Vector2(104.781998F, -2.52699995F), CubicBezierEasingFunction_1()); + // Frame 105. + result.InsertKeyFrame(0.586592197F, new Vector2(104.781998F, -3.09100008F), CubicBezierEasingFunction_0()); + // Frame 108. + result.InsertKeyFrame(0.603351951F, new Vector2(104.781998F, -2.52699995F), CubicBezierEasingFunction_1()); + return result; + } + + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_02() + { + // Frame 0. + if (_offsetVector2Animation_02 != null) { return _offsetVector2Animation_02; } + var result = _offsetVector2Animation_02 = CreateVector2KeyFrameAnimation(0F, new Vector2(-225.957001F, -204.322006F), StepThenHoldEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, new Vector2(-225.957001F, -204.322006F), HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, new Vector2(-207.957001F, -204.322006F), CubicBezierEasingFunction_3()); + // Frame 96. + result.InsertKeyFrame(0.536312878F, new Vector2(-210.957001F, -204.322006F), _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0F), new Vector2(0.666999996F, 1F))); + return result; + } + + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_03() + { + // Frame 0. + if (_offsetVector2Animation_03 != null) { return _offsetVector2Animation_03; } + var result = _offsetVector2Animation_03 = CreateVector2KeyFrameAnimation(0F, new Vector2(-210.207993F, -219.320999F), StepThenHoldEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, new Vector2(-210.207993F, -219.320999F), HoldThenStepEasingFunction()); + // Frame 88. + result.InsertKeyFrame(0.491620123F, new Vector2(-211.175995F, -199.352997F), CubicBezierEasingFunction_4()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, new Vector2(-210.957993F, -204.320999F), CubicBezierEasingFunction_5()); + return result; + } + + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_04() + { + // Frame 0. + if (_offsetVector2Animation_04 != null) { return _offsetVector2Animation_04; } + var result = _offsetVector2Animation_04 = CreateVector2KeyFrameAnimation(0F, new Vector2(-222.957993F, -204.322006F), StepThenHoldEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, new Vector2(-222.957993F, -204.322006F), HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, new Vector2(-210.957993F, -204.322006F), CubicBezierEasingFunction_4()); + return result; + } + + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_05() + { + // Frame 0. + if (_offsetVector2Animation_05 != null) { return _offsetVector2Animation_05; } + var result = _offsetVector2Animation_05 = CreateVector2KeyFrameAnimation(0F, new Vector2(-230.957001F, -205.695999F), StepThenHoldEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, new Vector2(-230.957001F, -205.695999F), HoldThenStepEasingFunction()); + // Frame 88. + result.InsertKeyFrame(0.491620123F, new Vector2(-206.957001F, -205.695999F), CubicBezierEasingFunction_4()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, new Vector2(-210.957001F, -205.695999F), CubicBezierEasingFunction_5()); + return result; + } + + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_06() + { + // Frame 0. + if (_offsetVector2Animation_06 != null) { return _offsetVector2Animation_06; } + var result = _offsetVector2Animation_06 = CreateVector2KeyFrameAnimation(0F, new Vector2(-210.957001F, -201.322006F), StepThenHoldEasingFunction()); + // Frame 56. + result.InsertKeyFrame(0.312849164F, new Vector2(-210.957001F, -201.322006F), HoldThenStepEasingFunction()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, new Vector2(-210.957001F, -204.322006F), CubicBezierEasingFunction_3()); + return result; + } + + // - Layer aggregator + // Layer: O-Y + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_07() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(-259.583008F, -193.447006F), StepThenHoldEasingFunction()); + result.SetReferenceParameter("_", _root); + // Frame 31. + result.InsertKeyFrame(0.17318435F, new Vector2(-259.583008F, -193.447006F), HoldThenStepEasingFunction()); + // Frame 35.26. + result.InsertKeyFrame(0.196966484F, new Vector2(-250.582993F, -258.946991F), CubicBezierEasingFunction_2()); + // Frame 44. + result.InsertExpressionKeyFrame(0.245810047F, "Pow(1-_.t0,3)*Vector2(-250.583,-258.947)+(3*Square(1-_.t0)*_.t0*Vector2(-250.583,-258.947))+(3*(1-_.t0)*Square(_.t0)*Vector2(-249.6143,-337.5837))+(Pow(_.t0,3)*Vector2(-230.458,-339.322))", StepThenHoldEasingFunction()); + // Frame 54. + result.InsertExpressionKeyFrame(0.301675946F, "Pow(1-_.t0,3)*Vector2(-230.458,-339.322)+(3*Square(1-_.t0)*_.t0*Vector2(-214.2505,-340.7927))+(3*(1-_.t0)*Square(_.t0)*Vector2(-210.958,-164.322))+(Pow(_.t0,3)*Vector2(-210.958,-164.322))", StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, new Vector2(-210.957993F, -164.322006F), StepThenHoldEasingFunction()); + // Frame 63. + result.InsertKeyFrame(0.351955295F, new Vector2(-210.957993F, -207.322006F), _c.CreateCubicBezierEasingFunction(new Vector2(0.180000007F, 0F), new Vector2(0.34799999F, 1F))); + // Frame 73. + result.InsertKeyFrame(0.407821238F, new Vector2(-210.957993F, -204.322006F), _c.CreateCubicBezierEasingFunction(new Vector2(0.693000019F, 0F), new Vector2(0.270000011F, 1F))); + return result; + } + + // - - Layer aggregator + // - Layer: Dot-Y + // Transforms: Dot-Y + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_08() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(-156.916F, -206.503998F), StepThenHoldEasingFunction()); + // Frame 28. + result.InsertKeyFrame(0.156424582F, new Vector2(-156.916F, -206.503998F), HoldThenStepEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, new Vector2(-117.416F, -206.503998F), CubicBezierEasingFunction_2()); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_09() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(-93.6669998F, -51.8180008F), StepThenHoldEasingFunction()); + // Frame 28. + result.InsertKeyFrame(0.156424582F, new Vector2(-93.6669998F, -51.8180008F), HoldThenStepEasingFunction()); + // Frame 40. + result.InsertKeyFrame(0.223463684F, new Vector2(-93.6669998F, -132.817993F), _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.166999996F), new Vector2(0.25999999F, 1F))); + // Frame 54. + result.InsertKeyFrame(0.301675975F, new Vector2(-93.6669998F, 42.0569992F), _c.CreateCubicBezierEasingFunction(new Vector2(0.74000001F, 0F), new Vector2(0.833000004F, 0.833000004F))); + return result; + } + + // - Layer aggregator + // Layer: Dot1 + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_10() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(98.9800034F, -157.509995F), HoldThenStepEasingFunction()); + // Frame 18.69. + result.InsertKeyFrame(0.104395606F, new Vector2(-161.020004F, -157.509995F), _c.CreateCubicBezierEasingFunction(new Vector2(0.823000014F, 0F), new Vector2(0.833000004F, 0.833000004F))); + return result; + } + + // Radius + Vector2KeyFrameAnimation RadiusVector2Animation() + { + // Frame 0. + if (_radiusVector2Animation != null) { return _radiusVector2Animation; } + var result = _radiusVector2Animation = CreateVector2KeyFrameAnimation(0F, new Vector2(1.5F, 1.5F), StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, new Vector2(1.5F, 1.5F), HoldThenStepEasingFunction()); + // Frame 61. + result.InsertKeyFrame(0.340782136F, new Vector2(22.2999992F, 22.2999992F), _c.CreateCubicBezierEasingFunction(new Vector2(0.333000004F, 0F), new Vector2(0.666999996F, 1F))); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_00() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 96. + result.InsertKeyFrame(0.536312878F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E3-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_01() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + // Frame 102. + result.InsertKeyFrame(0.569832385F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E3-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_02() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: I-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_03() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + // Frame 93. + result.InsertKeyFrame(0.519553065F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + return result; + } + + Vector2KeyFrameAnimation ShapeVisibilityAnimation_04() + { + // Frame 0. + if (_shapeVisibilityAnimation_04 != null) { return _shapeVisibilityAnimation_04; } + var result = _shapeVisibilityAnimation_04 = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 81. + result.InsertKeyFrame(0.452513963F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E2-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_05() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + // Frame 96. + result.InsertKeyFrame(0.536312878F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E2-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_06() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 86. + result.InsertKeyFrame(0.480446935F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E1-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_07() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + // Frame 94. + result.InsertKeyFrame(0.525139689F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E1-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_08() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T1a-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_09() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 59. + result.InsertKeyFrame(0.329608947F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + // Frame 156. + result.InsertKeyFrame(0.87150836F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T2b-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_10() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T2a-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_11() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 72. + result.InsertKeyFrame(0.402234644F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + // Frame 89. + result.InsertKeyFrame(0.497206718F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T2b-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_12() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T1b-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_13() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + // Frame 161. + result.InsertKeyFrame(0.899441361F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: O-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_14() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T1a-Y 2 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_15() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 59. + result.InsertKeyFrame(0.329608947F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T2a-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_16() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T1a-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_17() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_18() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 28. + result.InsertKeyFrame(0.156424582F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: L-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_19() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 16. + result.InsertKeyFrame(0.0893854722F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: L-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_20() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 18. + result.InsertKeyFrame(0.100558661F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: Dot1 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_21() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + // Frame 17. + result.InsertKeyFrame(0.0949720666F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S1-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_22() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 30. + result.InsertKeyFrame(0.167597771F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + // Frame 37. + result.InsertKeyFrame(0.206703916F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S7 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_23() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 65. + result.InsertKeyFrame(0.363128483F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S3-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_24() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 2 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_25() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S11 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_26() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 80. + result.InsertKeyFrame(0.446927369F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + // Frame 90. + result.InsertKeyFrame(0.502793312F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S12 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_27() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + // Frame 94. + result.InsertKeyFrame(0.525139689F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S13 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_28() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + // Frame 95. + result.InsertKeyFrame(0.530726254F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 3 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_29() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 4 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_30() + { + // Frame 0. + var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); + return result; + } + + internal LottieLogo1_AnimatedVisual( + Compositor compositor + ) + { + _c = compositor; + _reusableExpressionAnimation = compositor.CreateExpressionAnimation(); + Root(); + } + + public Visual RootVisual => _root; + public TimeSpan Duration => TimeSpan.FromTicks(c_durationTicks); + public Vector2 Size => new Vector2(375F, 667F); + void IDisposable.Dispose() => _root?.Dispose(); + + public void CreateAnimations() + { + _containerShape_00.StartAnimation("Offset", OffsetVector2Animation_01(), AnimationController_0()); + _containerShape_00.StartAnimation("Scale", ShapeVisibilityAnimation_00(), AnimationController_0()); + _containerShape_01.StartAnimation("Offset", OffsetVector2Animation_00(), AnimationController_0()); + _containerShape_02.StartAnimation("Offset", OffsetVector2Animation_02(), AnimationController_0()); + _containerShape_02.StartAnimation("Scale", ShapeVisibilityAnimation_01(), AnimationController_0()); + _containerShape_03.StartAnimation("Offset", OffsetVector2Animation_02(), AnimationController_0()); + _containerShape_03.StartAnimation("Scale", ShapeVisibilityAnimation_02(), AnimationController_0()); + _containerShape_04.StartAnimation("Offset", OffsetVector2Animation_03(), AnimationController_0()); + _containerShape_04.StartAnimation("Scale", ShapeVisibilityAnimation_03(), AnimationController_0()); + _containerShape_05.StartAnimation("Offset", OffsetVector2Animation_03(), AnimationController_0()); + _containerShape_05.StartAnimation("Scale", ShapeVisibilityAnimation_04(), AnimationController_0()); + _containerShape_06.StartAnimation("Offset", OffsetVector2Animation_04(), AnimationController_0()); + _containerShape_06.StartAnimation("Scale", ShapeVisibilityAnimation_05(), AnimationController_0()); + _containerShape_07.StartAnimation("Offset", OffsetVector2Animation_04(), AnimationController_0()); + _containerShape_07.StartAnimation("Scale", ShapeVisibilityAnimation_06(), AnimationController_0()); + _containerShape_08.StartAnimation("Offset", OffsetVector2Animation_05(), AnimationController_0()); + _containerShape_08.StartAnimation("Scale", ShapeVisibilityAnimation_07(), AnimationController_0()); + _containerShape_09.StartAnimation("Offset", OffsetVector2Animation_05(), AnimationController_0()); + _containerShape_09.StartAnimation("Scale", ShapeVisibilityAnimation_08(), AnimationController_0()); + _containerShape_10.StartAnimation("Offset", OffsetVector2Animation_06(), AnimationController_0()); + _containerShape_10.StartAnimation("Scale", ShapeVisibilityAnimation_09(), AnimationController_0()); + _containerShape_11.StartAnimation("Offset", OffsetVector2Animation_07(), AnimationController_0()); + _containerShape_11.StartAnimation("Scale", ShapeVisibilityAnimation_14(), AnimationController_0()); + _containerShape_12.StartAnimation("Offset", OffsetVector2Animation_06(), AnimationController_0()); + _containerShape_12.StartAnimation("Scale", ShapeVisibilityAnimation_15(), AnimationController_0()); + _containerShape_13.StartAnimation("Offset", OffsetVector2Animation_06(), AnimationController_0()); + _containerShape_13.StartAnimation("Scale", ShapeVisibilityAnimation_17(), AnimationController_0()); + _containerShape_14.StartAnimation("Offset", OffsetVector2Animation_09(), AnimationController_0()); + _containerShape_14.StartAnimation("Scale", ShapeVisibilityAnimation_18(), AnimationController_0()); + _containerShape_15.StartAnimation("Offset", OffsetVector2Animation_08(), AnimationController_0()); + _containerShape_16.StartAnimation("Offset", OffsetVector2Animation_10(), AnimationController_1()); + _containerShape_16.StartAnimation("Scale", ShapeVisibilityAnimation_21(), AnimationController_0()); + _containerShape_17.StartAnimation("Scale", ShapeVisibilityAnimation_22(), AnimationController_0()); + _containerShape_18.StartAnimation("Scale", ShapeVisibilityAnimation_23(), AnimationController_0()); + _containerShape_19.StartAnimation("Scale", ShapeVisibilityAnimation_24(), AnimationController_0()); + _containerShape_20.StartAnimation("Scale", ShapeVisibilityAnimation_25(), AnimationController_0()); + _containerShape_21.StartAnimation("Scale", ShapeVisibilityAnimation_29(), AnimationController_0()); + _containerShape_22.StartAnimation("Scale", ShapeVisibilityAnimation_30(), AnimationController_0()); + _ellipse_0_0.StartAnimation("Radius", RadiusVector2Animation(), AnimationController_0()); + _ellipse_0_1.StartAnimation("Radius", RadiusVector2Animation(), AnimationController_0()); + _ellipse_0_1.StartAnimation("TrimStart", TrimStartScalarAnimation_0_to_0p399(), AnimationController_0()); + _ellipse_0_1.StartAnimation("TrimEnd", TrimEndScalarAnimation_1_to_0p88(), AnimationController_0()); + _pathGeometry_00.StartAnimation("TrimEnd", TrimEndScalarAnimation_0_to_0p316_0(), AnimationController_0()); + _pathGeometry_01.StartAnimation("TrimEnd", TrimEndScalarAnimation_0_to_0p316_1(), AnimationController_0()); + _pathGeometry_02.StartAnimation("TrimEnd", TrimEndScalarAnimation_0_to_0p457_0(), AnimationController_0()); + _pathGeometry_03.StartAnimation("TrimEnd", TrimEndScalarAnimation_0_to_0p457_1(), AnimationController_0()); + _pathGeometry_04.StartAnimation("TrimEnd", TrimEndScalarAnimation_0_to_0p43_0(), AnimationController_0()); + _pathGeometry_05.StartAnimation("TrimEnd", TrimEndScalarAnimation_0_to_0p43_1(), AnimationController_0()); + _pathGeometry_06.StartAnimation("TrimEnd", TrimEndScalarAnimation_0_to_0p375_0(), AnimationController_0()); + _pathGeometry_07.StartAnimation("TrimEnd", TrimEndScalarAnimation_0_to_0p375_1(), AnimationController_0()); + _pathGeometry_08.StartAnimation("TStart", TStartScalarAnimation_0_to_0p249(), AnimationController_0()); + _pathGeometry_08.StartAnimation("TEnd", TEndScalarAnimation_0_to_1_0(), AnimationController_0()); + _pathGeometry_09.StartAnimation("TrimStart", TrimStartScalarAnimation_0p29_to_0_0(), AnimationController_0()); + _pathGeometry_09.StartAnimation("TrimEnd", TrimEndScalarAnimation_0p411_to_0p665_0(), AnimationController_0()); + _pathGeometry_10.StartAnimation("TrimStart", TrimStartScalarAnimation_0p5_to_0_0(), AnimationController_0()); + _pathGeometry_10.StartAnimation("TrimEnd", TrimEndScalarAnimation_0p5_to_1_0(), AnimationController_0()); + _pathGeometry_11.StartAnimation("TrimStart", TrimStartScalarAnimation_0p29_to_0_1(), AnimationController_0()); + _pathGeometry_11.StartAnimation("TrimEnd", TrimEndScalarAnimation_0p411_to_0p665_1(), AnimationController_0()); + _pathGeometry_12.StartAnimation("TrimEnd", TrimEndScalarAnimation_0p117_to_1_0(), AnimationController_0()); + _pathGeometry_13.StartAnimation("TrimEnd", TrimEndScalarAnimation_0p117_to_1_1(), AnimationController_0()); + _pathGeometry_14.StartAnimation("TStart", TStartScalarAnimation_0_to_0p249(), AnimationController_0()); + _pathGeometry_14.StartAnimation("TEnd", TEndScalarAnimation_0_to_1_1(), AnimationController_0()); + _pathGeometry_15.StartAnimation("TrimStart", TrimStartScalarAnimation_0p5_to_0_1(), AnimationController_0()); + _pathGeometry_15.StartAnimation("TrimEnd", TrimEndScalarAnimation_0p5_to_1_1(), AnimationController_0()); + _pathGeometry_16.StartAnimation("TrimEnd", TrimEndScalarAnimation_0p249_to_0p891(), AnimationController_0()); + _pathGeometry_17.StartAnimation("TStart", TStartScalarAnimation_0p8_to_0(), AnimationController_0()); + _pathGeometry_17.StartAnimation("TEnd", TEndScalarAnimation_0p81_to_0p734_0(), AnimationController_0()); + _pathGeometry_18.StartAnimation("TStart", TStartScalarAnimation_0p8_to_0p3(), AnimationController_0()); + _pathGeometry_18.StartAnimation("TEnd", TEndScalarAnimation_0p81_to_0p734_1(), AnimationController_0()); + _pathGeometry_19.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_00(), AnimationController_0()); + _pathGeometry_19.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_00(), AnimationController_0()); + _pathGeometry_20.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_01(), AnimationController_0()); + _pathGeometry_20.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_01(), AnimationController_0()); + _pathGeometry_21.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_02(), AnimationController_0()); + _pathGeometry_21.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_02(), AnimationController_0()); + _pathGeometry_22.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_02(), AnimationController_0()); + _pathGeometry_22.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_02(), AnimationController_0()); + _pathGeometry_23.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_03(), AnimationController_0()); + _pathGeometry_23.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_03(), AnimationController_0()); + _pathGeometry_24.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_04(), AnimationController_0()); + _pathGeometry_24.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_03(), AnimationController_0()); + _pathGeometry_25.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_05(), AnimationController_0()); + _pathGeometry_25.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_04(), AnimationController_0()); + _pathGeometry_26.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_06(), AnimationController_0()); + _pathGeometry_26.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_05(), AnimationController_0()); + _pathGeometry_27.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_07(), AnimationController_0()); + _pathGeometry_27.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_06(), AnimationController_0()); + _pathGeometry_28.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_08(), AnimationController_0()); + _pathGeometry_28.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_06(), AnimationController_0()); + _pathGeometry_29.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_09(), AnimationController_0()); + _pathGeometry_29.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_07(), AnimationController_0()); + _pathGeometry_30.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_10(), AnimationController_0()); + _pathGeometry_30.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_08(), AnimationController_0()); + _pathGeometry_31.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_11(), AnimationController_0()); + _pathGeometry_31.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_09(), AnimationController_0()); + _pathGeometry_32.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_12(), AnimationController_0()); + _pathGeometry_32.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_10(), AnimationController_0()); + _pathGeometry_33.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_13(), AnimationController_0()); + _pathGeometry_33.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_11(), AnimationController_0()); + _pathGeometry_34.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_14(), AnimationController_0()); + _pathGeometry_34.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_11(), AnimationController_0()); + _pathGeometry_35.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_15(), AnimationController_0()); + _pathGeometry_35.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_12(), AnimationController_0()); + _pathGeometry_36.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_16(), AnimationController_0()); + _pathGeometry_36.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_13(), AnimationController_0()); + _pathGeometry_37.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_17(), AnimationController_0()); + _pathGeometry_37.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_13(), AnimationController_0()); + _pathGeometry_38.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_18(), AnimationController_0()); + _pathGeometry_38.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_14(), AnimationController_0()); + _spriteShape_11.StartAnimation("Scale", ShapeVisibilityAnimation_10(), AnimationController_0()); + _spriteShape_12.StartAnimation("Scale", ShapeVisibilityAnimation_11(), AnimationController_0()); + _spriteShape_13.StartAnimation("Scale", ShapeVisibilityAnimation_12(), AnimationController_0()); + _spriteShape_14.StartAnimation("Scale", ShapeVisibilityAnimation_13(), AnimationController_0()); + _spriteShape_15.StartAnimation("Scale", ShapeVisibilityAnimation_04(), AnimationController_0()); + _spriteShape_19.StartAnimation("Scale", ShapeVisibilityAnimation_16(), AnimationController_0()); + _spriteShape_22.StartAnimation("Scale", ShapeVisibilityAnimation_19(), AnimationController_0()); + _spriteShape_23.StartAnimation("Scale", ShapeVisibilityAnimation_20(), AnimationController_0()); + _spriteShape_36.StartAnimation("Scale", ShapeVisibilityAnimation_26(), AnimationController_0()); + _spriteShape_37.StartAnimation("Scale", ShapeVisibilityAnimation_27(), AnimationController_0()); + _spriteShape_38.StartAnimation("Scale", ShapeVisibilityAnimation_28(), AnimationController_0()); + _root.Properties.StartAnimation("t0", t0ScalarAnimation_0_to_1(), AnimationController_0()); + } + + public void DestroyAnimations() + { + _containerShape_00.StopAnimation("Offset"); + _containerShape_00.StopAnimation("Scale"); + _containerShape_01.StopAnimation("Offset"); + _containerShape_02.StopAnimation("Offset"); + _containerShape_02.StopAnimation("Scale"); + _containerShape_03.StopAnimation("Offset"); + _containerShape_03.StopAnimation("Scale"); + _containerShape_04.StopAnimation("Offset"); + _containerShape_04.StopAnimation("Scale"); + _containerShape_05.StopAnimation("Offset"); + _containerShape_05.StopAnimation("Scale"); + _containerShape_06.StopAnimation("Offset"); + _containerShape_06.StopAnimation("Scale"); + _containerShape_07.StopAnimation("Offset"); + _containerShape_07.StopAnimation("Scale"); + _containerShape_08.StopAnimation("Offset"); + _containerShape_08.StopAnimation("Scale"); + _containerShape_09.StopAnimation("Offset"); + _containerShape_09.StopAnimation("Scale"); + _containerShape_10.StopAnimation("Offset"); + _containerShape_10.StopAnimation("Scale"); + _containerShape_11.StopAnimation("Offset"); + _containerShape_11.StopAnimation("Scale"); + _containerShape_12.StopAnimation("Offset"); + _containerShape_12.StopAnimation("Scale"); + _containerShape_13.StopAnimation("Offset"); + _containerShape_13.StopAnimation("Scale"); + _containerShape_14.StopAnimation("Offset"); + _containerShape_14.StopAnimation("Scale"); + _containerShape_15.StopAnimation("Offset"); + _containerShape_16.StopAnimation("Offset"); + _containerShape_16.StopAnimation("Scale"); + _containerShape_17.StopAnimation("Scale"); + _containerShape_18.StopAnimation("Scale"); + _containerShape_19.StopAnimation("Scale"); + _containerShape_20.StopAnimation("Scale"); + _containerShape_21.StopAnimation("Scale"); + _containerShape_22.StopAnimation("Scale"); + _ellipse_0_0.StopAnimation("Radius"); + _ellipse_0_1.StopAnimation("Radius"); + _ellipse_0_1.StopAnimation("TrimStart"); + _ellipse_0_1.StopAnimation("TrimEnd"); + _pathGeometry_00.StopAnimation("TrimEnd"); + _pathGeometry_01.StopAnimation("TrimEnd"); + _pathGeometry_02.StopAnimation("TrimEnd"); + _pathGeometry_03.StopAnimation("TrimEnd"); + _pathGeometry_04.StopAnimation("TrimEnd"); + _pathGeometry_05.StopAnimation("TrimEnd"); + _pathGeometry_06.StopAnimation("TrimEnd"); + _pathGeometry_07.StopAnimation("TrimEnd"); + _pathGeometry_08.StopAnimation("TStart"); + _pathGeometry_08.StopAnimation("TEnd"); + _pathGeometry_09.StopAnimation("TrimStart"); + _pathGeometry_09.StopAnimation("TrimEnd"); + _pathGeometry_10.StopAnimation("TrimStart"); + _pathGeometry_10.StopAnimation("TrimEnd"); + _pathGeometry_11.StopAnimation("TrimStart"); + _pathGeometry_11.StopAnimation("TrimEnd"); + _pathGeometry_12.StopAnimation("TrimEnd"); + _pathGeometry_13.StopAnimation("TrimEnd"); + _pathGeometry_14.StopAnimation("TStart"); + _pathGeometry_14.StopAnimation("TEnd"); + _pathGeometry_15.StopAnimation("TrimStart"); + _pathGeometry_15.StopAnimation("TrimEnd"); + _pathGeometry_16.StopAnimation("TrimEnd"); + _pathGeometry_17.StopAnimation("TStart"); + _pathGeometry_17.StopAnimation("TEnd"); + _pathGeometry_18.StopAnimation("TStart"); + _pathGeometry_18.StopAnimation("TEnd"); + _pathGeometry_19.StopAnimation("TStart"); + _pathGeometry_19.StopAnimation("TEnd"); + _pathGeometry_20.StopAnimation("TStart"); + _pathGeometry_20.StopAnimation("TEnd"); + _pathGeometry_21.StopAnimation("TStart"); + _pathGeometry_21.StopAnimation("TEnd"); + _pathGeometry_22.StopAnimation("TStart"); + _pathGeometry_22.StopAnimation("TEnd"); + _pathGeometry_23.StopAnimation("TStart"); + _pathGeometry_23.StopAnimation("TEnd"); + _pathGeometry_24.StopAnimation("TStart"); + _pathGeometry_24.StopAnimation("TEnd"); + _pathGeometry_25.StopAnimation("TStart"); + _pathGeometry_25.StopAnimation("TEnd"); + _pathGeometry_26.StopAnimation("TStart"); + _pathGeometry_26.StopAnimation("TEnd"); + _pathGeometry_27.StopAnimation("TStart"); + _pathGeometry_27.StopAnimation("TEnd"); + _pathGeometry_28.StopAnimation("TStart"); + _pathGeometry_28.StopAnimation("TEnd"); + _pathGeometry_29.StopAnimation("TStart"); + _pathGeometry_29.StopAnimation("TEnd"); + _pathGeometry_30.StopAnimation("TStart"); + _pathGeometry_30.StopAnimation("TEnd"); + _pathGeometry_31.StopAnimation("TStart"); + _pathGeometry_31.StopAnimation("TEnd"); + _pathGeometry_32.StopAnimation("TStart"); + _pathGeometry_32.StopAnimation("TEnd"); + _pathGeometry_33.StopAnimation("TStart"); + _pathGeometry_33.StopAnimation("TEnd"); + _pathGeometry_34.StopAnimation("TStart"); + _pathGeometry_34.StopAnimation("TEnd"); + _pathGeometry_35.StopAnimation("TStart"); + _pathGeometry_35.StopAnimation("TEnd"); + _pathGeometry_36.StopAnimation("TStart"); + _pathGeometry_36.StopAnimation("TEnd"); + _pathGeometry_37.StopAnimation("TStart"); + _pathGeometry_37.StopAnimation("TEnd"); + _pathGeometry_38.StopAnimation("TStart"); + _pathGeometry_38.StopAnimation("TEnd"); + _spriteShape_11.StopAnimation("Scale"); + _spriteShape_12.StopAnimation("Scale"); + _spriteShape_13.StopAnimation("Scale"); + _spriteShape_14.StopAnimation("Scale"); + _spriteShape_15.StopAnimation("Scale"); + _spriteShape_19.StopAnimation("Scale"); + _spriteShape_22.StopAnimation("Scale"); + _spriteShape_23.StopAnimation("Scale"); + _spriteShape_36.StopAnimation("Scale"); + _spriteShape_37.StopAnimation("Scale"); + _spriteShape_38.StopAnimation("Scale"); + _root.Properties.StopAnimation("t0"); + } + + } + } +} diff --git a/LottieWinRT/LottieVisualSourceWinRT.cs b/LottieWinRT/LottieVisualSourceWinRT.cs new file mode 100644 index 000000000..00bad38d2 --- /dev/null +++ b/LottieWinRT/LottieVisualSourceWinRT.cs @@ -0,0 +1,81 @@ +using System.Diagnostics; +using CommunityToolkit.WinUI.Lottie; +using Microsoft.UI.Composition; +using Microsoft.UI.Xaml.Controls; + +namespace LottieWinRT +{ + public sealed class LottieVisualSourceWinRT + { + // C# Events exported to WinRT... don't work??? I get a Win32Exception when generating the code??? + //public event EventHandler? AnimatedVisualInvalidated; + + //public IAnimatedVisualSource? LoadLottie(string uri) + //{ + // LottieVisualSource? source = LottieVisualSource.CreateFromString(uri); + // if (source != null) + // { + // source.AnimatedVisualInvalidated += Source_AnimatedVisualInvalidated; + // } + + // return source; + //} + + //private void Source_AnimatedVisualInvalidated(IDynamicAnimatedVisualSource? sender, object? args) + //{ + // AnimatedVisualInvalidated?.Invoke(this, EventArgs.Empty); + //} + Compositor? _compositor; + ContainerVisual? _rootVisual; + LottieVisualSource? _lottieVisualSource; + + public void SetUpLottie(Compositor compositor, ContainerVisual parent, string uri) + { + _compositor = compositor; + _rootVisual = parent; + + _lottieVisualSource = LottieVisualSource.CreateFromString(uri); + if (_lottieVisualSource != null) + { + _lottieVisualSource.AnimatedVisualInvalidated += LottieVisualSource_AnimatedVisualInvalidated; + object? diagnostics = null; + if (_lottieVisualSource.TryCreateAnimatedVisual(_compositor, out diagnostics) != null) + { + LottieVisualSource_AnimatedVisualInvalidated(_lottieVisualSource, null); + } + } + } + + private void LottieVisualSource_AnimatedVisualInvalidated(IDynamicAnimatedVisualSource? sender, object? args) + { + object? diagnostics = null; + IAnimatedVisual? animatedVisual = sender?.TryCreateAnimatedVisual(_compositor, out diagnostics); + + if (_rootVisual != null) + { + _rootVisual.Children.RemoveAll(); + _rootVisual.Children.InsertAtTop(animatedVisual?.RootVisual); + Debug.WriteLine("Added Lottie visual to root. beep boop"); + + if (_compositor != null) + { + var animation = _compositor.CreateScalarKeyFrameAnimation(); + if (animatedVisual != null) + { + animation.Duration = animatedVisual.Duration; + var linearEasing = _compositor.CreateLinearEasingFunction(); + + // Play from beginning to end. + animation.InsertKeyFrame(0, 0); + animation.InsertKeyFrame(1, 1, linearEasing); + + animation.IterationBehavior = AnimationIterationBehavior.Forever; + + // Start the animation and get the controller. + animatedVisual.RootVisual.Properties.StartAnimation("Progress", animation); + } + } + } + } + } +} diff --git a/LottieWinRT/LottieWinRT.csproj b/LottieWinRT/LottieWinRT.csproj new file mode 100644 index 000000000..72cc372ee --- /dev/null +++ b/LottieWinRT/LottieWinRT.csproj @@ -0,0 +1,21 @@ + + + + net7.0-windows10.0.19041.0 + x64;x86;ARM64 + enable + enable + true + LottieWinRT + win10-x86;win10-x64;win10-arm64 + false + + + + + + + + + + diff --git a/source/Lottie/Lottie.projitems b/source/Lottie/Lottie.projitems index 3dab6596b..a10caaed2 100644 --- a/source/Lottie/Lottie.projitems +++ b/source/Lottie/Lottie.projitems @@ -18,6 +18,7 @@ + diff --git a/source/Lottie/LottieVisualSource2.cs b/source/Lottie/LottieVisualSource2.cs new file mode 100644 index 000000000..f5d65678d --- /dev/null +++ b/source/Lottie/LottieVisualSource2.cs @@ -0,0 +1,336 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +#nullable enable + +using System; +using System.Collections.Generic; +using System.Linq; +using System.Runtime.InteropServices.WindowsRuntime; +using System.Threading.Tasks; +using CommunityToolkit.WinUI.Lottie; +using Microsoft.UI.Xaml.Controls; +using Windows.Foundation; +using Windows.Foundation.Metadata; +using Windows.Storage; +using Windows.Storage.Streams; + +#if WINAPPSDK +using Microsoft.UI.Composition; +using Microsoft.UI.Xaml; +#else +using Windows.UI.Composition; +using Windows.UI.Xaml; +#endif + +namespace CommunityToolkit.WinUI.Lottie +{ + /// + /// An for a Lottie composition. This allows + /// a Lottie to be specified as the source for a . + /// + public sealed class LottieVisualSource2 : IDynamicAnimatedVisualSource + { +#if WINAPPSDK + HashSet> _compositionInvalidatedEventTokenTable = new HashSet>(); +#else + EventRegistrationTokenTable>? _compositionInvalidatedEventTokenTable; +#endif + + int _loadVersion; + Uri? _uriSource; + AnimatedVisualFactory? _animatedVisualFactory; + ImageAssetHandler? _imageAssetHandler; + LottieVisualOptions _options; + + ///// + ///// Gets the options for the . + ///// + //// Optimize Lotties by default. Optimization takes a little longer but usually produces much + //// more efficient translations. The only reason someone would turn optimization off is if + //// the time to translate is too high, but in that case the Lottie is probably going to perform + //// so badly on the machine that it won't really be usable with our without optimization. + //public static DependencyProperty OptionsProperty { get; } = + // RegisterDp(nameof(Options), LottieVisualOptions.Optimize); + + ///// + ///// Gets the URI from which to load a JSON Lottie file. + ///// + //public static DependencyProperty UriSourceProperty { get; } = + // RegisterDp(nameof(UriSource), null, + // (owner, oldValue, newValue) => owner.HandleUriSourcePropertyChanged(oldValue, newValue)); + + //static DependencyProperty RegisterDp(string propertyName, T defaultValue) => + // DependencyProperty.Register(propertyName, typeof(T), typeof(LottieVisualSource), new PropertyMetadata(defaultValue)); + + //static DependencyProperty RegisterDp(string propertyName, T? defaultValue, Action callback) + // where T : class + // => + // DependencyProperty.Register(propertyName, typeof(T), typeof(LottieVisualSource), + // new PropertyMetadata(defaultValue, (d, e) => callback((LottieVisualSource)d, (T)e.OldValue, (T)e.NewValue))); + + /// + /// Initializes a new instance of the class. + /// + public LottieVisualSource2() + { + } + + /// + /// Gets or sets options for how the Lottie is loaded. + /// + public LottieVisualOptions Options + { + get => _options; + set => _options = value; + } + + /// + /// Gets or sets the Uniform Resource Identifier (URI) of the JSON source file for this . + /// + public Uri? UriSource + { + get => _uriSource; + set => HandleUriSourcePropertyChanged(_uriSource, value); + } + + /// + /// Called by XAML to convert a string to an . + /// + /// The for the given url. + public static LottieVisualSource2? CreateFromString(string uri) + { + var uriUri = Uris.StringToUri(uri); + if (uriUri is null) + { + return null; + } + + return new LottieVisualSource2 { UriSource = uriUri }; + } + + /// + /// Sets the source for the . + /// + /// A stream containing the text of a JSON Lottie file encoded as UTF-8. + /// An that completes when the load completes or fails. + [Overload("SetSourceStreamAsync")] + public IAsyncAction SetSourceAsync(IInputStream stream) + { + _uriSource = null; + return LoadAsync(InputStreamLoader.LoadAsync(_imageAssetHandler, stream, Options)).AsAsyncAction(); + } + + /// + /// Sets the source for the . + /// + /// A file that is a JSON Lottie file. + /// An that completes when the load completes or fails. + [Overload("SetSourceFileAsync")] + public IAsyncAction SetSourceAsync(StorageFile file) + { + _uriSource = null; + return LoadAsync(StorageFileLoader.LoadAsync(_imageAssetHandler, file, Options)).AsAsyncAction(); + } + + /// + /// Sets the source for the . + /// + /// A URI that refers to a JSON Lottie file. + /// An that completes when the load completes or fails. + [DefaultOverload] + [Overload("SetSourceUriAsync")] + public IAsyncAction SetSourceAsync(Uri sourceUri) + { + _uriSource = sourceUri; + + // Update the dependency property to keep it in sync with _uriSource. + // This will not trigger loading because it will be seen as no change + // from the current (just set) _uriSource value. + UriSource = sourceUri; + + return LoadAsync(UriLoader.LoadAsync(_imageAssetHandler, sourceUri, Options)).AsAsyncAction(); + } + + /// + /// Implements . + /// + // TODO: currently explicitly implemented interfaces are causing a problem with .NET Native. Make them implicit for now. + public event TypedEventHandler AnimatedVisualInvalidated + { + add + { +#if WINAPPSDK + _compositionInvalidatedEventTokenTable.Add(value); +#else + return EventRegistrationTokenTable> + .GetOrCreateEventRegistrationTokenTable(ref _compositionInvalidatedEventTokenTable) + .AddEventHandler(value); +#endif + } + + remove + { +#if WINAPPSDK + _compositionInvalidatedEventTokenTable.Remove(value); +#else + EventRegistrationTokenTable> + .GetOrCreateEventRegistrationTokenTable(ref _compositionInvalidatedEventTokenTable) + .RemoveEventHandler(value); +#endif + } + } + + /// + /// Sets a delegate that returns an for the given image uri. + /// If this is null, no images will be loaded from references to external images. + /// + /// Most Lottie files do not reference external images, but those that do + /// will refer to the files via a uri. It is up to the user of + /// to manage the loading of the image, and return an for + /// that image. Alternatively the delegate may return null, and the image will not be + /// displayed. + public void SetImageAssetHandler(ImageAssetHandler? imageAssetHandler) + { + _imageAssetHandler = imageAssetHandler; + } + + /// + /// Implements . + /// + /// The that can be used as a factory for the resulting . + /// An optional object that may provide extra information about the result. + /// An . + // TODO: currently explicitly implemented interfaces are causing a problem with .NET Native. Make them implicit for now. + //bool IAnimatedVisualSource.TryCreateAnimatedVisual( + public IAnimatedVisual? TryCreateAnimatedVisual( + Compositor compositor, + out object? diagnostics) + { + if (_animatedVisualFactory is null) + { + // No content has been loaded yet. + // Return an IAnimatedVisual that produces nothing. + diagnostics = null; + return null; + } + else + { + // Some content was loaded. Ask the factory to produce an + // IAnimatedVisual. If it returns null, the player will treat it + // as an error. + return _animatedVisualFactory.TryCreateAnimatedVisual(compositor, out diagnostics); + } + } + + void NotifyListenersThatCompositionChanged() + { +#if WINAPPSDK + foreach (var v in _compositionInvalidatedEventTokenTable) + { + v.Invoke(this, null); + } +#else + EventRegistrationTokenTable> + .GetOrCreateEventRegistrationTokenTable(ref _compositionInvalidatedEventTokenTable) + .InvocationList?.Invoke(this, null); +#endif + } + + // Called when the UriSource property is updated. + void HandleUriSourcePropertyChanged(Uri? oldValue, Uri? newValue) + { + if (newValue == _uriSource) + { + // Ignore if setting to the current value. This can't happen if the value + // is being set via the DependencyProperty, but it will happen if the value + // is set via SetSourceAsync, as _uriSource will have been set before this + // is called. + return; + } + + _uriSource = newValue; + + if (UriSource == null) + { + return; + } + + var ignoredTask = StartLoadingAndIgnoreErrorsAsync(); + + async Task StartLoadingAndIgnoreErrorsAsync() + { + try + { + await LoadAsync(UriLoader.LoadAsync(_imageAssetHandler, UriSource, Options)); + } + catch + { + // Swallow any errors - nobody is listening. + } + } + } + + // Starts loading. Completes the returned task when the load completes or is replaced by another load. + async Task LoadAsync(Task loader) + { + var loadVersion = ++_loadVersion; + + var oldFactory = _animatedVisualFactory; + _animatedVisualFactory = null; + + if (oldFactory is not null) + { + // Notify all listeners that their existing content is no longer valid. + // They should stop showing the content. We will notify them again when the + // content changes. + NotifyListenersThatCompositionChanged(); + } + + // Disable the warning about the task possibly having being started in + // another context. There is no other context here. +#pragma warning disable VSTHRD003 + + // Wait for the loader to finish. + var factory = await loader; +#pragma warning restore VSTHRD003 + + if (loadVersion != _loadVersion) + { + // Another load request came in before this one completed. + return; + } + + if (factory is null) + { + // Load didn't produce anything. + return; + } + + // We are the the most recent load. Save the result. + _animatedVisualFactory = factory; + + // Notify all listeners that they should try to create their instance of the content again. + NotifyListenersThatCompositionChanged(); + + if (!factory.CanInstantiate) + { + // The load did not produce any content. Throw an exception so the caller knows. + throw new ArgumentException("Failed to load animated visual."); + } + } + +#if !WINAPPSDK + /// + /// Returns a string representation of the for debugging purposes. + /// + /// A string representation of the for debugging purposes. + public override string ToString() + { + var identity = _uriSource?.ToString() ?? string.Empty; + return $"LottieVisualSource2({identity})"; + } +#endif + } +} \ No newline at end of file From 15673a60f628af88326eefbc2e7e31e3e8fed593 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Fri, 15 Mar 2024 18:48:03 -0400 Subject: [PATCH 02/40] SimpleIslandApp now calls into C# JSON loader and works end to end. Had to build a custom lottie package and copy binaries into output folder manually since VS did not do it correctly. Will update build files to do this copy in the future. --- Lottie-Windows.sln | 66 +++++++++++++ Lottie/Project.idl | 32 +++++++ Lottie/SimpleIslandApp.cpp | 19 ++-- Lottie/SimpleIslandApp.vcxproj | 127 ++++++++++++++++--------- Lottie/SimpleIslandApp.vcxproj.filters | 6 +- LottieIsland/LottieContentIsland.h | 2 - LottieIsland/pch.h | 2 - LottieIsland2/LottieContentIsland2.cs | 111 --------------------- LottieIsland2/LottieIsland2.csproj | 21 ---- LottieWinRT/LottieVisualSourceWinRT.cs | 35 +++---- LottieWinRT/LottieWinRT.csproj | 4 +- 11 files changed, 215 insertions(+), 210 deletions(-) create mode 100644 Lottie/Project.idl delete mode 100644 LottieIsland2/LottieContentIsland2.cs delete mode 100644 LottieIsland2/LottieIsland2.csproj diff --git a/Lottie-Windows.sln b/Lottie-Windows.sln index aba23b3f9..4fdd61af1 100644 --- a/Lottie-Windows.sln +++ b/Lottie-Windows.sln @@ -175,6 +175,10 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CppApp", "CppApp\CppApp.vcx EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LottieWinRT", "LottieWinRT\LottieWinRT.csproj", "{DDA0D223-4B59-455D-A8B1-CFAE59523FFB}" EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SimpleIslandApp", "Lottie\SimpleIslandApp.vcxproj", "{350A5EC2-B156-4AAF-9D80-A864C76BA0C5}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LottieIsland", "LottieIsland\LottieIsland.vcxproj", "{9BA7A2F2-B723-458B-A575-3F726D271465}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution BETA|Any CPU = BETA|Any CPU @@ -692,6 +696,68 @@ Global {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|x64.Build.0 = Release|Any CPU {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|x86.ActiveCfg = Release|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|x86.Build.0 = Release|x86 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|Any CPU.ActiveCfg = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|Any CPU.Build.0 = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM.ActiveCfg = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM.Build.0 = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM64.ActiveCfg = Debug|ARM64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM64.Build.0 = Debug|ARM64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|x64.ActiveCfg = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|x64.Build.0 = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|x86.ActiveCfg = Debug|Win32 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|x86.Build.0 = Debug|Win32 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|Any CPU.ActiveCfg = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|Any CPU.Build.0 = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|ARM.ActiveCfg = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|ARM.Build.0 = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|ARM64.Build.0 = Debug|ARM64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|x64.ActiveCfg = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|x64.Build.0 = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|x64.Deploy.0 = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|x86.ActiveCfg = Debug|Win32 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|x86.Build.0 = Debug|Win32 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|x86.Deploy.0 = Debug|Win32 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|Any CPU.ActiveCfg = Release|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|Any CPU.Build.0 = Release|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|ARM.ActiveCfg = Release|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|ARM.Build.0 = Release|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|ARM64.ActiveCfg = Release|ARM64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|ARM64.Build.0 = Release|ARM64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x64.ActiveCfg = Release|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x64.Build.0 = Release|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x86.ActiveCfg = Release|Win32 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x86.Build.0 = Release|Win32 + {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|Any CPU.ActiveCfg = Debug|x64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|Any CPU.Build.0 = Debug|x64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|ARM.ActiveCfg = Debug|ARM + {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|ARM.Build.0 = Debug|ARM + {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|ARM64.ActiveCfg = Debug|ARM64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|ARM64.Build.0 = Debug|ARM64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|x64.ActiveCfg = Debug|x64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|x64.Build.0 = Debug|x64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|x86.ActiveCfg = Debug|Win32 + {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|x86.Build.0 = Debug|Win32 + {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|Any CPU.ActiveCfg = Debug|x64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|Any CPU.Build.0 = Debug|x64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|ARM.ActiveCfg = Debug|ARM + {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|ARM.Build.0 = Debug|ARM + {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|ARM64.Build.0 = Debug|ARM64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|x64.ActiveCfg = Debug|x64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|x64.Build.0 = Debug|x64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|x86.ActiveCfg = Debug|Win32 + {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|x86.Build.0 = Debug|Win32 + {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|Any CPU.ActiveCfg = Release|x64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|Any CPU.Build.0 = Release|x64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|ARM.ActiveCfg = Release|ARM + {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|ARM.Build.0 = Release|ARM + {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|ARM64.ActiveCfg = Release|ARM64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|ARM64.Build.0 = Release|ARM64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|x64.ActiveCfg = Release|x64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|x64.Build.0 = Release|x64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|x86.ActiveCfg = Release|Win32 + {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|x86.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/Lottie/Project.idl b/Lottie/Project.idl new file mode 100644 index 000000000..2048829fe --- /dev/null +++ b/Lottie/Project.idl @@ -0,0 +1,32 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +namespace SimpleIslandApp +{ + /* The following code is scenario/feature-specific IDL. + Samples authors should modify these runtime classes as appropriate. */ + + /*[default_interface] + runtimeclass Scenario1_CustomControl : Microsoft.UI.Xaml.Controls.Page + { + Scenario1_CustomControl(); + } + + [default_interface] + runtimeclass Scenario2_UserControl : Microsoft.UI.Xaml.Controls.Page + { + Scenario2_UserControl(); + }*/ + + /* The following code is template-specific IDL. + These runtime classes are the same across all C++/WinRT WinUI samples. */ + + [default_interface] + runtimeclass MainPage + { + MainPage(); + static MainPage Current(); + //void NotifyUser(String strMessage, Microsoft.UI.Xaml.Controls.InfoBarSeverity severity); + } + +} diff --git a/Lottie/SimpleIslandApp.cpp b/Lottie/SimpleIslandApp.cpp index d95c3289a..a3f9c6df4 100644 --- a/Lottie/SimpleIslandApp.cpp +++ b/Lottie/SimpleIslandApp.cpp @@ -8,9 +8,8 @@ #include // For ContentPreTranslateMessage #include -//#include #include -#include +#include namespace winrt { @@ -232,18 +231,24 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) windowInfo->Compositor, winrt::GetWindowIdFromWindow(hWnd)); - //windowInfo->LottieIsland = winrt::LottieIsland::LottieContentIsland{ windowInfo->Compositor }; windowInfo->LottieIsland = winrt::LottieIsland::LottieContentIsland{ windowInfo->Compositor }; windowInfo->Bridge.Connect(windowInfo->LottieIsland.Island()); windowInfo->Bridge.Show(); // C++/WinRT precompiled animation! - windowInfo->LottieIsland.AnimatedVisualSource(winrt::AnimatedVisuals::LottieLogo1()); + //windowInfo->LottieIsland.AnimatedVisualSource(winrt::AnimatedVisuals::LottieLogo1()); - // Live JSON loaded animation! - winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisualSource animatedVisualSource = winrt::LottieVisualWinRT::Class1::LoadLottie(L"ms-appx:///LottieLogo1.json", windowInfo->Compositor); - windowInfo->LottieIsland.AnimatedVisualSource(animatedVisualSource); + // Live JSON loaded animation! (this fails beause lottie creates a dependency object) + /*winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisualSource animatedVisualSource = winrt::LottieVisualWinRT::LottieAnimatedVisualWinRT::LoadLottie(L"ms-appx:///LottieLogo1.json"); + windowInfo->LottieIsland.AnimatedVisualSource(animatedVisualSource);*/ + + winrt::LottieWinRT::LottieVisualSourceWinRT lottieVisualSource; + auto token = lottieVisualSource.AnimatedVisualInvalidated([windowInfo, lottieVisualSource](const winrt::Windows::Foundation::IInspectable sender, auto&&) + { + windowInfo->LottieIsland.AnimatedVisualSource(lottieVisualSource.AnimatedVisual()); + }); + lottieVisualSource.LoadLottie(L"ms-appx:///LottieLogo1.json"); //// Create our DesktopWindowXamlSource and attach it to our hwnd. This is our "island". //windowInfo->DesktopWindowXamlSource = winrt::DesktopWindowXamlSource{}; diff --git a/Lottie/SimpleIslandApp.vcxproj b/Lottie/SimpleIslandApp.vcxproj index cbe54071c..fe6687d31 100644 --- a/Lottie/SimpleIslandApp.vcxproj +++ b/Lottie/SimpleIslandApp.vcxproj @@ -1,5 +1,6 @@ + @@ -29,15 +30,21 @@ x64 + 17.0 - + Win32Proj {350a5ec2-b156-4aaf-9d80-a864c76ba0c5} SimpleIslandApp Windows Store 10.0 + true true true @@ -52,65 +59,84 @@ 10.0.17763.0 - true true - - - Debug - Win32 - - - Debug - x64 - - - Debug - ARM64 - - - Release - Win32 - - - Release - x64 - - - Release - ARM64 - - - + + Application + true + v143 + Unicode + true + + + Application + false + v143 + true + Unicode + true + + Application + true + v143 Unicode true - + + Application true - true + v143 + Unicode + true + + + Application + false + v143 + true + Unicode + true - + + Application false + v143 true - false + Unicode + true - + + + + + + + + + + - + @@ -134,6 +160,7 @@ Windows true + true @@ -164,6 +191,7 @@ Windows true + true @@ -177,6 +205,7 @@ Windows true + true @@ -235,6 +264,11 @@ + + + Code + + @@ -243,13 +277,10 @@ - - - - true - false + true + false Document @@ -258,10 +289,11 @@ {9ba7a2f2-b723-458b-a575-3f726d271465} - - {7cf889af-6b9b-4f9c-815c-990f5f73c9a0} - all + + {dda0d223-4b59-455d-a8b1-cfae59523ffb} + @@ -273,7 +305,8 @@ - + + @@ -285,6 +318,8 @@ - + + + \ No newline at end of file diff --git a/Lottie/SimpleIslandApp.vcxproj.filters b/Lottie/SimpleIslandApp.vcxproj.filters index ad53995eb..2308ea8b1 100644 --- a/Lottie/SimpleIslandApp.vcxproj.filters +++ b/Lottie/SimpleIslandApp.vcxproj.filters @@ -64,9 +64,6 @@ - - - @@ -74,5 +71,8 @@ Source Files + + Source Files + \ No newline at end of file diff --git a/LottieIsland/LottieContentIsland.h b/LottieIsland/LottieContentIsland.h index 69f8be278..d4761c383 100644 --- a/LottieIsland/LottieContentIsland.h +++ b/LottieIsland/LottieContentIsland.h @@ -46,8 +46,6 @@ namespace winrt::LottieIsland::implementation winrt::ContainerVisual m_rootVisual{ nullptr }; winrt::ContentIsland m_island{ nullptr }; winrt::IAnimatedVisualSource m_animatedVisualSource{ nullptr }; - winrt::hstring m_uri; - winrt::LottieVisualWinRT::Class1 m_class1{ nullptr }; }; } diff --git a/LottieIsland/pch.h b/LottieIsland/pch.h index 731ef0c69..ab161d715 100644 --- a/LottieIsland/pch.h +++ b/LottieIsland/pch.h @@ -15,8 +15,6 @@ #include #include -#include - namespace winrt { using namespace ::winrt::Microsoft::UI::Composition; diff --git a/LottieIsland2/LottieContentIsland2.cs b/LottieIsland2/LottieContentIsland2.cs deleted file mode 100644 index 229859056..000000000 --- a/LottieIsland2/LottieContentIsland2.cs +++ /dev/null @@ -1,111 +0,0 @@ -using CommunityToolkit.WinUI.Lottie; -using Microsoft.UI.Composition; -using Microsoft.UI.Content; -using Microsoft.UI.Xaml.Controls; -using System.Diagnostics; - -namespace LottieIsland2 -{ - public sealed class LottieContentIsland2 - { - public int MyProperty { get; set; } - public ContentIsland Island { get => m_island; } - public IAnimatedVisualSource? AnimatedVisualSource - { - get => m_animatedVisualSource; - set - { - m_animatedVisualSource = value; - object diagnostics; - if (m_animatedVisualSource != null) - { - IAnimatedVisual animatedVisual = m_animatedVisualSource.TryCreateAnimatedVisual(m_compositor, out diagnostics); - - // Set up lottie - m_rootVisual.Children.InsertAtTop(animatedVisual.RootVisual); - var animation = m_compositor.CreateScalarKeyFrameAnimation(); - animation.Duration = animatedVisual.Duration; - var linearEasing = m_compositor.CreateLinearEasingFunction(); - animation.InsertKeyFrame(0, 0); - animation.InsertKeyFrame(1, 1, linearEasing); - animation.IterationBehavior = AnimationIterationBehavior.Forever; - animatedVisual.RootVisual.Properties.StartAnimation("Progress", animation); - } - } - } - - public string? Uri - { - get => m_uri; - set - { - m_uri = value; - if (m_uri != null) - { - //// THIS LINE causes the SimpleIslandApp to crash - //var lottieVisualSource = LottieVisualSource.CreateFromString(m_uri); - //if (lottieVisualSource != null) - //{ - // lottieVisualSource.AnimatedVisualInvalidated += LottieVisualSource_AnimatedVisualInvalidated; - //} - } - } - } - - TimeSpan Duration { get; } - - bool IsAnimationLoaded { get; } - - bool IsPlaying { get; } - - public void Pause() { throw new NotImplementedException(); } - - Windows.Foundation.IAsyncAction PlayAsync(Double fromProgress, Double toProgress, Boolean looped) { throw new NotImplementedException(); } - - void Resume() { throw new NotImplementedException(); } - - void Stop() { throw new NotImplementedException(); } - - private Compositor m_compositor; - private ContainerVisual m_rootVisual; - private ContentIsland m_island; - private IAnimatedVisualSource? m_animatedVisualSource; - private string? m_uri; - - public LottieContentIsland2(Compositor compositor) - { - m_compositor = compositor; - m_rootVisual = m_compositor.CreateContainerVisual(); - m_island = ContentIsland.Create(m_rootVisual); - } - - private void LottieVisualSource_AnimatedVisualInvalidated(IDynamicAnimatedVisualSource? sender, object? args) - { - object? diagnostics = null; - IAnimatedVisual? animatedVisual = sender?.TryCreateAnimatedVisual(m_compositor, out diagnostics); - - if (m_rootVisual != null) - { - m_rootVisual.Children.InsertAtTop(animatedVisual?.RootVisual); - if (m_compositor != null) - { - var animation = m_compositor.CreateScalarKeyFrameAnimation(); - if (animatedVisual != null) - { - animation.Duration = animatedVisual.Duration; - var linearEasing = m_compositor.CreateLinearEasingFunction(); - - // Play from beginning to end. - animation.InsertKeyFrame(0, 0); - animation.InsertKeyFrame(1, 1, linearEasing); - - animation.IterationBehavior = AnimationIterationBehavior.Forever; - - // Start the animation and get the controller. - animatedVisual.RootVisual.Properties.StartAnimation("Progress", animation); - } - } - } - } - } -} diff --git a/LottieIsland2/LottieIsland2.csproj b/LottieIsland2/LottieIsland2.csproj deleted file mode 100644 index 94e094150..000000000 --- a/LottieIsland2/LottieIsland2.csproj +++ /dev/null @@ -1,21 +0,0 @@ - - - - net7.0-windows10.0.19041.0 - x64;x86;ARM64 - enable - enable - true - LottieIsland2 - win10-x86;win10-x64;win10-arm64 - false - - - - - - - - - - diff --git a/LottieWinRT/LottieVisualSourceWinRT.cs b/LottieWinRT/LottieVisualSourceWinRT.cs index 00bad38d2..4d5477041 100644 --- a/LottieWinRT/LottieVisualSourceWinRT.cs +++ b/LottieWinRT/LottieVisualSourceWinRT.cs @@ -8,33 +8,36 @@ namespace LottieWinRT public sealed class LottieVisualSourceWinRT { // C# Events exported to WinRT... don't work??? I get a Win32Exception when generating the code??? - //public event EventHandler? AnimatedVisualInvalidated; + public event EventHandler? AnimatedVisualInvalidated; - //public IAnimatedVisualSource? LoadLottie(string uri) - //{ - // LottieVisualSource? source = LottieVisualSource.CreateFromString(uri); - // if (source != null) - // { - // source.AnimatedVisualInvalidated += Source_AnimatedVisualInvalidated; - // } + public void LoadLottie(string uri) + { + LottieVisualSource2? source = LottieVisualSource2.CreateFromString(uri); + if (source != null) + { + source.AnimatedVisualInvalidated += Source_AnimatedVisualInvalidated; + } + + _lottieVisualSource = source; + } + + private void Source_AnimatedVisualInvalidated(IDynamicAnimatedVisualSource? sender, object? args) + { + this.AnimatedVisualInvalidated?.Invoke(this, EventArgs.Empty); + } - // return source; - //} + public IAnimatedVisualSource? AnimatedVisual { get => _lottieVisualSource; } - //private void Source_AnimatedVisualInvalidated(IDynamicAnimatedVisualSource? sender, object? args) - //{ - // AnimatedVisualInvalidated?.Invoke(this, EventArgs.Empty); - //} Compositor? _compositor; ContainerVisual? _rootVisual; - LottieVisualSource? _lottieVisualSource; + LottieVisualSource2? _lottieVisualSource; public void SetUpLottie(Compositor compositor, ContainerVisual parent, string uri) { _compositor = compositor; _rootVisual = parent; - _lottieVisualSource = LottieVisualSource.CreateFromString(uri); + _lottieVisualSource = LottieVisualSource2.CreateFromString(uri); if (_lottieVisualSource != null) { _lottieVisualSource.AnimatedVisualInvalidated += LottieVisualSource_AnimatedVisualInvalidated; diff --git a/LottieWinRT/LottieWinRT.csproj b/LottieWinRT/LottieWinRT.csproj index 72cc372ee..14e2c9e21 100644 --- a/LottieWinRT/LottieWinRT.csproj +++ b/LottieWinRT/LottieWinRT.csproj @@ -8,11 +8,11 @@ true LottieWinRT win10-x86;win10-x64;win10-arm64 - false + 10.0.19041.0 - + From 7d583f3127ed8124aff9d790a03da3a25db0586b Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Tue, 19 Mar 2024 23:41:05 -0400 Subject: [PATCH 03/40] Updated sample app to match FHL sample --- Lottie/SimpleIslandApp.cpp | 429 ++++++++++++++------------- LottieIsland/LottieContentIsland.cpp | 207 ++++++++----- LottieIsland/LottieContentIsland.h | 19 +- LottieIsland/LottieContentIsland.idl | 7 +- LottieIsland/pch.h | 3 + version.json | 2 +- 6 files changed, 378 insertions(+), 289 deletions(-) diff --git a/Lottie/SimpleIslandApp.cpp b/Lottie/SimpleIslandApp.cpp index a3f9c6df4..90150b9b7 100644 --- a/Lottie/SimpleIslandApp.cpp +++ b/Lottie/SimpleIslandApp.cpp @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -// SimpleIslandApp.cpp : Defines the entry point for the application. +// SimpleLottieIslandApp.cpp : Defines the entry point for the application. #include "pch.h" #include "SimpleIslandApp.h" @@ -16,6 +16,7 @@ namespace winrt using namespace winrt::Microsoft::UI; using namespace winrt::Microsoft::UI::Content; using namespace winrt::Microsoft::UI::Dispatching; + using float2 = winrt::Windows::Foundation::Numerics::float2; } // Forward declarations of functions included in this code module: @@ -34,8 +35,27 @@ struct WindowInfo winrt::event_token TakeFocusRequestedToken{}; HWND LastFocusedWindow{ NULL }; winrt::LottieIsland::LottieContentIsland LottieIsland{ nullptr }; + bool isPaused = false; }; +enum class ButtonType +{ + PlayButton = 1, + PauseButton, + StopButton, + ReverseButton +}; + +constexpr int k_padding = 10; +constexpr int k_buttonWidth = 150; +constexpr int k_buttonHeight = 40; + +void LayoutButton(ButtonType type, int tlwWidth, int tlwHeight, HWND topLevelWindow); +void CreateWin32Button(ButtonType type, const std::wstring_view& text, HWND parentHwnd); +void OnButtonClicked(ButtonType type, WindowInfo* windowInfo, HWND topLevelWindow); +void SetButtonText(ButtonType type, const std::wstring_view& text, HWND topLevelWindow); +void SetPauseState(WindowInfo* windowInfo, bool isPaused, HWND topLevelWindow); + int APIENTRY wWinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance, _In_ LPWSTR lpCmdLine, @@ -52,10 +72,6 @@ int APIENTRY wWinMain(_In_ HINSTANCE hInstance, // Island-support: We must start a DispatcherQueueController before we can create an island or use Xaml. auto dispatcherQueueController{ winrt::DispatcherQueueController::CreateOnCurrentThread() }; - // Island-support: Create our custom Xaml App object. This is needed to properly use the controls and metadata - // in Microsoft.ui.xaml.controls.dll. - // auto simpleIslandApp{ winrt::make() }; - // The title bar text WCHAR szTitle[100]; winrt::check_bool(LoadStringW(hInstance, IDS_APP_TITLE, szTitle, ARRAYSIZE(szTitle)) != 0); @@ -67,7 +83,7 @@ int APIENTRY wWinMain(_In_ HINSTANCE hInstance, MyRegisterClass(hInstance, szWindowClass); // Perform application initialization: - HWND topLevelWindow = InitInstance(hInstance, nCmdShow, szTitle, szWindowClass); + InitInstance(hInstance, nCmdShow, szTitle, szWindowClass); HACCEL hAccelTable = LoadAccelerators(hInstance, MAKEINTRESOURCE(IDC_SIMPLEISLANDAPP)); @@ -89,12 +105,6 @@ int APIENTRY wWinMain(_In_ HINSTANCE hInstance, continue; } - // Island-support: This is needed so that the user can correctly tab and shift+tab into islands. - if (ProcessMessageForTabNavigation(topLevelWindow, &msg)) - { - continue; - } - TranslateMessage(&msg); DispatchMessage(&msg); } @@ -111,51 +121,6 @@ int APIENTRY wWinMain(_In_ HINSTANCE hInstance, return 0; } -// Returns "true" if the function handled the message and it shouldn't be processed any further. -// Intended to be called from the main message loop. -bool ProcessMessageForTabNavigation(const HWND /*topLevelWindow*/, MSG* /*msg*/) -{ - //if (msg->message == WM_KEYDOWN && msg->wParam == VK_TAB) - //{ - // // The user is pressing the "tab" key. We want to handle this ourselves so we can pass information into Xaml - // // about the tab navigation. Specifically, we need to tell Xaml whether this is a forward tab, or a backward - // // shift+tab, so Xaml will know whether to put focus on the first Xaml element in the island or the last - // // Xaml element. (This is done in the call to DesktopWindowXamlSource.NavigateFocus()). - // const HWND currentFocusedWindow = ::GetFocus(); - // if (::GetAncestor(currentFocusedWindow, GA_ROOT) != topLevelWindow) - // { - // // This is a window outside of our top-level window, let the system process it. - // return false; - // } - - // const bool isShiftKeyDown = ((HIWORD(::GetKeyState(VK_SHIFT)) & 0x8000) != 0); - // const HWND nextFocusedWindow = ::GetNextDlgTabItem(topLevelWindow, currentFocusedWindow, isShiftKeyDown /*bPrevious*/); - - // WindowInfo* windowInfo = reinterpret_cast(::GetWindowLongPtr(topLevelWindow, GWLP_USERDATA)); - // const HWND dwxsWindow = winrt::GetWindowFromWindowId(windowInfo->DesktopWindowXamlSource.SiteBridge().WindowId()); - // if (dwxsWindow == nextFocusedWindow) - // { - // // Focus is moving to our DesktopWindowXamlSource. Instead of just calling SetFocus on it, we call NavigateFocus(), - // // which allows us to tell Xaml which direction the keyboard focus is moving. - // // If your app has multiple DesktopWindowXamlSources in the window, you'll want to loop over them and check to - // // see if focus is moving to each one. - // winrt::XamlSourceFocusNavigationRequest request{ - // isShiftKeyDown ? - // winrt::XamlSourceFocusNavigationReason::Last : - // winrt::XamlSourceFocusNavigationReason::First }; - - // windowInfo->DesktopWindowXamlSource.NavigateFocus(request); - // return true; - // } - - // // Focus isn't moving to our DesktopWindowXamlSource. IsDialogMessage will automatically do the tab navigation - // // for us for this msg. - // const bool handled = (::IsDialogMessage(topLevelWindow, msg) == TRUE); - // return handled; - //} - return false; -} - // // FUNCTION: MyRegisterClass() // @@ -167,17 +132,17 @@ void MyRegisterClass(HINSTANCE hInstance, const wchar_t* szWindowClass) wcex.cbSize = sizeof(WNDCLASSEX); - wcex.style = CS_HREDRAW | CS_VREDRAW; - wcex.lpfnWndProc = WndProc; - wcex.cbClsExtra = 0; - wcex.cbWndExtra = 0; - wcex.hInstance = hInstance; - wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_SIMPLEISLANDAPP)); - wcex.hCursor = LoadCursor(nullptr, IDC_ARROW); - wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1); - wcex.lpszMenuName = MAKEINTRESOURCEW(IDC_SIMPLEISLANDAPP); - wcex.lpszClassName = szWindowClass; - wcex.hIconSm = LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_SMALL)); + wcex.style = CS_HREDRAW | CS_VREDRAW; + wcex.lpfnWndProc = WndProc; + wcex.cbClsExtra = 0; + wcex.cbWndExtra = 0; + wcex.hInstance = hInstance; + wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_SIMPLEISLANDAPP)); + wcex.hCursor = LoadCursor(nullptr, IDC_ARROW); + wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1); + wcex.lpszMenuName = MAKEINTRESOURCEW(IDC_SIMPLEISLANDAPP); + wcex.lpszClassName = szWindowClass; + wcex.hIconSm = LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_SMALL)); winrt::check_bool(RegisterClassExW(&wcex) != 0); } @@ -194,13 +159,13 @@ void MyRegisterClass(HINSTANCE hInstance, const wchar_t* szWindowClass) // HWND InitInstance(HINSTANCE /*hInstance*/, int nCmdShow, const wchar_t* szTitle, const wchar_t* szWindowClass) { - HWND hWnd = CreateWindowW(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW, - CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, nullptr, nullptr, ::GetModuleHandle(NULL), nullptr); - winrt::check_bool(hWnd != NULL); + HWND hWnd = CreateWindowW(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW, + CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, nullptr, nullptr, ::GetModuleHandle(NULL), nullptr); + winrt::check_bool(hWnd != NULL); - ShowWindow(hWnd, nCmdShow); - UpdateWindow(hWnd); - return hWnd; + ShowWindow(hWnd, nCmdShow); + UpdateWindow(hWnd); + return hWnd; } // @@ -220,162 +185,111 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) switch (message) { case WM_CREATE: - { - windowInfo = new WindowInfo(); - ::SetWindowLongPtr(hWnd, GWLP_USERDATA, reinterpret_cast(windowInfo)); - - const HINSTANCE hInst = (HINSTANCE)GetWindowLongPtr(hWnd, GWLP_HINSTANCE); - ::CreateWindow(L"BUTTON", L"Win32 Button 1", WS_TABSTOP | WS_VISIBLE | WS_CHILD, 10, 10, 150, 40, hWnd, (HMENU)501, hInst, NULL); - - windowInfo->Bridge = winrt::DesktopChildSiteBridge::Create( - windowInfo->Compositor, - winrt::GetWindowIdFromWindow(hWnd)); - - windowInfo->LottieIsland = winrt::LottieIsland::LottieContentIsland{ windowInfo->Compositor }; - - windowInfo->Bridge.Connect(windowInfo->LottieIsland.Island()); - windowInfo->Bridge.Show(); - - // C++/WinRT precompiled animation! - //windowInfo->LottieIsland.AnimatedVisualSource(winrt::AnimatedVisuals::LottieLogo1()); - - // Live JSON loaded animation! (this fails beause lottie creates a dependency object) - /*winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisualSource animatedVisualSource = winrt::LottieVisualWinRT::LottieAnimatedVisualWinRT::LoadLottie(L"ms-appx:///LottieLogo1.json"); - windowInfo->LottieIsland.AnimatedVisualSource(animatedVisualSource);*/ - - winrt::LottieWinRT::LottieVisualSourceWinRT lottieVisualSource; - auto token = lottieVisualSource.AnimatedVisualInvalidated([windowInfo, lottieVisualSource](const winrt::Windows::Foundation::IInspectable sender, auto&&) - { - windowInfo->LottieIsland.AnimatedVisualSource(lottieVisualSource.AnimatedVisual()); - }); - lottieVisualSource.LoadLottie(L"ms-appx:///LottieLogo1.json"); - - //// Create our DesktopWindowXamlSource and attach it to our hwnd. This is our "island". - //windowInfo->DesktopWindowXamlSource = winrt::DesktopWindowXamlSource{}; - //windowInfo->DesktopWindowXamlSource.Initialize(winrt::GetWindowIdFromWindow(hWnd)); - - //// Enable the DesktopWindowXamlSource to be a tab stop. - //::SetWindowLong( - // winrt::GetWindowFromWindowId(windowInfo->DesktopWindowXamlSource.SiteBridge().WindowId()), - // GWL_STYLE, - // WS_TABSTOP | WS_CHILD | WS_VISIBLE); - - //// Put a new instance of our Xaml "MainPage" into our island. This is our UI content. - //windowInfo->DesktopWindowXamlSource.Content(winrt::make()); - - ::CreateWindow(L"BUTTON", L"Win32 Button 2", WS_TABSTOP | WS_VISIBLE | WS_CHILD, 10, 400, 150, 40, hWnd, (HMENU)502, hInst, NULL); - - // Subscribe to the TakeFocusRequested event, which will be raised when Xaml wants to move keyboard focus back to our window. - //windowInfo->TakeFocusRequestedToken = windowInfo->DesktopWindowXamlSource.TakeFocusRequested( - // [hWnd](winrt::DesktopWindowXamlSource const& /*sender*/, winrt::DesktopWindowXamlSourceTakeFocusRequestedEventArgs const& args) { - // if (args.Request().Reason() == winrt::XamlSourceFocusNavigationReason::First) - // { - // // The reason "First" means the user is tabbing forward, so put the focus on the button in the tab order - // // after the DesktopWindowXamlSource. - // ::SetFocus(::GetDlgItem(hWnd, 502)); - // } - // else if (args.Request().Reason() == winrt::XamlSourceFocusNavigationReason::Last) - // { - // // The reason "Last" means the user is tabbing backward (shift-tab, so put the focus on button prior to - // // the DesktopWindowXamlSource. - // ::SetFocus(::GetDlgItem(hWnd, 501)); - // } - // }); - } - break; - case WM_SIZE: - { - const int width = LOWORD(lParam); - const int height = HIWORD(lParam); + { + windowInfo = new WindowInfo(); + ::SetWindowLongPtr(hWnd, GWLP_USERDATA, reinterpret_cast(windowInfo)); - ::SetWindowPos(::GetDlgItem(hWnd, 501), NULL, 10, 10, 150, 40, SWP_NOZORDER); - ::SetWindowPos(::GetDlgItem(hWnd, 502), NULL, 10, height - 50, 150, 40, SWP_NOZORDER); - if (windowInfo->Bridge) - { - windowInfo->Bridge.MoveAndResize({ 10, 60, width - 20, height - 120 }); - } + // Create the DesktopChildSiteBridge + windowInfo->Bridge = winrt::DesktopChildSiteBridge::Create( + windowInfo->Compositor, + winrt::GetWindowIdFromWindow(hWnd)); - /*if (windowInfo->DesktopWindowXamlSource) + // Create the LottieIsland, which is a WinRT wrapper for hosting a Lottie animation in a ContentIsland + windowInfo->LottieIsland = winrt::LottieIsland::LottieContentIsland{ windowInfo->Compositor }; + + // Connect the ContentIsland to the DesktopChildSiteBridge + windowInfo->Bridge.Connect(windowInfo->LottieIsland.Island()); + windowInfo->Bridge.Show(); + + // Live JSON loaded animation! + winrt::LottieWinRT::LottieVisualSourceWinRT lottieVisualSource; + auto token = lottieVisualSource.AnimatedVisualInvalidated([windowInfo, lottieVisualSource](const winrt::Windows::Foundation::IInspectable sender, auto&&) { - windowInfo->DesktopWindowXamlSource.SiteBridge().MoveAndResize({ 10, 60, width - 20, height - 120 }); - }*/ + windowInfo->LottieIsland.AnimatedVisualSource(lottieVisualSource.AnimatedVisual()); + }); + lottieVisualSource.LoadLottie(L"ms-appx:///LottieLogo1.json"); + + // Add some Win32 controls to allow the app to play with the animation + CreateWin32Button(ButtonType::PlayButton, L"Play", hWnd); + CreateWin32Button(ButtonType::PauseButton, L"Pause", hWnd); + CreateWin32Button(ButtonType::StopButton, L"Stop", hWnd); + CreateWin32Button(ButtonType::ReverseButton, L"Reverse", hWnd); + } + break; + case WM_SIZE: + { + const int width = LOWORD(lParam); + const int height = HIWORD(lParam); + + if (windowInfo->Bridge) + { + windowInfo->Bridge.MoveAndResize({ k_padding, k_padding, width - (k_padding * 2), height - (k_padding * 3) - k_buttonHeight }); } - break; + + LayoutButton(ButtonType::PlayButton, width, height, hWnd); + LayoutButton(ButtonType::PauseButton, width, height, hWnd); + LayoutButton(ButtonType::StopButton, width, height, hWnd); + LayoutButton(ButtonType::ReverseButton, width, height, hWnd); + } + break; case WM_ACTIVATE: + { + // Make focus work nicely when the user presses alt+tab to activate a different window, and then alt+tab + // again to come back to this window. We want the focus to go back to the same child HWND that was focused + // before. + const bool isGettingDeactivated = (LOWORD(wParam) == WA_INACTIVE); + if (isGettingDeactivated) { - // Make focus work nicely when the user presses alt+tab to activate a different window, and then alt+tab - // again to come back to this window. We want the focus to go back to the same child HWND that was focused - // before. - const bool isGettingDeactivated = (LOWORD(wParam) == WA_INACTIVE); - if (isGettingDeactivated) - { - // Remember the HWND that had focus. - windowInfo->LastFocusedWindow = ::GetFocus(); - } - else if (windowInfo->LastFocusedWindow != NULL) - { - ::SetFocus(windowInfo->LastFocusedWindow); - } + // Remember the HWND that had focus. + windowInfo->LastFocusedWindow = ::GetFocus(); } - break; + else if (windowInfo->LastFocusedWindow != NULL) + { + ::SetFocus(windowInfo->LastFocusedWindow); + } + } + break; case WM_COMMAND: + { + int wmId = LOWORD(wParam); + int wmCode = HIWORD(wParam); + // Parse the menu selections: + switch (wmId) { - int wmId = LOWORD(wParam); - int wmCode = HIWORD(wParam); - // Parse the menu selections: - switch (wmId) + case IDM_ABOUT: + DialogBox(::GetModuleHandle(NULL), MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, About); + break; + case IDM_EXIT: + DestroyWindow(hWnd); + break; + case 501: // Buttons + case 502: + case 503: + case 504: + if (wmCode == BN_CLICKED) { - case IDM_ABOUT: - DialogBox(::GetModuleHandle(NULL), MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, About); - break; - case IDM_EXIT: - DestroyWindow(hWnd); - break; - case 501: // Button 1 - if (wmCode == BN_CLICKED) - { - auto prop = windowInfo->LottieIsland.MyProperty(); - --prop; - windowInfo->LottieIsland.MyProperty(prop); - OutputDebugString(L"Property: "); - OutputDebugString(std::to_wstring(prop).c_str()); - OutputDebugString(L"\n"); - } - break; - case 502: // Button 2 - if (wmCode == BN_CLICKED) - { - auto prop = windowInfo->LottieIsland.MyProperty(); - ++prop; - windowInfo->LottieIsland.MyProperty(prop); - OutputDebugString(L"Property: "); - OutputDebugString(std::to_wstring(prop).c_str()); - OutputDebugString(L"\n"); - } - break; - default: - return DefWindowProc(hWnd, message, wParam, lParam); + ButtonType type = static_cast(wmId - 500); + OnButtonClicked(type, windowInfo, hWnd); } + break; + default: + return DefWindowProc(hWnd, message, wParam, lParam); } - break; + } + break; case WM_PAINT: - { - PAINTSTRUCT ps; - HDC hdc = BeginPaint(hWnd, &ps); - // TODO: Add any drawing code that uses hdc here... - UNREFERENCED_PARAMETER(hdc); - EndPaint(hWnd, &ps); - } - break; + { + PAINTSTRUCT ps; + HDC hdc = BeginPaint(hWnd, &ps); + // TODO: Add any drawing code that uses hdc here... + UNREFERENCED_PARAMETER(hdc); + EndPaint(hWnd, &ps); + } + break; case WM_DESTROY: PostQuitMessage(0); break; case WM_NCDESTROY: - /*if (windowInfo->DesktopWindowXamlSource && windowInfo->TakeFocusRequestedToken.value != 0) - { - windowInfo->DesktopWindowXamlSource.TakeFocusRequested(windowInfo->TakeFocusRequestedToken); - windowInfo->TakeFocusRequestedToken = {}; - }*/ delete windowInfo; ::SetWindowLong(hWnd, GWLP_USERDATA, NULL); break; @@ -404,3 +318,92 @@ INT_PTR CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) } return (INT_PTR)FALSE; } + +void LayoutButton(ButtonType type, int /*tlwWidth*/, int tlwHeight, HWND topLevelWindow) +{ + int buttonIndex = static_cast(type); + + int xPos = ((buttonIndex - 1) * (k_buttonWidth + k_padding)) + k_padding; + int yPos = tlwHeight - k_buttonHeight - k_padding; + + HWND buttonHwnd = ::GetDlgItem(topLevelWindow, 500 + buttonIndex); + ::SetWindowPos(buttonHwnd, NULL, xPos, yPos, k_buttonWidth, k_buttonHeight, SWP_NOZORDER); +} + +void CreateWin32Button(ButtonType type, const std::wstring_view& text, HWND parentHwnd) +{ + int buttonIndex = static_cast(type); + + int xPos = ((buttonIndex - 1) * (k_buttonWidth + k_padding)) + k_padding; + + const HINSTANCE hInst = (HINSTANCE)GetWindowLongPtr(parentHwnd, GWLP_HINSTANCE); + HMENU fakeHMenu = reinterpret_cast(static_cast(500 + buttonIndex)); + ::CreateWindowW( + L"BUTTON", + text.data(), + WS_TABSTOP | WS_VISIBLE | WS_CHILD, + xPos, 250, k_buttonWidth, k_buttonHeight, + parentHwnd, + fakeHMenu, + hInst, + NULL); +} + +void OnButtonClicked(ButtonType type, WindowInfo* windowInfo, HWND topLevelWindow) +{ + switch (type) + { + case ButtonType::PlayButton: + windowInfo->LottieIsland.PlayAsync(0.0, 1.0, true); + SetPauseState(windowInfo, false, topLevelWindow); + break; + case ButtonType::PauseButton: + if (windowInfo->isPaused) + { + windowInfo->LottieIsland.Resume(); + } + else + { + windowInfo->LottieIsland.Pause(); + } + SetPauseState(windowInfo, !windowInfo->isPaused, topLevelWindow); + break; + case ButtonType::StopButton: + windowInfo->LottieIsland.Stop(); + SetPauseState(windowInfo, false, topLevelWindow); + break; + case ButtonType::ReverseButton: + if (windowInfo->LottieIsland.PlaybackRate() == 1.0) + { + windowInfo->LottieIsland.PlaybackRate(-1.0); + } + else + { + windowInfo->LottieIsland.PlaybackRate(1.0); + } + break; + default: + throw winrt::hresult_invalid_argument{ L"Invalid button type." }; + } +} + +void SetButtonText(ButtonType type, const std::wstring_view& text, HWND topLevelWindow) +{ + int buttonIndex = static_cast(type); + HWND buttonHwnd = ::GetDlgItem(topLevelWindow, 500 + buttonIndex); + ::SendMessageW(buttonHwnd, WM_SETTEXT, 0, reinterpret_cast(text.data())); +} + +void SetPauseState(WindowInfo* windowInfo, bool isPaused, HWND topLevelWindow) +{ + if (windowInfo->isPaused == isPaused) + { + return; + } + + SetButtonText(ButtonType::PauseButton, + isPaused ? L"Resume" : L"Pause", + topLevelWindow); + + windowInfo->isPaused = isPaused; +} \ No newline at end of file diff --git a/LottieIsland/LottieContentIsland.cpp b/LottieIsland/LottieContentIsland.cpp index 67582aaa7..69ddc50f1 100644 --- a/LottieIsland/LottieContentIsland.cpp +++ b/LottieIsland/LottieContentIsland.cpp @@ -11,17 +11,7 @@ namespace winrt::LottieIsland::implementation m_rootVisual = m_compositor.CreateContainerVisual(); m_island = winrt::ContentIsland::Create(m_rootVisual); - InitializeTree(); - } - - int32_t LottieContentIsland::MyProperty() - { - return m_myProperty; - } - - void LottieContentIsland::MyProperty(int32_t value) - { - m_myProperty = value; + m_island.StateChanged({ get_weak(), &LottieContentIsland::OnIslandStateChanged }); } winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisualSource LottieContentIsland::AnimatedVisualSource() const @@ -32,105 +22,188 @@ namespace winrt::LottieIsland::implementation void LottieContentIsland::AnimatedVisualSource(winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisualSource const& value) { - // Set the AnimatedVisualSource - m_animatedVisualSource = value; - winrt::Windows::Foundation::IInspectable diagnostics; - winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual animatedVisual = m_animatedVisualSource.TryCreateAnimatedVisual(m_compositor, diagnostics); + if (m_animatedVisualSource == value) + { + return; + } - // Set up lottie - m_rootVisual.Children().InsertAtTop(animatedVisual.RootVisual()); - auto animation = m_compositor.CreateScalarKeyFrameAnimation(); - animation.Duration(animatedVisual.Duration()); - auto linearEasing = m_compositor.CreateLinearEasingFunction(); - animation.InsertKeyFrame(0, 0); - animation.InsertKeyFrame(1, 1, linearEasing); - animation.IterationBehavior(winrt::Microsoft::UI::Composition::AnimationIterationBehavior::Forever); - animatedVisual.RootVisual().Properties().StartAnimation(L"Progress", animation); + if (m_animatedVisualSource != nullptr) + { + StopAnimation(); + m_rootVisual.Children().RemoveAll(); + m_animatedVisual = nullptr; + m_animatedVisualSource = nullptr; + } + + if (value != nullptr) + { + // Set the AnimatedVisualSource + m_animatedVisualSource = value; + winrt::Windows::Foundation::IInspectable diagnostics; + m_animatedVisual = m_animatedVisualSource.TryCreateAnimatedVisual(m_compositor, diagnostics); + + // Set up lottie + m_rootVisual.Children().InsertAtTop(m_animatedVisual.RootVisual()); + + // Tell our hosting environment that our size changed, and ask for confirmation of our ActualSize. + // Any changes will come back through a StateChanged notification + m_island.RequestSize(m_animatedVisual.Size()); + + // While that request is propagating, resize ourselves to fill the island's current size + Resize(m_island.ActualSize()); + + StartAnimation(0.0, 1.0, true /*loop*/); + } } winrt::Windows::Foundation::TimeSpan LottieContentIsland::Duration() const { - if (m_animatedVisualSource == nullptr) + if (m_animatedVisual == nullptr) { return 0ms; } - throw winrt::hresult_not_implemented{}; + return m_animatedVisual.Duration(); } bool LottieContentIsland::IsAnimationLoaded() const { - if (m_animatedVisualSource == nullptr) - { - return false; - } - - throw winrt::hresult_not_implemented{}; + // Revisit this when we get JSON loading to work. + return m_animatedVisual != nullptr; } bool LottieContentIsland::IsPlaying() const { - if (m_animatedVisualSource == nullptr) + return m_progressPropertySet != nullptr; + } + + double LottieContentIsland::PlaybackRate() const + { + return m_playbackRate; + } + + void LottieContentIsland::PlaybackRate(double rate) + { + m_playbackRate = rate; + if (m_animationController != nullptr) { - return false; + m_animationController.PlaybackRate(m_playbackRate); } - - throw winrt::hresult_not_implemented{}; } void LottieContentIsland::Pause() { - throw winrt::hresult_not_implemented{}; + if (m_animationController != nullptr) + { + m_animationController.Pause(); + } } winrt::Windows::Foundation::IAsyncAction LottieContentIsland::PlayAsync(double fromProgress, double toProgress, bool looped) { - throw winrt::hresult_not_implemented{}; + // Stop any existing animation + StopAnimation(); + + // TODO: actually implement the async portion of this properly using composition batches. + + StartAnimation(fromProgress, toProgress, looped); + co_return; } void LottieContentIsland::Resume() { - throw winrt::hresult_not_implemented{}; + if (m_animationController != nullptr) + { + m_animationController.Resume(); + } } void LottieContentIsland::Stop() { - throw winrt::hresult_not_implemented{}; + StopAnimation(); } - void LottieContentIsland::InitializeTree() + void LottieContentIsland::StartAnimation(double fromProgress, double toProgress, bool loop) { - // Make a blue square with a red square inside of it. - // Add some animations to the red square - - // 300 x 300 blue background - auto blueVisual = m_compositor.CreateSpriteVisual(); - auto blueBrush = m_compositor.CreateColorBrush(winrt::Windows::UI::Colors::Blue()); - blueVisual.Brush(blueBrush); - blueVisual.Size({ 300, 300 }); + if (m_animatedVisual == nullptr) + { + throw winrt::hresult_illegal_method_call{ L"Cannot start an animation before the animation is loaded." }; + } - m_rootVisual.Children().InsertAtTop(blueVisual); + auto animation = m_compositor.CreateScalarKeyFrameAnimation(); + animation.Duration(m_animatedVisual.Duration()); + auto linearEasing = m_compositor.CreateLinearEasingFunction(); + animation.InsertKeyFrame(0, fromProgress); + animation.InsertKeyFrame(1, toProgress, linearEasing); + if (loop) + { + animation.IterationBehavior(winrt::AnimationIterationBehavior::Forever); + } + else + { + animation.IterationBehavior(winrt::AnimationIterationBehavior::Count); + animation.IterationCount(1); + } - // 50 x 50 red square - auto redVisual = m_compositor.CreateSpriteVisual(); - auto redBrush = m_compositor.CreateColorBrush(winrt::Windows::UI::Colors::Red()); - redVisual.Brush(redBrush); - redVisual.Size({ 50, 50 }); + m_progressPropertySet = m_animatedVisual.RootVisual().Properties(); + m_progressPropertySet.StartAnimation(L"Progress", animation); + m_animationController = m_progressPropertySet.TryGetAnimationController(L"Progress"); + m_animationController.PlaybackRate(m_playbackRate); + m_previousFromProgress = fromProgress; + } - m_rootVisual.Children().InsertAtTop(redVisual); + void LottieContentIsland::StopAnimation() + { + if (!IsPlaying()) + { + // No-op + return; + } - // Setup an animation + // Stop and snap to the beginning of the animation + m_progressPropertySet.StopAnimation(L"Progress"); + m_progressPropertySet.InsertScalar(L"Progress", m_previousFromProgress); - auto keyFrameAnimation = m_compositor.CreateVector3KeyFrameAnimation(); - keyFrameAnimation.InsertKeyFrame(0.0f, { 0, 0, 0 }); - keyFrameAnimation.InsertKeyFrame(1.0f, { 250.f, 250.f, 0 }); + // Cleanup + m_previousFromProgress = 0.0; + m_animationController = nullptr; + m_progressPropertySet = nullptr; + } - // Bounce back and forth forever - keyFrameAnimation.Duration(2000ms); - keyFrameAnimation.Direction(winrt::AnimationDirection::Alternate); - keyFrameAnimation.IterationBehavior(winrt::AnimationIterationBehavior::Forever); + void LottieContentIsland::OnIslandStateChanged(const winrt::ContentIsland& /*island*/, const winrt::ContentIslandStateChangedEventArgs& args) + { + if (args.DidActualSizeChange() && IsAnimationLoaded()) + { + Resize(m_island.ActualSize()); + } + } - // Start animation - redVisual.StartAnimation(L"Offset", keyFrameAnimation); + void LottieContentIsland::Resize(const float2& newSize) + { + float2 desiredSize = m_animatedVisual.Size(); + if (newSize.x == 0 || newSize.y == 0 || desiredSize.x == 0 || desiredSize.y == 0) + { + // Don't try to scale (and hit fun divide by 0) if we have no effective size + m_rootVisual.Size({ 0, 0 }); + } + else + { + // We implement Uniform stretching here, where we don't overflow bounds, + // but keep aspect ratio. + float2 scale = newSize / m_animatedVisual.Size(); + + // Take the smaller scale and set both axes to that. + if (scale.x < scale.y) + { + scale.y = scale.x; + } + else + { + scale.x = scale.y; + } + + m_rootVisual.Size(desiredSize); + m_rootVisual.Scale({ scale.x, scale.y, 1.f }); + } } -} +} \ No newline at end of file diff --git a/LottieIsland/LottieContentIsland.h b/LottieIsland/LottieContentIsland.h index d4761c383..6b263d576 100644 --- a/LottieIsland/LottieContentIsland.h +++ b/LottieIsland/LottieContentIsland.h @@ -13,9 +13,6 @@ namespace winrt::LottieIsland::implementation { LottieContentIsland(const winrt::Compositor& compositor); - int32_t MyProperty(); - void MyProperty(int32_t value); - winrt::ContentIsland Island() const { return m_island; @@ -30,6 +27,9 @@ namespace winrt::LottieIsland::implementation bool IsPlaying() const; + double PlaybackRate() const; + void PlaybackRate(double rate); + void Pause(); winrt::Windows::Foundation::IAsyncAction PlayAsync(double fromProgress, double toProgress, bool looped); @@ -39,13 +39,22 @@ namespace winrt::LottieIsland::implementation void Stop(); private: - void InitializeTree(); + void StartAnimation(double fromProgress, double toProgress, bool loop); + void StopAnimation(); + + void OnIslandStateChanged(const winrt::ContentIsland& island, const winrt::ContentIslandStateChangedEventArgs& args); + + void Resize(const float2& size); - int32_t m_myProperty = 42; winrt::Compositor m_compositor{ nullptr }; winrt::ContainerVisual m_rootVisual{ nullptr }; winrt::ContentIsland m_island{ nullptr }; winrt::IAnimatedVisualSource m_animatedVisualSource{ nullptr }; + winrt::IAnimatedVisual m_animatedVisual{ nullptr }; + winrt::CompositionPropertySet m_progressPropertySet{ nullptr }; + winrt::AnimationController m_animationController{ nullptr }; + double m_previousFromProgress = 0.0; + double m_playbackRate = 1.0f; }; } diff --git a/LottieIsland/LottieContentIsland.idl b/LottieIsland/LottieContentIsland.idl index 505340f7f..233bfbe5b 100644 --- a/LottieIsland/LottieContentIsland.idl +++ b/LottieIsland/LottieContentIsland.idl @@ -5,11 +5,8 @@ { LottieContentIsland(Microsoft.UI.Composition.Compositor compositor); - Int32 MyProperty; - Microsoft.UI.Content.ContentIsland Island{ get; }; - // TODO: actually give this the right type Microsoft.UI.Xaml.Controls.IAnimatedVisualSource AnimatedVisualSource; Windows.Foundation.TimeSpan Duration{ get; }; @@ -18,6 +15,8 @@ Boolean IsPlaying{ get; }; + Double PlaybackRate; + void Pause(); Windows.Foundation.IAsyncAction PlayAsync(Double fromProgress, Double toProgress, Boolean looped); @@ -25,5 +24,7 @@ void Resume(); void Stop(); + + } } diff --git a/LottieIsland/pch.h b/LottieIsland/pch.h index ab161d715..6bfe0b5c1 100644 --- a/LottieIsland/pch.h +++ b/LottieIsland/pch.h @@ -21,7 +21,10 @@ namespace winrt using namespace ::winrt::Microsoft::UI::Content; using IAnimatedVisualSource = ::winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisualSource; + using IAnimatedVisual = ::winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual; } // Opt into time literals (i.e. 200ms, 1min, 15s) using namespace std::chrono_literals; + +using float2 = winrt::Windows::Foundation::Numerics::float2; diff --git a/version.json b/version.json index f79db1e6e..59dd40732 100644 --- a/version.json +++ b/version.json @@ -1,5 +1,5 @@ { - "version": "8.0.230813-rc.{height}", + "version": "8.0.230813-rc-FHL.{height}", "publicReleaseRefSpec": [ "^refs/heads/main$", // we release out of main "^refs/heads/dev$", // we release out of dev From 266968446bba2c0843702a08330172c89146ad2d Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Fri, 12 Apr 2024 03:10:05 -0400 Subject: [PATCH 04/40] Changed LottieVisualSource2 to LottieVisualSourceFrameworkless and wrapped XAML interfaces in new WinRT classes --- CppApp/App.xaml | 21 - CppApp/App.xaml.cpp | 38 - CppApp/App.xaml.h | 19 - CppApp/Assets/LottieLogo1.json | 7390 ----------------- CppApp/Assets/LottieLogo1.png | Bin 17039 -> 0 bytes CppApp/Assets/SplashScreen.png | Bin 78102 -> 0 bytes CppApp/Assets/Square150x150Logo.png | Bin 10887 -> 0 bytes CppApp/Assets/Square44x44Logo.png | Bin 2793 -> 0 bytes CppApp/Assets/Wide310x150Logo.png | Bin 11204 -> 0 bytes CppApp/Assets/logo.png | Bin 3138 -> 0 bytes CppApp/Assets/windows-sdk.ico | Bin 2150 -> 0 bytes CppApp/CppApp.vcxproj | 215 - CppApp/CppApp.vcxproj.filters | 66 - CppApp/MainPage.xaml | 13 - CppApp/MainPage.xaml.cpp | 41 - CppApp/MainPage.xaml.h | 29 - CppApp/MainWindow.xaml | 13 - CppApp/MainWindow.xaml.cpp | 89 - CppApp/MainWindow.xaml.h | 29 - CppApp/Package.appxmanifest | 60 - CppApp/Project.idl | 50 - CppApp/SampleConfiguration.cpp | 25 - CppApp/SampleConfiguration.h | 15 - CppApp/SettingsPage.xaml | 40 - CppApp/SettingsPage.xaml.cpp | 51 - CppApp/SettingsPage.xaml.h | 23 - CppApp/Styles.xaml | 132 - CppApp/app.manifest | 15 - CppApp/packages.config | 7 - CppApp/pch.cpp | 4 - CppApp/pch.h | 31 - Lottie-Windows.sln | 95 +- Lottie/SimpleIslandApp.cpp | 12 +- Lottie/SimpleIslandApp.vcxproj | 2 + Lottie/packages.config | 1 + LottieIsland/LottieContentIsland.cpp | 4 +- LottieIsland/LottieContentIsland.h | 13 +- LottieIsland/LottieContentIsland.idl | 2 +- LottieIsland/LottieIsland.vcxproj | 31 +- LottieIsland/packages.config | 2 +- LottieIsland/pch.h | 8 +- .../LottieIslandProjection.csproj | 28 + LottieWinRT/AnimatedVisualWinRT.cs | 52 + LottieWinRT/LottieVisualSourceWinRT.cs | 181 +- LottieWinRT/LottieWinRT.csproj | 10 +- source/Lottie/Lottie.projitems | 2 +- source/Lottie/LottieVisualSource.cs | 44 +- ....cs => LottieVisualSourceFrameworkless.cs} | 43 +- version.json | 2 +- 49 files changed, 353 insertions(+), 8595 deletions(-) delete mode 100644 CppApp/App.xaml delete mode 100644 CppApp/App.xaml.cpp delete mode 100644 CppApp/App.xaml.h delete mode 100644 CppApp/Assets/LottieLogo1.json delete mode 100644 CppApp/Assets/LottieLogo1.png delete mode 100644 CppApp/Assets/SplashScreen.png delete mode 100644 CppApp/Assets/Square150x150Logo.png delete mode 100644 CppApp/Assets/Square44x44Logo.png delete mode 100644 CppApp/Assets/Wide310x150Logo.png delete mode 100644 CppApp/Assets/logo.png delete mode 100644 CppApp/Assets/windows-sdk.ico delete mode 100644 CppApp/CppApp.vcxproj delete mode 100644 CppApp/CppApp.vcxproj.filters delete mode 100644 CppApp/MainPage.xaml delete mode 100644 CppApp/MainPage.xaml.cpp delete mode 100644 CppApp/MainPage.xaml.h delete mode 100644 CppApp/MainWindow.xaml delete mode 100644 CppApp/MainWindow.xaml.cpp delete mode 100644 CppApp/MainWindow.xaml.h delete mode 100644 CppApp/Package.appxmanifest delete mode 100644 CppApp/Project.idl delete mode 100644 CppApp/SampleConfiguration.cpp delete mode 100644 CppApp/SampleConfiguration.h delete mode 100644 CppApp/SettingsPage.xaml delete mode 100644 CppApp/SettingsPage.xaml.cpp delete mode 100644 CppApp/SettingsPage.xaml.h delete mode 100644 CppApp/Styles.xaml delete mode 100644 CppApp/app.manifest delete mode 100644 CppApp/packages.config delete mode 100644 CppApp/pch.cpp delete mode 100644 CppApp/pch.h create mode 100644 LottieIslandProjection/LottieIslandProjection.csproj create mode 100644 LottieWinRT/AnimatedVisualWinRT.cs rename source/Lottie/{LottieVisualSource2.cs => LottieVisualSourceFrameworkless.cs} (91%) diff --git a/CppApp/App.xaml b/CppApp/App.xaml deleted file mode 100644 index 4ddf47626..000000000 --- a/CppApp/App.xaml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - diff --git a/CppApp/App.xaml.cpp b/CppApp/App.xaml.cpp deleted file mode 100644 index 869a8fd9e..000000000 --- a/CppApp/App.xaml.cpp +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -#include "pch.h" - -#include "App.xaml.h" -#include "MainWindow.xaml.h" - -namespace winrt -{ - using namespace Windows::Foundation; - using namespace Microsoft::UI::Xaml; -} - -namespace winrt::CppApp::implementation -{ - App::App() - { - InitializeComponent(); - -#if defined _DEBUG && !defined DISABLE_XAML_GENERATED_BREAK_ON_UNHANDLED_EXCEPTION - UnhandledException([](winrt::IInspectable const&, winrt::UnhandledExceptionEventArgs const& e) - { - if (IsDebuggerPresent()) - { - auto errorMessage = e.Message(); - __debugbreak(); - } - }); -#endif - } - - void App::OnLaunched(winrt::LaunchActivatedEventArgs const&) - { - window = winrt::make(); - window.Activate(); - } -} diff --git a/CppApp/App.xaml.h b/CppApp/App.xaml.h deleted file mode 100644 index 31b689b93..000000000 --- a/CppApp/App.xaml.h +++ /dev/null @@ -1,19 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -#pragma once -#include "App.xaml.g.h" -#include "pch.h" - -namespace winrt::CppApp::implementation -{ - struct App : AppT - { - App(); - - void OnLaunched(Microsoft::UI::Xaml::LaunchActivatedEventArgs const&); - - private: - Microsoft::UI::Xaml::Window window{ nullptr }; - }; -} diff --git a/CppApp/Assets/LottieLogo1.json b/CppApp/Assets/LottieLogo1.json deleted file mode 100644 index cb637e3ea..000000000 --- a/CppApp/Assets/LottieLogo1.json +++ /dev/null @@ -1,7390 +0,0 @@ -{ - "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/CppApp/Assets/LottieLogo1.png b/CppApp/Assets/LottieLogo1.png deleted file mode 100644 index 45198c75c20bee1032afe869bfafb6b816fa0633..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17039 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 diff --git a/CppApp/Assets/Square44x44Logo.png b/CppApp/Assets/Square44x44Logo.png deleted file mode 100644 index 844b60c201cf8c1eb46866ac5bee1def5e5e6a24..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2793 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 bR~Z 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 WwDLL`=mUcOt0oOr5U&t32>3tVaPEr$ diff --git a/CppApp/Assets/logo.png b/CppApp/Assets/logo.png deleted file mode 100644 index fd2293e7bd8621a23122c5d65ddcba9ed2dd8f45..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3138 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 Z7r%3*fy_O`MXDNeo#;(s(E^)w`~)@M5;Fh* diff --git a/CppApp/CppApp.vcxproj b/CppApp/CppApp.vcxproj deleted file mode 100644 index 3a1ef5ddb..000000000 --- a/CppApp/CppApp.vcxproj +++ /dev/null @@ -1,215 +0,0 @@ - - - - - ..\packages - - - - - - - true - true - true - {34a4ad19-a703-47f3-b279-e505c6a2a935} - CppApp - CppApp - - $(RootNamespace) - en-US - 16.0 - false - true - Windows Store - 10.0 - 10.0 - 10.0.17763.0 - true - true - - - - - Debug - Win32 - - - Debug - x64 - - - Debug - ARM64 - - - Release - Win32 - - - Release - x64 - - - Release - ARM64 - - - - Application - Unicode - true - - - true - true - - - false - true - false - - - - - - - - - - Use - pch.h - $(IntDir)pch.pch - Level4 - %(AdditionalOptions) /bigobj - - - - - _DEBUG;%(PreprocessorDefinitions) - - - - - NDEBUG;%(PreprocessorDefinitions) - - - true - true - - - - - - - - MainPage.xaml - Code - - - - App.xaml - - - MainWindow.xaml - - - - SettingsPage.xaml - Code - - - - - - Designer - - - - Designer - - - Designer - - - - - MainPage.xaml - Code - - - Create - - - App.xaml - - - MainWindow.xaml - - - - - SettingsPage.xaml - Code - - - - - Code - - - - - - - - - - - - - - - - - - true - - - - - - Designer - - - - - {dda0d223-4b59-455d-a8b1-cfae59523ffb} - true - - - - - - - - - - - - This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - - - - - - - - - \ No newline at end of file diff --git a/CppApp/CppApp.vcxproj.filters b/CppApp/CppApp.vcxproj.filters deleted file mode 100644 index becc754c3..000000000 --- a/CppApp/CppApp.vcxproj.filters +++ /dev/null @@ -1,66 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - Assets - - - Assets - - - Assets - - - Assets - - - Assets - - - Assets - - - Assets - - - - - {$guid1} - - - - - - - - - - - - - - Assets - - - \ No newline at end of file diff --git a/CppApp/MainPage.xaml b/CppApp/MainPage.xaml deleted file mode 100644 index 36d5a9a73..000000000 --- a/CppApp/MainPage.xaml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - diff --git a/CppApp/MainPage.xaml.cpp b/CppApp/MainPage.xaml.cpp deleted file mode 100644 index 1316df4d8..000000000 --- a/CppApp/MainPage.xaml.cpp +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -#include "pch.h" -#include "MainPage.xaml.h" -#if __has_include("MainPage.g.cpp") -#include "MainPage.g.cpp" -#endif - -#include -#include - -namespace winrt -{ - using namespace Microsoft::UI::Composition; - using namespace Microsoft::UI::Xaml; - using namespace Microsoft::UI::Xaml::Controls; - using namespace Microsoft::UI::Xaml::Hosting; - using namespace Microsoft::UI::Xaml::Media; - using namespace Microsoft::UI::Xaml::Media::Animation; - using namespace Microsoft::UI::Xaml::Navigation; - using namespace LottieWinRT; -} - -namespace winrt::CppApp::implementation -{ - CppApp::MainPage MainPage::current{ nullptr }; - - MainPage::MainPage() - { - InitializeComponent(); - MainPage::current = *this; - - m_compositor = ElementCompositionPreview::GetElementVisual(MyGrid()).Compositor(); - m_rootVisual = m_compositor.CreateContainerVisual(); - ElementCompositionPreview::SetElementChildVisual(MyGrid(), m_rootVisual); - - winrt::LottieWinRT::LottieVisualSourceWinRT lottieAnimatedVisual; - lottieAnimatedVisual.SetUpLottie(m_compositor, m_rootVisual, L"ms-appx:///LottieLogo1.json"); - } -} diff --git a/CppApp/MainPage.xaml.h b/CppApp/MainPage.xaml.h deleted file mode 100644 index 1979ae935..000000000 --- a/CppApp/MainPage.xaml.h +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -#pragma once -#include "MainPage.g.h" - -namespace winrt::CppApp::implementation -{ - struct MainPage : MainPageT - { - MainPage(); - static CppApp::MainPage Current() { return current; } - static Windows::Foundation::Collections::IVector Scenarios() { return scenariosInner; } - - private: - static Windows::Foundation::Collections::IVector scenariosInner; - static CppApp::MainPage current; - winrt::Microsoft::UI::Composition::Compositor m_compositor{ nullptr }; - winrt::Microsoft::UI::Composition::ContainerVisual m_rootVisual{ nullptr }; - winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisualSource m_animatedVisualSource{ nullptr }; - }; -} - -namespace winrt::CppApp::factory_implementation -{ - struct MainPage : MainPageT - { - }; -} diff --git a/CppApp/MainWindow.xaml b/CppApp/MainWindow.xaml deleted file mode 100644 index a1f056aea..000000000 --- a/CppApp/MainWindow.xaml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - diff --git a/CppApp/MainWindow.xaml.cpp b/CppApp/MainWindow.xaml.cpp deleted file mode 100644 index 4b6d72bf9..000000000 --- a/CppApp/MainWindow.xaml.cpp +++ /dev/null @@ -1,89 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -#include "pch.h" -#include "MainWindow.xaml.h" -#if __has_include("MainWindow.g.cpp") -#include "MainWindow.g.cpp" - -#include "microsoft.ui.xaml.window.h" -#include "SampleConfiguration.h" -#endif - -namespace winrt -{ - using namespace Microsoft::UI::Xaml; -} - -namespace winrt::CppApp::implementation -{ - MainWindow::MainWindow() - { - InitializeComponent(); - - Title(winrt::CppApp::SampleConfig::FeatureName); - - HWND hwnd = GetWindowHandle(); - LoadIcon(hwnd, L"Assets/windows-sdk.ico"); - SetWindowSize(hwnd, 1050, 800); - PlacementCenterWindowInMonitorWin32(hwnd); - } - - HWND MainWindow::GetWindowHandle() - { - if (_hwnd == nullptr) - { - Window window = *this; - window.as()->get_WindowHandle(&_hwnd); - } - return _hwnd; - } - - void MainWindow::LoadIcon(HWND hwnd, wchar_t const* iconPath) - { - HANDLE hSmallIcon = LoadImageW(nullptr, iconPath, IMAGE_ICON, - GetSystemMetrics(SM_CXSMICON), GetSystemMetrics(SM_CYSMICON), - LR_LOADFROMFILE | LR_SHARED); - SendMessageW(hwnd, WM_SETICON, ICON_SMALL, reinterpret_cast(hSmallIcon)); - - HANDLE hBigIcon = LoadImageW(nullptr, iconPath, IMAGE_ICON, - GetSystemMetrics(SM_CXICON), GetSystemMetrics(SM_CYICON), - LR_LOADFROMFILE | LR_SHARED); - SendMessageW(hwnd, WM_SETICON, ICON_BIG, reinterpret_cast(hBigIcon)); - } - - void MainWindow::SetWindowSize(HWND hwnd, int width, int height) - { - // Win32 uses pixels and WinUI 3 uses effective pixels, so you should apply the DPI scale factor - const UINT dpi = GetDpiForWindow(hwnd); - const float scalingFactor = static_cast(dpi) / 96; - const int widthScaled = static_cast(width * scalingFactor); - const int heightScaled = static_cast(height * scalingFactor); - - SetWindowPos(hwnd, nullptr, 0, 0, widthScaled, heightScaled, SWP_NOMOVE | SWP_NOZORDER); - } - - void MainWindow::PlacementCenterWindowInMonitorWin32(HWND hwnd) - { - RECT windowMontiorRectToAdjust; - GetWindowRect(hwnd, &windowMontiorRectToAdjust); - ClipOrCenterRectToMonitorWin32(windowMontiorRectToAdjust); - SetWindowPos(hwnd, nullptr, windowMontiorRectToAdjust.left, - windowMontiorRectToAdjust.top, 0, 0, SWP_NOSIZE | SWP_NOZORDER | SWP_NOACTIVATE); - } - - void MainWindow::ClipOrCenterRectToMonitorWin32(RECT& adjustedWindowRect) - { - MONITORINFO mi{ sizeof(mi) }; - GetMonitorInfoW(MonitorFromRect(&adjustedWindowRect, MONITOR_DEFAULTTONEAREST), &mi); - - const auto& rcWork = mi.rcWork; - const int w = adjustedWindowRect.right - adjustedWindowRect.left; - const int h = adjustedWindowRect.bottom - adjustedWindowRect.top; - - adjustedWindowRect.left = rcWork.left + (rcWork.right - rcWork.left - w) / 2; - adjustedWindowRect.top = rcWork.top + (rcWork.bottom - rcWork.top - h) / 2; - adjustedWindowRect.right = adjustedWindowRect.left + w; - adjustedWindowRect.bottom = adjustedWindowRect.top + h; - } -} diff --git a/CppApp/MainWindow.xaml.h b/CppApp/MainWindow.xaml.h deleted file mode 100644 index 27c0f2b66..000000000 --- a/CppApp/MainWindow.xaml.h +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -#pragma once -#include "MainWindow.g.h" -#include "pch.h" - -namespace winrt::CppApp::implementation -{ - struct MainWindow : MainWindowT - { - MainWindow(); - - private: - HWND _hwnd{ nullptr }; - void SetWindowSize(HWND hwnd, const int width, const int height); - HWND GetWindowHandle(); - void LoadIcon(HWND hwnd, wchar_t const* iconName); - void ClipOrCenterRectToMonitorWin32(RECT& rc); - void PlacementCenterWindowInMonitorWin32(HWND hwnd); - }; -} - -namespace winrt::CppApp::factory_implementation -{ - struct MainWindow : MainWindowT - { - }; -} diff --git a/CppApp/Package.appxmanifest b/CppApp/Package.appxmanifest deleted file mode 100644 index e72350721..000000000 --- a/CppApp/Package.appxmanifest +++ /dev/null @@ -1,60 +0,0 @@ - - - - - - - - CppApp - Microsoft Corporation - Assets\logo.png - - - - - - - - - - - - - - - - - - - - - - - - - WinRT.Host.dll - - - - - - - - - - diff --git a/CppApp/Project.idl b/CppApp/Project.idl deleted file mode 100644 index b97fd728a..000000000 --- a/CppApp/Project.idl +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -namespace CppApp -{ - /* The following code is scenario/feature-specific IDL. - Samples authors should modify these runtime classes as appropriate. */ - - /*[default_interface] - runtimeclass Scenario1_CustomControl : Microsoft.UI.Xaml.Controls.Page - { - Scenario1_CustomControl(); - } - - [default_interface] - runtimeclass Scenario2_UserControl : Microsoft.UI.Xaml.Controls.Page - { - Scenario2_UserControl(); - }*/ - - /* The following code is template-specific IDL. - These runtime classes are the same across all C++/WinRT WinUI samples. */ - - [default_interface] - runtimeclass MainPage : Microsoft.UI.Xaml.Controls.Page - { - MainPage(); - static MainPage Current(); - //void NotifyUser(String strMessage, Microsoft.UI.Xaml.Controls.InfoBarSeverity severity); - } - - // To use Scenario in a winrt::Windows::Foundation::Collections::IVector, Scenario should be a WinRT type - struct Scenario - { - String Title; - String ClassName; - }; - - [default_interface] - runtimeclass MainWindow : Microsoft.UI.Xaml.Window - { - MainWindow(); - } - - [default_interface] - runtimeclass SettingsPage : Microsoft.UI.Xaml.Controls.Page - { - SettingsPage(); - } -} diff --git a/CppApp/SampleConfiguration.cpp b/CppApp/SampleConfiguration.cpp deleted file mode 100644 index 2b18ed07b..000000000 --- a/CppApp/SampleConfiguration.cpp +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -#pragma once -#include "pch.h" -#include "SampleConfiguration.h" -#include "MainPage.xaml.h" - -namespace winrt -{ - using namespace Microsoft::UI::Xaml; - using namespace Windows::Foundation::Collections; -} - -namespace winrt::CppApp -{ - IVector implementation::MainPage::scenariosInner = single_threaded_observable_vector( - { - /*Scenario{ L"Custom Control", hstring(name_of())}, - Scenario{ L"User Control", hstring(name_of())}*/ - }); - - hstring SampleConfig::FeatureName{ L"CppApp" }; - ElementTheme SampleConfig::CurrentTheme{ ElementTheme::Default }; -} diff --git a/CppApp/SampleConfiguration.h b/CppApp/SampleConfiguration.h deleted file mode 100644 index 26cb27c95..000000000 --- a/CppApp/SampleConfiguration.h +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -#pragma once -#include "pch.h" - -namespace winrt::CppApp -{ - struct SampleConfig - { - public: - static hstring FeatureName; - static Microsoft::UI::Xaml::ElementTheme CurrentTheme; - }; -} diff --git a/CppApp/SettingsPage.xaml b/CppApp/SettingsPage.xaml deleted file mode 100644 index 5a4e12dc0..000000000 --- a/CppApp/SettingsPage.xaml +++ /dev/null @@ -1,40 +0,0 @@ - - - - - - - - - - - Light - - - - - Dark - - - - - Default - - - - - - - - - - - diff --git a/CppApp/SettingsPage.xaml.cpp b/CppApp/SettingsPage.xaml.cpp deleted file mode 100644 index b889cc401..000000000 --- a/CppApp/SettingsPage.xaml.cpp +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -#include "pch.h" -#include "SettingsPage.xaml.h" -#if __has_include("SettingsPage.g.cpp") -#include "SettingsPage.g.cpp" -#endif -#include - -namespace winrt -{ - using namespace Microsoft::UI::Xaml; - using namespace Microsoft::UI::Xaml::Controls; - using namespace Microsoft::UI::Xaml::Navigation; - using namespace Windows::Foundation; -} - -namespace winrt::CppApp::implementation -{ - SettingsPage::SettingsPage() - { - InitializeComponent(); - } - - void SettingsPage::OnNavigatedTo(NavigationEventArgs const&) - { - for (UIElement&& c : themePanel().Children()) - { - auto tag = c.as().Tag().as(); - if (tag == SampleConfig::CurrentTheme) - { - auto radioButton = c.as(); - radioButton.IsChecked(true); - } - } - } - - void SettingsPage::OnThemeRadioButtonChecked(IInspectable const& sender, RoutedEventArgs const&) - { - auto radiobutton = sender.as(); - auto selectedTheme = unbox_value(radiobutton.Tag()); - - auto content = MainPage::Current().Content().as(); - if (content != nullptr) - { - content.RequestedTheme(selectedTheme); - SampleConfig::CurrentTheme = content.RequestedTheme(); - } - } -} diff --git a/CppApp/SettingsPage.xaml.h b/CppApp/SettingsPage.xaml.h deleted file mode 100644 index 0fd19146c..000000000 --- a/CppApp/SettingsPage.xaml.h +++ /dev/null @@ -1,23 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -#pragma once - -#include "SettingsPage.g.h" - -namespace winrt::CppApp::implementation -{ - struct SettingsPage : SettingsPageT - { - SettingsPage(); - void OnNavigatedTo(Microsoft::UI::Xaml::Navigation::NavigationEventArgs const& e); - void OnThemeRadioButtonChecked(winrt::Windows::Foundation::IInspectable const& sender, winrt::Microsoft::UI::Xaml::RoutedEventArgs const& e); - }; -} - -namespace winrt::CppApp::factory_implementation -{ - struct SettingsPage : SettingsPageT - { - }; -} diff --git a/CppApp/Styles.xaml b/CppApp/Styles.xaml deleted file mode 100644 index 748aef03d..000000000 --- a/CppApp/Styles.xaml +++ /dev/null @@ -1,132 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/CppApp/app.manifest b/CppApp/app.manifest deleted file mode 100644 index 6f36cae81..000000000 --- a/CppApp/app.manifest +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - true/PM - PerMonitorV2, PerMonitor - - - diff --git a/CppApp/packages.config b/CppApp/packages.config deleted file mode 100644 index 79483e749..000000000 --- a/CppApp/packages.config +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/CppApp/pch.cpp b/CppApp/pch.cpp deleted file mode 100644 index 40e691ba7..000000000 --- a/CppApp/pch.cpp +++ /dev/null @@ -1,4 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -#include "pch.h" diff --git a/CppApp/pch.h b/CppApp/pch.h deleted file mode 100644 index 6db010fc5..000000000 --- a/CppApp/pch.h +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -#pragma once -#include -#include -#include -#include - -// Undefine GetCurrentTime macro to prevent -// conflict with Storyboard::GetCurrentTime -#undef GetCurrentTime - -#include -#include -#include -#include //For using xaml_typename - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include diff --git a/Lottie-Windows.sln b/Lottie-Windows.sln index 4fdd61af1..c8e334a6b 100644 --- a/Lottie-Windows.sln +++ b/Lottie-Windows.sln @@ -171,14 +171,14 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lottie-Windows-WinUI3", "Lo EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LottieSamples", "LottieSamples\LottieSamples.csproj", "{6AB50ED0-6273-4919-9ADE-50195664EF15}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CppApp", "CppApp\CppApp.vcxproj", "{34A4AD19-A703-47F3-B279-E505C6A2A935}" -EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LottieWinRT", "LottieWinRT\LottieWinRT.csproj", "{DDA0D223-4B59-455D-A8B1-CFAE59523FFB}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SimpleIslandApp", "Lottie\SimpleIslandApp.vcxproj", "{350A5EC2-B156-4AAF-9D80-A864C76BA0C5}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LottieIsland", "LottieIsland\LottieIsland.vcxproj", "{9BA7A2F2-B723-458B-A575-3F726D271465}" EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LottieIslandProjection", "LottieIslandProjection\LottieIslandProjection.csproj", "{D2DDC0A0-FD88-4053-9EA2-4233477D8477}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution BETA|Any CPU = BETA|Any CPU @@ -621,51 +621,6 @@ Global {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|x86.ActiveCfg = Release|x86 {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|x86.Build.0 = Release|x86 {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|x86.Deploy.0 = Release|x86 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|Any CPU.ActiveCfg = Debug|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|Any CPU.Build.0 = Debug|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|Any CPU.Deploy.0 = Debug|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|ARM.ActiveCfg = Debug|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|ARM.Build.0 = Debug|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|ARM.Deploy.0 = Debug|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|ARM64.ActiveCfg = Debug|ARM64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|ARM64.Build.0 = Debug|ARM64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|ARM64.Deploy.0 = Debug|ARM64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|x64.ActiveCfg = Debug|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|x64.Build.0 = Debug|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|x64.Deploy.0 = Debug|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|x86.ActiveCfg = Debug|Win32 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|x86.Build.0 = Debug|Win32 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.BETA|x86.Deploy.0 = Debug|Win32 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|Any CPU.ActiveCfg = Debug|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|Any CPU.Build.0 = Debug|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|Any CPU.Deploy.0 = Debug|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|ARM.ActiveCfg = Debug|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|ARM.Build.0 = Debug|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|ARM.Deploy.0 = Debug|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|ARM64.Build.0 = Debug|ARM64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|ARM64.Deploy.0 = Debug|ARM64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|x64.ActiveCfg = Debug|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|x64.Build.0 = Debug|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|x64.Deploy.0 = Debug|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|x86.ActiveCfg = Debug|Win32 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|x86.Build.0 = Debug|Win32 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Debug|x86.Deploy.0 = Debug|Win32 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|Any CPU.ActiveCfg = Release|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|Any CPU.Build.0 = Release|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|Any CPU.Deploy.0 = Release|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|ARM.ActiveCfg = Release|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|ARM.Build.0 = Release|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|ARM.Deploy.0 = Release|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|ARM64.ActiveCfg = Release|ARM64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|ARM64.Build.0 = Release|ARM64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|ARM64.Deploy.0 = Release|ARM64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|x64.ActiveCfg = Release|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|x64.Build.0 = Release|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|x64.Deploy.0 = Release|x64 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|x86.ActiveCfg = Release|Win32 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|x86.Build.0 = Release|Win32 - {34A4AD19-A703-47F3-B279-E505C6A2A935}.Release|x86.Deploy.0 = Release|Win32 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.ActiveCfg = Debug|Any CPU {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.Build.0 = Debug|Any CPU {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.ActiveCfg = Debug|Any CPU @@ -758,6 +713,36 @@ Global {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|x64.Build.0 = Release|x64 {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|x86.ActiveCfg = Release|Win32 {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|x86.Build.0 = Release|Win32 + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.BETA|Any CPU.ActiveCfg = Debug|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.BETA|Any CPU.Build.0 = Debug|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.BETA|ARM.ActiveCfg = Debug|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.BETA|ARM.Build.0 = Debug|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.BETA|ARM64.ActiveCfg = Debug|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.BETA|ARM64.Build.0 = Debug|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.BETA|x64.ActiveCfg = Debug|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.BETA|x64.Build.0 = Debug|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.BETA|x86.ActiveCfg = Debug|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.BETA|x86.Build.0 = Debug|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Debug|Any CPU.Build.0 = Debug|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Debug|ARM.ActiveCfg = Debug|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Debug|ARM.Build.0 = Debug|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Debug|ARM64.Build.0 = Debug|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Debug|x64.ActiveCfg = Debug|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Debug|x64.Build.0 = Debug|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Debug|x86.ActiveCfg = Debug|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Debug|x86.Build.0 = Debug|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Release|Any CPU.ActiveCfg = Release|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Release|Any CPU.Build.0 = Release|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Release|ARM.ActiveCfg = Release|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Release|ARM.Build.0 = Release|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Release|ARM64.ActiveCfg = Release|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Release|ARM64.Build.0 = Release|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Release|x64.ActiveCfg = Release|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Release|x64.Build.0 = Release|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Release|x86.ActiveCfg = Release|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Release|x86.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -843,7 +828,6 @@ Global source\WinStorageStreamsData\WinStorageStreamsData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 source\WinUIXamlMediaData\WinUIXamlMediaData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 source\YamlData\YamlData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 - source\NullablesAttributes\NullablesAttributes.projitems*{6ab50ed0-6273-4919-9ade-50195664ef15}*SharedItemsImports = 4 source\DotLottie\DotLottie.projitems*{7012420d-624c-4bd4-a1d2-1c6c1655ed3a}*SharedItemsImports = 13 source\UIData\UIData.projitems*{74601e6c-2dfe-4842-b170-047941abff2c}*SharedItemsImports = 13 source\LottieGen\LottieGen.projitems*{7654a857-9a99-4185-9f8e-dd0ce662af23}*SharedItemsImports = 13 @@ -879,21 +863,6 @@ Global source\UIDataCodeGen\UIDataCodeGen.projitems*{d02be6c8-14db-4b4f-8600-f3c9b69c104d}*SharedItemsImports = 13 source\LottieGenExe\LottieGenExe.projitems*{dc7f7a39-b7a7-40b4-937a-601460cae38c}*SharedItemsImports = 13 source\NullablesAttributes\NullablesAttributes.projitems*{e32587a8-94e8-4b68-91ad-f3612a48a62b}*SharedItemsImports = 13 - source\Animatables\Animatables.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\CompMetadata\CompMetadata.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\DotLottie\DotLottie.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\GenericData\GenericData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\LottieData\LottieData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\LottieMetadata\LottieMetadata.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\LottieReader\LottieReader.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\LottieToWinComp\LottieToWinComp.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\Lottie\Lottie.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\NullablesAttributes\NullablesAttributes.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\UIData\UIData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\WinCompData\WinCompData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\WinStorageStreamsData\WinStorageStreamsData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\WinUIXamlMediaData\WinUIXamlMediaData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\YamlData\YamlData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 source\Animatables\Animatables.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 source\CompMetadata\CompMetadata.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 source\DotLottie\DotLottie.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 diff --git a/Lottie/SimpleIslandApp.cpp b/Lottie/SimpleIslandApp.cpp index 90150b9b7..09589b0d4 100644 --- a/Lottie/SimpleIslandApp.cpp +++ b/Lottie/SimpleIslandApp.cpp @@ -16,6 +16,9 @@ namespace winrt using namespace winrt::Microsoft::UI; using namespace winrt::Microsoft::UI::Content; using namespace winrt::Microsoft::UI::Dispatching; + using namespace winrt::LottieIsland; + using namespace winrt::LottieWinRT; + using namespace winrt::Windows::Foundation; using float2 = winrt::Windows::Foundation::Numerics::float2; } @@ -195,19 +198,18 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) winrt::GetWindowIdFromWindow(hWnd)); // Create the LottieIsland, which is a WinRT wrapper for hosting a Lottie animation in a ContentIsland - windowInfo->LottieIsland = winrt::LottieIsland::LottieContentIsland{ windowInfo->Compositor }; + windowInfo->LottieIsland = winrt::LottieContentIsland{ windowInfo->Compositor }; // Connect the ContentIsland to the DesktopChildSiteBridge windowInfo->Bridge.Connect(windowInfo->LottieIsland.Island()); windowInfo->Bridge.Show(); // Live JSON loaded animation! - winrt::LottieWinRT::LottieVisualSourceWinRT lottieVisualSource; - auto token = lottieVisualSource.AnimatedVisualInvalidated([windowInfo, lottieVisualSource](const winrt::Windows::Foundation::IInspectable sender, auto&&) + winrt::LottieVisualSourceWinRT lottieVisualSource = winrt::LottieVisualSourceWinRT::CreateFromString(L"ms-appx:///LottieLogo1.json"); + lottieVisualSource.AnimatedVisualInvalidated([windowInfo, lottieVisualSource](const winrt::IInspectable sender, auto&&) { - windowInfo->LottieIsland.AnimatedVisualSource(lottieVisualSource.AnimatedVisual()); + windowInfo->LottieIsland.AnimatedVisualSource(lottieVisualSource); }); - lottieVisualSource.LoadLottie(L"ms-appx:///LottieLogo1.json"); // Add some Win32 controls to allow the app to play with the animation CreateWin32Button(ButtonType::PlayButton, L"Play", hWnd); diff --git a/Lottie/SimpleIslandApp.vcxproj b/Lottie/SimpleIslandApp.vcxproj index fe6687d31..3f58311aa 100644 --- a/Lottie/SimpleIslandApp.vcxproj +++ b/Lottie/SimpleIslandApp.vcxproj @@ -307,6 +307,7 @@ + @@ -321,5 +322,6 @@ + \ No newline at end of file diff --git a/Lottie/packages.config b/Lottie/packages.config index 26a6e74b1..c9a410489 100644 --- a/Lottie/packages.config +++ b/Lottie/packages.config @@ -1,5 +1,6 @@  + diff --git a/LottieIsland/LottieContentIsland.cpp b/LottieIsland/LottieContentIsland.cpp index 69ddc50f1..eb3dde8aa 100644 --- a/LottieIsland/LottieContentIsland.cpp +++ b/LottieIsland/LottieContentIsland.cpp @@ -14,13 +14,13 @@ namespace winrt::LottieIsland::implementation m_island.StateChanged({ get_weak(), &LottieContentIsland::OnIslandStateChanged }); } - winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisualSource LottieContentIsland::AnimatedVisualSource() const + winrt::LottieVisualSourceWinRT LottieContentIsland::AnimatedVisualSource() const { // Return the AnimatedVisualSource return m_animatedVisualSource; } - void LottieContentIsland::AnimatedVisualSource(winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisualSource const& value) + void LottieContentIsland::AnimatedVisualSource(winrt::LottieVisualSourceWinRT const& value) { if (m_animatedVisualSource == value) { diff --git a/LottieIsland/LottieContentIsland.h b/LottieIsland/LottieContentIsland.h index 6b263d576..711f0399e 100644 --- a/LottieIsland/LottieContentIsland.h +++ b/LottieIsland/LottieContentIsland.h @@ -2,11 +2,6 @@ #include "LottieContentIsland.g.h" -namespace winrt::Microsoft::UI::Xaml::Controls -{ - interface IAnimatedVisualSource; -} - namespace winrt::LottieIsland::implementation { struct LottieContentIsland : LottieContentIslandT @@ -18,8 +13,8 @@ namespace winrt::LottieIsland::implementation return m_island; } - winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisualSource AnimatedVisualSource() const; - void AnimatedVisualSource(const winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisualSource& source); + winrt::LottieVisualSourceWinRT AnimatedVisualSource() const; + void AnimatedVisualSource(const winrt::LottieVisualSourceWinRT& source); winrt::Windows::Foundation::TimeSpan Duration() const; @@ -49,8 +44,8 @@ namespace winrt::LottieIsland::implementation winrt::Compositor m_compositor{ nullptr }; winrt::ContainerVisual m_rootVisual{ nullptr }; winrt::ContentIsland m_island{ nullptr }; - winrt::IAnimatedVisualSource m_animatedVisualSource{ nullptr }; - winrt::IAnimatedVisual m_animatedVisual{ nullptr }; + winrt::LottieVisualSourceWinRT m_animatedVisualSource{ nullptr }; + winrt::AnimatedVisualWinRT m_animatedVisual{ nullptr }; winrt::CompositionPropertySet m_progressPropertySet{ nullptr }; winrt::AnimationController m_animationController{ nullptr }; double m_previousFromProgress = 0.0; diff --git a/LottieIsland/LottieContentIsland.idl b/LottieIsland/LottieContentIsland.idl index 233bfbe5b..53ef7b7fd 100644 --- a/LottieIsland/LottieContentIsland.idl +++ b/LottieIsland/LottieContentIsland.idl @@ -7,7 +7,7 @@ Microsoft.UI.Content.ContentIsland Island{ get; }; - Microsoft.UI.Xaml.Controls.IAnimatedVisualSource AnimatedVisualSource; + LottieWinRT.LottieVisualSourceWinRT AnimatedVisualSource; Windows.Foundation.TimeSpan Duration{ get; }; diff --git a/LottieIsland/LottieIsland.vcxproj b/LottieIsland/LottieIsland.vcxproj index a920ab704..8c81245c7 100644 --- a/LottieIsland/LottieIsland.vcxproj +++ b/LottieIsland/LottieIsland.vcxproj @@ -1,8 +1,8 @@ - - - + + + true true @@ -14,7 +14,7 @@ 14.0 Windows Store 10.0 - 10.0.22621.0 + 10.0.19041.0 10.0.17134.0 None Win32Proj @@ -148,21 +148,26 @@ false + + + {dda0d223-4b59-455d-a8b1-cfae59523ffb} + + - - - + + + This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - - - - - + + + + + + \ No newline at end of file diff --git a/LottieIsland/packages.config b/LottieIsland/packages.config index a61b5642a..f1152df39 100644 --- a/LottieIsland/packages.config +++ b/LottieIsland/packages.config @@ -1,6 +1,6 @@  - + \ No newline at end of file diff --git a/LottieIsland/pch.h b/LottieIsland/pch.h index 6bfe0b5c1..20e622052 100644 --- a/LottieIsland/pch.h +++ b/LottieIsland/pch.h @@ -14,14 +14,16 @@ #include #include #include +#include +//#include namespace winrt { using namespace ::winrt::Microsoft::UI::Composition; using namespace ::winrt::Microsoft::UI::Content; - - using IAnimatedVisualSource = ::winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisualSource; - using IAnimatedVisual = ::winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual; + using namespace ::winrt::LottieWinRT; + /*using IAnimatedVisual = ::winrt::CommunityToolkit::WinAppSDK::Frameworkless::Lottie::IAnimatedVisual; + using IAnimatedVisualSource = ::winrt::CommunityToolkit::WinAppSDK::Frameworkless::Lottie::IAnimatedVisualSource;*/ } // Opt into time literals (i.e. 200ms, 1min, 15s) diff --git a/LottieIslandProjection/LottieIslandProjection.csproj b/LottieIslandProjection/LottieIslandProjection.csproj new file mode 100644 index 000000000..b9b138724 --- /dev/null +++ b/LottieIslandProjection/LottieIslandProjection.csproj @@ -0,0 +1,28 @@ + + + + net7.0-windows10.0.19041.0 + + AnyCPU + + + LottieIsland + $(OutDir) + ..\nuget\ + $(GeneratedNugetDir)LottieIsland.nuspec + x64;Win32;ARM64 + $(GeneratedNugetDir) + + + + + + + + + + Microsoft.Graphics.Canvas; + + None + + diff --git a/LottieWinRT/AnimatedVisualWinRT.cs b/LottieWinRT/AnimatedVisualWinRT.cs new file mode 100644 index 000000000..04af99165 --- /dev/null +++ b/LottieWinRT/AnimatedVisualWinRT.cs @@ -0,0 +1,52 @@ +using System.Numerics; +using Microsoft.UI.Composition; +using Microsoft.UI.Xaml.Controls; + +namespace LottieWinRT +{ + public sealed class AnimatedVisualWinRT + { + private IAnimatedVisual? _animatedVisual; + + public AnimatedVisualWinRT() + { + } + + internal AnimatedVisualWinRT(IAnimatedVisual visual) + { + _animatedVisual = visual; + } + + public TimeSpan Duration + { + get + { + if (_animatedVisual == null) + { + return TimeSpan.Zero; + } + else + { + return _animatedVisual.Duration; + } + } + } + + public Visual? RootVisual { get => _animatedVisual?.RootVisual; } + + public Vector2 Size + { + get + { + if (_animatedVisual == null) + { + return Vector2.Zero; + } + else + { + return _animatedVisual.Size; + } + } + } + } +} diff --git a/LottieWinRT/LottieVisualSourceWinRT.cs b/LottieWinRT/LottieVisualSourceWinRT.cs index 4d5477041..55285f625 100644 --- a/LottieWinRT/LottieVisualSourceWinRT.cs +++ b/LottieWinRT/LottieVisualSourceWinRT.cs @@ -7,78 +7,153 @@ namespace LottieWinRT { public sealed class LottieVisualSourceWinRT { - // C# Events exported to WinRT... don't work??? I get a Win32Exception when generating the code??? - public event EventHandler? AnimatedVisualInvalidated; + public event EventHandler? AnimatedVisualInvalidated; - public void LoadLottie(string uri) - { - LottieVisualSource2? source = LottieVisualSource2.CreateFromString(uri); - if (source != null) - { - source.AnimatedVisualInvalidated += Source_AnimatedVisualInvalidated; - } + private LottieVisualSourceFrameworkless _lottieVisualSource; - _lottieVisualSource = source; + public LottieVisualSourceWinRT() + { + _lottieVisualSource = new LottieVisualSourceFrameworkless(); } - private void Source_AnimatedVisualInvalidated(IDynamicAnimatedVisualSource? sender, object? args) + private LottieVisualSourceWinRT(LottieVisualSourceFrameworkless lottieVisualSource) { - this.AnimatedVisualInvalidated?.Invoke(this, EventArgs.Empty); + _lottieVisualSource = lottieVisualSource; + _lottieVisualSource.AnimatedVisualInvalidated += (IAnimatedVisualSource? sender, object? o) => + { + AnimatedVisualInvalidated?.Invoke(this, o); + }; } - public IAnimatedVisualSource? AnimatedVisual { get => _lottieVisualSource; } + public static LottieVisualSourceWinRT? CreateFromString(string uri) + { + LottieVisualSourceFrameworkless? lottieSource = LottieVisualSourceFrameworkless.CreateFromString(uri); + if (lottieSource == null) + { + return null; + } - Compositor? _compositor; - ContainerVisual? _rootVisual; - LottieVisualSource2? _lottieVisualSource; + LottieVisualSourceWinRT winrtSource = new LottieVisualSourceWinRT(lottieSource); - public void SetUpLottie(Compositor compositor, ContainerVisual parent, string uri) - { - _compositor = compositor; - _rootVisual = parent; + return winrtSource; + } - _lottieVisualSource = LottieVisualSource2.CreateFromString(uri); - if (_lottieVisualSource != null) + /// + /// Gets or sets the Uniform Resource Identifier (URI) of the JSON source file for this . + /// + public Uri? UriSource + { + get => _lottieVisualSource?.UriSource; + set { - _lottieVisualSource.AnimatedVisualInvalidated += LottieVisualSource_AnimatedVisualInvalidated; - object? diagnostics = null; - if (_lottieVisualSource.TryCreateAnimatedVisual(_compositor, out diagnostics) != null) + if (_lottieVisualSource != null) { - LottieVisualSource_AnimatedVisualInvalidated(_lottieVisualSource, null); + _lottieVisualSource.UriSource = value; } } } - private void LottieVisualSource_AnimatedVisualInvalidated(IDynamicAnimatedVisualSource? sender, object? args) + /// + /// Implements . + /// + /// The that can be used as a factory for the resulting . + /// An optional object that may provide extra information about the result. + /// An . + public AnimatedVisualWinRT? TryCreateAnimatedVisual( + Compositor compositor, + out object? diagnostics) { - object? diagnostics = null; - IAnimatedVisual? animatedVisual = sender?.TryCreateAnimatedVisual(_compositor, out diagnostics); - - if (_rootVisual != null) + diagnostics = null; + IAnimatedVisual? visual = _lottieVisualSource?.TryCreateAnimatedVisual(compositor, out diagnostics); + if (visual == null) { - _rootVisual.Children.RemoveAll(); - _rootVisual.Children.InsertAtTop(animatedVisual?.RootVisual); - Debug.WriteLine("Added Lottie visual to root. beep boop"); - - if (_compositor != null) - { - var animation = _compositor.CreateScalarKeyFrameAnimation(); - if (animatedVisual != null) - { - animation.Duration = animatedVisual.Duration; - var linearEasing = _compositor.CreateLinearEasingFunction(); - - // Play from beginning to end. - animation.InsertKeyFrame(0, 0); - animation.InsertKeyFrame(1, 1, linearEasing); - - animation.IterationBehavior = AnimationIterationBehavior.Forever; - - // Start the animation and get the controller. - animatedVisual.RootVisual.Properties.StartAnimation("Progress", animation); - } - } + return null; } + + return new AnimatedVisualWinRT(visual); } } } + +//namespace LottieWinRT +//{ +// public sealed class LottieVisualSourceWinRT +// { +// public event EventHandler? AnimatedVisualInvalidated; + +// public void LoadLottie(string uri) +// { +// LottieVisualSourceFrameworkless? source = LottieVisualSourceFrameworkless.CreateFromString(uri); +// if (source != null) +// { +// source.AnimatedVisualInvalidated += Source_AnimatedVisualInvalidated; +// LottieVisualSourceFrameworkless.CreateFromString("meep"); +// } + +// _lottieVisualSource = source; +// } + +// private void Source_AnimatedVisualInvalidated(IAnimatedVisualSource? sender, object? args) +// { +// this.AnimatedVisualInvalidated?.Invoke(this, EventArgs.Empty); +// } + +// public CommunityToolkit.WinAppSDK.Frameworkless.Lottie.IAnimatedVisualSource? AnimatedVisual { get => _lottieVisualSource; } + +// Compositor? _compositor; +// ContainerVisual? _rootVisual; +// LottieVisualSourceFrameworkless? _lottieVisualSource; + +// public void SetUpLottie(Compositor compositor, ContainerVisual parent, string uri) +// { +// _compositor = compositor; +// _rootVisual = parent; + +// _lottieVisualSource = LottieVisualSourceFrameworkless.CreateFromString(uri); +// if (_lottieVisualSource != null) +// { +// _lottieVisualSource.AnimatedVisualInvalidated += LottieVisualSource_AnimatedVisualInvalidated; +// object? diagnostics = null; +// if (_lottieVisualSource.TryCreateAnimatedVisual(_compositor, out diagnostics) != null) +// { +// LottieVisualSource_AnimatedVisualInvalidated(_lottieVisualSource, null); +// } +// } +// } + +// private void LottieVisualSource_AnimatedVisualInvalidated(IAnimatedVisualSource? sender, object? args) +// { +// if (_compositor != null) +// { +// object? diagnostics = null; +// IAnimatedVisual? animatedVisual = sender?.TryCreateFrameworklessAnimatedVisual(_compositor, out diagnostics); + +// if (_rootVisual != null) +// { +// _rootVisual.Children.RemoveAll(); +// _rootVisual.Children.InsertAtTop(animatedVisual?.RootVisual); +// Debug.WriteLine("Added Lottie visual to root. beep boop"); + +// if (_compositor != null) +// { +// var animation = _compositor.CreateScalarKeyFrameAnimation(); +// if (animatedVisual != null) +// { +// animation.Duration = animatedVisual.Duration; +// var linearEasing = _compositor.CreateLinearEasingFunction(); + +// // Play from beginning to end. +// animation.InsertKeyFrame(0, 0); +// animation.InsertKeyFrame(1, 1, linearEasing); + +// animation.IterationBehavior = AnimationIterationBehavior.Forever; + +// // Start the animation and get the controller. +// animatedVisual.RootVisual?.Properties.StartAnimation("Progress", animation); +// } +// } +// } +// } +// } +// } +//} diff --git a/LottieWinRT/LottieWinRT.csproj b/LottieWinRT/LottieWinRT.csproj index 14e2c9e21..e014b8953 100644 --- a/LottieWinRT/LottieWinRT.csproj +++ b/LottieWinRT/LottieWinRT.csproj @@ -3,7 +3,7 @@ net7.0-windows10.0.19041.0 x64;x86;ARM64 - enable + true enable true LottieWinRT @@ -12,10 +12,14 @@ - + - + + + diff --git a/source/Lottie/Lottie.projitems b/source/Lottie/Lottie.projitems index a10caaed2..0187349ad 100644 --- a/source/Lottie/Lottie.projitems +++ b/source/Lottie/Lottie.projitems @@ -18,7 +18,7 @@ - + diff --git a/source/Lottie/LottieVisualSource.cs b/source/Lottie/LottieVisualSource.cs index ecb125209..21810a694 100644 --- a/source/Lottie/LottieVisualSource.cs +++ b/source/Lottie/LottieVisualSource.cs @@ -15,6 +15,7 @@ using Windows.Foundation.Metadata; using Windows.Storage; using Windows.Storage.Streams; +using static CommunityToolkit.WinUI.Lottie.LottieData.Serialization.LottieCompositionReader; #if WINAPPSDK using Microsoft.UI.Composition; @@ -30,7 +31,11 @@ namespace CommunityToolkit.WinUI.Lottie /// An for a Lottie composition. This allows /// a Lottie to be specified as the source for a . /// +#if FRAMEWORKLESS + public sealed class LottieVisualSource : IDynamicAnimatedVisualSource +#else public sealed class LottieVisualSource : DependencyObject, IDynamicAnimatedVisualSource +#endif { #if WINAPPSDK HashSet> _compositionInvalidatedEventTokenTable = new HashSet>(); @@ -42,6 +47,9 @@ public sealed class LottieVisualSource : DependencyObject, IDynamicAnimatedVisua Uri? _uriSource; AnimatedVisualFactory? _animatedVisualFactory; ImageAssetHandler? _imageAssetHandler; +#if FRAMEWORKLESS + LottieVisualOptions _options; +#else /// /// Gets the options for the . @@ -68,6 +76,7 @@ static DependencyProperty RegisterDp(string propertyName, T? defaultValue, Ac => DependencyProperty.Register(propertyName, typeof(T), typeof(LottieVisualSource), new PropertyMetadata(defaultValue, (d, e) => callback((LottieVisualSource)d, (T)e.OldValue, (T)e.NewValue))); +#endif /// /// Initializes a new instance of the class. @@ -76,6 +85,25 @@ public LottieVisualSource() { } +#if FRAMEWORKLESS + /// + /// Gets or sets options for how the Lottie is loaded. + /// + public LottieVisualOptions Options + { + get => _options; + set => _options = value; + } + + /// + /// Gets or sets the Uniform Resource Identifier (URI) of the JSON source file for this . + /// + public Uri? UriSource + { + get => _uriSource; + set => HandleUriSourcePropertyChanged(_uriSource, value); + } +#else /// /// Gets or sets options for how the Lottie is loaded. /// @@ -93,11 +121,12 @@ public Uri UriSource get => (Uri)GetValue(UriSourceProperty); set => SetValue(UriSourceProperty, value); } +#endif - /// - /// Called by XAML to convert a string to an . - /// - /// The for the given url. + /// + /// Called by XAML to convert a string to an . + /// + /// The for the given url. public static LottieVisualSource? CreateFromString(string uri) { var uriUri = Uris.StringToUri(uri); @@ -238,7 +267,7 @@ void NotifyListenersThatCompositionChanged() } // Called when the UriSource property is updated. - void HandleUriSourcePropertyChanged(Uri oldValue, Uri newValue) + void HandleUriSourcePropertyChanged(Uri? oldValue, Uri? newValue) { if (newValue == _uriSource) { @@ -251,6 +280,11 @@ void HandleUriSourcePropertyChanged(Uri oldValue, Uri newValue) _uriSource = newValue; + if (UriSource == null) + { + return; + } + var ignoredTask = StartLoadingAndIgnoreErrorsAsync(); async Task StartLoadingAndIgnoreErrorsAsync() diff --git a/source/Lottie/LottieVisualSource2.cs b/source/Lottie/LottieVisualSourceFrameworkless.cs similarity index 91% rename from source/Lottie/LottieVisualSource2.cs rename to source/Lottie/LottieVisualSourceFrameworkless.cs index f5d65678d..4d4012441 100644 --- a/source/Lottie/LottieVisualSource2.cs +++ b/source/Lottie/LottieVisualSourceFrameworkless.cs @@ -4,6 +4,8 @@ #nullable enable +#if WINAPPSDK + using System; using System.Collections.Generic; using System.Linq; @@ -15,6 +17,7 @@ using Windows.Foundation.Metadata; using Windows.Storage; using Windows.Storage.Streams; +using WinRT; #if WINAPPSDK using Microsoft.UI.Composition; @@ -28,12 +31,12 @@ namespace CommunityToolkit.WinUI.Lottie { /// /// An for a Lottie composition. This allows - /// a Lottie to be specified as the source for a . + /// a Lottie to be specified as the source for a . /// - public sealed class LottieVisualSource2 : IDynamicAnimatedVisualSource + public sealed class LottieVisualSourceFrameworkless : IAnimatedVisualSource { #if WINAPPSDK - HashSet> _compositionInvalidatedEventTokenTable = new HashSet>(); + HashSet> _compositionInvalidatedEventTokenTable = new HashSet>(); #else EventRegistrationTokenTable>? _compositionInvalidatedEventTokenTable; #endif @@ -45,7 +48,7 @@ public sealed class LottieVisualSource2 : IDynamicAnimatedVisualSource LottieVisualOptions _options; ///// - ///// Gets the options for the . + ///// Gets the options for the . ///// //// Optimize Lotties by default. Optimization takes a little longer but usually produces much //// more efficient translations. The only reason someone would turn optimization off is if @@ -71,9 +74,9 @@ public sealed class LottieVisualSource2 : IDynamicAnimatedVisualSource // new PropertyMetadata(defaultValue, (d, e) => callback((LottieVisualSource)d, (T)e.OldValue, (T)e.NewValue))); /// - /// Initializes a new instance of the class. + /// Initializes a new instance of the class. /// - public LottieVisualSource2() + public LottieVisualSourceFrameworkless() { } @@ -99,7 +102,7 @@ public Uri? UriSource /// Called by XAML to convert a string to an . /// /// The for the given url. - public static LottieVisualSource2? CreateFromString(string uri) + public static LottieVisualSourceFrameworkless? CreateFromString(string uri) { var uriUri = Uris.StringToUri(uri); if (uriUri is null) @@ -107,11 +110,11 @@ public Uri? UriSource return null; } - return new LottieVisualSource2 { UriSource = uriUri }; + return new LottieVisualSourceFrameworkless { UriSource = uriUri }; } /// - /// Sets the source for the . + /// Sets the source for the . /// /// A stream containing the text of a JSON Lottie file encoded as UTF-8. /// An that completes when the load completes or fails. @@ -123,7 +126,7 @@ public IAsyncAction SetSourceAsync(IInputStream stream) } /// - /// Sets the source for the . + /// Sets the source for the . /// /// A file that is a JSON Lottie file. /// An that completes when the load completes or fails. @@ -135,7 +138,7 @@ public IAsyncAction SetSourceAsync(StorageFile file) } /// - /// Sets the source for the . + /// Sets the source for the . /// /// A URI that refers to a JSON Lottie file. /// An that completes when the load completes or fails. @@ -154,10 +157,10 @@ public IAsyncAction SetSourceAsync(Uri sourceUri) } /// - /// Implements . + /// Implements . /// // TODO: currently explicitly implemented interfaces are causing a problem with .NET Native. Make them implicit for now. - public event TypedEventHandler AnimatedVisualInvalidated + public event TypedEventHandler AnimatedVisualInvalidated { add { @@ -187,7 +190,7 @@ public IAsyncAction SetSourceAsync(Uri sourceUri) /// If this is null, no images will be loaded from references to external images. /// /// Most Lottie files do not reference external images, but those that do - /// will refer to the files via a uri. It is up to the user of + /// will refer to the files via a uri. It is up to the user of /// to manage the loading of the image, and return an for /// that image. Alternatively the delegate may return null, and the image will not be /// displayed. @@ -204,7 +207,7 @@ public void SetImageAssetHandler(ImageAssetHandler? imageAssetHandler) /// An . // TODO: currently explicitly implemented interfaces are causing a problem with .NET Native. Make them implicit for now. //bool IAnimatedVisualSource.TryCreateAnimatedVisual( - public IAnimatedVisual? TryCreateAnimatedVisual( + public Microsoft.UI.Xaml.Controls.IAnimatedVisual? TryCreateAnimatedVisual( Compositor compositor, out object? diagnostics) { @@ -323,14 +326,16 @@ async Task LoadAsync(Task loader) #if !WINAPPSDK /// - /// Returns a string representation of the for debugging purposes. + /// Returns a string representation of the for debugging purposes. /// - /// A string representation of the for debugging purposes. + /// A string representation of the for debugging purposes. public override string ToString() { var identity = _uriSource?.ToString() ?? string.Empty; - return $"LottieVisualSource2({identity})"; + return $"LottieVisualSourceFrameworkless({identity})"; } #endif } -} \ No newline at end of file +} + +#endif \ No newline at end of file diff --git a/version.json b/version.json index 59dd40732..43ca24058 100644 --- a/version.json +++ b/version.json @@ -1,5 +1,5 @@ { - "version": "8.0.230813-rc-FHL.{height}", + "version": "8.0.230817-rc-FHL.{height}", "publicReleaseRefSpec": [ "^refs/heads/main$", // we release out of main "^refs/heads/dev$", // we release out of dev From 3e107ef07374141cfb01814af5aee2b478d4d211 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Tue, 16 Apr 2024 16:56:29 -0400 Subject: [PATCH 05/40] Updated sample and LottieIsland to consume new interfaces --- Lottie-Windows.sln | 81 +- Lottie/SimpleIslandApp.cpp | 58 +- Lottie/pch.h | 1 + LottieIsland/LottieContentIsland.cpp | 90 +- LottieIsland/LottieContentIsland.h | 61 +- LottieIsland/LottieContentIsland.idl | 19 +- LottieIsland/pch.h | 5 +- ...imatedVisualWinRT.cs => AnimatedVisual.cs} | 10 +- LottieWinRT/IAnimatedVisual.cs | 14 + LottieWinRT/IAnimatedVisualSource.cs | 9 + LottieWinRT/LottieVisualSourceWinRT.cs | 99 +- .../AnimatedVisuals.LottieLogo1.cpp | 4310 ++++++++++ .../AnimatedVisuals.LottieLogo1.h | 77 + .../AnimatedVisuals.LottieLogo1.idl | 29 + SimpleLottieIslandApp/Assets/LottieLogo1.json | 7390 +++++++++++++++++ SimpleLottieIslandApp/Project.idl | 15 + SimpleLottieIslandApp/Resource.h | 32 + .../SimpleLottieIslandApp.cpp | 453 + SimpleLottieIslandApp/SimpleLottieIslandApp.h | 5 + .../SimpleLottieIslandApp.ico | Bin 0 -> 46227 bytes .../SimpleLottieIslandApp.rc | Bin 0 -> 7262 bytes .../SimpleLottieIslandApp.vcxproj | 197 + .../SimpleLottieIslandApp.vcxproj.filters | 78 + SimpleLottieIslandApp/package.appxmanifest | 54 + SimpleLottieIslandApp/packages.config | 7 + SimpleLottieIslandApp/pch.cpp | 3 + SimpleLottieIslandApp/pch.h | 23 + SimpleLottieIslandApp/small.ico | Bin 0 -> 46227 bytes SimpleLottieIslandApp/targetver.h | 9 + 29 files changed, 12960 insertions(+), 169 deletions(-) rename LottieWinRT/{AnimatedVisualWinRT.cs => AnimatedVisual.cs} (78%) create mode 100644 LottieWinRT/IAnimatedVisual.cs create mode 100644 LottieWinRT/IAnimatedVisualSource.cs create mode 100644 SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.cpp create mode 100644 SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.h create mode 100644 SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.idl create mode 100644 SimpleLottieIslandApp/Assets/LottieLogo1.json create mode 100644 SimpleLottieIslandApp/Project.idl create mode 100644 SimpleLottieIslandApp/Resource.h create mode 100644 SimpleLottieIslandApp/SimpleLottieIslandApp.cpp create mode 100644 SimpleLottieIslandApp/SimpleLottieIslandApp.h create mode 100644 SimpleLottieIslandApp/SimpleLottieIslandApp.ico create mode 100644 SimpleLottieIslandApp/SimpleLottieIslandApp.rc create mode 100644 SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj create mode 100644 SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj.filters create mode 100644 SimpleLottieIslandApp/package.appxmanifest create mode 100644 SimpleLottieIslandApp/packages.config create mode 100644 SimpleLottieIslandApp/pch.cpp create mode 100644 SimpleLottieIslandApp/pch.h create mode 100644 SimpleLottieIslandApp/small.ico create mode 100644 SimpleLottieIslandApp/targetver.h diff --git a/Lottie-Windows.sln b/Lottie-Windows.sln index c8e334a6b..4d8fb5684 100644 --- a/Lottie-Windows.sln +++ b/Lottie-Windows.sln @@ -173,12 +173,12 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LottieSamples", "LottieSamp EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LottieWinRT", "LottieWinRT\LottieWinRT.csproj", "{DDA0D223-4B59-455D-A8B1-CFAE59523FFB}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SimpleIslandApp", "Lottie\SimpleIslandApp.vcxproj", "{350A5EC2-B156-4AAF-9D80-A864C76BA0C5}" -EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LottieIsland", "LottieIsland\LottieIsland.vcxproj", "{9BA7A2F2-B723-458B-A575-3F726D271465}" EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LottieIslandProjection", "LottieIslandProjection\LottieIslandProjection.csproj", "{D2DDC0A0-FD88-4053-9EA2-4233477D8477}" EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SimpleLottieIslandApp", "SimpleLottieIslandApp\SimpleLottieIslandApp.vcxproj", "{350A5EC2-B156-4AAF-9D80-A864C76BA0C5}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution BETA|Any CPU = BETA|Any CPU @@ -651,38 +651,6 @@ Global {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|x64.Build.0 = Release|Any CPU {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|x86.ActiveCfg = Release|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|x86.Build.0 = Release|x86 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|Any CPU.ActiveCfg = Debug|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|Any CPU.Build.0 = Debug|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM.ActiveCfg = Debug|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM.Build.0 = Debug|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM64.ActiveCfg = Debug|ARM64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM64.Build.0 = Debug|ARM64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|x64.ActiveCfg = Debug|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|x64.Build.0 = Debug|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|x86.ActiveCfg = Debug|Win32 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|x86.Build.0 = Debug|Win32 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|Any CPU.ActiveCfg = Debug|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|Any CPU.Build.0 = Debug|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|ARM.ActiveCfg = Debug|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|ARM.Build.0 = Debug|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|ARM64.Build.0 = Debug|ARM64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|x64.ActiveCfg = Debug|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|x64.Build.0 = Debug|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|x64.Deploy.0 = Debug|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|x86.ActiveCfg = Debug|Win32 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|x86.Build.0 = Debug|Win32 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|x86.Deploy.0 = Debug|Win32 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|Any CPU.ActiveCfg = Release|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|Any CPU.Build.0 = Release|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|ARM.ActiveCfg = Release|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|ARM.Build.0 = Release|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|ARM64.ActiveCfg = Release|ARM64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|ARM64.Build.0 = Release|ARM64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x64.ActiveCfg = Release|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x64.Build.0 = Release|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x86.ActiveCfg = Release|Win32 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x86.Build.0 = Release|Win32 {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|Any CPU.ActiveCfg = Debug|x64 {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|Any CPU.Build.0 = Debug|x64 {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|ARM.ActiveCfg = Debug|ARM @@ -743,6 +711,51 @@ Global {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Release|x64.Build.0 = Release|Any CPU {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Release|x86.ActiveCfg = Release|Any CPU {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Release|x86.Build.0 = Release|Any CPU + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|Any CPU.ActiveCfg = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|Any CPU.Build.0 = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|Any CPU.Deploy.0 = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM.ActiveCfg = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM.Build.0 = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM.Deploy.0 = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM64.ActiveCfg = Debug|ARM64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM64.Build.0 = Debug|ARM64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM64.Deploy.0 = Debug|ARM64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|x64.ActiveCfg = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|x64.Build.0 = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|x64.Deploy.0 = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|x86.ActiveCfg = Debug|Win32 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|x86.Build.0 = Debug|Win32 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|x86.Deploy.0 = Debug|Win32 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|Any CPU.ActiveCfg = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|Any CPU.Build.0 = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|Any CPU.Deploy.0 = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|ARM.ActiveCfg = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|ARM.Build.0 = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|ARM.Deploy.0 = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|ARM64.Build.0 = Debug|ARM64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|ARM64.Deploy.0 = Debug|ARM64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|x64.ActiveCfg = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|x64.Build.0 = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|x64.Deploy.0 = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|x86.ActiveCfg = Debug|Win32 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|x86.Build.0 = Debug|Win32 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|x86.Deploy.0 = Debug|Win32 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|Any CPU.ActiveCfg = Release|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|Any CPU.Build.0 = Release|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|Any CPU.Deploy.0 = Release|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|ARM.ActiveCfg = Release|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|ARM.Build.0 = Release|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|ARM.Deploy.0 = Release|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|ARM64.ActiveCfg = Release|ARM64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|ARM64.Build.0 = Release|ARM64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|ARM64.Deploy.0 = Release|ARM64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x64.ActiveCfg = Release|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x64.Build.0 = Release|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x64.Deploy.0 = Release|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x86.ActiveCfg = Release|Win32 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x86.Build.0 = Release|Win32 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x86.Deploy.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/Lottie/SimpleIslandApp.cpp b/Lottie/SimpleIslandApp.cpp index 09589b0d4..38317591d 100644 --- a/Lottie/SimpleIslandApp.cpp +++ b/Lottie/SimpleIslandApp.cpp @@ -9,16 +9,14 @@ #include // For ContentPreTranslateMessage #include #include -#include namespace winrt { + using namespace winrt::Windows::Foundation; using namespace winrt::Microsoft::UI; using namespace winrt::Microsoft::UI::Content; using namespace winrt::Microsoft::UI::Dispatching; - using namespace winrt::LottieIsland; using namespace winrt::LottieWinRT; - using namespace winrt::Windows::Foundation; using float2 = winrt::Windows::Foundation::Numerics::float2; } @@ -198,17 +196,18 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) winrt::GetWindowIdFromWindow(hWnd)); // Create the LottieIsland, which is a WinRT wrapper for hosting a Lottie animation in a ContentIsland - windowInfo->LottieIsland = winrt::LottieContentIsland{ windowInfo->Compositor }; + windowInfo->LottieIsland = winrt::LottieIsland::LottieContentIsland::Create(windowInfo->Compositor); // Connect the ContentIsland to the DesktopChildSiteBridge windowInfo->Bridge.Connect(windowInfo->LottieIsland.Island()); windowInfo->Bridge.Show(); - // Live JSON loaded animation! - winrt::LottieVisualSourceWinRT lottieVisualSource = winrt::LottieVisualSourceWinRT::CreateFromString(L"ms-appx:///LottieLogo1.json"); - lottieVisualSource.AnimatedVisualInvalidated([windowInfo, lottieVisualSource](const winrt::IInspectable sender, auto&&) - { - windowInfo->LottieIsland.AnimatedVisualSource(lottieVisualSource); + + + + windowInfo->LottieIsland.PointerPressed([=](auto&...) { + // Clicking on the Lottie animation acts like clicking "Pause/Resume" + OnButtonClicked(ButtonType::PauseButton, windowInfo, hWnd); }); // Add some Win32 controls to allow the app to play with the animation @@ -225,7 +224,27 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) if (windowInfo->Bridge) { - windowInfo->Bridge.MoveAndResize({ k_padding, k_padding, width - (k_padding * 2), height - (k_padding * 3) - k_buttonHeight }); + // Layout our bridge: we want to use all available height (minus a button and some padding), + // but respect the ratio that the LottieIsland wants to display at. This can be accessed through + // the "RequestedSize" property on the ContentSiteView. + + int availableHeight = height - (k_padding * 3) - k_buttonHeight; + int availableWidth = width - (k_padding * 2); + + // Check what size the lottie wants to be + winrt::float2 requestedSize = windowInfo->Bridge.SiteView().RequestedSize(); + + // Scale the width to be the ratio the lottie wants + int bridgeWidth = 0; + if (requestedSize.y > 0) // Guard against divide-by-zero + { + bridgeWidth = static_cast((requestedSize.x / requestedSize.y) * availableHeight); + } + + // ... but don't overflow the width we have available + bridgeWidth = std::min(availableWidth, bridgeWidth); + + windowInfo->Bridge.MoveAndResize({ k_padding, k_padding, bridgeWidth, availableHeight }); } LayoutButton(ButtonType::PlayButton, width, height, hWnd); @@ -353,10 +372,25 @@ void CreateWin32Button(ButtonType type, const std::wstring_view& text, HWND pare void OnButtonClicked(ButtonType type, WindowInfo* windowInfo, HWND topLevelWindow) { + winrt::Windows::Foundation::IAsyncAction asyncAction{ nullptr }; switch (type) { case ButtonType::PlayButton: - windowInfo->LottieIsland.PlayAsync(0.0, 1.0, true); + asyncAction = windowInfo->LottieIsland.PlayAsync(0.0, 1.0, true); + asyncAction.Completed([](auto&&, auto&& asyncStatus) + { + // Check if the async operation was successfully completed + if (asyncStatus == winrt::Windows::Foundation::AsyncStatus::Completed) + { + OutputDebugString(L"Async operation completed successfully.\n"); + } + else + { + OutputDebugString(L"Async operation failed or was canceled.\n"); + } + }); + + SetPauseState(windowInfo, false, topLevelWindow); break; case ButtonType::PauseButton: @@ -408,4 +442,4 @@ void SetPauseState(WindowInfo* windowInfo, bool isPaused, HWND topLevelWindow) topLevelWindow); windowInfo->isPaused = isPaused; -} \ No newline at end of file +} diff --git a/Lottie/pch.h b/Lottie/pch.h index 9ceb279f1..46ede354a 100644 --- a/Lottie/pch.h +++ b/Lottie/pch.h @@ -20,3 +20,4 @@ #include #include #include +#include diff --git a/LottieIsland/LottieContentIsland.cpp b/LottieIsland/LottieContentIsland.cpp index eb3dde8aa..d249e980e 100644 --- a/LottieIsland/LottieContentIsland.cpp +++ b/LottieIsland/LottieContentIsland.cpp @@ -4,6 +4,11 @@ namespace winrt::LottieIsland::implementation { + winrt::LottieContentIsland LottieContentIsland::Create(const winrt::Compositor& compositor) + { + return winrt::make(compositor); + } + LottieContentIsland::LottieContentIsland( const winrt::Compositor& compositor) : m_compositor(compositor) @@ -12,15 +17,29 @@ namespace winrt::LottieIsland::implementation m_island = winrt::ContentIsland::Create(m_rootVisual); m_island.StateChanged({ get_weak(), &LottieContentIsland::OnIslandStateChanged }); + + // Once it's not experimental, we should use InputPointerSource::GetForVisual on our root visual. + // This will give us automatic hittesting for whatever content and shape the Lottie animation has. + // Currently hittesting will just be a rectangle the size of the island, regardless of content. + m_inputPointerSource = winrt::Microsoft::UI::Input::InputPointerSource::GetForIsland(m_island); + + InitializeInputHandlers(); } - winrt::LottieVisualSourceWinRT LottieContentIsland::AnimatedVisualSource() const + LottieContentIsland::~LottieContentIsland() + { + // Dispose (Close) our island. This will revoke any event handlers from it or sub-objects, which + // is why the LottieContentIsland doesn't need to manually revoke event handlers. + m_island.Close(); + } + + winrt::IAnimatedVisualSource LottieContentIsland::AnimatedVisualSource() const { // Return the AnimatedVisualSource return m_animatedVisualSource; } - void LottieContentIsland::AnimatedVisualSource(winrt::LottieVisualSourceWinRT const& value) + void LottieContentIsland::AnimatedVisualSource(winrt::IAnimatedVisualSource const& value) { if (m_animatedVisualSource == value) { @@ -77,12 +96,12 @@ namespace winrt::LottieIsland::implementation return m_progressPropertySet != nullptr; } - double LottieContentIsland::PlaybackRate() const + float LottieContentIsland::PlaybackRate() const { return m_playbackRate; } - void LottieContentIsland::PlaybackRate(double rate) + void LottieContentIsland::PlaybackRate(float rate) { m_playbackRate = rate; if (m_animationController != nullptr) @@ -99,15 +118,40 @@ namespace winrt::LottieIsland::implementation } } - winrt::Windows::Foundation::IAsyncAction LottieContentIsland::PlayAsync(double fromProgress, double toProgress, bool looped) + winrt::Windows::Foundation::IAsyncAction LottieContentIsland::PlayAsync(float fromProgress, float toProgress, bool looped) { + if (m_animationCompletionEvent.get() == nullptr) + { + m_animationCompletionEvent = winrt::handle(CreateEvent(nullptr, false, false, nullptr)); + } + // Stop any existing animation StopAnimation(); - // TODO: actually implement the async portion of this properly using composition batches. + auto batch = m_compositor.CreateScopedBatch(CompositionBatchTypes::Animation); StartAnimation(fromProgress, toProgress, looped); - co_return; + + // Keep track of whether the animation is looped, since we will have to + // manually fire the event if Stop() is called in the non-looped case. + // We don't hook up the event here in the looped case, because ScopedBatches + // complete immediately if their animation is looped. + m_looped = looped; + if (!looped) + { + // Hook up an event handler to the Completed event of the batch + batch.Completed([&](auto&&, auto&&) + { + // Set the completion event when the batch completes + SetEvent(m_animationCompletionEvent.get()); + }); + } + + // Commit the batch + batch.End(); + + // Wait for the completion event asynchronously + co_await winrt::resume_on_signal(m_animationCompletionEvent.get()); // Wait for the event to be signaled } void LottieContentIsland::Resume() @@ -123,7 +167,7 @@ namespace winrt::LottieIsland::implementation StopAnimation(); } - void LottieContentIsland::StartAnimation(double fromProgress, double toProgress, bool loop) + void LottieContentIsland::StartAnimation(float fromProgress, float toProgress, bool loop) { if (m_animatedVisual == nullptr) { @@ -164,6 +208,11 @@ namespace winrt::LottieIsland::implementation m_progressPropertySet.StopAnimation(L"Progress"); m_progressPropertySet.InsertScalar(L"Progress", m_previousFromProgress); + if (m_looped) + { + SetEvent(m_animationCompletionEvent.get()); + } + // Cleanup m_previousFromProgress = 0.0; m_animationController = nullptr; @@ -206,4 +255,27 @@ namespace winrt::LottieIsland::implementation m_rootVisual.Scale({ scale.x, scale.y, 1.f }); } } -} \ No newline at end of file + + void LottieContentIsland::InitializeInputHandlers() + { + m_inputPointerSource.PointerEntered([this](auto& /*sender*/, auto& args) { + m_pointerEnteredEvent(*this, args); + }); + + m_inputPointerSource.PointerExited([this](auto& /*sender*/, auto& args) { + m_pointerExitedEvent(*this, args); + }); + + m_inputPointerSource.PointerMoved([this](auto& /*sender*/, auto& args) { + m_pointerMovedEvent(*this, args); + }); + + m_inputPointerSource.PointerPressed([this](auto& /*sender*/, auto& args) { + m_pointerPressedEvent(*this, args); + }); + + m_inputPointerSource.PointerReleased([this](auto& /*sender*/, auto& args) { + m_pointerReleasedEvent(*this, args); + }); + } +} diff --git a/LottieIsland/LottieContentIsland.h b/LottieIsland/LottieContentIsland.h index 711f0399e..eda06c0ae 100644 --- a/LottieIsland/LottieContentIsland.h +++ b/LottieIsland/LottieContentIsland.h @@ -2,19 +2,34 @@ #include "LottieContentIsland.g.h" +namespace winrt::Microsoft::UI::Xaml::Controls +{ + interface IAnimatedVisualSource; +} + +namespace winrt +{ + using namespace ::winrt::LottieIsland; +} + namespace winrt::LottieIsland::implementation { struct LottieContentIsland : LottieContentIslandT { + using PointerEventHandler = Windows::Foundation::TypedEventHandler; + + static winrt::LottieContentIsland Create(const winrt::Compositor& compositor); + LottieContentIsland(const winrt::Compositor& compositor); + ~LottieContentIsland(); winrt::ContentIsland Island() const { return m_island; } - winrt::LottieVisualSourceWinRT AnimatedVisualSource() const; - void AnimatedVisualSource(const winrt::LottieVisualSourceWinRT& source); + winrt::IAnimatedVisualSource AnimatedVisualSource() const; + void AnimatedVisualSource(const winrt::IAnimatedVisualSource& source); winrt::Windows::Foundation::TimeSpan Duration() const; @@ -22,34 +37,60 @@ namespace winrt::LottieIsland::implementation bool IsPlaying() const; - double PlaybackRate() const; - void PlaybackRate(double rate); + float PlaybackRate() const; + void PlaybackRate(float rate); + + winrt::event_token PointerEntered(const PointerEventHandler& handler) { return m_pointerEnteredEvent.add(handler); } + void PointerEntered(winrt::event_token const& token) noexcept { m_pointerEnteredEvent.remove(token); } + + winrt::event_token PointerExited(const PointerEventHandler& handler) { return m_pointerExitedEvent.add(handler); } + void PointerExited(winrt::event_token const& token) noexcept { m_pointerExitedEvent.remove(token); } + + winrt::event_token PointerMoved(const PointerEventHandler& handler) { return m_pointerMovedEvent.add(handler); } + void PointerMoved(winrt::event_token const& token) noexcept { m_pointerMovedEvent.remove(token); } + + winrt::event_token PointerPressed(const PointerEventHandler& handler) { return m_pointerPressedEvent.add(handler); } + void PointerPressed(winrt::event_token const& token) noexcept { m_pointerPressedEvent.remove(token); } + + winrt::event_token PointerReleased(const PointerEventHandler& handler) { return m_pointerReleasedEvent.add(handler); } + void PointerReleased(winrt::event_token const& token) noexcept { m_pointerReleasedEvent.remove(token); } void Pause(); - winrt::Windows::Foundation::IAsyncAction PlayAsync(double fromProgress, double toProgress, bool looped); + winrt::Windows::Foundation::IAsyncAction PlayAsync(float fromProgress, float toProgress, bool looped); void Resume(); void Stop(); private: - void StartAnimation(double fromProgress, double toProgress, bool loop); + void StartAnimation(float fromProgress, float toProgress, bool loop); void StopAnimation(); void OnIslandStateChanged(const winrt::ContentIsland& island, const winrt::ContentIslandStateChangedEventArgs& args); void Resize(const float2& size); + void InitializeInputHandlers(); + + winrt::event m_pointerEnteredEvent; + winrt::event m_pointerExitedEvent; + winrt::event m_pointerMovedEvent; + winrt::event m_pointerPressedEvent; + winrt::event m_pointerReleasedEvent; + winrt::Compositor m_compositor{ nullptr }; winrt::ContainerVisual m_rootVisual{ nullptr }; winrt::ContentIsland m_island{ nullptr }; - winrt::LottieVisualSourceWinRT m_animatedVisualSource{ nullptr }; - winrt::AnimatedVisualWinRT m_animatedVisual{ nullptr }; + winrt::InputPointerSource m_inputPointerSource{ nullptr }; + winrt::IAnimatedVisualSource m_animatedVisualSource{ nullptr }; + winrt::IAnimatedVisual m_animatedVisual{ nullptr }; winrt::CompositionPropertySet m_progressPropertySet{ nullptr }; winrt::AnimationController m_animationController{ nullptr }; - double m_previousFromProgress = 0.0; - double m_playbackRate = 1.0f; + float m_previousFromProgress = 0.0; + float m_playbackRate = 1.0f; + winrt::handle m_animationCompletionEvent{ nullptr }; + bool m_looped; }; } diff --git a/LottieIsland/LottieContentIsland.idl b/LottieIsland/LottieContentIsland.idl index 53ef7b7fd..0c381b7f4 100644 --- a/LottieIsland/LottieContentIsland.idl +++ b/LottieIsland/LottieContentIsland.idl @@ -1,13 +1,12 @@ namespace LottieIsland { - [default_interface] runtimeclass LottieContentIsland { - LottieContentIsland(Microsoft.UI.Composition.Compositor compositor); + static LottieContentIsland Create(Microsoft.UI.Composition.Compositor compositor); Microsoft.UI.Content.ContentIsland Island{ get; }; - LottieWinRT.LottieVisualSourceWinRT AnimatedVisualSource; + LottieWinRT.IAnimatedVisualSource AnimatedVisualSource; Windows.Foundation.TimeSpan Duration{ get; }; @@ -15,11 +14,21 @@ Boolean IsPlaying{ get; }; - Double PlaybackRate; + Single PlaybackRate; + + event Windows.Foundation.TypedEventHandler PointerEntered; + + event Windows.Foundation.TypedEventHandler PointerExited; + + event Windows.Foundation.TypedEventHandler PointerMoved; + + event Windows.Foundation.TypedEventHandler PointerPressed; + + event Windows.Foundation.TypedEventHandler PointerReleased; void Pause(); - Windows.Foundation.IAsyncAction PlayAsync(Double fromProgress, Double toProgress, Boolean looped); + Windows.Foundation.IAsyncAction PlayAsync(Single fromProgress, Single toProgress, Boolean looped); void Resume(); diff --git a/LottieIsland/pch.h b/LottieIsland/pch.h index 20e622052..3d6dbbe44 100644 --- a/LottieIsland/pch.h +++ b/LottieIsland/pch.h @@ -13,17 +13,16 @@ #include #include #include +#include #include #include -//#include namespace winrt { using namespace ::winrt::Microsoft::UI::Composition; using namespace ::winrt::Microsoft::UI::Content; + using namespace ::winrt::Microsoft::UI::Input; using namespace ::winrt::LottieWinRT; - /*using IAnimatedVisual = ::winrt::CommunityToolkit::WinAppSDK::Frameworkless::Lottie::IAnimatedVisual; - using IAnimatedVisualSource = ::winrt::CommunityToolkit::WinAppSDK::Frameworkless::Lottie::IAnimatedVisualSource;*/ } // Opt into time literals (i.e. 200ms, 1min, 15s) diff --git a/LottieWinRT/AnimatedVisualWinRT.cs b/LottieWinRT/AnimatedVisual.cs similarity index 78% rename from LottieWinRT/AnimatedVisualWinRT.cs rename to LottieWinRT/AnimatedVisual.cs index 04af99165..547a421cb 100644 --- a/LottieWinRT/AnimatedVisualWinRT.cs +++ b/LottieWinRT/AnimatedVisual.cs @@ -1,18 +1,18 @@ using System.Numerics; using Microsoft.UI.Composition; -using Microsoft.UI.Xaml.Controls; +using MUXC = Microsoft.UI.Xaml.Controls; namespace LottieWinRT { - public sealed class AnimatedVisualWinRT + public sealed class AnimatedVisual : IAnimatedVisual { - private IAnimatedVisual? _animatedVisual; + private MUXC.IAnimatedVisual? _animatedVisual; - public AnimatedVisualWinRT() + public AnimatedVisual() { } - internal AnimatedVisualWinRT(IAnimatedVisual visual) + internal AnimatedVisual(MUXC.IAnimatedVisual visual) { _animatedVisual = visual; } diff --git a/LottieWinRT/IAnimatedVisual.cs b/LottieWinRT/IAnimatedVisual.cs new file mode 100644 index 000000000..271d56686 --- /dev/null +++ b/LottieWinRT/IAnimatedVisual.cs @@ -0,0 +1,14 @@ +using System.Numerics; +using Microsoft.UI.Composition; + +namespace LottieWinRT +{ + public interface IAnimatedVisual + { + public TimeSpan Duration { get; } + + public Visual? RootVisual { get; } + + public Vector2 Size { get; } + } +} diff --git a/LottieWinRT/IAnimatedVisualSource.cs b/LottieWinRT/IAnimatedVisualSource.cs new file mode 100644 index 000000000..a5dc5feff --- /dev/null +++ b/LottieWinRT/IAnimatedVisualSource.cs @@ -0,0 +1,9 @@ +using Microsoft.UI.Composition; + +namespace LottieWinRT +{ + public interface IAnimatedVisualSource + { + IAnimatedVisual? TryCreateAnimatedVisual(Compositor compositor, out object? diagnostics); + } +} diff --git a/LottieWinRT/LottieVisualSourceWinRT.cs b/LottieWinRT/LottieVisualSourceWinRT.cs index 55285f625..01531cded 100644 --- a/LottieWinRT/LottieVisualSourceWinRT.cs +++ b/LottieWinRT/LottieVisualSourceWinRT.cs @@ -1,11 +1,11 @@ using System.Diagnostics; using CommunityToolkit.WinUI.Lottie; using Microsoft.UI.Composition; -using Microsoft.UI.Xaml.Controls; +using MUXC = Microsoft.UI.Xaml.Controls; namespace LottieWinRT { - public sealed class LottieVisualSourceWinRT + public sealed class LottieVisualSourceWinRT : LottieWinRT.IAnimatedVisualSource { public event EventHandler? AnimatedVisualInvalidated; @@ -19,7 +19,7 @@ public LottieVisualSourceWinRT() private LottieVisualSourceWinRT(LottieVisualSourceFrameworkless lottieVisualSource) { _lottieVisualSource = lottieVisualSource; - _lottieVisualSource.AnimatedVisualInvalidated += (IAnimatedVisualSource? sender, object? o) => + _lottieVisualSource.AnimatedVisualInvalidated += (MUXC.IAnimatedVisualSource? sender, object? o) => { AnimatedVisualInvalidated?.Invoke(this, o); }; @@ -56,104 +56,21 @@ public Uri? UriSource /// /// Implements . /// - /// The that can be used as a factory for the resulting . + /// The that can be used as a factory for the resulting . /// An optional object that may provide extra information about the result. - /// An . - public AnimatedVisualWinRT? TryCreateAnimatedVisual( + /// An . + public IAnimatedVisual? TryCreateAnimatedVisual( Compositor compositor, out object? diagnostics) { diagnostics = null; - IAnimatedVisual? visual = _lottieVisualSource?.TryCreateAnimatedVisual(compositor, out diagnostics); + MUXC.IAnimatedVisual? visual = _lottieVisualSource?.TryCreateAnimatedVisual(compositor, out diagnostics); if (visual == null) { return null; } - return new AnimatedVisualWinRT(visual); + return new AnimatedVisual(visual); } } } - -//namespace LottieWinRT -//{ -// public sealed class LottieVisualSourceWinRT -// { -// public event EventHandler? AnimatedVisualInvalidated; - -// public void LoadLottie(string uri) -// { -// LottieVisualSourceFrameworkless? source = LottieVisualSourceFrameworkless.CreateFromString(uri); -// if (source != null) -// { -// source.AnimatedVisualInvalidated += Source_AnimatedVisualInvalidated; -// LottieVisualSourceFrameworkless.CreateFromString("meep"); -// } - -// _lottieVisualSource = source; -// } - -// private void Source_AnimatedVisualInvalidated(IAnimatedVisualSource? sender, object? args) -// { -// this.AnimatedVisualInvalidated?.Invoke(this, EventArgs.Empty); -// } - -// public CommunityToolkit.WinAppSDK.Frameworkless.Lottie.IAnimatedVisualSource? AnimatedVisual { get => _lottieVisualSource; } - -// Compositor? _compositor; -// ContainerVisual? _rootVisual; -// LottieVisualSourceFrameworkless? _lottieVisualSource; - -// public void SetUpLottie(Compositor compositor, ContainerVisual parent, string uri) -// { -// _compositor = compositor; -// _rootVisual = parent; - -// _lottieVisualSource = LottieVisualSourceFrameworkless.CreateFromString(uri); -// if (_lottieVisualSource != null) -// { -// _lottieVisualSource.AnimatedVisualInvalidated += LottieVisualSource_AnimatedVisualInvalidated; -// object? diagnostics = null; -// if (_lottieVisualSource.TryCreateAnimatedVisual(_compositor, out diagnostics) != null) -// { -// LottieVisualSource_AnimatedVisualInvalidated(_lottieVisualSource, null); -// } -// } -// } - -// private void LottieVisualSource_AnimatedVisualInvalidated(IAnimatedVisualSource? sender, object? args) -// { -// if (_compositor != null) -// { -// object? diagnostics = null; -// IAnimatedVisual? animatedVisual = sender?.TryCreateFrameworklessAnimatedVisual(_compositor, out diagnostics); - -// if (_rootVisual != null) -// { -// _rootVisual.Children.RemoveAll(); -// _rootVisual.Children.InsertAtTop(animatedVisual?.RootVisual); -// Debug.WriteLine("Added Lottie visual to root. beep boop"); - -// if (_compositor != null) -// { -// var animation = _compositor.CreateScalarKeyFrameAnimation(); -// if (animatedVisual != null) -// { -// animation.Duration = animatedVisual.Duration; -// var linearEasing = _compositor.CreateLinearEasingFunction(); - -// // Play from beginning to end. -// animation.InsertKeyFrame(0, 0); -// animation.InsertKeyFrame(1, 1, linearEasing); - -// animation.IterationBehavior = AnimationIterationBehavior.Forever; - -// // Start the animation and get the controller. -// animatedVisual.RootVisual?.Properties.StartAnimation("Progress", animation); -// } -// } -// } -// } -// } -// } -//} diff --git a/SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.cpp b/SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.cpp new file mode 100644 index 000000000..507d03cf9 --- /dev/null +++ b/SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.cpp @@ -0,0 +1,4310 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// LottieGen version: +// 8.0.230813-rc.7+0443b1e789 +// +// Command: +// LottieGen -Language Cppwinrt -WinUIVersion 3.0 -InputFile LottieLogo1.json +// +// Input file: +// LottieLogo1.json (190271 bytes created 0:40-04:00 Mar 13 2024) +// +// LottieGen source: +// http://aka.ms/Lottie +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ +// ____________________________________ +// | Object stats | Count | +// |__________________________|_______| +// | All CompositionObjects | 610 | +// |--------------------------+-------| +// | Expression animators | 52 | +// | KeyFrame animators | 121 | +// | Reference parameters | 52 | +// | Expression operations | 0 | +// |--------------------------+-------| +// | Animated brushes | - | +// | Animated gradient stops | - | +// | ExpressionAnimations | 50 | +// | PathKeyFrameAnimations | - | +// |--------------------------+-------| +// | ContainerVisuals | 1 | +// | ShapeVisuals | 1 | +// |--------------------------+-------| +// | ContainerShapes | 23 | +// | CompositionSpriteShapes | 45 | +// |--------------------------+-------| +// | Brushes | 3 | +// | Gradient stops | - | +// | CompositionVisualSurface | - | +// ------------------------------------ +#include "pch.h" +#include "AnimatedVisuals.LottieLogo1.h" +#if __has_include ("AnimatedVisuals.LottieLogo1.g.cpp") +#include "AnimatedVisuals.LottieLogo1.g.cpp" +#endif +#include +#include +#include +#include +#include "d2d1.h" +#include +#include +#include +#ifdef BUILD_WINDOWS +namespace ABI +{ +#include +} +#else +#include +#endif +#include + +using namespace winrt::Microsoft::UI; +using namespace winrt::Microsoft::UI::Composition; +using namespace winrt::Microsoft::UI::Xaml::Controls; +using namespace winrt::Windows::Foundation; +using namespace winrt::Windows::Foundation::Numerics; +using namespace winrt::Windows::Graphics; +using Color = winrt::Windows::UI::Color; +using CompositionPropertySet = winrt::Microsoft::UI::Composition::CompositionPropertySet; +using TimeSpan = winrt::Windows::Foundation::TimeSpan; + +namespace winrt::AnimatedVisuals::implementation +{ + class CanvasGeometry : public winrt::implements + { + winrt::com_ptr _geometry{ nullptr }; + + public: + CanvasGeometry(winrt::com_ptr geometry) + : _geometry{ geometry } + { } + + // IGeometrySource2D. + winrt::com_ptr Geometry() { return _geometry; } + + // IGeometrySource2DInterop. + IFACEMETHODIMP GetGeometry(ID2D1Geometry** value) noexcept(true) override + { + _geometry.copy_to(value); + return S_OK; + } + + // IGeometrySource2DInterop. + IFACEMETHODIMP TryGetGeometryUsingFactory(ID2D1Factory*, ID2D1Geometry**) noexcept(true) override + { + return E_NOTIMPL; + } + }; + class LottieLogo1_AnimatedVisual : public winrt::implements + { + winrt::com_ptr _d2dFactory{ nullptr }; + static constexpr int64_t c_durationTicks{ 59666666L }; + Compositor const _c{ nullptr }; + ExpressionAnimation const _reusableExpressionAnimation{ nullptr }; + AnimationController _animationController_0{ nullptr }; + AnimationController _animationController_1{ nullptr }; + CompositionColorBrush _colorBrush_AlmostTeal_FF007A87{ nullptr }; + CompositionColorBrush _colorBrush_White{ nullptr }; + CompositionContainerShape _containerShape_00{ nullptr }; + CompositionContainerShape _containerShape_01{ nullptr }; + CompositionContainerShape _containerShape_02{ nullptr }; + CompositionContainerShape _containerShape_03{ nullptr }; + CompositionContainerShape _containerShape_04{ nullptr }; + CompositionContainerShape _containerShape_05{ nullptr }; + CompositionContainerShape _containerShape_06{ nullptr }; + CompositionContainerShape _containerShape_07{ nullptr }; + CompositionContainerShape _containerShape_08{ nullptr }; + CompositionContainerShape _containerShape_09{ nullptr }; + CompositionContainerShape _containerShape_10{ nullptr }; + CompositionContainerShape _containerShape_11{ nullptr }; + CompositionContainerShape _containerShape_12{ nullptr }; + CompositionContainerShape _containerShape_13{ nullptr }; + CompositionContainerShape _containerShape_14{ nullptr }; + CompositionContainerShape _containerShape_15{ nullptr }; + CompositionContainerShape _containerShape_16{ nullptr }; + CompositionContainerShape _containerShape_17{ nullptr }; + CompositionContainerShape _containerShape_18{ nullptr }; + CompositionContainerShape _containerShape_19{ nullptr }; + CompositionContainerShape _containerShape_20{ nullptr }; + CompositionContainerShape _containerShape_21{ nullptr }; + CompositionContainerShape _containerShape_22{ nullptr }; + CompositionEllipseGeometry _ellipse_0_0{ nullptr }; + CompositionEllipseGeometry _ellipse_0_1{ nullptr }; + CompositionEllipseGeometry _ellipse_4p7{ nullptr }; + CompositionPath _path_0{ nullptr }; + CompositionPath _path_1{ nullptr }; + CompositionPath _path_2{ nullptr }; + CompositionPath _path_3{ nullptr }; + CompositionPath _path_4{ nullptr }; + CompositionPath _path_5{ nullptr }; + CompositionPath _path_6{ nullptr }; + CompositionPath _path_7{ nullptr }; + CompositionPath _path_8{ nullptr }; + CompositionPathGeometry _pathGeometry_00{ nullptr }; + CompositionPathGeometry _pathGeometry_01{ nullptr }; + CompositionPathGeometry _pathGeometry_02{ nullptr }; + CompositionPathGeometry _pathGeometry_03{ nullptr }; + CompositionPathGeometry _pathGeometry_04{ nullptr }; + CompositionPathGeometry _pathGeometry_05{ nullptr }; + CompositionPathGeometry _pathGeometry_06{ nullptr }; + CompositionPathGeometry _pathGeometry_07{ nullptr }; + CompositionPathGeometry _pathGeometry_08{ nullptr }; + CompositionPathGeometry _pathGeometry_09{ nullptr }; + CompositionPathGeometry _pathGeometry_10{ nullptr }; + CompositionPathGeometry _pathGeometry_11{ nullptr }; + CompositionPathGeometry _pathGeometry_12{ nullptr }; + CompositionPathGeometry _pathGeometry_13{ nullptr }; + CompositionPathGeometry _pathGeometry_14{ nullptr }; + CompositionPathGeometry _pathGeometry_15{ nullptr }; + CompositionPathGeometry _pathGeometry_16{ nullptr }; + CompositionPathGeometry _pathGeometry_17{ nullptr }; + CompositionPathGeometry _pathGeometry_18{ nullptr }; + CompositionPathGeometry _pathGeometry_19{ nullptr }; + CompositionPathGeometry _pathGeometry_20{ nullptr }; + CompositionPathGeometry _pathGeometry_21{ nullptr }; + CompositionPathGeometry _pathGeometry_22{ nullptr }; + CompositionPathGeometry _pathGeometry_23{ nullptr }; + CompositionPathGeometry _pathGeometry_24{ nullptr }; + CompositionPathGeometry _pathGeometry_25{ nullptr }; + CompositionPathGeometry _pathGeometry_26{ nullptr }; + CompositionPathGeometry _pathGeometry_27{ nullptr }; + CompositionPathGeometry _pathGeometry_28{ nullptr }; + CompositionPathGeometry _pathGeometry_29{ nullptr }; + CompositionPathGeometry _pathGeometry_30{ nullptr }; + CompositionPathGeometry _pathGeometry_31{ nullptr }; + CompositionPathGeometry _pathGeometry_32{ nullptr }; + CompositionPathGeometry _pathGeometry_33{ nullptr }; + CompositionPathGeometry _pathGeometry_34{ nullptr }; + CompositionPathGeometry _pathGeometry_35{ nullptr }; + CompositionPathGeometry _pathGeometry_36{ nullptr }; + CompositionPathGeometry _pathGeometry_37{ nullptr }; + CompositionPathGeometry _pathGeometry_38{ nullptr }; + CompositionSpriteShape _spriteShape_11{ nullptr }; + CompositionSpriteShape _spriteShape_12{ nullptr }; + CompositionSpriteShape _spriteShape_13{ nullptr }; + CompositionSpriteShape _spriteShape_14{ nullptr }; + CompositionSpriteShape _spriteShape_15{ nullptr }; + CompositionSpriteShape _spriteShape_19{ nullptr }; + CompositionSpriteShape _spriteShape_22{ nullptr }; + CompositionSpriteShape _spriteShape_23{ nullptr }; + CompositionSpriteShape _spriteShape_36{ nullptr }; + CompositionSpriteShape _spriteShape_37{ nullptr }; + CompositionSpriteShape _spriteShape_38{ nullptr }; + ContainerVisual _root{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_0{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_1{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_2{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_3{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_4{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_5{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_6{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_7{ nullptr }; + CubicBezierEasingFunction _cubicBezierEasingFunction_8{ nullptr }; + ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_02{ nullptr }; + ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_03{ nullptr }; + ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_06{ nullptr }; + ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_11{ nullptr }; + ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_13{ nullptr }; + ScalarKeyFrameAnimation _tStartScalarAnimation_0_to_0p249{ nullptr }; + ScalarKeyFrameAnimation _tStartScalarAnimation_0p87_to_0_02{ nullptr }; + StepEasingFunction _holdThenStepEasingFunction{ nullptr }; + StepEasingFunction _stepThenHoldEasingFunction{ nullptr }; + Vector2KeyFrameAnimation _offsetVector2Animation_02{ nullptr }; + Vector2KeyFrameAnimation _offsetVector2Animation_03{ nullptr }; + Vector2KeyFrameAnimation _offsetVector2Animation_04{ nullptr }; + Vector2KeyFrameAnimation _offsetVector2Animation_05{ nullptr }; + Vector2KeyFrameAnimation _offsetVector2Animation_06{ nullptr }; + Vector2KeyFrameAnimation _radiusVector2Animation{ nullptr }; + Vector2KeyFrameAnimation _shapeVisibilityAnimation_04{ nullptr }; + + void BindProperty( + CompositionObject target, + winrt::hstring animatedPropertyName, + winrt::hstring expression, + winrt::hstring referenceParameterName, + CompositionObject referencedObject) + { + _reusableExpressionAnimation.ClearAllParameters(); + _reusableExpressionAnimation.Expression(expression); + _reusableExpressionAnimation.SetReferenceParameter(referenceParameterName, referencedObject); + target.StartAnimation(animatedPropertyName, _reusableExpressionAnimation); + } + + ScalarKeyFrameAnimation CreateScalarKeyFrameAnimation(float initialProgress, float initialValue, CompositionEasingFunction initialEasingFunction) + { + const auto result = _c.CreateScalarKeyFrameAnimation(); + result.Duration(TimeSpan{ c_durationTicks }); + result.InsertKeyFrame(initialProgress, initialValue, initialEasingFunction); + return result; + } + + Vector2KeyFrameAnimation CreateVector2KeyFrameAnimation(float initialProgress, float2 initialValue, CompositionEasingFunction initialEasingFunction) + { + const auto result = _c.CreateVector2KeyFrameAnimation(); + result.Duration(TimeSpan{ c_durationTicks }); + result.InsertKeyFrame(initialProgress, initialValue, initialEasingFunction); + return result; + } + + CompositionSpriteShape CreateSpriteShape(CompositionGeometry geometry, float3x2 transformMatrix) + { + const auto result = _c.CreateSpriteShape(geometry); + result.TransformMatrix(transformMatrix); + return result; + } + + CompositionSpriteShape CreateSpriteShape(CompositionGeometry geometry, float3x2 transformMatrix, CompositionBrush fillBrush) + { + const auto result = _c.CreateSpriteShape(geometry); + result.TransformMatrix(transformMatrix); + result.FillBrush(fillBrush); + return result; + } + + AnimationController AnimationController_0() + { + if (_animationController_0 != nullptr) { return _animationController_0; } + const auto result = _animationController_0 = _c.CreateAnimationController(); + result.Pause(); + BindProperty(_animationController_0, L"Progress", L"_.Progress", L"_", _root); + return result; + } + + // - Layer aggregator + // Layer: Dot1 + AnimationController AnimationController_1() + { + if (_animationController_1 != nullptr) { return _animationController_1; } + const auto result = _animationController_1 = _c.CreateAnimationController(); + result.Pause(); + BindProperty(_animationController_1, L"Progress", L"_.Progress*0.9835165+0.01648352", L"_", _root); + return result; + } + + winrt::com_ptr Geometry_00() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -13.6639996F, -0.144999996F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 75.663002F, 0.289999992F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_01() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 0.859000027F, -21.1429996F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ -4.35900021F, 70.3919983F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_02() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -26.6700001F, -0.282999992F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 99.1709976F, 0.0659999996F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_03() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -13.6639996F, -0.144999996F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 62.1629982F, 0.289999992F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_04() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -30.7199993F, 63.7610016F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddBezier({ { -30.6889992F, 63.1669998F }, { -30.7889996F, 50.8470001F }, { -30.7409992F, 45.1920013F } }); + sink->AddBezier({ { -30.6650009F, 36.2140007F }, { -37.3429985F, 27.0739994F }, { -37.3969994F, 27.0139999F } }); + sink->AddBezier({ { -38.5579987F, 25.7140007F }, { -39.7519989F, 24.1469994F }, { -40.6980019F, 22.6609993F } }); + sink->AddBezier({ { -46.637001F, 13.3339996F }, { -47.8400002F, 0.933000028F }, { -37.8730011F, -7.1170001F } }); + sink->AddBezier({ { -13.1960001F, -27.0459995F }, { 8.96000004F, 11.559F }, { 49.5060005F, 11.559F } }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_05() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 246.649994F, 213.813995F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 340.955994F, 213.628006F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_06() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 1.68099999F, -29.9920006F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ -1.68099999F, 29.9920006F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_07() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 1.76800001F, -25.9659996F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ -1.76800001F, 25.9659996F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_08() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -8.83699989F, -58.2290001F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddBezier({ { -8.83699989F, -58.2290001F }, { -10.1630001F, 29.4950008F }, { -35.8339996F, 33.6619987F } }); + sink->AddBezier({ { -44.0579987F, 34.9970016F }, { -50.2319984F, 30.0499992F }, { -51.6879997F, 23.1480007F } }); + sink->AddBezier({ { -53.144001F, 16.2450008F }, { -49.6549988F, 9.15600014F }, { -41.1739998F, 7.29300022F } }); + sink->AddBezier({ { -17.3570004F, 2.05999994F }, { 4.23500013F, 57.1879997F }, { 51.7970009F, 44.1780014F } }); + sink->AddBezier({ { 51.9570007F, 44.1339989F }, { 52.6870003F, 43.8740005F }, { 53.1879997F, 43.7410011F } }); + sink->AddBezier({ { 53.6889992F, 43.6080017F }, { 68.9710007F, 41.3569984F }, { 140.393997F, 43.6720009F } }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_09() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -67.125F, -112.0F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddBezier({ { -67.125F, -112.0F }, { -73.5579987F, -100.719002F }, { -75.4580002F, -89.9509964F } }); + sink->AddBezier({ { -78.625F, -72.0F }, { -79.375F, -58.25F }, { -80.375F, -39.25F } }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_10() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -67.25F, -105.5F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddBezier({ { -67.25F, -105.5F }, { -70.4329987F, -94.9690018F }, { -72.3330002F, -84.2009964F } }); + sink->AddBezier({ { -75.5F, -66.25F }, { -75.5F, -56.75F }, { -76.5F, -37.75F } }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_11() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 34.5F, -13.0500002F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddBezier({ { 7.5F, -14.5F }, { -4.0F, -37.0F }, { -35.0460014F, -35.5789986F } }); + sink->AddBezier({ { -61.4720001F, -34.3689995F }, { -62.25F, -5.75F }, { -62.25F, -5.75F } }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_12() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -3.0F, 35.9500008F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddBezier({ { -3.0F, 35.9500008F }, { -1.5F, 7.5F }, { -1.352F, -6.75600004F } }); + sink->AddBezier({ { -9.90299988F, -15.0190001F }, { -21.5699997F, -20.5790005F }, { -32.0460014F, -20.5790005F } }); + sink->AddBezier({ { -53.5F, -20.5790005F }, { -42.25F, 4.25F }, { -42.25F, 4.25F } }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_13() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 16.2310009F, 39.0730019F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ -32.769001F, 57.3650017F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_14() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 7.44999981F, 21.9500008F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ -32.75F, 55.75F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_15() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -94.5F, 37.0730019F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ -48.769001F, 55.3650017F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_16() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ -87.5F, 20.9500008F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ -48.75F, 54.75F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_17() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 166.731003F, -7.92700005F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 136.731003F, 7.11499977F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_18() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 156.449997F, -23.0499992F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 132.0F, 2.75F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_19() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 169.5F, 18.073F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 137.481003F, 11.3649998F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_20() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 119.5F, -45.0499992F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 82.75F, -44.75F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_21() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 119.25F, -20.0499992F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 63.5F, -20.5F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_22() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 128.0F, 3.6500001F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 78.25F, 3.5F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_23() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 149.623993F, 8.24400043F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 136.647995F, 10.1560001F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_24() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 144.429001F, -5.39699984F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 132.274994F, 4.73099995F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_25() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 145.677002F, 22.2199993F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 134.921997F, 14.7489996F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_26() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 147.699005F, 13.0249996F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 133.195007F, 13.21F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_27() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 142.182999F, -5.11199999F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 130.029007F, 5.01599979F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + winrt::com_ptr Geometry_28() + { + winrt::com_ptr path{ nullptr }; + winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); + winrt::com_ptr sink{ nullptr }; + winrt::check_hresult(path->Open(sink.put())); + sink->BeginFigure({ 142.037994F, 29.2779999F }, D2D1_FIGURE_BEGIN_FILLED); + sink->AddLine({ 131.281998F, 21.8069992F }); + sink->EndFigure(D2D1_FIGURE_END_OPEN); + winrt::check_hresult(sink->Close()); + auto result = winrt::make_self(path); + return result; + } + + // - Layer aggregator + // Offset:<187.5, 333.5> + CompositionColorBrush ColorBrush_AlmostDarkTurquoise_FF00D1C1() + { + return _c.CreateColorBrush({ 0xFF, 0x00, 0xD1, 0xC1 }); + } + + CompositionColorBrush ColorBrush_AlmostTeal_FF007A87() + { + return (_colorBrush_AlmostTeal_FF007A87 == nullptr) + ? _colorBrush_AlmostTeal_FF007A87 = _c.CreateColorBrush({ 0xFF, 0x00, 0x7A, 0x87 }) + : _colorBrush_AlmostTeal_FF007A87; + } + + CompositionColorBrush ColorBrush_White() + { + return (_colorBrush_White == nullptr) + ? _colorBrush_White = _c.CreateColorBrush({ 0xFF, 0xFF, 0xFF, 0xFF }) + : _colorBrush_White; + } + + // Layer aggregator + // Transforms for Bncr + CompositionContainerShape ContainerShape_00() + { + if (_containerShape_00 != nullptr) { return _containerShape_00; } + const auto result = _containerShape_00 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // Transforms: Dot-Y + result.Shapes().Append(ContainerShape_01()); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + // Transforms for Dot-Y + CompositionContainerShape ContainerShape_01() + { + if (_containerShape_01 != nullptr) { return _containerShape_01; } + const auto result = _containerShape_01 = _c.CreateContainerShape(); + // ShapeGroup: Ellipse 1 Offset:<196, 267> + result.Shapes().Append(SpriteShape_01()); + return result; + } + + // Layer aggregator + // Transforms for E3-Y + CompositionContainerShape ContainerShape_02() + { + if (_containerShape_02 != nullptr) { return _containerShape_02; } + const auto result = _containerShape_02 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // ShapeGroup: Group 1 Offset:<344.674, 261.877> + result.Shapes().Append(SpriteShape_02()); + return result; + } + + // Layer aggregator + // Transforms for E3-Y + CompositionContainerShape ContainerShape_03() + { + if (_containerShape_03 != nullptr) { return _containerShape_03; } + const auto result = _containerShape_03 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // Transforms: E3-B Offset:<0.06500244, 0> + result.Shapes().Append(SpriteShape_03()); + return result; + } + + // Layer aggregator + // Transforms for I-Y + CompositionContainerShape ContainerShape_04() + { + if (_containerShape_04 != nullptr) { return _containerShape_04; } + const auto result = _containerShape_04 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // ShapeGroup: Group 6 Offset:<304.135, 282.409> + result.Shapes().Append(SpriteShape_04()); + return result; + } + + // Layer aggregator + // Transforms for I-Y + CompositionContainerShape ContainerShape_05() + { + if (_containerShape_05 != nullptr) { return _containerShape_05; } + const auto result = _containerShape_05 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // Transforms: I-B + result.Shapes().Append(SpriteShape_05()); + return result; + } + + // Layer aggregator + // Transforms for E2-Y + CompositionContainerShape ContainerShape_06() + { + if (_containerShape_06 != nullptr) { return _containerShape_06; } + const auto result = _containerShape_06 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // ShapeGroup: Group 3 Offset:<331.664, 238.14> + result.Shapes().Append(SpriteShape_06()); + return result; + } + + // Layer aggregator + // Transforms for E2-Y + CompositionContainerShape ContainerShape_07() + { + if (_containerShape_07 != nullptr) { return _containerShape_07; } + const auto result = _containerShape_07 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // Transforms: E2-B + result.Shapes().Append(SpriteShape_07()); + return result; + } + + // Layer aggregator + // Transforms for E1-Y + CompositionContainerShape ContainerShape_08() + { + if (_containerShape_08 != nullptr) { return _containerShape_08; } + const auto result = _containerShape_08 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // ShapeGroup: Group 2 Offset:<344.672, 214.842> + result.Shapes().Append(SpriteShape_08()); + return result; + } + + // Layer aggregator + // Transforms for E1-Y + CompositionContainerShape ContainerShape_09() + { + if (_containerShape_09 != nullptr) { return _containerShape_09; } + const auto result = _containerShape_09 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // Transforms: E1-B + result.Shapes().Append(SpriteShape_09()); + return result; + } + + // Layer aggregator + // Transforms for T1a-Y + CompositionContainerShape ContainerShape_10() + { + if (_containerShape_10 != nullptr) { return _containerShape_10; } + const auto result = _containerShape_10 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // ShapeGroup: Group 9 Offset:<227.677, 234.375> + result.Shapes().Append(SpriteShape_10()); + return result; + } + + // Layer aggregator + // Transforms for O-Y + CompositionContainerShape ContainerShape_11() + { + if (_containerShape_11 != nullptr) { return _containerShape_11; } + const auto result = _containerShape_11 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + const auto shapes = result.Shapes(); + // ShapeGroup: Ellipse 1 Offset:<196, 267> + shapes.Append(SpriteShape_16()); + // ShapeGroup: Ellipse 1 Offset:<196, 267> + shapes.Append(SpriteShape_17()); + return result; + } + + // Layer aggregator + // Transforms for T1a-Y 2 + CompositionContainerShape ContainerShape_12() + { + if (_containerShape_12 != nullptr) { return _containerShape_12; } + const auto result = _containerShape_12 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // ShapeGroup: Group 9 Offset:<227.677, 234.375> + result.Shapes().Append(SpriteShape_18()); + return result; + } + + // Layer aggregator + // Transforms for T1a-Y + CompositionContainerShape ContainerShape_13() + { + if (_containerShape_13 != nullptr) { return _containerShape_13; } + const auto result = _containerShape_13 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // Transforms: T1a-B + result.Shapes().Append(SpriteShape_20()); + return result; + } + + // Layer aggregator + // Transforms for N + CompositionContainerShape ContainerShape_14() + { + if (_containerShape_14 != nullptr) { return _containerShape_14; } + const auto result = _containerShape_14 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // Transforms: Dot-Y + result.Shapes().Append(ContainerShape_15()); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + // Transforms for Dot-Y + CompositionContainerShape ContainerShape_15() + { + if (_containerShape_15 != nullptr) { return _containerShape_15; } + const auto result = _containerShape_15 = _c.CreateContainerShape(); + // ShapeGroup: Ellipse 1 Offset:<196, 267> + result.Shapes().Append(SpriteShape_21()); + return result; + } + + // Layer aggregator + // Transforms for Dot1 + CompositionContainerShape ContainerShape_16() + { + if (_containerShape_16 != nullptr) { return _containerShape_16; } + const auto result = _containerShape_16 = _c.CreateContainerShape(); + // Offset:<154.457, 287.822> + result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); + // ShapeGroup: Ellipse 1 Offset:<196, 267> + result.Shapes().Append(SpriteShape_24()); + return result; + } + + // Layer aggregator + // Layer: S1-Y + CompositionContainerShape ContainerShape_17() + { + if (_containerShape_17 != nullptr) { return _containerShape_17; } + const auto result = _containerShape_17 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + const auto shapes = result.Shapes(); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_25()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_26()); + return result; + } + + // Layer aggregator + // Layer: S7 + CompositionContainerShape ContainerShape_18() + { + if (_containerShape_18 != nullptr) { return _containerShape_18; } + const auto result = _containerShape_18 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + const auto shapes = result.Shapes(); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_27()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_28()); + return result; + } + + // Layer aggregator + // Layer: S3-Y + CompositionContainerShape ContainerShape_19() + { + if (_containerShape_19 != nullptr) { return _containerShape_19; } + const auto result = _containerShape_19 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + const auto shapes = result.Shapes(); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_29()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_30()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_31()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_32()); + return result; + } + + // Layer aggregator + // Layer: S3-Y 2 + CompositionContainerShape ContainerShape_20() + { + if (_containerShape_20 != nullptr) { return _containerShape_20; } + const auto result = _containerShape_20 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + const auto shapes = result.Shapes(); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_33()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_34()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_35()); + return result; + } + + // Layer aggregator + // Layer: S3-Y 3 + CompositionContainerShape ContainerShape_21() + { + if (_containerShape_21 != nullptr) { return _containerShape_21; } + const auto result = _containerShape_21 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + const auto shapes = result.Shapes(); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_39()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_40()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_41()); + return result; + } + + // Layer aggregator + // Layer: S3-Y 4 + CompositionContainerShape ContainerShape_22() + { + if (_containerShape_22 != nullptr) { return _containerShape_22; } + const auto result = _containerShape_22 = _c.CreateContainerShape(); + result.Scale({ 0.0F, 0.0F }); + const auto shapes = result.Shapes(); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_42()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_43()); + // Offset:<154.457, 287.822> + shapes.Append(SpriteShape_44()); + return result; + } + + // - - Layer aggregator + // - Layer: O-Y + // ShapeGroup: Ellipse 1 Offset:<196, 267> + // Ellipse Path 1.EllipseGeometry + CompositionEllipseGeometry Ellipse_0_0() + { + if (_ellipse_0_0 != nullptr) { return _ellipse_0_0; } + const auto result = _ellipse_0_0 = _c.CreateEllipseGeometry(); + result.Center({ 0.800000012F, -0.5F }); + result.Radius({ 0.0F, 0.0F }); + return result; + } + + // - - Layer aggregator + // - Layer: O-Y + // ShapeGroup: Ellipse 1 Offset:<196, 267> + // Ellipse Path 1.EllipseGeometry + CompositionEllipseGeometry Ellipse_0_1() + { + if (_ellipse_0_1 != nullptr) { return _ellipse_0_1; } + const auto result = _ellipse_0_1 = _c.CreateEllipseGeometry(); + result.Center({ 0.800000012F, -0.5F }); + result.Radius({ 0.0F, 0.0F }); + return result; + } + + // - - - Layer aggregator + // - - Layer: Dot-Y + // - Transforms: Dot-Y + // ShapeGroup: Ellipse 1 Offset:<196, 267> + // Ellipse Path 1.EllipseGeometry + CompositionEllipseGeometry Ellipse_4p6() + { + const auto result = _c.CreateEllipseGeometry(); + result.Center({ 0.800000012F, -0.5F }); + result.Radius({ 4.5999999F, 4.5999999F }); + return result; + } + + // Ellipse Path 1.EllipseGeometry + CompositionEllipseGeometry Ellipse_4p7() + { + if (_ellipse_4p7 != nullptr) { return _ellipse_4p7; } + const auto result = _ellipse_4p7 = _c.CreateEllipseGeometry(); + result.Center({ 0.800000012F, -0.5F }); + result.Radius({ 4.69999981F, 4.69999981F }); + return result; + } + + CompositionPath Path_0() + { + if (_path_0 != nullptr) { return _path_0; } + const auto result = _path_0 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_00())); + return result; + } + + CompositionPath Path_1() + { + if (_path_1 != nullptr) { return _path_1; } + const auto result = _path_1 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_01())); + return result; + } + + CompositionPath Path_2() + { + if (_path_2 != nullptr) { return _path_2; } + const auto result = _path_2 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_02())); + return result; + } + + CompositionPath Path_3() + { + if (_path_3 != nullptr) { return _path_3; } + const auto result = _path_3 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_03())); + return result; + } + + CompositionPath Path_4() + { + if (_path_4 != nullptr) { return _path_4; } + const auto result = _path_4 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_04())); + return result; + } + + CompositionPath Path_5() + { + if (_path_5 != nullptr) { return _path_5; } + const auto result = _path_5 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_05())); + return result; + } + + CompositionPath Path_6() + { + if (_path_6 != nullptr) { return _path_6; } + const auto result = _path_6 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_06())); + return result; + } + + CompositionPath Path_7() + { + if (_path_7 != nullptr) { return _path_7; } + const auto result = _path_7 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_07())); + return result; + } + + CompositionPath Path_8() + { + if (_path_8 != nullptr) { return _path_8; } + const auto result = _path_8 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_08())); + return result; + } + + // - - Layer aggregator + // - Layer: E3-Y + // ShapeGroup: Group 1 Offset:<344.674, 261.877> + CompositionPathGeometry PathGeometry_00() + { + if (_pathGeometry_00 != nullptr) { return _pathGeometry_00; } + const auto result = _pathGeometry_00 = _c.CreatePathGeometry(Path_0()); + return result; + } + + // - - Layer aggregator + // - Layer: E3-B + // Transforms: E3-B Offset:<0.06500244, 0> + CompositionPathGeometry PathGeometry_01() + { + if (_pathGeometry_01 != nullptr) { return _pathGeometry_01; } + const auto result = _pathGeometry_01 = _c.CreatePathGeometry(Path_0()); + return result; + } + + // - - Layer aggregator + // - Layer: I-Y + // ShapeGroup: Group 6 Offset:<304.135, 282.409> + CompositionPathGeometry PathGeometry_02() + { + if (_pathGeometry_02 != nullptr) { return _pathGeometry_02; } + const auto result = _pathGeometry_02 = _c.CreatePathGeometry(Path_1()); + return result; + } + + // - - Layer aggregator + // - Layer: I-B + // Transforms: I-B + CompositionPathGeometry PathGeometry_03() + { + if (_pathGeometry_03 != nullptr) { return _pathGeometry_03; } + const auto result = _pathGeometry_03 = _c.CreatePathGeometry(Path_1()); + return result; + } + + // - - Layer aggregator + // - Layer: E2-Y + // ShapeGroup: Group 3 Offset:<331.664, 238.14> + CompositionPathGeometry PathGeometry_04() + { + if (_pathGeometry_04 != nullptr) { return _pathGeometry_04; } + const auto result = _pathGeometry_04 = _c.CreatePathGeometry(Path_2()); + return result; + } + + // - - Layer aggregator + // - Layer: E2-B + // Transforms: E2-B + CompositionPathGeometry PathGeometry_05() + { + if (_pathGeometry_05 != nullptr) { return _pathGeometry_05; } + const auto result = _pathGeometry_05 = _c.CreatePathGeometry(Path_2()); + return result; + } + + // - - Layer aggregator + // - Layer: E1-Y + // ShapeGroup: Group 2 Offset:<344.672, 214.842> + CompositionPathGeometry PathGeometry_06() + { + if (_pathGeometry_06 != nullptr) { return _pathGeometry_06; } + const auto result = _pathGeometry_06 = _c.CreatePathGeometry(Path_3()); + return result; + } + + // - - Layer aggregator + // - Layer: E1-B + // Transforms: E1-B + CompositionPathGeometry PathGeometry_07() + { + if (_pathGeometry_07 != nullptr) { return _pathGeometry_07; } + const auto result = _pathGeometry_07 = _c.CreatePathGeometry(Path_3()); + return result; + } + + CompositionPathGeometry PathGeometry_08() + { + if (_pathGeometry_08 != nullptr) { return _pathGeometry_08; } + const auto result = _pathGeometry_08 = _c.CreatePathGeometry(Path_4()); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 0.0F); + propertySet.InsertScalar(L"TStart", 0.0F); + BindProperty(_pathGeometry_08, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_08); + BindProperty(_pathGeometry_08, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_08); + return result; + } + + // - Layer aggregator + // Layer: T2b-Y + CompositionPathGeometry PathGeometry_09() + { + if (_pathGeometry_09 != nullptr) { return _pathGeometry_09; } + const auto result = _pathGeometry_09 = _c.CreatePathGeometry(Path_5()); + return result; + } + + // - Layer aggregator + // Layer: T2a-Y + CompositionPathGeometry PathGeometry_10() + { + if (_pathGeometry_10 != nullptr) { return _pathGeometry_10; } + const auto result = _pathGeometry_10 = _c.CreatePathGeometry(Path_6()); + return result; + } + + // - Layer aggregator + // Layer: T2b-B + CompositionPathGeometry PathGeometry_11() + { + if (_pathGeometry_11 != nullptr) { return _pathGeometry_11; } + const auto result = _pathGeometry_11 = _c.CreatePathGeometry(Path_5()); + return result; + } + + // - Layer aggregator + // Layer: T1b-Y + CompositionPathGeometry PathGeometry_12() + { + if (_pathGeometry_12 != nullptr) { return _pathGeometry_12; } + const auto result = _pathGeometry_12 = _c.CreatePathGeometry(Path_7()); + return result; + } + + // - Layer aggregator + // Layer: T1b-B + CompositionPathGeometry PathGeometry_13() + { + if (_pathGeometry_13 != nullptr) { return _pathGeometry_13; } + const auto result = _pathGeometry_13 = _c.CreatePathGeometry(Path_7()); + return result; + } + + CompositionPathGeometry PathGeometry_14() + { + if (_pathGeometry_14 != nullptr) { return _pathGeometry_14; } + const auto result = _pathGeometry_14 = _c.CreatePathGeometry(Path_4()); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 0.0F); + propertySet.InsertScalar(L"TStart", 0.0F); + BindProperty(_pathGeometry_14, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_14); + BindProperty(_pathGeometry_14, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_14); + return result; + } + + // - Layer aggregator + // Layer: T2a-B + CompositionPathGeometry PathGeometry_15() + { + if (_pathGeometry_15 != nullptr) { return _pathGeometry_15; } + const auto result = _pathGeometry_15 = _c.CreatePathGeometry(Path_6()); + return result; + } + + // - - Layer aggregator + // - Layer: T1a-B + // Transforms: T1a-B + CompositionPathGeometry PathGeometry_16() + { + if (_pathGeometry_16 != nullptr) { return _pathGeometry_16; } + const auto result = _pathGeometry_16 = _c.CreatePathGeometry(Path_4()); + result.TrimStart(0.248999998F); + return result; + } + + CompositionPathGeometry PathGeometry_17() + { + if (_pathGeometry_17 != nullptr) { return _pathGeometry_17; } + const auto result = _pathGeometry_17 = _c.CreatePathGeometry(Path_8()); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 0.810000002F); + propertySet.InsertScalar(L"TStart", 0.800000012F); + BindProperty(_pathGeometry_17, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_17); + BindProperty(_pathGeometry_17, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_17); + return result; + } + + CompositionPathGeometry PathGeometry_18() + { + if (_pathGeometry_18 != nullptr) { return _pathGeometry_18; } + const auto result = _pathGeometry_18 = _c.CreatePathGeometry(Path_8()); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 0.810000002F); + propertySet.InsertScalar(L"TStart", 0.800000012F); + BindProperty(_pathGeometry_18, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_18); + BindProperty(_pathGeometry_18, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_18); + return result; + } + + CompositionPathGeometry PathGeometry_19() + { + if (_pathGeometry_19 != nullptr) { return _pathGeometry_19; } + const auto result = _pathGeometry_19 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_09()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_19, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_19); + BindProperty(_pathGeometry_19, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_19); + return result; + } + + CompositionPathGeometry PathGeometry_20() + { + if (_pathGeometry_20 != nullptr) { return _pathGeometry_20; } + const auto result = _pathGeometry_20 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_10()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_20, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_20); + BindProperty(_pathGeometry_20, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_20); + return result; + } + + CompositionPathGeometry PathGeometry_21() + { + if (_pathGeometry_21 != nullptr) { return _pathGeometry_21; } + const auto result = _pathGeometry_21 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_11()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_21, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_21); + BindProperty(_pathGeometry_21, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_21); + return result; + } + + CompositionPathGeometry PathGeometry_22() + { + if (_pathGeometry_22 != nullptr) { return _pathGeometry_22; } + const auto result = _pathGeometry_22 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_12()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_22, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_22); + BindProperty(_pathGeometry_22, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_22); + return result; + } + + CompositionPathGeometry PathGeometry_23() + { + if (_pathGeometry_23 != nullptr) { return _pathGeometry_23; } + const auto result = _pathGeometry_23 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_13()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_23, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_23); + BindProperty(_pathGeometry_23, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_23); + return result; + } + + CompositionPathGeometry PathGeometry_24() + { + if (_pathGeometry_24 != nullptr) { return _pathGeometry_24; } + const auto result = _pathGeometry_24 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_14()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_24, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_24); + BindProperty(_pathGeometry_24, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_24); + return result; + } + + CompositionPathGeometry PathGeometry_25() + { + if (_pathGeometry_25 != nullptr) { return _pathGeometry_25; } + const auto result = _pathGeometry_25 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_15()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_25, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_25); + BindProperty(_pathGeometry_25, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_25); + return result; + } + + CompositionPathGeometry PathGeometry_26() + { + if (_pathGeometry_26 != nullptr) { return _pathGeometry_26; } + const auto result = _pathGeometry_26 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_16()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_26, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_26); + BindProperty(_pathGeometry_26, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_26); + return result; + } + + CompositionPathGeometry PathGeometry_27() + { + if (_pathGeometry_27 != nullptr) { return _pathGeometry_27; } + const auto result = _pathGeometry_27 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_17()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_27, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_27); + BindProperty(_pathGeometry_27, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_27); + return result; + } + + CompositionPathGeometry PathGeometry_28() + { + if (_pathGeometry_28 != nullptr) { return _pathGeometry_28; } + const auto result = _pathGeometry_28 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_18()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_28, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_28); + BindProperty(_pathGeometry_28, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_28); + return result; + } + + CompositionPathGeometry PathGeometry_29() + { + if (_pathGeometry_29 != nullptr) { return _pathGeometry_29; } + const auto result = _pathGeometry_29 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_19()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_29, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_29); + BindProperty(_pathGeometry_29, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_29); + return result; + } + + CompositionPathGeometry PathGeometry_30() + { + if (_pathGeometry_30 != nullptr) { return _pathGeometry_30; } + const auto result = _pathGeometry_30 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_20()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_30, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_30); + BindProperty(_pathGeometry_30, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_30); + return result; + } + + CompositionPathGeometry PathGeometry_31() + { + if (_pathGeometry_31 != nullptr) { return _pathGeometry_31; } + const auto result = _pathGeometry_31 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_21()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_31, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_31); + BindProperty(_pathGeometry_31, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_31); + return result; + } + + CompositionPathGeometry PathGeometry_32() + { + if (_pathGeometry_32 != nullptr) { return _pathGeometry_32; } + const auto result = _pathGeometry_32 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_22()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_32, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_32); + BindProperty(_pathGeometry_32, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_32); + return result; + } + + CompositionPathGeometry PathGeometry_33() + { + if (_pathGeometry_33 != nullptr) { return _pathGeometry_33; } + const auto result = _pathGeometry_33 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_23()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_33, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_33); + BindProperty(_pathGeometry_33, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_33); + return result; + } + + CompositionPathGeometry PathGeometry_34() + { + if (_pathGeometry_34 != nullptr) { return _pathGeometry_34; } + const auto result = _pathGeometry_34 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_24()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_34, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_34); + BindProperty(_pathGeometry_34, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_34); + return result; + } + + CompositionPathGeometry PathGeometry_35() + { + if (_pathGeometry_35 != nullptr) { return _pathGeometry_35; } + const auto result = _pathGeometry_35 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_25()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_35, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_35); + BindProperty(_pathGeometry_35, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_35); + return result; + } + + CompositionPathGeometry PathGeometry_36() + { + if (_pathGeometry_36 != nullptr) { return _pathGeometry_36; } + const auto result = _pathGeometry_36 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_26()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_36, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_36); + BindProperty(_pathGeometry_36, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_36); + return result; + } + + CompositionPathGeometry PathGeometry_37() + { + if (_pathGeometry_37 != nullptr) { return _pathGeometry_37; } + const auto result = _pathGeometry_37 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_27()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_37, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_37); + BindProperty(_pathGeometry_37, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_37); + return result; + } + + CompositionPathGeometry PathGeometry_38() + { + if (_pathGeometry_38 != nullptr) { return _pathGeometry_38; } + const auto result = _pathGeometry_38 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_28()))); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"TEnd", 1.0F); + propertySet.InsertScalar(L"TStart", 0.870000005F); + BindProperty(_pathGeometry_38, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_38); + BindProperty(_pathGeometry_38, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_38); + return result; + } + + // - Layer aggregator + // Offset:<187.5, 333.5> + // Rectangle Path 1.RectangleGeometry + CompositionRectangleGeometry Rectangle_375x667() + { + const auto result = _c.CreateRectangleGeometry(); + result.Offset({ -187.5F, -333.5F }); + result.Size({ 375.0F, 667.0F }); + return result; + } + + // Layer aggregator + // Rectangle Path 1 + CompositionSpriteShape SpriteShape_00() + { + // Offset:<187.5, 333.5> + const auto geometry = Rectangle_375x667(); + const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 187.5F, 333.5F }, ColorBrush_AlmostDarkTurquoise_FF00D1C1());; + return result; + } + + // - - Layer aggregator + // - Layer: Dot-Y + // Transforms: Dot-Y + // Ellipse Path 1 + CompositionSpriteShape SpriteShape_01() + { + // Offset:<196, 267> + const auto geometry = Ellipse_4p6(); + const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F }, ColorBrush_White());; + return result; + } + + // - Layer aggregator + // Layer: E3-Y + // Path 1 + CompositionSpriteShape SpriteShape_02() + { + // Offset:<344.674, 261.877> + const auto result = CreateSpriteShape(PathGeometry_00(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.674011F, 261.877014F });; + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.56200027F); + return result; + } + + // - Layer aggregator + // Layer: E3-B + // Path 1 + CompositionSpriteShape SpriteShape_03() + { + // Offset:<344.739, 261.877> + const auto result = CreateSpriteShape(PathGeometry_01(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.739014F, 261.877014F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.56200027F); + return result; + } + + // - Layer aggregator + // Layer: I-Y + // Path 1 + CompositionSpriteShape SpriteShape_04() + { + // Offset:<304.135, 282.409> + const auto result = CreateSpriteShape(PathGeometry_02(), { 1.0F, 0.0F, 0.0F, 1.0F, 304.13501F, 282.408997F });; + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Square); + result.StrokeStartCap(CompositionStrokeCap::Square); + result.StrokeEndCap(CompositionStrokeCap::Square); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(8.39999962F); + return result; + } + + // - Layer aggregator + // Layer: I-B + // Path 1 + CompositionSpriteShape SpriteShape_05() + { + // Offset:<304.135, 282.409> + const auto result = CreateSpriteShape(PathGeometry_03(), { 1.0F, 0.0F, 0.0F, 1.0F, 304.13501F, 282.408997F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Square); + result.StrokeStartCap(CompositionStrokeCap::Square); + result.StrokeEndCap(CompositionStrokeCap::Square); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // - Layer aggregator + // Layer: E2-Y + // Path 1 + CompositionSpriteShape SpriteShape_06() + { + // Offset:<331.664, 238.14> + const auto result = CreateSpriteShape(PathGeometry_04(), { 1.0F, 0.0F, 0.0F, 1.0F, 331.664001F, 238.139999F });; + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(8.39999962F); + return result; + } + + // - Layer aggregator + // Layer: E2-B + // Path 1 + CompositionSpriteShape SpriteShape_07() + { + // Offset:<331.664, 238.14> + const auto result = CreateSpriteShape(PathGeometry_05(), { 1.0F, 0.0F, 0.0F, 1.0F, 331.664001F, 238.139999F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.56200027F); + return result; + } + + // - Layer aggregator + // Layer: E1-Y + // Path 1 + CompositionSpriteShape SpriteShape_08() + { + // Offset:<344.672, 214.842> + const auto result = CreateSpriteShape(PathGeometry_06(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.671997F, 214.841995F });; + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(8.39999962F); + return result; + } + + // - Layer aggregator + // Layer: E1-B + // Path 1 + CompositionSpriteShape SpriteShape_09() + { + // Offset:<344.672, 214.842> + const auto result = CreateSpriteShape(PathGeometry_07(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.671997F, 214.841995F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.56200027F); + return result; + } + + // - Layer aggregator + // Layer: T1a-Y + // Path 1 + CompositionSpriteShape SpriteShape_10() + { + // Offset:<227.677, 234.375> + const auto result = CreateSpriteShape(PathGeometry_08(), { 1.0F, 0.0F, 0.0F, 1.0F, 227.677002F, 234.375F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(8.39999962F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_11() + { + // Offset:<-56.5, 83.5> + if (_spriteShape_11 != nullptr) { return _spriteShape_11; } + const auto result = _spriteShape_11 = CreateSpriteShape(PathGeometry_09(), { 1.0F, 0.0F, 0.0F, 1.0F, -56.5F, 83.5F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_12() + { + // Offset:<221.198, 330.758> + if (_spriteShape_12 != nullptr) { return _spriteShape_12; } + const auto result = _spriteShape_12 = CreateSpriteShape(PathGeometry_10(), { 1.0F, 0.0F, 0.0F, 1.0F, 221.197998F, 330.757996F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Square); + result.StrokeStartCap(CompositionStrokeCap::Square); + result.StrokeEndCap(CompositionStrokeCap::Square); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_13() + { + // Offset:<-56.5, 83.5> + if (_spriteShape_13 != nullptr) { return _spriteShape_13; } + const auto result = _spriteShape_13 = CreateSpriteShape(PathGeometry_11(), { 1.0F, 0.0F, 0.0F, 1.0F, -56.5F, 83.5F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_14() + { + // Offset:<186.256, 349.081> + if (_spriteShape_14 != nullptr) { return _spriteShape_14; } + const auto result = _spriteShape_14 = CreateSpriteShape(PathGeometry_12(), { 1.0F, 0.0F, 0.0F, 1.0F, 186.255997F, 349.080994F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeLineJoin(CompositionStrokeLineJoin::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(8.39999962F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_15() + { + // Offset:<186.256, 349.081> + if (_spriteShape_15 != nullptr) { return _spriteShape_15; } + const auto result = _spriteShape_15 = CreateSpriteShape(PathGeometry_13(), { 1.0F, 0.0F, 0.0F, 1.0F, 186.255997F, 349.080994F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeLineJoin(CompositionStrokeLineJoin::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // - Layer aggregator + // Layer: O-Y + // Ellipse Path 1 + CompositionSpriteShape SpriteShape_16() + { + // Offset:<196, 267> + const auto result = CreateSpriteShape(Ellipse_0_0(), { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeThickness(8.80000019F); + return result; + } + + // - Layer aggregator + // Layer: O-Y + // Ellipse Path 1 + CompositionSpriteShape SpriteShape_17() + { + // Offset:<196, 267> + const auto result = CreateSpriteShape(Ellipse_0_1(), { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F });; + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeThickness(9.19400024F); + return result; + } + + // - Layer aggregator + // Layer: T1a-Y 2 + // Path 1 + CompositionSpriteShape SpriteShape_18() + { + // Offset:<227.677, 234.375> + const auto result = CreateSpriteShape(PathGeometry_14(), { 1.0F, 0.0F, 0.0F, 1.0F, 227.677002F, 234.375F });; + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(8.39999962F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_19() + { + // Offset:<221.198, 330.758> + if (_spriteShape_19 != nullptr) { return _spriteShape_19; } + const auto result = _spriteShape_19 = CreateSpriteShape(PathGeometry_15(), { 1.0F, 0.0F, 0.0F, 1.0F, 221.197998F, 330.757996F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Square); + result.StrokeStartCap(CompositionStrokeCap::Square); + result.StrokeEndCap(CompositionStrokeCap::Square); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // - Layer aggregator + // Layer: T1a-B + // Path 1 + CompositionSpriteShape SpriteShape_20() + { + // Offset:<227.677, 234.375> + const auto result = CreateSpriteShape(PathGeometry_16(), { 1.0F, 0.0F, 0.0F, 1.0F, 227.677002F, 234.375F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // - - Layer aggregator + // - Layer: Dot-Y + // Transforms: Dot-Y + // Ellipse Path 1 + CompositionSpriteShape SpriteShape_21() + { + // Offset:<196, 267> + const auto geometry = Ellipse_4p7(); + const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F }, ColorBrush_White());; + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_22() + { + // Offset:<109.52901, 354.143> + if (_spriteShape_22 != nullptr) { return _spriteShape_22; } + const auto result = _spriteShape_22 = CreateSpriteShape(PathGeometry_17(), { 1.0F, 0.0F, 0.0F, 1.0F, 109.529007F, 354.143005F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(8.39999962F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_23() + { + // Offset:<109.52901, 354.143> + if (_spriteShape_23 != nullptr) { return _spriteShape_23; } + const auto result = _spriteShape_23 = CreateSpriteShape(PathGeometry_18(), { 1.0F, 0.0F, 0.0F, 1.0F, 109.529007F, 354.143005F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(5.0F); + result.StrokeThickness(9.19400024F); + return result; + } + + // - Layer aggregator + // Layer: Dot1 + // Ellipse Path 1 + CompositionSpriteShape SpriteShape_24() + { + // Offset:<196, 267> + const auto geometry = Ellipse_4p7(); + const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F }, ColorBrush_White());; + return result; + } + + // - Layer aggregator + // Layer: S1-Y + // Path 1 + CompositionSpriteShape SpriteShape_25() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_19(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(1.5F); + return result; + } + + // - Layer aggregator + // Layer: S1-Y + // Path 1 + CompositionSpriteShape SpriteShape_26() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_20(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(1.5F); + return result; + } + + // - Layer aggregator + // Layer: S7 + // Path 1 + CompositionSpriteShape SpriteShape_27() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_21(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(1.5F); + return result; + } + + // - Layer aggregator + // Layer: S7 + // Path 1 + CompositionSpriteShape SpriteShape_28() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_22(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(1.5F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y + // Path 1 + CompositionSpriteShape SpriteShape_29() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_23(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y + // Path 1 + CompositionSpriteShape SpriteShape_30() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_24(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y + // Path 1 + CompositionSpriteShape SpriteShape_31() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_25(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y + // Path 1 + CompositionSpriteShape SpriteShape_32() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_26(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 2 + // Path 1 + CompositionSpriteShape SpriteShape_33() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_27(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 2 + // Path 1 + CompositionSpriteShape SpriteShape_34() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_28(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 2 + // Path 1 + CompositionSpriteShape SpriteShape_35() + { + // Offset:<179.5, 333.5> + const auto result = CreateSpriteShape(PathGeometry_29(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_36() + { + // Offset:<179.5, 333.5> + if (_spriteShape_36 != nullptr) { return _spriteShape_36; } + const auto result = _spriteShape_36 = CreateSpriteShape(PathGeometry_30(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(1.5F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_37() + { + // Offset:<179.5, 333.5> + if (_spriteShape_37 != nullptr) { return _spriteShape_37; } + const auto result = _spriteShape_37 = CreateSpriteShape(PathGeometry_31(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(1.5F); + return result; + } + + // Layer aggregator + // Path 1 + CompositionSpriteShape SpriteShape_38() + { + // Offset:<179.5, 333.5> + if (_spriteShape_38 != nullptr) { return _spriteShape_38; } + const auto result = _spriteShape_38 = CreateSpriteShape(PathGeometry_32(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; + result.Scale({ 0.0F, 0.0F }); + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(1.5F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 3 + // Path 1 + CompositionSpriteShape SpriteShape_39() + { + // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees + const auto result = CreateSpriteShape(PathGeometry_33(), { -0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 3 + // Path 1 + CompositionSpriteShape SpriteShape_40() + { + // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees + const auto result = CreateSpriteShape(PathGeometry_34(), { -0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 3 + // Path 1 + CompositionSpriteShape SpriteShape_41() + { + // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees + const auto result = CreateSpriteShape(PathGeometry_35(), { -0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 4 + // Path 1 + CompositionSpriteShape SpriteShape_42() + { + // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, + // Scale:<0.99999994, 0.99999994> + const auto result = CreateSpriteShape(PathGeometry_36(), { 0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 4 + // Path 1 + CompositionSpriteShape SpriteShape_43() + { + // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, + // Scale:<0.99999994, 0.99999994> + const auto result = CreateSpriteShape(PathGeometry_37(), { 0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 4 + // Path 1 + CompositionSpriteShape SpriteShape_44() + { + // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, + // Scale:<0.99999994, 0.99999994> + const auto result = CreateSpriteShape(PathGeometry_38(), { 0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F });; + result.StrokeBrush(ColorBrush_White()); + result.StrokeDashCap(CompositionStrokeCap::Round); + result.StrokeStartCap(CompositionStrokeCap::Round); + result.StrokeEndCap(CompositionStrokeCap::Round); + result.StrokeMiterLimit(2.0F); + result.StrokeThickness(2.0F); + return result; + } + + // The root of the composition. + ContainerVisual Root() + { + if (_root != nullptr) { return _root; } + const auto result = _root = _c.CreateContainerVisual(); + const auto propertySet = result.Properties(); + propertySet.InsertScalar(L"Progress", 0.0F); + propertySet.InsertScalar(L"t0", 0.0F); + // Layer aggregator + result.Children().InsertAtTop(ShapeVisual_0()); + return result; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_0() + { + return (_cubicBezierEasingFunction_0 == nullptr) + ? _cubicBezierEasingFunction_0 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.180000007F, 1.0F }) + : _cubicBezierEasingFunction_0; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_1() + { + return (_cubicBezierEasingFunction_1 == nullptr) + ? _cubicBezierEasingFunction_1 = _c.CreateCubicBezierEasingFunction({ 0.819999993F, 0.0F }, { 0.833000004F, 0.833000004F }) + : _cubicBezierEasingFunction_1; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_2() + { + return (_cubicBezierEasingFunction_2 == nullptr) + ? _cubicBezierEasingFunction_2 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.833000004F, 0.833000004F }) + : _cubicBezierEasingFunction_2; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_3() + { + return (_cubicBezierEasingFunction_3 == nullptr) + ? _cubicBezierEasingFunction_3 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.666999996F, 1.0F }) + : _cubicBezierEasingFunction_3; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_4() + { + return (_cubicBezierEasingFunction_4 == nullptr) + ? _cubicBezierEasingFunction_4 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.119999997F, 1.0F }) + : _cubicBezierEasingFunction_4; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_5() + { + return (_cubicBezierEasingFunction_5 == nullptr) + ? _cubicBezierEasingFunction_5 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.0F }, { 0.119999997F, 1.0F }) + : _cubicBezierEasingFunction_5; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_6() + { + return (_cubicBezierEasingFunction_6 == nullptr) + ? _cubicBezierEasingFunction_6 = _c.CreateCubicBezierEasingFunction({ 0.300999999F, 0.0F }, { 0.666999996F, 1.0F }) + : _cubicBezierEasingFunction_6; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_7() + { + return (_cubicBezierEasingFunction_7 == nullptr) + ? _cubicBezierEasingFunction_7 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.0599999987F, 1.0F }) + : _cubicBezierEasingFunction_7; + } + + CubicBezierEasingFunction CubicBezierEasingFunction_8() + { + return (_cubicBezierEasingFunction_8 == nullptr) + ? _cubicBezierEasingFunction_8 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.337000012F, 1.0F }) + : _cubicBezierEasingFunction_8; + } + + ScalarKeyFrameAnimation t0ScalarAnimation_0_to_1() + { + // Frame 35.26. + const auto result = CreateScalarKeyFrameAnimation(0.196966499F, 0.0F, StepThenHoldEasingFunction()); + result.SetReferenceParameter(L"_", _root); + // Frame 44. + result.InsertKeyFrame(0.245810047F, 1.0F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.197999999F }, { 0.638000011F, 1.0F })); + // Frame 44. + result.InsertKeyFrame(0.245810062F, 0.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675946F, 1.0F, _c.CreateCubicBezierEasingFunction({ 0.523000002F, 0.0F }, { 0.795000017F, 1.0F })); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_0_to_1_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); + // Frame 74. + result.InsertKeyFrame(0.413407832F, 1.0F, CubicBezierEasingFunction_6()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_0_to_1_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 1.0F, CubicBezierEasingFunction_6()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_0p81_to_0p734_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.810000002F, StepThenHoldEasingFunction()); + // Frame 16. + result.InsertKeyFrame(0.0893854722F, 0.810000002F, HoldThenStepEasingFunction()); + // Frame 27. + result.InsertKeyFrame(0.150837988F, 0.734000027F, CubicBezierEasingFunction_8()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_0p81_to_0p734_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.810000002F, StepThenHoldEasingFunction()); + // Frame 18. + result.InsertKeyFrame(0.100558661F, 0.810000002F, HoldThenStepEasingFunction()); + // Frame 29. + result.InsertKeyFrame(0.162011176F, 0.734000027F, CubicBezierEasingFunction_8()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_00() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 29. + result.InsertKeyFrame(0.162011176F, 1.0F, HoldThenStepEasingFunction()); + // Frame 33. + result.InsertKeyFrame(0.184357539F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 36. + result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_01() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 29. + result.InsertKeyFrame(0.162011176F, 1.0F, HoldThenStepEasingFunction()); + // Frame 33. + result.InsertKeyFrame(0.184357539F, 0.690559983F, CubicBezierEasingFunction_2()); + // Frame 36. + result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_02() + { + // Frame 0. + if (_tEndScalarAnimation_1_to_0_02 != nullptr) { return _tEndScalarAnimation_1_to_0_02; } + const auto result = _tEndScalarAnimation_1_to_0_02 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 65. + result.InsertKeyFrame(0.363128483F, 1.0F, HoldThenStepEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_03() + { + // Frame 0. + if (_tEndScalarAnimation_1_to_0_03 != nullptr) { return _tEndScalarAnimation_1_to_0_03; } + const auto result = _tEndScalarAnimation_1_to_0_03 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_04() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.758560002F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_05() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.704559982F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_06() + { + // Frame 0. + if (_tEndScalarAnimation_1_to_0_06 != nullptr) { return _tEndScalarAnimation_1_to_0_06; } + const auto result = _tEndScalarAnimation_1_to_0_06 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 1.0F, HoldThenStepEasingFunction()); + // Frame 100. + result.InsertKeyFrame(0.558659196F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_07() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 1.0F, HoldThenStepEasingFunction()); + // Frame 100. + result.InsertKeyFrame(0.558659196F, 0.758560002F, CubicBezierEasingFunction_2()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_08() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 80. + result.InsertKeyFrame(0.446927369F, 1.0F, HoldThenStepEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 87. + result.InsertKeyFrame(0.486033529F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_09() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, 1.0F, HoldThenStepEasingFunction()); + // Frame 87. + result.InsertKeyFrame(0.486033529F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_10() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 1.0F, HoldThenStepEasingFunction()); + // Frame 90. + result.InsertKeyFrame(0.502793312F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 94. + result.InsertKeyFrame(0.525139689F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_11() + { + // Frame 0. + if (_tEndScalarAnimation_1_to_0_11 != nullptr) { return _tEndScalarAnimation_1_to_0_11; } + const auto result = _tEndScalarAnimation_1_to_0_11 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 1.0F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_12() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 1.0F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.758560002F, CubicBezierEasingFunction_2()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_13() + { + // Frame 0. + if (_tEndScalarAnimation_1_to_0_13 != nullptr) { return _tEndScalarAnimation_1_to_0_13; } + const auto result = _tEndScalarAnimation_1_to_0_13 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 1.0F, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.663559973F, CubicBezierEasingFunction_2()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TEnd + ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_14() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 1.0F, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.758560002F, CubicBezierEasingFunction_2()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E2-Y + // - ShapeGroup: Group 3 Offset:<331.664, 238.14> + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p43_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.0F, HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, 0.430000007F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E2-B + // - Transforms: E2-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p43_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 86. + result.InsertKeyFrame(0.480446935F, 0.0F, HoldThenStepEasingFunction()); + // Frame 95. + result.InsertKeyFrame(0.530726254F, 0.430000007F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E3-Y + // - ShapeGroup: Group 1 Offset:<344.674, 261.877> + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p316_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, 0.0F, HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, 0.316000015F, CubicBezierEasingFunction_2()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E3-B + // - Transforms: E3-B Offset:<0.06500244, 0> + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p316_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, 0.0F, HoldThenStepEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 0.316000015F, CubicBezierEasingFunction_2()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E1-Y + // - ShapeGroup: Group 2 Offset:<344.672, 214.842> + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p375_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.0F, HoldThenStepEasingFunction()); + // Frame 88. + result.InsertKeyFrame(0.491620123F, 0.375F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: E1-B + // - Transforms: E1-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p375_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, 0.0F, HoldThenStepEasingFunction()); + // Frame 93. + result.InsertKeyFrame(0.519553065F, 0.375F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: I-Y + // - ShapeGroup: Group 6 Offset:<304.135, 282.409> + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p457_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.0F, HoldThenStepEasingFunction()); + // Frame 88. + result.InsertKeyFrame(0.491620123F, 0.456999987F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: I-B + // - Transforms: I-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p457_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 81. + result.InsertKeyFrame(0.452513963F, 0.0F, HoldThenStepEasingFunction()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0.456999987F, CubicBezierEasingFunction_4()); + return result; + } + + // - - Layer aggregator + // - Layer: T2a-Y + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p5_to_1_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); + // Frame 72. + result.InsertKeyFrame(0.402234644F, 0.5F, HoldThenStepEasingFunction()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 1.0F, CubicBezierEasingFunction_7()); + return result; + } + + // - - Layer aggregator + // - Layer: T2a-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p5_to_1_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.5F, HoldThenStepEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 1.0F, CubicBezierEasingFunction_7()); + return result; + } + + // - - Layer aggregator + // - Layer: T1b-Y + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p117_to_1_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.116999999F, StepThenHoldEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, 0.116999999F, HoldThenStepEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 1.0F, CubicBezierEasingFunction_2()); + return result; + } + + // - - Layer aggregator + // - Layer: T1b-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p117_to_1_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.116999999F, StepThenHoldEasingFunction()); + // Frame 81. + result.InsertKeyFrame(0.452513963F, 0.116999999F, HoldThenStepEasingFunction()); + // Frame 88. + result.InsertKeyFrame(0.491620123F, 1.0F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.209999993F, 1.0F })); + return result; + } + + // - - - Layer aggregator + // - - Layer: T1a-B + // - Transforms: T1a-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p249_to_0p891() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.248999998F, StepThenHoldEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, 0.248999998F, HoldThenStepEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, 0.890999973F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.672999978F, 1.0F })); + return result; + } + + // - - Layer aggregator + // - Layer: T2b-Y + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p411_to_0p665_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.411000013F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 0.411000013F, HoldThenStepEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 0.665000021F, CubicBezierEasingFunction_4()); + return result; + } + + // - - Layer aggregator + // - Layer: T2b-B + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_0p411_to_0p665_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.411000013F, StepThenHoldEasingFunction()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.411000013F, HoldThenStepEasingFunction()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0.665000021F, CubicBezierEasingFunction_4()); + return result; + } + + // - - - Layer aggregator + // - - Layer: O-Y + // - ShapeGroup: Ellipse 1 Offset:<196, 267> + // Ellipse Path 1.EllipseGeometry + // TrimEnd + ScalarKeyFrameAnimation TrimEndScalarAnimation_1_to_0p88() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); + // Frame 63. + result.InsertKeyFrame(0.351955295F, 0.879999995F, CubicBezierEasingFunction_2()); + return result; + } + + // - - - Layer aggregator + // - - Layer: O-Y + // - ShapeGroup: Ellipse 1 Offset:<196, 267> + // Ellipse Path 1.EllipseGeometry + // TrimStart + ScalarKeyFrameAnimation TrimStartScalarAnimation_0_to_0p399() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); + // Frame 63. + result.InsertKeyFrame(0.351955295F, 0.300000012F, CubicBezierEasingFunction_2()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0.398999989F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 1.0F }, { 0.432000011F, 1.0F })); + return result; + } + + // - - Layer aggregator + // - Layer: T2a-Y + // TrimStart + ScalarKeyFrameAnimation TrimStartScalarAnimation_0p5_to_0_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); + // Frame 72. + result.InsertKeyFrame(0.402234644F, 0.5F, HoldThenStepEasingFunction()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_7()); + return result; + } + + // - - Layer aggregator + // - Layer: T2a-B + // TrimStart + ScalarKeyFrameAnimation TrimStartScalarAnimation_0p5_to_0_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.5F, HoldThenStepEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 0.0F, CubicBezierEasingFunction_7()); + return result; + } + + // - - Layer aggregator + // - Layer: T2b-Y + // TrimStart + ScalarKeyFrameAnimation TrimStartScalarAnimation_0p29_to_0_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.289999992F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 0.289999992F, HoldThenStepEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 0.0F, CubicBezierEasingFunction_4()); + return result; + } + + // - - Layer aggregator + // - Layer: T2b-B + // TrimStart + ScalarKeyFrameAnimation TrimStartScalarAnimation_0p29_to_0_1() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.289999992F, StepThenHoldEasingFunction()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.289999992F, HoldThenStepEasingFunction()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0.0F, CubicBezierEasingFunction_4()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0_to_0p249() + { + // Frame 0. + if (_tStartScalarAnimation_0_to_0p249 != nullptr) { return _tStartScalarAnimation_0_to_0p249; } + const auto result = _tStartScalarAnimation_0_to_0p249 = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, 0.248999998F, _c.CreateCubicBezierEasingFunction({ 0.300999999F, 0.0F }, { 0.833000004F, 1.0F })); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p8_to_0() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.800000012F, StepThenHoldEasingFunction()); + // Frame 16. + result.InsertKeyFrame(0.0893854722F, 0.800000012F, HoldThenStepEasingFunction()); + // Frame 20. + result.InsertKeyFrame(0.111731842F, 0.5F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.703000009F, 0.856999993F })); + // Frame 28. + result.InsertKeyFrame(0.156424582F, 0.0F, _c.CreateCubicBezierEasingFunction({ 0.333000004F, 0.202000007F }, { 0.938000023F, 1.0F })); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p8_to_0p3() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.800000012F, StepThenHoldEasingFunction()); + // Frame 18. + result.InsertKeyFrame(0.100558661F, 0.800000012F, HoldThenStepEasingFunction()); + // Frame 23. + result.InsertKeyFrame(0.128491625F, 0.5F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.703000009F, 0.82099998F })); + // Frame 55. + result.InsertKeyFrame(0.30726257F, 0.300000012F, _c.CreateCubicBezierEasingFunction({ 0.0370000005F, 0.167999998F }, { 0.263000011F, 1.0F })); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_00() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 29. + result.InsertKeyFrame(0.162011176F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 33. + result.InsertKeyFrame(0.184357539F, 0.375330001F, CubicBezierEasingFunction_2()); + // Frame 36. + result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_01() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 29. + result.InsertKeyFrame(0.162011176F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 33. + result.InsertKeyFrame(0.184357539F, 0.253329992F, CubicBezierEasingFunction_2()); + // Frame 36. + result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_02() + { + // Frame 0. + if (_tStartScalarAnimation_0p87_to_0_02 != nullptr) { return _tStartScalarAnimation_0p87_to_0_02; } + const auto result = _tStartScalarAnimation_0p87_to_0_02 = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 65. + result.InsertKeyFrame(0.363128483F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, 0.212329999F, CubicBezierEasingFunction_2()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_03() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.421330005F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_04() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.438329995F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_05() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.506330013F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_06() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 57. + result.InsertKeyFrame(0.318435758F, 0.439330012F, CubicBezierEasingFunction_2()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_07() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 100. + result.InsertKeyFrame(0.558659196F, 0.421330005F, CubicBezierEasingFunction_2()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_08() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 100. + result.InsertKeyFrame(0.558659196F, 0.438329995F, CubicBezierEasingFunction_2()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_09() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 100. + result.InsertKeyFrame(0.558659196F, 0.506330013F, CubicBezierEasingFunction_2()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_10() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 80. + result.InsertKeyFrame(0.446927369F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.212329999F, CubicBezierEasingFunction_2()); + // Frame 87. + result.InsertKeyFrame(0.486033529F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_11() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 87. + result.InsertKeyFrame(0.486033529F, 0.212329999F, CubicBezierEasingFunction_2()); + // Frame 91. + result.InsertKeyFrame(0.508379877F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_12() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 90. + result.InsertKeyFrame(0.502793312F, 0.212329999F, CubicBezierEasingFunction_2()); + // Frame 94. + result.InsertKeyFrame(0.525139689F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_13() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.421330005F, CubicBezierEasingFunction_2()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_14() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.438329995F, CubicBezierEasingFunction_2()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_15() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, 0.506330013F, CubicBezierEasingFunction_2()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_16() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.421330005F, CubicBezierEasingFunction_2()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_17() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.438329995F, CubicBezierEasingFunction_2()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // TStart + ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_18() + { + // Frame 0. + const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, 0.506330013F, CubicBezierEasingFunction_2()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); + return result; + } + + // Layer aggregator + ShapeVisual ShapeVisual_0() + { + const auto result = _c.CreateShapeVisual(); + result.Size({ 375.0F, 667.0F }); + const auto shapes = result.Shapes(); + // Offset:<187.5, 333.5> + shapes.Append(SpriteShape_00()); + // Layer: Dot-Y + shapes.Append(ContainerShape_00()); + // Layer: E3-Y + shapes.Append(ContainerShape_02()); + // Layer: E3-B + shapes.Append(ContainerShape_03()); + // Layer: I-Y + shapes.Append(ContainerShape_04()); + // Layer: I-B + shapes.Append(ContainerShape_05()); + // Layer: E2-Y + shapes.Append(ContainerShape_06()); + // Layer: E2-B + shapes.Append(ContainerShape_07()); + // Layer: E1-Y + shapes.Append(ContainerShape_08()); + // Layer: E1-B + shapes.Append(ContainerShape_09()); + // Layer: T1a-Y + shapes.Append(ContainerShape_10()); + // Layer: T2b-Y + shapes.Append(SpriteShape_11()); + // Layer: T2a-Y + shapes.Append(SpriteShape_12()); + // Layer: T2b-B + shapes.Append(SpriteShape_13()); + // Layer: T1b-Y + shapes.Append(SpriteShape_14()); + // Layer: T1b-B + shapes.Append(SpriteShape_15()); + // Layer: O-Y + shapes.Append(ContainerShape_11()); + // Layer: T1a-Y 2 + shapes.Append(ContainerShape_12()); + // Layer: T2a-B + shapes.Append(SpriteShape_19()); + // Layer: T1a-B + shapes.Append(ContainerShape_13()); + // Layer: Dot-Y + shapes.Append(ContainerShape_14()); + // Layer: L-Y + shapes.Append(SpriteShape_22()); + // Layer: L-B + shapes.Append(SpriteShape_23()); + // Layer: Dot1 + shapes.Append(ContainerShape_16()); + // Layer: S1-Y + shapes.Append(ContainerShape_17()); + // Layer: S7 + shapes.Append(ContainerShape_18()); + // Layer: S3-Y + shapes.Append(ContainerShape_19()); + // Layer: S3-Y 2 + shapes.Append(ContainerShape_20()); + // Layer: S11 + shapes.Append(SpriteShape_36()); + // Layer: S12 + shapes.Append(SpriteShape_37()); + // Layer: S13 + shapes.Append(SpriteShape_38()); + // Layer: S3-Y 3 + shapes.Append(ContainerShape_21()); + // Layer: S3-Y 4 + shapes.Append(ContainerShape_22()); + return result; + } + + StepEasingFunction HoldThenStepEasingFunction() + { + if (_holdThenStepEasingFunction != nullptr) { return _holdThenStepEasingFunction; } + const auto result = _holdThenStepEasingFunction = _c.CreateStepEasingFunction(); + result.IsFinalStepSingleFrame(true); + return result; + } + + StepEasingFunction StepThenHoldEasingFunction() + { + if (_stepThenHoldEasingFunction != nullptr) { return _stepThenHoldEasingFunction; } + const auto result = _stepThenHoldEasingFunction = _c.CreateStepEasingFunction(); + result.IsInitialStepSingleFrame(true); + return result; + } + + // - - Layer aggregator + // - Layer: Dot-Y + // Transforms: Dot-Y + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_00() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { -153.528F, -206.753998F }, StepThenHoldEasingFunction()); + // Frame 96. + result.InsertKeyFrame(0.536312878F, { -153.528F, -206.753998F }, HoldThenStepEasingFunction()); + // Frame 108. + result.InsertKeyFrame(0.603351951F, { -134.278F, -206.753998F }, _c.CreateCubicBezierEasingFunction({ 0.0F, 0.0F }, { 0.0F, 0.811999977F })); + // Frame 115. + result.InsertKeyFrame(0.642458081F, { -133.028F, -206.753998F }, _c.CreateCubicBezierEasingFunction({ 0.389999986F, 0.707000017F }, { 0.708000004F, 1.0F })); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_01() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 104.781998F, -2.52699995F }, StepThenHoldEasingFunction()); + // Frame 96. + result.InsertKeyFrame(0.536312878F, { 104.781998F, -2.52699995F }, HoldThenStepEasingFunction()); + // Frame 99. + result.InsertKeyFrame(0.553072631F, { 104.781998F, -4.52699995F }, CubicBezierEasingFunction_0()); + // Frame 102. + result.InsertKeyFrame(0.569832385F, { 104.781998F, -2.52699995F }, CubicBezierEasingFunction_1()); + // Frame 105. + result.InsertKeyFrame(0.586592197F, { 104.781998F, -3.09100008F }, CubicBezierEasingFunction_0()); + // Frame 108. + result.InsertKeyFrame(0.603351951F, { 104.781998F, -2.52699995F }, CubicBezierEasingFunction_1()); + return result; + } + + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_02() + { + // Frame 0. + if (_offsetVector2Animation_02 != nullptr) { return _offsetVector2Animation_02; } + const auto result = _offsetVector2Animation_02 = CreateVector2KeyFrameAnimation(0.0F, { -225.957001F, -204.322006F }, StepThenHoldEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, { -225.957001F, -204.322006F }, HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, { -207.957001F, -204.322006F }, CubicBezierEasingFunction_3()); + // Frame 96. + result.InsertKeyFrame(0.536312878F, { -210.957001F, -204.322006F }, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.0F }, { 0.666999996F, 1.0F })); + return result; + } + + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_03() + { + // Frame 0. + if (_offsetVector2Animation_03 != nullptr) { return _offsetVector2Animation_03; } + const auto result = _offsetVector2Animation_03 = CreateVector2KeyFrameAnimation(0.0F, { -210.207993F, -219.320999F }, StepThenHoldEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, { -210.207993F, -219.320999F }, HoldThenStepEasingFunction()); + // Frame 88. + result.InsertKeyFrame(0.491620123F, { -211.175995F, -199.352997F }, CubicBezierEasingFunction_4()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, { -210.957993F, -204.320999F }, CubicBezierEasingFunction_5()); + return result; + } + + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_04() + { + // Frame 0. + if (_offsetVector2Animation_04 != nullptr) { return _offsetVector2Animation_04; } + const auto result = _offsetVector2Animation_04 = CreateVector2KeyFrameAnimation(0.0F, { -222.957993F, -204.322006F }, StepThenHoldEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, { -222.957993F, -204.322006F }, HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, { -210.957993F, -204.322006F }, CubicBezierEasingFunction_4()); + return result; + } + + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_05() + { + // Frame 0. + if (_offsetVector2Animation_05 != nullptr) { return _offsetVector2Animation_05; } + const auto result = _offsetVector2Animation_05 = CreateVector2KeyFrameAnimation(0.0F, { -230.957001F, -205.695999F }, StepThenHoldEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, { -230.957001F, -205.695999F }, HoldThenStepEasingFunction()); + // Frame 88. + result.InsertKeyFrame(0.491620123F, { -206.957001F, -205.695999F }, CubicBezierEasingFunction_4()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, { -210.957001F, -205.695999F }, CubicBezierEasingFunction_5()); + return result; + } + + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_06() + { + // Frame 0. + if (_offsetVector2Animation_06 != nullptr) { return _offsetVector2Animation_06; } + const auto result = _offsetVector2Animation_06 = CreateVector2KeyFrameAnimation(0.0F, { -210.957001F, -201.322006F }, StepThenHoldEasingFunction()); + // Frame 56. + result.InsertKeyFrame(0.312849164F, { -210.957001F, -201.322006F }, HoldThenStepEasingFunction()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, { -210.957001F, -204.322006F }, CubicBezierEasingFunction_3()); + return result; + } + + // - Layer aggregator + // Layer: O-Y + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_07() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { -259.583008F, -193.447006F }, StepThenHoldEasingFunction()); + result.SetReferenceParameter(L"_", _root); + // Frame 31. + result.InsertKeyFrame(0.17318435F, { -259.583008F, -193.447006F }, HoldThenStepEasingFunction()); + // Frame 35.26. + result.InsertKeyFrame(0.196966484F, { -250.582993F, -258.946991F }, CubicBezierEasingFunction_2()); + // Frame 44. + result.InsertExpressionKeyFrame(0.245810047F, L"Pow(1-_.t0,3)*Vector2(-250.583,-258.947)+(3*Square(1-_.t0)*_.t0*Vector2(-250.583,-258.947))+(3*(1-_.t0)*Square(_.t0)*Vector2(-249.6143,-337.5837))+(Pow(_.t0,3)*Vector2(-230.458,-339.322))", StepThenHoldEasingFunction()); + // Frame 54. + result.InsertExpressionKeyFrame(0.301675946F, L"Pow(1-_.t0,3)*Vector2(-230.458,-339.322)+(3*Square(1-_.t0)*_.t0*Vector2(-214.2505,-340.7927))+(3*(1-_.t0)*Square(_.t0)*Vector2(-210.958,-164.322))+(Pow(_.t0,3)*Vector2(-210.958,-164.322))", StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, { -210.957993F, -164.322006F }, StepThenHoldEasingFunction()); + // Frame 63. + result.InsertKeyFrame(0.351955295F, { -210.957993F, -207.322006F }, _c.CreateCubicBezierEasingFunction({ 0.180000007F, 0.0F }, { 0.34799999F, 1.0F })); + // Frame 73. + result.InsertKeyFrame(0.407821238F, { -210.957993F, -204.322006F }, _c.CreateCubicBezierEasingFunction({ 0.693000019F, 0.0F }, { 0.270000011F, 1.0F })); + return result; + } + + // - - Layer aggregator + // - Layer: Dot-Y + // Transforms: Dot-Y + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_08() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { -156.916F, -206.503998F }, StepThenHoldEasingFunction()); + // Frame 28. + result.InsertKeyFrame(0.156424582F, { -156.916F, -206.503998F }, HoldThenStepEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, { -117.416F, -206.503998F }, CubicBezierEasingFunction_2()); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_09() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { -93.6669998F, -51.8180008F }, StepThenHoldEasingFunction()); + // Frame 28. + result.InsertKeyFrame(0.156424582F, { -93.6669998F, -51.8180008F }, HoldThenStepEasingFunction()); + // Frame 40. + result.InsertKeyFrame(0.223463684F, { -93.6669998F, -132.817993F }, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.25999999F, 1.0F })); + // Frame 54. + result.InsertKeyFrame(0.301675975F, { -93.6669998F, 42.0569992F }, _c.CreateCubicBezierEasingFunction({ 0.74000001F, 0.0F }, { 0.833000004F, 0.833000004F })); + return result; + } + + // - Layer aggregator + // Layer: Dot1 + // Offset + Vector2KeyFrameAnimation OffsetVector2Animation_10() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 98.9800034F, -157.509995F }, HoldThenStepEasingFunction()); + // Frame 18.69. + result.InsertKeyFrame(0.104395606F, { -161.020004F, -157.509995F }, _c.CreateCubicBezierEasingFunction({ 0.823000014F, 0.0F }, { 0.833000004F, 0.833000004F })); + return result; + } + + // Radius + Vector2KeyFrameAnimation RadiusVector2Animation() + { + // Frame 0. + if (_radiusVector2Animation != nullptr) { return _radiusVector2Animation; } + const auto result = _radiusVector2Animation = CreateVector2KeyFrameAnimation(0.0F, { 1.5F, 1.5F }, StepThenHoldEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, { 1.5F, 1.5F }, HoldThenStepEasingFunction()); + // Frame 61. + result.InsertKeyFrame(0.340782136F, { 22.2999992F, 22.2999992F }, _c.CreateCubicBezierEasingFunction({ 0.333000004F, 0.0F }, { 0.666999996F, 1.0F })); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_00() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 96. + result.InsertKeyFrame(0.536312878F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E3-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_01() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 102. + result.InsertKeyFrame(0.569832385F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E3-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_02() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: I-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_03() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 78. + result.InsertKeyFrame(0.43575418F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 93. + result.InsertKeyFrame(0.519553065F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + Vector2KeyFrameAnimation ShapeVisibilityAnimation_04() + { + // Frame 0. + if (_shapeVisibilityAnimation_04 != nullptr) { return _shapeVisibilityAnimation_04; } + const auto result = _shapeVisibilityAnimation_04 = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 81. + result.InsertKeyFrame(0.452513963F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E2-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_05() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 96. + result.InsertKeyFrame(0.536312878F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E2-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_06() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 86. + result.InsertKeyFrame(0.480446935F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E1-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_07() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 79. + result.InsertKeyFrame(0.441340774F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 94. + result.InsertKeyFrame(0.525139689F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: E1-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_08() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T1a-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_09() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 59. + result.InsertKeyFrame(0.329608947F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 156. + result.InsertKeyFrame(0.87150836F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T2b-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_10() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 92. + result.InsertKeyFrame(0.513966501F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T2a-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_11() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 72. + result.InsertKeyFrame(0.402234644F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 89. + result.InsertKeyFrame(0.497206718F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T2b-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_12() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 82. + result.InsertKeyFrame(0.458100557F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T1b-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_13() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 161. + result.InsertKeyFrame(0.899441361F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: O-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_14() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T1a-Y 2 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_15() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 59. + result.InsertKeyFrame(0.329608947F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T2a-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_16() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: T1a-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_17() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 70. + result.InsertKeyFrame(0.391061455F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: Dot-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_18() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 28. + result.InsertKeyFrame(0.156424582F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: L-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_19() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 16. + result.InsertKeyFrame(0.0893854722F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: L-B + Vector2KeyFrameAnimation ShapeVisibilityAnimation_20() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 18. + result.InsertKeyFrame(0.100558661F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: Dot1 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_21() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 17. + result.InsertKeyFrame(0.0949720666F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S1-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_22() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 30. + result.InsertKeyFrame(0.167597771F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 37. + result.InsertKeyFrame(0.206703916F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S7 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_23() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 65. + result.InsertKeyFrame(0.363128483F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S3-Y + Vector2KeyFrameAnimation ShapeVisibilityAnimation_24() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 54. + result.InsertKeyFrame(0.301675975F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 64. + result.InsertKeyFrame(0.357541889F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 2 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_25() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 97. + result.InsertKeyFrame(0.541899443F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 107. + result.InsertKeyFrame(0.597765386F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S11 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_26() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 80. + result.InsertKeyFrame(0.446927369F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 90. + result.InsertKeyFrame(0.502793312F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S12 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_27() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 94. + result.InsertKeyFrame(0.525139689F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S13 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_28() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 85. + result.InsertKeyFrame(0.47486034F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 95. + result.InsertKeyFrame(0.530726254F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 3 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_29() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 75. + result.InsertKeyFrame(0.418994427F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 83. + result.InsertKeyFrame(0.463687152F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + // - Layer aggregator + // Layer: S3-Y 4 + Vector2KeyFrameAnimation ShapeVisibilityAnimation_30() + { + // Frame 0. + const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + // Frame 76. + result.InsertKeyFrame(0.424580991F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); + // Frame 84. + result.InsertKeyFrame(0.469273746F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); + return result; + } + + static IGeometrySource2D CanvasGeometryToIGeometrySource2D(winrt::com_ptr geo) + { + return geo.as(); + } + + public: + LottieLogo1_AnimatedVisual(Compositor compositor) + : _c{compositor} + , _reusableExpressionAnimation(compositor.CreateExpressionAnimation()) + { + winrt::check_hresult(D2D1CreateFactory(D2D1_FACTORY_TYPE_SINGLE_THREADED, _d2dFactory.put())); + const auto _ = Root(); + } + + void Close() + { + if (_root) + { + _root.Close(); + } + } + + TimeSpan Duration() const + { + return TimeSpan{ c_durationTicks }; + } + + Visual RootVisual() const + { + return _root; + } + + float2 Size() const + { + return { 375.0F, 667.0F }; + } + + void CreateAnimations() + { + _containerShape_00.StartAnimation(L"Offset", OffsetVector2Animation_01(), AnimationController_0()); + _containerShape_00.StartAnimation(L"Scale", ShapeVisibilityAnimation_00(), AnimationController_0()); + _containerShape_01.StartAnimation(L"Offset", OffsetVector2Animation_00(), AnimationController_0()); + _containerShape_02.StartAnimation(L"Offset", OffsetVector2Animation_02(), AnimationController_0()); + _containerShape_02.StartAnimation(L"Scale", ShapeVisibilityAnimation_01(), AnimationController_0()); + _containerShape_03.StartAnimation(L"Offset", OffsetVector2Animation_02(), AnimationController_0()); + _containerShape_03.StartAnimation(L"Scale", ShapeVisibilityAnimation_02(), AnimationController_0()); + _containerShape_04.StartAnimation(L"Offset", OffsetVector2Animation_03(), AnimationController_0()); + _containerShape_04.StartAnimation(L"Scale", ShapeVisibilityAnimation_03(), AnimationController_0()); + _containerShape_05.StartAnimation(L"Offset", OffsetVector2Animation_03(), AnimationController_0()); + _containerShape_05.StartAnimation(L"Scale", ShapeVisibilityAnimation_04(), AnimationController_0()); + _containerShape_06.StartAnimation(L"Offset", OffsetVector2Animation_04(), AnimationController_0()); + _containerShape_06.StartAnimation(L"Scale", ShapeVisibilityAnimation_05(), AnimationController_0()); + _containerShape_07.StartAnimation(L"Offset", OffsetVector2Animation_04(), AnimationController_0()); + _containerShape_07.StartAnimation(L"Scale", ShapeVisibilityAnimation_06(), AnimationController_0()); + _containerShape_08.StartAnimation(L"Offset", OffsetVector2Animation_05(), AnimationController_0()); + _containerShape_08.StartAnimation(L"Scale", ShapeVisibilityAnimation_07(), AnimationController_0()); + _containerShape_09.StartAnimation(L"Offset", OffsetVector2Animation_05(), AnimationController_0()); + _containerShape_09.StartAnimation(L"Scale", ShapeVisibilityAnimation_08(), AnimationController_0()); + _containerShape_10.StartAnimation(L"Offset", OffsetVector2Animation_06(), AnimationController_0()); + _containerShape_10.StartAnimation(L"Scale", ShapeVisibilityAnimation_09(), AnimationController_0()); + _containerShape_11.StartAnimation(L"Offset", OffsetVector2Animation_07(), AnimationController_0()); + _containerShape_11.StartAnimation(L"Scale", ShapeVisibilityAnimation_14(), AnimationController_0()); + _containerShape_12.StartAnimation(L"Offset", OffsetVector2Animation_06(), AnimationController_0()); + _containerShape_12.StartAnimation(L"Scale", ShapeVisibilityAnimation_15(), AnimationController_0()); + _containerShape_13.StartAnimation(L"Offset", OffsetVector2Animation_06(), AnimationController_0()); + _containerShape_13.StartAnimation(L"Scale", ShapeVisibilityAnimation_17(), AnimationController_0()); + _containerShape_14.StartAnimation(L"Offset", OffsetVector2Animation_09(), AnimationController_0()); + _containerShape_14.StartAnimation(L"Scale", ShapeVisibilityAnimation_18(), AnimationController_0()); + _containerShape_15.StartAnimation(L"Offset", OffsetVector2Animation_08(), AnimationController_0()); + _containerShape_16.StartAnimation(L"Offset", OffsetVector2Animation_10(), AnimationController_1()); + _containerShape_16.StartAnimation(L"Scale", ShapeVisibilityAnimation_21(), AnimationController_0()); + _containerShape_17.StartAnimation(L"Scale", ShapeVisibilityAnimation_22(), AnimationController_0()); + _containerShape_18.StartAnimation(L"Scale", ShapeVisibilityAnimation_23(), AnimationController_0()); + _containerShape_19.StartAnimation(L"Scale", ShapeVisibilityAnimation_24(), AnimationController_0()); + _containerShape_20.StartAnimation(L"Scale", ShapeVisibilityAnimation_25(), AnimationController_0()); + _containerShape_21.StartAnimation(L"Scale", ShapeVisibilityAnimation_29(), AnimationController_0()); + _containerShape_22.StartAnimation(L"Scale", ShapeVisibilityAnimation_30(), AnimationController_0()); + _ellipse_0_0.StartAnimation(L"Radius", RadiusVector2Animation(), AnimationController_0()); + _ellipse_0_1.StartAnimation(L"Radius", RadiusVector2Animation(), AnimationController_0()); + _ellipse_0_1.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0_to_0p399(), AnimationController_0()); + _ellipse_0_1.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_1_to_0p88(), AnimationController_0()); + _pathGeometry_00.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p316_0(), AnimationController_0()); + _pathGeometry_01.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p316_1(), AnimationController_0()); + _pathGeometry_02.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p457_0(), AnimationController_0()); + _pathGeometry_03.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p457_1(), AnimationController_0()); + _pathGeometry_04.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p43_0(), AnimationController_0()); + _pathGeometry_05.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p43_1(), AnimationController_0()); + _pathGeometry_06.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p375_0(), AnimationController_0()); + _pathGeometry_07.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p375_1(), AnimationController_0()); + _pathGeometry_08.StartAnimation(L"TStart", TStartScalarAnimation_0_to_0p249(), AnimationController_0()); + _pathGeometry_08.StartAnimation(L"TEnd", TEndScalarAnimation_0_to_1_0(), AnimationController_0()); + _pathGeometry_09.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p29_to_0_0(), AnimationController_0()); + _pathGeometry_09.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p411_to_0p665_0(), AnimationController_0()); + _pathGeometry_10.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p5_to_0_0(), AnimationController_0()); + _pathGeometry_10.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p5_to_1_0(), AnimationController_0()); + _pathGeometry_11.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p29_to_0_1(), AnimationController_0()); + _pathGeometry_11.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p411_to_0p665_1(), AnimationController_0()); + _pathGeometry_12.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p117_to_1_0(), AnimationController_0()); + _pathGeometry_13.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p117_to_1_1(), AnimationController_0()); + _pathGeometry_14.StartAnimation(L"TStart", TStartScalarAnimation_0_to_0p249(), AnimationController_0()); + _pathGeometry_14.StartAnimation(L"TEnd", TEndScalarAnimation_0_to_1_1(), AnimationController_0()); + _pathGeometry_15.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p5_to_0_1(), AnimationController_0()); + _pathGeometry_15.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p5_to_1_1(), AnimationController_0()); + _pathGeometry_16.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p249_to_0p891(), AnimationController_0()); + _pathGeometry_17.StartAnimation(L"TStart", TStartScalarAnimation_0p8_to_0(), AnimationController_0()); + _pathGeometry_17.StartAnimation(L"TEnd", TEndScalarAnimation_0p81_to_0p734_0(), AnimationController_0()); + _pathGeometry_18.StartAnimation(L"TStart", TStartScalarAnimation_0p8_to_0p3(), AnimationController_0()); + _pathGeometry_18.StartAnimation(L"TEnd", TEndScalarAnimation_0p81_to_0p734_1(), AnimationController_0()); + _pathGeometry_19.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_00(), AnimationController_0()); + _pathGeometry_19.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_00(), AnimationController_0()); + _pathGeometry_20.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_01(), AnimationController_0()); + _pathGeometry_20.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_01(), AnimationController_0()); + _pathGeometry_21.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_02(), AnimationController_0()); + _pathGeometry_21.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_02(), AnimationController_0()); + _pathGeometry_22.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_02(), AnimationController_0()); + _pathGeometry_22.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_02(), AnimationController_0()); + _pathGeometry_23.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_03(), AnimationController_0()); + _pathGeometry_23.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_03(), AnimationController_0()); + _pathGeometry_24.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_04(), AnimationController_0()); + _pathGeometry_24.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_03(), AnimationController_0()); + _pathGeometry_25.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_05(), AnimationController_0()); + _pathGeometry_25.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_04(), AnimationController_0()); + _pathGeometry_26.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_06(), AnimationController_0()); + _pathGeometry_26.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_05(), AnimationController_0()); + _pathGeometry_27.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_07(), AnimationController_0()); + _pathGeometry_27.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_06(), AnimationController_0()); + _pathGeometry_28.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_08(), AnimationController_0()); + _pathGeometry_28.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_06(), AnimationController_0()); + _pathGeometry_29.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_09(), AnimationController_0()); + _pathGeometry_29.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_07(), AnimationController_0()); + _pathGeometry_30.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_10(), AnimationController_0()); + _pathGeometry_30.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_08(), AnimationController_0()); + _pathGeometry_31.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_11(), AnimationController_0()); + _pathGeometry_31.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_09(), AnimationController_0()); + _pathGeometry_32.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_12(), AnimationController_0()); + _pathGeometry_32.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_10(), AnimationController_0()); + _pathGeometry_33.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_13(), AnimationController_0()); + _pathGeometry_33.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_11(), AnimationController_0()); + _pathGeometry_34.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_14(), AnimationController_0()); + _pathGeometry_34.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_11(), AnimationController_0()); + _pathGeometry_35.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_15(), AnimationController_0()); + _pathGeometry_35.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_12(), AnimationController_0()); + _pathGeometry_36.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_16(), AnimationController_0()); + _pathGeometry_36.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_13(), AnimationController_0()); + _pathGeometry_37.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_17(), AnimationController_0()); + _pathGeometry_37.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_13(), AnimationController_0()); + _pathGeometry_38.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_18(), AnimationController_0()); + _pathGeometry_38.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_14(), AnimationController_0()); + _spriteShape_11.StartAnimation(L"Scale", ShapeVisibilityAnimation_10(), AnimationController_0()); + _spriteShape_12.StartAnimation(L"Scale", ShapeVisibilityAnimation_11(), AnimationController_0()); + _spriteShape_13.StartAnimation(L"Scale", ShapeVisibilityAnimation_12(), AnimationController_0()); + _spriteShape_14.StartAnimation(L"Scale", ShapeVisibilityAnimation_13(), AnimationController_0()); + _spriteShape_15.StartAnimation(L"Scale", ShapeVisibilityAnimation_04(), AnimationController_0()); + _spriteShape_19.StartAnimation(L"Scale", ShapeVisibilityAnimation_16(), AnimationController_0()); + _spriteShape_22.StartAnimation(L"Scale", ShapeVisibilityAnimation_19(), AnimationController_0()); + _spriteShape_23.StartAnimation(L"Scale", ShapeVisibilityAnimation_20(), AnimationController_0()); + _spriteShape_36.StartAnimation(L"Scale", ShapeVisibilityAnimation_26(), AnimationController_0()); + _spriteShape_37.StartAnimation(L"Scale", ShapeVisibilityAnimation_27(), AnimationController_0()); + _spriteShape_38.StartAnimation(L"Scale", ShapeVisibilityAnimation_28(), AnimationController_0()); + _root.Properties().StartAnimation(L"t0", t0ScalarAnimation_0_to_1(), AnimationController_0()); + } + + void DestroyAnimations() + { + _containerShape_00.StopAnimation(L"Offset"); + _containerShape_00.StopAnimation(L"Scale"); + _containerShape_01.StopAnimation(L"Offset"); + _containerShape_02.StopAnimation(L"Offset"); + _containerShape_02.StopAnimation(L"Scale"); + _containerShape_03.StopAnimation(L"Offset"); + _containerShape_03.StopAnimation(L"Scale"); + _containerShape_04.StopAnimation(L"Offset"); + _containerShape_04.StopAnimation(L"Scale"); + _containerShape_05.StopAnimation(L"Offset"); + _containerShape_05.StopAnimation(L"Scale"); + _containerShape_06.StopAnimation(L"Offset"); + _containerShape_06.StopAnimation(L"Scale"); + _containerShape_07.StopAnimation(L"Offset"); + _containerShape_07.StopAnimation(L"Scale"); + _containerShape_08.StopAnimation(L"Offset"); + _containerShape_08.StopAnimation(L"Scale"); + _containerShape_09.StopAnimation(L"Offset"); + _containerShape_09.StopAnimation(L"Scale"); + _containerShape_10.StopAnimation(L"Offset"); + _containerShape_10.StopAnimation(L"Scale"); + _containerShape_11.StopAnimation(L"Offset"); + _containerShape_11.StopAnimation(L"Scale"); + _containerShape_12.StopAnimation(L"Offset"); + _containerShape_12.StopAnimation(L"Scale"); + _containerShape_13.StopAnimation(L"Offset"); + _containerShape_13.StopAnimation(L"Scale"); + _containerShape_14.StopAnimation(L"Offset"); + _containerShape_14.StopAnimation(L"Scale"); + _containerShape_15.StopAnimation(L"Offset"); + _containerShape_16.StopAnimation(L"Offset"); + _containerShape_16.StopAnimation(L"Scale"); + _containerShape_17.StopAnimation(L"Scale"); + _containerShape_18.StopAnimation(L"Scale"); + _containerShape_19.StopAnimation(L"Scale"); + _containerShape_20.StopAnimation(L"Scale"); + _containerShape_21.StopAnimation(L"Scale"); + _containerShape_22.StopAnimation(L"Scale"); + _ellipse_0_0.StopAnimation(L"Radius"); + _ellipse_0_1.StopAnimation(L"Radius"); + _ellipse_0_1.StopAnimation(L"TrimStart"); + _ellipse_0_1.StopAnimation(L"TrimEnd"); + _pathGeometry_00.StopAnimation(L"TrimEnd"); + _pathGeometry_01.StopAnimation(L"TrimEnd"); + _pathGeometry_02.StopAnimation(L"TrimEnd"); + _pathGeometry_03.StopAnimation(L"TrimEnd"); + _pathGeometry_04.StopAnimation(L"TrimEnd"); + _pathGeometry_05.StopAnimation(L"TrimEnd"); + _pathGeometry_06.StopAnimation(L"TrimEnd"); + _pathGeometry_07.StopAnimation(L"TrimEnd"); + _pathGeometry_08.StopAnimation(L"TStart"); + _pathGeometry_08.StopAnimation(L"TEnd"); + _pathGeometry_09.StopAnimation(L"TrimStart"); + _pathGeometry_09.StopAnimation(L"TrimEnd"); + _pathGeometry_10.StopAnimation(L"TrimStart"); + _pathGeometry_10.StopAnimation(L"TrimEnd"); + _pathGeometry_11.StopAnimation(L"TrimStart"); + _pathGeometry_11.StopAnimation(L"TrimEnd"); + _pathGeometry_12.StopAnimation(L"TrimEnd"); + _pathGeometry_13.StopAnimation(L"TrimEnd"); + _pathGeometry_14.StopAnimation(L"TStart"); + _pathGeometry_14.StopAnimation(L"TEnd"); + _pathGeometry_15.StopAnimation(L"TrimStart"); + _pathGeometry_15.StopAnimation(L"TrimEnd"); + _pathGeometry_16.StopAnimation(L"TrimEnd"); + _pathGeometry_17.StopAnimation(L"TStart"); + _pathGeometry_17.StopAnimation(L"TEnd"); + _pathGeometry_18.StopAnimation(L"TStart"); + _pathGeometry_18.StopAnimation(L"TEnd"); + _pathGeometry_19.StopAnimation(L"TStart"); + _pathGeometry_19.StopAnimation(L"TEnd"); + _pathGeometry_20.StopAnimation(L"TStart"); + _pathGeometry_20.StopAnimation(L"TEnd"); + _pathGeometry_21.StopAnimation(L"TStart"); + _pathGeometry_21.StopAnimation(L"TEnd"); + _pathGeometry_22.StopAnimation(L"TStart"); + _pathGeometry_22.StopAnimation(L"TEnd"); + _pathGeometry_23.StopAnimation(L"TStart"); + _pathGeometry_23.StopAnimation(L"TEnd"); + _pathGeometry_24.StopAnimation(L"TStart"); + _pathGeometry_24.StopAnimation(L"TEnd"); + _pathGeometry_25.StopAnimation(L"TStart"); + _pathGeometry_25.StopAnimation(L"TEnd"); + _pathGeometry_26.StopAnimation(L"TStart"); + _pathGeometry_26.StopAnimation(L"TEnd"); + _pathGeometry_27.StopAnimation(L"TStart"); + _pathGeometry_27.StopAnimation(L"TEnd"); + _pathGeometry_28.StopAnimation(L"TStart"); + _pathGeometry_28.StopAnimation(L"TEnd"); + _pathGeometry_29.StopAnimation(L"TStart"); + _pathGeometry_29.StopAnimation(L"TEnd"); + _pathGeometry_30.StopAnimation(L"TStart"); + _pathGeometry_30.StopAnimation(L"TEnd"); + _pathGeometry_31.StopAnimation(L"TStart"); + _pathGeometry_31.StopAnimation(L"TEnd"); + _pathGeometry_32.StopAnimation(L"TStart"); + _pathGeometry_32.StopAnimation(L"TEnd"); + _pathGeometry_33.StopAnimation(L"TStart"); + _pathGeometry_33.StopAnimation(L"TEnd"); + _pathGeometry_34.StopAnimation(L"TStart"); + _pathGeometry_34.StopAnimation(L"TEnd"); + _pathGeometry_35.StopAnimation(L"TStart"); + _pathGeometry_35.StopAnimation(L"TEnd"); + _pathGeometry_36.StopAnimation(L"TStart"); + _pathGeometry_36.StopAnimation(L"TEnd"); + _pathGeometry_37.StopAnimation(L"TStart"); + _pathGeometry_37.StopAnimation(L"TEnd"); + _pathGeometry_38.StopAnimation(L"TStart"); + _pathGeometry_38.StopAnimation(L"TEnd"); + _spriteShape_11.StopAnimation(L"Scale"); + _spriteShape_12.StopAnimation(L"Scale"); + _spriteShape_13.StopAnimation(L"Scale"); + _spriteShape_14.StopAnimation(L"Scale"); + _spriteShape_15.StopAnimation(L"Scale"); + _spriteShape_19.StopAnimation(L"Scale"); + _spriteShape_22.StopAnimation(L"Scale"); + _spriteShape_23.StopAnimation(L"Scale"); + _spriteShape_36.StopAnimation(L"Scale"); + _spriteShape_37.StopAnimation(L"Scale"); + _spriteShape_38.StopAnimation(L"Scale"); + _root.Properties().StopAnimation(L"t0"); + } + + }; + + winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual LottieLogo1::TryCreateAnimatedVisual( + Compositor const& compositor) + { + IInspectable diagnostics = nullptr; + return TryCreateAnimatedVisual(compositor, diagnostics); + } + + winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual LottieLogo1::TryCreateAnimatedVisual( + Compositor const& compositor, + IInspectable& diagnostics) + { + diagnostics = nullptr; + auto result = winrt::make(compositor); + result.CreateAnimations(); + return result; + } + + double LottieLogo1::FrameCount() + { + return 179.0; + } + + double LottieLogo1::Framerate() + { + return 30.0; + } + + TimeSpan LottieLogo1::Duration() + { + return TimeSpan{ 59666666L }; + } + + double LottieLogo1::FrameToProgress(double frameNumber) + { + return frameNumber / 179.0; + } + + winrt::Windows::Foundation::Collections::IMapView LottieLogo1::Markers() + { + return winrt::single_threaded_map( + std::map + { + } + ).GetView(); + } + + void LottieLogo1::SetColorProperty(hstring const&, Color) + { + } + + void LottieLogo1::SetScalarProperty(hstring const&, double) + { + } +} // end namespace diff --git a/SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.h b/SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.h new file mode 100644 index 000000000..aa1f90655 --- /dev/null +++ b/SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.h @@ -0,0 +1,77 @@ +#pragma once +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// LottieGen version: +// 8.0.230813-rc.7+0443b1e789 +// +// Command: +// LottieGen -Language Cppwinrt -RootNamespace SimpleIslandApp -WinUIVersion 3.0 -InputFile LottieLogo1.json +// +// Input file: +// LottieLogo1.json (190271 bytes created 0:40-04:00 Mar 13 2024) +// +// LottieGen source: +// http://aka.ms/Lottie +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ +#include "AnimatedVisuals.LottieLogo1.g.h" + +namespace winrt::AnimatedVisuals +{ + // Frame rate: 30 fps + // Frame count: 179 + // Duration: 5966.7 mS + namespace implementation + { + class LottieLogo1 + : public LottieLogo1T + { + public: + // Animation duration: 5.967 seconds. + static constexpr int64_t c_durationTicks{ 59666666L }; + + winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual TryCreateAnimatedVisual( + winrt::Microsoft::UI::Composition::Compositor const& compositor); + + winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual TryCreateAnimatedVisual( + winrt::Microsoft::UI::Composition::Compositor const& compositor, + winrt::Windows::Foundation::IInspectable& diagnostics); + + // Gets the number of frames in the animation. + double FrameCount(); + + // Gets the framerate of the animation. + double Framerate(); + + // Gets the duration of the animation. + winrt::Windows::Foundation::TimeSpan Duration(); + + // Converts a zero-based frame number to the corresponding progress value denoting the + // start of the frame. + double FrameToProgress(double frameNumber); + + // Returns a map from marker names to corresponding progress values. + winrt::Windows::Foundation::Collections::IMapView Markers(); + + // Sets the color property with the given name, or does nothing if no such property + // exists. + void SetColorProperty(hstring const& propertyName, winrt::Windows::UI::Color value); + + // Sets the scalar property with the given name, or does nothing if no such property + // exists. + void SetScalarProperty(hstring const& propertyName, double value); + }; + } + + namespace factory_implementation + { + struct LottieLogo1 : LottieLogo1T + { + }; + } +} diff --git a/SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.idl b/SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.idl new file mode 100644 index 000000000..571cbbb15 --- /dev/null +++ b/SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.idl @@ -0,0 +1,29 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// LottieGen version: +// 8.0.230813-rc.7+0443b1e789 +// +// Command: +// LottieGen -Language Cppwinrt -RootNamespace SimpleIslandApp -WinUIVersion 3.0 -InputFile LottieLogo1.json +// +// Input file: +// LottieLogo1.json (190271 bytes created 0:40-04:00 Mar 13 2024) +// +// LottieGen source: +// http://aka.ms/Lottie +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ +namespace AnimatedVisuals +{ + runtimeclass LottieLogo1 + : [default] Microsoft.UI.Xaml.Controls.IAnimatedVisualSource + , Microsoft.UI.Xaml.Controls.IAnimatedVisualSource2 + { + LottieLogo1(); + }; +} diff --git a/SimpleLottieIslandApp/Assets/LottieLogo1.json b/SimpleLottieIslandApp/Assets/LottieLogo1.json new file mode 100644 index 000000000..cb637e3ea --- /dev/null +++ b/SimpleLottieIslandApp/Assets/LottieLogo1.json @@ -0,0 +1,7390 @@ +{ + "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/SimpleLottieIslandApp/Project.idl b/SimpleLottieIslandApp/Project.idl new file mode 100644 index 000000000..910be2d69 --- /dev/null +++ b/SimpleLottieIslandApp/Project.idl @@ -0,0 +1,15 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +namespace SimpleLottieIslandApp +{ + /* IDL to generate a placeholder WinMD for the AppX project */ + + [default_interface] + runtimeclass Placeholder + { + Placeholder(); + static Placeholder DoNothing(); + } + +} diff --git a/SimpleLottieIslandApp/Resource.h b/SimpleLottieIslandApp/Resource.h new file mode 100644 index 000000000..ee66d8bd0 --- /dev/null +++ b/SimpleLottieIslandApp/Resource.h @@ -0,0 +1,32 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +//{{NO_DEPENDENCIES}} +// Microsoft Visual C++ generated include file. +// Used by SimpleIslandApp.rc + +#define IDS_APP_TITLE 103 + +#define IDR_MAINFRAME 128 +#define IDD_SIMPLELOTTIEISLANDAPP_DIALOG 102 +#define IDD_ABOUTBOX 103 +#define IDM_ABOUT 104 +#define IDM_EXIT 105 +#define IDI_SIMPLELOTTIEISLANDAPP 107 +#define IDI_SMALL 108 +#define IDC_SIMPLELOTTIEISLANDAPP 109 +#define IDC_MYICON 2 +#ifndef IDC_STATIC +#define IDC_STATIC -1 +#endif +// Next default values for new objects +// +#ifdef APSTUDIO_INVOKED +#ifndef APSTUDIO_READONLY_SYMBOLS + +#define _APS_NO_MFC 130 +#define _APS_NEXT_RESOURCE_VALUE 129 +#define _APS_NEXT_COMMAND_VALUE 32771 +#define _APS_NEXT_CONTROL_VALUE 1000 +#define _APS_NEXT_SYMED_VALUE 110 +#endif +#endif diff --git a/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp b/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp new file mode 100644 index 000000000..e07716c3f --- /dev/null +++ b/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp @@ -0,0 +1,453 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +// SimpleLottieIslandApp.cpp : Defines the entry point for the application. + +#include "pch.h" +#include "SimpleLottieIslandApp.h" + +#include // For ContentPreTranslateMessage +#include +#include +#include + +namespace winrt +{ + using namespace winrt::Windows::Foundation; + using namespace winrt::Microsoft::UI; + using namespace winrt::Microsoft::UI::Content; + using namespace winrt::Microsoft::UI::Dispatching; + using namespace winrt::LottieWinRT; + using float2 = winrt::Windows::Foundation::Numerics::float2; +} + +// Forward declarations of functions included in this code module: +void MyRegisterClass(HINSTANCE hInstance, const wchar_t* szWindowClass); +HWND InitInstance(HINSTANCE, int, const wchar_t* szTitle, const wchar_t* szWindowClass); +LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM); +INT_PTR CALLBACK About(HWND, UINT, WPARAM, LPARAM); +bool ProcessMessageForTabNavigation(const HWND topLevelWindow, MSG* msg); + +// Extra state for our top-level window, we point to from GWLP_USERDATA. +struct WindowInfo +{ + // winrt::DesktopWindowXamlSource DesktopWindowXamlSource{ nullptr }; + winrt::Microsoft::UI::Composition::Compositor Compositor{}; + winrt::DesktopChildSiteBridge Bridge{ nullptr }; + winrt::event_token TakeFocusRequestedToken{}; + HWND LastFocusedWindow{ NULL }; + winrt::LottieIsland::LottieContentIsland LottieIsland{ nullptr }; + bool isPaused = false; +}; + +enum class ButtonType +{ + PlayButton = 1, + PauseButton, + StopButton, + ReverseButton +}; + +constexpr int k_padding = 10; +constexpr int k_buttonWidth = 150; +constexpr int k_buttonHeight = 40; + +void LayoutButton(ButtonType type, int tlwWidth, int tlwHeight, HWND topLevelWindow); +void CreateWin32Button(ButtonType type, const std::wstring_view& text, HWND parentHwnd); +void OnButtonClicked(ButtonType type, WindowInfo* windowInfo, HWND topLevelWindow); +void SetButtonText(ButtonType type, const std::wstring_view& text, HWND topLevelWindow); +void SetPauseState(WindowInfo* windowInfo, bool isPaused, HWND topLevelWindow); + +int APIENTRY wWinMain(_In_ HINSTANCE hInstance, + _In_opt_ HINSTANCE hPrevInstance, + _In_ LPWSTR lpCmdLine, + _In_ int nCmdShow) +{ + UNREFERENCED_PARAMETER(hPrevInstance); + UNREFERENCED_PARAMETER(lpCmdLine); + + try + { + // Island-support: Call init_apartment to initialize COM and WinRT for the thread. + winrt::init_apartment(winrt::apartment_type::single_threaded); + + // Island-support: We must start a DispatcherQueueController before we can create an island or use Xaml. + auto dispatcherQueueController{ winrt::DispatcherQueueController::CreateOnCurrentThread() }; + + // The title bar text + WCHAR szTitle[100]; + winrt::check_bool(LoadStringW(hInstance, IDS_APP_TITLE, szTitle, ARRAYSIZE(szTitle)) != 0); + + // The main window class name + WCHAR szWindowClass[100]; + winrt::check_bool(LoadStringW(hInstance, IDC_SIMPLELOTTIEISLANDAPP, szWindowClass, ARRAYSIZE(szWindowClass)) != 0); + + MyRegisterClass(hInstance, szWindowClass); + + // Perform application initialization: + InitInstance(hInstance, nCmdShow, szTitle, szWindowClass); + + HACCEL hAccelTable = LoadAccelerators(hInstance, MAKEINTRESOURCE(IDC_SIMPLELOTTIEISLANDAPP)); + + MSG msg{}; + + // Main message loop: + while (GetMessage(&msg, nullptr, 0, 0)) + { + // Island-support: It's important to call ContentPreTranslateMessage in the event loop so that WinAppSDK can be aware of + // the messages. If you don't need to use an accelerator table, you could just call DispatcherQueue.RunEventLoop + // to do the message pump for you (it will call ContentPreTranslateMessage automatically). + if (::ContentPreTranslateMessage(&msg)) + { + continue; + } + + if (TranslateAccelerator(msg.hwnd, hAccelTable, &msg)) + { + continue; + } + + TranslateMessage(&msg); + DispatchMessage(&msg); + } + + // Island-support: To properly shut down after using a DispatcherQueue, call ShutdownQueue[Aysnc](). + dispatcherQueueController.ShutdownQueue(); + } + catch (const winrt::hresult_error& exception) + { + // An exception was thrown, let's make the exit code the HR value of the exception. + return exception.code().value; + } + + return 0; +} + +// +// FUNCTION: MyRegisterClass() +// +// PURPOSE: Registers the window class. +// +void MyRegisterClass(HINSTANCE hInstance, const wchar_t* szWindowClass) +{ + WNDCLASSEXW wcex; + + wcex.cbSize = sizeof(WNDCLASSEX); + + wcex.style = CS_HREDRAW | CS_VREDRAW; + wcex.lpfnWndProc = WndProc; + wcex.cbClsExtra = 0; + wcex.cbWndExtra = 0; + wcex.hInstance = hInstance; + wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_SIMPLELOTTIEISLANDAPP)); + wcex.hCursor = LoadCursor(nullptr, IDC_ARROW); + wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1); + wcex.lpszMenuName = MAKEINTRESOURCEW(IDC_SIMPLELOTTIEISLANDAPP); + wcex.lpszClassName = szWindowClass; + wcex.hIconSm = LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_SMALL)); + + winrt::check_bool(RegisterClassExW(&wcex) != 0); +} + +// +// FUNCTION: InitInstance(HINSTANCE, int) +// +// PURPOSE: Saves instance handle and creates main window +// +// COMMENTS: +// +// In this function, we save the instance handle in a global variable and +// create and display the main program window. +// +HWND InitInstance(HINSTANCE /*hInstance*/, int nCmdShow, const wchar_t* szTitle, const wchar_t* szWindowClass) +{ + HWND hWnd = CreateWindowW(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW, + CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, nullptr, nullptr, ::GetModuleHandle(NULL), nullptr); + winrt::check_bool(hWnd != NULL); + + ShowWindow(hWnd, nCmdShow); + UpdateWindow(hWnd); + return hWnd; +} + +// +// FUNCTION: WndProc(HWND, UINT, WPARAM, LPARAM) +// +// PURPOSE: Processes messages for the main window. +// +// WM_COMMAND - process the application menu +// WM_PAINT - Paint the main window +// WM_DESTROY - post a quit message and return +// +// +LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) +{ + WindowInfo* windowInfo = reinterpret_cast(::GetWindowLongPtr(hWnd, GWLP_USERDATA)); + + switch (message) + { + case WM_CREATE: + { + windowInfo = new WindowInfo(); + ::SetWindowLongPtr(hWnd, GWLP_USERDATA, reinterpret_cast(windowInfo)); + + // Create the DesktopChildSiteBridge + windowInfo->Bridge = winrt::DesktopChildSiteBridge::Create( + windowInfo->Compositor, + winrt::GetWindowIdFromWindow(hWnd)); + + // Create the LottieIsland, which is a WinRT wrapper for hosting a Lottie animation in a ContentIsland + windowInfo->LottieIsland = winrt::LottieIsland::LottieContentIsland::Create(windowInfo->Compositor); + + // Connect the ContentIsland to the DesktopChildSiteBridge + windowInfo->Bridge.Connect(windowInfo->LottieIsland.Island()); + windowInfo->Bridge.Show(); + + //// Set the C++/WinRT precompiled Lottie animation! + //windowInfo->LottieIsland.AnimatedVisualSource(winrt::AnimatedVisuals::LottieLogo1()); + + // Live JSON loaded animation! + winrt::LottieVisualSourceWinRT lottieVisualSource = winrt::LottieVisualSourceWinRT::CreateFromString(L"ms-appx:///LottieLogo1.json"); + lottieVisualSource.AnimatedVisualInvalidated([windowInfo, lottieVisualSource](const winrt::IInspectable sender, auto&&) + { + windowInfo->LottieIsland.AnimatedVisualSource(lottieVisualSource); + }); + + windowInfo->LottieIsland.PointerPressed([=](auto&...) { + // Clicking on the Lottie animation acts like clicking "Pause/Resume" + OnButtonClicked(ButtonType::PauseButton, windowInfo, hWnd); + }); + + // Add some Win32 controls to allow the app to play with the animation + CreateWin32Button(ButtonType::PlayButton, L"Play", hWnd); + CreateWin32Button(ButtonType::PauseButton, L"Pause", hWnd); + CreateWin32Button(ButtonType::StopButton, L"Stop", hWnd); + CreateWin32Button(ButtonType::ReverseButton, L"Reverse", hWnd); + } + break; + case WM_SIZE: + { + const int width = LOWORD(lParam); + const int height = HIWORD(lParam); + + if (windowInfo->Bridge) + { + // Layout our bridge: we want to use all available height (minus a button and some padding), + // but respect the ratio that the LottieIsland wants to display at. This can be accessed through + // the "RequestedSize" property on the ContentSiteView. + + int availableHeight = height - (k_padding * 3) - k_buttonHeight; + int availableWidth = width - (k_padding * 2); + + // Check what size the lottie wants to be + winrt::float2 requestedSize = windowInfo->Bridge.SiteView().RequestedSize(); + + // Scale the width to be the ratio the lottie wants + int bridgeWidth = 0; + if (requestedSize.y > 0) // Guard against divide-by-zero + { + bridgeWidth = static_cast((requestedSize.x / requestedSize.y) * availableHeight); + } + + // ... but don't overflow the width we have available + bridgeWidth = std::min(availableWidth, bridgeWidth); + + windowInfo->Bridge.MoveAndResize({ k_padding, k_padding, bridgeWidth, availableHeight }); + } + + LayoutButton(ButtonType::PlayButton, width, height, hWnd); + LayoutButton(ButtonType::PauseButton, width, height, hWnd); + LayoutButton(ButtonType::StopButton, width, height, hWnd); + LayoutButton(ButtonType::ReverseButton, width, height, hWnd); + } + break; + case WM_ACTIVATE: + { + // Make focus work nicely when the user presses alt+tab to activate a different window, and then alt+tab + // again to come back to this window. We want the focus to go back to the same child HWND that was focused + // before. + const bool isGettingDeactivated = (LOWORD(wParam) == WA_INACTIVE); + if (isGettingDeactivated) + { + // Remember the HWND that had focus. + windowInfo->LastFocusedWindow = ::GetFocus(); + } + else if (windowInfo->LastFocusedWindow != NULL) + { + ::SetFocus(windowInfo->LastFocusedWindow); + } + } + break; + case WM_COMMAND: + { + int wmId = LOWORD(wParam); + int wmCode = HIWORD(wParam); + // Parse the menu selections: + switch (wmId) + { + case IDM_ABOUT: + DialogBox(::GetModuleHandle(NULL), MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, About); + break; + case IDM_EXIT: + DestroyWindow(hWnd); + break; + case 501: // Buttons + case 502: + case 503: + case 504: + if (wmCode == BN_CLICKED) + { + ButtonType type = static_cast(wmId - 500); + OnButtonClicked(type, windowInfo, hWnd); + } + break; + default: + return DefWindowProc(hWnd, message, wParam, lParam); + } + } + break; + case WM_PAINT: + { + PAINTSTRUCT ps; + HDC hdc = BeginPaint(hWnd, &ps); + // TODO: Add any drawing code that uses hdc here... + UNREFERENCED_PARAMETER(hdc); + EndPaint(hWnd, &ps); + } + break; + case WM_DESTROY: + PostQuitMessage(0); + break; + case WM_NCDESTROY: + delete windowInfo; + ::SetWindowLong(hWnd, GWLP_USERDATA, NULL); + break; + default: + return DefWindowProc(hWnd, message, wParam, lParam); + } + return 0; +} + +// Message handler for about box. +INT_PTR CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) +{ + UNREFERENCED_PARAMETER(lParam); + switch (message) + { + case WM_INITDIALOG: + return (INT_PTR)TRUE; + + case WM_COMMAND: + if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL) + { + EndDialog(hDlg, LOWORD(wParam)); + return (INT_PTR)TRUE; + } + break; + } + return (INT_PTR)FALSE; +} + +void LayoutButton(ButtonType type, int /*tlwWidth*/, int tlwHeight, HWND topLevelWindow) +{ + int buttonIndex = static_cast(type); + + int xPos = ((buttonIndex - 1) * (k_buttonWidth + k_padding)) + k_padding; + int yPos = tlwHeight - k_buttonHeight - k_padding; + + HWND buttonHwnd = ::GetDlgItem(topLevelWindow, 500 + buttonIndex); + ::SetWindowPos(buttonHwnd, NULL, xPos, yPos, k_buttonWidth, k_buttonHeight, SWP_NOZORDER); +} + +void CreateWin32Button(ButtonType type, const std::wstring_view& text, HWND parentHwnd) +{ + int buttonIndex = static_cast(type); + + int xPos = ((buttonIndex - 1) * (k_buttonWidth + k_padding)) + k_padding; + + const HINSTANCE hInst = (HINSTANCE)GetWindowLongPtr(parentHwnd, GWLP_HINSTANCE); + HMENU fakeHMenu = reinterpret_cast(static_cast(500 + buttonIndex)); + ::CreateWindowW( + L"BUTTON", + text.data(), + WS_TABSTOP | WS_VISIBLE | WS_CHILD, + xPos, 250, k_buttonWidth, k_buttonHeight, + parentHwnd, + fakeHMenu, + hInst, + NULL); +} + +void OnButtonClicked(ButtonType type, WindowInfo* windowInfo, HWND topLevelWindow) +{ + winrt::Windows::Foundation::IAsyncAction asyncAction{ nullptr }; + switch (type) + { + case ButtonType::PlayButton: + asyncAction = windowInfo->LottieIsland.PlayAsync(0.0, 1.0, true); + asyncAction.Completed([](auto&&, auto&& asyncStatus) + { + // Check if the async operation was successfully completed + if (asyncStatus == winrt::Windows::Foundation::AsyncStatus::Completed) + { + OutputDebugString(L"Async operation completed successfully.\n"); + } + else + { + OutputDebugString(L"Async operation failed or was canceled.\n"); + } + }); + + + SetPauseState(windowInfo, false, topLevelWindow); + break; + case ButtonType::PauseButton: + if (windowInfo->isPaused) + { + windowInfo->LottieIsland.Resume(); + } + else + { + windowInfo->LottieIsland.Pause(); + } + SetPauseState(windowInfo, !windowInfo->isPaused, topLevelWindow); + break; + case ButtonType::StopButton: + windowInfo->LottieIsland.Stop(); + SetPauseState(windowInfo, false, topLevelWindow); + break; + case ButtonType::ReverseButton: + if (windowInfo->LottieIsland.PlaybackRate() == 1.0) + { + windowInfo->LottieIsland.PlaybackRate(-1.0); + } + else + { + windowInfo->LottieIsland.PlaybackRate(1.0); + } + break; + default: + throw winrt::hresult_invalid_argument{ L"Invalid button type." }; + } +} + +void SetButtonText(ButtonType type, const std::wstring_view& text, HWND topLevelWindow) +{ + int buttonIndex = static_cast(type); + HWND buttonHwnd = ::GetDlgItem(topLevelWindow, 500 + buttonIndex); + ::SendMessageW(buttonHwnd, WM_SETTEXT, 0, reinterpret_cast(text.data())); +} + +void SetPauseState(WindowInfo* windowInfo, bool isPaused, HWND topLevelWindow) +{ + if (windowInfo->isPaused == isPaused) + { + return; + } + + SetButtonText(ButtonType::PauseButton, + isPaused ? L"Resume" : L"Pause", + topLevelWindow); + + windowInfo->isPaused = isPaused; +} diff --git a/SimpleLottieIslandApp/SimpleLottieIslandApp.h b/SimpleLottieIslandApp/SimpleLottieIslandApp.h new file mode 100644 index 000000000..385a70ac3 --- /dev/null +++ b/SimpleLottieIslandApp/SimpleLottieIslandApp.h @@ -0,0 +1,5 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +#pragma once + +#include "resource.h" diff --git a/SimpleLottieIslandApp/SimpleLottieIslandApp.ico b/SimpleLottieIslandApp/SimpleLottieIslandApp.ico new file mode 100644 index 0000000000000000000000000000000000000000..b3ec03bd617f32e58128fa977fd6ac9605124f4b GIT binary patch literal 46227 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 D{KQy& literal 0 HcmV?d00001 diff --git a/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj b/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj new file mode 100644 index 000000000..be81bdd04 --- /dev/null +++ b/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj @@ -0,0 +1,197 @@ + + + + + + + + Debug + ARM64 + + + Debug + Win32 + + + Release + ARM64 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + 17.0 + Win32Proj + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5} + SimpleLottieIslandApp + + Windows Store + 10.0 + + + true + true + true + true + SimpleLottieIslandApp + SimpleLottieIslandApp + $(RootNamespace) + en-US + false + 10.0 + 10.0 + + 10.0.17763.0 + true + + + + Application + true + v143 + Unicode + true + + + true + + + false + true + + + + + + + + + + + + + + Use + pch.h + $(IntDir)pch.pch + + + user32.lib;Ole32.lib;%(AdditionalDependencies) + Microsoft.UI.Windowing.Core.dll + + + + + Level4 + true + true + _DEBUG;_WINDOWS;%(PreprocessorDefinitions) + true + + + Windows + true + + + + + WIN32;%(PreprocessorDefinitions) + + + + + DEBUG;%(PreprocessorDefinitions) + + + + + true + true + NDEBUG;%(PreprocessorDefinitions) + + + true + true + + + + + + + + + AnimatedVisuals.LottieLogo1.idl + + + + + AnimatedVisuals.LottieLogo1.idl + + + Create + + + + + + + + + + + + + + + + + + true + Document + + + + + + Designer + + + + + {9ba7a2f2-b723-458b-a575-3f726d271465} + + + {dda0d223-4b59-455d-a8b1-cfae59523ffb} + + + + + + + + + + + + This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. + + + + + + + + + + \ No newline at end of file diff --git a/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj.filters b/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj.filters new file mode 100644 index 000000000..f16678819 --- /dev/null +++ b/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj.filters @@ -0,0 +1,78 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Header Files + + + Header Files + + + Header Files + + + Source Files + + + Header Files + + + + + Source Files + + + Source Files + + + Source Files + + + + + Resource Files + + + + + Resource Files + + + Resource Files + + + + + + Resource Files + + + + + + + + + + + Source Files + + + Source Files + + + \ No newline at end of file diff --git a/SimpleLottieIslandApp/package.appxmanifest b/SimpleLottieIslandApp/package.appxmanifest new file mode 100644 index 000000000..186c12a8e --- /dev/null +++ b/SimpleLottieIslandApp/package.appxmanifest @@ -0,0 +1,54 @@ + + + + + + SimpleLottieIslandApp + Microsoft Corporation + Assets\logo.png + + + + + + + + + + + + + + + + + + + + + + + + LottieIsland.dll + + + + + + + + + \ No newline at end of file diff --git a/SimpleLottieIslandApp/packages.config b/SimpleLottieIslandApp/packages.config new file mode 100644 index 000000000..26a6e74b1 --- /dev/null +++ b/SimpleLottieIslandApp/packages.config @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/SimpleLottieIslandApp/pch.cpp b/SimpleLottieIslandApp/pch.cpp new file mode 100644 index 000000000..b7f2ce9c0 --- /dev/null +++ b/SimpleLottieIslandApp/pch.cpp @@ -0,0 +1,3 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +#include "pch.h" diff --git a/SimpleLottieIslandApp/pch.h b/SimpleLottieIslandApp/pch.h new file mode 100644 index 000000000..f9c5d52c2 --- /dev/null +++ b/SimpleLottieIslandApp/pch.h @@ -0,0 +1,23 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +#pragma once + +#include "targetver.h" +#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers +#define NOMINMAX +// Windows Header Files +#include + +// There's an API named GetCurrentTime in the Storyboard type. +#undef GetCurrentTime + +// Com and WinRT headers +#include + +// Some generated files, like MainPage.xaml.g.h need files such as Microsoft.UI.Xaml.Markup.h +// to already be included. Let's just include a bunch of stuff we know we'll need here in the PCH. +#include +#include +#include +#include +#include diff --git a/SimpleLottieIslandApp/small.ico b/SimpleLottieIslandApp/small.ico new file mode 100644 index 0000000000000000000000000000000000000000..b3ec03bd617f32e58128fa977fd6ac9605124f4b GIT binary patch literal 46227 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 From 0329c09baa0d93b4239bf8631bde952e577e4894 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Thu, 18 Apr 2024 12:58:23 -0400 Subject: [PATCH 06/40] Removed unused projects, moved LottieWinRT over to custom interface --- .gitignore | 3 + Lottie-Windows.sln | 1 + Lottie/AnimatedVisuals.LottieLogo1.cpp | 4310 ---------- Lottie/AnimatedVisuals.LottieLogo1.h | 77 - Lottie/AnimatedVisuals.LottieLogo1.idl | 29 - Lottie/Assets/LottieLogo1.json | 7390 ----------------- Lottie/Assets/LottieLogo1.png | Bin 17039 -> 0 bytes Lottie/Project.idl | 32 - Lottie/Resource.h | 32 - Lottie/SimpleIslandApp.cpp | 445 - Lottie/SimpleIslandApp.h | 5 - Lottie/SimpleIslandApp.ico | Bin 46227 -> 0 bytes Lottie/SimpleIslandApp.rc | Bin 7142 -> 0 bytes Lottie/SimpleIslandApp.sln | 182 - Lottie/SimpleIslandApp.vcxproj | 327 - Lottie/SimpleIslandApp.vcxproj.filters | 78 - Lottie/package.appxmanifest | 55 - Lottie/packages.config | 8 - Lottie/pch.cpp | 3 - Lottie/pch.h | 23 - Lottie/small.ico | Bin 46227 -> 0 bytes Lottie/targetver.h | 9 - ...mmunityToolkit.WinAppSDK.LottieIsland.def} | 0 ...mmunityToolkit.WinAppSDK.LottieIsland.idl} | 18 +- LottieIsland/Directory.Build.props | 10 + LottieIsland/LottieContentIsland.cpp | 2 +- LottieIsland/LottieContentIsland.h | 14 +- LottieIsland/LottieIsland.vcxproj | 25 +- LottieIsland/LottieIsland.vcxproj.filters | 2 +- LottieIsland/pch.h | 2 - LottieIslandProjection/Directory.Build.props | 7 + .../LottieIslandProjection.csproj | 28 +- ...ommunityToolkit.WinAppSDK.LottieIsland.dll | Bin 0 -> 394240 bytes ...ommunityToolkit.WinAppSDK.LottieIsland.pri | Bin 0 -> 784 bytes .../LottieIslandProjection.deps.json | 202 + .../LottieIslandProjection.dll | Bin 0 -> 44544 bytes .../LottieIslandProjection.pri | Bin 0 -> 712 bytes .../LottieIslandProjection.xml | 8 + LottieLogo1.cs | 4227 ---------- LottieWinRT/AnimatedVisual.cs | 3 +- LottieWinRT/Class1.cs | 18 + LottieWinRT/Directory.Build.props | 10 + LottieWinRT/IAnimatedVisual.cs | 14 - LottieWinRT/IAnimatedVisualSource.cs | 9 - LottieWinRT/LottieVisualSourceWinRT.cs | 18 +- LottieWinRT/LottieWinRT.csproj | 42 +- SimpleLottieIslandApp/Directory.Build.props | 7 + .../SimpleLottieIslandApp.cpp | 38 +- .../SimpleLottieIslandApp.vcxproj | 18 +- .../SimpleLottieIslandApp.vcxproj.filters | 15 +- SimpleLottieIslandApp/package.appxmanifest | 14 +- SimpleLottieIslandApp/packages.config | 1 + 52 files changed, 397 insertions(+), 17364 deletions(-) delete mode 100644 Lottie/AnimatedVisuals.LottieLogo1.cpp delete mode 100644 Lottie/AnimatedVisuals.LottieLogo1.h delete mode 100644 Lottie/AnimatedVisuals.LottieLogo1.idl delete mode 100644 Lottie/Assets/LottieLogo1.json delete mode 100644 Lottie/Assets/LottieLogo1.png delete mode 100644 Lottie/Project.idl delete mode 100644 Lottie/Resource.h delete mode 100644 Lottie/SimpleIslandApp.cpp delete mode 100644 Lottie/SimpleIslandApp.h delete mode 100644 Lottie/SimpleIslandApp.ico delete mode 100644 Lottie/SimpleIslandApp.rc delete mode 100644 Lottie/SimpleIslandApp.sln delete mode 100644 Lottie/SimpleIslandApp.vcxproj delete mode 100644 Lottie/SimpleIslandApp.vcxproj.filters delete mode 100644 Lottie/package.appxmanifest delete mode 100644 Lottie/packages.config delete mode 100644 Lottie/pch.cpp delete mode 100644 Lottie/pch.h delete mode 100644 Lottie/small.ico delete mode 100644 Lottie/targetver.h rename LottieIsland/{LottieIsland.def => CommunityToolkit.WinAppSDK.LottieIsland.def} (100%) rename LottieIsland/{LottieContentIsland.idl => CommunityToolkit.WinAppSDK.LottieIsland.idl} (70%) create mode 100644 LottieIsland/Directory.Build.props create mode 100644 LottieIslandProjection/Directory.Build.props create mode 100644 LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/CommunityToolkit.WinAppSDK.LottieIsland.dll create mode 100644 LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/CommunityToolkit.WinAppSDK.LottieIsland.pri create mode 100644 LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.deps.json create mode 100644 LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.dll create mode 100644 LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.pri create mode 100644 LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.xml delete mode 100644 LottieLogo1.cs create mode 100644 LottieWinRT/Class1.cs create mode 100644 LottieWinRT/Directory.Build.props delete mode 100644 LottieWinRT/IAnimatedVisual.cs delete mode 100644 LottieWinRT/IAnimatedVisualSource.cs create mode 100644 SimpleLottieIslandApp/Directory.Build.props diff --git a/.gitignore b/.gitignore index a07454b77..b3f7e22f6 100644 --- a/.gitignore +++ b/.gitignore @@ -206,6 +206,9 @@ FakesAssemblies/ # Visual Studio 6 workspace options file *.opt +# Visual Studio editor config file +.editorconfig + # LightSwitch generated files GeneratedArtifacts/ _Pvt_Extensions/ diff --git a/Lottie-Windows.sln b/Lottie-Windows.sln index 4d8fb5684..e42f8c8cc 100644 --- a/Lottie-Windows.sln +++ b/Lottie-Windows.sln @@ -40,6 +40,7 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LottieToWinComp.dll", "dlls EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{00D8BD2B-70A1-48EC-AC5E-CC40561F8972}" ProjectSection(SolutionItems) = preProject + .editorconfig = .editorconfig LICENSE.md = LICENSE.md README.md = README.md EndProjectSection diff --git a/Lottie/AnimatedVisuals.LottieLogo1.cpp b/Lottie/AnimatedVisuals.LottieLogo1.cpp deleted file mode 100644 index 507d03cf9..000000000 --- a/Lottie/AnimatedVisuals.LottieLogo1.cpp +++ /dev/null @@ -1,4310 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// -// LottieGen version: -// 8.0.230813-rc.7+0443b1e789 -// -// Command: -// LottieGen -Language Cppwinrt -WinUIVersion 3.0 -InputFile LottieLogo1.json -// -// Input file: -// LottieLogo1.json (190271 bytes created 0:40-04:00 Mar 13 2024) -// -// LottieGen source: -// http://aka.ms/Lottie -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ -// ____________________________________ -// | Object stats | Count | -// |__________________________|_______| -// | All CompositionObjects | 610 | -// |--------------------------+-------| -// | Expression animators | 52 | -// | KeyFrame animators | 121 | -// | Reference parameters | 52 | -// | Expression operations | 0 | -// |--------------------------+-------| -// | Animated brushes | - | -// | Animated gradient stops | - | -// | ExpressionAnimations | 50 | -// | PathKeyFrameAnimations | - | -// |--------------------------+-------| -// | ContainerVisuals | 1 | -// | ShapeVisuals | 1 | -// |--------------------------+-------| -// | ContainerShapes | 23 | -// | CompositionSpriteShapes | 45 | -// |--------------------------+-------| -// | Brushes | 3 | -// | Gradient stops | - | -// | CompositionVisualSurface | - | -// ------------------------------------ -#include "pch.h" -#include "AnimatedVisuals.LottieLogo1.h" -#if __has_include ("AnimatedVisuals.LottieLogo1.g.cpp") -#include "AnimatedVisuals.LottieLogo1.g.cpp" -#endif -#include -#include -#include -#include -#include "d2d1.h" -#include -#include -#include -#ifdef BUILD_WINDOWS -namespace ABI -{ -#include -} -#else -#include -#endif -#include - -using namespace winrt::Microsoft::UI; -using namespace winrt::Microsoft::UI::Composition; -using namespace winrt::Microsoft::UI::Xaml::Controls; -using namespace winrt::Windows::Foundation; -using namespace winrt::Windows::Foundation::Numerics; -using namespace winrt::Windows::Graphics; -using Color = winrt::Windows::UI::Color; -using CompositionPropertySet = winrt::Microsoft::UI::Composition::CompositionPropertySet; -using TimeSpan = winrt::Windows::Foundation::TimeSpan; - -namespace winrt::AnimatedVisuals::implementation -{ - class CanvasGeometry : public winrt::implements - { - winrt::com_ptr _geometry{ nullptr }; - - public: - CanvasGeometry(winrt::com_ptr geometry) - : _geometry{ geometry } - { } - - // IGeometrySource2D. - winrt::com_ptr Geometry() { return _geometry; } - - // IGeometrySource2DInterop. - IFACEMETHODIMP GetGeometry(ID2D1Geometry** value) noexcept(true) override - { - _geometry.copy_to(value); - return S_OK; - } - - // IGeometrySource2DInterop. - IFACEMETHODIMP TryGetGeometryUsingFactory(ID2D1Factory*, ID2D1Geometry**) noexcept(true) override - { - return E_NOTIMPL; - } - }; - class LottieLogo1_AnimatedVisual : public winrt::implements - { - winrt::com_ptr _d2dFactory{ nullptr }; - static constexpr int64_t c_durationTicks{ 59666666L }; - Compositor const _c{ nullptr }; - ExpressionAnimation const _reusableExpressionAnimation{ nullptr }; - AnimationController _animationController_0{ nullptr }; - AnimationController _animationController_1{ nullptr }; - CompositionColorBrush _colorBrush_AlmostTeal_FF007A87{ nullptr }; - CompositionColorBrush _colorBrush_White{ nullptr }; - CompositionContainerShape _containerShape_00{ nullptr }; - CompositionContainerShape _containerShape_01{ nullptr }; - CompositionContainerShape _containerShape_02{ nullptr }; - CompositionContainerShape _containerShape_03{ nullptr }; - CompositionContainerShape _containerShape_04{ nullptr }; - CompositionContainerShape _containerShape_05{ nullptr }; - CompositionContainerShape _containerShape_06{ nullptr }; - CompositionContainerShape _containerShape_07{ nullptr }; - CompositionContainerShape _containerShape_08{ nullptr }; - CompositionContainerShape _containerShape_09{ nullptr }; - CompositionContainerShape _containerShape_10{ nullptr }; - CompositionContainerShape _containerShape_11{ nullptr }; - CompositionContainerShape _containerShape_12{ nullptr }; - CompositionContainerShape _containerShape_13{ nullptr }; - CompositionContainerShape _containerShape_14{ nullptr }; - CompositionContainerShape _containerShape_15{ nullptr }; - CompositionContainerShape _containerShape_16{ nullptr }; - CompositionContainerShape _containerShape_17{ nullptr }; - CompositionContainerShape _containerShape_18{ nullptr }; - CompositionContainerShape _containerShape_19{ nullptr }; - CompositionContainerShape _containerShape_20{ nullptr }; - CompositionContainerShape _containerShape_21{ nullptr }; - CompositionContainerShape _containerShape_22{ nullptr }; - CompositionEllipseGeometry _ellipse_0_0{ nullptr }; - CompositionEllipseGeometry _ellipse_0_1{ nullptr }; - CompositionEllipseGeometry _ellipse_4p7{ nullptr }; - CompositionPath _path_0{ nullptr }; - CompositionPath _path_1{ nullptr }; - CompositionPath _path_2{ nullptr }; - CompositionPath _path_3{ nullptr }; - CompositionPath _path_4{ nullptr }; - CompositionPath _path_5{ nullptr }; - CompositionPath _path_6{ nullptr }; - CompositionPath _path_7{ nullptr }; - CompositionPath _path_8{ nullptr }; - CompositionPathGeometry _pathGeometry_00{ nullptr }; - CompositionPathGeometry _pathGeometry_01{ nullptr }; - CompositionPathGeometry _pathGeometry_02{ nullptr }; - CompositionPathGeometry _pathGeometry_03{ nullptr }; - CompositionPathGeometry _pathGeometry_04{ nullptr }; - CompositionPathGeometry _pathGeometry_05{ nullptr }; - CompositionPathGeometry _pathGeometry_06{ nullptr }; - CompositionPathGeometry _pathGeometry_07{ nullptr }; - CompositionPathGeometry _pathGeometry_08{ nullptr }; - CompositionPathGeometry _pathGeometry_09{ nullptr }; - CompositionPathGeometry _pathGeometry_10{ nullptr }; - CompositionPathGeometry _pathGeometry_11{ nullptr }; - CompositionPathGeometry _pathGeometry_12{ nullptr }; - CompositionPathGeometry _pathGeometry_13{ nullptr }; - CompositionPathGeometry _pathGeometry_14{ nullptr }; - CompositionPathGeometry _pathGeometry_15{ nullptr }; - CompositionPathGeometry _pathGeometry_16{ nullptr }; - CompositionPathGeometry _pathGeometry_17{ nullptr }; - CompositionPathGeometry _pathGeometry_18{ nullptr }; - CompositionPathGeometry _pathGeometry_19{ nullptr }; - CompositionPathGeometry _pathGeometry_20{ nullptr }; - CompositionPathGeometry _pathGeometry_21{ nullptr }; - CompositionPathGeometry _pathGeometry_22{ nullptr }; - CompositionPathGeometry _pathGeometry_23{ nullptr }; - CompositionPathGeometry _pathGeometry_24{ nullptr }; - CompositionPathGeometry _pathGeometry_25{ nullptr }; - CompositionPathGeometry _pathGeometry_26{ nullptr }; - CompositionPathGeometry _pathGeometry_27{ nullptr }; - CompositionPathGeometry _pathGeometry_28{ nullptr }; - CompositionPathGeometry _pathGeometry_29{ nullptr }; - CompositionPathGeometry _pathGeometry_30{ nullptr }; - CompositionPathGeometry _pathGeometry_31{ nullptr }; - CompositionPathGeometry _pathGeometry_32{ nullptr }; - CompositionPathGeometry _pathGeometry_33{ nullptr }; - CompositionPathGeometry _pathGeometry_34{ nullptr }; - CompositionPathGeometry _pathGeometry_35{ nullptr }; - CompositionPathGeometry _pathGeometry_36{ nullptr }; - CompositionPathGeometry _pathGeometry_37{ nullptr }; - CompositionPathGeometry _pathGeometry_38{ nullptr }; - CompositionSpriteShape _spriteShape_11{ nullptr }; - CompositionSpriteShape _spriteShape_12{ nullptr }; - CompositionSpriteShape _spriteShape_13{ nullptr }; - CompositionSpriteShape _spriteShape_14{ nullptr }; - CompositionSpriteShape _spriteShape_15{ nullptr }; - CompositionSpriteShape _spriteShape_19{ nullptr }; - CompositionSpriteShape _spriteShape_22{ nullptr }; - CompositionSpriteShape _spriteShape_23{ nullptr }; - CompositionSpriteShape _spriteShape_36{ nullptr }; - CompositionSpriteShape _spriteShape_37{ nullptr }; - CompositionSpriteShape _spriteShape_38{ nullptr }; - ContainerVisual _root{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_0{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_1{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_2{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_3{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_4{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_5{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_6{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_7{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_8{ nullptr }; - ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_02{ nullptr }; - ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_03{ nullptr }; - ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_06{ nullptr }; - ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_11{ nullptr }; - ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_13{ nullptr }; - ScalarKeyFrameAnimation _tStartScalarAnimation_0_to_0p249{ nullptr }; - ScalarKeyFrameAnimation _tStartScalarAnimation_0p87_to_0_02{ nullptr }; - StepEasingFunction _holdThenStepEasingFunction{ nullptr }; - StepEasingFunction _stepThenHoldEasingFunction{ nullptr }; - Vector2KeyFrameAnimation _offsetVector2Animation_02{ nullptr }; - Vector2KeyFrameAnimation _offsetVector2Animation_03{ nullptr }; - Vector2KeyFrameAnimation _offsetVector2Animation_04{ nullptr }; - Vector2KeyFrameAnimation _offsetVector2Animation_05{ nullptr }; - Vector2KeyFrameAnimation _offsetVector2Animation_06{ nullptr }; - Vector2KeyFrameAnimation _radiusVector2Animation{ nullptr }; - Vector2KeyFrameAnimation _shapeVisibilityAnimation_04{ nullptr }; - - void BindProperty( - CompositionObject target, - winrt::hstring animatedPropertyName, - winrt::hstring expression, - winrt::hstring referenceParameterName, - CompositionObject referencedObject) - { - _reusableExpressionAnimation.ClearAllParameters(); - _reusableExpressionAnimation.Expression(expression); - _reusableExpressionAnimation.SetReferenceParameter(referenceParameterName, referencedObject); - target.StartAnimation(animatedPropertyName, _reusableExpressionAnimation); - } - - ScalarKeyFrameAnimation CreateScalarKeyFrameAnimation(float initialProgress, float initialValue, CompositionEasingFunction initialEasingFunction) - { - const auto result = _c.CreateScalarKeyFrameAnimation(); - result.Duration(TimeSpan{ c_durationTicks }); - result.InsertKeyFrame(initialProgress, initialValue, initialEasingFunction); - return result; - } - - Vector2KeyFrameAnimation CreateVector2KeyFrameAnimation(float initialProgress, float2 initialValue, CompositionEasingFunction initialEasingFunction) - { - const auto result = _c.CreateVector2KeyFrameAnimation(); - result.Duration(TimeSpan{ c_durationTicks }); - result.InsertKeyFrame(initialProgress, initialValue, initialEasingFunction); - return result; - } - - CompositionSpriteShape CreateSpriteShape(CompositionGeometry geometry, float3x2 transformMatrix) - { - const auto result = _c.CreateSpriteShape(geometry); - result.TransformMatrix(transformMatrix); - return result; - } - - CompositionSpriteShape CreateSpriteShape(CompositionGeometry geometry, float3x2 transformMatrix, CompositionBrush fillBrush) - { - const auto result = _c.CreateSpriteShape(geometry); - result.TransformMatrix(transformMatrix); - result.FillBrush(fillBrush); - return result; - } - - AnimationController AnimationController_0() - { - if (_animationController_0 != nullptr) { return _animationController_0; } - const auto result = _animationController_0 = _c.CreateAnimationController(); - result.Pause(); - BindProperty(_animationController_0, L"Progress", L"_.Progress", L"_", _root); - return result; - } - - // - Layer aggregator - // Layer: Dot1 - AnimationController AnimationController_1() - { - if (_animationController_1 != nullptr) { return _animationController_1; } - const auto result = _animationController_1 = _c.CreateAnimationController(); - result.Pause(); - BindProperty(_animationController_1, L"Progress", L"_.Progress*0.9835165+0.01648352", L"_", _root); - return result; - } - - winrt::com_ptr Geometry_00() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -13.6639996F, -0.144999996F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 75.663002F, 0.289999992F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_01() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 0.859000027F, -21.1429996F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ -4.35900021F, 70.3919983F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_02() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -26.6700001F, -0.282999992F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 99.1709976F, 0.0659999996F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_03() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -13.6639996F, -0.144999996F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 62.1629982F, 0.289999992F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_04() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -30.7199993F, 63.7610016F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddBezier({ { -30.6889992F, 63.1669998F }, { -30.7889996F, 50.8470001F }, { -30.7409992F, 45.1920013F } }); - sink->AddBezier({ { -30.6650009F, 36.2140007F }, { -37.3429985F, 27.0739994F }, { -37.3969994F, 27.0139999F } }); - sink->AddBezier({ { -38.5579987F, 25.7140007F }, { -39.7519989F, 24.1469994F }, { -40.6980019F, 22.6609993F } }); - sink->AddBezier({ { -46.637001F, 13.3339996F }, { -47.8400002F, 0.933000028F }, { -37.8730011F, -7.1170001F } }); - sink->AddBezier({ { -13.1960001F, -27.0459995F }, { 8.96000004F, 11.559F }, { 49.5060005F, 11.559F } }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_05() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 246.649994F, 213.813995F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 340.955994F, 213.628006F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_06() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 1.68099999F, -29.9920006F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ -1.68099999F, 29.9920006F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_07() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 1.76800001F, -25.9659996F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ -1.76800001F, 25.9659996F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_08() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -8.83699989F, -58.2290001F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddBezier({ { -8.83699989F, -58.2290001F }, { -10.1630001F, 29.4950008F }, { -35.8339996F, 33.6619987F } }); - sink->AddBezier({ { -44.0579987F, 34.9970016F }, { -50.2319984F, 30.0499992F }, { -51.6879997F, 23.1480007F } }); - sink->AddBezier({ { -53.144001F, 16.2450008F }, { -49.6549988F, 9.15600014F }, { -41.1739998F, 7.29300022F } }); - sink->AddBezier({ { -17.3570004F, 2.05999994F }, { 4.23500013F, 57.1879997F }, { 51.7970009F, 44.1780014F } }); - sink->AddBezier({ { 51.9570007F, 44.1339989F }, { 52.6870003F, 43.8740005F }, { 53.1879997F, 43.7410011F } }); - sink->AddBezier({ { 53.6889992F, 43.6080017F }, { 68.9710007F, 41.3569984F }, { 140.393997F, 43.6720009F } }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_09() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -67.125F, -112.0F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddBezier({ { -67.125F, -112.0F }, { -73.5579987F, -100.719002F }, { -75.4580002F, -89.9509964F } }); - sink->AddBezier({ { -78.625F, -72.0F }, { -79.375F, -58.25F }, { -80.375F, -39.25F } }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_10() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -67.25F, -105.5F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddBezier({ { -67.25F, -105.5F }, { -70.4329987F, -94.9690018F }, { -72.3330002F, -84.2009964F } }); - sink->AddBezier({ { -75.5F, -66.25F }, { -75.5F, -56.75F }, { -76.5F, -37.75F } }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_11() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 34.5F, -13.0500002F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddBezier({ { 7.5F, -14.5F }, { -4.0F, -37.0F }, { -35.0460014F, -35.5789986F } }); - sink->AddBezier({ { -61.4720001F, -34.3689995F }, { -62.25F, -5.75F }, { -62.25F, -5.75F } }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_12() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -3.0F, 35.9500008F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddBezier({ { -3.0F, 35.9500008F }, { -1.5F, 7.5F }, { -1.352F, -6.75600004F } }); - sink->AddBezier({ { -9.90299988F, -15.0190001F }, { -21.5699997F, -20.5790005F }, { -32.0460014F, -20.5790005F } }); - sink->AddBezier({ { -53.5F, -20.5790005F }, { -42.25F, 4.25F }, { -42.25F, 4.25F } }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_13() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 16.2310009F, 39.0730019F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ -32.769001F, 57.3650017F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_14() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 7.44999981F, 21.9500008F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ -32.75F, 55.75F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_15() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -94.5F, 37.0730019F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ -48.769001F, 55.3650017F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_16() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -87.5F, 20.9500008F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ -48.75F, 54.75F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_17() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 166.731003F, -7.92700005F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 136.731003F, 7.11499977F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_18() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 156.449997F, -23.0499992F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 132.0F, 2.75F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_19() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 169.5F, 18.073F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 137.481003F, 11.3649998F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_20() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 119.5F, -45.0499992F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 82.75F, -44.75F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_21() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 119.25F, -20.0499992F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 63.5F, -20.5F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_22() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 128.0F, 3.6500001F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 78.25F, 3.5F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_23() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 149.623993F, 8.24400043F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 136.647995F, 10.1560001F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_24() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 144.429001F, -5.39699984F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 132.274994F, 4.73099995F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_25() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 145.677002F, 22.2199993F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 134.921997F, 14.7489996F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_26() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 147.699005F, 13.0249996F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 133.195007F, 13.21F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_27() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 142.182999F, -5.11199999F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 130.029007F, 5.01599979F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_28() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 142.037994F, 29.2779999F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 131.281998F, 21.8069992F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - // - Layer aggregator - // Offset:<187.5, 333.5> - CompositionColorBrush ColorBrush_AlmostDarkTurquoise_FF00D1C1() - { - return _c.CreateColorBrush({ 0xFF, 0x00, 0xD1, 0xC1 }); - } - - CompositionColorBrush ColorBrush_AlmostTeal_FF007A87() - { - return (_colorBrush_AlmostTeal_FF007A87 == nullptr) - ? _colorBrush_AlmostTeal_FF007A87 = _c.CreateColorBrush({ 0xFF, 0x00, 0x7A, 0x87 }) - : _colorBrush_AlmostTeal_FF007A87; - } - - CompositionColorBrush ColorBrush_White() - { - return (_colorBrush_White == nullptr) - ? _colorBrush_White = _c.CreateColorBrush({ 0xFF, 0xFF, 0xFF, 0xFF }) - : _colorBrush_White; - } - - // Layer aggregator - // Transforms for Bncr - CompositionContainerShape ContainerShape_00() - { - if (_containerShape_00 != nullptr) { return _containerShape_00; } - const auto result = _containerShape_00 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // Transforms: Dot-Y - result.Shapes().Append(ContainerShape_01()); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - // Transforms for Dot-Y - CompositionContainerShape ContainerShape_01() - { - if (_containerShape_01 != nullptr) { return _containerShape_01; } - const auto result = _containerShape_01 = _c.CreateContainerShape(); - // ShapeGroup: Ellipse 1 Offset:<196, 267> - result.Shapes().Append(SpriteShape_01()); - return result; - } - - // Layer aggregator - // Transforms for E3-Y - CompositionContainerShape ContainerShape_02() - { - if (_containerShape_02 != nullptr) { return _containerShape_02; } - const auto result = _containerShape_02 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // ShapeGroup: Group 1 Offset:<344.674, 261.877> - result.Shapes().Append(SpriteShape_02()); - return result; - } - - // Layer aggregator - // Transforms for E3-Y - CompositionContainerShape ContainerShape_03() - { - if (_containerShape_03 != nullptr) { return _containerShape_03; } - const auto result = _containerShape_03 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // Transforms: E3-B Offset:<0.06500244, 0> - result.Shapes().Append(SpriteShape_03()); - return result; - } - - // Layer aggregator - // Transforms for I-Y - CompositionContainerShape ContainerShape_04() - { - if (_containerShape_04 != nullptr) { return _containerShape_04; } - const auto result = _containerShape_04 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // ShapeGroup: Group 6 Offset:<304.135, 282.409> - result.Shapes().Append(SpriteShape_04()); - return result; - } - - // Layer aggregator - // Transforms for I-Y - CompositionContainerShape ContainerShape_05() - { - if (_containerShape_05 != nullptr) { return _containerShape_05; } - const auto result = _containerShape_05 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // Transforms: I-B - result.Shapes().Append(SpriteShape_05()); - return result; - } - - // Layer aggregator - // Transforms for E2-Y - CompositionContainerShape ContainerShape_06() - { - if (_containerShape_06 != nullptr) { return _containerShape_06; } - const auto result = _containerShape_06 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // ShapeGroup: Group 3 Offset:<331.664, 238.14> - result.Shapes().Append(SpriteShape_06()); - return result; - } - - // Layer aggregator - // Transforms for E2-Y - CompositionContainerShape ContainerShape_07() - { - if (_containerShape_07 != nullptr) { return _containerShape_07; } - const auto result = _containerShape_07 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // Transforms: E2-B - result.Shapes().Append(SpriteShape_07()); - return result; - } - - // Layer aggregator - // Transforms for E1-Y - CompositionContainerShape ContainerShape_08() - { - if (_containerShape_08 != nullptr) { return _containerShape_08; } - const auto result = _containerShape_08 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // ShapeGroup: Group 2 Offset:<344.672, 214.842> - result.Shapes().Append(SpriteShape_08()); - return result; - } - - // Layer aggregator - // Transforms for E1-Y - CompositionContainerShape ContainerShape_09() - { - if (_containerShape_09 != nullptr) { return _containerShape_09; } - const auto result = _containerShape_09 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // Transforms: E1-B - result.Shapes().Append(SpriteShape_09()); - return result; - } - - // Layer aggregator - // Transforms for T1a-Y - CompositionContainerShape ContainerShape_10() - { - if (_containerShape_10 != nullptr) { return _containerShape_10; } - const auto result = _containerShape_10 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // ShapeGroup: Group 9 Offset:<227.677, 234.375> - result.Shapes().Append(SpriteShape_10()); - return result; - } - - // Layer aggregator - // Transforms for O-Y - CompositionContainerShape ContainerShape_11() - { - if (_containerShape_11 != nullptr) { return _containerShape_11; } - const auto result = _containerShape_11 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - const auto shapes = result.Shapes(); - // ShapeGroup: Ellipse 1 Offset:<196, 267> - shapes.Append(SpriteShape_16()); - // ShapeGroup: Ellipse 1 Offset:<196, 267> - shapes.Append(SpriteShape_17()); - return result; - } - - // Layer aggregator - // Transforms for T1a-Y 2 - CompositionContainerShape ContainerShape_12() - { - if (_containerShape_12 != nullptr) { return _containerShape_12; } - const auto result = _containerShape_12 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // ShapeGroup: Group 9 Offset:<227.677, 234.375> - result.Shapes().Append(SpriteShape_18()); - return result; - } - - // Layer aggregator - // Transforms for T1a-Y - CompositionContainerShape ContainerShape_13() - { - if (_containerShape_13 != nullptr) { return _containerShape_13; } - const auto result = _containerShape_13 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // Transforms: T1a-B - result.Shapes().Append(SpriteShape_20()); - return result; - } - - // Layer aggregator - // Transforms for N - CompositionContainerShape ContainerShape_14() - { - if (_containerShape_14 != nullptr) { return _containerShape_14; } - const auto result = _containerShape_14 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // Transforms: Dot-Y - result.Shapes().Append(ContainerShape_15()); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - // Transforms for Dot-Y - CompositionContainerShape ContainerShape_15() - { - if (_containerShape_15 != nullptr) { return _containerShape_15; } - const auto result = _containerShape_15 = _c.CreateContainerShape(); - // ShapeGroup: Ellipse 1 Offset:<196, 267> - result.Shapes().Append(SpriteShape_21()); - return result; - } - - // Layer aggregator - // Transforms for Dot1 - CompositionContainerShape ContainerShape_16() - { - if (_containerShape_16 != nullptr) { return _containerShape_16; } - const auto result = _containerShape_16 = _c.CreateContainerShape(); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // ShapeGroup: Ellipse 1 Offset:<196, 267> - result.Shapes().Append(SpriteShape_24()); - return result; - } - - // Layer aggregator - // Layer: S1-Y - CompositionContainerShape ContainerShape_17() - { - if (_containerShape_17 != nullptr) { return _containerShape_17; } - const auto result = _containerShape_17 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - const auto shapes = result.Shapes(); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_25()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_26()); - return result; - } - - // Layer aggregator - // Layer: S7 - CompositionContainerShape ContainerShape_18() - { - if (_containerShape_18 != nullptr) { return _containerShape_18; } - const auto result = _containerShape_18 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - const auto shapes = result.Shapes(); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_27()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_28()); - return result; - } - - // Layer aggregator - // Layer: S3-Y - CompositionContainerShape ContainerShape_19() - { - if (_containerShape_19 != nullptr) { return _containerShape_19; } - const auto result = _containerShape_19 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - const auto shapes = result.Shapes(); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_29()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_30()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_31()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_32()); - return result; - } - - // Layer aggregator - // Layer: S3-Y 2 - CompositionContainerShape ContainerShape_20() - { - if (_containerShape_20 != nullptr) { return _containerShape_20; } - const auto result = _containerShape_20 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - const auto shapes = result.Shapes(); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_33()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_34()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_35()); - return result; - } - - // Layer aggregator - // Layer: S3-Y 3 - CompositionContainerShape ContainerShape_21() - { - if (_containerShape_21 != nullptr) { return _containerShape_21; } - const auto result = _containerShape_21 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - const auto shapes = result.Shapes(); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_39()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_40()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_41()); - return result; - } - - // Layer aggregator - // Layer: S3-Y 4 - CompositionContainerShape ContainerShape_22() - { - if (_containerShape_22 != nullptr) { return _containerShape_22; } - const auto result = _containerShape_22 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - const auto shapes = result.Shapes(); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_42()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_43()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_44()); - return result; - } - - // - - Layer aggregator - // - Layer: O-Y - // ShapeGroup: Ellipse 1 Offset:<196, 267> - // Ellipse Path 1.EllipseGeometry - CompositionEllipseGeometry Ellipse_0_0() - { - if (_ellipse_0_0 != nullptr) { return _ellipse_0_0; } - const auto result = _ellipse_0_0 = _c.CreateEllipseGeometry(); - result.Center({ 0.800000012F, -0.5F }); - result.Radius({ 0.0F, 0.0F }); - return result; - } - - // - - Layer aggregator - // - Layer: O-Y - // ShapeGroup: Ellipse 1 Offset:<196, 267> - // Ellipse Path 1.EllipseGeometry - CompositionEllipseGeometry Ellipse_0_1() - { - if (_ellipse_0_1 != nullptr) { return _ellipse_0_1; } - const auto result = _ellipse_0_1 = _c.CreateEllipseGeometry(); - result.Center({ 0.800000012F, -0.5F }); - result.Radius({ 0.0F, 0.0F }); - return result; - } - - // - - - Layer aggregator - // - - Layer: Dot-Y - // - Transforms: Dot-Y - // ShapeGroup: Ellipse 1 Offset:<196, 267> - // Ellipse Path 1.EllipseGeometry - CompositionEllipseGeometry Ellipse_4p6() - { - const auto result = _c.CreateEllipseGeometry(); - result.Center({ 0.800000012F, -0.5F }); - result.Radius({ 4.5999999F, 4.5999999F }); - return result; - } - - // Ellipse Path 1.EllipseGeometry - CompositionEllipseGeometry Ellipse_4p7() - { - if (_ellipse_4p7 != nullptr) { return _ellipse_4p7; } - const auto result = _ellipse_4p7 = _c.CreateEllipseGeometry(); - result.Center({ 0.800000012F, -0.5F }); - result.Radius({ 4.69999981F, 4.69999981F }); - return result; - } - - CompositionPath Path_0() - { - if (_path_0 != nullptr) { return _path_0; } - const auto result = _path_0 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_00())); - return result; - } - - CompositionPath Path_1() - { - if (_path_1 != nullptr) { return _path_1; } - const auto result = _path_1 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_01())); - return result; - } - - CompositionPath Path_2() - { - if (_path_2 != nullptr) { return _path_2; } - const auto result = _path_2 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_02())); - return result; - } - - CompositionPath Path_3() - { - if (_path_3 != nullptr) { return _path_3; } - const auto result = _path_3 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_03())); - return result; - } - - CompositionPath Path_4() - { - if (_path_4 != nullptr) { return _path_4; } - const auto result = _path_4 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_04())); - return result; - } - - CompositionPath Path_5() - { - if (_path_5 != nullptr) { return _path_5; } - const auto result = _path_5 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_05())); - return result; - } - - CompositionPath Path_6() - { - if (_path_6 != nullptr) { return _path_6; } - const auto result = _path_6 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_06())); - return result; - } - - CompositionPath Path_7() - { - if (_path_7 != nullptr) { return _path_7; } - const auto result = _path_7 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_07())); - return result; - } - - CompositionPath Path_8() - { - if (_path_8 != nullptr) { return _path_8; } - const auto result = _path_8 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_08())); - return result; - } - - // - - Layer aggregator - // - Layer: E3-Y - // ShapeGroup: Group 1 Offset:<344.674, 261.877> - CompositionPathGeometry PathGeometry_00() - { - if (_pathGeometry_00 != nullptr) { return _pathGeometry_00; } - const auto result = _pathGeometry_00 = _c.CreatePathGeometry(Path_0()); - return result; - } - - // - - Layer aggregator - // - Layer: E3-B - // Transforms: E3-B Offset:<0.06500244, 0> - CompositionPathGeometry PathGeometry_01() - { - if (_pathGeometry_01 != nullptr) { return _pathGeometry_01; } - const auto result = _pathGeometry_01 = _c.CreatePathGeometry(Path_0()); - return result; - } - - // - - Layer aggregator - // - Layer: I-Y - // ShapeGroup: Group 6 Offset:<304.135, 282.409> - CompositionPathGeometry PathGeometry_02() - { - if (_pathGeometry_02 != nullptr) { return _pathGeometry_02; } - const auto result = _pathGeometry_02 = _c.CreatePathGeometry(Path_1()); - return result; - } - - // - - Layer aggregator - // - Layer: I-B - // Transforms: I-B - CompositionPathGeometry PathGeometry_03() - { - if (_pathGeometry_03 != nullptr) { return _pathGeometry_03; } - const auto result = _pathGeometry_03 = _c.CreatePathGeometry(Path_1()); - return result; - } - - // - - Layer aggregator - // - Layer: E2-Y - // ShapeGroup: Group 3 Offset:<331.664, 238.14> - CompositionPathGeometry PathGeometry_04() - { - if (_pathGeometry_04 != nullptr) { return _pathGeometry_04; } - const auto result = _pathGeometry_04 = _c.CreatePathGeometry(Path_2()); - return result; - } - - // - - Layer aggregator - // - Layer: E2-B - // Transforms: E2-B - CompositionPathGeometry PathGeometry_05() - { - if (_pathGeometry_05 != nullptr) { return _pathGeometry_05; } - const auto result = _pathGeometry_05 = _c.CreatePathGeometry(Path_2()); - return result; - } - - // - - Layer aggregator - // - Layer: E1-Y - // ShapeGroup: Group 2 Offset:<344.672, 214.842> - CompositionPathGeometry PathGeometry_06() - { - if (_pathGeometry_06 != nullptr) { return _pathGeometry_06; } - const auto result = _pathGeometry_06 = _c.CreatePathGeometry(Path_3()); - return result; - } - - // - - Layer aggregator - // - Layer: E1-B - // Transforms: E1-B - CompositionPathGeometry PathGeometry_07() - { - if (_pathGeometry_07 != nullptr) { return _pathGeometry_07; } - const auto result = _pathGeometry_07 = _c.CreatePathGeometry(Path_3()); - return result; - } - - CompositionPathGeometry PathGeometry_08() - { - if (_pathGeometry_08 != nullptr) { return _pathGeometry_08; } - const auto result = _pathGeometry_08 = _c.CreatePathGeometry(Path_4()); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 0.0F); - propertySet.InsertScalar(L"TStart", 0.0F); - BindProperty(_pathGeometry_08, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_08); - BindProperty(_pathGeometry_08, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_08); - return result; - } - - // - Layer aggregator - // Layer: T2b-Y - CompositionPathGeometry PathGeometry_09() - { - if (_pathGeometry_09 != nullptr) { return _pathGeometry_09; } - const auto result = _pathGeometry_09 = _c.CreatePathGeometry(Path_5()); - return result; - } - - // - Layer aggregator - // Layer: T2a-Y - CompositionPathGeometry PathGeometry_10() - { - if (_pathGeometry_10 != nullptr) { return _pathGeometry_10; } - const auto result = _pathGeometry_10 = _c.CreatePathGeometry(Path_6()); - return result; - } - - // - Layer aggregator - // Layer: T2b-B - CompositionPathGeometry PathGeometry_11() - { - if (_pathGeometry_11 != nullptr) { return _pathGeometry_11; } - const auto result = _pathGeometry_11 = _c.CreatePathGeometry(Path_5()); - return result; - } - - // - Layer aggregator - // Layer: T1b-Y - CompositionPathGeometry PathGeometry_12() - { - if (_pathGeometry_12 != nullptr) { return _pathGeometry_12; } - const auto result = _pathGeometry_12 = _c.CreatePathGeometry(Path_7()); - return result; - } - - // - Layer aggregator - // Layer: T1b-B - CompositionPathGeometry PathGeometry_13() - { - if (_pathGeometry_13 != nullptr) { return _pathGeometry_13; } - const auto result = _pathGeometry_13 = _c.CreatePathGeometry(Path_7()); - return result; - } - - CompositionPathGeometry PathGeometry_14() - { - if (_pathGeometry_14 != nullptr) { return _pathGeometry_14; } - const auto result = _pathGeometry_14 = _c.CreatePathGeometry(Path_4()); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 0.0F); - propertySet.InsertScalar(L"TStart", 0.0F); - BindProperty(_pathGeometry_14, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_14); - BindProperty(_pathGeometry_14, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_14); - return result; - } - - // - Layer aggregator - // Layer: T2a-B - CompositionPathGeometry PathGeometry_15() - { - if (_pathGeometry_15 != nullptr) { return _pathGeometry_15; } - const auto result = _pathGeometry_15 = _c.CreatePathGeometry(Path_6()); - return result; - } - - // - - Layer aggregator - // - Layer: T1a-B - // Transforms: T1a-B - CompositionPathGeometry PathGeometry_16() - { - if (_pathGeometry_16 != nullptr) { return _pathGeometry_16; } - const auto result = _pathGeometry_16 = _c.CreatePathGeometry(Path_4()); - result.TrimStart(0.248999998F); - return result; - } - - CompositionPathGeometry PathGeometry_17() - { - if (_pathGeometry_17 != nullptr) { return _pathGeometry_17; } - const auto result = _pathGeometry_17 = _c.CreatePathGeometry(Path_8()); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 0.810000002F); - propertySet.InsertScalar(L"TStart", 0.800000012F); - BindProperty(_pathGeometry_17, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_17); - BindProperty(_pathGeometry_17, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_17); - return result; - } - - CompositionPathGeometry PathGeometry_18() - { - if (_pathGeometry_18 != nullptr) { return _pathGeometry_18; } - const auto result = _pathGeometry_18 = _c.CreatePathGeometry(Path_8()); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 0.810000002F); - propertySet.InsertScalar(L"TStart", 0.800000012F); - BindProperty(_pathGeometry_18, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_18); - BindProperty(_pathGeometry_18, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_18); - return result; - } - - CompositionPathGeometry PathGeometry_19() - { - if (_pathGeometry_19 != nullptr) { return _pathGeometry_19; } - const auto result = _pathGeometry_19 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_09()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_19, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_19); - BindProperty(_pathGeometry_19, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_19); - return result; - } - - CompositionPathGeometry PathGeometry_20() - { - if (_pathGeometry_20 != nullptr) { return _pathGeometry_20; } - const auto result = _pathGeometry_20 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_10()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_20, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_20); - BindProperty(_pathGeometry_20, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_20); - return result; - } - - CompositionPathGeometry PathGeometry_21() - { - if (_pathGeometry_21 != nullptr) { return _pathGeometry_21; } - const auto result = _pathGeometry_21 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_11()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_21, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_21); - BindProperty(_pathGeometry_21, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_21); - return result; - } - - CompositionPathGeometry PathGeometry_22() - { - if (_pathGeometry_22 != nullptr) { return _pathGeometry_22; } - const auto result = _pathGeometry_22 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_12()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_22, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_22); - BindProperty(_pathGeometry_22, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_22); - return result; - } - - CompositionPathGeometry PathGeometry_23() - { - if (_pathGeometry_23 != nullptr) { return _pathGeometry_23; } - const auto result = _pathGeometry_23 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_13()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_23, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_23); - BindProperty(_pathGeometry_23, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_23); - return result; - } - - CompositionPathGeometry PathGeometry_24() - { - if (_pathGeometry_24 != nullptr) { return _pathGeometry_24; } - const auto result = _pathGeometry_24 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_14()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_24, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_24); - BindProperty(_pathGeometry_24, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_24); - return result; - } - - CompositionPathGeometry PathGeometry_25() - { - if (_pathGeometry_25 != nullptr) { return _pathGeometry_25; } - const auto result = _pathGeometry_25 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_15()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_25, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_25); - BindProperty(_pathGeometry_25, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_25); - return result; - } - - CompositionPathGeometry PathGeometry_26() - { - if (_pathGeometry_26 != nullptr) { return _pathGeometry_26; } - const auto result = _pathGeometry_26 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_16()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_26, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_26); - BindProperty(_pathGeometry_26, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_26); - return result; - } - - CompositionPathGeometry PathGeometry_27() - { - if (_pathGeometry_27 != nullptr) { return _pathGeometry_27; } - const auto result = _pathGeometry_27 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_17()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_27, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_27); - BindProperty(_pathGeometry_27, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_27); - return result; - } - - CompositionPathGeometry PathGeometry_28() - { - if (_pathGeometry_28 != nullptr) { return _pathGeometry_28; } - const auto result = _pathGeometry_28 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_18()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_28, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_28); - BindProperty(_pathGeometry_28, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_28); - return result; - } - - CompositionPathGeometry PathGeometry_29() - { - if (_pathGeometry_29 != nullptr) { return _pathGeometry_29; } - const auto result = _pathGeometry_29 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_19()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_29, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_29); - BindProperty(_pathGeometry_29, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_29); - return result; - } - - CompositionPathGeometry PathGeometry_30() - { - if (_pathGeometry_30 != nullptr) { return _pathGeometry_30; } - const auto result = _pathGeometry_30 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_20()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_30, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_30); - BindProperty(_pathGeometry_30, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_30); - return result; - } - - CompositionPathGeometry PathGeometry_31() - { - if (_pathGeometry_31 != nullptr) { return _pathGeometry_31; } - const auto result = _pathGeometry_31 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_21()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_31, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_31); - BindProperty(_pathGeometry_31, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_31); - return result; - } - - CompositionPathGeometry PathGeometry_32() - { - if (_pathGeometry_32 != nullptr) { return _pathGeometry_32; } - const auto result = _pathGeometry_32 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_22()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_32, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_32); - BindProperty(_pathGeometry_32, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_32); - return result; - } - - CompositionPathGeometry PathGeometry_33() - { - if (_pathGeometry_33 != nullptr) { return _pathGeometry_33; } - const auto result = _pathGeometry_33 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_23()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_33, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_33); - BindProperty(_pathGeometry_33, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_33); - return result; - } - - CompositionPathGeometry PathGeometry_34() - { - if (_pathGeometry_34 != nullptr) { return _pathGeometry_34; } - const auto result = _pathGeometry_34 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_24()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_34, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_34); - BindProperty(_pathGeometry_34, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_34); - return result; - } - - CompositionPathGeometry PathGeometry_35() - { - if (_pathGeometry_35 != nullptr) { return _pathGeometry_35; } - const auto result = _pathGeometry_35 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_25()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_35, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_35); - BindProperty(_pathGeometry_35, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_35); - return result; - } - - CompositionPathGeometry PathGeometry_36() - { - if (_pathGeometry_36 != nullptr) { return _pathGeometry_36; } - const auto result = _pathGeometry_36 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_26()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_36, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_36); - BindProperty(_pathGeometry_36, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_36); - return result; - } - - CompositionPathGeometry PathGeometry_37() - { - if (_pathGeometry_37 != nullptr) { return _pathGeometry_37; } - const auto result = _pathGeometry_37 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_27()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_37, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_37); - BindProperty(_pathGeometry_37, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_37); - return result; - } - - CompositionPathGeometry PathGeometry_38() - { - if (_pathGeometry_38 != nullptr) { return _pathGeometry_38; } - const auto result = _pathGeometry_38 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_28()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_38, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_38); - BindProperty(_pathGeometry_38, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_38); - return result; - } - - // - Layer aggregator - // Offset:<187.5, 333.5> - // Rectangle Path 1.RectangleGeometry - CompositionRectangleGeometry Rectangle_375x667() - { - const auto result = _c.CreateRectangleGeometry(); - result.Offset({ -187.5F, -333.5F }); - result.Size({ 375.0F, 667.0F }); - return result; - } - - // Layer aggregator - // Rectangle Path 1 - CompositionSpriteShape SpriteShape_00() - { - // Offset:<187.5, 333.5> - const auto geometry = Rectangle_375x667(); - const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 187.5F, 333.5F }, ColorBrush_AlmostDarkTurquoise_FF00D1C1());; - return result; - } - - // - - Layer aggregator - // - Layer: Dot-Y - // Transforms: Dot-Y - // Ellipse Path 1 - CompositionSpriteShape SpriteShape_01() - { - // Offset:<196, 267> - const auto geometry = Ellipse_4p6(); - const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F }, ColorBrush_White());; - return result; - } - - // - Layer aggregator - // Layer: E3-Y - // Path 1 - CompositionSpriteShape SpriteShape_02() - { - // Offset:<344.674, 261.877> - const auto result = CreateSpriteShape(PathGeometry_00(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.674011F, 261.877014F });; - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.56200027F); - return result; - } - - // - Layer aggregator - // Layer: E3-B - // Path 1 - CompositionSpriteShape SpriteShape_03() - { - // Offset:<344.739, 261.877> - const auto result = CreateSpriteShape(PathGeometry_01(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.739014F, 261.877014F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.56200027F); - return result; - } - - // - Layer aggregator - // Layer: I-Y - // Path 1 - CompositionSpriteShape SpriteShape_04() - { - // Offset:<304.135, 282.409> - const auto result = CreateSpriteShape(PathGeometry_02(), { 1.0F, 0.0F, 0.0F, 1.0F, 304.13501F, 282.408997F });; - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Square); - result.StrokeStartCap(CompositionStrokeCap::Square); - result.StrokeEndCap(CompositionStrokeCap::Square); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(8.39999962F); - return result; - } - - // - Layer aggregator - // Layer: I-B - // Path 1 - CompositionSpriteShape SpriteShape_05() - { - // Offset:<304.135, 282.409> - const auto result = CreateSpriteShape(PathGeometry_03(), { 1.0F, 0.0F, 0.0F, 1.0F, 304.13501F, 282.408997F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Square); - result.StrokeStartCap(CompositionStrokeCap::Square); - result.StrokeEndCap(CompositionStrokeCap::Square); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // - Layer aggregator - // Layer: E2-Y - // Path 1 - CompositionSpriteShape SpriteShape_06() - { - // Offset:<331.664, 238.14> - const auto result = CreateSpriteShape(PathGeometry_04(), { 1.0F, 0.0F, 0.0F, 1.0F, 331.664001F, 238.139999F });; - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(8.39999962F); - return result; - } - - // - Layer aggregator - // Layer: E2-B - // Path 1 - CompositionSpriteShape SpriteShape_07() - { - // Offset:<331.664, 238.14> - const auto result = CreateSpriteShape(PathGeometry_05(), { 1.0F, 0.0F, 0.0F, 1.0F, 331.664001F, 238.139999F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.56200027F); - return result; - } - - // - Layer aggregator - // Layer: E1-Y - // Path 1 - CompositionSpriteShape SpriteShape_08() - { - // Offset:<344.672, 214.842> - const auto result = CreateSpriteShape(PathGeometry_06(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.671997F, 214.841995F });; - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(8.39999962F); - return result; - } - - // - Layer aggregator - // Layer: E1-B - // Path 1 - CompositionSpriteShape SpriteShape_09() - { - // Offset:<344.672, 214.842> - const auto result = CreateSpriteShape(PathGeometry_07(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.671997F, 214.841995F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.56200027F); - return result; - } - - // - Layer aggregator - // Layer: T1a-Y - // Path 1 - CompositionSpriteShape SpriteShape_10() - { - // Offset:<227.677, 234.375> - const auto result = CreateSpriteShape(PathGeometry_08(), { 1.0F, 0.0F, 0.0F, 1.0F, 227.677002F, 234.375F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(8.39999962F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_11() - { - // Offset:<-56.5, 83.5> - if (_spriteShape_11 != nullptr) { return _spriteShape_11; } - const auto result = _spriteShape_11 = CreateSpriteShape(PathGeometry_09(), { 1.0F, 0.0F, 0.0F, 1.0F, -56.5F, 83.5F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_12() - { - // Offset:<221.198, 330.758> - if (_spriteShape_12 != nullptr) { return _spriteShape_12; } - const auto result = _spriteShape_12 = CreateSpriteShape(PathGeometry_10(), { 1.0F, 0.0F, 0.0F, 1.0F, 221.197998F, 330.757996F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Square); - result.StrokeStartCap(CompositionStrokeCap::Square); - result.StrokeEndCap(CompositionStrokeCap::Square); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_13() - { - // Offset:<-56.5, 83.5> - if (_spriteShape_13 != nullptr) { return _spriteShape_13; } - const auto result = _spriteShape_13 = CreateSpriteShape(PathGeometry_11(), { 1.0F, 0.0F, 0.0F, 1.0F, -56.5F, 83.5F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_14() - { - // Offset:<186.256, 349.081> - if (_spriteShape_14 != nullptr) { return _spriteShape_14; } - const auto result = _spriteShape_14 = CreateSpriteShape(PathGeometry_12(), { 1.0F, 0.0F, 0.0F, 1.0F, 186.255997F, 349.080994F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeLineJoin(CompositionStrokeLineJoin::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(8.39999962F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_15() - { - // Offset:<186.256, 349.081> - if (_spriteShape_15 != nullptr) { return _spriteShape_15; } - const auto result = _spriteShape_15 = CreateSpriteShape(PathGeometry_13(), { 1.0F, 0.0F, 0.0F, 1.0F, 186.255997F, 349.080994F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeLineJoin(CompositionStrokeLineJoin::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // - Layer aggregator - // Layer: O-Y - // Ellipse Path 1 - CompositionSpriteShape SpriteShape_16() - { - // Offset:<196, 267> - const auto result = CreateSpriteShape(Ellipse_0_0(), { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeThickness(8.80000019F); - return result; - } - - // - Layer aggregator - // Layer: O-Y - // Ellipse Path 1 - CompositionSpriteShape SpriteShape_17() - { - // Offset:<196, 267> - const auto result = CreateSpriteShape(Ellipse_0_1(), { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F });; - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeThickness(9.19400024F); - return result; - } - - // - Layer aggregator - // Layer: T1a-Y 2 - // Path 1 - CompositionSpriteShape SpriteShape_18() - { - // Offset:<227.677, 234.375> - const auto result = CreateSpriteShape(PathGeometry_14(), { 1.0F, 0.0F, 0.0F, 1.0F, 227.677002F, 234.375F });; - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(8.39999962F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_19() - { - // Offset:<221.198, 330.758> - if (_spriteShape_19 != nullptr) { return _spriteShape_19; } - const auto result = _spriteShape_19 = CreateSpriteShape(PathGeometry_15(), { 1.0F, 0.0F, 0.0F, 1.0F, 221.197998F, 330.757996F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Square); - result.StrokeStartCap(CompositionStrokeCap::Square); - result.StrokeEndCap(CompositionStrokeCap::Square); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // - Layer aggregator - // Layer: T1a-B - // Path 1 - CompositionSpriteShape SpriteShape_20() - { - // Offset:<227.677, 234.375> - const auto result = CreateSpriteShape(PathGeometry_16(), { 1.0F, 0.0F, 0.0F, 1.0F, 227.677002F, 234.375F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // - - Layer aggregator - // - Layer: Dot-Y - // Transforms: Dot-Y - // Ellipse Path 1 - CompositionSpriteShape SpriteShape_21() - { - // Offset:<196, 267> - const auto geometry = Ellipse_4p7(); - const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F }, ColorBrush_White());; - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_22() - { - // Offset:<109.52901, 354.143> - if (_spriteShape_22 != nullptr) { return _spriteShape_22; } - const auto result = _spriteShape_22 = CreateSpriteShape(PathGeometry_17(), { 1.0F, 0.0F, 0.0F, 1.0F, 109.529007F, 354.143005F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(8.39999962F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_23() - { - // Offset:<109.52901, 354.143> - if (_spriteShape_23 != nullptr) { return _spriteShape_23; } - const auto result = _spriteShape_23 = CreateSpriteShape(PathGeometry_18(), { 1.0F, 0.0F, 0.0F, 1.0F, 109.529007F, 354.143005F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // - Layer aggregator - // Layer: Dot1 - // Ellipse Path 1 - CompositionSpriteShape SpriteShape_24() - { - // Offset:<196, 267> - const auto geometry = Ellipse_4p7(); - const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F }, ColorBrush_White());; - return result; - } - - // - Layer aggregator - // Layer: S1-Y - // Path 1 - CompositionSpriteShape SpriteShape_25() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_19(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(1.5F); - return result; - } - - // - Layer aggregator - // Layer: S1-Y - // Path 1 - CompositionSpriteShape SpriteShape_26() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_20(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(1.5F); - return result; - } - - // - Layer aggregator - // Layer: S7 - // Path 1 - CompositionSpriteShape SpriteShape_27() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_21(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(1.5F); - return result; - } - - // - Layer aggregator - // Layer: S7 - // Path 1 - CompositionSpriteShape SpriteShape_28() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_22(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(1.5F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y - // Path 1 - CompositionSpriteShape SpriteShape_29() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_23(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y - // Path 1 - CompositionSpriteShape SpriteShape_30() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_24(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y - // Path 1 - CompositionSpriteShape SpriteShape_31() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_25(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y - // Path 1 - CompositionSpriteShape SpriteShape_32() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_26(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 2 - // Path 1 - CompositionSpriteShape SpriteShape_33() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_27(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 2 - // Path 1 - CompositionSpriteShape SpriteShape_34() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_28(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 2 - // Path 1 - CompositionSpriteShape SpriteShape_35() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_29(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_36() - { - // Offset:<179.5, 333.5> - if (_spriteShape_36 != nullptr) { return _spriteShape_36; } - const auto result = _spriteShape_36 = CreateSpriteShape(PathGeometry_30(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(1.5F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_37() - { - // Offset:<179.5, 333.5> - if (_spriteShape_37 != nullptr) { return _spriteShape_37; } - const auto result = _spriteShape_37 = CreateSpriteShape(PathGeometry_31(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(1.5F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_38() - { - // Offset:<179.5, 333.5> - if (_spriteShape_38 != nullptr) { return _spriteShape_38; } - const auto result = _spriteShape_38 = CreateSpriteShape(PathGeometry_32(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(1.5F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 3 - // Path 1 - CompositionSpriteShape SpriteShape_39() - { - // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees - const auto result = CreateSpriteShape(PathGeometry_33(), { -0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 3 - // Path 1 - CompositionSpriteShape SpriteShape_40() - { - // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees - const auto result = CreateSpriteShape(PathGeometry_34(), { -0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 3 - // Path 1 - CompositionSpriteShape SpriteShape_41() - { - // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees - const auto result = CreateSpriteShape(PathGeometry_35(), { -0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 4 - // Path 1 - CompositionSpriteShape SpriteShape_42() - { - // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, - // Scale:<0.99999994, 0.99999994> - const auto result = CreateSpriteShape(PathGeometry_36(), { 0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 4 - // Path 1 - CompositionSpriteShape SpriteShape_43() - { - // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, - // Scale:<0.99999994, 0.99999994> - const auto result = CreateSpriteShape(PathGeometry_37(), { 0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 4 - // Path 1 - CompositionSpriteShape SpriteShape_44() - { - // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, - // Scale:<0.99999994, 0.99999994> - const auto result = CreateSpriteShape(PathGeometry_38(), { 0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // The root of the composition. - ContainerVisual Root() - { - if (_root != nullptr) { return _root; } - const auto result = _root = _c.CreateContainerVisual(); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"Progress", 0.0F); - propertySet.InsertScalar(L"t0", 0.0F); - // Layer aggregator - result.Children().InsertAtTop(ShapeVisual_0()); - return result; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_0() - { - return (_cubicBezierEasingFunction_0 == nullptr) - ? _cubicBezierEasingFunction_0 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.180000007F, 1.0F }) - : _cubicBezierEasingFunction_0; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_1() - { - return (_cubicBezierEasingFunction_1 == nullptr) - ? _cubicBezierEasingFunction_1 = _c.CreateCubicBezierEasingFunction({ 0.819999993F, 0.0F }, { 0.833000004F, 0.833000004F }) - : _cubicBezierEasingFunction_1; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_2() - { - return (_cubicBezierEasingFunction_2 == nullptr) - ? _cubicBezierEasingFunction_2 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.833000004F, 0.833000004F }) - : _cubicBezierEasingFunction_2; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_3() - { - return (_cubicBezierEasingFunction_3 == nullptr) - ? _cubicBezierEasingFunction_3 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.666999996F, 1.0F }) - : _cubicBezierEasingFunction_3; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_4() - { - return (_cubicBezierEasingFunction_4 == nullptr) - ? _cubicBezierEasingFunction_4 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.119999997F, 1.0F }) - : _cubicBezierEasingFunction_4; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_5() - { - return (_cubicBezierEasingFunction_5 == nullptr) - ? _cubicBezierEasingFunction_5 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.0F }, { 0.119999997F, 1.0F }) - : _cubicBezierEasingFunction_5; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_6() - { - return (_cubicBezierEasingFunction_6 == nullptr) - ? _cubicBezierEasingFunction_6 = _c.CreateCubicBezierEasingFunction({ 0.300999999F, 0.0F }, { 0.666999996F, 1.0F }) - : _cubicBezierEasingFunction_6; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_7() - { - return (_cubicBezierEasingFunction_7 == nullptr) - ? _cubicBezierEasingFunction_7 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.0599999987F, 1.0F }) - : _cubicBezierEasingFunction_7; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_8() - { - return (_cubicBezierEasingFunction_8 == nullptr) - ? _cubicBezierEasingFunction_8 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.337000012F, 1.0F }) - : _cubicBezierEasingFunction_8; - } - - ScalarKeyFrameAnimation t0ScalarAnimation_0_to_1() - { - // Frame 35.26. - const auto result = CreateScalarKeyFrameAnimation(0.196966499F, 0.0F, StepThenHoldEasingFunction()); - result.SetReferenceParameter(L"_", _root); - // Frame 44. - result.InsertKeyFrame(0.245810047F, 1.0F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.197999999F }, { 0.638000011F, 1.0F })); - // Frame 44. - result.InsertKeyFrame(0.245810062F, 0.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675946F, 1.0F, _c.CreateCubicBezierEasingFunction({ 0.523000002F, 0.0F }, { 0.795000017F, 1.0F })); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_0_to_1_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); - // Frame 74. - result.InsertKeyFrame(0.413407832F, 1.0F, CubicBezierEasingFunction_6()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_0_to_1_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 1.0F, CubicBezierEasingFunction_6()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_0p81_to_0p734_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.810000002F, StepThenHoldEasingFunction()); - // Frame 16. - result.InsertKeyFrame(0.0893854722F, 0.810000002F, HoldThenStepEasingFunction()); - // Frame 27. - result.InsertKeyFrame(0.150837988F, 0.734000027F, CubicBezierEasingFunction_8()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_0p81_to_0p734_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.810000002F, StepThenHoldEasingFunction()); - // Frame 18. - result.InsertKeyFrame(0.100558661F, 0.810000002F, HoldThenStepEasingFunction()); - // Frame 29. - result.InsertKeyFrame(0.162011176F, 0.734000027F, CubicBezierEasingFunction_8()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_00() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 29. - result.InsertKeyFrame(0.162011176F, 1.0F, HoldThenStepEasingFunction()); - // Frame 33. - result.InsertKeyFrame(0.184357539F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 36. - result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_01() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 29. - result.InsertKeyFrame(0.162011176F, 1.0F, HoldThenStepEasingFunction()); - // Frame 33. - result.InsertKeyFrame(0.184357539F, 0.690559983F, CubicBezierEasingFunction_2()); - // Frame 36. - result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_02() - { - // Frame 0. - if (_tEndScalarAnimation_1_to_0_02 != nullptr) { return _tEndScalarAnimation_1_to_0_02; } - const auto result = _tEndScalarAnimation_1_to_0_02 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 65. - result.InsertKeyFrame(0.363128483F, 1.0F, HoldThenStepEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_03() - { - // Frame 0. - if (_tEndScalarAnimation_1_to_0_03 != nullptr) { return _tEndScalarAnimation_1_to_0_03; } - const auto result = _tEndScalarAnimation_1_to_0_03 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_04() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.758560002F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_05() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.704559982F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_06() - { - // Frame 0. - if (_tEndScalarAnimation_1_to_0_06 != nullptr) { return _tEndScalarAnimation_1_to_0_06; } - const auto result = _tEndScalarAnimation_1_to_0_06 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 1.0F, HoldThenStepEasingFunction()); - // Frame 100. - result.InsertKeyFrame(0.558659196F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_07() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 1.0F, HoldThenStepEasingFunction()); - // Frame 100. - result.InsertKeyFrame(0.558659196F, 0.758560002F, CubicBezierEasingFunction_2()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_08() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 80. - result.InsertKeyFrame(0.446927369F, 1.0F, HoldThenStepEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 87. - result.InsertKeyFrame(0.486033529F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_09() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, 1.0F, HoldThenStepEasingFunction()); - // Frame 87. - result.InsertKeyFrame(0.486033529F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_10() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 1.0F, HoldThenStepEasingFunction()); - // Frame 90. - result.InsertKeyFrame(0.502793312F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 94. - result.InsertKeyFrame(0.525139689F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_11() - { - // Frame 0. - if (_tEndScalarAnimation_1_to_0_11 != nullptr) { return _tEndScalarAnimation_1_to_0_11; } - const auto result = _tEndScalarAnimation_1_to_0_11 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 1.0F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_12() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 1.0F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.758560002F, CubicBezierEasingFunction_2()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_13() - { - // Frame 0. - if (_tEndScalarAnimation_1_to_0_13 != nullptr) { return _tEndScalarAnimation_1_to_0_13; } - const auto result = _tEndScalarAnimation_1_to_0_13 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 1.0F, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_14() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 1.0F, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.758560002F, CubicBezierEasingFunction_2()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E2-Y - // - ShapeGroup: Group 3 Offset:<331.664, 238.14> - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p43_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.0F, HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, 0.430000007F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E2-B - // - Transforms: E2-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p43_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 86. - result.InsertKeyFrame(0.480446935F, 0.0F, HoldThenStepEasingFunction()); - // Frame 95. - result.InsertKeyFrame(0.530726254F, 0.430000007F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E3-Y - // - ShapeGroup: Group 1 Offset:<344.674, 261.877> - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p316_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, 0.0F, HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, 0.316000015F, CubicBezierEasingFunction_2()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E3-B - // - Transforms: E3-B Offset:<0.06500244, 0> - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p316_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, 0.0F, HoldThenStepEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 0.316000015F, CubicBezierEasingFunction_2()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E1-Y - // - ShapeGroup: Group 2 Offset:<344.672, 214.842> - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p375_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.0F, HoldThenStepEasingFunction()); - // Frame 88. - result.InsertKeyFrame(0.491620123F, 0.375F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E1-B - // - Transforms: E1-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p375_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, 0.0F, HoldThenStepEasingFunction()); - // Frame 93. - result.InsertKeyFrame(0.519553065F, 0.375F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: I-Y - // - ShapeGroup: Group 6 Offset:<304.135, 282.409> - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p457_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.0F, HoldThenStepEasingFunction()); - // Frame 88. - result.InsertKeyFrame(0.491620123F, 0.456999987F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: I-B - // - Transforms: I-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p457_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 81. - result.InsertKeyFrame(0.452513963F, 0.0F, HoldThenStepEasingFunction()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0.456999987F, CubicBezierEasingFunction_4()); - return result; - } - - // - - Layer aggregator - // - Layer: T2a-Y - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p5_to_1_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); - // Frame 72. - result.InsertKeyFrame(0.402234644F, 0.5F, HoldThenStepEasingFunction()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 1.0F, CubicBezierEasingFunction_7()); - return result; - } - - // - - Layer aggregator - // - Layer: T2a-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p5_to_1_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.5F, HoldThenStepEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 1.0F, CubicBezierEasingFunction_7()); - return result; - } - - // - - Layer aggregator - // - Layer: T1b-Y - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p117_to_1_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.116999999F, StepThenHoldEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, 0.116999999F, HoldThenStepEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 1.0F, CubicBezierEasingFunction_2()); - return result; - } - - // - - Layer aggregator - // - Layer: T1b-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p117_to_1_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.116999999F, StepThenHoldEasingFunction()); - // Frame 81. - result.InsertKeyFrame(0.452513963F, 0.116999999F, HoldThenStepEasingFunction()); - // Frame 88. - result.InsertKeyFrame(0.491620123F, 1.0F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.209999993F, 1.0F })); - return result; - } - - // - - - Layer aggregator - // - - Layer: T1a-B - // - Transforms: T1a-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p249_to_0p891() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.248999998F, StepThenHoldEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, 0.248999998F, HoldThenStepEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, 0.890999973F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.672999978F, 1.0F })); - return result; - } - - // - - Layer aggregator - // - Layer: T2b-Y - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p411_to_0p665_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.411000013F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 0.411000013F, HoldThenStepEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 0.665000021F, CubicBezierEasingFunction_4()); - return result; - } - - // - - Layer aggregator - // - Layer: T2b-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p411_to_0p665_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.411000013F, StepThenHoldEasingFunction()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.411000013F, HoldThenStepEasingFunction()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0.665000021F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: O-Y - // - ShapeGroup: Ellipse 1 Offset:<196, 267> - // Ellipse Path 1.EllipseGeometry - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_1_to_0p88() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); - // Frame 63. - result.InsertKeyFrame(0.351955295F, 0.879999995F, CubicBezierEasingFunction_2()); - return result; - } - - // - - - Layer aggregator - // - - Layer: O-Y - // - ShapeGroup: Ellipse 1 Offset:<196, 267> - // Ellipse Path 1.EllipseGeometry - // TrimStart - ScalarKeyFrameAnimation TrimStartScalarAnimation_0_to_0p399() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); - // Frame 63. - result.InsertKeyFrame(0.351955295F, 0.300000012F, CubicBezierEasingFunction_2()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0.398999989F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 1.0F }, { 0.432000011F, 1.0F })); - return result; - } - - // - - Layer aggregator - // - Layer: T2a-Y - // TrimStart - ScalarKeyFrameAnimation TrimStartScalarAnimation_0p5_to_0_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); - // Frame 72. - result.InsertKeyFrame(0.402234644F, 0.5F, HoldThenStepEasingFunction()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_7()); - return result; - } - - // - - Layer aggregator - // - Layer: T2a-B - // TrimStart - ScalarKeyFrameAnimation TrimStartScalarAnimation_0p5_to_0_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.5F, HoldThenStepEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 0.0F, CubicBezierEasingFunction_7()); - return result; - } - - // - - Layer aggregator - // - Layer: T2b-Y - // TrimStart - ScalarKeyFrameAnimation TrimStartScalarAnimation_0p29_to_0_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.289999992F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 0.289999992F, HoldThenStepEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 0.0F, CubicBezierEasingFunction_4()); - return result; - } - - // - - Layer aggregator - // - Layer: T2b-B - // TrimStart - ScalarKeyFrameAnimation TrimStartScalarAnimation_0p29_to_0_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.289999992F, StepThenHoldEasingFunction()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.289999992F, HoldThenStepEasingFunction()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0.0F, CubicBezierEasingFunction_4()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0_to_0p249() - { - // Frame 0. - if (_tStartScalarAnimation_0_to_0p249 != nullptr) { return _tStartScalarAnimation_0_to_0p249; } - const auto result = _tStartScalarAnimation_0_to_0p249 = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, 0.248999998F, _c.CreateCubicBezierEasingFunction({ 0.300999999F, 0.0F }, { 0.833000004F, 1.0F })); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p8_to_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.800000012F, StepThenHoldEasingFunction()); - // Frame 16. - result.InsertKeyFrame(0.0893854722F, 0.800000012F, HoldThenStepEasingFunction()); - // Frame 20. - result.InsertKeyFrame(0.111731842F, 0.5F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.703000009F, 0.856999993F })); - // Frame 28. - result.InsertKeyFrame(0.156424582F, 0.0F, _c.CreateCubicBezierEasingFunction({ 0.333000004F, 0.202000007F }, { 0.938000023F, 1.0F })); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p8_to_0p3() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.800000012F, StepThenHoldEasingFunction()); - // Frame 18. - result.InsertKeyFrame(0.100558661F, 0.800000012F, HoldThenStepEasingFunction()); - // Frame 23. - result.InsertKeyFrame(0.128491625F, 0.5F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.703000009F, 0.82099998F })); - // Frame 55. - result.InsertKeyFrame(0.30726257F, 0.300000012F, _c.CreateCubicBezierEasingFunction({ 0.0370000005F, 0.167999998F }, { 0.263000011F, 1.0F })); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_00() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 29. - result.InsertKeyFrame(0.162011176F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 33. - result.InsertKeyFrame(0.184357539F, 0.375330001F, CubicBezierEasingFunction_2()); - // Frame 36. - result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_01() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 29. - result.InsertKeyFrame(0.162011176F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 33. - result.InsertKeyFrame(0.184357539F, 0.253329992F, CubicBezierEasingFunction_2()); - // Frame 36. - result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_02() - { - // Frame 0. - if (_tStartScalarAnimation_0p87_to_0_02 != nullptr) { return _tStartScalarAnimation_0p87_to_0_02; } - const auto result = _tStartScalarAnimation_0p87_to_0_02 = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 65. - result.InsertKeyFrame(0.363128483F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, 0.212329999F, CubicBezierEasingFunction_2()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_03() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.421330005F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_04() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.438329995F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_05() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.506330013F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_06() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.439330012F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_07() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 100. - result.InsertKeyFrame(0.558659196F, 0.421330005F, CubicBezierEasingFunction_2()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_08() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 100. - result.InsertKeyFrame(0.558659196F, 0.438329995F, CubicBezierEasingFunction_2()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_09() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 100. - result.InsertKeyFrame(0.558659196F, 0.506330013F, CubicBezierEasingFunction_2()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_10() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 80. - result.InsertKeyFrame(0.446927369F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.212329999F, CubicBezierEasingFunction_2()); - // Frame 87. - result.InsertKeyFrame(0.486033529F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_11() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 87. - result.InsertKeyFrame(0.486033529F, 0.212329999F, CubicBezierEasingFunction_2()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_12() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 90. - result.InsertKeyFrame(0.502793312F, 0.212329999F, CubicBezierEasingFunction_2()); - // Frame 94. - result.InsertKeyFrame(0.525139689F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_13() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.421330005F, CubicBezierEasingFunction_2()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_14() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.438329995F, CubicBezierEasingFunction_2()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_15() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.506330013F, CubicBezierEasingFunction_2()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_16() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.421330005F, CubicBezierEasingFunction_2()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_17() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.438329995F, CubicBezierEasingFunction_2()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_18() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.506330013F, CubicBezierEasingFunction_2()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // Layer aggregator - ShapeVisual ShapeVisual_0() - { - const auto result = _c.CreateShapeVisual(); - result.Size({ 375.0F, 667.0F }); - const auto shapes = result.Shapes(); - // Offset:<187.5, 333.5> - shapes.Append(SpriteShape_00()); - // Layer: Dot-Y - shapes.Append(ContainerShape_00()); - // Layer: E3-Y - shapes.Append(ContainerShape_02()); - // Layer: E3-B - shapes.Append(ContainerShape_03()); - // Layer: I-Y - shapes.Append(ContainerShape_04()); - // Layer: I-B - shapes.Append(ContainerShape_05()); - // Layer: E2-Y - shapes.Append(ContainerShape_06()); - // Layer: E2-B - shapes.Append(ContainerShape_07()); - // Layer: E1-Y - shapes.Append(ContainerShape_08()); - // Layer: E1-B - shapes.Append(ContainerShape_09()); - // Layer: T1a-Y - shapes.Append(ContainerShape_10()); - // Layer: T2b-Y - shapes.Append(SpriteShape_11()); - // Layer: T2a-Y - shapes.Append(SpriteShape_12()); - // Layer: T2b-B - shapes.Append(SpriteShape_13()); - // Layer: T1b-Y - shapes.Append(SpriteShape_14()); - // Layer: T1b-B - shapes.Append(SpriteShape_15()); - // Layer: O-Y - shapes.Append(ContainerShape_11()); - // Layer: T1a-Y 2 - shapes.Append(ContainerShape_12()); - // Layer: T2a-B - shapes.Append(SpriteShape_19()); - // Layer: T1a-B - shapes.Append(ContainerShape_13()); - // Layer: Dot-Y - shapes.Append(ContainerShape_14()); - // Layer: L-Y - shapes.Append(SpriteShape_22()); - // Layer: L-B - shapes.Append(SpriteShape_23()); - // Layer: Dot1 - shapes.Append(ContainerShape_16()); - // Layer: S1-Y - shapes.Append(ContainerShape_17()); - // Layer: S7 - shapes.Append(ContainerShape_18()); - // Layer: S3-Y - shapes.Append(ContainerShape_19()); - // Layer: S3-Y 2 - shapes.Append(ContainerShape_20()); - // Layer: S11 - shapes.Append(SpriteShape_36()); - // Layer: S12 - shapes.Append(SpriteShape_37()); - // Layer: S13 - shapes.Append(SpriteShape_38()); - // Layer: S3-Y 3 - shapes.Append(ContainerShape_21()); - // Layer: S3-Y 4 - shapes.Append(ContainerShape_22()); - return result; - } - - StepEasingFunction HoldThenStepEasingFunction() - { - if (_holdThenStepEasingFunction != nullptr) { return _holdThenStepEasingFunction; } - const auto result = _holdThenStepEasingFunction = _c.CreateStepEasingFunction(); - result.IsFinalStepSingleFrame(true); - return result; - } - - StepEasingFunction StepThenHoldEasingFunction() - { - if (_stepThenHoldEasingFunction != nullptr) { return _stepThenHoldEasingFunction; } - const auto result = _stepThenHoldEasingFunction = _c.CreateStepEasingFunction(); - result.IsInitialStepSingleFrame(true); - return result; - } - - // - - Layer aggregator - // - Layer: Dot-Y - // Transforms: Dot-Y - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_00() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { -153.528F, -206.753998F }, StepThenHoldEasingFunction()); - // Frame 96. - result.InsertKeyFrame(0.536312878F, { -153.528F, -206.753998F }, HoldThenStepEasingFunction()); - // Frame 108. - result.InsertKeyFrame(0.603351951F, { -134.278F, -206.753998F }, _c.CreateCubicBezierEasingFunction({ 0.0F, 0.0F }, { 0.0F, 0.811999977F })); - // Frame 115. - result.InsertKeyFrame(0.642458081F, { -133.028F, -206.753998F }, _c.CreateCubicBezierEasingFunction({ 0.389999986F, 0.707000017F }, { 0.708000004F, 1.0F })); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_01() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 104.781998F, -2.52699995F }, StepThenHoldEasingFunction()); - // Frame 96. - result.InsertKeyFrame(0.536312878F, { 104.781998F, -2.52699995F }, HoldThenStepEasingFunction()); - // Frame 99. - result.InsertKeyFrame(0.553072631F, { 104.781998F, -4.52699995F }, CubicBezierEasingFunction_0()); - // Frame 102. - result.InsertKeyFrame(0.569832385F, { 104.781998F, -2.52699995F }, CubicBezierEasingFunction_1()); - // Frame 105. - result.InsertKeyFrame(0.586592197F, { 104.781998F, -3.09100008F }, CubicBezierEasingFunction_0()); - // Frame 108. - result.InsertKeyFrame(0.603351951F, { 104.781998F, -2.52699995F }, CubicBezierEasingFunction_1()); - return result; - } - - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_02() - { - // Frame 0. - if (_offsetVector2Animation_02 != nullptr) { return _offsetVector2Animation_02; } - const auto result = _offsetVector2Animation_02 = CreateVector2KeyFrameAnimation(0.0F, { -225.957001F, -204.322006F }, StepThenHoldEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, { -225.957001F, -204.322006F }, HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, { -207.957001F, -204.322006F }, CubicBezierEasingFunction_3()); - // Frame 96. - result.InsertKeyFrame(0.536312878F, { -210.957001F, -204.322006F }, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.0F }, { 0.666999996F, 1.0F })); - return result; - } - - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_03() - { - // Frame 0. - if (_offsetVector2Animation_03 != nullptr) { return _offsetVector2Animation_03; } - const auto result = _offsetVector2Animation_03 = CreateVector2KeyFrameAnimation(0.0F, { -210.207993F, -219.320999F }, StepThenHoldEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, { -210.207993F, -219.320999F }, HoldThenStepEasingFunction()); - // Frame 88. - result.InsertKeyFrame(0.491620123F, { -211.175995F, -199.352997F }, CubicBezierEasingFunction_4()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, { -210.957993F, -204.320999F }, CubicBezierEasingFunction_5()); - return result; - } - - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_04() - { - // Frame 0. - if (_offsetVector2Animation_04 != nullptr) { return _offsetVector2Animation_04; } - const auto result = _offsetVector2Animation_04 = CreateVector2KeyFrameAnimation(0.0F, { -222.957993F, -204.322006F }, StepThenHoldEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, { -222.957993F, -204.322006F }, HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, { -210.957993F, -204.322006F }, CubicBezierEasingFunction_4()); - return result; - } - - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_05() - { - // Frame 0. - if (_offsetVector2Animation_05 != nullptr) { return _offsetVector2Animation_05; } - const auto result = _offsetVector2Animation_05 = CreateVector2KeyFrameAnimation(0.0F, { -230.957001F, -205.695999F }, StepThenHoldEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, { -230.957001F, -205.695999F }, HoldThenStepEasingFunction()); - // Frame 88. - result.InsertKeyFrame(0.491620123F, { -206.957001F, -205.695999F }, CubicBezierEasingFunction_4()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, { -210.957001F, -205.695999F }, CubicBezierEasingFunction_5()); - return result; - } - - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_06() - { - // Frame 0. - if (_offsetVector2Animation_06 != nullptr) { return _offsetVector2Animation_06; } - const auto result = _offsetVector2Animation_06 = CreateVector2KeyFrameAnimation(0.0F, { -210.957001F, -201.322006F }, StepThenHoldEasingFunction()); - // Frame 56. - result.InsertKeyFrame(0.312849164F, { -210.957001F, -201.322006F }, HoldThenStepEasingFunction()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, { -210.957001F, -204.322006F }, CubicBezierEasingFunction_3()); - return result; - } - - // - Layer aggregator - // Layer: O-Y - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_07() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { -259.583008F, -193.447006F }, StepThenHoldEasingFunction()); - result.SetReferenceParameter(L"_", _root); - // Frame 31. - result.InsertKeyFrame(0.17318435F, { -259.583008F, -193.447006F }, HoldThenStepEasingFunction()); - // Frame 35.26. - result.InsertKeyFrame(0.196966484F, { -250.582993F, -258.946991F }, CubicBezierEasingFunction_2()); - // Frame 44. - result.InsertExpressionKeyFrame(0.245810047F, L"Pow(1-_.t0,3)*Vector2(-250.583,-258.947)+(3*Square(1-_.t0)*_.t0*Vector2(-250.583,-258.947))+(3*(1-_.t0)*Square(_.t0)*Vector2(-249.6143,-337.5837))+(Pow(_.t0,3)*Vector2(-230.458,-339.322))", StepThenHoldEasingFunction()); - // Frame 54. - result.InsertExpressionKeyFrame(0.301675946F, L"Pow(1-_.t0,3)*Vector2(-230.458,-339.322)+(3*Square(1-_.t0)*_.t0*Vector2(-214.2505,-340.7927))+(3*(1-_.t0)*Square(_.t0)*Vector2(-210.958,-164.322))+(Pow(_.t0,3)*Vector2(-210.958,-164.322))", StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, { -210.957993F, -164.322006F }, StepThenHoldEasingFunction()); - // Frame 63. - result.InsertKeyFrame(0.351955295F, { -210.957993F, -207.322006F }, _c.CreateCubicBezierEasingFunction({ 0.180000007F, 0.0F }, { 0.34799999F, 1.0F })); - // Frame 73. - result.InsertKeyFrame(0.407821238F, { -210.957993F, -204.322006F }, _c.CreateCubicBezierEasingFunction({ 0.693000019F, 0.0F }, { 0.270000011F, 1.0F })); - return result; - } - - // - - Layer aggregator - // - Layer: Dot-Y - // Transforms: Dot-Y - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_08() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { -156.916F, -206.503998F }, StepThenHoldEasingFunction()); - // Frame 28. - result.InsertKeyFrame(0.156424582F, { -156.916F, -206.503998F }, HoldThenStepEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, { -117.416F, -206.503998F }, CubicBezierEasingFunction_2()); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_09() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { -93.6669998F, -51.8180008F }, StepThenHoldEasingFunction()); - // Frame 28. - result.InsertKeyFrame(0.156424582F, { -93.6669998F, -51.8180008F }, HoldThenStepEasingFunction()); - // Frame 40. - result.InsertKeyFrame(0.223463684F, { -93.6669998F, -132.817993F }, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.25999999F, 1.0F })); - // Frame 54. - result.InsertKeyFrame(0.301675975F, { -93.6669998F, 42.0569992F }, _c.CreateCubicBezierEasingFunction({ 0.74000001F, 0.0F }, { 0.833000004F, 0.833000004F })); - return result; - } - - // - Layer aggregator - // Layer: Dot1 - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_10() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 98.9800034F, -157.509995F }, HoldThenStepEasingFunction()); - // Frame 18.69. - result.InsertKeyFrame(0.104395606F, { -161.020004F, -157.509995F }, _c.CreateCubicBezierEasingFunction({ 0.823000014F, 0.0F }, { 0.833000004F, 0.833000004F })); - return result; - } - - // Radius - Vector2KeyFrameAnimation RadiusVector2Animation() - { - // Frame 0. - if (_radiusVector2Animation != nullptr) { return _radiusVector2Animation; } - const auto result = _radiusVector2Animation = CreateVector2KeyFrameAnimation(0.0F, { 1.5F, 1.5F }, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, { 1.5F, 1.5F }, HoldThenStepEasingFunction()); - // Frame 61. - result.InsertKeyFrame(0.340782136F, { 22.2999992F, 22.2999992F }, _c.CreateCubicBezierEasingFunction({ 0.333000004F, 0.0F }, { 0.666999996F, 1.0F })); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_00() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 96. - result.InsertKeyFrame(0.536312878F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E3-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_01() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 102. - result.InsertKeyFrame(0.569832385F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E3-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_02() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: I-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_03() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 93. - result.InsertKeyFrame(0.519553065F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - Vector2KeyFrameAnimation ShapeVisibilityAnimation_04() - { - // Frame 0. - if (_shapeVisibilityAnimation_04 != nullptr) { return _shapeVisibilityAnimation_04; } - const auto result = _shapeVisibilityAnimation_04 = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 81. - result.InsertKeyFrame(0.452513963F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E2-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_05() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 96. - result.InsertKeyFrame(0.536312878F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E2-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_06() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 86. - result.InsertKeyFrame(0.480446935F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E1-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_07() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 94. - result.InsertKeyFrame(0.525139689F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E1-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_08() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T1a-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_09() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 59. - result.InsertKeyFrame(0.329608947F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 156. - result.InsertKeyFrame(0.87150836F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T2b-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_10() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T2a-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_11() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 72. - result.InsertKeyFrame(0.402234644F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 89. - result.InsertKeyFrame(0.497206718F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T2b-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_12() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T1b-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_13() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 161. - result.InsertKeyFrame(0.899441361F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: O-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_14() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T1a-Y 2 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_15() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 59. - result.InsertKeyFrame(0.329608947F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T2a-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_16() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T1a-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_17() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_18() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 28. - result.InsertKeyFrame(0.156424582F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: L-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_19() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 16. - result.InsertKeyFrame(0.0893854722F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: L-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_20() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 18. - result.InsertKeyFrame(0.100558661F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: Dot1 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_21() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 17. - result.InsertKeyFrame(0.0949720666F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S1-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_22() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 30. - result.InsertKeyFrame(0.167597771F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 37. - result.InsertKeyFrame(0.206703916F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S7 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_23() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 65. - result.InsertKeyFrame(0.363128483F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S3-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_24() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 2 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_25() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S11 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_26() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 80. - result.InsertKeyFrame(0.446927369F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 90. - result.InsertKeyFrame(0.502793312F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S12 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_27() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 94. - result.InsertKeyFrame(0.525139689F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S13 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_28() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 95. - result.InsertKeyFrame(0.530726254F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 3 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_29() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 4 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_30() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - static IGeometrySource2D CanvasGeometryToIGeometrySource2D(winrt::com_ptr geo) - { - return geo.as(); - } - - public: - LottieLogo1_AnimatedVisual(Compositor compositor) - : _c{compositor} - , _reusableExpressionAnimation(compositor.CreateExpressionAnimation()) - { - winrt::check_hresult(D2D1CreateFactory(D2D1_FACTORY_TYPE_SINGLE_THREADED, _d2dFactory.put())); - const auto _ = Root(); - } - - void Close() - { - if (_root) - { - _root.Close(); - } - } - - TimeSpan Duration() const - { - return TimeSpan{ c_durationTicks }; - } - - Visual RootVisual() const - { - return _root; - } - - float2 Size() const - { - return { 375.0F, 667.0F }; - } - - void CreateAnimations() - { - _containerShape_00.StartAnimation(L"Offset", OffsetVector2Animation_01(), AnimationController_0()); - _containerShape_00.StartAnimation(L"Scale", ShapeVisibilityAnimation_00(), AnimationController_0()); - _containerShape_01.StartAnimation(L"Offset", OffsetVector2Animation_00(), AnimationController_0()); - _containerShape_02.StartAnimation(L"Offset", OffsetVector2Animation_02(), AnimationController_0()); - _containerShape_02.StartAnimation(L"Scale", ShapeVisibilityAnimation_01(), AnimationController_0()); - _containerShape_03.StartAnimation(L"Offset", OffsetVector2Animation_02(), AnimationController_0()); - _containerShape_03.StartAnimation(L"Scale", ShapeVisibilityAnimation_02(), AnimationController_0()); - _containerShape_04.StartAnimation(L"Offset", OffsetVector2Animation_03(), AnimationController_0()); - _containerShape_04.StartAnimation(L"Scale", ShapeVisibilityAnimation_03(), AnimationController_0()); - _containerShape_05.StartAnimation(L"Offset", OffsetVector2Animation_03(), AnimationController_0()); - _containerShape_05.StartAnimation(L"Scale", ShapeVisibilityAnimation_04(), AnimationController_0()); - _containerShape_06.StartAnimation(L"Offset", OffsetVector2Animation_04(), AnimationController_0()); - _containerShape_06.StartAnimation(L"Scale", ShapeVisibilityAnimation_05(), AnimationController_0()); - _containerShape_07.StartAnimation(L"Offset", OffsetVector2Animation_04(), AnimationController_0()); - _containerShape_07.StartAnimation(L"Scale", ShapeVisibilityAnimation_06(), AnimationController_0()); - _containerShape_08.StartAnimation(L"Offset", OffsetVector2Animation_05(), AnimationController_0()); - _containerShape_08.StartAnimation(L"Scale", ShapeVisibilityAnimation_07(), AnimationController_0()); - _containerShape_09.StartAnimation(L"Offset", OffsetVector2Animation_05(), AnimationController_0()); - _containerShape_09.StartAnimation(L"Scale", ShapeVisibilityAnimation_08(), AnimationController_0()); - _containerShape_10.StartAnimation(L"Offset", OffsetVector2Animation_06(), AnimationController_0()); - _containerShape_10.StartAnimation(L"Scale", ShapeVisibilityAnimation_09(), AnimationController_0()); - _containerShape_11.StartAnimation(L"Offset", OffsetVector2Animation_07(), AnimationController_0()); - _containerShape_11.StartAnimation(L"Scale", ShapeVisibilityAnimation_14(), AnimationController_0()); - _containerShape_12.StartAnimation(L"Offset", OffsetVector2Animation_06(), AnimationController_0()); - _containerShape_12.StartAnimation(L"Scale", ShapeVisibilityAnimation_15(), AnimationController_0()); - _containerShape_13.StartAnimation(L"Offset", OffsetVector2Animation_06(), AnimationController_0()); - _containerShape_13.StartAnimation(L"Scale", ShapeVisibilityAnimation_17(), AnimationController_0()); - _containerShape_14.StartAnimation(L"Offset", OffsetVector2Animation_09(), AnimationController_0()); - _containerShape_14.StartAnimation(L"Scale", ShapeVisibilityAnimation_18(), AnimationController_0()); - _containerShape_15.StartAnimation(L"Offset", OffsetVector2Animation_08(), AnimationController_0()); - _containerShape_16.StartAnimation(L"Offset", OffsetVector2Animation_10(), AnimationController_1()); - _containerShape_16.StartAnimation(L"Scale", ShapeVisibilityAnimation_21(), AnimationController_0()); - _containerShape_17.StartAnimation(L"Scale", ShapeVisibilityAnimation_22(), AnimationController_0()); - _containerShape_18.StartAnimation(L"Scale", ShapeVisibilityAnimation_23(), AnimationController_0()); - _containerShape_19.StartAnimation(L"Scale", ShapeVisibilityAnimation_24(), AnimationController_0()); - _containerShape_20.StartAnimation(L"Scale", ShapeVisibilityAnimation_25(), AnimationController_0()); - _containerShape_21.StartAnimation(L"Scale", ShapeVisibilityAnimation_29(), AnimationController_0()); - _containerShape_22.StartAnimation(L"Scale", ShapeVisibilityAnimation_30(), AnimationController_0()); - _ellipse_0_0.StartAnimation(L"Radius", RadiusVector2Animation(), AnimationController_0()); - _ellipse_0_1.StartAnimation(L"Radius", RadiusVector2Animation(), AnimationController_0()); - _ellipse_0_1.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0_to_0p399(), AnimationController_0()); - _ellipse_0_1.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_1_to_0p88(), AnimationController_0()); - _pathGeometry_00.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p316_0(), AnimationController_0()); - _pathGeometry_01.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p316_1(), AnimationController_0()); - _pathGeometry_02.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p457_0(), AnimationController_0()); - _pathGeometry_03.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p457_1(), AnimationController_0()); - _pathGeometry_04.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p43_0(), AnimationController_0()); - _pathGeometry_05.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p43_1(), AnimationController_0()); - _pathGeometry_06.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p375_0(), AnimationController_0()); - _pathGeometry_07.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p375_1(), AnimationController_0()); - _pathGeometry_08.StartAnimation(L"TStart", TStartScalarAnimation_0_to_0p249(), AnimationController_0()); - _pathGeometry_08.StartAnimation(L"TEnd", TEndScalarAnimation_0_to_1_0(), AnimationController_0()); - _pathGeometry_09.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p29_to_0_0(), AnimationController_0()); - _pathGeometry_09.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p411_to_0p665_0(), AnimationController_0()); - _pathGeometry_10.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p5_to_0_0(), AnimationController_0()); - _pathGeometry_10.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p5_to_1_0(), AnimationController_0()); - _pathGeometry_11.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p29_to_0_1(), AnimationController_0()); - _pathGeometry_11.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p411_to_0p665_1(), AnimationController_0()); - _pathGeometry_12.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p117_to_1_0(), AnimationController_0()); - _pathGeometry_13.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p117_to_1_1(), AnimationController_0()); - _pathGeometry_14.StartAnimation(L"TStart", TStartScalarAnimation_0_to_0p249(), AnimationController_0()); - _pathGeometry_14.StartAnimation(L"TEnd", TEndScalarAnimation_0_to_1_1(), AnimationController_0()); - _pathGeometry_15.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p5_to_0_1(), AnimationController_0()); - _pathGeometry_15.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p5_to_1_1(), AnimationController_0()); - _pathGeometry_16.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p249_to_0p891(), AnimationController_0()); - _pathGeometry_17.StartAnimation(L"TStart", TStartScalarAnimation_0p8_to_0(), AnimationController_0()); - _pathGeometry_17.StartAnimation(L"TEnd", TEndScalarAnimation_0p81_to_0p734_0(), AnimationController_0()); - _pathGeometry_18.StartAnimation(L"TStart", TStartScalarAnimation_0p8_to_0p3(), AnimationController_0()); - _pathGeometry_18.StartAnimation(L"TEnd", TEndScalarAnimation_0p81_to_0p734_1(), AnimationController_0()); - _pathGeometry_19.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_00(), AnimationController_0()); - _pathGeometry_19.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_00(), AnimationController_0()); - _pathGeometry_20.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_01(), AnimationController_0()); - _pathGeometry_20.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_01(), AnimationController_0()); - _pathGeometry_21.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_02(), AnimationController_0()); - _pathGeometry_21.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_02(), AnimationController_0()); - _pathGeometry_22.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_02(), AnimationController_0()); - _pathGeometry_22.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_02(), AnimationController_0()); - _pathGeometry_23.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_03(), AnimationController_0()); - _pathGeometry_23.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_03(), AnimationController_0()); - _pathGeometry_24.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_04(), AnimationController_0()); - _pathGeometry_24.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_03(), AnimationController_0()); - _pathGeometry_25.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_05(), AnimationController_0()); - _pathGeometry_25.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_04(), AnimationController_0()); - _pathGeometry_26.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_06(), AnimationController_0()); - _pathGeometry_26.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_05(), AnimationController_0()); - _pathGeometry_27.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_07(), AnimationController_0()); - _pathGeometry_27.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_06(), AnimationController_0()); - _pathGeometry_28.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_08(), AnimationController_0()); - _pathGeometry_28.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_06(), AnimationController_0()); - _pathGeometry_29.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_09(), AnimationController_0()); - _pathGeometry_29.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_07(), AnimationController_0()); - _pathGeometry_30.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_10(), AnimationController_0()); - _pathGeometry_30.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_08(), AnimationController_0()); - _pathGeometry_31.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_11(), AnimationController_0()); - _pathGeometry_31.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_09(), AnimationController_0()); - _pathGeometry_32.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_12(), AnimationController_0()); - _pathGeometry_32.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_10(), AnimationController_0()); - _pathGeometry_33.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_13(), AnimationController_0()); - _pathGeometry_33.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_11(), AnimationController_0()); - _pathGeometry_34.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_14(), AnimationController_0()); - _pathGeometry_34.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_11(), AnimationController_0()); - _pathGeometry_35.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_15(), AnimationController_0()); - _pathGeometry_35.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_12(), AnimationController_0()); - _pathGeometry_36.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_16(), AnimationController_0()); - _pathGeometry_36.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_13(), AnimationController_0()); - _pathGeometry_37.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_17(), AnimationController_0()); - _pathGeometry_37.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_13(), AnimationController_0()); - _pathGeometry_38.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_18(), AnimationController_0()); - _pathGeometry_38.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_14(), AnimationController_0()); - _spriteShape_11.StartAnimation(L"Scale", ShapeVisibilityAnimation_10(), AnimationController_0()); - _spriteShape_12.StartAnimation(L"Scale", ShapeVisibilityAnimation_11(), AnimationController_0()); - _spriteShape_13.StartAnimation(L"Scale", ShapeVisibilityAnimation_12(), AnimationController_0()); - _spriteShape_14.StartAnimation(L"Scale", ShapeVisibilityAnimation_13(), AnimationController_0()); - _spriteShape_15.StartAnimation(L"Scale", ShapeVisibilityAnimation_04(), AnimationController_0()); - _spriteShape_19.StartAnimation(L"Scale", ShapeVisibilityAnimation_16(), AnimationController_0()); - _spriteShape_22.StartAnimation(L"Scale", ShapeVisibilityAnimation_19(), AnimationController_0()); - _spriteShape_23.StartAnimation(L"Scale", ShapeVisibilityAnimation_20(), AnimationController_0()); - _spriteShape_36.StartAnimation(L"Scale", ShapeVisibilityAnimation_26(), AnimationController_0()); - _spriteShape_37.StartAnimation(L"Scale", ShapeVisibilityAnimation_27(), AnimationController_0()); - _spriteShape_38.StartAnimation(L"Scale", ShapeVisibilityAnimation_28(), AnimationController_0()); - _root.Properties().StartAnimation(L"t0", t0ScalarAnimation_0_to_1(), AnimationController_0()); - } - - void DestroyAnimations() - { - _containerShape_00.StopAnimation(L"Offset"); - _containerShape_00.StopAnimation(L"Scale"); - _containerShape_01.StopAnimation(L"Offset"); - _containerShape_02.StopAnimation(L"Offset"); - _containerShape_02.StopAnimation(L"Scale"); - _containerShape_03.StopAnimation(L"Offset"); - _containerShape_03.StopAnimation(L"Scale"); - _containerShape_04.StopAnimation(L"Offset"); - _containerShape_04.StopAnimation(L"Scale"); - _containerShape_05.StopAnimation(L"Offset"); - _containerShape_05.StopAnimation(L"Scale"); - _containerShape_06.StopAnimation(L"Offset"); - _containerShape_06.StopAnimation(L"Scale"); - _containerShape_07.StopAnimation(L"Offset"); - _containerShape_07.StopAnimation(L"Scale"); - _containerShape_08.StopAnimation(L"Offset"); - _containerShape_08.StopAnimation(L"Scale"); - _containerShape_09.StopAnimation(L"Offset"); - _containerShape_09.StopAnimation(L"Scale"); - _containerShape_10.StopAnimation(L"Offset"); - _containerShape_10.StopAnimation(L"Scale"); - _containerShape_11.StopAnimation(L"Offset"); - _containerShape_11.StopAnimation(L"Scale"); - _containerShape_12.StopAnimation(L"Offset"); - _containerShape_12.StopAnimation(L"Scale"); - _containerShape_13.StopAnimation(L"Offset"); - _containerShape_13.StopAnimation(L"Scale"); - _containerShape_14.StopAnimation(L"Offset"); - _containerShape_14.StopAnimation(L"Scale"); - _containerShape_15.StopAnimation(L"Offset"); - _containerShape_16.StopAnimation(L"Offset"); - _containerShape_16.StopAnimation(L"Scale"); - _containerShape_17.StopAnimation(L"Scale"); - _containerShape_18.StopAnimation(L"Scale"); - _containerShape_19.StopAnimation(L"Scale"); - _containerShape_20.StopAnimation(L"Scale"); - _containerShape_21.StopAnimation(L"Scale"); - _containerShape_22.StopAnimation(L"Scale"); - _ellipse_0_0.StopAnimation(L"Radius"); - _ellipse_0_1.StopAnimation(L"Radius"); - _ellipse_0_1.StopAnimation(L"TrimStart"); - _ellipse_0_1.StopAnimation(L"TrimEnd"); - _pathGeometry_00.StopAnimation(L"TrimEnd"); - _pathGeometry_01.StopAnimation(L"TrimEnd"); - _pathGeometry_02.StopAnimation(L"TrimEnd"); - _pathGeometry_03.StopAnimation(L"TrimEnd"); - _pathGeometry_04.StopAnimation(L"TrimEnd"); - _pathGeometry_05.StopAnimation(L"TrimEnd"); - _pathGeometry_06.StopAnimation(L"TrimEnd"); - _pathGeometry_07.StopAnimation(L"TrimEnd"); - _pathGeometry_08.StopAnimation(L"TStart"); - _pathGeometry_08.StopAnimation(L"TEnd"); - _pathGeometry_09.StopAnimation(L"TrimStart"); - _pathGeometry_09.StopAnimation(L"TrimEnd"); - _pathGeometry_10.StopAnimation(L"TrimStart"); - _pathGeometry_10.StopAnimation(L"TrimEnd"); - _pathGeometry_11.StopAnimation(L"TrimStart"); - _pathGeometry_11.StopAnimation(L"TrimEnd"); - _pathGeometry_12.StopAnimation(L"TrimEnd"); - _pathGeometry_13.StopAnimation(L"TrimEnd"); - _pathGeometry_14.StopAnimation(L"TStart"); - _pathGeometry_14.StopAnimation(L"TEnd"); - _pathGeometry_15.StopAnimation(L"TrimStart"); - _pathGeometry_15.StopAnimation(L"TrimEnd"); - _pathGeometry_16.StopAnimation(L"TrimEnd"); - _pathGeometry_17.StopAnimation(L"TStart"); - _pathGeometry_17.StopAnimation(L"TEnd"); - _pathGeometry_18.StopAnimation(L"TStart"); - _pathGeometry_18.StopAnimation(L"TEnd"); - _pathGeometry_19.StopAnimation(L"TStart"); - _pathGeometry_19.StopAnimation(L"TEnd"); - _pathGeometry_20.StopAnimation(L"TStart"); - _pathGeometry_20.StopAnimation(L"TEnd"); - _pathGeometry_21.StopAnimation(L"TStart"); - _pathGeometry_21.StopAnimation(L"TEnd"); - _pathGeometry_22.StopAnimation(L"TStart"); - _pathGeometry_22.StopAnimation(L"TEnd"); - _pathGeometry_23.StopAnimation(L"TStart"); - _pathGeometry_23.StopAnimation(L"TEnd"); - _pathGeometry_24.StopAnimation(L"TStart"); - _pathGeometry_24.StopAnimation(L"TEnd"); - _pathGeometry_25.StopAnimation(L"TStart"); - _pathGeometry_25.StopAnimation(L"TEnd"); - _pathGeometry_26.StopAnimation(L"TStart"); - _pathGeometry_26.StopAnimation(L"TEnd"); - _pathGeometry_27.StopAnimation(L"TStart"); - _pathGeometry_27.StopAnimation(L"TEnd"); - _pathGeometry_28.StopAnimation(L"TStart"); - _pathGeometry_28.StopAnimation(L"TEnd"); - _pathGeometry_29.StopAnimation(L"TStart"); - _pathGeometry_29.StopAnimation(L"TEnd"); - _pathGeometry_30.StopAnimation(L"TStart"); - _pathGeometry_30.StopAnimation(L"TEnd"); - _pathGeometry_31.StopAnimation(L"TStart"); - _pathGeometry_31.StopAnimation(L"TEnd"); - _pathGeometry_32.StopAnimation(L"TStart"); - _pathGeometry_32.StopAnimation(L"TEnd"); - _pathGeometry_33.StopAnimation(L"TStart"); - _pathGeometry_33.StopAnimation(L"TEnd"); - _pathGeometry_34.StopAnimation(L"TStart"); - _pathGeometry_34.StopAnimation(L"TEnd"); - _pathGeometry_35.StopAnimation(L"TStart"); - _pathGeometry_35.StopAnimation(L"TEnd"); - _pathGeometry_36.StopAnimation(L"TStart"); - _pathGeometry_36.StopAnimation(L"TEnd"); - _pathGeometry_37.StopAnimation(L"TStart"); - _pathGeometry_37.StopAnimation(L"TEnd"); - _pathGeometry_38.StopAnimation(L"TStart"); - _pathGeometry_38.StopAnimation(L"TEnd"); - _spriteShape_11.StopAnimation(L"Scale"); - _spriteShape_12.StopAnimation(L"Scale"); - _spriteShape_13.StopAnimation(L"Scale"); - _spriteShape_14.StopAnimation(L"Scale"); - _spriteShape_15.StopAnimation(L"Scale"); - _spriteShape_19.StopAnimation(L"Scale"); - _spriteShape_22.StopAnimation(L"Scale"); - _spriteShape_23.StopAnimation(L"Scale"); - _spriteShape_36.StopAnimation(L"Scale"); - _spriteShape_37.StopAnimation(L"Scale"); - _spriteShape_38.StopAnimation(L"Scale"); - _root.Properties().StopAnimation(L"t0"); - } - - }; - - winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual LottieLogo1::TryCreateAnimatedVisual( - Compositor const& compositor) - { - IInspectable diagnostics = nullptr; - return TryCreateAnimatedVisual(compositor, diagnostics); - } - - winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual LottieLogo1::TryCreateAnimatedVisual( - Compositor const& compositor, - IInspectable& diagnostics) - { - diagnostics = nullptr; - auto result = winrt::make(compositor); - result.CreateAnimations(); - return result; - } - - double LottieLogo1::FrameCount() - { - return 179.0; - } - - double LottieLogo1::Framerate() - { - return 30.0; - } - - TimeSpan LottieLogo1::Duration() - { - return TimeSpan{ 59666666L }; - } - - double LottieLogo1::FrameToProgress(double frameNumber) - { - return frameNumber / 179.0; - } - - winrt::Windows::Foundation::Collections::IMapView LottieLogo1::Markers() - { - return winrt::single_threaded_map( - std::map - { - } - ).GetView(); - } - - void LottieLogo1::SetColorProperty(hstring const&, Color) - { - } - - void LottieLogo1::SetScalarProperty(hstring const&, double) - { - } -} // end namespace diff --git a/Lottie/AnimatedVisuals.LottieLogo1.h b/Lottie/AnimatedVisuals.LottieLogo1.h deleted file mode 100644 index aa1f90655..000000000 --- a/Lottie/AnimatedVisuals.LottieLogo1.h +++ /dev/null @@ -1,77 +0,0 @@ -#pragma once -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// -// LottieGen version: -// 8.0.230813-rc.7+0443b1e789 -// -// Command: -// LottieGen -Language Cppwinrt -RootNamespace SimpleIslandApp -WinUIVersion 3.0 -InputFile LottieLogo1.json -// -// Input file: -// LottieLogo1.json (190271 bytes created 0:40-04:00 Mar 13 2024) -// -// LottieGen source: -// http://aka.ms/Lottie -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ -#include "AnimatedVisuals.LottieLogo1.g.h" - -namespace winrt::AnimatedVisuals -{ - // Frame rate: 30 fps - // Frame count: 179 - // Duration: 5966.7 mS - namespace implementation - { - class LottieLogo1 - : public LottieLogo1T - { - public: - // Animation duration: 5.967 seconds. - static constexpr int64_t c_durationTicks{ 59666666L }; - - winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual TryCreateAnimatedVisual( - winrt::Microsoft::UI::Composition::Compositor const& compositor); - - winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual TryCreateAnimatedVisual( - winrt::Microsoft::UI::Composition::Compositor const& compositor, - winrt::Windows::Foundation::IInspectable& diagnostics); - - // Gets the number of frames in the animation. - double FrameCount(); - - // Gets the framerate of the animation. - double Framerate(); - - // Gets the duration of the animation. - winrt::Windows::Foundation::TimeSpan Duration(); - - // Converts a zero-based frame number to the corresponding progress value denoting the - // start of the frame. - double FrameToProgress(double frameNumber); - - // Returns a map from marker names to corresponding progress values. - winrt::Windows::Foundation::Collections::IMapView Markers(); - - // Sets the color property with the given name, or does nothing if no such property - // exists. - void SetColorProperty(hstring const& propertyName, winrt::Windows::UI::Color value); - - // Sets the scalar property with the given name, or does nothing if no such property - // exists. - void SetScalarProperty(hstring const& propertyName, double value); - }; - } - - namespace factory_implementation - { - struct LottieLogo1 : LottieLogo1T - { - }; - } -} diff --git a/Lottie/AnimatedVisuals.LottieLogo1.idl b/Lottie/AnimatedVisuals.LottieLogo1.idl deleted file mode 100644 index 571cbbb15..000000000 --- a/Lottie/AnimatedVisuals.LottieLogo1.idl +++ /dev/null @@ -1,29 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// -// LottieGen version: -// 8.0.230813-rc.7+0443b1e789 -// -// Command: -// LottieGen -Language Cppwinrt -RootNamespace SimpleIslandApp -WinUIVersion 3.0 -InputFile LottieLogo1.json -// -// Input file: -// LottieLogo1.json (190271 bytes created 0:40-04:00 Mar 13 2024) -// -// LottieGen source: -// http://aka.ms/Lottie -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ -namespace AnimatedVisuals -{ - runtimeclass LottieLogo1 - : [default] Microsoft.UI.Xaml.Controls.IAnimatedVisualSource - , Microsoft.UI.Xaml.Controls.IAnimatedVisualSource2 - { - LottieLogo1(); - }; -} diff --git a/Lottie/Assets/LottieLogo1.json b/Lottie/Assets/LottieLogo1.json deleted file mode 100644 index cb637e3ea..000000000 --- a/Lottie/Assets/LottieLogo1.json +++ /dev/null @@ -1,7390 +0,0 @@ -{ - "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/Lottie/Assets/LottieLogo1.png b/Lottie/Assets/LottieLogo1.png deleted file mode 100644 index 45198c75c20bee1032afe869bfafb6b816fa0633..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17039 zcmeIa=U0>66E=$aASxm%3L;G(L{y|Gy#z#%q7;$drT5TlfY<;FMMXfV(t84-1OfpS z0V$yqdLkeM5|RKR^d#@??>*<+`3KHg&xb5lSa0K$eKy#D;41Lt9}i7KO*XdL6wX5@cHsNT z06ptqHa1?dzn>%ePp+-AvE9F>udQho;Xs}XkG>Wj!`cXKIey9DPS?c~@~_Uvo{c@3 zFLw3$t5^3{PPPx7*Sr7h?9qP&!VlIe+h}wgWCHkT*ncnzAIX_6-wDICTYE)k<3}j5 zma298dQmaLgBlTw2b6(_Ewa;dUk1g`D>rhnu?5Q=V|)7CosI4G&}p`3?3qW{YVOGb zB6%KX`*sw=#%A@EpN)<4zlZ))!GBip-$D4#7yRcA|BDF!zYdCXy(HQ2nC02p_CZYR z&Y19?G20N@OGj}de@#n(SmA&wA83$^xw`Y}Q1(iQF38q#{uicETPRknIqq32q5rw# zg`6yV^B`37cZl+zdbu1wuYNFCZFF{pp&_1i`EC|5MR8ojr$S@ID!i$d^3-MSdDnCd zR|7=Adq-|;&AV*M+OZDZ7G)blPe)Z?Ld^w86$)eKu*zyXTia$-qqDi+10BQ8x0#!6 z@=K3=dU-7~BrBwBAKR<6SA;m2uVz=Ar@}le()-I=<*GMF2Hy?D+$F3$<56`J{qPTF zG9tq(R)dr51O@n&)HZ!}b2m=YK$7t~pz(oJzxdtUvo8yU z{Rwvlzv3g!)I|3DR8t~yA#n-*3Nl1R&Gkld+?@}rqoN#&B<`BJSewtm^!-ql+tZR$ zQi@P9>L=e@c3$z3R8a8mpxKFezF=9mlOyv(%fE_lqC|C~aT^g!=NbCf{U1K4WvwY% zyY#(teL1f!+duQza#e%mVip!$cw2KN8Ju)FS~I*Y;17EBQ=Z3N=Ee^%R=IyuTg*nH zufqA!(=>0mJw0!;whxjbR(TdyJ{pq889sQ1x|Q)HToCUNwS-``D%!bOO5tOIkiKf? zhfdF^e-0gjwslwg+x-@$%1yUE32)NFwkq$NhSIt{Qg)4_X!L5%Qn$qq&)g@s354W5 z{S~z$DKw!?BvP64=?_xW2WMw11V2N6z+^qfkV5HPxa2W88`1-8U%Y14OP!zJ|FXE2LH+ zTX5LIrI+*nnV!yBdMFN=T}Y+W+sIh{o%@yk-?`hWj{TiGMmn$ka%vHOV+>(|pVcFb zY|9RR!uzkbz}*o4cdnAzr5ffQSq@WroxU+wNMC)G|1N(aB)O?s9h$47yDIPgf)X$f z-t}ZeUSE7Um2gNv&+mtBL{9l$E8%Zsw60{cqEl@1)WZ#U!=wRq#t!y?+VetxOO|fW zM)|fJTE5$^O4&a9aZXCm&%Rn?@EXH1f0R^E>8)j7>?@P)8Sj^Jfv|79*F@L#;O@I$ zhl`5BhfC#tv2bW@t2lgY7z);k!MLGk5kDQd!-$+Vvl?Y< z@c_^9E0=F0Nl;*_O$YihXY+a0%Phm#Ap+Xn&2;{utS_YTPXVhc#TNSXAQenS4=YM# zU$%_i2(hnj@9ddq?uxfg6Vs4VI)Ea$d&uF%&2^%M-MTZqJ;_Qp{c^1QDVY7Yjn(9R zRAb~AE$F~fy4SC3fzg-Mg2Aoa7Z{(;u*e*bDv0rQoSNF!>7FUW3O6YtfBMM|(OwLy zzBkSjwyw2;M%{!=d|}{G0Z~@g-+v)~m@LHso7kPsmju6&`Pf9RydWaz!NwSNc|rD; zG^Q%CQ6SIM{4Vm=^s{Kq(A5H>=c7%rakoD2-i(P)9%E)zRn=DZwzVY+(?6nP?3cPw z6^7L@7-ZwN65hlSU8g=xk2coAw8c*|xEeSFNN41+LS9w0#-A-2dA!Tf^#_N=o*&#N z6%bY5@SyH$WDZW8Gii4@ZdBFhB};Sy@^XnB&s>-dY;J*#Dd-jWp?+d$*TK13=f+j? z?qf^9A82A7xFhD+qdLGACdXvrUE!k>?H98#Rn;3v>H1rq;LS7hdA-WFc5tNrtm^K3 zE8bA%Pvt9inNBl@#3xW=LFDo5$*Y_#y*Xc0Sx6;hP5Ce$5n>KDU0lrAq$uvnn@9C$ z=L5e>mmF(&b`JO%arzXLL$C#g-uhTYyp>|#>(iRqG!s=OUstf3ie4v=eJYO+HPD$(L~I<4JrOYa zWQFkq$n0bqwAtFCcxv!e@S))yi#Uv7`)w6GAtJo#>#YZcU8{jN(j_ZHB%i)=pA3T) z_uwbGV5x>&h+BTRuqgc7&GS&zDvQWReWIPsaOGN4g*M&5_VYdj8+*=6`TUJ(%894u zW*$pajx0jQAJL&<(Fu39&Q(oi1-ebGZes;YiwM8Rpd)@d{@N&9iuaED#WxRzr(TBC_jLgw& z^?wNr#xM6|;%Jy>yp!WE%vN|_APLVo(ECH?bTG+GpuH=dFQ(kIFcuGN2U0rM+G2H# zTt3>+QbK&!{3U2&?%O~EU?gG<-=E!UlIxK1Pg$cXEn*d=UojKf!}*vwp%p}!1HVc8H~(YDL95-oo_Q>2T*NT~J2ucZ&AcEcC#4ty%{)8ie>_>iC-SuwuL_djcohmeV1M-Dlv z&>5S_DnWv8iUuEBJ)q>WUj&i)OC}BK?+O-BL?& zW8cFJB8MU5XleP5$Oy{j0~GIH%WH{fp27=t!Pet_)N=l0m4f8W!@BzM0hY_K=VE;D zxY75{I!j_agk8hj0>EilNRKx>6Uub5de`9)3W;f`I`uH@ZYkK&)4M+U_;+;acI(-n z^iCn{M|Vv@!|6Wd*k;CjN)ZX1opk zI*HS7&8sc2X0G)%CZ-f?2h+By@sZ3RDss`<&c3k>L32R~sHH`x?@1w2Eicskeq~#*?-Afp~A7Ju%HVM6sQ6CfrX2rBN}ypPNWM%hU;4W8ud<8*Vn(yDQqp&C#&buq)W*-hk^ z%8Fl2`>N(d?le)Zp7yvSJApv4DfKZ8Ce`|NXZ=8Fqp~b4f)_FaIlMKI*m_AXK&`M1(F;$U*>UbjH{KlfGeSo9)(Z8kER@MNRD4*ik?Je!t8S% zn{2&VSM}5`b^iryYlr5U!O%6wSyj^TqsYz0`_7q8X)ZK$JLkM=%7Zj9X0`Y&f4*7d z0d$%ol){a*IN-kdO2y2UR`($BqVD?i3u$37i! zClbpXJnCj%y8&x*MLIomlJjYbW@JK1Z-{U$a87Ql#?AhlzTiy}2PJbTotWMG(cez# zVn3f*f&vLxk4FM&ddyWZysa|EzYMHU+<6pJ$02Q zV8Fo!nVXM*jUSCzSVo00_CNN1q}r*aj_5)mISGU_XCfjfYDngLbYnmLJHlADN@d83 zq=9joD=ZiPZA(MzKvy^p2PcNbvTZM}<i`~^a+q6TSESr-=(guE?RHn>4%*@sBMYrjMLohVW6?3ea zkkTDiy^IHdw0F`6Sc7NGqn0*DGB>FN5A>dEDNdzm7>GRHnLMn{_s-^u^6k(+MJu&` zYBfJN755DbsgR!(R+$dhA&a3cp%ce z#K2+k?$n?}k{)F-_|N1e8IaRG_|HK?ZCc@th_BDp)pAlHb zBAddVKdgwY?b`daQPiI$%6;n|4$qSZ3ZFelGxQ-Jf(kcB`g=Wf0|wWy$LEEqehVf>CZiyO8n(*9&^N>ACFMsdgS>FQ|1Px$s|d%yaeW)Cd@ z%VwzN_`@ov7re;N+Q>_}D*%$4K^0NG{W9B1$8p$L;(@J@XO$nRjv{1#MiBtEq4njs z1Jj=1)^et{X^gvBM^8z-DaNEUOJG1--d$eNT~U!z2In`iSkHOq@u&O6AJ2IG_8Te$ zYUKhpW7DYj$5@hKiLCEr+RVt-%fs7KKcqI6T2q+{4V9Ie+!;|Ji(#Ppf1Ed>BOgDL z%yjy=SW}SV%7IsNevh_3iOWMe3BF0)WE|dx`Z!zC(w?d>?x$QNZ4I4&eev{QoL{EX z$O7>$)bS$nhm!6JG9!p#t7rk>c*oJujzv~CS*Y4loOs@`iMPG&u1C4B&C%L;AYK~E z8cgHgM~F-Sj-l$*&%xRKkuZHB{|eUA?eAGg1;1R$KoFV9v1d(HuVbx#WZ>$cW6?`ZIGq`V#6pXE?sb{J;u z6t||*Dj#NjR7R4sXxVU&hgj^mqQdDKJ=wL@;OK;Q_*>g7QiZG273St)AnVL|^9;ef zX(IIPK#zNZUu+!7&57Ld0v8+I5^j)V;b0c2{5?;I8;&pGNMmCMsqvlo>^?~Y4&Fga zWs^Mm?x%91ze9U(`>`4M##X&XH8WDBy@&px)Am(sNL{-+^an)3Vhr|Rf3KJ5FWo;R z`mko3L+$^LvZyr00L&U86B_Po6WP}>C?pva10QN=C_@=EYN&B!b6isYqpyAB%5*79eDJsy8FNefg zTEaTBE`+ufdja%HZ|2+P>I_#Hta{SK(f;?)4i=p&jV??1SCEix`xEzNYAW?~c-5QR z)@Q#cNZxfe_|uaQSE?_fAO}fvN3fpppks4J7Z0Lq>W*;xwNc|X{02`i>Eujq`=}gF57L0`bS$IFmrg>|(6;>(6{c+E zG^Q2(cReSrQfk%s*VpZ?L}WS*-bcR6!$rEc-!|xcxmb#u%wRA%c^C%)F!_dyER%rk z{84>wSBN9_x#Pv09h~K!;#m3qyWs96_m`o4wSG*HSj9-XyR|?OTHs%jrM89So9$Qj zO44^dEL@580__d|96$b7_qpzq!9VkbcIg=on_-!Vno-={nDn)QUI9D!+)Y0)vyXN} zP`E8}KBN?HbkWf(5^^G#;vW&SEXB$_KmH|N#aaLcA}#UpjlSm#m3*4yK50q{Xf_B7 zNImJ;9`b?G7b_cp{b0b#6(qWN9P_E$0(cXtiP#2s4qZOT^hl6e;YcM&K0kX)WOQ48 z^WD3fEA!3w*5x`rBeSO$sl){=kQ!P~>L)1R_d+;4l4HQr(ZE>VVGrJWpzwjw2d~}^ zY?TRFSX@!O_$eh9w1(F$u(3~TGd)$PQ2oi#&OnoUko`p|e^>OsgtGR^cec{$7khsU zL>{!VqeLN7Q=1Q21A@d+veZMvVfb5B+0XR3`9#H#cK1k&uL;DTsE`P$voaW&I@M#vVeLBglFC54EOLK3&NS$t`~cWfS9r#L zYPM*QX!!y1MIC@&Du6_yXF5PKX>Z#SbIJ#h=MqN7JvMDLg3hM?%cjL3+=*N@5F~VK ze!LcCgMN2KDQvXKMB?SXJLP)&&9EHh&APMKFL&2Hg&p=fXNoKU#&s#vsb4c8wGWLV z?}k}_u0ke${@PL#)+P^)gF?Y{vlEgTYRO#k;4%ENd#_}X=WAMj7u1OMiaHhLbkE=s zFOY6r#>kZH6E8w7`C5W(GF{CP`>>FlXW>ojAE9tC{abmF^l<3>Zmowc+3Uov9j)hL zC(}^8qMdVp=<~Pw)y;#qH(hFB>{Y|3A5k07~ z#6MtrWAKG{sj>RZtx4L+3^NptE*_NJI~`z{eY+k087no~a1+qlRVp>!kvE5BqPeXo zoz2Xe<-v8Z?qRM2 zh)KQmR@~x33jD@pO9#2eR!@V-`LfL)0D9L=znFMK;*x`fOjXrWPp`HeR|srt!IEZ# zmK?f%Jx>+7FuyPhkV`m#&;xMl=wYdG#?a|U%+g=0(XUvy)g(AmN5T!y^Vm>DtNSEx%4c8B!mc?ZNuKYrEvHy>=?>mU)5#Rt%Te7$vh8X-1w49w~Q$0|-Q``Mz?l zE=P}lwF^!oHBK|4ZOrR^iRBRo-eo3fWpn@DrlYpom{QIgo{_kCdt=%D0N+i88x1L& zcqPwIlvd}6fRZr5i0&_pFZ2!d=o5vVCJ+sY{tc?M2?L_}Q2b+kB%J1vHRJOHMAcB% zMfSjNU#I$|S8=^KSiJ?{;+sCIWX=I`w~)xtg|amzyX!R@?0`$;PsUdrwwp08fLb5y z*ae1!boMh!w}q?7zem&F_DSCKv%1^bQ3Qp*x%D1g4gDDWv%Oinq3Ui`U72dw(^O`! zbEFae6o)gA6R>{qjOVe3D^J7y^7sRT(eDqxW$-2#@1mzC-fxE!SM&MZZ&%*j$%_dj zajPDnea5ikD8k$MapNf+uHZE`yZ5Zz&z`j*p1EsrX{EDenQO{`T*>GM)gDTvg{P z7@)AoQ%7PY_LeC$hN(ELOvu_|MLO9Q-#7R%4g~O$0Upanta3giP)c%hdP1>pdc0$I zXI3M;txA5$akGw*r&mDC+ho_*2xX!qCV_!xK3#2Z_}pbM)S#(^Goxy3YA*?yx%%B| zMRqdDmtoUBmX4wSu5zZ~LfxT1-gta5oOk#!oF>;1pVAW3b4Rg3{SJ43PALR-iDFl) zjm_M=Nl51{r}7IK@6m}GFO-BtPf{{Y8Dv-ay!?#@(M2K)PHiKWcHEkCYe(Y7SCL8@ zQU(F$Q+XVq%IUM1n)&uQ6@lUi%&L|wVI@~0UH&_ghij-M$M{1;_o|tO^<@)_-*}6H zeQew)Lcxyz9UaNrSN~YOx;m)Ew|OsWT@oJa@cE}JVrycp;{4R_qC>SV-0zXJba?5~ zg(;~*eg!23g3$)5HKC+`3}kuxYCSMIy40@ymELN|M+*u%M?GBqS$>zk)qG4F;UF*=a#BFb~tIjlK6%+s>L+XAPB!BtrR?||yJ-yDp( z46NhD%mvzoQVEcpQzoU^dFpbs>M$F6`PJw|s6#Q1u3T8r-(IavudREYQ@rfjMr)a8 z4-WO~orSV{*aDgRGxZqCB$O{F%hnv#S`z)haIZJhvtx6-;i8Xsp=3WmErH7_XRRz7 z%31F3|KdOYVL7eX?~aLFS36bXvhjuQ%ia5GWVeiRcJ`>&iq?q z^iUYj^YvC5pZzT)j>r_K%Mw6$e;geNX)C^oEWQaZo`Os*JA$Q}X4e=RKnwx^D>=lr z(8?jknNW@Pc=E>m()!S94D*pPI1+vYzz6tX>gkr)X28b41Swq+!@bY7m0b@$*=WgZ-&PPtXcmSL>x4nO@eR^l+l2;ti zg#IJeSyiTVqY0bHG-o`n$S^ckQ4k2N_;7W7r{GeR;e5rB)5qe|mF+RKx=&fYZK^JD zfTEjRV%PIdu&;Cs)SW_W(A@kGQu3-XTSW6r=_i!w`DSP|wz*ozu(^s|rG)?ZT17a@ zb9P4b*AG{8a3Sepj(?`IEjDvuvT~?$EMckME?9;8t4ekq+XBC=L#)poKbvwOv{({S z4pP)i45{B~SI*wXta#%@<^sDu%#}$@!12>yKLoDEF9(n%;^{~Tupk%k#5Hp}^uL^` zbZrDxHM^iZbL+HK&h`h6V*q&~d^$D)T;-!TGa>!5 zN%#c%g?mUtq`8sha;&`cXHpk6I;siq?oA%^_pN{GJw6Xf~ zr0>~4#7Im8xTWDH=*zy@2XnfMX`0F&% zQ3=|2UT>n|+O<1s;jds^KNh?v8jVE;_38Gvqc|~5Q;p*vlf+tW zp`gdrp;@jp$2fiNg~Y|@cVH8txb0swN{SfhZq{M)my;x#=HV1Gab_q6&J@!?;}L6N zXtOJKLp}i$#H#=k06h8)pXbS5I$4sH`$=EQq}MKN@vGiJ-1>f^IJP_74svrN&DbI4 z%8=!*K!#Gd@;>GphX=p+wT--i!lOQL`?Q7}*^<^@?VZ~6wANI>rQ+~U$g$Q!0{p$} zvy1_Bhlq+$zh&vlo}A0hzU_76;f#=b$4~QLv=*k_ZfeJ1wj93)O3)i?ya_f_1ONDD zd*TSY$qN#aOl~m~jJ_Y+AXl)&qeEK*v(?w+1 ziK@AO)CV{NMyK2&fO;hURQV1_(?7p?LZzmhb%U_&rn#aK6zxi@$U@F{t=I0-xvxeC zgiwzXhQq2+hc;#H!4UYAh5Q7p1Q!O!FsHp)Iy~dH#?;h?d7JsetK_Z6Hs(#TV%Q&xt%p)&zARYhsbR{;Lj^JauLe(@Mw@h0qwJr^KWVdkF6I+7HaeAm$ zY0|xh8RaEEdgUkSKJ?Ynd|dmmHho$S`nDmW?eK;3DW?dEP&e{`Th(NVBQRY9un_dn zv|CKBUNkl$VxL>^T#wb^-~Is!C2*XgDuL?}UtfGDA1K4WPXfm()@|oeJ)?*+db)XQ z5>C1$r5f`#6lksh0BNMXvf5740PU)5)(B34Z!TjQ=Uz=K-M)G-%1^87 z!l}tM%dX<(B0{$6m&1@e6>$R-Q}yG3FZsj!WIiNn>5+6=L;bHGL!qndb~}6T%aJP& zqzjrYr&{vyvamVA$nW%oJb_x(@1@ZqJw~Bwk%A1%>!Xhf#(nZ4uL4EYStC74?`#92 zWMQ+xXWS6RbCg>S+nZGMV}^|t#$z6)g|6btIas%&B5wl@H35)!0&CH0bLBb)t=~S( zvsLW#4aw&&XVQ7s+YNunvq^f-N)59uU6(=z8-$9L_~d_^$c85DQ(Z1oO-6g$*7{8piN!;E4RPVmN5({ zW%?Jjx{PzW{QFW@Cs#-~()snaJpSC_`YaT+GR=PHbFH}K{PHb*wzxSFdQ27AR1YO;Lq7aE$Qch zg&kSq@ollcRv=vlQBR2mgJ_r1Sy1$>{a{j}1965TBECc$<*g?(8^%8@bMMu~#6Rf@tT2Lzz$ zs%F)c$0PEf4ImaYlhD+mqEi#-^}nrCeuD}vz23IrAwHQ9)RC9EJuu1KDOtD3hr9zV zXj2h~x!Wj)?WhWFA%C^bP2lwY__QPdG+ETC0FFATFk#q6Pj(@q(W9@dd>!!2`<_GM z<^|%TvvuUTD+diq`$;FA3Hr2ya0i;=19ck9_*>Ked!j+MI(H=>E4r_2eyws)`MvicD!eCCQP*F=fMFqprhg!W z2>9-Hl-IfWXa&{7y6}D1D-Mjv9~wY2!`CMoDLdI~_8R;}+QEYgQ}n*lmD@M01*){N zG~`@hvtA=WM9ShCUrrm2uR(CxOGY)P`FeOt$u%dxCPSSQs>oA8wwZt7QPhm_@tec5 zgq#D0vLX=DgMkBnST3vb$mlh}_=?#lId<^jX&y8EdT1 zy%UH(WJlJ|B+5Y;-#+*|)l*c;S{`P(Vxm&2zko5;3TJLxcGa_1Y>>xITKZz3o+}1(3GiMe;xk ze<|S2iofHb2XrZtPGLLuxQm)Og4NaOkwIlJt^t>f0*r%;IoORZemx|p^+A^BXuGKG zlF_J>OBW-UfCpV`ZiAhi+gp1L;k|vLa48JIT&W_hmzJY_e-3wNL+|#DPAy&nJzEx* zeB(t)xbG#pHMEMxOu+Y~v6J+iv9{#PGQI}&B0en;<5aQ_uGQ1&7LSVBPGWWdVQp&o zj(yOgJ;4wlUD|WC>3u+6*XVKZh)`=KJ0kOx2lVFeu(ZAoWl?afc{%H$p_zsiQeW{V z|1k2IPfHY`Exf}gLppY5c8{8?LdtO|nbmMLV09<_3TuqSn08Qv)%GQ&jiO11?8g*b zwa*kE%yQ_C-&v+SV&tu9A!-(o0*;^(!IuxWhMbUOm%evuVu|Sg&(rA3t)R_%lE2G;i^u)lq-nV^1>1 z-+%ou=rJgiAqK)hLqpWP6X=x=+dbk>ikm%b(+%=Q4JAS&PXTP?9^52he+)AR-|;sH zyc`oE?4smYO201xg6u}vSF<4AmT14*PFdZHxtqbkjIt}X*rOYsl&NjMPch+wj4q?G zr5w6h4?ByU_&B)Yp=&cCUEkD|_VFXLTo7c%;!$;!#tRIz+BBxSi`}SK?vWxj#gM*^QrSg$kpDiJf=JuH8UMJCzDKS#r z_GRJ0RRN1@!#fJ;J*J}?8{D98R)K+;vBRkX z(J2c3n2r*%Ey?LyuxLwL@oiL=qARK~RAYShiqG?ZF<62IL;*9)iEr)F_NS|H~T5d zpq^jG)yxv}SQq)f1_K@ylj@dX`lW!P=ACA-_eddf>*|+tOcJ8-vaRrs@8uX`aSQ9unXHZz7w&Fh^BP*blrEqS!HLY%7~OKM%%ot99ltP@FgnNxF1m<*Vw`-N}{J z-Jr#LmCz6{RIUEDBlhS?PYTeLeu}(3kP}8o?KqrR>T77pUw-LD(P)e|so;rl+Pu&gVYLQJ>c42P zpr`(vEGh za~g6DSdBk9pBnBR&Ah4re`}D3n`j>WDby~s)tNJ+F}oTYl|PMEpT;-NDU=orPQJ+o zJ-2cQbtc#vks}Ac9D{~zuX_wOC#4(#4<%YDz!PuVUizY3IQaPu<9Jf*(mVkS4SAd= z9=`>NifDf>y%iJd+8&q+wr?vFh+c2-%tdYlebyg-=2WQ6BXsYZT%qD*?RCJ|w6`kD zzsMF)m6j-MUwPyTcTQ9zN1qXNbq2R)>Yq^0vCVqvz!7fa&-kABMGNb;mnP^+XWOXZ z1GfUig{IG2xBq)LJPdz_=eU~U2t*)!#y?NwH(JvU@oe?oJ;f4!^w6O)QbR@WjO26D zPXBtFi@1*aU}BYBHgVp2aDU}UkLn@NOu{0$V#oYn2e*`mXem6`5O9D1?e$#=MEGmXCZJ9w8tT zVYW549fsu9#fvBCaJz3t9GNWTM^B}jGwusW%*O3QxE~7NWIK>MR+%2*Z|cg2C;Rme zC7k@Ggt?c+9!!mheoa|wkzPJ}Y%baTcl@!e0>eaCT|8(`CGxGh3R{=g@t-)Z4^wq7 zzVyt5?k8pyrEoqA%zSQ@E_F%9H*syJB`Gp^Yo1NUNcJoqwG`9EKI^I=6jnXTaTJ*0 z*}EJc(a};4r5aJQ=q8SkN0~>$6Ocgbj)07Fwjj4bWEwIOF~x>r$J`TNvlg+IgR}I4 zIV#i_#s3mL)$Bu(p2wfmhHHg9roQT78xwtC#dyh|)M_jk@?&`6X0l8zEQ?&{R zSEkUSI9){PezM5(79fH!90mEl$jc(!tzB6s^bt>Pv|nY*_kUv8p8t3C^uOD;|6M@-?+*5V*Uw6c$KYEH2j0k#zE5OvGbPFpg{h_bz)K|9^dA^$!|p$Q@qYkHr%M // For ContentPreTranslateMessage -#include -#include - -namespace winrt -{ - using namespace winrt::Windows::Foundation; - using namespace winrt::Microsoft::UI; - using namespace winrt::Microsoft::UI::Content; - using namespace winrt::Microsoft::UI::Dispatching; - using namespace winrt::LottieWinRT; - using float2 = winrt::Windows::Foundation::Numerics::float2; -} - -// Forward declarations of functions included in this code module: -void MyRegisterClass(HINSTANCE hInstance, const wchar_t* szWindowClass); -HWND InitInstance(HINSTANCE, int, const wchar_t* szTitle, const wchar_t* szWindowClass); -LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM); -INT_PTR CALLBACK About(HWND, UINT, WPARAM, LPARAM); -bool ProcessMessageForTabNavigation(const HWND topLevelWindow, MSG* msg); - -// Extra state for our top-level window, we point to from GWLP_USERDATA. -struct WindowInfo -{ - // winrt::DesktopWindowXamlSource DesktopWindowXamlSource{ nullptr }; - winrt::Microsoft::UI::Composition::Compositor Compositor{}; - winrt::DesktopChildSiteBridge Bridge{ nullptr }; - winrt::event_token TakeFocusRequestedToken{}; - HWND LastFocusedWindow{ NULL }; - winrt::LottieIsland::LottieContentIsland LottieIsland{ nullptr }; - bool isPaused = false; -}; - -enum class ButtonType -{ - PlayButton = 1, - PauseButton, - StopButton, - ReverseButton -}; - -constexpr int k_padding = 10; -constexpr int k_buttonWidth = 150; -constexpr int k_buttonHeight = 40; - -void LayoutButton(ButtonType type, int tlwWidth, int tlwHeight, HWND topLevelWindow); -void CreateWin32Button(ButtonType type, const std::wstring_view& text, HWND parentHwnd); -void OnButtonClicked(ButtonType type, WindowInfo* windowInfo, HWND topLevelWindow); -void SetButtonText(ButtonType type, const std::wstring_view& text, HWND topLevelWindow); -void SetPauseState(WindowInfo* windowInfo, bool isPaused, HWND topLevelWindow); - -int APIENTRY wWinMain(_In_ HINSTANCE hInstance, - _In_opt_ HINSTANCE hPrevInstance, - _In_ LPWSTR lpCmdLine, - _In_ int nCmdShow) -{ - UNREFERENCED_PARAMETER(hPrevInstance); - UNREFERENCED_PARAMETER(lpCmdLine); - - try - { - // Island-support: Call init_apartment to initialize COM and WinRT for the thread. - winrt::init_apartment(winrt::apartment_type::single_threaded); - - // Island-support: We must start a DispatcherQueueController before we can create an island or use Xaml. - auto dispatcherQueueController{ winrt::DispatcherQueueController::CreateOnCurrentThread() }; - - // The title bar text - WCHAR szTitle[100]; - winrt::check_bool(LoadStringW(hInstance, IDS_APP_TITLE, szTitle, ARRAYSIZE(szTitle)) != 0); - - // The main window class name - WCHAR szWindowClass[100]; - winrt::check_bool(LoadStringW(hInstance, IDC_SIMPLEISLANDAPP, szWindowClass, ARRAYSIZE(szWindowClass)) != 0); - - MyRegisterClass(hInstance, szWindowClass); - - // Perform application initialization: - InitInstance(hInstance, nCmdShow, szTitle, szWindowClass); - - HACCEL hAccelTable = LoadAccelerators(hInstance, MAKEINTRESOURCE(IDC_SIMPLEISLANDAPP)); - - MSG msg{}; - - // Main message loop: - while (GetMessage(&msg, nullptr, 0, 0)) - { - // Island-support: It's important to call ContentPreTranslateMessage in the event loop so that WinAppSDK can be aware of - // the messages. If you don't need to use an accelerator table, you could just call DispatcherQueue.RunEventLoop - // to do the message pump for you (it will call ContentPreTranslateMessage automatically). - if (::ContentPreTranslateMessage(&msg)) - { - continue; - } - - if (TranslateAccelerator(msg.hwnd, hAccelTable, &msg)) - { - continue; - } - - TranslateMessage(&msg); - DispatchMessage(&msg); - } - - // Island-support: To properly shut down after using a DispatcherQueue, call ShutdownQueue[Aysnc](). - dispatcherQueueController.ShutdownQueue(); - } - catch (const winrt::hresult_error& exception) - { - // An exception was thrown, let's make the exit code the HR value of the exception. - return exception.code().value; - } - - return 0; -} - -// -// FUNCTION: MyRegisterClass() -// -// PURPOSE: Registers the window class. -// -void MyRegisterClass(HINSTANCE hInstance, const wchar_t* szWindowClass) -{ - WNDCLASSEXW wcex; - - wcex.cbSize = sizeof(WNDCLASSEX); - - wcex.style = CS_HREDRAW | CS_VREDRAW; - wcex.lpfnWndProc = WndProc; - wcex.cbClsExtra = 0; - wcex.cbWndExtra = 0; - wcex.hInstance = hInstance; - wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_SIMPLEISLANDAPP)); - wcex.hCursor = LoadCursor(nullptr, IDC_ARROW); - wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1); - wcex.lpszMenuName = MAKEINTRESOURCEW(IDC_SIMPLEISLANDAPP); - wcex.lpszClassName = szWindowClass; - wcex.hIconSm = LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_SMALL)); - - winrt::check_bool(RegisterClassExW(&wcex) != 0); -} - -// -// FUNCTION: InitInstance(HINSTANCE, int) -// -// PURPOSE: Saves instance handle and creates main window -// -// COMMENTS: -// -// In this function, we save the instance handle in a global variable and -// create and display the main program window. -// -HWND InitInstance(HINSTANCE /*hInstance*/, int nCmdShow, const wchar_t* szTitle, const wchar_t* szWindowClass) -{ - HWND hWnd = CreateWindowW(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW, - CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, nullptr, nullptr, ::GetModuleHandle(NULL), nullptr); - winrt::check_bool(hWnd != NULL); - - ShowWindow(hWnd, nCmdShow); - UpdateWindow(hWnd); - return hWnd; -} - -// -// FUNCTION: WndProc(HWND, UINT, WPARAM, LPARAM) -// -// PURPOSE: Processes messages for the main window. -// -// WM_COMMAND - process the application menu -// WM_PAINT - Paint the main window -// WM_DESTROY - post a quit message and return -// -// -LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) -{ - WindowInfo* windowInfo = reinterpret_cast(::GetWindowLongPtr(hWnd, GWLP_USERDATA)); - - switch (message) - { - case WM_CREATE: - { - windowInfo = new WindowInfo(); - ::SetWindowLongPtr(hWnd, GWLP_USERDATA, reinterpret_cast(windowInfo)); - - // Create the DesktopChildSiteBridge - windowInfo->Bridge = winrt::DesktopChildSiteBridge::Create( - windowInfo->Compositor, - winrt::GetWindowIdFromWindow(hWnd)); - - // Create the LottieIsland, which is a WinRT wrapper for hosting a Lottie animation in a ContentIsland - windowInfo->LottieIsland = winrt::LottieIsland::LottieContentIsland::Create(windowInfo->Compositor); - - // Connect the ContentIsland to the DesktopChildSiteBridge - windowInfo->Bridge.Connect(windowInfo->LottieIsland.Island()); - windowInfo->Bridge.Show(); - - - - - windowInfo->LottieIsland.PointerPressed([=](auto&...) { - // Clicking on the Lottie animation acts like clicking "Pause/Resume" - OnButtonClicked(ButtonType::PauseButton, windowInfo, hWnd); - }); - - // Add some Win32 controls to allow the app to play with the animation - CreateWin32Button(ButtonType::PlayButton, L"Play", hWnd); - CreateWin32Button(ButtonType::PauseButton, L"Pause", hWnd); - CreateWin32Button(ButtonType::StopButton, L"Stop", hWnd); - CreateWin32Button(ButtonType::ReverseButton, L"Reverse", hWnd); - } - break; - case WM_SIZE: - { - const int width = LOWORD(lParam); - const int height = HIWORD(lParam); - - if (windowInfo->Bridge) - { - // Layout our bridge: we want to use all available height (minus a button and some padding), - // but respect the ratio that the LottieIsland wants to display at. This can be accessed through - // the "RequestedSize" property on the ContentSiteView. - - int availableHeight = height - (k_padding * 3) - k_buttonHeight; - int availableWidth = width - (k_padding * 2); - - // Check what size the lottie wants to be - winrt::float2 requestedSize = windowInfo->Bridge.SiteView().RequestedSize(); - - // Scale the width to be the ratio the lottie wants - int bridgeWidth = 0; - if (requestedSize.y > 0) // Guard against divide-by-zero - { - bridgeWidth = static_cast((requestedSize.x / requestedSize.y) * availableHeight); - } - - // ... but don't overflow the width we have available - bridgeWidth = std::min(availableWidth, bridgeWidth); - - windowInfo->Bridge.MoveAndResize({ k_padding, k_padding, bridgeWidth, availableHeight }); - } - - LayoutButton(ButtonType::PlayButton, width, height, hWnd); - LayoutButton(ButtonType::PauseButton, width, height, hWnd); - LayoutButton(ButtonType::StopButton, width, height, hWnd); - LayoutButton(ButtonType::ReverseButton, width, height, hWnd); - } - break; - case WM_ACTIVATE: - { - // Make focus work nicely when the user presses alt+tab to activate a different window, and then alt+tab - // again to come back to this window. We want the focus to go back to the same child HWND that was focused - // before. - const bool isGettingDeactivated = (LOWORD(wParam) == WA_INACTIVE); - if (isGettingDeactivated) - { - // Remember the HWND that had focus. - windowInfo->LastFocusedWindow = ::GetFocus(); - } - else if (windowInfo->LastFocusedWindow != NULL) - { - ::SetFocus(windowInfo->LastFocusedWindow); - } - } - break; - case WM_COMMAND: - { - int wmId = LOWORD(wParam); - int wmCode = HIWORD(wParam); - // Parse the menu selections: - switch (wmId) - { - case IDM_ABOUT: - DialogBox(::GetModuleHandle(NULL), MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, About); - break; - case IDM_EXIT: - DestroyWindow(hWnd); - break; - case 501: // Buttons - case 502: - case 503: - case 504: - if (wmCode == BN_CLICKED) - { - ButtonType type = static_cast(wmId - 500); - OnButtonClicked(type, windowInfo, hWnd); - } - break; - default: - return DefWindowProc(hWnd, message, wParam, lParam); - } - } - break; - case WM_PAINT: - { - PAINTSTRUCT ps; - HDC hdc = BeginPaint(hWnd, &ps); - // TODO: Add any drawing code that uses hdc here... - UNREFERENCED_PARAMETER(hdc); - EndPaint(hWnd, &ps); - } - break; - case WM_DESTROY: - PostQuitMessage(0); - break; - case WM_NCDESTROY: - delete windowInfo; - ::SetWindowLong(hWnd, GWLP_USERDATA, NULL); - break; - default: - return DefWindowProc(hWnd, message, wParam, lParam); - } - return 0; -} - -// Message handler for about box. -INT_PTR CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) -{ - UNREFERENCED_PARAMETER(lParam); - switch (message) - { - case WM_INITDIALOG: - return (INT_PTR)TRUE; - - case WM_COMMAND: - if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL) - { - EndDialog(hDlg, LOWORD(wParam)); - return (INT_PTR)TRUE; - } - break; - } - return (INT_PTR)FALSE; -} - -void LayoutButton(ButtonType type, int /*tlwWidth*/, int tlwHeight, HWND topLevelWindow) -{ - int buttonIndex = static_cast(type); - - int xPos = ((buttonIndex - 1) * (k_buttonWidth + k_padding)) + k_padding; - int yPos = tlwHeight - k_buttonHeight - k_padding; - - HWND buttonHwnd = ::GetDlgItem(topLevelWindow, 500 + buttonIndex); - ::SetWindowPos(buttonHwnd, NULL, xPos, yPos, k_buttonWidth, k_buttonHeight, SWP_NOZORDER); -} - -void CreateWin32Button(ButtonType type, const std::wstring_view& text, HWND parentHwnd) -{ - int buttonIndex = static_cast(type); - - int xPos = ((buttonIndex - 1) * (k_buttonWidth + k_padding)) + k_padding; - - const HINSTANCE hInst = (HINSTANCE)GetWindowLongPtr(parentHwnd, GWLP_HINSTANCE); - HMENU fakeHMenu = reinterpret_cast(static_cast(500 + buttonIndex)); - ::CreateWindowW( - L"BUTTON", - text.data(), - WS_TABSTOP | WS_VISIBLE | WS_CHILD, - xPos, 250, k_buttonWidth, k_buttonHeight, - parentHwnd, - fakeHMenu, - hInst, - NULL); -} - -void OnButtonClicked(ButtonType type, WindowInfo* windowInfo, HWND topLevelWindow) -{ - winrt::Windows::Foundation::IAsyncAction asyncAction{ nullptr }; - switch (type) - { - case ButtonType::PlayButton: - asyncAction = windowInfo->LottieIsland.PlayAsync(0.0, 1.0, true); - asyncAction.Completed([](auto&&, auto&& asyncStatus) - { - // Check if the async operation was successfully completed - if (asyncStatus == winrt::Windows::Foundation::AsyncStatus::Completed) - { - OutputDebugString(L"Async operation completed successfully.\n"); - } - else - { - OutputDebugString(L"Async operation failed or was canceled.\n"); - } - }); - - - SetPauseState(windowInfo, false, topLevelWindow); - break; - case ButtonType::PauseButton: - if (windowInfo->isPaused) - { - windowInfo->LottieIsland.Resume(); - } - else - { - windowInfo->LottieIsland.Pause(); - } - SetPauseState(windowInfo, !windowInfo->isPaused, topLevelWindow); - break; - case ButtonType::StopButton: - windowInfo->LottieIsland.Stop(); - SetPauseState(windowInfo, false, topLevelWindow); - break; - case ButtonType::ReverseButton: - if (windowInfo->LottieIsland.PlaybackRate() == 1.0) - { - windowInfo->LottieIsland.PlaybackRate(-1.0); - } - else - { - windowInfo->LottieIsland.PlaybackRate(1.0); - } - break; - default: - throw winrt::hresult_invalid_argument{ L"Invalid button type." }; - } -} - -void SetButtonText(ButtonType type, const std::wstring_view& text, HWND topLevelWindow) -{ - int buttonIndex = static_cast(type); - HWND buttonHwnd = ::GetDlgItem(topLevelWindow, 500 + buttonIndex); - ::SendMessageW(buttonHwnd, WM_SETTEXT, 0, reinterpret_cast(text.data())); -} - -void SetPauseState(WindowInfo* windowInfo, bool isPaused, HWND topLevelWindow) -{ - if (windowInfo->isPaused == isPaused) - { - return; - } - - SetButtonText(ButtonType::PauseButton, - isPaused ? L"Resume" : L"Pause", - topLevelWindow); - - windowInfo->isPaused = isPaused; -} diff --git a/Lottie/SimpleIslandApp.h b/Lottie/SimpleIslandApp.h deleted file mode 100644 index 385a70ac3..000000000 --- a/Lottie/SimpleIslandApp.h +++ /dev/null @@ -1,5 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -#pragma once - -#include "resource.h" diff --git a/Lottie/SimpleIslandApp.ico b/Lottie/SimpleIslandApp.ico deleted file mode 100644 index b3ec03bd617f32e58128fa977fd6ac9605124f4b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 46227 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 - - - - - - - - Debug - ARM64 - - - Debug - Win32 - - - Release - ARM64 - - - Release - Win32 - - - Debug - x64 - - - Release - x64 - - - - - 17.0 - Win32Proj - {350a5ec2-b156-4aaf-9d80-a864c76ba0c5} - SimpleIslandApp - - Windows Store - 10.0 - - - true - true - true - true - SimpleIslandApp - SimpleIslandApp - $(RootNamespace) - en-US - false - 10.0 - 10.0 - - 10.0.17763.0 - true - - - - Application - true - v143 - Unicode - true - - - Application - false - v143 - true - Unicode - true - - - Application - true - v143 - Unicode - true - - - Application - true - v143 - Unicode - true - - - Application - false - v143 - true - Unicode - true - - - Application - false - v143 - true - Unicode - true - - - - - - - - - - - - - - - - - - - - - - - - - - - $(SolutionDir)$(Platform)\$(Configuration)\ - - - $(SolutionDir)$(Platform)\$(Configuration)\ - - - - - Use - pch.h - $(IntDir)pch.pch - - - user32.lib;Ole32.lib;%(AdditionalDependencies) - Microsoft.UI.Windowing.Core.dll - - - - - Level4 - true - true - WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions) - true - - - Windows - true - true - - - - - Level4 - true - true - true - true - WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions) - true - - - Windows - true - true - true - - - - - Level4 - true - true - _DEBUG;_WINDOWS;%(PreprocessorDefinitions) - true - - - Windows - true - true - - - - - Level4 - true - true - _DEBUG;_WINDOWS;%(PreprocessorDefinitions) - true - - - Windows - true - true - - - - - Level4 - true - true - true - true - NDEBUG;_WINDOWS;%(PreprocessorDefinitions) - true - - - Windows - true - true - true - - - - - Level4 - true - true - true - true - NDEBUG;_WINDOWS;%(PreprocessorDefinitions) - true - - - Windows - true - true - true - - - - - - - - - AnimatedVisuals.LottieLogo1.idl - - - - - AnimatedVisuals.LottieLogo1.idl - - - Create - - - - - - - - - - Code - - - - - - - - - - - - - true - false - Document - - - - - - {9ba7a2f2-b723-458b-a575-3f726d271465} - - - {dda0d223-4b59-455d-a8b1-cfae59523ffb} - - - - - - Designer - - - - - - - - - - - - - - This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - - - - - - - - - - - - \ No newline at end of file diff --git a/Lottie/SimpleIslandApp.vcxproj.filters b/Lottie/SimpleIslandApp.vcxproj.filters deleted file mode 100644 index 2308ea8b1..000000000 --- a/Lottie/SimpleIslandApp.vcxproj.filters +++ /dev/null @@ -1,78 +0,0 @@ - - - - - {4FC737F1-C7A5-4376-A066-2A32D752A2FF} - cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx - - - {93995380-89BD-4b04-88EB-625FBE52EBFB} - h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd - - - {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} - rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms - - - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Source Files - - - - - Source Files - - - Source Files - - - Source Files - - - - - Resource Files - - - - - Resource Files - - - Resource Files - - - Resource Files - - - - - - - - - - - - - - Source Files - - - Source Files - - - \ No newline at end of file diff --git a/Lottie/package.appxmanifest b/Lottie/package.appxmanifest deleted file mode 100644 index 87bc516b6..000000000 --- a/Lottie/package.appxmanifest +++ /dev/null @@ -1,55 +0,0 @@ - - - - - - SimpleIslandApp - Microsoft Corporation - Assets\logo.png - - - - - - - - - - - - - - - - - - - - - - - - WinRT.Host.dll - - - - - - - - - - \ No newline at end of file diff --git a/Lottie/packages.config b/Lottie/packages.config deleted file mode 100644 index c9a410489..000000000 --- a/Lottie/packages.config +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/Lottie/pch.cpp b/Lottie/pch.cpp deleted file mode 100644 index b7f2ce9c0..000000000 --- a/Lottie/pch.cpp +++ /dev/null @@ -1,3 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -#include "pch.h" diff --git a/Lottie/pch.h b/Lottie/pch.h deleted file mode 100644 index 46ede354a..000000000 --- a/Lottie/pch.h +++ /dev/null @@ -1,23 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -#pragma once - -#include "targetver.h" -#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers -// Windows Header Files -#include - -// There's an API named GetCurrentTime in the Storyboard type. -#undef GetCurrentTime - -// Com and WinRT headers -#include - -// Some generated files, like MainPage.xaml.g.h need files such as Microsoft.UI.Xaml.Markup.h -// to already be included. Let's just include a bunch of stuff we know we'll need here in the PCH. -#include -#include -#include -#include -#include -#include diff --git a/Lottie/small.ico b/Lottie/small.ico deleted file mode 100644 index b3ec03bd617f32e58128fa977fd6ac9605124f4b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 46227 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 diff --git a/LottieIsland/LottieIsland.def b/LottieIsland/CommunityToolkit.WinAppSDK.LottieIsland.def similarity index 100% rename from LottieIsland/LottieIsland.def rename to LottieIsland/CommunityToolkit.WinAppSDK.LottieIsland.def diff --git a/LottieIsland/LottieContentIsland.idl b/LottieIsland/CommunityToolkit.WinAppSDK.LottieIsland.idl similarity index 70% rename from LottieIsland/LottieContentIsland.idl rename to LottieIsland/CommunityToolkit.WinAppSDK.LottieIsland.idl index 0c381b7f4..2e452873a 100644 --- a/LottieIsland/LottieContentIsland.idl +++ b/LottieIsland/CommunityToolkit.WinAppSDK.LottieIsland.idl @@ -1,12 +1,24 @@ -namespace LottieIsland +namespace CommunityToolkit.WinAppSDK.LottieIsland { + interface IAnimatedVisual + { + Windows.Foundation.TimeSpan Duration{ get; }; + Microsoft.UI.Composition.Visual RootVisual{ get; }; + Windows.Foundation.Numerics.Vector2 Size{ get; }; + }; + + interface IAnimatedVisualSource + { + IAnimatedVisual TryCreateAnimatedVisual(Microsoft.UI.Composition.Compositor compositor, out IInspectable diagnostics); + }; + runtimeclass LottieContentIsland { static LottieContentIsland Create(Microsoft.UI.Composition.Compositor compositor); Microsoft.UI.Content.ContentIsland Island{ get; }; - LottieWinRT.IAnimatedVisualSource AnimatedVisualSource; + IAnimatedVisualSource AnimatedVisualSource; Windows.Foundation.TimeSpan Duration{ get; }; @@ -33,7 +45,5 @@ void Resume(); void Stop(); - - } } diff --git a/LottieIsland/Directory.Build.props b/LottieIsland/Directory.Build.props new file mode 100644 index 000000000..d515eb324 --- /dev/null +++ b/LottieIsland/Directory.Build.props @@ -0,0 +1,10 @@ + + + $([MSBuild]::NormalizeDirectory('$(SolutionDir)', '_build', '$(Platform)', '$(Configuration)')) + $([MSBuild]::NormalizeDirectory('$(BuildOutDir)', '$(MSBuildProjectName)', 'bin')) + $([MSBuild]::NormalizeDirectory('$(BuildOutDir)', '$(MSBuildProjectName)', 'obj')) + $([MSBuild]::NormalizeDirectory('$(BuildOutDir)', '$(MSBuildProjectName)', 'bin')) + $([MSBuild]::NormalizeDirectory('$(BuildOutDir)', '$(MSBuildProjectName)', 'obj')) + $(BaseIntermediateOutputPath) + + \ No newline at end of file diff --git a/LottieIsland/LottieContentIsland.cpp b/LottieIsland/LottieContentIsland.cpp index d249e980e..91f15fc0d 100644 --- a/LottieIsland/LottieContentIsland.cpp +++ b/LottieIsland/LottieContentIsland.cpp @@ -2,7 +2,7 @@ #include "LottieContentIsland.h" #include "LottieContentIsland.g.cpp" -namespace winrt::LottieIsland::implementation +namespace winrt::CommunityToolkit::WinAppSDK::LottieIsland::implementation { winrt::LottieContentIsland LottieContentIsland::Create(const winrt::Compositor& compositor) { diff --git a/LottieIsland/LottieContentIsland.h b/LottieIsland/LottieContentIsland.h index eda06c0ae..c4fa13eb8 100644 --- a/LottieIsland/LottieContentIsland.h +++ b/LottieIsland/LottieContentIsland.h @@ -1,22 +1,18 @@ #pragma once #include "LottieContentIsland.g.h" - -namespace winrt::Microsoft::UI::Xaml::Controls -{ - interface IAnimatedVisualSource; -} +#include "winrt/CommunityToolkit.WinAppSDK.LottieIsland.h" namespace winrt { - using namespace ::winrt::LottieIsland; + using namespace ::winrt::CommunityToolkit::WinAppSDK::LottieIsland; } -namespace winrt::LottieIsland::implementation +namespace winrt::CommunityToolkit::WinAppSDK::LottieIsland::implementation { struct LottieContentIsland : LottieContentIslandT { - using PointerEventHandler = Windows::Foundation::TypedEventHandler; + using PointerEventHandler = Windows::Foundation::TypedEventHandler; static winrt::LottieContentIsland Create(const winrt::Compositor& compositor); @@ -94,7 +90,7 @@ namespace winrt::LottieIsland::implementation }; } -namespace winrt::LottieIsland::factory_implementation +namespace winrt::CommunityToolkit::WinAppSDK::LottieIsland::factory_implementation { struct LottieContentIsland : LottieContentIslandT { diff --git a/LottieIsland/LottieIsland.vcxproj b/LottieIsland/LottieIsland.vcxproj index 8c81245c7..debe8940a 100644 --- a/LottieIsland/LottieIsland.vcxproj +++ b/LottieIsland/LottieIsland.vcxproj @@ -9,7 +9,8 @@ true {9ba7a2f2-b723-458b-a575-3f726d271465} LottieIsland - LottieIsland + CommunityToolkit.WinAppSDK.LottieIsland + CommunityToolkit.WinAppSDK.LottieIsland en-US 14.0 Windows Store @@ -84,12 +85,6 @@ - - $(SolutionDir)$(Platform)\$(Configuration)\ - - - $(SolutionDir)$(Platform)\$(Configuration)\ - Use @@ -103,7 +98,7 @@ Console false - LottieIsland.def + CommunityToolkit.WinAppSDK.LottieIsland.def @@ -123,7 +118,7 @@ - LottieContentIsland.idl + CommunityToolkit.WinAppSDK.LottieIsland.idl @@ -131,28 +126,24 @@ Create - LottieContentIsland.idl + CommunityToolkit.WinAppSDK.LottieIsland.idl - + - + + false - - - {dda0d223-4b59-455d-a8b1-cfae59523ffb} - - diff --git a/LottieIsland/LottieIsland.vcxproj.filters b/LottieIsland/LottieIsland.vcxproj.filters index 095340aa3..a4cd6c6eb 100644 --- a/LottieIsland/LottieIsland.vcxproj.filters +++ b/LottieIsland/LottieIsland.vcxproj.filters @@ -20,7 +20,7 @@ - + diff --git a/LottieIsland/pch.h b/LottieIsland/pch.h index 3d6dbbe44..8b5326861 100644 --- a/LottieIsland/pch.h +++ b/LottieIsland/pch.h @@ -15,14 +15,12 @@ #include #include #include -#include namespace winrt { using namespace ::winrt::Microsoft::UI::Composition; using namespace ::winrt::Microsoft::UI::Content; using namespace ::winrt::Microsoft::UI::Input; - using namespace ::winrt::LottieWinRT; } // Opt into time literals (i.e. 200ms, 1min, 15s) diff --git a/LottieIslandProjection/Directory.Build.props b/LottieIslandProjection/Directory.Build.props new file mode 100644 index 000000000..22b90cca1 --- /dev/null +++ b/LottieIslandProjection/Directory.Build.props @@ -0,0 +1,7 @@ + + + $([MSBuild]::NormalizeDirectory('$(SolutionDir)', '_build', '$(Platform)', '$(Configuration)')) + $([MSBuild]::NormalizeDirectory('$(BuildOutDir)', '$(MSBuildProjectName)', 'bin')) + $([MSBuild]::NormalizeDirectory('$(BuildOutDir)', '$(MSBuildProjectName)', 'obj')) + + \ No newline at end of file diff --git a/LottieIslandProjection/LottieIslandProjection.csproj b/LottieIslandProjection/LottieIslandProjection.csproj index b9b138724..0ea793cdd 100644 --- a/LottieIslandProjection/LottieIslandProjection.csproj +++ b/LottieIslandProjection/LottieIslandProjection.csproj @@ -6,23 +6,23 @@ AnyCPU - LottieIsland - $(OutDir) - ..\nuget\ - $(GeneratedNugetDir)LottieIsland.nuspec - x64;Win32;ARM64 + CommunityToolkit.WinAppSDK.LottieIsland.Projection + .\nuget\ $(GeneratedNugetDir) + True + build\CommunityToolkit.WinAppSDK.LottieIsland.nuspec - - - - - - - - Microsoft.Graphics.Canvas; - + CommunityToolkit.WinAppSDK.LottieIsland + $(OutDir) None + + + + + + + + diff --git a/LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/CommunityToolkit.WinAppSDK.LottieIsland.dll b/LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/CommunityToolkit.WinAppSDK.LottieIsland.dll new file mode 100644 index 0000000000000000000000000000000000000000..f64322bc557bd5c6a072074030a28f482ad2a829 GIT binary patch literal 394240 zcmeEv3z&`7_y56QjM0oJLLrop2<3i>BV;n;QgUg?CB`)~gG5YY%9-OtF;KbB z_FK6T<>@5{uG}jA_FuV7{Ec3jhQI5t9bB;%e^;K1UYUx&+h#_uID)@Vmg>LqOY!$v zG49Dy1H|8+BZrJ2Y{!{I8V!c-#exmxOV$`}Z98cwUbAem+wM242REh`6V+p%EN(D_ zBg_Ap@-M1NF~L9UU&G>H$wbtZFtjf(28c08+nlYWa0hLfTn+Nyp5 zUNk~q@&x~B|J5)U1~r^8ba32YgJJ9EXgOcXU|55{srDV)gUp7qo1yzlXkT0!%*Wpm zC6N^VYi}^5HykNDj<0}v%*9X;G#Av#yFUp1K8!{(?IMaJhM~*4^+-NAkGkm6=$zLUxjEO6bgPD8 zeTZYwNOYM+f;qkp{6L0%*cG529EIZK50G5^4xOJIgt{M-k<3g%@u3fp z>`y{#$vuQO6iL~)Q2d7gia{N-7d-~>Z@-1&D^DT$D;G)XbR@mnq2FyCko)&8eA z==Sl*)vJbF$};5IQ#?7#(B-Y)P%PFQxdUIKZu#>l{=E~)!L6uM$ixckkvlsQiOGmA zd5h5c`2|oAlZITgB}m3!M(fvOkZg=YaYrs%yXPT!{s91JMxK6pCtCN`L+ff1{%m<9 zBX^@XvoUhxD4r?}kUJWU+?uf%YrX(%e^9jLv(ayM1r*@P@;wg)X~3UalFVr=!hkt|^6OSRC@{vAN65962p&s;Pl!M8lsP`({2G z4t|G*x<4b=@j=wRoQ~YP8R&9)9FotEq4f+bclHMO>FmW+RV)yZAWsvFOnouIyV!^Ph8@isn6y6f!x(_ zPTB1Vpl35AKi`SE728l(VHu#jd=SMJJUB?lpwNj?3V)BpZFifj8J zX+WTxW+JzftH+X!VrnhqE|fs$ZBPm6ToaUi<#DUv>%(e}3Ja<=XJ!+|J%S_;L!S?E`f$iJba%N#^fn-*?+P2@IH@RtSwXrp~7{%TJrsy5fwI3i!Q2f44>p|zk5id)X0 z_)h}5Ea8G!O*32xZY}$Zrs(qNpUCAufx2~M#IqAo{5K4_J*_de$KS}Us*YT<+tK+X zd1_|AwZV1bIHEgp7we#N+Y)Ga7a>)4#%-uObRR(NKa7S; zCy}%tfuz2$2UMxG@1U4Oyw8`xh@O*B_kIwHV!dtTWL|HJE?0{oH}q$~>p{n||0fQ+ zAH_)KwmgVjd3L^V4y_ITKvIdT;+0WIEG+~pk zilAmxK(gg50DMn@mVX(=)u++#2U7ao+sNI`Mcjp}qRG4HccT*O?plfBk*|Y z=Mw{vi`fe(eW)ddzft!dp-jAr&O0h1*PuUIOQ)mw8)X?mRe6+9N|5)@(mAA2uh#cP z?jgGTx7k`}EOM_gSD)7Gts6+zQU$hdN54P0T%Jos?)`UAHbWNh!|!+Xy5BzC!08cB1vMHYom;j@;fHj6Hk>#T!qc zII=!+aqpwwI0g=@`lEH&ZWJ4xL~a!A#&AyXjek(LkdwLpB1XKq0=f4~Blpg7Btym_ zxk18La_u*3i4g_+&}B2tO-YK!K+--rh1TJ_Q1`~KXst%)`Z$&K_A_W5!>NuKi`K+N zD7JkaU3L;wMn1Y!r`ze*8Lb;SA!lYo|4-2Gdxl3H=+&k&)L6)dFMdPa =(r$cMV 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 z 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 RQTDG4HnqHadFJvTd;=FOeDDAO literal 0 HcmV?d00001 diff --git a/LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.deps.json b/LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.deps.json new file mode 100644 index 000000000..e87a7b96d --- /dev/null +++ b/LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.deps.json @@ -0,0 +1,202 @@ +{ + "runtimeTarget": { + "name": ".NETCoreApp,Version=v7.0", + "signature": "" + }, + "compilationOptions": {}, + "targets": { + ".NETCoreApp,Version=v7.0": { + "LottieIslandProjection/8.0.230817-rc-FHL.2.g3e107ef073": { + "dependencies": { + "LottieIsland": "1.0.0", + "Microsoft.VisualStudio.Threading.Analyzers": "17.5.22", + "Microsoft.Windows.CsWinRT": "2.0.7", + "Microsoft.WindowsAppSDK": "1.5.240404000", + "Nerdbank.GitVersioning": "3.5.119", + "StyleCop.Analyzers": "1.1.118", + "runtimepack.Microsoft.Windows.SDK.NET.Ref": "10.0.19041.31" + }, + "runtime": { + "LottieIslandProjection.dll": {} + } + }, + "runtimepack.Microsoft.Windows.SDK.NET.Ref/10.0.19041.31": { + "runtime": { + "Microsoft.Windows.SDK.NET.dll": { + "assemblyVersion": "10.0.19041.24", + "fileVersion": "10.0.19041.31" + }, + "WinRT.Runtime.dll": { + "assemblyVersion": "2.0.0.0", + "fileVersion": "2.0.4.44211" + } + } + }, + "Microsoft.VisualStudio.Threading.Analyzers/17.5.22": {}, + "Microsoft.Windows.CsWinRT/2.0.7": { + "runtime": { + "lib/net6.0/WinRT.Runtime.dll": { + "assemblyVersion": "2.0.0.0", + "fileVersion": "2.0.7.45331" + } + } + }, + "Microsoft.Windows.SDK.BuildTools/10.0.22621.756": {}, + "Microsoft.WindowsAppSDK/1.5.240404000": { + "dependencies": { + "Microsoft.Windows.SDK.BuildTools": "10.0.22621.756" + }, + "runtime": { + "lib/net6.0-windows10.0.18362.0/Microsoft.InteractiveExperiences.Projection.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.26100.1000" + }, + "lib/net6.0-windows10.0.18362.0/Microsoft.WinUI.dll": { + "assemblyVersion": "3.0.0.0", + "fileVersion": "3.0.0.2404" + }, + "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.AppLifecycle.Projection.dll": { + "assemblyVersion": "1.5.0.0", + "fileVersion": "1.5.0.0" + }, + "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.AppNotifications.Builder.Projection.dll": { + "assemblyVersion": "1.5.0.0", + "fileVersion": "1.5.0.0" + }, + "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.AppNotifications.Projection.dll": { + "assemblyVersion": "1.5.0.0", + "fileVersion": "1.5.0.0" + }, + "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.ApplicationModel.DynamicDependency.Projection.dll": { + "assemblyVersion": "1.5.0.0", + "fileVersion": "1.5.0.0" + }, + "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.ApplicationModel.Resources.Projection.dll": { + "assemblyVersion": "1.5.0.0", + "fileVersion": "1.5.0.0" + }, + "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.ApplicationModel.WindowsAppRuntime.Projection.dll": { + "assemblyVersion": "1.5.0.0", + "fileVersion": "1.5.0.0" + }, + "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.Management.Deployment.Projection.dll": { + "assemblyVersion": "1.5.0.0", + "fileVersion": "1.5.0.0" + }, + "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.PushNotifications.Projection.dll": { + "assemblyVersion": "1.5.0.0", + "fileVersion": "1.5.0.0" + }, + "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.Security.AccessControl.Projection.dll": { + "assemblyVersion": "1.5.0.0", + "fileVersion": "1.5.0.0" + }, + "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.System.Power.Projection.dll": { + "assemblyVersion": "1.5.0.0", + "fileVersion": "1.5.0.0" + }, + "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.System.Projection.dll": { + "assemblyVersion": "1.5.0.0", + "fileVersion": "1.5.0.0" + }, + "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.Widgets.Projection.dll": { + "assemblyVersion": "1.0.0.0", + "fileVersion": "1.0.0.0" + }, + "lib/net6.0-windows10.0.18362.0/Microsoft.WindowsAppRuntime.Bootstrap.Net.dll": { + "assemblyVersion": "1.5.0.0", + "fileVersion": "1.5.0.0" + } + }, + "runtimeTargets": { + "runtimes/win-arm64/native/Microsoft.WindowsAppRuntime.Bootstrap.dll": { + "rid": "win-arm64", + "assetType": "native", + "fileVersion": "1.5.0.0" + }, + "runtimes/win-x64/native/Microsoft.WindowsAppRuntime.Bootstrap.dll": { + "rid": "win-x64", + "assetType": "native", + "fileVersion": "1.5.0.0" + }, + "runtimes/win-x86/native/Microsoft.WindowsAppRuntime.Bootstrap.dll": { + "rid": "win-x86", + "assetType": "native", + "fileVersion": "1.5.0.0" + }, + "runtimes/win10-arm64/native/Microsoft.WindowsAppRuntime.Bootstrap.dll": { + "rid": "win10-arm64", + "assetType": "native", + "fileVersion": "1.5.0.0" + }, + "runtimes/win10-x64/native/Microsoft.WindowsAppRuntime.Bootstrap.dll": { + "rid": "win10-x64", + "assetType": "native", + "fileVersion": "1.5.0.0" + }, + "runtimes/win10-x86/native/Microsoft.WindowsAppRuntime.Bootstrap.dll": { + "rid": "win10-x86", + "assetType": "native", + "fileVersion": "1.5.0.0" + } + } + }, + "Nerdbank.GitVersioning/3.5.119": {}, + "StyleCop.Analyzers/1.1.118": {} + } + }, + "libraries": { + "LottieIslandProjection/8.0.230817-rc-FHL.2.g3e107ef073": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "runtimepack.Microsoft.Windows.SDK.NET.Ref/10.0.19041.31": { + "type": "runtimepack", + "serviceable": false, + "sha512": "" + }, + "Microsoft.VisualStudio.Threading.Analyzers/17.5.22": { + "type": "package", + "serviceable": true, + "sha512": "sha512-WzCsniKpC6S9yAerB+Od8pK8RytxW+fFSZ+GjL0y0XdIb7H/os71bWFbKMXxB1omDLZHNm1IdBlcLQm4KmS/AQ==", + "path": "microsoft.visualstudio.threading.analyzers/17.5.22", + "hashPath": "microsoft.visualstudio.threading.analyzers.17.5.22.nupkg.sha512" + }, + "Microsoft.Windows.CsWinRT/2.0.7": { + "type": "package", + "serviceable": true, + "sha512": "sha512-l2PNM7ZpWh+0oGmESofqKcUz1PkkzOU4hmqM4DYi4gIjp36dJlQR6vuU9bAjZYX1SHYj360NqEireFVRntYhSQ==", + "path": "microsoft.windows.cswinrt/2.0.7", + "hashPath": "microsoft.windows.cswinrt.2.0.7.nupkg.sha512" + }, + "Microsoft.Windows.SDK.BuildTools/10.0.22621.756": { + "type": "package", + "serviceable": true, + "sha512": "sha512-7ZL2sFSioYm1Ry067Kw1hg0SCcW5kuVezC2SwjGbcPE61Nn+gTbH86T73G3LcEOVj0S3IZzNuE/29gZvOLS7VA==", + "path": "microsoft.windows.sdk.buildtools/10.0.22621.756", + "hashPath": "microsoft.windows.sdk.buildtools.10.0.22621.756.nupkg.sha512" + }, + "Microsoft.WindowsAppSDK/1.5.240404000": { + "type": "package", + "serviceable": true, + "sha512": "sha512-B06pJv0nH31vf4Df72Qoa8A+i12LBUQ/3LhpyWVEQ83opd2a5U49XnqqYrK/T8J6Zf4JTxfLvKBSM5fgXb1YXg==", + "path": "microsoft.windowsappsdk/1.5.240404000", + "hashPath": "microsoft.windowsappsdk.1.5.240404000.nupkg.sha512" + }, + "Nerdbank.GitVersioning/3.5.119": { + "type": "package", + "serviceable": true, + "sha512": "sha512-x8k4zV6YKZA5Rr810439lG9NngdbyPtFv0QpIYz32m1Im59kvSbEHO8gKGZoNvsfZSquayjEDUCa8acbut372g==", + "path": "nerdbank.gitversioning/3.5.119", + "hashPath": "nerdbank.gitversioning.3.5.119.nupkg.sha512" + }, + "StyleCop.Analyzers/1.1.118": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Onx6ovGSqXSK07n/0eM3ZusiNdB6cIlJdabQhWGgJp3Vooy9AaLS/tigeybOJAobqbtggTamoWndz72JscZBvw==", + "path": "stylecop.analyzers/1.1.118", + "hashPath": "stylecop.analyzers.1.1.118.nupkg.sha512" + } + } +} \ No newline at end of file diff --git a/LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.dll b/LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.dll new file mode 100644 index 0000000000000000000000000000000000000000..8e08c7e15f1775ef57d7a1b3e293b659f9459208 GIT binary patch literal 44544 zcmdRX34B}CvG?37>1vlO$&2hbiJVoAVw6ulxb)gFnntcD6d#@xr4()sW-tYT; zN_6g-IdkUBnKNh3dgT>oTtyZlvf_K_5YadBrL3*oW|p=y8#bJ%=6Hx@uQ45{@VWJZGUw9fI6X5gu zgG8rsx}rYCp9s;} z4cT0F5J-{j03uw`FW_7BSqgdFH~B*J>dhh(xx#pK!Zrq6!>!M@L1j}JC z)L>n7YR&llbM89rtQQ>>Ikbyw91>X-sf6;+}z4wMm!*=RN-0^b0sZuQ0qY_P#Z;;VEy@TGl}BC7L5)U0;)%KexX4j{(BjsjD8NN_ zZyh-ofu8ft#}kz(%4dnzAfwyJXy)OAAzQ%awq*Q>R-Pf~gVyqcN=OT6i(4oP3wK#E5X)8Z(~v!2*D2JH zBj8wEMnNTDe>NIKYQP?4ZWXArotvjF3N6%m^!(8>B-u0N2)#kY8LdF1e6{KjNkdjG z0nC0|!bd(=BsCb==LllKBTxGc`gwYwyg&bz9==!Y# zAG9sn&=N&mHJ8SD-S%no8rloREVKam(8k5>VvWu@a>H;Qwij3w%Br`PAE{YZNG*fO$ob?w*zxTVNC_HEFGcdT}4+I$CY4Obv?ESdUgh z3rs1;7M*EkMvp=q*3P<8gcddwpdcNH&IOU)7c_Sr*+C-qiW(6bJV3k9LRME0rVyQ% zC$)?Dv0bA@ST4x4YZi()sKB;d+F~dA1=NI^gW(L+b1mp#Yv6|}SzYCB4GbefAsBQ` zbO)EmvDiix-j|O;Goq`Z>jkW6LW5*g1})>_bbq<`Wi+l`WBFb5qVzKb1*mA5?&Yjf zu7{OAjVBrx<+6CLUC@(N<(jwzF)JEEDK5UXbgCHvYmlO_64wGU zsklp_hL+Nk%R^e-G35u`L3MW;jAvIw7lKlAa9`2fb~ZuoR0U$cMb+#%=tMiY0(mKb z=7XFTIvH}pasoz6p^0}wY^!SB39MDM?Sz~#Hdj#DJ-{XTr6hHXQ>AMf77z79hfu$^ z6Lw~0^^5+`V|^6#fabJBqg+je_3RRtr;c$UAscYWhBiMCu+@S~fLp=z85IyST8Ct= zSiqWF%u&b7GpMux_{tA>UxZod7Vu&K9!-Hksjz@kH^_7WaXSs3!v@0gsq`^C(Ke{F zI>v&RA807iW3@1t07|b@DxwW2?1&aL#tO?E1(F3c$vAW^NfR?uRvCL}O_-KLU0&V4 z=-q%`cBs)97xW^upvzrHv-)(KQsH1P{;)o?I42qh**Ke2v=Omf6N7Bu+$SvrizB$g z0PRL!wdTN6D~)0hs9SI_w2M*FeR~aHe!aGUE2v>iQY9})^7g=86-I4zRkSV`qZn!1 z9ViF>F+fpNUegWRO+i)FTUeDA<~BUw1yZzPg-pE4{x3!lBhRya>q&|%2_GQs|@H8qjS>Mu!6)G*$ zbSk6B^#Q*?bBm3rzz>WW+&WOV7?=M~dessv4lUxFWL2LXzW!jZX9QFy1Y z-p93_M+2pD@78vHfT#3Kfe#T!JSCo`Rn?XVV_Y0}VGTW$>j*by_|Y*IN;g)&DggT3jfml%Csk4?FlLhv}D4yE_`9!`I)z2QRhF#4#+-v-Dw&ILXLnfb36z3FBWdMU3 z8@MKOm4$GnY6gBuJFG;ReduLkhERdo$7MX5)BDaVct%8KOH>ni`@q>fb^=0EUMI`j z{&i5Qp7t-|@qbO~byK7cIdw$^oX}Lr6>u%?pnx;vMqmkgikdj&4S3PWL66>Bt?<7u zdjsypj(|IJB1ESbA!S9#*M9P$Lx;GwdV77A7VJaE#Ag=emV@p?Yg1K)po)Z5znnezMWuYUBo^ej?wt2T5ccB_qmnBH*1wdP)C$k3Zn9XB&@Q_;m>`q2g zoexC{K_>_n@cKce`@w6TE;F+#fA*jS!u5fY!4>D$!#%n&sIp`5>PV;V7Jytm73twM zgv@(1w4kkSy-^~wm0A081F_;c^9ff)GY+UE9Q8`MW zfNjwy)Z7|KvU5II6g4%fg{HPeVJqyZ^ge^B4zFjRyGipnb&RQZVGy)t`oYWND3#fJ z8S7XWjWPGkDM%xX&<-pKOkNS&k&jp`$YE5l0_8){tosAo%K*!fB{>i6KPLni=ApFdnlC zDItfmW8LcY=%l$rdOc3fZ9wukD=D{;V_X&NDvXJO$5`v?7%M&3hawkk05mlva{{M; zH?Jkoi1I1wADh4yt}x9H+sN2Q`?eD>uTxK`mp(b6XMH ziT;cA@C=lpDpHrJeXG=?jxnFbRr(W#f$r^E>~>_9p$xb~Opm=zvFv(`?KvcRR7a*e zFTj|HIwqnCtLO@(VJLHqRYL`qE6UNiqoc@o8^;9P$tg}*?yM)r7(01M3~6dW%b>Y2 zPb9dX?HqH!yYMIt=R3yw2su?LQ=bPp92a2vWDPiL>tG?q)Z%5#Qti?6KukPfO>zQI zy56^Lr(@qJ^sPVswb17;Lu)K%doy$sG;~9v8(k+bR`i;b>M8d+FgJ@xS(;QCb2L3- z)ct&E=;Ll{A1+1P;N)t3u~4KAcpcj|J^QpcomdCWnN zCX59vFI$SMNI#Y_){a)&kXMd{r$o?Yso2k=qj}8_i~5k1yJ(grI)>Pyv(&K*@Dv@Z zV>=Pe?P7cb$aw;Y2G-}7r6?P7Vw8PQ+s$O-2weJ-pJl@^%400c#*IE&1siZ_n1w)r zPV7WvCO{8fJg%Pr+BnndiYtv?D7>(Y3MvQ7TG4RWA6TT0T?DkZJY;nSt%l+;yS^Am z&&wWY*6uVMEvA!(-l9}`jJ^%YGOa^7jm71B7l%w}bKj>m6kj4*1U?qc<&(Ly;oX4DMg;~~pd=<_PXc}FBTx%-qGn~%Crgmf*sJ+fZsqKuY889c%< zN3^uxDAtm>8VF2pPEvE9Kx`)$Y`8t$p6&(@{_GxvwahNb!L_<_*B}^2i&=NW*-XYl zzt-Ita3*6>Q|s=HQ?ZcEx_iS^ER<&5efCsr8)GpFOy-LvpLI7zkI7gp0IiG8qNgi) zH7E^pEd-8!5&`8q*rymG?qJs=#vN=Ao<;}zG@?29VSSCxeF{=ZpMqc4ayKBks87v7 zI^@guDfBVvQ@kw+rzG9#Mr1*0vLNI|NhszfbU^vcZYeL1>_xO(KC^psp8@swF*+aME>6W-J!_uzmJv8zLOAq1K7x$2xiyLZkb&cLDea8C&M+l&oRdY zbEw+Y!w;a@4!iM$79qP-9s5KF%T~i|Ns}dG1XNfuda#SgVkY# zm1mqDy$zC$qYqnmN$>@L6HFl>ueIk&=?69VaqShsa-HE{Ak#q&KHb2wr1K2y1&l?* zu6Uw+GACfV0JD7d7g{OfmBSXk8X9`Xw$|8tmnu8?A9WtIQt#G9I3njU54Q z7v7bvUQEH$z>4|9UU`ooK&38A`LnN}qX^pv4Yqe6|0{H4meL-)6Ca*k;0b=T)RdVU z0y6W%Wd4xOd_r*lly?bLEYx|k?}p!@PUfwSt_91dF~%8v`>PN&11m?5jAE){>~5QR zy8dY%wDy!d=o9~>ob${)RlAPYJJSrDFJ&Pk+HI0OqI{+NSx@=1Ua~~*f|PE(W6hT~ zUxB%aJqjP|3aUX1Hj!Y2Mi;X>qW=N>$QD&U zSfz66JdI$ZL}%?jXR3jVq}*?oF#&&`o?~jU*uD+x29-%>Z42m;nwqF;xkK_#;f@6xjmiMH7Wq>f=`8x+F#t)9<=nUk&FQjW>_kJwY5nCD@SehYQfJ>|C% z(>{`HjQjm?NDg0^03cmpS=9A`n<1C{!YFU_ZKRm+g!mXGw)U4 zy`qRWk0;y*$P!c!miZBLM869b=mzZi7VG-+8oj_-3p>iM8rYGE#bbxw99vp?bbWDI z>?4mbcFlHzdBkj-e_`-4`C}J3-yU)BUs+Ta9A>SU?E>TaV#cVkIVxh)#V}jhdzv=C z`(Mj%w$sVQ<;&Q~{ja82fa0<9d--<4tiUw3sqMse(}=oZ*vQ*7JOK_UQ9lpZHx#qS z;A7U$s2t~C0P_B#{K)A=PPkFe@;Zdq<$)Y#2iQwdccNje6ulOZ1$!U2;+eyk=*m2Zz-`Z9 ztZ~VP1@f`Hg|g8%r!qaUo9KGZfe<#%9qW6 zl)b08Yz%mT+!u|qVGt-A6I7}9m;Uv#(JQBx&8U3Y3`p5G7MFbnmwmfYHVg)3V{$5G zfB9c88@+mJ*^J7U&484RX=JNR#z@A4gx zqhSy0z!wW3wjh1dtH)u&KA13i2AeP-KcFTZD$k`+qH%COg%4YU$%o^}Su%-Fpunf% zefV(8ntV78KEX+RLIpnI_u<2>Wb)xS_>@lKQ&!+p`96GD<0c=DgAewmi}X`b;8RuL zQ?(0z!B}5dWo`dK(YMaZ91k!jnmi$D))j4z1VPnVdlvHPJ4gvpa6~aA zX*~O}8e>Cw21uE>Mr;!Sa!vNU2uHX zgBrZDmU|2&^T#euyV6YE`em@Gv9#v_L@5HY3kSq#=h9LmOw|cqz=4;OD*kyhI&?=dmuv zfdfCK{pxUd_!Hz5fETBnvZyQT=d(JLq-DI&sOU!}z;rgZJv=)6h!uw=4lVODWXBd8 z*2Xs8SDrz7=C2|%U#F;>e=s!8)Z)Dxqptw3M(<>Scurppo=LGMqi3E6oun`Nm|AZaHgzcCMHFGl!xn)LD!juMeGN(2W`tVxxKY0{ z$g&=?Shh7`1`0u(*f3;TR1YL#BTx)a$Z@{U{MkTWK=F%Q6;K|JOA(|GN_{Rk6C&q8 zg+URy>K3R6Lt~5+FL{y)&9ApFP@}&EGnvnFemFe%vkTU7{+A_xiJ6~qh5QWZ`QPIF zt!nfoJfj~$Kz!MbA--~SX>sahl4{a^RGyMa6 zQl`yw!x8gH%Cvbtd&E4FGHsrlkC;bNit{uY+PfTCu&bmiFM0(aT4bhO$!R9=v0~uk z#lTg?z|{=o`F#QqEpi$5q~EVfaeG_Ea9>d^=fYT&s1;tVKDY~mm({?)5Yf*nV3xRP z<*u8rcU(Qunpuie{T2Z>7;RMUuCs!O?2Ec~Zw8MDEQn;Y4~87|+;!?>{ht2sIXlX) zu6cT1JJR^GS3>Gd3=elFM@|_T&LoFU%A7~n*8TR{{l7WTxA)NRho1QOnO8N>Ij8L5 z(sNdS=bnbu|9Sm`3tv$5jAs4=zqsUU^>?4M{KhkW_T^N`tgDWy`oX5{ORcM~9r*L1 zpPY5iQx=^(UtY@;xNQn-fO&ezcYJEJb8s}hJvo}rjPxc4M>E+S^wZ&yyY71amQ!wi zZ?tuF^^^BZE!X7p|LWPb=7cTkX44}Zb4<~GI>{O2+*8)jUc|Xg=N^AbAFrF92E1=3;I3glnv;(Tn>g*2uOH`} z1@OO=CMw@2rB49lB4HSW(UV;Gx)J{?zFvIK!I!19;S1ZuJ_Km+WtkV^dz=yH^iF)) zC-Rr`Fde+U@MHNnFVU4VIgL$!PWXE>HM+QTe4a*&C4Q)sF`)$<9+0pk#PL!ehhHsC z*Wms^>Eihsy(9P;*6+>q(cp|EI7G^s&#NA$yuu>6${ByH#NVl8%%;lw7W!y@ZF1fs z`k>^RQNp?IpTns=;2ES%mRhHayteyYRa7_Uv`URufrF2ltC(AN)gK)iy%OCw+edFl zlkVKA zF7}T`%E@ADTv$a9&t(2Tp1T#f?h~n2+L-cfE6eai1=r;U)GJ8Gg_+OY62IH>ZO|-> z?3=C8kZ8Cs$hp=C=9kd$EIMGldDa{%pa1!V9RJL$Abmej>ughAs^-@ITq$#2QpR;x zOZUtT(rYuB=W8>+H**f1U;V;t4u3j(0mW@UpM$nW9ewmO$P>h{SnKrBC(&wisA(S`+ve&9Lsw{o2 zI!Kq6u|97_=%XL_lJk7@T7V@yQ`)p-A(wkz1=BoS&ZVrWVC#Bx9*2Jr4Kzt>`oi3% z6{y#<%H8w0l%{gl(kclbDZ2u8a(XFa{!+o=cENv5;@3%dZW-g>6UtX4+*kTeE%$`I zb`HfGU^$;HT|VCi2)zYRUD^0NhTtc8sSjCfNU_m4pr50*l}OP9nt~N|+~-F~n&*Q6AALbQd`xHTg7eN}!7X{m#K9oI>9v zOHB!V6YjYZdp6&to00Fl87|~oOAiS2pkIgf8RhBF!$t`@^m9_A1Q+VQ7DxYXKs#Zk zDf%FfB#`)Vm|~?sAwbV+oVFQh41LOGLZqnlYoX*cFQ9J<KgNF4Cufx? zYsOEQeH_AdvpC!;p(VueOM)C;2}~2+6nX^lzq%On;m{0q&GI%H zm#QDtYUpX?t)az1j`!652_Z$_)#CK!+T)Y}{i#H;*U&p9k7@y$?_cVup^jNh`9jsB znntJ2`V&0HU#kCxFdF!qQ=xcxhFU|{BejP7(Gqa}aqYXn_sw|}D*3#Ge_wE>tA>6x z?`&6`R?o;F+&ga+KAG{FATK(^r@ zfH{Bu2fR&mwBsd&TO_QJ&?n(F5`IX+vn4zcp+>u_H~AC_`M3C*=nI0msrq|9jp_qj zFODnptH>6Fk4Si8CC67G)am2&E6+>baylI~Iy@erW1XGB0A(e-P{O2yD-mi^uOo#f zx9wFIR~ja`%{haW3hgV&AiUMJyRu1%+qcYUQZ7_E zBneNoalFRLVW(iu(>R_L$}c-O{s+O_E0nDgUvJF<{}*85%K6^&W~_>!BhuC3d2=3x zNuMUrCE;0fo&3CHw3jQpY|VM-p32W_`Z|Ei zyCrhFrmq4RO8D>AI_Oe^OTvG@wuEjMNN<(SJeMKrvK62&P|DVoPg5wSB@F25$ii92 z+m6pezghT%wv6r-p4UQ*KL#lg;{Y1J+psVS{ z&=UI!S~j24CSWg@+E>z-1iFMiSo>T1YFf5{)ArH4$|rfeTgZ@ZA^pUMaDeFA;8~7- z>J{iZ$De!*oi31G+kU!OPXo`-AdT-*n>ZW*@;c9?xHQ^6+8KHhdwk0Tx`ZBBSm9hp=L>W-c4MA#tfRXGx{gZy{mu`P zXOYh3jRl{?xV<+IJ>ndo`|CLES4yeh>P${*u_W!Al=hlHdi|30mOvLn>Yyvhr`-7H zIvb=_0$oDSm&|buasod4Y?Xn8L# zdd`3vO1HbuC65^Tb@Y+&?d}}iB#_?H+b3yaJAGZ!E~5LDue-O?4-M!c^?vtx^p-%Z zi7L+yE*hVGwouJ6o}D@XXlZG}vx`>68F2|M_IX^p=mP8;Fw_cYH_gL#79hv9^KbTy z(_(=pXhZl0K*IvDg;aSaXiT7e6sl3YAEt{8h)cMHZV-suDCoL`zGS4a<}ank1e(BY z^cwG_^tMh($JV61AEkBD$tP&;jI{T1+9%M}ba3V_?-jI4y8I<{Qq5D|E9qW=Ca7b^ zBi@hGYkC^Wdy=lAzYC;m@G82mm1}ej-8K7Bq&+2&UWcpbMS-{ub9~p*>juPi_~fKI ze3ITX(zp(vqH1wCT!*uKpP~~4y2Mf9Ki9X1`UTQU-$NG|X|F}zbL^pu4d@|(u9!sm z1A(q_T<$3K@1f@ex{j92J{?dyPX*EcwpM@K|7p6`fI^jz`fs3T1=7pAk=~jFZI#`E ztLeAO?2;SlX#;v%{k-;Bns+qwyqa#YzFcw>jSKXu;~%pQm3*G=HK16vFYtN#wE;aF zo(X6MPv}XP^Yb)MpzG+V84n`uUV(I3ZlnE^pvWF)}ZY2F!Y{5d4Xr3 z^m}xS3`y|ppxjFvbja~BQ0}Gk1-gzN2IXG*ra_qk<%9GKgYr)({Xu%$pganc4^p!X zY**8AQ0}9%bja~pQ0}9x0$qoTg#)Gg=&O2~%w`^$QwG4o1FG2m2?w6 z7txhSdvsF1$LMq;?KY%6HYx3Ky2(fzMcU(&(w?AS8);`C?Fnj-;aInjC#hW^_NMd8 zpQO74(yi_(ddx@*)nv+_qSp*4V!NpP2lRIXx~S@!@*k3`ho$CG?bGE?Q>g(R<^E#% zGt^-~>F5jPKcce@==kVw%Aci826S|EPQ_2?as#T2_Er3p{=&=q5nF$wPMo`fVQ40KJ)qDgnKfhwecMzsp090{XoP*znrqf&t$p~3lYR{ovZ z4aimUb=y0%Mxa-n_bsS!zGKMws&jC`m6h+%>5?`vG&wx0JWs6!5J&G%@r0dZ^ogL(~! zTk{~DZ9v?bhv-8F#H~rnwFbnksVH|E5VxkPJZ3=Lnil032E?stRo*ioZcUp~-Y1ed z*pfA6t^u(nYf7U5u_fD;;|z!`*{&=%Ahu+?vetmulI_X{17b_IEBwj{&!yOs?aGA$ zO;DHb@+yaNsX(tP7yE9maw@+QC`66k3ud?#Y)fI+fcL}Cna}Z`dpQ2Z8vb>OmlxuM zhJFT&jTT@d{hy^;vG1&q9@Ymr&Y?H7Ag_h4#&LVV*V_lg+5=)B_59X zLM79zsgmEzK&a6BW3G&Ft@#Dv$&|(T;#57(p7ud~_}{HaF;&3kAUg|c%vd?v`4Z%eMpapuPQw@?M7+p@iEHm{JQWl3Q{kg=HQ>A%g!?Bu@68zGI$i{ZATe}(RQtA9ndT#w<`r^{{ zc%5h?3H}Ndho{csw$L%BN_+k5oNtV<{0pV6KP5UW4!IRnIy=lI9x2ZBDjhpVMT_4t zw?KI;^6D78ZYq|;G^#;UC`F}rQM!d3Xf-Px?`95#)Z(})$@Hm5qQq}9g{iGNz! z?nt3oYnGO^ZH5J1nV4PRV_JTh@Z`|Ma4L4uM8kUgqry$69EotM9u{klHKvNjEQZE( z4*!10t)`$gIV|pj6_68eSYtm!!L_17{JSEdu7UqOso2vh@VB}b^3zk;t$zxqH;+>U zZ!OQEy|^>I4`(Ki;gse!?0~26y&c~_;a606y&RCR2H|Ts>76y_VQU}4{nnEOzn0tq z#g?Xb9d_Hff=QDy#}3TzYx)tsP-C}w=qUeATPae%X4^x{s=jW!neMTF8)16k_ieY+ ztFC>vyXijv6Si;BXKH>9nnMd-N9yn9{SLXlH1l21l$WSlnjQkr2f!z!aEaC09&ql& z4l>L60Bw#us#O!uo?oR;)r9Tys6V_A;oUQ1_E*Whu-*O+EeV}rSCp?r&$c@i)xE{; z5veMbS#!Q&uT+>@K)I;uetWa*dL4t*n7tOM|7DLW+ZRS0^RNpu-w~Hxw+`jO+B!$4 zvU$c)z|We~;#jMkP_o>Ski5$!Z$HBQjwCqj$Nn1cdiBd0K);*;B$bB9Umad2~*VGmRazF53=;bvvP~^>yP+tjs!&u*!C^a}U*5UW)J|;j0kNTX2Sb zxuhSmPtBwADPKkpo(qug&ghar#0^?*`c*=|qMPkc*UX(b(c&oK)8lk~W9 zLHLWVQThmGW22(IQPCdDbI|pwa*aRaeqMRA>Pfl)^z+>pOLzr69Xby9cYwb_a$O62 z%sxsNhi`O`;s>xQoX;!T3{JfmE%LllhWPU$+Z9sojk2eIBk?K4jdDtHqnumZC}$Nn z%1+d+Qr3;K4|Rv|zfsOGhUv`(n>{xY@5-!2`))&=ceMiQMO9X3K;=EVwa^mdd7tWj z2;L#Bu)Zn&3V-uS3ev5t#?A%8~uZ~Pi6dDz*l+RhO{ByTO#dSBJF!3;d_uUX6L+P zz8#?dhQuH8O(1UdU#*T+Ekn4u>SX`zh+m43dk4-VYk%TDSKS}j? z9m-je077>pT=IaFemn3_mBiJfgMTP_TwNLZYsoW$e_oB)#sbxJQPn3Aj#b?eXjV9^ zCbi}}h;u2=qr|s>VXJFaj&lDw&@VLolDbaf>x_8B_WPjIGFH_aa#}d=#ky@EgpDbu zg;$ooMZDv9hZ3q8EU$((&M&_g{q&mhfVu#!e7{icQ#x!9mG4t{6~5oV932f+{Md+B zMw=^G!c1_VvIeW_YFZQ>uBf%lnv<>QK==)NC&D)>9#^+x^^;W2_gz!@mcskicZjq} z<%v08bUh$#`ndWS)=O`LGkT4BEmlPD8S(8{0a;b5(IuSmJ8xd)C{1CSw zIX-B_XV7o3m&BNh1alE?3WSwgFoyledJ9IeAJRi2+W`sJC?Bw2J7Z84ddr`!*ZLkp z_=1nDjImh9Y#jdC+7gHeW~qeTg6{^tB6yKtZjtaI315@YVq*?-ZGX1@pllFfy!;~D zHQJ7fTLk}*gs<6d(7s*q8d6&Vui0+VeqUkH7-P|xvqif_J1RU^Fmr+VLD^hjz8CHm zOgAv`@@`TI#>w%7 zYcr<$6E4O~xEOP>V93K5^4??pA?@{YeB8(3QvaE@Xvx_Uj!Q@-l3K#}y%N8vj4}Jd zRrFZd>k?WkIX+LqgoKeQ;U?kP5)M^uR^Bcjm-tN*?v-$#;15WgW^k^Egi9rK;GRm^ zOrFcg8~^fbMu_DD-g;GF)%>Qd4tLNT+X~wUZCh+t+5FlZZIRZlt<}!cuF;;=UesRG zT=pLOPWx5%efAPZwc~ilpkt%sKF7-rhjRvQd#rbU&iSk}>}qu#@4CVDeb;}w((a4h zeV$#O%RS%lJm@L&#=O1WbG_Gizv2Cvx5>BCSLr{-pY-qYU+@2p|BwEMN`74OMu{y@ z8W;%N82EX>5>~S!&-`-g@#J##|Tx-9Bjb+1o|qWpCVLo*T)Xb z&+sjw=Mbv6;p4>fdFT@NrVy%l+tUrqpWu5-=+6jM%%;4+ybXU`LVrQ1(oWoSbl{$3 z3I6>JU;Yh(05E??JCtD83_n9eyW!;=^j~PZ5_(r!a2ze9V!x~c;kCFOqtd6)UMha$ za3;dfpk-CM3GJ%VSJAR6X2tUnJ_w(!!YkGyd>npKp(hZk^dx?ZLZ$tvw~94E9N`bp z{wjK23uvB3sN!Z$8^V_`_gCo^+}p=(8(M zai2-0L%5}-qRXC$P*GMORF##Wu^@EO>9~F6#(8QI^}ZNk1U0=-iGa_=2oKUF${gG$ zy;NzUr%`eQ?(Zqx^wxZS_RvvI8~7ei3uiI^KKjiSOv=m{IRv}zZXCoY>tq6x`9AS#CLb!o$Lb#FcLb!?cB23eB2+yHkBiu~Z zartdj;t$Hfch7A3l~uuTa0@LA@zc(M@wtU=!zz0!E;)~J&_e!m2USj!w-GxYQ}dpN z{Tuy8aPkCnb$sq4zmuOX4vf!zv<1>l&HKz@vV4zJ*oF&4z_%H_q7}WN4c`vqcbvmikMc_?B2T=3M!%A}EE1TYaJhd0f)4-CW^eeB@CKq8&nI-K0mJ)F$t8k?uXHVL*jn@Sl)6!X_} zbPNo%aMtc@Dmj{3k<8{cC5Kbl&TKZhgG-ad{_GCOu_~Jx>>L`(rgFJrK0(dqCjGTZZLU1fT4iOfLf`t$%4rDHos(p#X(Yj28j7#2VY< zt)1Py9r31kQ>?AGtFgPgB_5}i)>xvWE8d()G&gm3cQgUt*_-I>=xFYYHMKV;Vu^Tb zPkU2qN35f}rz_sl)|u$(>g?`}$6I?_n!Do^@9FLA=|W=7Dh4P4=s7BKA_ zO>IFqGTPKg&5g0{-b71BS1Vd09&7Jv>TT<3>4u&dbf=Xp4~{@nUSG1>nJ(QZK*dwBb}NY-j?d$ zwiWHsNc}suriLcztdUMk?GTz($#hm{Gq^1aD;Q0rMdk2>K(i81#$>Mq?r6SD_OJwT zHHKtO)YJv#KnXo9?QNayEwQHF?w;1B)_6;ATRfJCwKjLOH9#tg)xJvAwao zHPIF8X^V9=bu>29z`&YObkRX!+c%OP<$7@KmmsmTrM)}R-PY9D(iH3IXzJ`pw70eP zcJ+3(H1(pG_Kx1h765In?VxDxL>O;Ov^I6LG`6=xz0K4c?~1oIH=!rBwl&9lS`wX2 zv0jwj+!1R{bhdZ&v^6DST?q)<-Ize1?`iI6Nwl{#wKON1n!CE1sXNxy9*;MIw4=QX z-7?;R25jzb?rM*rn>ICfqpjOpySqB#ZHdO##x@kx-rWtLHP#;MYHgv`wzkgJHptY` z4rA(U?C$C4Zf$OZ59#e_?~J!L_qKE-;=LW9fCGpp5{a(X_5`%o)!W|I)Yg($Py#&+ zuOAI=KIT|aPrNmsbhz%2h+4$jTDrTM+k3kbXr|s6jJvU;H30|M(%9M6-rC&S+|u6I z74J&4boV6MVCQVG-Efn!&c;?k7ij71?d^g~gUz;d!y&<4#k=4tyBfQCA!S=EhK_-* z(AL}0(FOf>w>LJow=}nbdrKR&_I9?mcEg4BcE(!b&{s!WPppUCXCp}CF*IueE!@-E z-r5B}7*F&xLQ{<$@vaU|X(RUFr}X!>V+`(~V^(B_whgC_rDIlQ`PH;k-xe7D78tX5 z_(WnxN{K3>#d7&?pUACH5qzAK^TxP>)!)fV}q0D)?hBb*38&2x!C%~)w zY4T)=%<H%j2{LdjfUBsj>|L2D`Mc3zJb1x zt=kHd9G(nzW;f;rbe%NxiE8wQY{2x)aLFtn_s;34xT&Y1T#?+Ing%_PJe(=!pJr2b zXNHI2lrawE8jeqmq_SyT*~PT9Gq+=8kUEF?@0H*$!;Gf4q-3VrH$=y$M_EhhQN%H0 z;#Q@;98XhW6c~k5L(9`_B22naaM1#XQgzWd|82FWAHxCSS!7bs<*4}h#*lc0$ z3e?%v*D$r)um{k)O+#_F5ngQ9$Nq~M8v69?lR8?Si-_{?u@a?a)}MnZYrgwVmF-AA zU|QKwyHr1V%ZYG-VuCADqnq$^x@)$r&kbhN>+z=7NG>1m%dOm=%4X9;Jgv;nuL*53 zWhUL5$rh43bA`C>xQ;&BaLudrzSN;bA)bz`2u5LgzbGi?BXDVPH_o9oRCO?9OC1r&Bbj zKN34el3UV)`aTEiSVm$4Ocl03u;$vFn(U}$=~0X~z3pKMhSxj{uRFlQ(BjT?tZ8@D z$J;KM9NQrE6-~kj>;L`?_DFdBiXrRN4Wl|uzG6l<=}y9~Irj*r65CU~uvC3PNgE1L zJx!lo8mR;LqiUFI8W6V@+s2KlY!_z3VpMCebVyMT=5d*+NK{WxU1LUckEYLACEoyS3)xMjV(3Uh zm}KWDep6!oHfFqKeQF4EsR9OS+=^Dq%H$21i;{TsE)eDk*hv-8r;K0#N^eNBO;1jN zGaBADBqqoS-I#S{;lB!5^D*&jd5CnSFv9}Q+}bH%4pUtrX^Q#^38rGi)C*{1fGFxk zM@rLoc-W>26#dC8x??Z?8e;0aOm=f2Va>L!TQgaxbmbbD$>@emc1s~q&viJyZ=^ue zbN*;*B!_-eK$$gQzj10RJAGo`2$v;GmE`adsW2znkltwQMixpqlEa$3a4pbJ>2jxK zlUuO~R!G-925+OJlf&3VDN4dPx(1`%=#JI!Y`H=f@k>4WN}3%*QIc-1QZ;noWT|3Zyhh*@>?g;4Pqkn+bZ- zfH30D!`t({Y3wjE=jHI5eIrAu^H*-rCs;#6upi3E+#75E)J7UOWn?QJ##B~cO=87C zJtKpeA&#&W3b*_Wu0N}J9c1zEr9_HD*Q;|J1~kr>1{>64i3Ng1KhEq0m& znO^3E2HhUN5oIV`RJ1Y+BS;R@6vO>@ZC0PcH{=KW$=%}L<=#*@N%^-~v2_)(E1th% zzPcWoF()PlXlxl8(Bw{&%IZUyk$Bj?p^i8DBD-xl@xW-18m8pdbp4iG{dwt;`oT;# z#gXi2z1|z@hvW6}`dGuz@ZofWnJw>^th4!7^2de!=2UhhHQdxFK=D39VID6@(kroX zDKkDknvgvUy=roBWY}+(4R6hGdJAuX$#_q^l;RQHfSDy z{@aYWQS!{pF?-US1|6MuA=xrBBSpK*vSpD3c6+Mle9TqSd7>kPej?c)jbYhpELRE`eT?9algy@b zr~p@3I#r+1Eoqy+qfh!45w|L$JlT;bmI*!CEbsdOe?}^sF`IOCzq!3bYeq9$sT=3x zSuzHrfla&xn}w-ktj(H(7{t@%S)DwuYug4GEoDY=nju0ND=8jQrn(48hYtsS+GJzB zWq4`u(?`$(%-hd~@23HM`_Tla3=QarTd>3^9u#PkzRooVcV31hGFy1JQPw_j5?1Os63F3PkY^Pzga0eL zq`VGht}OEZ24AC7C(_A{Bbl5OHB=OzZsS((gHXey?L&QTkWZUDHF)2|e4c4Gu#M{H zNe&x(%@or)O~0vYHj+8#HM@nm=}Xv>1TNpFbH>UXeT9ed9O<(yI^vp(*U34OJ&7Fm z6kfyR^0zd4hm#v~<`$B~H%Msi?wLnjg!Ogapo*FV-547Yn9%LWrE^8@eG;0lfehy; zEtjeW;7XHQacq1=yXp}b&^=N*czLj!uHXjFDgpvD0n3)6$?QCSht zbY~2_+c!K4M^BoZybiL?=7Sp48Z@$Qc_oOvXFT z&^IOw%W=o3$f_`o%So)+Y5H;4j=e-(&3z+~f{)(`hgN13M_^`DW^g*GiQ2k#I}J?w z)m;omSl!b4%=yJ9opO=FTzO%sro+baO$Q)$K4I#Bs#8oERdr;NFZoe^^2nBk`wAmD zOeASDzTB$jyoy!RbAD=Y+bBAJ9;r`NQ`y4Mm`~z?Bo7o_K_uOlj0=gTGWE5Zeq4-2 z^{KK$ZXopx2GDnytD^y~K2PSP)q0cM<8~OwLWiMIr^9L4?@fOli!h!Ey8*+*^v$e9 zIx8Jp*HITP7Zxz$6ETB;46tu;KiJ0+TOUcWGh)av<26ty*1bBLzFg0it%&o-f*+xB zHsB8MF#ksIdEL0rz6Jlb(Fkt-j^aJEeqb_4+bnPc{<20IX`Qqc|JL9aG*85h*5#lW z#lJLe5%*CJ)Jf0`O-W(iBcQ^81j1rE+=gwr{)R7Cj4byXv;k_)Yw?Xx4GU zwRZeGD&GcWqlb?&?U z|20-&zy7&3KY0#+gstYfrtf|u`E=Fe^Ik}twk0|K)DP~22CuKXH~Da9|IE`nKh$>Z zYb$$x^`~cQf8n_6xPje)pSX^8?D=hQxBC2fPDlLv?WcaV^`sWZ{;|-Zr|Mri8CSOz zON12sePYytju{ARud-LHE24#Rn}bC0_{KsftGF!9B1#Ss3y zq=U0MK+dZ8=j1+D0*YRbhTKTLcCq@>;j42h=3(OWC)4o_@Fo$Om7@!e%VSdVAS7r3mv)4$plp?YgMi}D zQ7dw-2SuaYAZOWiHh!t(GP{8m6r!<+^Y=UT7*70$>3tQxl4Ee^lpSHRe>gz*cCc8lNE zQ)2Tgwz5E{VzWnRb`M_Y!>db37gX5pR?7l?ip>uh6p4W&l92;guBl&fz}2Ay3Z4vK zCqNgxunxj}Y@xg%mcJYRIJeN`lc+J0uhx+t7I1l)w&ffcAVov<(HvCo~=F$KOBk z0o0+AFzd+3W{+4DADAq#JHvtTEBy*|>o5dW%Yrc_u(d2Oezg&mG0JBrC0qhxO|K6s z!elPAHX@KV>?zLTkD#am2cHeY+)STeALlHY_2;OYviQw^yCts$3)I8)R6&Z`L#29k zZgwGSS#bO|6ryRf$8QfVw%V28VpyPM7JlCzuR7voM;9<`ql=;caE;v=TwJJ_RD*5R zkOwv@($AuT$iM|l6zH=+;|naYI>6D-LUI*_4}{PmbOr_HqNu^~yV)0n!xh}7MTCLz z`(~($Gi-|xqUe4Cp*MxCjCPu;3j?LX;KQnl26wPk1ppcCfvSHCeavovZuBz)6-KRR zk+*<=BLgysbRSzw9Hj>Zbx@cNsyf~Y6WO+{)LDzj>V@#igCu%1;u{*n?*z{usv77>C& zgytOh2`vNbjF1ttMkrX%N>-(3IaIS_mxM!hmkNzKMW3i!;Cv?v3XcEM$A$a`ZbvVI zaldowxNvZpcT%DceE?ZZTDRR6T*hsw2AA0*NVyyCHev}bE24pSGB_Kg2BgA7ji|$o z3Yk28c584s1K(00uIh^^(z=3}MK-j^_OGgO1;|$Z^jOKHhyIS4eZpt9Ac$#KGKCIY$B;V&;qLfL3sj( zrXi`0SXur_T*czSlLsHX?H5r36L`~|?IKZQhklr+8ce_dLWCrAm?DuhR0jhNlHjU? z_59CMobI=4$Z9gFXRiajmBIWDm)~VqOj+#g{U8&5eP|j&H}gX+y+&;VczW=<=!DZi zLdgXHYB?PQZac(~EWvsnajSJrF%MTh34dIQJtay;^Vn@1VJS?M%7X*f5mf8AaFoNO z9=lbibpZ7XYs_(P7d23fzg|H+>Pe;?Ojk@o`4Ygj$8>;XNLFnp*1lp$FY& zj8U;zGk*D(ec64?$7#2leC*5z&YZclHsig!rr!4Y^}Rhk_02uq&GlVvJze#U9ZfCq zmi9zvPh%X5Ue?}3kAv5a{DE-?mXz78;lMp+477uv<#AwffbC0 z4x|4Bz(*fAm@*ukIN6ow5q6p!c-TS`CNca#Hof?@dD6hdTKq3Aer-|lYo)lg$cOPU zumq-uf-3Q=3NkZ*IQiIG%t0Y&aN>gw4a3wd3=|ls$L|*gTthLCi4Wr8U?Q1(fx-A5 z-U?VVbCr{?4q#ttdydsLe&Lk;=&2jd4JP@T(V;=)TpXF4VR6KmpD$^{A5y}<#gT4o z4sOe)mW-sf;f+A#$nR&#Vd#?ev8D|z8`?I+<3la6WK$9~Vx4h~Fd;%zs<@UBrub_e zb{Ju5 zsc&g)?X2&@TWa-=&lBtPY59IPs z$%C0X26oKgC$@2uaZ7;;f5aL9s>7VBVO(4gPn=yC>&EY|W<5w7??ndC@LC1)04L_r zI-ODb@%vpEPr!-Ua1Fa+tv#)H)2trvqsHo6S~{ERJLA3G^?1__?~um3yHQ>Ip%9(` z!UOD3tEc!B@I|$GaU>yTSPnLG)_kenDQu3g$73`4#ZK=GwFu!U28=pS>~xbgII$BP zJRWsw&l=xrs%9^Dqw&2UgP&wg29`)qzywbPgt2LfK0JnP+(8)4QXz{U^bptR*EY4# zS8e&eYMWZ{1bfxs#Dv~^C%}o>6#A;iQ()uCv+*F42eeL66H4^xGI>NM5Bf06hmF_@!)|U zyZD#5p{CU$%eDU#StRH6|KprD{*QCs^gqd2;h4THf-r9~~qwRMQh9T*Rj6)PS%#d+iF^q{DDV)DrCqOKWU-U6p6$%V{^Zc2bJ<-)tc{n^X4#x{2_1VTA z%r^A-22Uf6l6fNkO^*(P2`XVEa;X@zfItikxUCi|v=F21q*oJW~C$RMP@FLUWLr~;!cmN*X zYl&iE&O`A8VxAs_mj1WIndao3rQw#sxVK!PW&MH3JToFcT|@ZEAqD4D z<$St*Qf4H7NkLw@&M7*BpCF%Ie2NE=c6~aHza|Q6VxX}p)*f%G&kol2E?eHvSl5(_ z$J$aG@bd!r)h_&u8^4v^jhmY|?p|!p$+u%tj)Hxq`Bx$MFdA2x`3k>-b3{PVu8@nB zl$ICXq6NnIF@)y$;D+_Fcze7#xuGSQN;R%;ZfhTE9%{r-olv<#fx@*qOH*C2KaPx1wF}UXFg5K|yolho_CtWj8txlColz3iu{`6A$8htC46t_!s-k&+ABA zy(Y0{>Ul8RPxsO5PJse*>u|K5&1_pYh)X%^bS2gs`Z7TME%(A*fpyqMUMEerZX`7d z)8K2se7U|@zw2(F}gJY-5s)WGpb0WOY3is%aX0T?sC>4y6c zv?a%Pl2dZ?mnja-r^wO*>HqgJ{nr=q`&{FbtD?^_*rKQ68D56(=?92@jh%h-^J@!c zZgeWG!Ec$JieHpljaVQ4^5sc@`w;db&Y$mE|MMVU55VXtu>QRH!^atr6;HOs;!gsA z0{dNQ2b>I_j{d1Rf8Dzyi1WvxQazA3@ zG@RxMP2qf+Ph+72+@S~}uYU7ltCX<=HA>O!#QlW)P{HjEo`;3*O=I7BuYGuhw*5>x9bAhL1%;lC62Q*f5yaQ9t%El z^p5^v=3*>WGmY0-pXt5!bEkBT-z|RObvwCdlpxUs#xcQO_2fLRyzbDm&8E-#4V6M1 z4|bg`h@RViqDR%Lpi@-)$R27nHd8X5@nbAmZ-qjExG#}paax=!7I-h45~AY9sSiPk z8f&vF`7A)VNW_HB3b%NrvSxPYEaBoFd*-}(TS~{6bFPI~sggr;U&q=ezT!Zf@)fP3 z{cE~sSIC0r#M)8W-*;tmU56kdNWuu*zFDG`YMs&dM709_@!3Ino!mcucRYSrfoFP_ N`+|ROLfEZrXNyrvE%&B;r3Uij%>W1N5lU20N8qe&-tpa2wYCw?3E73GmG`n z{CqWs`c}`1iMxMS{iu_u0iLVQq5J7>iU3!*ATCm~in1cMre20&NWF`X%cnEXEoxjN z#+tdoEoRIIlz3z2Fu14xO20sgM^toPs3y)Wsm@sPKkNGzTra){;f*(d^MQ6u_dfLB qwxbRDUcl){8R)d9LY*npdZE6t(2wJupAdEa)?wS|z3O@D{r&=1RdeV7 literal 0 HcmV?d00001 diff --git a/LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.xml b/LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.xml new file mode 100644 index 000000000..dbff4144d --- /dev/null +++ b/LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.xml @@ -0,0 +1,8 @@ + + + + LottieIslandProjection + + + + diff --git a/LottieLogo1.cs b/LottieLogo1.cs deleted file mode 100644 index 17910ca63..000000000 --- a/LottieLogo1.cs +++ /dev/null @@ -1,4227 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// -// LottieGen version: -// 8.0.230813-rc.7+0443b1e789 -// -// Command: -// LottieGen -Language CSharp -Public -WinUIVersion 3.0 -InputFile LottieLogo1.json -// -// Input file: -// LottieLogo1.json (190271 bytes created 16:03-04:00 Mar 11 2024) -// -// LottieGen source: -// http://aka.ms/Lottie -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ -// ____________________________________ -// | Object stats | Count | -// |__________________________|_______| -// | All CompositionObjects | 610 | -// |--------------------------+-------| -// | Expression animators | 52 | -// | KeyFrame animators | 121 | -// | Reference parameters | 52 | -// | Expression operations | 0 | -// |--------------------------+-------| -// | Animated brushes | - | -// | Animated gradient stops | - | -// | ExpressionAnimations | 50 | -// | PathKeyFrameAnimations | - | -// |--------------------------+-------| -// | ContainerVisuals | 1 | -// | ShapeVisuals | 1 | -// |--------------------------+-------| -// | ContainerShapes | 23 | -// | CompositionSpriteShapes | 45 | -// |--------------------------+-------| -// | Brushes | 3 | -// | Gradient stops | - | -// | CompositionVisualSurface | - | -// ------------------------------------ -using Microsoft.Graphics; -using Microsoft.Graphics.Canvas.Geometry; -using Microsoft.UI.Composition; -using System; -using System.Collections.Generic; -using System.Numerics; -using Windows.UI; - -namespace AnimatedVisuals -{ - // Frame rate: 30 fps - // Frame count: 179 - // Duration: 5966.7 mS - sealed class LottieLogo1 - : Microsoft.UI.Xaml.Controls.IAnimatedVisualSource - , Microsoft.UI.Xaml.Controls.IAnimatedVisualSource2 - { - // Animation duration: 5.967 seconds. - internal const long c_durationTicks = 59666666; - - public Microsoft.UI.Xaml.Controls.IAnimatedVisual TryCreateAnimatedVisual(Compositor compositor) - { - object ignored = null; - return TryCreateAnimatedVisual(compositor, out ignored); - } - - public Microsoft.UI.Xaml.Controls.IAnimatedVisual TryCreateAnimatedVisual(Compositor compositor, out object diagnostics) - { - diagnostics = null; - - var res = - new LottieLogo1_AnimatedVisual( - compositor - ); - res.CreateAnimations(); - return res; - } - - /// - /// Gets the number of frames in the animation. - /// - public double FrameCount => 179d; - - /// - /// Gets the frame rate of the animation. - /// - public double Framerate => 30d; - - /// - /// Gets the duration of the animation. - /// - public TimeSpan Duration => TimeSpan.FromTicks(59666666); - - /// - /// Converts a zero-based frame number to the corresponding progress value denoting the - /// start of the frame. - /// - public double FrameToProgress(double frameNumber) - { - return frameNumber / 179d; - } - - /// - /// Returns a map from marker names to corresponding progress values. - /// - public IReadOnlyDictionary Markers => - new Dictionary - { - }; - - /// - /// Sets the color property with the given name, or does nothing if no such property - /// exists. - /// - public void SetColorProperty(string propertyName, Color value) - { - } - - /// - /// Sets the scalar property with the given name, or does nothing if no such property - /// exists. - /// - public void SetScalarProperty(string propertyName, double value) - { - } - - sealed class LottieLogo1_AnimatedVisual - : Microsoft.UI.Xaml.Controls.IAnimatedVisual - , Microsoft.UI.Xaml.Controls.IAnimatedVisual2 - { - const long c_durationTicks = 59666666; - readonly Compositor _c; - readonly ExpressionAnimation _reusableExpressionAnimation; - AnimationController _animationController_0; - AnimationController _animationController_1; - CompositionColorBrush _colorBrush_AlmostTeal_FF007A87; - CompositionColorBrush _colorBrush_White; - CompositionContainerShape _containerShape_00; - CompositionContainerShape _containerShape_01; - CompositionContainerShape _containerShape_02; - CompositionContainerShape _containerShape_03; - CompositionContainerShape _containerShape_04; - CompositionContainerShape _containerShape_05; - CompositionContainerShape _containerShape_06; - CompositionContainerShape _containerShape_07; - CompositionContainerShape _containerShape_08; - CompositionContainerShape _containerShape_09; - CompositionContainerShape _containerShape_10; - CompositionContainerShape _containerShape_11; - CompositionContainerShape _containerShape_12; - CompositionContainerShape _containerShape_13; - CompositionContainerShape _containerShape_14; - CompositionContainerShape _containerShape_15; - CompositionContainerShape _containerShape_16; - CompositionContainerShape _containerShape_17; - CompositionContainerShape _containerShape_18; - CompositionContainerShape _containerShape_19; - CompositionContainerShape _containerShape_20; - CompositionContainerShape _containerShape_21; - CompositionContainerShape _containerShape_22; - CompositionEllipseGeometry _ellipse_0_0; - CompositionEllipseGeometry _ellipse_0_1; - CompositionEllipseGeometry _ellipse_4p7; - CompositionPath _path_0; - CompositionPath _path_1; - CompositionPath _path_2; - CompositionPath _path_3; - CompositionPath _path_4; - CompositionPath _path_5; - CompositionPath _path_6; - CompositionPath _path_7; - CompositionPath _path_8; - CompositionPathGeometry _pathGeometry_00; - CompositionPathGeometry _pathGeometry_01; - CompositionPathGeometry _pathGeometry_02; - CompositionPathGeometry _pathGeometry_03; - CompositionPathGeometry _pathGeometry_04; - CompositionPathGeometry _pathGeometry_05; - CompositionPathGeometry _pathGeometry_06; - CompositionPathGeometry _pathGeometry_07; - CompositionPathGeometry _pathGeometry_08; - CompositionPathGeometry _pathGeometry_09; - CompositionPathGeometry _pathGeometry_10; - CompositionPathGeometry _pathGeometry_11; - CompositionPathGeometry _pathGeometry_12; - CompositionPathGeometry _pathGeometry_13; - CompositionPathGeometry _pathGeometry_14; - CompositionPathGeometry _pathGeometry_15; - CompositionPathGeometry _pathGeometry_16; - CompositionPathGeometry _pathGeometry_17; - CompositionPathGeometry _pathGeometry_18; - CompositionPathGeometry _pathGeometry_19; - CompositionPathGeometry _pathGeometry_20; - CompositionPathGeometry _pathGeometry_21; - CompositionPathGeometry _pathGeometry_22; - CompositionPathGeometry _pathGeometry_23; - CompositionPathGeometry _pathGeometry_24; - CompositionPathGeometry _pathGeometry_25; - CompositionPathGeometry _pathGeometry_26; - CompositionPathGeometry _pathGeometry_27; - CompositionPathGeometry _pathGeometry_28; - CompositionPathGeometry _pathGeometry_29; - CompositionPathGeometry _pathGeometry_30; - CompositionPathGeometry _pathGeometry_31; - CompositionPathGeometry _pathGeometry_32; - CompositionPathGeometry _pathGeometry_33; - CompositionPathGeometry _pathGeometry_34; - CompositionPathGeometry _pathGeometry_35; - CompositionPathGeometry _pathGeometry_36; - CompositionPathGeometry _pathGeometry_37; - CompositionPathGeometry _pathGeometry_38; - CompositionSpriteShape _spriteShape_11; - CompositionSpriteShape _spriteShape_12; - CompositionSpriteShape _spriteShape_13; - CompositionSpriteShape _spriteShape_14; - CompositionSpriteShape _spriteShape_15; - CompositionSpriteShape _spriteShape_19; - CompositionSpriteShape _spriteShape_22; - CompositionSpriteShape _spriteShape_23; - CompositionSpriteShape _spriteShape_36; - CompositionSpriteShape _spriteShape_37; - CompositionSpriteShape _spriteShape_38; - ContainerVisual _root; - CubicBezierEasingFunction _cubicBezierEasingFunction_0; - CubicBezierEasingFunction _cubicBezierEasingFunction_1; - CubicBezierEasingFunction _cubicBezierEasingFunction_2; - CubicBezierEasingFunction _cubicBezierEasingFunction_3; - CubicBezierEasingFunction _cubicBezierEasingFunction_4; - CubicBezierEasingFunction _cubicBezierEasingFunction_5; - CubicBezierEasingFunction _cubicBezierEasingFunction_6; - CubicBezierEasingFunction _cubicBezierEasingFunction_7; - CubicBezierEasingFunction _cubicBezierEasingFunction_8; - ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_02; - ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_03; - ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_06; - ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_11; - ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_13; - ScalarKeyFrameAnimation _tStartScalarAnimation_0_to_0p249; - ScalarKeyFrameAnimation _tStartScalarAnimation_0p87_to_0_02; - StepEasingFunction _holdThenStepEasingFunction; - StepEasingFunction _stepThenHoldEasingFunction; - Vector2KeyFrameAnimation _offsetVector2Animation_02; - Vector2KeyFrameAnimation _offsetVector2Animation_03; - Vector2KeyFrameAnimation _offsetVector2Animation_04; - Vector2KeyFrameAnimation _offsetVector2Animation_05; - Vector2KeyFrameAnimation _offsetVector2Animation_06; - Vector2KeyFrameAnimation _radiusVector2Animation; - Vector2KeyFrameAnimation _shapeVisibilityAnimation_04; - - void BindProperty( - CompositionObject target, - string animatedPropertyName, - string expression, - string referenceParameterName, - CompositionObject referencedObject) - { - _reusableExpressionAnimation.ClearAllParameters(); - _reusableExpressionAnimation.Expression = expression; - _reusableExpressionAnimation.SetReferenceParameter(referenceParameterName, referencedObject); - target.StartAnimation(animatedPropertyName, _reusableExpressionAnimation); - } - - ScalarKeyFrameAnimation CreateScalarKeyFrameAnimation(float initialProgress, float initialValue, CompositionEasingFunction initialEasingFunction) - { - var result = _c.CreateScalarKeyFrameAnimation(); - result.Duration = TimeSpan.FromTicks(c_durationTicks); - result.InsertKeyFrame(initialProgress, initialValue, initialEasingFunction); - return result; - } - - Vector2KeyFrameAnimation CreateVector2KeyFrameAnimation(float initialProgress, Vector2 initialValue, CompositionEasingFunction initialEasingFunction) - { - var result = _c.CreateVector2KeyFrameAnimation(); - result.Duration = TimeSpan.FromTicks(c_durationTicks); - result.InsertKeyFrame(initialProgress, initialValue, initialEasingFunction); - return result; - } - - CompositionSpriteShape CreateSpriteShape(CompositionGeometry geometry, Matrix3x2 transformMatrix) - { - var result = _c.CreateSpriteShape(geometry); - result.TransformMatrix = transformMatrix; - return result; - } - - CompositionSpriteShape CreateSpriteShape(CompositionGeometry geometry, Matrix3x2 transformMatrix, CompositionBrush fillBrush) - { - var result = _c.CreateSpriteShape(geometry); - result.TransformMatrix = transformMatrix; - result.FillBrush = fillBrush; - return result; - } - - AnimationController AnimationController_0() - { - if (_animationController_0 != null) { return _animationController_0; } - var result = _animationController_0 = _c.CreateAnimationController(); - result.Pause(); - BindProperty(_animationController_0, "Progress", "_.Progress", "_", _root); - return result; - } - - // - Layer aggregator - // Layer: Dot1 - AnimationController AnimationController_1() - { - if (_animationController_1 != null) { return _animationController_1; } - var result = _animationController_1 = _c.CreateAnimationController(); - result.Pause(); - BindProperty(_animationController_1, "Progress", "_.Progress*0.9835165+0.01648352", "_", _root); - return result; - } - - CanvasGeometry Geometry_00() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(-13.6639996F, -0.144999996F)); - builder.AddLine(new Vector2(75.663002F, 0.289999992F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_01() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(0.859000027F, -21.1429996F)); - builder.AddLine(new Vector2(-4.35900021F, 70.3919983F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_02() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(-26.6700001F, -0.282999992F)); - builder.AddLine(new Vector2(99.1709976F, 0.0659999996F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_03() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(-13.6639996F, -0.144999996F)); - builder.AddLine(new Vector2(62.1629982F, 0.289999992F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_04() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(-30.7199993F, 63.7610016F)); - builder.AddCubicBezier(new Vector2(-30.6889992F, 63.1669998F), new Vector2(-30.7889996F, 50.8470001F), new Vector2(-30.7409992F, 45.1920013F)); - builder.AddCubicBezier(new Vector2(-30.6650009F, 36.2140007F), new Vector2(-37.3429985F, 27.0739994F), new Vector2(-37.3969994F, 27.0139999F)); - builder.AddCubicBezier(new Vector2(-38.5579987F, 25.7140007F), new Vector2(-39.7519989F, 24.1469994F), new Vector2(-40.6980019F, 22.6609993F)); - builder.AddCubicBezier(new Vector2(-46.637001F, 13.3339996F), new Vector2(-47.8400002F, 0.933000028F), new Vector2(-37.8730011F, -7.1170001F)); - builder.AddCubicBezier(new Vector2(-13.1960001F, -27.0459995F), new Vector2(8.96000004F, 11.559F), new Vector2(49.5060005F, 11.559F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_05() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(246.649994F, 213.813995F)); - builder.AddLine(new Vector2(340.955994F, 213.628006F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_06() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(1.68099999F, -29.9920006F)); - builder.AddLine(new Vector2(-1.68099999F, 29.9920006F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_07() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(1.76800001F, -25.9659996F)); - builder.AddLine(new Vector2(-1.76800001F, 25.9659996F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_08() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(-8.83699989F, -58.2290001F)); - builder.AddCubicBezier(new Vector2(-8.83699989F, -58.2290001F), new Vector2(-10.1630001F, 29.4950008F), new Vector2(-35.8339996F, 33.6619987F)); - builder.AddCubicBezier(new Vector2(-44.0579987F, 34.9970016F), new Vector2(-50.2319984F, 30.0499992F), new Vector2(-51.6879997F, 23.1480007F)); - builder.AddCubicBezier(new Vector2(-53.144001F, 16.2450008F), new Vector2(-49.6549988F, 9.15600014F), new Vector2(-41.1739998F, 7.29300022F)); - builder.AddCubicBezier(new Vector2(-17.3570004F, 2.05999994F), new Vector2(4.23500013F, 57.1879997F), new Vector2(51.7970009F, 44.1780014F)); - builder.AddCubicBezier(new Vector2(51.9570007F, 44.1339989F), new Vector2(52.6870003F, 43.8740005F), new Vector2(53.1879997F, 43.7410011F)); - builder.AddCubicBezier(new Vector2(53.6889992F, 43.6080017F), new Vector2(68.9710007F, 41.3569984F), new Vector2(140.393997F, 43.6720009F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_09() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(-67.125F, -112F)); - builder.AddCubicBezier(new Vector2(-67.125F, -112F), new Vector2(-73.5579987F, -100.719002F), new Vector2(-75.4580002F, -89.9509964F)); - builder.AddCubicBezier(new Vector2(-78.625F, -72F), new Vector2(-79.375F, -58.25F), new Vector2(-80.375F, -39.25F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_10() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(-67.25F, -105.5F)); - builder.AddCubicBezier(new Vector2(-67.25F, -105.5F), new Vector2(-70.4329987F, -94.9690018F), new Vector2(-72.3330002F, -84.2009964F)); - builder.AddCubicBezier(new Vector2(-75.5F, -66.25F), new Vector2(-75.5F, -56.75F), new Vector2(-76.5F, -37.75F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_11() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(34.5F, -13.0500002F)); - builder.AddCubicBezier(new Vector2(7.5F, -14.5F), new Vector2(-4F, -37F), new Vector2(-35.0460014F, -35.5789986F)); - builder.AddCubicBezier(new Vector2(-61.4720001F, -34.3689995F), new Vector2(-62.25F, -5.75F), new Vector2(-62.25F, -5.75F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_12() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(-3F, 35.9500008F)); - builder.AddCubicBezier(new Vector2(-3F, 35.9500008F), new Vector2(-1.5F, 7.5F), new Vector2(-1.352F, -6.75600004F)); - builder.AddCubicBezier(new Vector2(-9.90299988F, -15.0190001F), new Vector2(-21.5699997F, -20.5790005F), new Vector2(-32.0460014F, -20.5790005F)); - builder.AddCubicBezier(new Vector2(-53.5F, -20.5790005F), new Vector2(-42.25F, 4.25F), new Vector2(-42.25F, 4.25F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_13() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(16.2310009F, 39.0730019F)); - builder.AddLine(new Vector2(-32.769001F, 57.3650017F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_14() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(7.44999981F, 21.9500008F)); - builder.AddLine(new Vector2(-32.75F, 55.75F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_15() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(-94.5F, 37.0730019F)); - builder.AddLine(new Vector2(-48.769001F, 55.3650017F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_16() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(-87.5F, 20.9500008F)); - builder.AddLine(new Vector2(-48.75F, 54.75F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_17() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(166.731003F, -7.92700005F)); - builder.AddLine(new Vector2(136.731003F, 7.11499977F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_18() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(156.449997F, -23.0499992F)); - builder.AddLine(new Vector2(132F, 2.75F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_19() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(169.5F, 18.073F)); - builder.AddLine(new Vector2(137.481003F, 11.3649998F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_20() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(119.5F, -45.0499992F)); - builder.AddLine(new Vector2(82.75F, -44.75F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_21() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(119.25F, -20.0499992F)); - builder.AddLine(new Vector2(63.5F, -20.5F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_22() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(128F, 3.6500001F)); - builder.AddLine(new Vector2(78.25F, 3.5F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_23() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(149.623993F, 8.24400043F)); - builder.AddLine(new Vector2(136.647995F, 10.1560001F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_24() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(144.429001F, -5.39699984F)); - builder.AddLine(new Vector2(132.274994F, 4.73099995F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_25() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(145.677002F, 22.2199993F)); - builder.AddLine(new Vector2(134.921997F, 14.7489996F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_26() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(147.699005F, 13.0249996F)); - builder.AddLine(new Vector2(133.195007F, 13.21F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_27() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(142.182999F, -5.11199999F)); - builder.AddLine(new Vector2(130.029007F, 5.01599979F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - CanvasGeometry Geometry_28() - { - CanvasGeometry result; - using (var builder = new CanvasPathBuilder(null)) - { - builder.BeginFigure(new Vector2(142.037994F, 29.2779999F)); - builder.AddLine(new Vector2(131.281998F, 21.8069992F)); - builder.EndFigure(CanvasFigureLoop.Open); - result = CanvasGeometry.CreatePath(builder); - } - return result; - } - - // - Layer aggregator - // Offset:<187.5, 333.5> - CompositionColorBrush ColorBrush_AlmostDarkTurquoise_FF00D1C1() - { - return _c.CreateColorBrush(Color.FromArgb(0xFF, 0x00, 0xD1, 0xC1)); - } - - CompositionColorBrush ColorBrush_AlmostTeal_FF007A87() - { - return (_colorBrush_AlmostTeal_FF007A87 == null) - ? _colorBrush_AlmostTeal_FF007A87 = _c.CreateColorBrush(Color.FromArgb(0xFF, 0x00, 0x7A, 0x87)) - : _colorBrush_AlmostTeal_FF007A87; - } - - CompositionColorBrush ColorBrush_White() - { - return (_colorBrush_White == null) - ? _colorBrush_White = _c.CreateColorBrush(Color.FromArgb(0xFF, 0xFF, 0xFF, 0xFF)) - : _colorBrush_White; - } - - // Layer aggregator - // Transforms for Bncr - CompositionContainerShape ContainerShape_00() - { - if (_containerShape_00 != null) { return _containerShape_00; } - var result = _containerShape_00 = _c.CreateContainerShape(); - result.Scale = new Vector2(0F, 0F); - // Offset:<154.457, 287.822> - result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); - // Transforms: Dot-Y - result.Shapes.Add(ContainerShape_01()); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - // Transforms for Dot-Y - CompositionContainerShape ContainerShape_01() - { - if (_containerShape_01 != null) { return _containerShape_01; } - var result = _containerShape_01 = _c.CreateContainerShape(); - // ShapeGroup: Ellipse 1 Offset:<196, 267> - result.Shapes.Add(SpriteShape_01()); - return result; - } - - // Layer aggregator - // Transforms for E3-Y - CompositionContainerShape ContainerShape_02() - { - if (_containerShape_02 != null) { return _containerShape_02; } - var result = _containerShape_02 = _c.CreateContainerShape(); - result.Scale = new Vector2(0F, 0F); - // Offset:<154.457, 287.822> - result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); - // ShapeGroup: Group 1 Offset:<344.674, 261.877> - result.Shapes.Add(SpriteShape_02()); - return result; - } - - // Layer aggregator - // Transforms for E3-Y - CompositionContainerShape ContainerShape_03() - { - if (_containerShape_03 != null) { return _containerShape_03; } - var result = _containerShape_03 = _c.CreateContainerShape(); - result.Scale = new Vector2(0F, 0F); - // Offset:<154.457, 287.822> - result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); - // Transforms: E3-B Offset:<0.06500244, 0> - result.Shapes.Add(SpriteShape_03()); - return result; - } - - // Layer aggregator - // Transforms for I-Y - CompositionContainerShape ContainerShape_04() - { - if (_containerShape_04 != null) { return _containerShape_04; } - var result = _containerShape_04 = _c.CreateContainerShape(); - result.Scale = new Vector2(0F, 0F); - // Offset:<154.457, 287.822> - result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); - // ShapeGroup: Group 6 Offset:<304.135, 282.409> - result.Shapes.Add(SpriteShape_04()); - return result; - } - - // Layer aggregator - // Transforms for I-Y - CompositionContainerShape ContainerShape_05() - { - if (_containerShape_05 != null) { return _containerShape_05; } - var result = _containerShape_05 = _c.CreateContainerShape(); - result.Scale = new Vector2(0F, 0F); - // Offset:<154.457, 287.822> - result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); - // Transforms: I-B - result.Shapes.Add(SpriteShape_05()); - return result; - } - - // Layer aggregator - // Transforms for E2-Y - CompositionContainerShape ContainerShape_06() - { - if (_containerShape_06 != null) { return _containerShape_06; } - var result = _containerShape_06 = _c.CreateContainerShape(); - result.Scale = new Vector2(0F, 0F); - // Offset:<154.457, 287.822> - result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); - // ShapeGroup: Group 3 Offset:<331.664, 238.14> - result.Shapes.Add(SpriteShape_06()); - return result; - } - - // Layer aggregator - // Transforms for E2-Y - CompositionContainerShape ContainerShape_07() - { - if (_containerShape_07 != null) { return _containerShape_07; } - var result = _containerShape_07 = _c.CreateContainerShape(); - result.Scale = new Vector2(0F, 0F); - // Offset:<154.457, 287.822> - result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); - // Transforms: E2-B - result.Shapes.Add(SpriteShape_07()); - return result; - } - - // Layer aggregator - // Transforms for E1-Y - CompositionContainerShape ContainerShape_08() - { - if (_containerShape_08 != null) { return _containerShape_08; } - var result = _containerShape_08 = _c.CreateContainerShape(); - result.Scale = new Vector2(0F, 0F); - // Offset:<154.457, 287.822> - result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); - // ShapeGroup: Group 2 Offset:<344.672, 214.842> - result.Shapes.Add(SpriteShape_08()); - return result; - } - - // Layer aggregator - // Transforms for E1-Y - CompositionContainerShape ContainerShape_09() - { - if (_containerShape_09 != null) { return _containerShape_09; } - var result = _containerShape_09 = _c.CreateContainerShape(); - result.Scale = new Vector2(0F, 0F); - // Offset:<154.457, 287.822> - result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); - // Transforms: E1-B - result.Shapes.Add(SpriteShape_09()); - return result; - } - - // Layer aggregator - // Transforms for T1a-Y - CompositionContainerShape ContainerShape_10() - { - if (_containerShape_10 != null) { return _containerShape_10; } - var result = _containerShape_10 = _c.CreateContainerShape(); - result.Scale = new Vector2(0F, 0F); - // Offset:<154.457, 287.822> - result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); - // ShapeGroup: Group 9 Offset:<227.677, 234.375> - result.Shapes.Add(SpriteShape_10()); - return result; - } - - // Layer aggregator - // Transforms for O-Y - CompositionContainerShape ContainerShape_11() - { - if (_containerShape_11 != null) { return _containerShape_11; } - var result = _containerShape_11 = _c.CreateContainerShape(); - result.Scale = new Vector2(0F, 0F); - // Offset:<154.457, 287.822> - result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); - var shapes = result.Shapes; - // ShapeGroup: Ellipse 1 Offset:<196, 267> - shapes.Add(SpriteShape_16()); - // ShapeGroup: Ellipse 1 Offset:<196, 267> - shapes.Add(SpriteShape_17()); - return result; - } - - // Layer aggregator - // Transforms for T1a-Y 2 - CompositionContainerShape ContainerShape_12() - { - if (_containerShape_12 != null) { return _containerShape_12; } - var result = _containerShape_12 = _c.CreateContainerShape(); - result.Scale = new Vector2(0F, 0F); - // Offset:<154.457, 287.822> - result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); - // ShapeGroup: Group 9 Offset:<227.677, 234.375> - result.Shapes.Add(SpriteShape_18()); - return result; - } - - // Layer aggregator - // Transforms for T1a-Y - CompositionContainerShape ContainerShape_13() - { - if (_containerShape_13 != null) { return _containerShape_13; } - var result = _containerShape_13 = _c.CreateContainerShape(); - result.Scale = new Vector2(0F, 0F); - // Offset:<154.457, 287.822> - result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); - // Transforms: T1a-B - result.Shapes.Add(SpriteShape_20()); - return result; - } - - // Layer aggregator - // Transforms for N - CompositionContainerShape ContainerShape_14() - { - if (_containerShape_14 != null) { return _containerShape_14; } - var result = _containerShape_14 = _c.CreateContainerShape(); - result.Scale = new Vector2(0F, 0F); - // Offset:<154.457, 287.822> - result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); - // Transforms: Dot-Y - result.Shapes.Add(ContainerShape_15()); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - // Transforms for Dot-Y - CompositionContainerShape ContainerShape_15() - { - if (_containerShape_15 != null) { return _containerShape_15; } - var result = _containerShape_15 = _c.CreateContainerShape(); - // ShapeGroup: Ellipse 1 Offset:<196, 267> - result.Shapes.Add(SpriteShape_21()); - return result; - } - - // Layer aggregator - // Transforms for Dot1 - CompositionContainerShape ContainerShape_16() - { - if (_containerShape_16 != null) { return _containerShape_16; } - var result = _containerShape_16 = _c.CreateContainerShape(); - // Offset:<154.457, 287.822> - result.TransformMatrix = new Matrix3x2(1F, 0F, 0F, 1F, 154.457001F, 287.821991F); - // ShapeGroup: Ellipse 1 Offset:<196, 267> - result.Shapes.Add(SpriteShape_24()); - return result; - } - - // Layer aggregator - // Layer: S1-Y - CompositionContainerShape ContainerShape_17() - { - if (_containerShape_17 != null) { return _containerShape_17; } - var result = _containerShape_17 = _c.CreateContainerShape(); - result.Scale = new Vector2(0F, 0F); - var shapes = result.Shapes; - // Offset:<154.457, 287.822> - shapes.Add(SpriteShape_25()); - // Offset:<154.457, 287.822> - shapes.Add(SpriteShape_26()); - return result; - } - - // Layer aggregator - // Layer: S7 - CompositionContainerShape ContainerShape_18() - { - if (_containerShape_18 != null) { return _containerShape_18; } - var result = _containerShape_18 = _c.CreateContainerShape(); - result.Scale = new Vector2(0F, 0F); - var shapes = result.Shapes; - // Offset:<154.457, 287.822> - shapes.Add(SpriteShape_27()); - // Offset:<154.457, 287.822> - shapes.Add(SpriteShape_28()); - return result; - } - - // Layer aggregator - // Layer: S3-Y - CompositionContainerShape ContainerShape_19() - { - if (_containerShape_19 != null) { return _containerShape_19; } - var result = _containerShape_19 = _c.CreateContainerShape(); - result.Scale = new Vector2(0F, 0F); - var shapes = result.Shapes; - // Offset:<154.457, 287.822> - shapes.Add(SpriteShape_29()); - // Offset:<154.457, 287.822> - shapes.Add(SpriteShape_30()); - // Offset:<154.457, 287.822> - shapes.Add(SpriteShape_31()); - // Offset:<154.457, 287.822> - shapes.Add(SpriteShape_32()); - return result; - } - - // Layer aggregator - // Layer: S3-Y 2 - CompositionContainerShape ContainerShape_20() - { - if (_containerShape_20 != null) { return _containerShape_20; } - var result = _containerShape_20 = _c.CreateContainerShape(); - result.Scale = new Vector2(0F, 0F); - var shapes = result.Shapes; - // Offset:<154.457, 287.822> - shapes.Add(SpriteShape_33()); - // Offset:<154.457, 287.822> - shapes.Add(SpriteShape_34()); - // Offset:<154.457, 287.822> - shapes.Add(SpriteShape_35()); - return result; - } - - // Layer aggregator - // Layer: S3-Y 3 - CompositionContainerShape ContainerShape_21() - { - if (_containerShape_21 != null) { return _containerShape_21; } - var result = _containerShape_21 = _c.CreateContainerShape(); - result.Scale = new Vector2(0F, 0F); - var shapes = result.Shapes; - // Offset:<154.457, 287.822> - shapes.Add(SpriteShape_39()); - // Offset:<154.457, 287.822> - shapes.Add(SpriteShape_40()); - // Offset:<154.457, 287.822> - shapes.Add(SpriteShape_41()); - return result; - } - - // Layer aggregator - // Layer: S3-Y 4 - CompositionContainerShape ContainerShape_22() - { - if (_containerShape_22 != null) { return _containerShape_22; } - var result = _containerShape_22 = _c.CreateContainerShape(); - result.Scale = new Vector2(0F, 0F); - var shapes = result.Shapes; - // Offset:<154.457, 287.822> - shapes.Add(SpriteShape_42()); - // Offset:<154.457, 287.822> - shapes.Add(SpriteShape_43()); - // Offset:<154.457, 287.822> - shapes.Add(SpriteShape_44()); - return result; - } - - // - - Layer aggregator - // - Layer: O-Y - // ShapeGroup: Ellipse 1 Offset:<196, 267> - // Ellipse Path 1.EllipseGeometry - CompositionEllipseGeometry Ellipse_0_0() - { - if (_ellipse_0_0 != null) { return _ellipse_0_0; } - var result = _ellipse_0_0 = _c.CreateEllipseGeometry(); - result.Center = new Vector2(0.800000012F, -0.5F); - result.Radius = new Vector2(0F, 0F); - return result; - } - - // - - Layer aggregator - // - Layer: O-Y - // ShapeGroup: Ellipse 1 Offset:<196, 267> - // Ellipse Path 1.EllipseGeometry - CompositionEllipseGeometry Ellipse_0_1() - { - if (_ellipse_0_1 != null) { return _ellipse_0_1; } - var result = _ellipse_0_1 = _c.CreateEllipseGeometry(); - result.Center = new Vector2(0.800000012F, -0.5F); - result.Radius = new Vector2(0F, 0F); - return result; - } - - // - - - Layer aggregator - // - - Layer: Dot-Y - // - Transforms: Dot-Y - // ShapeGroup: Ellipse 1 Offset:<196, 267> - // Ellipse Path 1.EllipseGeometry - CompositionEllipseGeometry Ellipse_4p6() - { - var result = _c.CreateEllipseGeometry(); - result.Center = new Vector2(0.800000012F, -0.5F); - result.Radius = new Vector2(4.5999999F, 4.5999999F); - return result; - } - - // Ellipse Path 1.EllipseGeometry - CompositionEllipseGeometry Ellipse_4p7() - { - if (_ellipse_4p7 != null) { return _ellipse_4p7; } - var result = _ellipse_4p7 = _c.CreateEllipseGeometry(); - result.Center = new Vector2(0.800000012F, -0.5F); - result.Radius = new Vector2(4.69999981F, 4.69999981F); - return result; - } - - CompositionPath Path_0() - { - if (_path_0 != null) { return _path_0; } - var result = _path_0 = new CompositionPath(Geometry_00()); - return result; - } - - CompositionPath Path_1() - { - if (_path_1 != null) { return _path_1; } - var result = _path_1 = new CompositionPath(Geometry_01()); - return result; - } - - CompositionPath Path_2() - { - if (_path_2 != null) { return _path_2; } - var result = _path_2 = new CompositionPath(Geometry_02()); - return result; - } - - CompositionPath Path_3() - { - if (_path_3 != null) { return _path_3; } - var result = _path_3 = new CompositionPath(Geometry_03()); - return result; - } - - CompositionPath Path_4() - { - if (_path_4 != null) { return _path_4; } - var result = _path_4 = new CompositionPath(Geometry_04()); - return result; - } - - CompositionPath Path_5() - { - if (_path_5 != null) { return _path_5; } - var result = _path_5 = new CompositionPath(Geometry_05()); - return result; - } - - CompositionPath Path_6() - { - if (_path_6 != null) { return _path_6; } - var result = _path_6 = new CompositionPath(Geometry_06()); - return result; - } - - CompositionPath Path_7() - { - if (_path_7 != null) { return _path_7; } - var result = _path_7 = new CompositionPath(Geometry_07()); - return result; - } - - CompositionPath Path_8() - { - if (_path_8 != null) { return _path_8; } - var result = _path_8 = new CompositionPath(Geometry_08()); - return result; - } - - // - - Layer aggregator - // - Layer: E3-Y - // ShapeGroup: Group 1 Offset:<344.674, 261.877> - CompositionPathGeometry PathGeometry_00() - { - if (_pathGeometry_00 != null) { return _pathGeometry_00; } - var result = _pathGeometry_00 = _c.CreatePathGeometry(Path_0()); - return result; - } - - // - - Layer aggregator - // - Layer: E3-B - // Transforms: E3-B Offset:<0.06500244, 0> - CompositionPathGeometry PathGeometry_01() - { - if (_pathGeometry_01 != null) { return _pathGeometry_01; } - var result = _pathGeometry_01 = _c.CreatePathGeometry(Path_0()); - return result; - } - - // - - Layer aggregator - // - Layer: I-Y - // ShapeGroup: Group 6 Offset:<304.135, 282.409> - CompositionPathGeometry PathGeometry_02() - { - if (_pathGeometry_02 != null) { return _pathGeometry_02; } - var result = _pathGeometry_02 = _c.CreatePathGeometry(Path_1()); - return result; - } - - // - - Layer aggregator - // - Layer: I-B - // Transforms: I-B - CompositionPathGeometry PathGeometry_03() - { - if (_pathGeometry_03 != null) { return _pathGeometry_03; } - var result = _pathGeometry_03 = _c.CreatePathGeometry(Path_1()); - return result; - } - - // - - Layer aggregator - // - Layer: E2-Y - // ShapeGroup: Group 3 Offset:<331.664, 238.14> - CompositionPathGeometry PathGeometry_04() - { - if (_pathGeometry_04 != null) { return _pathGeometry_04; } - var result = _pathGeometry_04 = _c.CreatePathGeometry(Path_2()); - return result; - } - - // - - Layer aggregator - // - Layer: E2-B - // Transforms: E2-B - CompositionPathGeometry PathGeometry_05() - { - if (_pathGeometry_05 != null) { return _pathGeometry_05; } - var result = _pathGeometry_05 = _c.CreatePathGeometry(Path_2()); - return result; - } - - // - - Layer aggregator - // - Layer: E1-Y - // ShapeGroup: Group 2 Offset:<344.672, 214.842> - CompositionPathGeometry PathGeometry_06() - { - if (_pathGeometry_06 != null) { return _pathGeometry_06; } - var result = _pathGeometry_06 = _c.CreatePathGeometry(Path_3()); - return result; - } - - // - - Layer aggregator - // - Layer: E1-B - // Transforms: E1-B - CompositionPathGeometry PathGeometry_07() - { - if (_pathGeometry_07 != null) { return _pathGeometry_07; } - var result = _pathGeometry_07 = _c.CreatePathGeometry(Path_3()); - return result; - } - - CompositionPathGeometry PathGeometry_08() - { - if (_pathGeometry_08 != null) { return _pathGeometry_08; } - var result = _pathGeometry_08 = _c.CreatePathGeometry(Path_4()); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 0F); - propertySet.InsertScalar("TStart", 0F); - BindProperty(_pathGeometry_08, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_08); - BindProperty(_pathGeometry_08, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_08); - return result; - } - - // - Layer aggregator - // Layer: T2b-Y - CompositionPathGeometry PathGeometry_09() - { - if (_pathGeometry_09 != null) { return _pathGeometry_09; } - var result = _pathGeometry_09 = _c.CreatePathGeometry(Path_5()); - return result; - } - - // - Layer aggregator - // Layer: T2a-Y - CompositionPathGeometry PathGeometry_10() - { - if (_pathGeometry_10 != null) { return _pathGeometry_10; } - var result = _pathGeometry_10 = _c.CreatePathGeometry(Path_6()); - return result; - } - - // - Layer aggregator - // Layer: T2b-B - CompositionPathGeometry PathGeometry_11() - { - if (_pathGeometry_11 != null) { return _pathGeometry_11; } - var result = _pathGeometry_11 = _c.CreatePathGeometry(Path_5()); - return result; - } - - // - Layer aggregator - // Layer: T1b-Y - CompositionPathGeometry PathGeometry_12() - { - if (_pathGeometry_12 != null) { return _pathGeometry_12; } - var result = _pathGeometry_12 = _c.CreatePathGeometry(Path_7()); - return result; - } - - // - Layer aggregator - // Layer: T1b-B - CompositionPathGeometry PathGeometry_13() - { - if (_pathGeometry_13 != null) { return _pathGeometry_13; } - var result = _pathGeometry_13 = _c.CreatePathGeometry(Path_7()); - return result; - } - - CompositionPathGeometry PathGeometry_14() - { - if (_pathGeometry_14 != null) { return _pathGeometry_14; } - var result = _pathGeometry_14 = _c.CreatePathGeometry(Path_4()); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 0F); - propertySet.InsertScalar("TStart", 0F); - BindProperty(_pathGeometry_14, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_14); - BindProperty(_pathGeometry_14, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_14); - return result; - } - - // - Layer aggregator - // Layer: T2a-B - CompositionPathGeometry PathGeometry_15() - { - if (_pathGeometry_15 != null) { return _pathGeometry_15; } - var result = _pathGeometry_15 = _c.CreatePathGeometry(Path_6()); - return result; - } - - // - - Layer aggregator - // - Layer: T1a-B - // Transforms: T1a-B - CompositionPathGeometry PathGeometry_16() - { - if (_pathGeometry_16 != null) { return _pathGeometry_16; } - var result = _pathGeometry_16 = _c.CreatePathGeometry(Path_4()); - result.TrimStart = 0.248999998F; - return result; - } - - CompositionPathGeometry PathGeometry_17() - { - if (_pathGeometry_17 != null) { return _pathGeometry_17; } - var result = _pathGeometry_17 = _c.CreatePathGeometry(Path_8()); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 0.810000002F); - propertySet.InsertScalar("TStart", 0.800000012F); - BindProperty(_pathGeometry_17, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_17); - BindProperty(_pathGeometry_17, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_17); - return result; - } - - CompositionPathGeometry PathGeometry_18() - { - if (_pathGeometry_18 != null) { return _pathGeometry_18; } - var result = _pathGeometry_18 = _c.CreatePathGeometry(Path_8()); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 0.810000002F); - propertySet.InsertScalar("TStart", 0.800000012F); - BindProperty(_pathGeometry_18, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_18); - BindProperty(_pathGeometry_18, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_18); - return result; - } - - CompositionPathGeometry PathGeometry_19() - { - if (_pathGeometry_19 != null) { return _pathGeometry_19; } - var result = _pathGeometry_19 = _c.CreatePathGeometry(new CompositionPath(Geometry_09())); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 1F); - propertySet.InsertScalar("TStart", 0.870000005F); - BindProperty(_pathGeometry_19, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_19); - BindProperty(_pathGeometry_19, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_19); - return result; - } - - CompositionPathGeometry PathGeometry_20() - { - if (_pathGeometry_20 != null) { return _pathGeometry_20; } - var result = _pathGeometry_20 = _c.CreatePathGeometry(new CompositionPath(Geometry_10())); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 1F); - propertySet.InsertScalar("TStart", 0.870000005F); - BindProperty(_pathGeometry_20, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_20); - BindProperty(_pathGeometry_20, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_20); - return result; - } - - CompositionPathGeometry PathGeometry_21() - { - if (_pathGeometry_21 != null) { return _pathGeometry_21; } - var result = _pathGeometry_21 = _c.CreatePathGeometry(new CompositionPath(Geometry_11())); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 1F); - propertySet.InsertScalar("TStart", 0.870000005F); - BindProperty(_pathGeometry_21, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_21); - BindProperty(_pathGeometry_21, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_21); - return result; - } - - CompositionPathGeometry PathGeometry_22() - { - if (_pathGeometry_22 != null) { return _pathGeometry_22; } - var result = _pathGeometry_22 = _c.CreatePathGeometry(new CompositionPath(Geometry_12())); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 1F); - propertySet.InsertScalar("TStart", 0.870000005F); - BindProperty(_pathGeometry_22, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_22); - BindProperty(_pathGeometry_22, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_22); - return result; - } - - CompositionPathGeometry PathGeometry_23() - { - if (_pathGeometry_23 != null) { return _pathGeometry_23; } - var result = _pathGeometry_23 = _c.CreatePathGeometry(new CompositionPath(Geometry_13())); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 1F); - propertySet.InsertScalar("TStart", 0.870000005F); - BindProperty(_pathGeometry_23, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_23); - BindProperty(_pathGeometry_23, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_23); - return result; - } - - CompositionPathGeometry PathGeometry_24() - { - if (_pathGeometry_24 != null) { return _pathGeometry_24; } - var result = _pathGeometry_24 = _c.CreatePathGeometry(new CompositionPath(Geometry_14())); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 1F); - propertySet.InsertScalar("TStart", 0.870000005F); - BindProperty(_pathGeometry_24, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_24); - BindProperty(_pathGeometry_24, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_24); - return result; - } - - CompositionPathGeometry PathGeometry_25() - { - if (_pathGeometry_25 != null) { return _pathGeometry_25; } - var result = _pathGeometry_25 = _c.CreatePathGeometry(new CompositionPath(Geometry_15())); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 1F); - propertySet.InsertScalar("TStart", 0.870000005F); - BindProperty(_pathGeometry_25, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_25); - BindProperty(_pathGeometry_25, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_25); - return result; - } - - CompositionPathGeometry PathGeometry_26() - { - if (_pathGeometry_26 != null) { return _pathGeometry_26; } - var result = _pathGeometry_26 = _c.CreatePathGeometry(new CompositionPath(Geometry_16())); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 1F); - propertySet.InsertScalar("TStart", 0.870000005F); - BindProperty(_pathGeometry_26, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_26); - BindProperty(_pathGeometry_26, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_26); - return result; - } - - CompositionPathGeometry PathGeometry_27() - { - if (_pathGeometry_27 != null) { return _pathGeometry_27; } - var result = _pathGeometry_27 = _c.CreatePathGeometry(new CompositionPath(Geometry_17())); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 1F); - propertySet.InsertScalar("TStart", 0.870000005F); - BindProperty(_pathGeometry_27, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_27); - BindProperty(_pathGeometry_27, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_27); - return result; - } - - CompositionPathGeometry PathGeometry_28() - { - if (_pathGeometry_28 != null) { return _pathGeometry_28; } - var result = _pathGeometry_28 = _c.CreatePathGeometry(new CompositionPath(Geometry_18())); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 1F); - propertySet.InsertScalar("TStart", 0.870000005F); - BindProperty(_pathGeometry_28, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_28); - BindProperty(_pathGeometry_28, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_28); - return result; - } - - CompositionPathGeometry PathGeometry_29() - { - if (_pathGeometry_29 != null) { return _pathGeometry_29; } - var result = _pathGeometry_29 = _c.CreatePathGeometry(new CompositionPath(Geometry_19())); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 1F); - propertySet.InsertScalar("TStart", 0.870000005F); - BindProperty(_pathGeometry_29, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_29); - BindProperty(_pathGeometry_29, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_29); - return result; - } - - CompositionPathGeometry PathGeometry_30() - { - if (_pathGeometry_30 != null) { return _pathGeometry_30; } - var result = _pathGeometry_30 = _c.CreatePathGeometry(new CompositionPath(Geometry_20())); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 1F); - propertySet.InsertScalar("TStart", 0.870000005F); - BindProperty(_pathGeometry_30, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_30); - BindProperty(_pathGeometry_30, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_30); - return result; - } - - CompositionPathGeometry PathGeometry_31() - { - if (_pathGeometry_31 != null) { return _pathGeometry_31; } - var result = _pathGeometry_31 = _c.CreatePathGeometry(new CompositionPath(Geometry_21())); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 1F); - propertySet.InsertScalar("TStart", 0.870000005F); - BindProperty(_pathGeometry_31, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_31); - BindProperty(_pathGeometry_31, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_31); - return result; - } - - CompositionPathGeometry PathGeometry_32() - { - if (_pathGeometry_32 != null) { return _pathGeometry_32; } - var result = _pathGeometry_32 = _c.CreatePathGeometry(new CompositionPath(Geometry_22())); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 1F); - propertySet.InsertScalar("TStart", 0.870000005F); - BindProperty(_pathGeometry_32, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_32); - BindProperty(_pathGeometry_32, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_32); - return result; - } - - CompositionPathGeometry PathGeometry_33() - { - if (_pathGeometry_33 != null) { return _pathGeometry_33; } - var result = _pathGeometry_33 = _c.CreatePathGeometry(new CompositionPath(Geometry_23())); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 1F); - propertySet.InsertScalar("TStart", 0.870000005F); - BindProperty(_pathGeometry_33, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_33); - BindProperty(_pathGeometry_33, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_33); - return result; - } - - CompositionPathGeometry PathGeometry_34() - { - if (_pathGeometry_34 != null) { return _pathGeometry_34; } - var result = _pathGeometry_34 = _c.CreatePathGeometry(new CompositionPath(Geometry_24())); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 1F); - propertySet.InsertScalar("TStart", 0.870000005F); - BindProperty(_pathGeometry_34, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_34); - BindProperty(_pathGeometry_34, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_34); - return result; - } - - CompositionPathGeometry PathGeometry_35() - { - if (_pathGeometry_35 != null) { return _pathGeometry_35; } - var result = _pathGeometry_35 = _c.CreatePathGeometry(new CompositionPath(Geometry_25())); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 1F); - propertySet.InsertScalar("TStart", 0.870000005F); - BindProperty(_pathGeometry_35, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_35); - BindProperty(_pathGeometry_35, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_35); - return result; - } - - CompositionPathGeometry PathGeometry_36() - { - if (_pathGeometry_36 != null) { return _pathGeometry_36; } - var result = _pathGeometry_36 = _c.CreatePathGeometry(new CompositionPath(Geometry_26())); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 1F); - propertySet.InsertScalar("TStart", 0.870000005F); - BindProperty(_pathGeometry_36, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_36); - BindProperty(_pathGeometry_36, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_36); - return result; - } - - CompositionPathGeometry PathGeometry_37() - { - if (_pathGeometry_37 != null) { return _pathGeometry_37; } - var result = _pathGeometry_37 = _c.CreatePathGeometry(new CompositionPath(Geometry_27())); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 1F); - propertySet.InsertScalar("TStart", 0.870000005F); - BindProperty(_pathGeometry_37, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_37); - BindProperty(_pathGeometry_37, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_37); - return result; - } - - CompositionPathGeometry PathGeometry_38() - { - if (_pathGeometry_38 != null) { return _pathGeometry_38; } - var result = _pathGeometry_38 = _c.CreatePathGeometry(new CompositionPath(Geometry_28())); - var propertySet = result.Properties; - propertySet.InsertScalar("TEnd", 1F); - propertySet.InsertScalar("TStart", 0.870000005F); - BindProperty(_pathGeometry_38, "TrimStart", "Min(my.TStart,my.TEnd)", "my", _pathGeometry_38); - BindProperty(_pathGeometry_38, "TrimEnd", "Max(my.TStart,my.TEnd)", "my", _pathGeometry_38); - return result; - } - - // - Layer aggregator - // Offset:<187.5, 333.5> - // Rectangle Path 1.RectangleGeometry - CompositionRectangleGeometry Rectangle_375x667() - { - var result = _c.CreateRectangleGeometry(); - result.Offset = new Vector2(-187.5F, -333.5F); - result.Size = new Vector2(375F, 667F); - return result; - } - - // Layer aggregator - // Rectangle Path 1 - CompositionSpriteShape SpriteShape_00() - { - // Offset:<187.5, 333.5> - var geometry = Rectangle_375x667(); - var result = CreateSpriteShape(geometry, new Matrix3x2(1F, 0F, 0F, 1F, 187.5F, 333.5F), ColorBrush_AlmostDarkTurquoise_FF00D1C1());; - return result; - } - - // - - Layer aggregator - // - Layer: Dot-Y - // Transforms: Dot-Y - // Ellipse Path 1 - CompositionSpriteShape SpriteShape_01() - { - // Offset:<196, 267> - var geometry = Ellipse_4p6(); - var result = CreateSpriteShape(geometry, new Matrix3x2(1F, 0F, 0F, 1F, 196F, 267F), ColorBrush_White());; - return result; - } - - // - Layer aggregator - // Layer: E3-Y - // Path 1 - CompositionSpriteShape SpriteShape_02() - { - // Offset:<344.674, 261.877> - var result = CreateSpriteShape(PathGeometry_00(), new Matrix3x2(1F, 0F, 0F, 1F, 344.674011F, 261.877014F));; - result.StrokeBrush = ColorBrush_AlmostTeal_FF007A87(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 5F; - result.StrokeThickness = 9.56200027F; - return result; - } - - // - Layer aggregator - // Layer: E3-B - // Path 1 - CompositionSpriteShape SpriteShape_03() - { - // Offset:<344.739, 261.877> - var result = CreateSpriteShape(PathGeometry_01(), new Matrix3x2(1F, 0F, 0F, 1F, 344.739014F, 261.877014F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 5F; - result.StrokeThickness = 9.56200027F; - return result; - } - - // - Layer aggregator - // Layer: I-Y - // Path 1 - CompositionSpriteShape SpriteShape_04() - { - // Offset:<304.135, 282.409> - var result = CreateSpriteShape(PathGeometry_02(), new Matrix3x2(1F, 0F, 0F, 1F, 304.13501F, 282.408997F));; - result.StrokeBrush = ColorBrush_AlmostTeal_FF007A87(); - result.StrokeDashCap = CompositionStrokeCap.Square; - result.StrokeStartCap = CompositionStrokeCap.Square; - result.StrokeEndCap = CompositionStrokeCap.Square; - result.StrokeMiterLimit = 5F; - result.StrokeThickness = 8.39999962F; - return result; - } - - // - Layer aggregator - // Layer: I-B - // Path 1 - CompositionSpriteShape SpriteShape_05() - { - // Offset:<304.135, 282.409> - var result = CreateSpriteShape(PathGeometry_03(), new Matrix3x2(1F, 0F, 0F, 1F, 304.13501F, 282.408997F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Square; - result.StrokeStartCap = CompositionStrokeCap.Square; - result.StrokeEndCap = CompositionStrokeCap.Square; - result.StrokeMiterLimit = 5F; - result.StrokeThickness = 9.19400024F; - return result; - } - - // - Layer aggregator - // Layer: E2-Y - // Path 1 - CompositionSpriteShape SpriteShape_06() - { - // Offset:<331.664, 238.14> - var result = CreateSpriteShape(PathGeometry_04(), new Matrix3x2(1F, 0F, 0F, 1F, 331.664001F, 238.139999F));; - result.StrokeBrush = ColorBrush_AlmostTeal_FF007A87(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 5F; - result.StrokeThickness = 8.39999962F; - return result; - } - - // - Layer aggregator - // Layer: E2-B - // Path 1 - CompositionSpriteShape SpriteShape_07() - { - // Offset:<331.664, 238.14> - var result = CreateSpriteShape(PathGeometry_05(), new Matrix3x2(1F, 0F, 0F, 1F, 331.664001F, 238.139999F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 5F; - result.StrokeThickness = 9.56200027F; - return result; - } - - // - Layer aggregator - // Layer: E1-Y - // Path 1 - CompositionSpriteShape SpriteShape_08() - { - // Offset:<344.672, 214.842> - var result = CreateSpriteShape(PathGeometry_06(), new Matrix3x2(1F, 0F, 0F, 1F, 344.671997F, 214.841995F));; - result.StrokeBrush = ColorBrush_AlmostTeal_FF007A87(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 5F; - result.StrokeThickness = 8.39999962F; - return result; - } - - // - Layer aggregator - // Layer: E1-B - // Path 1 - CompositionSpriteShape SpriteShape_09() - { - // Offset:<344.672, 214.842> - var result = CreateSpriteShape(PathGeometry_07(), new Matrix3x2(1F, 0F, 0F, 1F, 344.671997F, 214.841995F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 5F; - result.StrokeThickness = 9.56200027F; - return result; - } - - // - Layer aggregator - // Layer: T1a-Y - // Path 1 - CompositionSpriteShape SpriteShape_10() - { - // Offset:<227.677, 234.375> - var result = CreateSpriteShape(PathGeometry_08(), new Matrix3x2(1F, 0F, 0F, 1F, 227.677002F, 234.375F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 5F; - result.StrokeThickness = 8.39999962F; - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_11() - { - // Offset:<-56.5, 83.5> - if (_spriteShape_11 != null) { return _spriteShape_11; } - var result = _spriteShape_11 = CreateSpriteShape(PathGeometry_09(), new Matrix3x2(1F, 0F, 0F, 1F, -56.5F, 83.5F));; - result.Scale = new Vector2(0F, 0F); - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 5F; - result.StrokeThickness = 9.19400024F; - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_12() - { - // Offset:<221.198, 330.758> - if (_spriteShape_12 != null) { return _spriteShape_12; } - var result = _spriteShape_12 = CreateSpriteShape(PathGeometry_10(), new Matrix3x2(1F, 0F, 0F, 1F, 221.197998F, 330.757996F));; - result.Scale = new Vector2(0F, 0F); - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Square; - result.StrokeStartCap = CompositionStrokeCap.Square; - result.StrokeEndCap = CompositionStrokeCap.Square; - result.StrokeMiterLimit = 5F; - result.StrokeThickness = 9.19400024F; - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_13() - { - // Offset:<-56.5, 83.5> - if (_spriteShape_13 != null) { return _spriteShape_13; } - var result = _spriteShape_13 = CreateSpriteShape(PathGeometry_11(), new Matrix3x2(1F, 0F, 0F, 1F, -56.5F, 83.5F));; - result.Scale = new Vector2(0F, 0F); - result.StrokeBrush = ColorBrush_AlmostTeal_FF007A87(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 5F; - result.StrokeThickness = 9.19400024F; - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_14() - { - // Offset:<186.256, 349.081> - if (_spriteShape_14 != null) { return _spriteShape_14; } - var result = _spriteShape_14 = CreateSpriteShape(PathGeometry_12(), new Matrix3x2(1F, 0F, 0F, 1F, 186.255997F, 349.080994F));; - result.Scale = new Vector2(0F, 0F); - result.StrokeBrush = ColorBrush_AlmostTeal_FF007A87(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeLineJoin = CompositionStrokeLineJoin.Round; - result.StrokeMiterLimit = 2F; - result.StrokeThickness = 8.39999962F; - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_15() - { - // Offset:<186.256, 349.081> - if (_spriteShape_15 != null) { return _spriteShape_15; } - var result = _spriteShape_15 = CreateSpriteShape(PathGeometry_13(), new Matrix3x2(1F, 0F, 0F, 1F, 186.255997F, 349.080994F));; - result.Scale = new Vector2(0F, 0F); - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeLineJoin = CompositionStrokeLineJoin.Round; - result.StrokeMiterLimit = 2F; - result.StrokeThickness = 9.19400024F; - return result; - } - - // - Layer aggregator - // Layer: O-Y - // Ellipse Path 1 - CompositionSpriteShape SpriteShape_16() - { - // Offset:<196, 267> - var result = CreateSpriteShape(Ellipse_0_0(), new Matrix3x2(1F, 0F, 0F, 1F, 196F, 267F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeThickness = 8.80000019F; - return result; - } - - // - Layer aggregator - // Layer: O-Y - // Ellipse Path 1 - CompositionSpriteShape SpriteShape_17() - { - // Offset:<196, 267> - var result = CreateSpriteShape(Ellipse_0_1(), new Matrix3x2(1F, 0F, 0F, 1F, 196F, 267F));; - result.StrokeBrush = ColorBrush_AlmostTeal_FF007A87(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeThickness = 9.19400024F; - return result; - } - - // - Layer aggregator - // Layer: T1a-Y 2 - // Path 1 - CompositionSpriteShape SpriteShape_18() - { - // Offset:<227.677, 234.375> - var result = CreateSpriteShape(PathGeometry_14(), new Matrix3x2(1F, 0F, 0F, 1F, 227.677002F, 234.375F));; - result.StrokeBrush = ColorBrush_AlmostTeal_FF007A87(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 5F; - result.StrokeThickness = 8.39999962F; - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_19() - { - // Offset:<221.198, 330.758> - if (_spriteShape_19 != null) { return _spriteShape_19; } - var result = _spriteShape_19 = CreateSpriteShape(PathGeometry_15(), new Matrix3x2(1F, 0F, 0F, 1F, 221.197998F, 330.757996F));; - result.Scale = new Vector2(0F, 0F); - result.StrokeBrush = ColorBrush_AlmostTeal_FF007A87(); - result.StrokeDashCap = CompositionStrokeCap.Square; - result.StrokeStartCap = CompositionStrokeCap.Square; - result.StrokeEndCap = CompositionStrokeCap.Square; - result.StrokeMiterLimit = 5F; - result.StrokeThickness = 9.19400024F; - return result; - } - - // - Layer aggregator - // Layer: T1a-B - // Path 1 - CompositionSpriteShape SpriteShape_20() - { - // Offset:<227.677, 234.375> - var result = CreateSpriteShape(PathGeometry_16(), new Matrix3x2(1F, 0F, 0F, 1F, 227.677002F, 234.375F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 5F; - result.StrokeThickness = 9.19400024F; - return result; - } - - // - - Layer aggregator - // - Layer: Dot-Y - // Transforms: Dot-Y - // Ellipse Path 1 - CompositionSpriteShape SpriteShape_21() - { - // Offset:<196, 267> - var geometry = Ellipse_4p7(); - var result = CreateSpriteShape(geometry, new Matrix3x2(1F, 0F, 0F, 1F, 196F, 267F), ColorBrush_White());; - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_22() - { - // Offset:<109.52901, 354.143> - if (_spriteShape_22 != null) { return _spriteShape_22; } - var result = _spriteShape_22 = CreateSpriteShape(PathGeometry_17(), new Matrix3x2(1F, 0F, 0F, 1F, 109.529007F, 354.143005F));; - result.Scale = new Vector2(0F, 0F); - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 5F; - result.StrokeThickness = 8.39999962F; - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_23() - { - // Offset:<109.52901, 354.143> - if (_spriteShape_23 != null) { return _spriteShape_23; } - var result = _spriteShape_23 = CreateSpriteShape(PathGeometry_18(), new Matrix3x2(1F, 0F, 0F, 1F, 109.529007F, 354.143005F));; - result.Scale = new Vector2(0F, 0F); - result.StrokeBrush = ColorBrush_AlmostTeal_FF007A87(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 5F; - result.StrokeThickness = 9.19400024F; - return result; - } - - // - Layer aggregator - // Layer: Dot1 - // Ellipse Path 1 - CompositionSpriteShape SpriteShape_24() - { - // Offset:<196, 267> - var geometry = Ellipse_4p7(); - var result = CreateSpriteShape(geometry, new Matrix3x2(1F, 0F, 0F, 1F, 196F, 267F), ColorBrush_White());; - return result; - } - - // - Layer aggregator - // Layer: S1-Y - // Path 1 - CompositionSpriteShape SpriteShape_25() - { - // Offset:<179.5, 333.5> - var result = CreateSpriteShape(PathGeometry_19(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 2F; - result.StrokeThickness = 1.5F; - return result; - } - - // - Layer aggregator - // Layer: S1-Y - // Path 1 - CompositionSpriteShape SpriteShape_26() - { - // Offset:<179.5, 333.5> - var result = CreateSpriteShape(PathGeometry_20(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 2F; - result.StrokeThickness = 1.5F; - return result; - } - - // - Layer aggregator - // Layer: S7 - // Path 1 - CompositionSpriteShape SpriteShape_27() - { - // Offset:<179.5, 333.5> - var result = CreateSpriteShape(PathGeometry_21(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 2F; - result.StrokeThickness = 1.5F; - return result; - } - - // - Layer aggregator - // Layer: S7 - // Path 1 - CompositionSpriteShape SpriteShape_28() - { - // Offset:<179.5, 333.5> - var result = CreateSpriteShape(PathGeometry_22(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 2F; - result.StrokeThickness = 1.5F; - return result; - } - - // - Layer aggregator - // Layer: S3-Y - // Path 1 - CompositionSpriteShape SpriteShape_29() - { - // Offset:<179.5, 333.5> - var result = CreateSpriteShape(PathGeometry_23(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 2F; - result.StrokeThickness = 2F; - return result; - } - - // - Layer aggregator - // Layer: S3-Y - // Path 1 - CompositionSpriteShape SpriteShape_30() - { - // Offset:<179.5, 333.5> - var result = CreateSpriteShape(PathGeometry_24(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 2F; - result.StrokeThickness = 2F; - return result; - } - - // - Layer aggregator - // Layer: S3-Y - // Path 1 - CompositionSpriteShape SpriteShape_31() - { - // Offset:<179.5, 333.5> - var result = CreateSpriteShape(PathGeometry_25(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 2F; - result.StrokeThickness = 2F; - return result; - } - - // - Layer aggregator - // Layer: S3-Y - // Path 1 - CompositionSpriteShape SpriteShape_32() - { - // Offset:<179.5, 333.5> - var result = CreateSpriteShape(PathGeometry_26(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 2F; - result.StrokeThickness = 2F; - return result; - } - - // - Layer aggregator - // Layer: S3-Y 2 - // Path 1 - CompositionSpriteShape SpriteShape_33() - { - // Offset:<179.5, 333.5> - var result = CreateSpriteShape(PathGeometry_27(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 2F; - result.StrokeThickness = 2F; - return result; - } - - // - Layer aggregator - // Layer: S3-Y 2 - // Path 1 - CompositionSpriteShape SpriteShape_34() - { - // Offset:<179.5, 333.5> - var result = CreateSpriteShape(PathGeometry_28(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 2F; - result.StrokeThickness = 2F; - return result; - } - - // - Layer aggregator - // Layer: S3-Y 2 - // Path 1 - CompositionSpriteShape SpriteShape_35() - { - // Offset:<179.5, 333.5> - var result = CreateSpriteShape(PathGeometry_29(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 2F; - result.StrokeThickness = 2F; - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_36() - { - // Offset:<179.5, 333.5> - if (_spriteShape_36 != null) { return _spriteShape_36; } - var result = _spriteShape_36 = CreateSpriteShape(PathGeometry_30(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; - result.Scale = new Vector2(0F, 0F); - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 2F; - result.StrokeThickness = 1.5F; - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_37() - { - // Offset:<179.5, 333.5> - if (_spriteShape_37 != null) { return _spriteShape_37; } - var result = _spriteShape_37 = CreateSpriteShape(PathGeometry_31(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; - result.Scale = new Vector2(0F, 0F); - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 2F; - result.StrokeThickness = 1.5F; - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_38() - { - // Offset:<179.5, 333.5> - if (_spriteShape_38 != null) { return _spriteShape_38; } - var result = _spriteShape_38 = CreateSpriteShape(PathGeometry_32(), new Matrix3x2(1F, 0F, 0F, 1F, 179.5F, 333.5F));; - result.Scale = new Vector2(0F, 0F); - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 2F; - result.StrokeThickness = 1.5F; - return result; - } - - // - Layer aggregator - // Layer: S3-Y 3 - // Path 1 - CompositionSpriteShape SpriteShape_39() - { - // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees - var result = CreateSpriteShape(PathGeometry_33(), new Matrix3x2(-0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 2F; - result.StrokeThickness = 2F; - return result; - } - - // - Layer aggregator - // Layer: S3-Y 3 - // Path 1 - CompositionSpriteShape SpriteShape_40() - { - // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees - var result = CreateSpriteShape(PathGeometry_34(), new Matrix3x2(-0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 2F; - result.StrokeThickness = 2F; - return result; - } - - // - Layer aggregator - // Layer: S3-Y 3 - // Path 1 - CompositionSpriteShape SpriteShape_41() - { - // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees - var result = CreateSpriteShape(PathGeometry_35(), new Matrix3x2(-0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 2F; - result.StrokeThickness = 2F; - return result; - } - - // - Layer aggregator - // Layer: S3-Y 4 - // Path 1 - CompositionSpriteShape SpriteShape_42() - { - // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, - // Scale:<0.99999994, 0.99999994> - var result = CreateSpriteShape(PathGeometry_36(), new Matrix3x2(0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 2F; - result.StrokeThickness = 2F; - return result; - } - - // - Layer aggregator - // Layer: S3-Y 4 - // Path 1 - CompositionSpriteShape SpriteShape_43() - { - // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, - // Scale:<0.99999994, 0.99999994> - var result = CreateSpriteShape(PathGeometry_37(), new Matrix3x2(0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 2F; - result.StrokeThickness = 2F; - return result; - } - - // - Layer aggregator - // Layer: S3-Y 4 - // Path 1 - CompositionSpriteShape SpriteShape_44() - { - // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, - // Scale:<0.99999994, 0.99999994> - var result = CreateSpriteShape(PathGeometry_38(), new Matrix3x2(0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F));; - result.StrokeBrush = ColorBrush_White(); - result.StrokeDashCap = CompositionStrokeCap.Round; - result.StrokeStartCap = CompositionStrokeCap.Round; - result.StrokeEndCap = CompositionStrokeCap.Round; - result.StrokeMiterLimit = 2F; - result.StrokeThickness = 2F; - return result; - } - - // The root of the composition. - ContainerVisual Root() - { - if (_root != null) { return _root; } - var result = _root = _c.CreateContainerVisual(); - var propertySet = result.Properties; - propertySet.InsertScalar("Progress", 0F); - propertySet.InsertScalar("t0", 0F); - // Layer aggregator - result.Children.InsertAtTop(ShapeVisual_0()); - return result; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_0() - { - return (_cubicBezierEasingFunction_0 == null) - ? _cubicBezierEasingFunction_0 = _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.166999996F), new Vector2(0.180000007F, 1F)) - : _cubicBezierEasingFunction_0; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_1() - { - return (_cubicBezierEasingFunction_1 == null) - ? _cubicBezierEasingFunction_1 = _c.CreateCubicBezierEasingFunction(new Vector2(0.819999993F, 0F), new Vector2(0.833000004F, 0.833000004F)) - : _cubicBezierEasingFunction_1; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_2() - { - return (_cubicBezierEasingFunction_2 == null) - ? _cubicBezierEasingFunction_2 = _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.166999996F), new Vector2(0.833000004F, 0.833000004F)) - : _cubicBezierEasingFunction_2; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_3() - { - return (_cubicBezierEasingFunction_3 == null) - ? _cubicBezierEasingFunction_3 = _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.166999996F), new Vector2(0.666999996F, 1F)) - : _cubicBezierEasingFunction_3; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_4() - { - return (_cubicBezierEasingFunction_4 == null) - ? _cubicBezierEasingFunction_4 = _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.166999996F), new Vector2(0.119999997F, 1F)) - : _cubicBezierEasingFunction_4; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_5() - { - return (_cubicBezierEasingFunction_5 == null) - ? _cubicBezierEasingFunction_5 = _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0F), new Vector2(0.119999997F, 1F)) - : _cubicBezierEasingFunction_5; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_6() - { - return (_cubicBezierEasingFunction_6 == null) - ? _cubicBezierEasingFunction_6 = _c.CreateCubicBezierEasingFunction(new Vector2(0.300999999F, 0F), new Vector2(0.666999996F, 1F)) - : _cubicBezierEasingFunction_6; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_7() - { - return (_cubicBezierEasingFunction_7 == null) - ? _cubicBezierEasingFunction_7 = _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.166999996F), new Vector2(0.0599999987F, 1F)) - : _cubicBezierEasingFunction_7; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_8() - { - return (_cubicBezierEasingFunction_8 == null) - ? _cubicBezierEasingFunction_8 = _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.166999996F), new Vector2(0.337000012F, 1F)) - : _cubicBezierEasingFunction_8; - } - - ScalarKeyFrameAnimation t0ScalarAnimation_0_to_1() - { - // Frame 35.26. - var result = CreateScalarKeyFrameAnimation(0.196966499F, 0F, StepThenHoldEasingFunction()); - result.SetReferenceParameter("_", _root); - // Frame 44. - result.InsertKeyFrame(0.245810047F, 1F, _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.197999999F), new Vector2(0.638000011F, 1F))); - // Frame 44. - result.InsertKeyFrame(0.245810062F, 0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675946F, 1F, _c.CreateCubicBezierEasingFunction(new Vector2(0.523000002F, 0F), new Vector2(0.795000017F, 1F))); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_0_to_1_0() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0F, HoldThenStepEasingFunction()); - // Frame 74. - result.InsertKeyFrame(0.413407832F, 1F, CubicBezierEasingFunction_6()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_0_to_1_1() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 1F, CubicBezierEasingFunction_6()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_0p81_to_0p734_0() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.810000002F, StepThenHoldEasingFunction()); - // Frame 16. - result.InsertKeyFrame(0.0893854722F, 0.810000002F, HoldThenStepEasingFunction()); - // Frame 27. - result.InsertKeyFrame(0.150837988F, 0.734000027F, CubicBezierEasingFunction_8()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_0p81_to_0p734_1() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.810000002F, StepThenHoldEasingFunction()); - // Frame 18. - result.InsertKeyFrame(0.100558661F, 0.810000002F, HoldThenStepEasingFunction()); - // Frame 29. - result.InsertKeyFrame(0.162011176F, 0.734000027F, CubicBezierEasingFunction_8()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_00() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); - // Frame 29. - result.InsertKeyFrame(0.162011176F, 1F, HoldThenStepEasingFunction()); - // Frame 33. - result.InsertKeyFrame(0.184357539F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 36. - result.InsertKeyFrame(0.201117322F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_01() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); - // Frame 29. - result.InsertKeyFrame(0.162011176F, 1F, HoldThenStepEasingFunction()); - // Frame 33. - result.InsertKeyFrame(0.184357539F, 0.690559983F, CubicBezierEasingFunction_2()); - // Frame 36. - result.InsertKeyFrame(0.201117322F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_02() - { - // Frame 0. - if (_tEndScalarAnimation_1_to_0_02 != null) { return _tEndScalarAnimation_1_to_0_02; } - var result = _tEndScalarAnimation_1_to_0_02 = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); - // Frame 65. - result.InsertKeyFrame(0.363128483F, 1F, HoldThenStepEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_03() - { - // Frame 0. - if (_tEndScalarAnimation_1_to_0_03 != null) { return _tEndScalarAnimation_1_to_0_03; } - var result = _tEndScalarAnimation_1_to_0_03 = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 1F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_04() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 1F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.758560002F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_05() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 1F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.704559982F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_06() - { - // Frame 0. - if (_tEndScalarAnimation_1_to_0_06 != null) { return _tEndScalarAnimation_1_to_0_06; } - var result = _tEndScalarAnimation_1_to_0_06 = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 1F, HoldThenStepEasingFunction()); - // Frame 100. - result.InsertKeyFrame(0.558659196F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_07() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 1F, HoldThenStepEasingFunction()); - // Frame 100. - result.InsertKeyFrame(0.558659196F, 0.758560002F, CubicBezierEasingFunction_2()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_08() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); - // Frame 80. - result.InsertKeyFrame(0.446927369F, 1F, HoldThenStepEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 87. - result.InsertKeyFrame(0.486033529F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_09() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, 1F, HoldThenStepEasingFunction()); - // Frame 87. - result.InsertKeyFrame(0.486033529F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_10() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 1F, HoldThenStepEasingFunction()); - // Frame 90. - result.InsertKeyFrame(0.502793312F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 94. - result.InsertKeyFrame(0.525139689F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_11() - { - // Frame 0. - if (_tEndScalarAnimation_1_to_0_11 != null) { return _tEndScalarAnimation_1_to_0_11; } - var result = _tEndScalarAnimation_1_to_0_11 = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 1F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_12() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 1F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.758560002F, CubicBezierEasingFunction_2()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_13() - { - // Frame 0. - if (_tEndScalarAnimation_1_to_0_13 != null) { return _tEndScalarAnimation_1_to_0_13; } - var result = _tEndScalarAnimation_1_to_0_13 = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 1F, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_14() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 1F, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.758560002F, CubicBezierEasingFunction_2()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E2-Y - // - ShapeGroup: Group 3 Offset:<331.664, 238.14> - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p43_0() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0F, HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, 0.430000007F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E2-B - // - Transforms: E2-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p43_1() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); - // Frame 86. - result.InsertKeyFrame(0.480446935F, 0F, HoldThenStepEasingFunction()); - // Frame 95. - result.InsertKeyFrame(0.530726254F, 0.430000007F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E3-Y - // - ShapeGroup: Group 1 Offset:<344.674, 261.877> - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p316_0() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, 0F, HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, 0.316000015F, CubicBezierEasingFunction_2()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E3-B - // - Transforms: E3-B Offset:<0.06500244, 0> - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p316_1() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, 0F, HoldThenStepEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 0.316000015F, CubicBezierEasingFunction_2()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E1-Y - // - ShapeGroup: Group 2 Offset:<344.672, 214.842> - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p375_0() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0F, HoldThenStepEasingFunction()); - // Frame 88. - result.InsertKeyFrame(0.491620123F, 0.375F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E1-B - // - Transforms: E1-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p375_1() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, 0F, HoldThenStepEasingFunction()); - // Frame 93. - result.InsertKeyFrame(0.519553065F, 0.375F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: I-Y - // - ShapeGroup: Group 6 Offset:<304.135, 282.409> - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p457_0() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0F, HoldThenStepEasingFunction()); - // Frame 88. - result.InsertKeyFrame(0.491620123F, 0.456999987F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: I-B - // - Transforms: I-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p457_1() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); - // Frame 81. - result.InsertKeyFrame(0.452513963F, 0F, HoldThenStepEasingFunction()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0.456999987F, CubicBezierEasingFunction_4()); - return result; - } - - // - - Layer aggregator - // - Layer: T2a-Y - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p5_to_1_0() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.5F, StepThenHoldEasingFunction()); - // Frame 72. - result.InsertKeyFrame(0.402234644F, 0.5F, HoldThenStepEasingFunction()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 1F, CubicBezierEasingFunction_7()); - return result; - } - - // - - Layer aggregator - // - Layer: T2a-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p5_to_1_1() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.5F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.5F, HoldThenStepEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 1F, CubicBezierEasingFunction_7()); - return result; - } - - // - - Layer aggregator - // - Layer: T1b-Y - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p117_to_1_0() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.116999999F, StepThenHoldEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, 0.116999999F, HoldThenStepEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 1F, CubicBezierEasingFunction_2()); - return result; - } - - // - - Layer aggregator - // - Layer: T1b-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p117_to_1_1() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.116999999F, StepThenHoldEasingFunction()); - // Frame 81. - result.InsertKeyFrame(0.452513963F, 0.116999999F, HoldThenStepEasingFunction()); - // Frame 88. - result.InsertKeyFrame(0.491620123F, 1F, _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.166999996F), new Vector2(0.209999993F, 1F))); - return result; - } - - // - - - Layer aggregator - // - - Layer: T1a-B - // - Transforms: T1a-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p249_to_0p891() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.248999998F, StepThenHoldEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, 0.248999998F, HoldThenStepEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, 0.890999973F, _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.166999996F), new Vector2(0.672999978F, 1F))); - return result; - } - - // - - Layer aggregator - // - Layer: T2b-Y - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p411_to_0p665_0() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.411000013F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 0.411000013F, HoldThenStepEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 0.665000021F, CubicBezierEasingFunction_4()); - return result; - } - - // - - Layer aggregator - // - Layer: T2b-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p411_to_0p665_1() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.411000013F, StepThenHoldEasingFunction()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.411000013F, HoldThenStepEasingFunction()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0.665000021F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: O-Y - // - ShapeGroup: Ellipse 1 Offset:<196, 267> - // Ellipse Path 1.EllipseGeometry - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_1_to_0p88() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 1F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 1F, HoldThenStepEasingFunction()); - // Frame 63. - result.InsertKeyFrame(0.351955295F, 0.879999995F, CubicBezierEasingFunction_2()); - return result; - } - - // - - - Layer aggregator - // - - Layer: O-Y - // - ShapeGroup: Ellipse 1 Offset:<196, 267> - // Ellipse Path 1.EllipseGeometry - // TrimStart - ScalarKeyFrameAnimation TrimStartScalarAnimation_0_to_0p399() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0F, HoldThenStepEasingFunction()); - // Frame 63. - result.InsertKeyFrame(0.351955295F, 0.300000012F, CubicBezierEasingFunction_2()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0.398999989F, _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 1F), new Vector2(0.432000011F, 1F))); - return result; - } - - // - - Layer aggregator - // - Layer: T2a-Y - // TrimStart - ScalarKeyFrameAnimation TrimStartScalarAnimation_0p5_to_0_0() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.5F, StepThenHoldEasingFunction()); - // Frame 72. - result.InsertKeyFrame(0.402234644F, 0.5F, HoldThenStepEasingFunction()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0F, CubicBezierEasingFunction_7()); - return result; - } - - // - - Layer aggregator - // - Layer: T2a-B - // TrimStart - ScalarKeyFrameAnimation TrimStartScalarAnimation_0p5_to_0_1() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.5F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.5F, HoldThenStepEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 0F, CubicBezierEasingFunction_7()); - return result; - } - - // - - Layer aggregator - // - Layer: T2b-Y - // TrimStart - ScalarKeyFrameAnimation TrimStartScalarAnimation_0p29_to_0_0() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.289999992F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 0.289999992F, HoldThenStepEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 0F, CubicBezierEasingFunction_4()); - return result; - } - - // - - Layer aggregator - // - Layer: T2b-B - // TrimStart - ScalarKeyFrameAnimation TrimStartScalarAnimation_0p29_to_0_1() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.289999992F, StepThenHoldEasingFunction()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.289999992F, HoldThenStepEasingFunction()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0F, CubicBezierEasingFunction_4()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0_to_0p249() - { - // Frame 0. - if (_tStartScalarAnimation_0_to_0p249 != null) { return _tStartScalarAnimation_0_to_0p249; } - var result = _tStartScalarAnimation_0_to_0p249 = CreateScalarKeyFrameAnimation(0F, 0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0F, HoldThenStepEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, 0.248999998F, _c.CreateCubicBezierEasingFunction(new Vector2(0.300999999F, 0F), new Vector2(0.833000004F, 1F))); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p8_to_0() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.800000012F, StepThenHoldEasingFunction()); - // Frame 16. - result.InsertKeyFrame(0.0893854722F, 0.800000012F, HoldThenStepEasingFunction()); - // Frame 20. - result.InsertKeyFrame(0.111731842F, 0.5F, _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.166999996F), new Vector2(0.703000009F, 0.856999993F))); - // Frame 28. - result.InsertKeyFrame(0.156424582F, 0F, _c.CreateCubicBezierEasingFunction(new Vector2(0.333000004F, 0.202000007F), new Vector2(0.938000023F, 1F))); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p8_to_0p3() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.800000012F, StepThenHoldEasingFunction()); - // Frame 18. - result.InsertKeyFrame(0.100558661F, 0.800000012F, HoldThenStepEasingFunction()); - // Frame 23. - result.InsertKeyFrame(0.128491625F, 0.5F, _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.166999996F), new Vector2(0.703000009F, 0.82099998F))); - // Frame 55. - result.InsertKeyFrame(0.30726257F, 0.300000012F, _c.CreateCubicBezierEasingFunction(new Vector2(0.0370000005F, 0.167999998F), new Vector2(0.263000011F, 1F))); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_00() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 29. - result.InsertKeyFrame(0.162011176F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 33. - result.InsertKeyFrame(0.184357539F, 0.375330001F, CubicBezierEasingFunction_2()); - // Frame 36. - result.InsertKeyFrame(0.201117322F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_01() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 29. - result.InsertKeyFrame(0.162011176F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 33. - result.InsertKeyFrame(0.184357539F, 0.253329992F, CubicBezierEasingFunction_2()); - // Frame 36. - result.InsertKeyFrame(0.201117322F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_02() - { - // Frame 0. - if (_tStartScalarAnimation_0p87_to_0_02 != null) { return _tStartScalarAnimation_0p87_to_0_02; } - var result = _tStartScalarAnimation_0p87_to_0_02 = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 65. - result.InsertKeyFrame(0.363128483F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, 0.212329999F, CubicBezierEasingFunction_2()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_03() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.421330005F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_04() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.438329995F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_05() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.506330013F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_06() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.439330012F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_07() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 100. - result.InsertKeyFrame(0.558659196F, 0.421330005F, CubicBezierEasingFunction_2()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_08() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 100. - result.InsertKeyFrame(0.558659196F, 0.438329995F, CubicBezierEasingFunction_2()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_09() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 100. - result.InsertKeyFrame(0.558659196F, 0.506330013F, CubicBezierEasingFunction_2()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_10() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 80. - result.InsertKeyFrame(0.446927369F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.212329999F, CubicBezierEasingFunction_2()); - // Frame 87. - result.InsertKeyFrame(0.486033529F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_11() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 87. - result.InsertKeyFrame(0.486033529F, 0.212329999F, CubicBezierEasingFunction_2()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_12() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 90. - result.InsertKeyFrame(0.502793312F, 0.212329999F, CubicBezierEasingFunction_2()); - // Frame 94. - result.InsertKeyFrame(0.525139689F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_13() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.421330005F, CubicBezierEasingFunction_2()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_14() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.438329995F, CubicBezierEasingFunction_2()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_15() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.506330013F, CubicBezierEasingFunction_2()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_16() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.421330005F, CubicBezierEasingFunction_2()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_17() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.438329995F, CubicBezierEasingFunction_2()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_18() - { - // Frame 0. - var result = CreateScalarKeyFrameAnimation(0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.506330013F, CubicBezierEasingFunction_2()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0F, CubicBezierEasingFunction_2()); - return result; - } - - // Layer aggregator - ShapeVisual ShapeVisual_0() - { - var result = _c.CreateShapeVisual(); - result.Size = new Vector2(375F, 667F); - var shapes = result.Shapes; - // Offset:<187.5, 333.5> - shapes.Add(SpriteShape_00()); - // Layer: Dot-Y - shapes.Add(ContainerShape_00()); - // Layer: E3-Y - shapes.Add(ContainerShape_02()); - // Layer: E3-B - shapes.Add(ContainerShape_03()); - // Layer: I-Y - shapes.Add(ContainerShape_04()); - // Layer: I-B - shapes.Add(ContainerShape_05()); - // Layer: E2-Y - shapes.Add(ContainerShape_06()); - // Layer: E2-B - shapes.Add(ContainerShape_07()); - // Layer: E1-Y - shapes.Add(ContainerShape_08()); - // Layer: E1-B - shapes.Add(ContainerShape_09()); - // Layer: T1a-Y - shapes.Add(ContainerShape_10()); - // Layer: T2b-Y - shapes.Add(SpriteShape_11()); - // Layer: T2a-Y - shapes.Add(SpriteShape_12()); - // Layer: T2b-B - shapes.Add(SpriteShape_13()); - // Layer: T1b-Y - shapes.Add(SpriteShape_14()); - // Layer: T1b-B - shapes.Add(SpriteShape_15()); - // Layer: O-Y - shapes.Add(ContainerShape_11()); - // Layer: T1a-Y 2 - shapes.Add(ContainerShape_12()); - // Layer: T2a-B - shapes.Add(SpriteShape_19()); - // Layer: T1a-B - shapes.Add(ContainerShape_13()); - // Layer: Dot-Y - shapes.Add(ContainerShape_14()); - // Layer: L-Y - shapes.Add(SpriteShape_22()); - // Layer: L-B - shapes.Add(SpriteShape_23()); - // Layer: Dot1 - shapes.Add(ContainerShape_16()); - // Layer: S1-Y - shapes.Add(ContainerShape_17()); - // Layer: S7 - shapes.Add(ContainerShape_18()); - // Layer: S3-Y - shapes.Add(ContainerShape_19()); - // Layer: S3-Y 2 - shapes.Add(ContainerShape_20()); - // Layer: S11 - shapes.Add(SpriteShape_36()); - // Layer: S12 - shapes.Add(SpriteShape_37()); - // Layer: S13 - shapes.Add(SpriteShape_38()); - // Layer: S3-Y 3 - shapes.Add(ContainerShape_21()); - // Layer: S3-Y 4 - shapes.Add(ContainerShape_22()); - return result; - } - - StepEasingFunction HoldThenStepEasingFunction() - { - if (_holdThenStepEasingFunction != null) { return _holdThenStepEasingFunction; } - var result = _holdThenStepEasingFunction = _c.CreateStepEasingFunction(); - result.IsFinalStepSingleFrame = true; - return result; - } - - StepEasingFunction StepThenHoldEasingFunction() - { - if (_stepThenHoldEasingFunction != null) { return _stepThenHoldEasingFunction; } - var result = _stepThenHoldEasingFunction = _c.CreateStepEasingFunction(); - result.IsInitialStepSingleFrame = true; - return result; - } - - // - - Layer aggregator - // - Layer: Dot-Y - // Transforms: Dot-Y - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_00() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(-153.528F, -206.753998F), StepThenHoldEasingFunction()); - // Frame 96. - result.InsertKeyFrame(0.536312878F, new Vector2(-153.528F, -206.753998F), HoldThenStepEasingFunction()); - // Frame 108. - result.InsertKeyFrame(0.603351951F, new Vector2(-134.278F, -206.753998F), _c.CreateCubicBezierEasingFunction(new Vector2(0F, 0F), new Vector2(0F, 0.811999977F))); - // Frame 115. - result.InsertKeyFrame(0.642458081F, new Vector2(-133.028F, -206.753998F), _c.CreateCubicBezierEasingFunction(new Vector2(0.389999986F, 0.707000017F), new Vector2(0.708000004F, 1F))); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_01() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(104.781998F, -2.52699995F), StepThenHoldEasingFunction()); - // Frame 96. - result.InsertKeyFrame(0.536312878F, new Vector2(104.781998F, -2.52699995F), HoldThenStepEasingFunction()); - // Frame 99. - result.InsertKeyFrame(0.553072631F, new Vector2(104.781998F, -4.52699995F), CubicBezierEasingFunction_0()); - // Frame 102. - result.InsertKeyFrame(0.569832385F, new Vector2(104.781998F, -2.52699995F), CubicBezierEasingFunction_1()); - // Frame 105. - result.InsertKeyFrame(0.586592197F, new Vector2(104.781998F, -3.09100008F), CubicBezierEasingFunction_0()); - // Frame 108. - result.InsertKeyFrame(0.603351951F, new Vector2(104.781998F, -2.52699995F), CubicBezierEasingFunction_1()); - return result; - } - - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_02() - { - // Frame 0. - if (_offsetVector2Animation_02 != null) { return _offsetVector2Animation_02; } - var result = _offsetVector2Animation_02 = CreateVector2KeyFrameAnimation(0F, new Vector2(-225.957001F, -204.322006F), StepThenHoldEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, new Vector2(-225.957001F, -204.322006F), HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, new Vector2(-207.957001F, -204.322006F), CubicBezierEasingFunction_3()); - // Frame 96. - result.InsertKeyFrame(0.536312878F, new Vector2(-210.957001F, -204.322006F), _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0F), new Vector2(0.666999996F, 1F))); - return result; - } - - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_03() - { - // Frame 0. - if (_offsetVector2Animation_03 != null) { return _offsetVector2Animation_03; } - var result = _offsetVector2Animation_03 = CreateVector2KeyFrameAnimation(0F, new Vector2(-210.207993F, -219.320999F), StepThenHoldEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, new Vector2(-210.207993F, -219.320999F), HoldThenStepEasingFunction()); - // Frame 88. - result.InsertKeyFrame(0.491620123F, new Vector2(-211.175995F, -199.352997F), CubicBezierEasingFunction_4()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, new Vector2(-210.957993F, -204.320999F), CubicBezierEasingFunction_5()); - return result; - } - - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_04() - { - // Frame 0. - if (_offsetVector2Animation_04 != null) { return _offsetVector2Animation_04; } - var result = _offsetVector2Animation_04 = CreateVector2KeyFrameAnimation(0F, new Vector2(-222.957993F, -204.322006F), StepThenHoldEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, new Vector2(-222.957993F, -204.322006F), HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, new Vector2(-210.957993F, -204.322006F), CubicBezierEasingFunction_4()); - return result; - } - - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_05() - { - // Frame 0. - if (_offsetVector2Animation_05 != null) { return _offsetVector2Animation_05; } - var result = _offsetVector2Animation_05 = CreateVector2KeyFrameAnimation(0F, new Vector2(-230.957001F, -205.695999F), StepThenHoldEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, new Vector2(-230.957001F, -205.695999F), HoldThenStepEasingFunction()); - // Frame 88. - result.InsertKeyFrame(0.491620123F, new Vector2(-206.957001F, -205.695999F), CubicBezierEasingFunction_4()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, new Vector2(-210.957001F, -205.695999F), CubicBezierEasingFunction_5()); - return result; - } - - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_06() - { - // Frame 0. - if (_offsetVector2Animation_06 != null) { return _offsetVector2Animation_06; } - var result = _offsetVector2Animation_06 = CreateVector2KeyFrameAnimation(0F, new Vector2(-210.957001F, -201.322006F), StepThenHoldEasingFunction()); - // Frame 56. - result.InsertKeyFrame(0.312849164F, new Vector2(-210.957001F, -201.322006F), HoldThenStepEasingFunction()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, new Vector2(-210.957001F, -204.322006F), CubicBezierEasingFunction_3()); - return result; - } - - // - Layer aggregator - // Layer: O-Y - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_07() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(-259.583008F, -193.447006F), StepThenHoldEasingFunction()); - result.SetReferenceParameter("_", _root); - // Frame 31. - result.InsertKeyFrame(0.17318435F, new Vector2(-259.583008F, -193.447006F), HoldThenStepEasingFunction()); - // Frame 35.26. - result.InsertKeyFrame(0.196966484F, new Vector2(-250.582993F, -258.946991F), CubicBezierEasingFunction_2()); - // Frame 44. - result.InsertExpressionKeyFrame(0.245810047F, "Pow(1-_.t0,3)*Vector2(-250.583,-258.947)+(3*Square(1-_.t0)*_.t0*Vector2(-250.583,-258.947))+(3*(1-_.t0)*Square(_.t0)*Vector2(-249.6143,-337.5837))+(Pow(_.t0,3)*Vector2(-230.458,-339.322))", StepThenHoldEasingFunction()); - // Frame 54. - result.InsertExpressionKeyFrame(0.301675946F, "Pow(1-_.t0,3)*Vector2(-230.458,-339.322)+(3*Square(1-_.t0)*_.t0*Vector2(-214.2505,-340.7927))+(3*(1-_.t0)*Square(_.t0)*Vector2(-210.958,-164.322))+(Pow(_.t0,3)*Vector2(-210.958,-164.322))", StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, new Vector2(-210.957993F, -164.322006F), StepThenHoldEasingFunction()); - // Frame 63. - result.InsertKeyFrame(0.351955295F, new Vector2(-210.957993F, -207.322006F), _c.CreateCubicBezierEasingFunction(new Vector2(0.180000007F, 0F), new Vector2(0.34799999F, 1F))); - // Frame 73. - result.InsertKeyFrame(0.407821238F, new Vector2(-210.957993F, -204.322006F), _c.CreateCubicBezierEasingFunction(new Vector2(0.693000019F, 0F), new Vector2(0.270000011F, 1F))); - return result; - } - - // - - Layer aggregator - // - Layer: Dot-Y - // Transforms: Dot-Y - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_08() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(-156.916F, -206.503998F), StepThenHoldEasingFunction()); - // Frame 28. - result.InsertKeyFrame(0.156424582F, new Vector2(-156.916F, -206.503998F), HoldThenStepEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, new Vector2(-117.416F, -206.503998F), CubicBezierEasingFunction_2()); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_09() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(-93.6669998F, -51.8180008F), StepThenHoldEasingFunction()); - // Frame 28. - result.InsertKeyFrame(0.156424582F, new Vector2(-93.6669998F, -51.8180008F), HoldThenStepEasingFunction()); - // Frame 40. - result.InsertKeyFrame(0.223463684F, new Vector2(-93.6669998F, -132.817993F), _c.CreateCubicBezierEasingFunction(new Vector2(0.166999996F, 0.166999996F), new Vector2(0.25999999F, 1F))); - // Frame 54. - result.InsertKeyFrame(0.301675975F, new Vector2(-93.6669998F, 42.0569992F), _c.CreateCubicBezierEasingFunction(new Vector2(0.74000001F, 0F), new Vector2(0.833000004F, 0.833000004F))); - return result; - } - - // - Layer aggregator - // Layer: Dot1 - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_10() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(98.9800034F, -157.509995F), HoldThenStepEasingFunction()); - // Frame 18.69. - result.InsertKeyFrame(0.104395606F, new Vector2(-161.020004F, -157.509995F), _c.CreateCubicBezierEasingFunction(new Vector2(0.823000014F, 0F), new Vector2(0.833000004F, 0.833000004F))); - return result; - } - - // Radius - Vector2KeyFrameAnimation RadiusVector2Animation() - { - // Frame 0. - if (_radiusVector2Animation != null) { return _radiusVector2Animation; } - var result = _radiusVector2Animation = CreateVector2KeyFrameAnimation(0F, new Vector2(1.5F, 1.5F), StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, new Vector2(1.5F, 1.5F), HoldThenStepEasingFunction()); - // Frame 61. - result.InsertKeyFrame(0.340782136F, new Vector2(22.2999992F, 22.2999992F), _c.CreateCubicBezierEasingFunction(new Vector2(0.333000004F, 0F), new Vector2(0.666999996F, 1F))); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_00() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 96. - result.InsertKeyFrame(0.536312878F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E3-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_01() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - // Frame 102. - result.InsertKeyFrame(0.569832385F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E3-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_02() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: I-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_03() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - // Frame 93. - result.InsertKeyFrame(0.519553065F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - return result; - } - - Vector2KeyFrameAnimation ShapeVisibilityAnimation_04() - { - // Frame 0. - if (_shapeVisibilityAnimation_04 != null) { return _shapeVisibilityAnimation_04; } - var result = _shapeVisibilityAnimation_04 = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 81. - result.InsertKeyFrame(0.452513963F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E2-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_05() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - // Frame 96. - result.InsertKeyFrame(0.536312878F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E2-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_06() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 86. - result.InsertKeyFrame(0.480446935F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E1-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_07() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - // Frame 94. - result.InsertKeyFrame(0.525139689F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E1-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_08() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T1a-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_09() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 59. - result.InsertKeyFrame(0.329608947F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - // Frame 156. - result.InsertKeyFrame(0.87150836F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T2b-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_10() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T2a-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_11() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 72. - result.InsertKeyFrame(0.402234644F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - // Frame 89. - result.InsertKeyFrame(0.497206718F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T2b-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_12() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T1b-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_13() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - // Frame 161. - result.InsertKeyFrame(0.899441361F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: O-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_14() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T1a-Y 2 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_15() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 59. - result.InsertKeyFrame(0.329608947F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T2a-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_16() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T1a-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_17() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_18() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 28. - result.InsertKeyFrame(0.156424582F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: L-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_19() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 16. - result.InsertKeyFrame(0.0893854722F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: L-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_20() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 18. - result.InsertKeyFrame(0.100558661F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: Dot1 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_21() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - // Frame 17. - result.InsertKeyFrame(0.0949720666F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S1-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_22() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 30. - result.InsertKeyFrame(0.167597771F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - // Frame 37. - result.InsertKeyFrame(0.206703916F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S7 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_23() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 65. - result.InsertKeyFrame(0.363128483F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S3-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_24() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 2 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_25() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S11 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_26() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 80. - result.InsertKeyFrame(0.446927369F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - // Frame 90. - result.InsertKeyFrame(0.502793312F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S12 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_27() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - // Frame 94. - result.InsertKeyFrame(0.525139689F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S13 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_28() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - // Frame 95. - result.InsertKeyFrame(0.530726254F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 3 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_29() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 4 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_30() - { - // Frame 0. - var result = CreateVector2KeyFrameAnimation(0F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, new Vector2(1F, 1F), HoldThenStepEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, new Vector2(0F, 0F), HoldThenStepEasingFunction()); - return result; - } - - internal LottieLogo1_AnimatedVisual( - Compositor compositor - ) - { - _c = compositor; - _reusableExpressionAnimation = compositor.CreateExpressionAnimation(); - Root(); - } - - public Visual RootVisual => _root; - public TimeSpan Duration => TimeSpan.FromTicks(c_durationTicks); - public Vector2 Size => new Vector2(375F, 667F); - void IDisposable.Dispose() => _root?.Dispose(); - - public void CreateAnimations() - { - _containerShape_00.StartAnimation("Offset", OffsetVector2Animation_01(), AnimationController_0()); - _containerShape_00.StartAnimation("Scale", ShapeVisibilityAnimation_00(), AnimationController_0()); - _containerShape_01.StartAnimation("Offset", OffsetVector2Animation_00(), AnimationController_0()); - _containerShape_02.StartAnimation("Offset", OffsetVector2Animation_02(), AnimationController_0()); - _containerShape_02.StartAnimation("Scale", ShapeVisibilityAnimation_01(), AnimationController_0()); - _containerShape_03.StartAnimation("Offset", OffsetVector2Animation_02(), AnimationController_0()); - _containerShape_03.StartAnimation("Scale", ShapeVisibilityAnimation_02(), AnimationController_0()); - _containerShape_04.StartAnimation("Offset", OffsetVector2Animation_03(), AnimationController_0()); - _containerShape_04.StartAnimation("Scale", ShapeVisibilityAnimation_03(), AnimationController_0()); - _containerShape_05.StartAnimation("Offset", OffsetVector2Animation_03(), AnimationController_0()); - _containerShape_05.StartAnimation("Scale", ShapeVisibilityAnimation_04(), AnimationController_0()); - _containerShape_06.StartAnimation("Offset", OffsetVector2Animation_04(), AnimationController_0()); - _containerShape_06.StartAnimation("Scale", ShapeVisibilityAnimation_05(), AnimationController_0()); - _containerShape_07.StartAnimation("Offset", OffsetVector2Animation_04(), AnimationController_0()); - _containerShape_07.StartAnimation("Scale", ShapeVisibilityAnimation_06(), AnimationController_0()); - _containerShape_08.StartAnimation("Offset", OffsetVector2Animation_05(), AnimationController_0()); - _containerShape_08.StartAnimation("Scale", ShapeVisibilityAnimation_07(), AnimationController_0()); - _containerShape_09.StartAnimation("Offset", OffsetVector2Animation_05(), AnimationController_0()); - _containerShape_09.StartAnimation("Scale", ShapeVisibilityAnimation_08(), AnimationController_0()); - _containerShape_10.StartAnimation("Offset", OffsetVector2Animation_06(), AnimationController_0()); - _containerShape_10.StartAnimation("Scale", ShapeVisibilityAnimation_09(), AnimationController_0()); - _containerShape_11.StartAnimation("Offset", OffsetVector2Animation_07(), AnimationController_0()); - _containerShape_11.StartAnimation("Scale", ShapeVisibilityAnimation_14(), AnimationController_0()); - _containerShape_12.StartAnimation("Offset", OffsetVector2Animation_06(), AnimationController_0()); - _containerShape_12.StartAnimation("Scale", ShapeVisibilityAnimation_15(), AnimationController_0()); - _containerShape_13.StartAnimation("Offset", OffsetVector2Animation_06(), AnimationController_0()); - _containerShape_13.StartAnimation("Scale", ShapeVisibilityAnimation_17(), AnimationController_0()); - _containerShape_14.StartAnimation("Offset", OffsetVector2Animation_09(), AnimationController_0()); - _containerShape_14.StartAnimation("Scale", ShapeVisibilityAnimation_18(), AnimationController_0()); - _containerShape_15.StartAnimation("Offset", OffsetVector2Animation_08(), AnimationController_0()); - _containerShape_16.StartAnimation("Offset", OffsetVector2Animation_10(), AnimationController_1()); - _containerShape_16.StartAnimation("Scale", ShapeVisibilityAnimation_21(), AnimationController_0()); - _containerShape_17.StartAnimation("Scale", ShapeVisibilityAnimation_22(), AnimationController_0()); - _containerShape_18.StartAnimation("Scale", ShapeVisibilityAnimation_23(), AnimationController_0()); - _containerShape_19.StartAnimation("Scale", ShapeVisibilityAnimation_24(), AnimationController_0()); - _containerShape_20.StartAnimation("Scale", ShapeVisibilityAnimation_25(), AnimationController_0()); - _containerShape_21.StartAnimation("Scale", ShapeVisibilityAnimation_29(), AnimationController_0()); - _containerShape_22.StartAnimation("Scale", ShapeVisibilityAnimation_30(), AnimationController_0()); - _ellipse_0_0.StartAnimation("Radius", RadiusVector2Animation(), AnimationController_0()); - _ellipse_0_1.StartAnimation("Radius", RadiusVector2Animation(), AnimationController_0()); - _ellipse_0_1.StartAnimation("TrimStart", TrimStartScalarAnimation_0_to_0p399(), AnimationController_0()); - _ellipse_0_1.StartAnimation("TrimEnd", TrimEndScalarAnimation_1_to_0p88(), AnimationController_0()); - _pathGeometry_00.StartAnimation("TrimEnd", TrimEndScalarAnimation_0_to_0p316_0(), AnimationController_0()); - _pathGeometry_01.StartAnimation("TrimEnd", TrimEndScalarAnimation_0_to_0p316_1(), AnimationController_0()); - _pathGeometry_02.StartAnimation("TrimEnd", TrimEndScalarAnimation_0_to_0p457_0(), AnimationController_0()); - _pathGeometry_03.StartAnimation("TrimEnd", TrimEndScalarAnimation_0_to_0p457_1(), AnimationController_0()); - _pathGeometry_04.StartAnimation("TrimEnd", TrimEndScalarAnimation_0_to_0p43_0(), AnimationController_0()); - _pathGeometry_05.StartAnimation("TrimEnd", TrimEndScalarAnimation_0_to_0p43_1(), AnimationController_0()); - _pathGeometry_06.StartAnimation("TrimEnd", TrimEndScalarAnimation_0_to_0p375_0(), AnimationController_0()); - _pathGeometry_07.StartAnimation("TrimEnd", TrimEndScalarAnimation_0_to_0p375_1(), AnimationController_0()); - _pathGeometry_08.StartAnimation("TStart", TStartScalarAnimation_0_to_0p249(), AnimationController_0()); - _pathGeometry_08.StartAnimation("TEnd", TEndScalarAnimation_0_to_1_0(), AnimationController_0()); - _pathGeometry_09.StartAnimation("TrimStart", TrimStartScalarAnimation_0p29_to_0_0(), AnimationController_0()); - _pathGeometry_09.StartAnimation("TrimEnd", TrimEndScalarAnimation_0p411_to_0p665_0(), AnimationController_0()); - _pathGeometry_10.StartAnimation("TrimStart", TrimStartScalarAnimation_0p5_to_0_0(), AnimationController_0()); - _pathGeometry_10.StartAnimation("TrimEnd", TrimEndScalarAnimation_0p5_to_1_0(), AnimationController_0()); - _pathGeometry_11.StartAnimation("TrimStart", TrimStartScalarAnimation_0p29_to_0_1(), AnimationController_0()); - _pathGeometry_11.StartAnimation("TrimEnd", TrimEndScalarAnimation_0p411_to_0p665_1(), AnimationController_0()); - _pathGeometry_12.StartAnimation("TrimEnd", TrimEndScalarAnimation_0p117_to_1_0(), AnimationController_0()); - _pathGeometry_13.StartAnimation("TrimEnd", TrimEndScalarAnimation_0p117_to_1_1(), AnimationController_0()); - _pathGeometry_14.StartAnimation("TStart", TStartScalarAnimation_0_to_0p249(), AnimationController_0()); - _pathGeometry_14.StartAnimation("TEnd", TEndScalarAnimation_0_to_1_1(), AnimationController_0()); - _pathGeometry_15.StartAnimation("TrimStart", TrimStartScalarAnimation_0p5_to_0_1(), AnimationController_0()); - _pathGeometry_15.StartAnimation("TrimEnd", TrimEndScalarAnimation_0p5_to_1_1(), AnimationController_0()); - _pathGeometry_16.StartAnimation("TrimEnd", TrimEndScalarAnimation_0p249_to_0p891(), AnimationController_0()); - _pathGeometry_17.StartAnimation("TStart", TStartScalarAnimation_0p8_to_0(), AnimationController_0()); - _pathGeometry_17.StartAnimation("TEnd", TEndScalarAnimation_0p81_to_0p734_0(), AnimationController_0()); - _pathGeometry_18.StartAnimation("TStart", TStartScalarAnimation_0p8_to_0p3(), AnimationController_0()); - _pathGeometry_18.StartAnimation("TEnd", TEndScalarAnimation_0p81_to_0p734_1(), AnimationController_0()); - _pathGeometry_19.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_00(), AnimationController_0()); - _pathGeometry_19.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_00(), AnimationController_0()); - _pathGeometry_20.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_01(), AnimationController_0()); - _pathGeometry_20.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_01(), AnimationController_0()); - _pathGeometry_21.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_02(), AnimationController_0()); - _pathGeometry_21.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_02(), AnimationController_0()); - _pathGeometry_22.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_02(), AnimationController_0()); - _pathGeometry_22.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_02(), AnimationController_0()); - _pathGeometry_23.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_03(), AnimationController_0()); - _pathGeometry_23.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_03(), AnimationController_0()); - _pathGeometry_24.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_04(), AnimationController_0()); - _pathGeometry_24.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_03(), AnimationController_0()); - _pathGeometry_25.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_05(), AnimationController_0()); - _pathGeometry_25.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_04(), AnimationController_0()); - _pathGeometry_26.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_06(), AnimationController_0()); - _pathGeometry_26.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_05(), AnimationController_0()); - _pathGeometry_27.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_07(), AnimationController_0()); - _pathGeometry_27.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_06(), AnimationController_0()); - _pathGeometry_28.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_08(), AnimationController_0()); - _pathGeometry_28.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_06(), AnimationController_0()); - _pathGeometry_29.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_09(), AnimationController_0()); - _pathGeometry_29.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_07(), AnimationController_0()); - _pathGeometry_30.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_10(), AnimationController_0()); - _pathGeometry_30.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_08(), AnimationController_0()); - _pathGeometry_31.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_11(), AnimationController_0()); - _pathGeometry_31.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_09(), AnimationController_0()); - _pathGeometry_32.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_12(), AnimationController_0()); - _pathGeometry_32.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_10(), AnimationController_0()); - _pathGeometry_33.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_13(), AnimationController_0()); - _pathGeometry_33.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_11(), AnimationController_0()); - _pathGeometry_34.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_14(), AnimationController_0()); - _pathGeometry_34.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_11(), AnimationController_0()); - _pathGeometry_35.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_15(), AnimationController_0()); - _pathGeometry_35.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_12(), AnimationController_0()); - _pathGeometry_36.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_16(), AnimationController_0()); - _pathGeometry_36.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_13(), AnimationController_0()); - _pathGeometry_37.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_17(), AnimationController_0()); - _pathGeometry_37.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_13(), AnimationController_0()); - _pathGeometry_38.StartAnimation("TStart", TStartScalarAnimation_0p87_to_0_18(), AnimationController_0()); - _pathGeometry_38.StartAnimation("TEnd", TEndScalarAnimation_1_to_0_14(), AnimationController_0()); - _spriteShape_11.StartAnimation("Scale", ShapeVisibilityAnimation_10(), AnimationController_0()); - _spriteShape_12.StartAnimation("Scale", ShapeVisibilityAnimation_11(), AnimationController_0()); - _spriteShape_13.StartAnimation("Scale", ShapeVisibilityAnimation_12(), AnimationController_0()); - _spriteShape_14.StartAnimation("Scale", ShapeVisibilityAnimation_13(), AnimationController_0()); - _spriteShape_15.StartAnimation("Scale", ShapeVisibilityAnimation_04(), AnimationController_0()); - _spriteShape_19.StartAnimation("Scale", ShapeVisibilityAnimation_16(), AnimationController_0()); - _spriteShape_22.StartAnimation("Scale", ShapeVisibilityAnimation_19(), AnimationController_0()); - _spriteShape_23.StartAnimation("Scale", ShapeVisibilityAnimation_20(), AnimationController_0()); - _spriteShape_36.StartAnimation("Scale", ShapeVisibilityAnimation_26(), AnimationController_0()); - _spriteShape_37.StartAnimation("Scale", ShapeVisibilityAnimation_27(), AnimationController_0()); - _spriteShape_38.StartAnimation("Scale", ShapeVisibilityAnimation_28(), AnimationController_0()); - _root.Properties.StartAnimation("t0", t0ScalarAnimation_0_to_1(), AnimationController_0()); - } - - public void DestroyAnimations() - { - _containerShape_00.StopAnimation("Offset"); - _containerShape_00.StopAnimation("Scale"); - _containerShape_01.StopAnimation("Offset"); - _containerShape_02.StopAnimation("Offset"); - _containerShape_02.StopAnimation("Scale"); - _containerShape_03.StopAnimation("Offset"); - _containerShape_03.StopAnimation("Scale"); - _containerShape_04.StopAnimation("Offset"); - _containerShape_04.StopAnimation("Scale"); - _containerShape_05.StopAnimation("Offset"); - _containerShape_05.StopAnimation("Scale"); - _containerShape_06.StopAnimation("Offset"); - _containerShape_06.StopAnimation("Scale"); - _containerShape_07.StopAnimation("Offset"); - _containerShape_07.StopAnimation("Scale"); - _containerShape_08.StopAnimation("Offset"); - _containerShape_08.StopAnimation("Scale"); - _containerShape_09.StopAnimation("Offset"); - _containerShape_09.StopAnimation("Scale"); - _containerShape_10.StopAnimation("Offset"); - _containerShape_10.StopAnimation("Scale"); - _containerShape_11.StopAnimation("Offset"); - _containerShape_11.StopAnimation("Scale"); - _containerShape_12.StopAnimation("Offset"); - _containerShape_12.StopAnimation("Scale"); - _containerShape_13.StopAnimation("Offset"); - _containerShape_13.StopAnimation("Scale"); - _containerShape_14.StopAnimation("Offset"); - _containerShape_14.StopAnimation("Scale"); - _containerShape_15.StopAnimation("Offset"); - _containerShape_16.StopAnimation("Offset"); - _containerShape_16.StopAnimation("Scale"); - _containerShape_17.StopAnimation("Scale"); - _containerShape_18.StopAnimation("Scale"); - _containerShape_19.StopAnimation("Scale"); - _containerShape_20.StopAnimation("Scale"); - _containerShape_21.StopAnimation("Scale"); - _containerShape_22.StopAnimation("Scale"); - _ellipse_0_0.StopAnimation("Radius"); - _ellipse_0_1.StopAnimation("Radius"); - _ellipse_0_1.StopAnimation("TrimStart"); - _ellipse_0_1.StopAnimation("TrimEnd"); - _pathGeometry_00.StopAnimation("TrimEnd"); - _pathGeometry_01.StopAnimation("TrimEnd"); - _pathGeometry_02.StopAnimation("TrimEnd"); - _pathGeometry_03.StopAnimation("TrimEnd"); - _pathGeometry_04.StopAnimation("TrimEnd"); - _pathGeometry_05.StopAnimation("TrimEnd"); - _pathGeometry_06.StopAnimation("TrimEnd"); - _pathGeometry_07.StopAnimation("TrimEnd"); - _pathGeometry_08.StopAnimation("TStart"); - _pathGeometry_08.StopAnimation("TEnd"); - _pathGeometry_09.StopAnimation("TrimStart"); - _pathGeometry_09.StopAnimation("TrimEnd"); - _pathGeometry_10.StopAnimation("TrimStart"); - _pathGeometry_10.StopAnimation("TrimEnd"); - _pathGeometry_11.StopAnimation("TrimStart"); - _pathGeometry_11.StopAnimation("TrimEnd"); - _pathGeometry_12.StopAnimation("TrimEnd"); - _pathGeometry_13.StopAnimation("TrimEnd"); - _pathGeometry_14.StopAnimation("TStart"); - _pathGeometry_14.StopAnimation("TEnd"); - _pathGeometry_15.StopAnimation("TrimStart"); - _pathGeometry_15.StopAnimation("TrimEnd"); - _pathGeometry_16.StopAnimation("TrimEnd"); - _pathGeometry_17.StopAnimation("TStart"); - _pathGeometry_17.StopAnimation("TEnd"); - _pathGeometry_18.StopAnimation("TStart"); - _pathGeometry_18.StopAnimation("TEnd"); - _pathGeometry_19.StopAnimation("TStart"); - _pathGeometry_19.StopAnimation("TEnd"); - _pathGeometry_20.StopAnimation("TStart"); - _pathGeometry_20.StopAnimation("TEnd"); - _pathGeometry_21.StopAnimation("TStart"); - _pathGeometry_21.StopAnimation("TEnd"); - _pathGeometry_22.StopAnimation("TStart"); - _pathGeometry_22.StopAnimation("TEnd"); - _pathGeometry_23.StopAnimation("TStart"); - _pathGeometry_23.StopAnimation("TEnd"); - _pathGeometry_24.StopAnimation("TStart"); - _pathGeometry_24.StopAnimation("TEnd"); - _pathGeometry_25.StopAnimation("TStart"); - _pathGeometry_25.StopAnimation("TEnd"); - _pathGeometry_26.StopAnimation("TStart"); - _pathGeometry_26.StopAnimation("TEnd"); - _pathGeometry_27.StopAnimation("TStart"); - _pathGeometry_27.StopAnimation("TEnd"); - _pathGeometry_28.StopAnimation("TStart"); - _pathGeometry_28.StopAnimation("TEnd"); - _pathGeometry_29.StopAnimation("TStart"); - _pathGeometry_29.StopAnimation("TEnd"); - _pathGeometry_30.StopAnimation("TStart"); - _pathGeometry_30.StopAnimation("TEnd"); - _pathGeometry_31.StopAnimation("TStart"); - _pathGeometry_31.StopAnimation("TEnd"); - _pathGeometry_32.StopAnimation("TStart"); - _pathGeometry_32.StopAnimation("TEnd"); - _pathGeometry_33.StopAnimation("TStart"); - _pathGeometry_33.StopAnimation("TEnd"); - _pathGeometry_34.StopAnimation("TStart"); - _pathGeometry_34.StopAnimation("TEnd"); - _pathGeometry_35.StopAnimation("TStart"); - _pathGeometry_35.StopAnimation("TEnd"); - _pathGeometry_36.StopAnimation("TStart"); - _pathGeometry_36.StopAnimation("TEnd"); - _pathGeometry_37.StopAnimation("TStart"); - _pathGeometry_37.StopAnimation("TEnd"); - _pathGeometry_38.StopAnimation("TStart"); - _pathGeometry_38.StopAnimation("TEnd"); - _spriteShape_11.StopAnimation("Scale"); - _spriteShape_12.StopAnimation("Scale"); - _spriteShape_13.StopAnimation("Scale"); - _spriteShape_14.StopAnimation("Scale"); - _spriteShape_15.StopAnimation("Scale"); - _spriteShape_19.StopAnimation("Scale"); - _spriteShape_22.StopAnimation("Scale"); - _spriteShape_23.StopAnimation("Scale"); - _spriteShape_36.StopAnimation("Scale"); - _spriteShape_37.StopAnimation("Scale"); - _spriteShape_38.StopAnimation("Scale"); - _root.Properties.StopAnimation("t0"); - } - - } - } -} diff --git a/LottieWinRT/AnimatedVisual.cs b/LottieWinRT/AnimatedVisual.cs index 547a421cb..6ec12b583 100644 --- a/LottieWinRT/AnimatedVisual.cs +++ b/LottieWinRT/AnimatedVisual.cs @@ -1,10 +1,11 @@ using System.Numerics; using Microsoft.UI.Composition; +using LottieIsland = CommunityToolkit.WinAppSDK.LottieIsland; using MUXC = Microsoft.UI.Xaml.Controls; namespace LottieWinRT { - public sealed class AnimatedVisual : IAnimatedVisual + public sealed class AnimatedVisual : LottieIsland.IAnimatedVisual { private MUXC.IAnimatedVisual? _animatedVisual; diff --git a/LottieWinRT/Class1.cs b/LottieWinRT/Class1.cs new file mode 100644 index 000000000..7031ffb77 --- /dev/null +++ b/LottieWinRT/Class1.cs @@ -0,0 +1,18 @@ +using Microsoft.UI.Composition; +using System.Numerics; + +namespace LottieWinRT +{ + public sealed class Class1// : CommunityToolkit.WinAppSDK.LottieIsland.IAnimatedVisual + { + public Class1() + { + } + + public TimeSpan Duration { get => TimeSpan.Zero; } + + public Visual? RootVisual { get => null; } + + public Vector2 Size { get => Vector2.Zero; } + } +} diff --git a/LottieWinRT/Directory.Build.props b/LottieWinRT/Directory.Build.props new file mode 100644 index 000000000..4a4e71a6a --- /dev/null +++ b/LottieWinRT/Directory.Build.props @@ -0,0 +1,10 @@ + + + + + \ No newline at end of file diff --git a/LottieWinRT/IAnimatedVisual.cs b/LottieWinRT/IAnimatedVisual.cs deleted file mode 100644 index 271d56686..000000000 --- a/LottieWinRT/IAnimatedVisual.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System.Numerics; -using Microsoft.UI.Composition; - -namespace LottieWinRT -{ - public interface IAnimatedVisual - { - public TimeSpan Duration { get; } - - public Visual? RootVisual { get; } - - public Vector2 Size { get; } - } -} diff --git a/LottieWinRT/IAnimatedVisualSource.cs b/LottieWinRT/IAnimatedVisualSource.cs deleted file mode 100644 index a5dc5feff..000000000 --- a/LottieWinRT/IAnimatedVisualSource.cs +++ /dev/null @@ -1,9 +0,0 @@ -using Microsoft.UI.Composition; - -namespace LottieWinRT -{ - public interface IAnimatedVisualSource - { - IAnimatedVisual? TryCreateAnimatedVisual(Compositor compositor, out object? diagnostics); - } -} diff --git a/LottieWinRT/LottieVisualSourceWinRT.cs b/LottieWinRT/LottieVisualSourceWinRT.cs index 01531cded..5cb183294 100644 --- a/LottieWinRT/LottieVisualSourceWinRT.cs +++ b/LottieWinRT/LottieVisualSourceWinRT.cs @@ -1,11 +1,12 @@ using System.Diagnostics; using CommunityToolkit.WinUI.Lottie; using Microsoft.UI.Composition; +using LottieIsland = CommunityToolkit.WinAppSDK.LottieIsland; using MUXC = Microsoft.UI.Xaml.Controls; namespace LottieWinRT { - public sealed class LottieVisualSourceWinRT : LottieWinRT.IAnimatedVisualSource + public sealed class LottieVisualSourceWinRT : LottieIsland.IAnimatedVisualSource { public event EventHandler? AnimatedVisualInvalidated; @@ -53,13 +54,13 @@ public Uri? UriSource } } - /// - /// Implements . - /// - /// The that can be used as a factory for the resulting . - /// An optional object that may provide extra information about the result. - /// An . - public IAnimatedVisual? TryCreateAnimatedVisual( + ///// + ///// Implements . + ///// + ///// The that can be used as a factory for the resulting . + ///// An optional object that may provide extra information about the result. + ///// An . + public LottieIsland.IAnimatedVisual? TryCreateAnimatedVisual( Compositor compositor, out object? diagnostics) { @@ -70,6 +71,7 @@ public Uri? UriSource return null; } + //return visual; return new AnimatedVisual(visual); } } diff --git a/LottieWinRT/LottieWinRT.csproj b/LottieWinRT/LottieWinRT.csproj index e014b8953..89aa32709 100644 --- a/LottieWinRT/LottieWinRT.csproj +++ b/LottieWinRT/LottieWinRT.csproj @@ -2,24 +2,52 @@ net7.0-windows10.0.19041.0 - x64;x86;ARM64 - true + true enable + x86;x64;ARM64 true + LottieWinRT + 0.1.1-prerelease win10-x86;win10-x64;win10-arm64 10.0.19041.0 + + true + + + + None + - + - + - + + + + + + + + Win32 + $(Platform) + + + + + diff --git a/SimpleLottieIslandApp/Directory.Build.props b/SimpleLottieIslandApp/Directory.Build.props new file mode 100644 index 000000000..22b90cca1 --- /dev/null +++ b/SimpleLottieIslandApp/Directory.Build.props @@ -0,0 +1,7 @@ + + + $([MSBuild]::NormalizeDirectory('$(SolutionDir)', '_build', '$(Platform)', '$(Configuration)')) + $([MSBuild]::NormalizeDirectory('$(BuildOutDir)', '$(MSBuildProjectName)', 'bin')) + $([MSBuild]::NormalizeDirectory('$(BuildOutDir)', '$(MSBuildProjectName)', 'obj')) + + \ No newline at end of file diff --git a/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp b/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp index e07716c3f..41c419487 100644 --- a/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp +++ b/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp @@ -7,8 +7,7 @@ #include "SimpleLottieIslandApp.h" #include // For ContentPreTranslateMessage -#include -#include +#include #include namespace winrt @@ -18,6 +17,7 @@ namespace winrt using namespace winrt::Microsoft::UI::Content; using namespace winrt::Microsoft::UI::Dispatching; using namespace winrt::LottieWinRT; + using namespace winrt::CommunityToolkit::WinAppSDK::LottieIsland; using float2 = winrt::Windows::Foundation::Numerics::float2; } @@ -36,7 +36,7 @@ struct WindowInfo winrt::DesktopChildSiteBridge Bridge{ nullptr }; winrt::event_token TakeFocusRequestedToken{}; HWND LastFocusedWindow{ NULL }; - winrt::LottieIsland::LottieContentIsland LottieIsland{ nullptr }; + winrt::LottieContentIsland LottieIsland{ nullptr }; bool isPaused = false; }; @@ -66,8 +66,8 @@ int APIENTRY wWinMain(_In_ HINSTANCE hInstance, UNREFERENCED_PARAMETER(hPrevInstance); UNREFERENCED_PARAMETER(lpCmdLine); - try - { + /*try + {*/ // Island-support: Call init_apartment to initialize COM and WinRT for the thread. winrt::init_apartment(winrt::apartment_type::single_threaded); @@ -113,12 +113,12 @@ int APIENTRY wWinMain(_In_ HINSTANCE hInstance, // Island-support: To properly shut down after using a DispatcherQueue, call ShutdownQueue[Aysnc](). dispatcherQueueController.ShutdownQueue(); - } - catch (const winrt::hresult_error& exception) - { - // An exception was thrown, let's make the exit code the HR value of the exception. - return exception.code().value; - } + //} + //catch (const winrt::hresult_error& exception) + //{ + // // An exception was thrown, let's make the exit code the HR value of the exception. + // return exception.code().value; + //} return 0; } @@ -197,7 +197,7 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) winrt::GetWindowIdFromWindow(hWnd)); // Create the LottieIsland, which is a WinRT wrapper for hosting a Lottie animation in a ContentIsland - windowInfo->LottieIsland = winrt::LottieIsland::LottieContentIsland::Create(windowInfo->Compositor); + windowInfo->LottieIsland = winrt::LottieContentIsland::Create(windowInfo->Compositor);; // Connect the ContentIsland to the DesktopChildSiteBridge windowInfo->Bridge.Connect(windowInfo->LottieIsland.Island()); @@ -206,17 +206,23 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) //// Set the C++/WinRT precompiled Lottie animation! //windowInfo->LottieIsland.AnimatedVisualSource(winrt::AnimatedVisuals::LottieLogo1()); - // Live JSON loaded animation! + //// Live JSON loaded animation! + //winrt::LottieVisualSourceWinRT v = winrt::LottieVisualSourceWinRT(); + //if (v == nullptr) + //{ + // OutputDebugString(L"Meep"); + //} + winrt::LottieVisualSourceWinRT lottieVisualSource = winrt::LottieVisualSourceWinRT::CreateFromString(L"ms-appx:///LottieLogo1.json"); - lottieVisualSource.AnimatedVisualInvalidated([windowInfo, lottieVisualSource](const winrt::IInspectable sender, auto&&) + lottieVisualSource.AnimatedVisualInvalidated([windowInfo, lottieVisualSource](const winrt::IInspectable&, auto&&) { - windowInfo->LottieIsland.AnimatedVisualSource(lottieVisualSource); + windowInfo->LottieIsland.AnimatedVisualSource(lottieVisualSource.as()); }); windowInfo->LottieIsland.PointerPressed([=](auto&...) { // Clicking on the Lottie animation acts like clicking "Pause/Resume" OnButtonClicked(ButtonType::PauseButton, windowInfo, hWnd); - }); + }); // Add some Win32 controls to allow the app to play with the animation CreateWin32Button(ButtonType::PlayButton, L"Play", hWnd); diff --git a/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj b/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj index be81bdd04..5d42f1a85 100644 --- a/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj +++ b/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj @@ -130,24 +130,14 @@ - - AnimatedVisuals.LottieLogo1.idl - - - AnimatedVisuals.LottieLogo1.idl - Create - - - - @@ -167,13 +157,13 @@ Designer + + + {9ba7a2f2-b723-458b-a575-3f726d271465} - - {dda0d223-4b59-455d-a8b1-cfae59523ffb} - @@ -181,6 +171,7 @@ + @@ -193,5 +184,6 @@ + \ No newline at end of file diff --git a/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj.filters b/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj.filters index f16678819..b3f8cbe19 100644 --- a/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj.filters +++ b/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj.filters @@ -24,9 +24,6 @@ Header Files - - Source Files - Header Files @@ -35,9 +32,6 @@ Source Files - - Source Files - Source Files @@ -57,9 +51,6 @@ - - Resource Files - @@ -68,9 +59,9 @@ - - Source Files - + + + Source Files diff --git a/SimpleLottieIslandApp/package.appxmanifest b/SimpleLottieIslandApp/package.appxmanifest index 186c12a8e..78b872b26 100644 --- a/SimpleLottieIslandApp/package.appxmanifest +++ b/SimpleLottieIslandApp/package.appxmanifest @@ -40,12 +40,18 @@ - + + diff --git a/SimpleLottieIslandApp/packages.config b/SimpleLottieIslandApp/packages.config index 26a6e74b1..20ca08f68 100644 --- a/SimpleLottieIslandApp/packages.config +++ b/SimpleLottieIslandApp/packages.config @@ -1,5 +1,6 @@  + From 9cf356ae3d21391c2a40c73027679db899dd9135 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Thu, 18 Apr 2024 16:43:47 -0400 Subject: [PATCH 07/40] Reduced CsWinRT issue down to simpler form, added logic to build scripts to build new projects --- Lottie-Windows.sln | 20 +++++++++---------- LottieIsland/LottieIsland.vcxproj | 6 +++--- LottieWinRT/AnimatedVisual.cs | 8 ++++++-- LottieWinRT/Class1.cs | 8 ++++++-- LottieWinRT/LottieVisualSourceWinRT.cs | 15 +++++++++----- .../SimpleLottieIslandApp.vcxproj | 5 +++-- build/build.cake | 15 ++++++++++++++ 7 files changed, 53 insertions(+), 24 deletions(-) diff --git a/Lottie-Windows.sln b/Lottie-Windows.sln index e42f8c8cc..2b9f23ed0 100644 --- a/Lottie-Windows.sln +++ b/Lottie-Windows.sln @@ -632,14 +632,14 @@ Global {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x64.Build.0 = Debug|Any CPU {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x86.ActiveCfg = Debug|Any CPU {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x86.Build.0 = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.Build.0 = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.ActiveCfg = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.Build.0 = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM64.ActiveCfg = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM64.Build.0 = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x64.ActiveCfg = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x64.Build.0 = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.ActiveCfg = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.Build.0 = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.ActiveCfg = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.Build.0 = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM64.Build.0 = Debug|ARM64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x64.ActiveCfg = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x64.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x86.ActiveCfg = Debug|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x86.Build.0 = Debug|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.ActiveCfg = Release|Any CPU @@ -664,8 +664,8 @@ Global {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|x86.Build.0 = Debug|Win32 {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|Any CPU.ActiveCfg = Debug|x64 {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|Any CPU.Build.0 = Debug|x64 - {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|ARM.ActiveCfg = Debug|ARM - {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|ARM.Build.0 = Debug|ARM + {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|ARM.ActiveCfg = Debug|x64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|ARM.Build.0 = Debug|x64 {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|ARM64.ActiveCfg = Debug|ARM64 {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|ARM64.Build.0 = Debug|ARM64 {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|x64.ActiveCfg = Debug|x64 diff --git a/LottieIsland/LottieIsland.vcxproj b/LottieIsland/LottieIsland.vcxproj index debe8940a..71edaa30b 100644 --- a/LottieIsland/LottieIsland.vcxproj +++ b/LottieIsland/LottieIsland.vcxproj @@ -24,7 +24,7 @@ Debug - ARM + x64 Debug @@ -40,11 +40,11 @@ Release - ARM + x64 Release - ARM64 + x64 Release diff --git a/LottieWinRT/AnimatedVisual.cs b/LottieWinRT/AnimatedVisual.cs index 6ec12b583..14d9707e4 100644 --- a/LottieWinRT/AnimatedVisual.cs +++ b/LottieWinRT/AnimatedVisual.cs @@ -1,11 +1,15 @@ -using System.Numerics; +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using System.Numerics; using Microsoft.UI.Composition; using LottieIsland = CommunityToolkit.WinAppSDK.LottieIsland; using MUXC = Microsoft.UI.Xaml.Controls; namespace LottieWinRT { - public sealed class AnimatedVisual : LottieIsland.IAnimatedVisual + public sealed class AnimatedVisual// : LottieIsland.IAnimatedVisual { private MUXC.IAnimatedVisual? _animatedVisual; diff --git a/LottieWinRT/Class1.cs b/LottieWinRT/Class1.cs index 7031ffb77..a5885cd68 100644 --- a/LottieWinRT/Class1.cs +++ b/LottieWinRT/Class1.cs @@ -1,9 +1,13 @@ -using Microsoft.UI.Composition; +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using Microsoft.UI.Composition; using System.Numerics; namespace LottieWinRT { - public sealed class Class1// : CommunityToolkit.WinAppSDK.LottieIsland.IAnimatedVisual + public sealed class Class1 : CommunityToolkit.WinAppSDK.LottieIsland.IAnimatedVisual { public Class1() { diff --git a/LottieWinRT/LottieVisualSourceWinRT.cs b/LottieWinRT/LottieVisualSourceWinRT.cs index 5cb183294..f407e643e 100644 --- a/LottieWinRT/LottieVisualSourceWinRT.cs +++ b/LottieWinRT/LottieVisualSourceWinRT.cs @@ -1,4 +1,8 @@ -using System.Diagnostics; +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using System.Diagnostics; using CommunityToolkit.WinUI.Lottie; using Microsoft.UI.Composition; using LottieIsland = CommunityToolkit.WinAppSDK.LottieIsland; @@ -6,7 +10,7 @@ namespace LottieWinRT { - public sealed class LottieVisualSourceWinRT : LottieIsland.IAnimatedVisualSource + public sealed class LottieVisualSourceWinRT : MUXC.IAnimatedVisualSource { public event EventHandler? AnimatedVisualInvalidated; @@ -19,6 +23,7 @@ public LottieVisualSourceWinRT() private LottieVisualSourceWinRT(LottieVisualSourceFrameworkless lottieVisualSource) { + Debug.WriteLine("Hello from C#!!!"); _lottieVisualSource = lottieVisualSource; _lottieVisualSource.AnimatedVisualInvalidated += (MUXC.IAnimatedVisualSource? sender, object? o) => { @@ -60,7 +65,7 @@ public Uri? UriSource ///// The that can be used as a factory for the resulting . ///// An optional object that may provide extra information about the result. ///// An . - public LottieIsland.IAnimatedVisual? TryCreateAnimatedVisual( + public MUXC.IAnimatedVisual? TryCreateAnimatedVisual( Compositor compositor, out object? diagnostics) { @@ -71,8 +76,8 @@ public Uri? UriSource return null; } - //return visual; - return new AnimatedVisual(visual); + return visual; + //return new AnimatedVisual(visual); } } } diff --git a/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj b/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj index 5d42f1a85..e7419fda2 100644 --- a/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj +++ b/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj @@ -164,6 +164,9 @@ {9ba7a2f2-b723-458b-a575-3f726d271465} + + {dda0d223-4b59-455d-a8b1-cfae59523ffb} + @@ -171,7 +174,6 @@ - @@ -184,6 +186,5 @@ - \ No newline at end of file diff --git a/build/build.cake b/build/build.cake index 8e4cbdc2d..175e3392a 100644 --- a/build/build.cake +++ b/build/build.cake @@ -75,6 +75,21 @@ void MSBuildSolution( msBuildSettings.PlatformTarget = platformTarget; MSBuild($"{baseDir}/Lottie-Windows.sln", msBuildSettings); } + + // Build all platforms for native projects. + foreach (var platformTarget in new [] + { + PlatformTarget.x86, + PlatformTarget.x64, + PlatformTarget.ARM64 + }) + { + var msBuildSettings = SetProperties(SettingsWithTarget(platformTarget).SetConfiguration(configuration)); + msBuildSettings.PlatformTarget = platformTarget; + MSBuild($"{baseDir}/LottieIsland/LottieIsland.vcxproj", msBuildSettings); + MSBuild($"{baseDir}/LottieWinRT/LottieWinRT.csproj", msBuildSettings); + MSBuild($"{baseDir}/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj", msBuildSettings); + } } // Returns true if the given file has a name that indicates it is From 567d126332edf4a9dd2f38b1332cb4e374a5a9fc Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Thu, 18 Apr 2024 19:45:14 -0400 Subject: [PATCH 08/40] Changed LottieIsland.IAnimatedVisualSource to LottieIsland.IAnimatedVisualSourceFrameworkless in order to avoid confusion with existing Microsoft.UI.Xaml.Controls interface --- LottieIsland/CommunityToolkit.WinAppSDK.LottieIsland.idl | 8 ++++---- LottieIsland/LottieContentIsland.cpp | 4 ++-- LottieIsland/LottieContentIsland.h | 8 ++++---- LottieWinRT/Class1.cs | 2 +- SimpleLottieIslandApp/SimpleLottieIslandApp.cpp | 2 +- 5 files changed, 12 insertions(+), 12 deletions(-) diff --git a/LottieIsland/CommunityToolkit.WinAppSDK.LottieIsland.idl b/LottieIsland/CommunityToolkit.WinAppSDK.LottieIsland.idl index 2e452873a..41db83229 100644 --- a/LottieIsland/CommunityToolkit.WinAppSDK.LottieIsland.idl +++ b/LottieIsland/CommunityToolkit.WinAppSDK.LottieIsland.idl @@ -1,15 +1,15 @@ namespace CommunityToolkit.WinAppSDK.LottieIsland { - interface IAnimatedVisual + interface IAnimatedVisualFrameworkless { Windows.Foundation.TimeSpan Duration{ get; }; Microsoft.UI.Composition.Visual RootVisual{ get; }; Windows.Foundation.Numerics.Vector2 Size{ get; }; }; - interface IAnimatedVisualSource + interface IAnimatedVisualSourceFrameworkless { - IAnimatedVisual TryCreateAnimatedVisual(Microsoft.UI.Composition.Compositor compositor, out IInspectable diagnostics); + IAnimatedVisualFrameworkless TryCreateAnimatedVisual(Microsoft.UI.Composition.Compositor compositor, out IInspectable diagnostics); }; runtimeclass LottieContentIsland @@ -18,7 +18,7 @@ Microsoft.UI.Content.ContentIsland Island{ get; }; - IAnimatedVisualSource AnimatedVisualSource; + IAnimatedVisualSourceFrameworkless AnimatedVisualSource; Windows.Foundation.TimeSpan Duration{ get; }; diff --git a/LottieIsland/LottieContentIsland.cpp b/LottieIsland/LottieContentIsland.cpp index 91f15fc0d..763f105d8 100644 --- a/LottieIsland/LottieContentIsland.cpp +++ b/LottieIsland/LottieContentIsland.cpp @@ -33,13 +33,13 @@ namespace winrt::CommunityToolkit::WinAppSDK::LottieIsland::implementation m_island.Close(); } - winrt::IAnimatedVisualSource LottieContentIsland::AnimatedVisualSource() const + winrt::IAnimatedVisualSourceFrameworkless LottieContentIsland::AnimatedVisualSource() const { // Return the AnimatedVisualSource return m_animatedVisualSource; } - void LottieContentIsland::AnimatedVisualSource(winrt::IAnimatedVisualSource const& value) + void LottieContentIsland::AnimatedVisualSource(winrt::IAnimatedVisualSourceFrameworkless const& value) { if (m_animatedVisualSource == value) { diff --git a/LottieIsland/LottieContentIsland.h b/LottieIsland/LottieContentIsland.h index c4fa13eb8..aeebfc766 100644 --- a/LottieIsland/LottieContentIsland.h +++ b/LottieIsland/LottieContentIsland.h @@ -24,8 +24,8 @@ namespace winrt::CommunityToolkit::WinAppSDK::LottieIsland::implementation return m_island; } - winrt::IAnimatedVisualSource AnimatedVisualSource() const; - void AnimatedVisualSource(const winrt::IAnimatedVisualSource& source); + winrt::IAnimatedVisualSourceFrameworkless AnimatedVisualSource() const; + void AnimatedVisualSource(const winrt::IAnimatedVisualSourceFrameworkless& source); winrt::Windows::Foundation::TimeSpan Duration() const; @@ -79,8 +79,8 @@ namespace winrt::CommunityToolkit::WinAppSDK::LottieIsland::implementation winrt::ContainerVisual m_rootVisual{ nullptr }; winrt::ContentIsland m_island{ nullptr }; winrt::InputPointerSource m_inputPointerSource{ nullptr }; - winrt::IAnimatedVisualSource m_animatedVisualSource{ nullptr }; - winrt::IAnimatedVisual m_animatedVisual{ nullptr }; + winrt::IAnimatedVisualSourceFrameworkless m_animatedVisualSource{ nullptr }; + winrt::IAnimatedVisualFrameworkless m_animatedVisual{ nullptr }; winrt::CompositionPropertySet m_progressPropertySet{ nullptr }; winrt::AnimationController m_animationController{ nullptr }; float m_previousFromProgress = 0.0; diff --git a/LottieWinRT/Class1.cs b/LottieWinRT/Class1.cs index a5885cd68..168f44d35 100644 --- a/LottieWinRT/Class1.cs +++ b/LottieWinRT/Class1.cs @@ -7,7 +7,7 @@ namespace LottieWinRT { - public sealed class Class1 : CommunityToolkit.WinAppSDK.LottieIsland.IAnimatedVisual + public sealed class Class1 : CommunityToolkit.WinAppSDK.LottieIsland.IAnimatedVisualFrameworkless { public Class1() { diff --git a/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp b/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp index 41c419487..6f0c1d5ad 100644 --- a/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp +++ b/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp @@ -216,7 +216,7 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) winrt::LottieVisualSourceWinRT lottieVisualSource = winrt::LottieVisualSourceWinRT::CreateFromString(L"ms-appx:///LottieLogo1.json"); lottieVisualSource.AnimatedVisualInvalidated([windowInfo, lottieVisualSource](const winrt::IInspectable&, auto&&) { - windowInfo->LottieIsland.AnimatedVisualSource(lottieVisualSource.as()); + windowInfo->LottieIsland.AnimatedVisualSource(lottieVisualSource.as()); }); windowInfo->LottieIsland.PointerPressed([=](auto&...) { From aef4a7cab2d2b235c1ee40be162112917037ba3c Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Thu, 18 Apr 2024 19:51:00 -0400 Subject: [PATCH 09/40] Moved LottieWinRT to be based on public Lottie-WinUI nuget package instead of custom built package --- LottieWinRT/LottieVisualSourceWinRT.cs | 10 +++++----- LottieWinRT/LottieWinRT.csproj | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/LottieWinRT/LottieVisualSourceWinRT.cs b/LottieWinRT/LottieVisualSourceWinRT.cs index f407e643e..0d2bd7ec8 100644 --- a/LottieWinRT/LottieVisualSourceWinRT.cs +++ b/LottieWinRT/LottieVisualSourceWinRT.cs @@ -14,18 +14,18 @@ public sealed class LottieVisualSourceWinRT : MUXC.IAnimatedVisualSource { public event EventHandler? AnimatedVisualInvalidated; - private LottieVisualSourceFrameworkless _lottieVisualSource; + private LottieVisualSource _lottieVisualSource; public LottieVisualSourceWinRT() { - _lottieVisualSource = new LottieVisualSourceFrameworkless(); + _lottieVisualSource = new LottieVisualSource(); } - private LottieVisualSourceWinRT(LottieVisualSourceFrameworkless lottieVisualSource) + private LottieVisualSourceWinRT(LottieVisualSource lottieVisualSource) { Debug.WriteLine("Hello from C#!!!"); _lottieVisualSource = lottieVisualSource; - _lottieVisualSource.AnimatedVisualInvalidated += (MUXC.IAnimatedVisualSource? sender, object? o) => + _lottieVisualSource.AnimatedVisualInvalidated += (MUXC.IDynamicAnimatedVisualSource? sender, object? o) => { AnimatedVisualInvalidated?.Invoke(this, o); }; @@ -33,7 +33,7 @@ private LottieVisualSourceWinRT(LottieVisualSourceFrameworkless lottieVisualSour public static LottieVisualSourceWinRT? CreateFromString(string uri) { - LottieVisualSourceFrameworkless? lottieSource = LottieVisualSourceFrameworkless.CreateFromString(uri); + LottieVisualSource? lottieSource = LottieVisualSource.CreateFromString(uri); if (lottieSource == null) { return null; diff --git a/LottieWinRT/LottieWinRT.csproj b/LottieWinRT/LottieWinRT.csproj index 89aa32709..127eba199 100644 --- a/LottieWinRT/LottieWinRT.csproj +++ b/LottieWinRT/LottieWinRT.csproj @@ -24,7 +24,7 @@ - + From 87525d07b90557b00dbe76f15fea05c3cd4fe222 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Fri, 19 Apr 2024 00:47:14 -0400 Subject: [PATCH 10/40] Worked through threading issues from using C# events --- LottieIsland/LottieContentIsland.cpp | 8 +++++- LottieWinRT/AnimatedVisual.cs | 19 ++++++++++++-- LottieWinRT/LottieVisualSourceWinRT.cs | 16 ++++++------ LottieWinRT/LottieWinRT.csproj | 2 +- .../SimpleLottieIslandApp.cpp | 25 +++++++++++-------- SimpleLottieIslandApp/packages.config | 1 - .../Lottie/LottieVisualSourceFrameworkless.cs | 6 ++--- version.json | 2 +- 8 files changed, 52 insertions(+), 27 deletions(-) diff --git a/LottieIsland/LottieContentIsland.cpp b/LottieIsland/LottieContentIsland.cpp index 763f105d8..75603455c 100644 --- a/LottieIsland/LottieContentIsland.cpp +++ b/LottieIsland/LottieContentIsland.cpp @@ -16,6 +16,11 @@ namespace winrt::CommunityToolkit::WinAppSDK::LottieIsland::implementation m_rootVisual = m_compositor.CreateContainerVisual(); m_island = winrt::ContentIsland::Create(m_rootVisual); + //SpriteVisual v = m_compositor.CreateSpriteVisual(); + //v.Size(float2(200, 200)); + //v.Brush(compositor.CreateColorBrush(winrt::Microsoft::UI::Colors::Blue())); + //m_island = winrt::ContentIsland::Create(v); + m_island.StateChanged({ get_weak(), &LottieContentIsland::OnIslandStateChanged }); // Once it's not experimental, we should use InputPointerSource::GetForVisual on our root visual. @@ -62,7 +67,8 @@ namespace winrt::CommunityToolkit::WinAppSDK::LottieIsland::implementation m_animatedVisual = m_animatedVisualSource.TryCreateAnimatedVisual(m_compositor, diagnostics); // Set up lottie - m_rootVisual.Children().InsertAtTop(m_animatedVisual.RootVisual()); + winrt::Visual lottieVisual = m_animatedVisual.RootVisual(); + m_rootVisual.Children().InsertAtTop(lottieVisual); // Tell our hosting environment that our size changed, and ask for confirmation of our ActualSize. // Any changes will come back through a StateChanged notification diff --git a/LottieWinRT/AnimatedVisual.cs b/LottieWinRT/AnimatedVisual.cs index 14d9707e4..279f411c3 100644 --- a/LottieWinRT/AnimatedVisual.cs +++ b/LottieWinRT/AnimatedVisual.cs @@ -3,13 +3,14 @@ // See the LICENSE file in the project root for more information. using System.Numerics; +using Microsoft.UI; using Microsoft.UI.Composition; using LottieIsland = CommunityToolkit.WinAppSDK.LottieIsland; using MUXC = Microsoft.UI.Xaml.Controls; namespace LottieWinRT { - public sealed class AnimatedVisual// : LottieIsland.IAnimatedVisual + public sealed class AnimatedVisual : LottieIsland.IAnimatedVisualFrameworkless { private MUXC.IAnimatedVisual? _animatedVisual; @@ -37,7 +38,21 @@ public TimeSpan Duration } } - public Visual? RootVisual { get => _animatedVisual?.RootVisual; } + public Visual? RootVisual + { + get + { + //Compositor? compositor = _animatedVisual?.RootVisual.Compositor; + //SpriteVisual? v = compositor?.CreateSpriteVisual(); + //if (v != null) + //{ + // v.Size = new Vector2(200, 200); + // v.Brush = compositor?.CreateColorBrush(Colors.Blue); + //} + //return v; + return _animatedVisual?.RootVisual; + } + } public Vector2 Size { diff --git a/LottieWinRT/LottieVisualSourceWinRT.cs b/LottieWinRT/LottieVisualSourceWinRT.cs index 0d2bd7ec8..73bf63b7f 100644 --- a/LottieWinRT/LottieVisualSourceWinRT.cs +++ b/LottieWinRT/LottieVisualSourceWinRT.cs @@ -10,18 +10,18 @@ namespace LottieWinRT { - public sealed class LottieVisualSourceWinRT : MUXC.IAnimatedVisualSource + public sealed class LottieVisualSourceWinRT : LottieIsland.IAnimatedVisualSourceFrameworkless { public event EventHandler? AnimatedVisualInvalidated; - private LottieVisualSource _lottieVisualSource; + private LottieVisualSourceFrameworkless _lottieVisualSource; public LottieVisualSourceWinRT() { - _lottieVisualSource = new LottieVisualSource(); + _lottieVisualSource = new LottieVisualSourceFrameworkless(); } - private LottieVisualSourceWinRT(LottieVisualSource lottieVisualSource) + private LottieVisualSourceWinRT(LottieVisualSourceFrameworkless lottieVisualSource) { Debug.WriteLine("Hello from C#!!!"); _lottieVisualSource = lottieVisualSource; @@ -33,7 +33,7 @@ private LottieVisualSourceWinRT(LottieVisualSource lottieVisualSource) public static LottieVisualSourceWinRT? CreateFromString(string uri) { - LottieVisualSource? lottieSource = LottieVisualSource.CreateFromString(uri); + LottieVisualSourceFrameworkless? lottieSource = LottieVisualSourceFrameworkless.CreateFromString(uri); if (lottieSource == null) { return null; @@ -65,7 +65,7 @@ public Uri? UriSource ///// The that can be used as a factory for the resulting . ///// An optional object that may provide extra information about the result. ///// An . - public MUXC.IAnimatedVisual? TryCreateAnimatedVisual( + public LottieIsland.IAnimatedVisualFrameworkless? TryCreateAnimatedVisual( Compositor compositor, out object? diagnostics) { @@ -76,8 +76,8 @@ public Uri? UriSource return null; } - return visual; - //return new AnimatedVisual(visual); + //return visual; + return new AnimatedVisual(visual); } } } diff --git a/LottieWinRT/LottieWinRT.csproj b/LottieWinRT/LottieWinRT.csproj index 127eba199..ecf6ef8ef 100644 --- a/LottieWinRT/LottieWinRT.csproj +++ b/LottieWinRT/LottieWinRT.csproj @@ -24,7 +24,7 @@ - + diff --git a/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp b/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp index 6f0c1d5ad..638500f46 100644 --- a/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp +++ b/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp @@ -66,8 +66,8 @@ int APIENTRY wWinMain(_In_ HINSTANCE hInstance, UNREFERENCED_PARAMETER(hPrevInstance); UNREFERENCED_PARAMETER(lpCmdLine); - /*try - {*/ + try + { // Island-support: Call init_apartment to initialize COM and WinRT for the thread. winrt::init_apartment(winrt::apartment_type::single_threaded); @@ -113,12 +113,12 @@ int APIENTRY wWinMain(_In_ HINSTANCE hInstance, // Island-support: To properly shut down after using a DispatcherQueue, call ShutdownQueue[Aysnc](). dispatcherQueueController.ShutdownQueue(); - //} - //catch (const winrt::hresult_error& exception) - //{ - // // An exception was thrown, let's make the exit code the HR value of the exception. - // return exception.code().value; - //} + } + catch (const winrt::hresult_error& exception) + { + // An exception was thrown, let's make the exit code the HR value of the exception. + return exception.code().value; + } return 0; } @@ -197,7 +197,7 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) winrt::GetWindowIdFromWindow(hWnd)); // Create the LottieIsland, which is a WinRT wrapper for hosting a Lottie animation in a ContentIsland - windowInfo->LottieIsland = winrt::LottieContentIsland::Create(windowInfo->Compositor);; + windowInfo->LottieIsland = winrt::LottieContentIsland::Create(windowInfo->Compositor); // Connect the ContentIsland to the DesktopChildSiteBridge windowInfo->Bridge.Connect(windowInfo->LottieIsland.Island()); @@ -216,7 +216,12 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) winrt::LottieVisualSourceWinRT lottieVisualSource = winrt::LottieVisualSourceWinRT::CreateFromString(L"ms-appx:///LottieLogo1.json"); lottieVisualSource.AnimatedVisualInvalidated([windowInfo, lottieVisualSource](const winrt::IInspectable&, auto&&) { - windowInfo->LottieIsland.AnimatedVisualSource(lottieVisualSource.as()); + windowInfo->Compositor.DispatcherQueue().TryEnqueue([windowInfo, lottieVisualSource]() + { + OutputDebugString(L"Animated Visual invalidated!!\n"); + windowInfo->LottieIsland.AnimatedVisualSource(lottieVisualSource.as()); + }); + }); windowInfo->LottieIsland.PointerPressed([=](auto&...) { diff --git a/SimpleLottieIslandApp/packages.config b/SimpleLottieIslandApp/packages.config index 20ca08f68..26a6e74b1 100644 --- a/SimpleLottieIslandApp/packages.config +++ b/SimpleLottieIslandApp/packages.config @@ -1,6 +1,5 @@  - diff --git a/source/Lottie/LottieVisualSourceFrameworkless.cs b/source/Lottie/LottieVisualSourceFrameworkless.cs index 4d4012441..0e6aef5c1 100644 --- a/source/Lottie/LottieVisualSourceFrameworkless.cs +++ b/source/Lottie/LottieVisualSourceFrameworkless.cs @@ -33,10 +33,10 @@ namespace CommunityToolkit.WinUI.Lottie /// An for a Lottie composition. This allows /// a Lottie to be specified as the source for a . /// - public sealed class LottieVisualSourceFrameworkless : IAnimatedVisualSource + public sealed class LottieVisualSourceFrameworkless : IDynamicAnimatedVisualSource { #if WINAPPSDK - HashSet> _compositionInvalidatedEventTokenTable = new HashSet>(); + HashSet> _compositionInvalidatedEventTokenTable = new HashSet>(); #else EventRegistrationTokenTable>? _compositionInvalidatedEventTokenTable; #endif @@ -160,7 +160,7 @@ public IAsyncAction SetSourceAsync(Uri sourceUri) /// Implements . /// // TODO: currently explicitly implemented interfaces are causing a problem with .NET Native. Make them implicit for now. - public event TypedEventHandler AnimatedVisualInvalidated + public event TypedEventHandler AnimatedVisualInvalidated { add { diff --git a/version.json b/version.json index 43ca24058..eb07ae7a8 100644 --- a/version.json +++ b/version.json @@ -1,5 +1,5 @@ { - "version": "8.0.230817-rc-FHL.{height}", + "version": "8.0.230818-rc-FHL.{height}", "publicReleaseRefSpec": [ "^refs/heads/main$", // we release out of main "^refs/heads/dev$", // we release out of dev From e7a6d2ff902cd29586f39f60ae4257aacd537ad4 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Fri, 19 Apr 2024 10:54:40 -0400 Subject: [PATCH 11/40] Test app working, loading Lottie. Working through small bug around resizing. --- LottieIsland/LottieContentIsland.cpp | 5 ----- LottieWinRT/AnimatedVisual.cs | 13 +---------- LottieWinRT/Class1.cs | 22 ------------------- LottieWinRT/LottieVisualSourceWinRT.cs | 16 +++++++------- .../SimpleLottieIslandApp.cpp | 11 ---------- 5 files changed, 9 insertions(+), 58 deletions(-) delete mode 100644 LottieWinRT/Class1.cs diff --git a/LottieIsland/LottieContentIsland.cpp b/LottieIsland/LottieContentIsland.cpp index 75603455c..5f0532f2c 100644 --- a/LottieIsland/LottieContentIsland.cpp +++ b/LottieIsland/LottieContentIsland.cpp @@ -16,11 +16,6 @@ namespace winrt::CommunityToolkit::WinAppSDK::LottieIsland::implementation m_rootVisual = m_compositor.CreateContainerVisual(); m_island = winrt::ContentIsland::Create(m_rootVisual); - //SpriteVisual v = m_compositor.CreateSpriteVisual(); - //v.Size(float2(200, 200)); - //v.Brush(compositor.CreateColorBrush(winrt::Microsoft::UI::Colors::Blue())); - //m_island = winrt::ContentIsland::Create(v); - m_island.StateChanged({ get_weak(), &LottieContentIsland::OnIslandStateChanged }); // Once it's not experimental, we should use InputPointerSource::GetForVisual on our root visual. diff --git a/LottieWinRT/AnimatedVisual.cs b/LottieWinRT/AnimatedVisual.cs index 279f411c3..650d26b27 100644 --- a/LottieWinRT/AnimatedVisual.cs +++ b/LottieWinRT/AnimatedVisual.cs @@ -40,18 +40,7 @@ public TimeSpan Duration public Visual? RootVisual { - get - { - //Compositor? compositor = _animatedVisual?.RootVisual.Compositor; - //SpriteVisual? v = compositor?.CreateSpriteVisual(); - //if (v != null) - //{ - // v.Size = new Vector2(200, 200); - // v.Brush = compositor?.CreateColorBrush(Colors.Blue); - //} - //return v; - return _animatedVisual?.RootVisual; - } + get => _animatedVisual?.RootVisual; } public Vector2 Size diff --git a/LottieWinRT/Class1.cs b/LottieWinRT/Class1.cs deleted file mode 100644 index 168f44d35..000000000 --- a/LottieWinRT/Class1.cs +++ /dev/null @@ -1,22 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. -// See the LICENSE file in the project root for more information. - -using Microsoft.UI.Composition; -using System.Numerics; - -namespace LottieWinRT -{ - public sealed class Class1 : CommunityToolkit.WinAppSDK.LottieIsland.IAnimatedVisualFrameworkless - { - public Class1() - { - } - - public TimeSpan Duration { get => TimeSpan.Zero; } - - public Visual? RootVisual { get => null; } - - public Vector2 Size { get => Vector2.Zero; } - } -} diff --git a/LottieWinRT/LottieVisualSourceWinRT.cs b/LottieWinRT/LottieVisualSourceWinRT.cs index 73bf63b7f..7f55dbaab 100644 --- a/LottieWinRT/LottieVisualSourceWinRT.cs +++ b/LottieWinRT/LottieVisualSourceWinRT.cs @@ -45,7 +45,7 @@ private LottieVisualSourceWinRT(LottieVisualSourceFrameworkless lottieVisualSour } /// - /// Gets or sets the Uniform Resource Identifier (URI) of the JSON source file for this . + /// Gets or sets the Uniform Resource Identifier (URI) of the JSON source file for this . /// public Uri? UriSource { @@ -59,12 +59,13 @@ public Uri? UriSource } } - ///// - ///// Implements . - ///// - ///// The that can be used as a factory for the resulting . - ///// An optional object that may provide extra information about the result. - ///// An . + /// + /// Implements . + /// WinRT Wrapper around for use by C++ or non-WinUI applications. + /// + /// The that can be used as a factory for the resulting . + /// An optional object that may provide extra information about the result. + /// An . public LottieIsland.IAnimatedVisualFrameworkless? TryCreateAnimatedVisual( Compositor compositor, out object? diagnostics) @@ -76,7 +77,6 @@ public Uri? UriSource return null; } - //return visual; return new AnimatedVisual(visual); } } diff --git a/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp b/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp index 638500f46..56746db97 100644 --- a/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp +++ b/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp @@ -203,22 +203,11 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) windowInfo->Bridge.Connect(windowInfo->LottieIsland.Island()); windowInfo->Bridge.Show(); - //// Set the C++/WinRT precompiled Lottie animation! - //windowInfo->LottieIsland.AnimatedVisualSource(winrt::AnimatedVisuals::LottieLogo1()); - - //// Live JSON loaded animation! - //winrt::LottieVisualSourceWinRT v = winrt::LottieVisualSourceWinRT(); - //if (v == nullptr) - //{ - // OutputDebugString(L"Meep"); - //} - winrt::LottieVisualSourceWinRT lottieVisualSource = winrt::LottieVisualSourceWinRT::CreateFromString(L"ms-appx:///LottieLogo1.json"); lottieVisualSource.AnimatedVisualInvalidated([windowInfo, lottieVisualSource](const winrt::IInspectable&, auto&&) { windowInfo->Compositor.DispatcherQueue().TryEnqueue([windowInfo, lottieVisualSource]() { - OutputDebugString(L"Animated Visual invalidated!!\n"); windowInfo->LottieIsland.AnimatedVisualSource(lottieVisualSource.as()); }); From 381c02d018856736903f38cc5336ca78012d0f99 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Fri, 19 Apr 2024 11:13:28 -0400 Subject: [PATCH 12/40] Add nuget restore for LottieIsland.vcxproj --- azure-pipelines.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 4e11b0dbc..d1a847ccb 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -53,6 +53,10 @@ steps: - powershell: .\build\Install-WindowsSdkISO.ps1 18362 displayName: Insider SDK +# TODO - figure out why this is not getting restored as part of the solution restore +- script: nuget restore LottieIsland\LottieIsland.vcxproj -SolutionDirectory . + displayName: Nuget Restore LottieIsland + # Run the build. - powershell: .\build.ps1 --target=Package displayName: Build From 7263a34257fd70eecf2c77c5f41f7158e78b1405 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Fri, 19 Apr 2024 14:49:21 -0400 Subject: [PATCH 13/40] Fix project references so everything builds out of the box with no custom local nuget packages --- Lottie-Windows.sln | 80 +++++++++---------- .../Lottie-Windows-WinUI3.csproj | 1 + LottieWinRT/LottieWinRT.csproj | 11 +-- .../SimpleLottieIslandApp.vcxproj | 11 +++ 4 files changed, 55 insertions(+), 48 deletions(-) diff --git a/Lottie-Windows.sln b/Lottie-Windows.sln index 2b9f23ed0..c7d963c33 100644 --- a/Lottie-Windows.sln +++ b/Lottie-Windows.sln @@ -547,34 +547,34 @@ Global {192FBD28-8531-4607-A17C-44A1A51A1565}.Release|ARM64.ActiveCfg = Release|Any CPU {192FBD28-8531-4607-A17C-44A1A51A1565}.Release|x64.ActiveCfg = Release|Any CPU {192FBD28-8531-4607-A17C-44A1A51A1565}.Release|x86.ActiveCfg = Release|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|Any CPU.ActiveCfg = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|Any CPU.Build.0 = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM.ActiveCfg = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM.Build.0 = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM64.ActiveCfg = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM64.Build.0 = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x64.ActiveCfg = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x64.Build.0 = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x86.ActiveCfg = Debug|x86 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x86.Build.0 = Debug|x86 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|Any CPU.ActiveCfg = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|Any CPU.Build.0 = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM.ActiveCfg = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM.Build.0 = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM64.ActiveCfg = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM64.Build.0 = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x64.ActiveCfg = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x64.Build.0 = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x86.ActiveCfg = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x86.Build.0 = Debug|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM.ActiveCfg = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM.Build.0 = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM64.ActiveCfg = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM64.Build.0 = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x64.ActiveCfg = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x64.Build.0 = Debug|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM.ActiveCfg = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM.Build.0 = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM64.Build.0 = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x64.ActiveCfg = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x64.Build.0 = Debug|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x86.ActiveCfg = Debug|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x86.Build.0 = Debug|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|Any CPU.ActiveCfg = Release|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|Any CPU.Build.0 = Release|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM.ActiveCfg = Release|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM.Build.0 = Release|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM64.ActiveCfg = Release|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM64.Build.0 = Release|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x64.ActiveCfg = Release|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x64.Build.0 = Release|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM.ActiveCfg = Release|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM.Build.0 = Release|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM64.ActiveCfg = Release|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM64.Build.0 = Release|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x64.ActiveCfg = Release|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x64.Build.0 = Release|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x86.ActiveCfg = Release|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x86.Build.0 = Release|Any CPU {6AB50ED0-6273-4919-9ADE-50195664EF15}.BETA|Any CPU.ActiveCfg = Debug|x64 @@ -624,18 +624,18 @@ Global {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|x86.Deploy.0 = Release|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.ActiveCfg = Debug|Any CPU {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.Build.0 = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.ActiveCfg = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.Build.0 = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM64.ActiveCfg = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM64.Build.0 = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x64.ActiveCfg = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x64.Build.0 = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x86.ActiveCfg = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x86.Build.0 = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.ActiveCfg = Debug|x64 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.Build.0 = Debug|x64 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.ActiveCfg = Debug|x64 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.Build.0 = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.ActiveCfg = Debug|ARM + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.Build.0 = Debug|ARM + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM64.ActiveCfg = Debug|ARM64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM64.Build.0 = Debug|ARM64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x64.ActiveCfg = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x64.Build.0 = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x86.ActiveCfg = Debug|x86 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x86.Build.0 = Debug|x86 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.Build.0 = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.ActiveCfg = Debug|ARM + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.Build.0 = Debug|ARM {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM64.ActiveCfg = Debug|ARM64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM64.Build.0 = Debug|ARM64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x64.ActiveCfg = Debug|x64 @@ -644,12 +644,12 @@ Global {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x86.Build.0 = Debug|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.ActiveCfg = Release|Any CPU {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.Build.0 = Release|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM.ActiveCfg = Release|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM.Build.0 = Release|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM64.ActiveCfg = Release|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM64.Build.0 = Release|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|x64.ActiveCfg = Release|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|x64.Build.0 = Release|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM.ActiveCfg = Release|ARM + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM.Build.0 = Release|ARM + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM64.ActiveCfg = Release|ARM64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM64.Build.0 = Release|ARM64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|x64.ActiveCfg = Release|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|x64.Build.0 = Release|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|x86.ActiveCfg = Release|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|x86.Build.0 = Release|x86 {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|Any CPU.ActiveCfg = Debug|x64 diff --git a/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj b/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj index 29a711ed8..a8e12b6b6 100644 --- a/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj +++ b/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj @@ -8,6 +8,7 @@ WinUI3 Toolkit Windows Animations Lottie XAML enable + AnyCPU Microsoft WINAPPSDK True diff --git a/LottieWinRT/LottieWinRT.csproj b/LottieWinRT/LottieWinRT.csproj index ecf6ef8ef..715a46425 100644 --- a/LottieWinRT/LottieWinRT.csproj +++ b/LottieWinRT/LottieWinRT.csproj @@ -4,7 +4,7 @@ net7.0-windows10.0.19041.0 true enable - x86;x64;ARM64 + AnyCPU;x64;x86;ARM64 true LottieWinRT @@ -24,13 +24,13 @@ - + @@ -41,13 +41,8 @@ ARM64 --> - - Win32 - $(Platform) - - - + diff --git a/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj b/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj index e7419fda2..559dc665f 100644 --- a/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj +++ b/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj @@ -168,6 +168,17 @@ {dda0d223-4b59-455d-a8b1-cfae59523ffb} + + + + + + + + + + + From 8fd5e6bebee86028dd226d716fecdbce89b927bf Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Fri, 19 Apr 2024 15:52:25 -0400 Subject: [PATCH 14/40] Add nuget restore for SimpleLottieIslandApp.vcxproj --- azure-pipelines.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index d1a847ccb..c68656d8b 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -54,7 +54,9 @@ steps: displayName: Insider SDK # TODO - figure out why this is not getting restored as part of the solution restore -- script: nuget restore LottieIsland\LottieIsland.vcxproj -SolutionDirectory . +- script: | + nuget restore LottieIsland\LottieIsland.vcxproj -SolutionDirectory . + nuget restore SimpleLottieIslandApp\SimpleLottieIslandApp.vcxproj -SolutionDirectory . displayName: Nuget Restore LottieIsland # Run the build. From b41d8fdcc0aafeb756447d9bdd278e9fab5a7c4c Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Fri, 19 Apr 2024 18:12:31 -0400 Subject: [PATCH 15/40] More project reference work --- Lottie-Windows.sln | 40 +++++++++++++------ LottieWinRT/LottieWinRT.csproj | 2 +- .../SimpleLottieIslandApp.vcxproj | 15 +++++-- 3 files changed, 41 insertions(+), 16 deletions(-) diff --git a/Lottie-Windows.sln b/Lottie-Windows.sln index c7d963c33..3c0c3754e 100644 --- a/Lottie-Windows.sln +++ b/Lottie-Windows.sln @@ -622,30 +622,30 @@ Global {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|x86.ActiveCfg = Release|x86 {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|x86.Build.0 = Release|x86 {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|x86.Deploy.0 = Release|x86 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.ActiveCfg = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.Build.0 = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.ActiveCfg = Debug|ARM - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.Build.0 = Debug|ARM + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.ActiveCfg = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.Build.0 = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.ActiveCfg = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM64.ActiveCfg = Debug|ARM64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM64.Build.0 = Debug|ARM64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x64.ActiveCfg = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x64.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x86.ActiveCfg = Debug|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x86.Build.0 = Debug|x86 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.Build.0 = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.ActiveCfg = Debug|ARM - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.Build.0 = Debug|ARM + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.ActiveCfg = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.Build.0 = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.ActiveCfg = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM64.ActiveCfg = Debug|ARM64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM64.Build.0 = Debug|ARM64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x64.ActiveCfg = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x64.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x86.ActiveCfg = Debug|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x86.Build.0 = Debug|x86 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.ActiveCfg = Release|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.Build.0 = Release|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM.ActiveCfg = Release|ARM - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM.Build.0 = Release|ARM + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.ActiveCfg = Release|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.Build.0 = Release|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM.ActiveCfg = Release|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM.Build.0 = Release|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM64.ActiveCfg = Release|ARM64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM64.Build.0 = Release|ARM64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|x64.ActiveCfg = Release|x64 @@ -842,6 +842,7 @@ Global source\WinStorageStreamsData\WinStorageStreamsData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 source\WinUIXamlMediaData\WinUIXamlMediaData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 source\YamlData\YamlData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 + source\NullablesAttributes\NullablesAttributes.projitems*{6ab50ed0-6273-4919-9ade-50195664ef15}*SharedItemsImports = 4 source\DotLottie\DotLottie.projitems*{7012420d-624c-4bd4-a1d2-1c6c1655ed3a}*SharedItemsImports = 13 source\UIData\UIData.projitems*{74601e6c-2dfe-4842-b170-047941abff2c}*SharedItemsImports = 13 source\LottieGen\LottieGen.projitems*{7654a857-9a99-4185-9f8e-dd0ce662af23}*SharedItemsImports = 13 @@ -877,6 +878,21 @@ Global source\UIDataCodeGen\UIDataCodeGen.projitems*{d02be6c8-14db-4b4f-8600-f3c9b69c104d}*SharedItemsImports = 13 source\LottieGenExe\LottieGenExe.projitems*{dc7f7a39-b7a7-40b4-937a-601460cae38c}*SharedItemsImports = 13 source\NullablesAttributes\NullablesAttributes.projitems*{e32587a8-94e8-4b68-91ad-f3612a48a62b}*SharedItemsImports = 13 + source\Animatables\Animatables.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\CompMetadata\CompMetadata.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\DotLottie\DotLottie.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\GenericData\GenericData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\LottieData\LottieData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\LottieMetadata\LottieMetadata.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\LottieReader\LottieReader.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\LottieToWinComp\LottieToWinComp.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\Lottie\Lottie.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\NullablesAttributes\NullablesAttributes.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\UIData\UIData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\WinCompData\WinCompData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\WinStorageStreamsData\WinStorageStreamsData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\WinUIXamlMediaData\WinUIXamlMediaData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\YamlData\YamlData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 source\Animatables\Animatables.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 source\CompMetadata\CompMetadata.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 source\DotLottie\DotLottie.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 diff --git a/LottieWinRT/LottieWinRT.csproj b/LottieWinRT/LottieWinRT.csproj index 715a46425..012dbe2b7 100644 --- a/LottieWinRT/LottieWinRT.csproj +++ b/LottieWinRT/LottieWinRT.csproj @@ -4,7 +4,7 @@ net7.0-windows10.0.19041.0 true enable - AnyCPU;x64;x86;ARM64 + x64;x86;ARM64 true LottieWinRT diff --git a/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj b/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj index 559dc665f..dead72613 100644 --- a/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj +++ b/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj @@ -168,15 +168,24 @@ {dda0d223-4b59-455d-a8b1-cfae59523ffb} + + + $(Platform) + x86 + x64 + - + - - + + + + + From 66b537b21a51bd65262e07e095107835bfe03f3a Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Sat, 20 Apr 2024 17:50:47 -0400 Subject: [PATCH 16/40] Add C# app and show how to consume nuget packages. (Only working in C#, packages not set up correctly for native yet) --- Lottie-Windows.sln | 61 +- LottieIsland/LottieIsland.vcxproj | 4 +- ...unityToolkit.WinAppSDK.LottieIsland.nuspec | 40 + .../LottieIslandProjection.csproj | 5 +- LottieIslandProjection/icon.png | Bin 0 -> 2410 bytes LottieIslandProjection/readme.md | 7 + LottieWinRT/LottieWinRT.csproj | 17 +- SimpleCSharpApp/App.xaml | 16 + SimpleCSharpApp/App.xaml.cs | 51 + .../Assets/LockScreenLogo.scale-200.png | Bin 0 -> 432 bytes SimpleCSharpApp/Assets/LottieLogo1.json | 7390 +++++++++++++++++ .../Assets/SplashScreen.scale-200.png | Bin 0 -> 5372 bytes .../Assets/Square150x150Logo.scale-200.png | Bin 0 -> 1755 bytes .../Assets/Square44x44Logo.scale-200.png | Bin 0 -> 637 bytes ...x44Logo.targetsize-24_altform-unplated.png | Bin 0 -> 283 bytes SimpleCSharpApp/Assets/StoreLogo.png | Bin 0 -> 456 bytes .../Assets/Wide310x150Logo.scale-200.png | Bin 0 -> 2097 bytes SimpleCSharpApp/MainWindow.xaml | 14 + SimpleCSharpApp/MainWindow.xaml.cs | 71 + SimpleCSharpApp/Package.appxmanifest | 51 + .../PublishProfiles/win10-arm64.pubxml | 20 + .../PublishProfiles/win10-x64.pubxml | 20 + .../PublishProfiles/win10-x86.pubxml | 20 + SimpleCSharpApp/SimpleCSharpApp.csproj | 55 + SimpleCSharpApp/app.manifest | 19 + .../SimpleLottieIslandApp.vcxproj | 10 +- SimpleLottieIslandApp/packages.config | 1 + 27 files changed, 7845 insertions(+), 27 deletions(-) create mode 100644 LottieIslandProjection/CommunityToolkit.WinAppSDK.LottieIsland.nuspec create mode 100644 LottieIslandProjection/icon.png create mode 100644 LottieIslandProjection/readme.md create mode 100644 SimpleCSharpApp/App.xaml create mode 100644 SimpleCSharpApp/App.xaml.cs create mode 100644 SimpleCSharpApp/Assets/LockScreenLogo.scale-200.png create mode 100644 SimpleCSharpApp/Assets/LottieLogo1.json create mode 100644 SimpleCSharpApp/Assets/SplashScreen.scale-200.png create mode 100644 SimpleCSharpApp/Assets/Square150x150Logo.scale-200.png create mode 100644 SimpleCSharpApp/Assets/Square44x44Logo.scale-200.png create mode 100644 SimpleCSharpApp/Assets/Square44x44Logo.targetsize-24_altform-unplated.png create mode 100644 SimpleCSharpApp/Assets/StoreLogo.png create mode 100644 SimpleCSharpApp/Assets/Wide310x150Logo.scale-200.png create mode 100644 SimpleCSharpApp/MainWindow.xaml create mode 100644 SimpleCSharpApp/MainWindow.xaml.cs create mode 100644 SimpleCSharpApp/Package.appxmanifest create mode 100644 SimpleCSharpApp/Properties/PublishProfiles/win10-arm64.pubxml create mode 100644 SimpleCSharpApp/Properties/PublishProfiles/win10-x64.pubxml create mode 100644 SimpleCSharpApp/Properties/PublishProfiles/win10-x86.pubxml create mode 100644 SimpleCSharpApp/SimpleCSharpApp.csproj create mode 100644 SimpleCSharpApp/app.manifest diff --git a/Lottie-Windows.sln b/Lottie-Windows.sln index 3c0c3754e..a6c8e4cae 100644 --- a/Lottie-Windows.sln +++ b/Lottie-Windows.sln @@ -180,6 +180,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LottieIslandProjection", "L EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SimpleLottieIslandApp", "SimpleLottieIslandApp\SimpleLottieIslandApp.vcxproj", "{350A5EC2-B156-4AAF-9D80-A864C76BA0C5}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SimpleCSharpApp", "SimpleCSharpApp\SimpleCSharpApp.csproj", "{FA721C42-3629-4D57-A232-5F5CA399A9DE}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution BETA|Any CPU = BETA|Any CPU @@ -225,7 +227,7 @@ Global {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Debug|x86.ActiveCfg = Debug|x86 {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Debug|x86.Build.0 = Debug|x86 {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Debug|x86.Deploy.0 = Debug|x86 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Release|Any CPU.ActiveCfg = Release|x86 + {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Release|Any CPU.ActiveCfg = Release|x64 {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Release|ARM.ActiveCfg = Release|ARM {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Release|ARM.Build.0 = Release|ARM {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Release|ARM.Deploy.0 = Release|ARM @@ -622,8 +624,8 @@ Global {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|x86.ActiveCfg = Release|x86 {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|x86.Build.0 = Release|x86 {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|x86.Deploy.0 = Release|x86 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.ActiveCfg = Debug|x64 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.Build.0 = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.ActiveCfg = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.Build.0 = Debug|Any CPU {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.ActiveCfg = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM64.ActiveCfg = Debug|ARM64 @@ -632,8 +634,8 @@ Global {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x64.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x86.ActiveCfg = Debug|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x86.Build.0 = Debug|x86 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.ActiveCfg = Debug|x64 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.Build.0 = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.Build.0 = Debug|Any CPU {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.ActiveCfg = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM64.ActiveCfg = Debug|ARM64 @@ -642,8 +644,8 @@ Global {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x64.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x86.ActiveCfg = Debug|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x86.Build.0 = Debug|x86 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.ActiveCfg = Release|x64 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.Build.0 = Release|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.ActiveCfg = Release|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.Build.0 = Release|Any CPU {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM.ActiveCfg = Release|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM.Build.0 = Release|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM64.ActiveCfg = Release|ARM64 @@ -757,6 +759,51 @@ Global {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x86.ActiveCfg = Release|Win32 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x86.Build.0 = Release|Win32 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x86.Deploy.0 = Release|Win32 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|Any CPU.ActiveCfg = Debug|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|Any CPU.Build.0 = Debug|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|Any CPU.Deploy.0 = Debug|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|ARM.ActiveCfg = Debug|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|ARM.Build.0 = Debug|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|ARM.Deploy.0 = Debug|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|ARM64.ActiveCfg = Debug|ARM64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|ARM64.Build.0 = Debug|ARM64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|ARM64.Deploy.0 = Debug|ARM64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|x64.ActiveCfg = Debug|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|x64.Build.0 = Debug|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|x64.Deploy.0 = Debug|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|x86.ActiveCfg = Debug|x86 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|x86.Build.0 = Debug|x86 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|x86.Deploy.0 = Debug|x86 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|Any CPU.ActiveCfg = Debug|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|Any CPU.Build.0 = Debug|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|Any CPU.Deploy.0 = Debug|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|ARM.ActiveCfg = Debug|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|ARM.Build.0 = Debug|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|ARM.Deploy.0 = Debug|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|ARM64.Build.0 = Debug|ARM64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|ARM64.Deploy.0 = Debug|ARM64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|x64.ActiveCfg = Debug|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|x64.Build.0 = Debug|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|x64.Deploy.0 = Debug|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|x86.ActiveCfg = Debug|x86 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|x86.Build.0 = Debug|x86 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|x86.Deploy.0 = Debug|x86 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|Any CPU.ActiveCfg = Release|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|Any CPU.Build.0 = Release|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|Any CPU.Deploy.0 = Release|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|ARM.ActiveCfg = Release|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|ARM.Build.0 = Release|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|ARM.Deploy.0 = Release|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|ARM64.ActiveCfg = Release|ARM64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|ARM64.Build.0 = Release|ARM64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|ARM64.Deploy.0 = Release|ARM64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|x64.ActiveCfg = Release|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|x64.Build.0 = Release|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|x64.Deploy.0 = Release|x64 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|x86.ActiveCfg = Release|x86 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|x86.Build.0 = Release|x86 + {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|x86.Deploy.0 = Release|x86 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/LottieIsland/LottieIsland.vcxproj b/LottieIsland/LottieIsland.vcxproj index 71edaa30b..c201f3d97 100644 --- a/LottieIsland/LottieIsland.vcxproj +++ b/LottieIsland/LottieIsland.vcxproj @@ -11,6 +11,8 @@ LottieIsland CommunityToolkit.WinAppSDK.LottieIsland CommunityToolkit.WinAppSDK.LottieIsland + + 0.1.1-prerelease.2 en-US 14.0 Windows Store @@ -44,7 +46,7 @@ Release - x64 + ARM64 Release diff --git a/LottieIslandProjection/CommunityToolkit.WinAppSDK.LottieIsland.nuspec b/LottieIslandProjection/CommunityToolkit.WinAppSDK.LottieIsland.nuspec new file mode 100644 index 000000000..68e89f0aa --- /dev/null +++ b/LottieIslandProjection/CommunityToolkit.WinAppSDK.LottieIsland.nuspec @@ -0,0 +1,40 @@ + + + + CommunityToolkit.WinAppSDK.LottieIsland + Microsoft + + 0.1.1-prerelease.2 + A ContentIsland to host Lottie Animations + images\icon.png + docs\readme.md + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/LottieIslandProjection/LottieIslandProjection.csproj b/LottieIslandProjection/LottieIslandProjection.csproj index 0ea793cdd..5fb85ab56 100644 --- a/LottieIslandProjection/LottieIslandProjection.csproj +++ b/LottieIslandProjection/LottieIslandProjection.csproj @@ -2,6 +2,9 @@ net7.0-windows10.0.19041.0 + CommunityToolkit.WinAppSDK.LottieIsland + + 0.1.1-prerelease.2 AnyCPU @@ -10,7 +13,7 @@ .\nuget\ $(GeneratedNugetDir) True - build\CommunityToolkit.WinAppSDK.LottieIsland.nuspec + CommunityToolkit.WinAppSDK.LottieIsland.nuspec CommunityToolkit.WinAppSDK.LottieIsland diff --git a/LottieIslandProjection/icon.png b/LottieIslandProjection/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..5cae1f76b23ddffecef63e67206cf6171a7b3fb3 GIT binary patch literal 2410 zcmV-w36=JVP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGqBme*wBmtWh#uNYm2>(e$K~!i%?N|$J z6vr8!ncdra`|PvN_<lpHkA^!K}n=4rBKw6Qq=G;7_foZcYeg2Is5Fp^S$>m{r}yw0fTL9P|}U| z)7;+d+|2C%{jd4=C^`QD`P_jOzdv8FSeXYFEAzl&Wgb|p%ma&+d0??J4=h&ZfyK%^ zuvnP~7Ay0>Vr3p!tjvSOu);N5gSN26loG}WgX@e2gEuvp26N#9kI>Xxn^yd3J}l}V zY0iJ*DTOEOO~nl%<_FBm7O+iE=f&?^!HLU3>^A89$W^k^?pA;thf$mzSCv1c;+KK# zd{_*tT0;I4Y*RJf+Si%X#e@$&mc!FEohQW(T)`Cj1pMiEHwldrQNUXRqHY;Q#a|7` zDrv1J?aNyTI}&WGb-0V;I#keO-}$|h6KK*ou?SYYg|cJ8_MED0?CXr`Bv2?#{g%V? zWZ9Air-xEHlFxpW96ykrxT-231SOP@Opu9`&Qk}h3q?sXM^@Jon|Om*rH}Z%aQm{a zqRHt6J;7R7BT$-9Kw|X4#$Rn5s&r(H&I0K4B-u_ztK=Jjy0+2)+=tT1BeBSv$+3SaNQP-#`^R}S(U;bv zTXOzppl&TDA+(xdIU`Bv9T1epmBNc7{qHM~a^|78a9a@`5I`uJgx&FuY?T~fli_U2 zFNlAxZv2hEdb{MnpD2APlk6C{^nCBR-c-ENUGkm!=0nXL$EsIsn#gGJG}=l66`+WI zO4ob+t4jQ*}+U}O|i*|G}q z$Vz{l4g;0rd;`!o9B~>zkqK}zsK&UVvO8fB9!P5JPVoMIIgjy>%AY*meIYym z<4HyS!Fc4WBcW&d&PDUt$CuPU?R4u07jZEWt|?7DtH^&Ma-l9j8%s&w0vz=qcOnDSOsa`mCo6P7XM~fciGk_LSsAQD(uySy5VLccm4% z2U#&88YemB_3`1sTuK5pgY*zxx%9iyK?f5aEvYc{?SZsT$RwmV!?QGv!+{H#5Kbx` zRg`|OHn_Wfc&@Av_2}{ zd>-6_yJLmkZMZsL$HYpzGnUVt1`%O>IxpC5Z#mhvzH>XGgTNErg0Ze_3LaQp)F^c@ z5ll95;|QXd!Bvjs1x5|`QR)^%jq|Kt>{BFWmPo}gOtL&C$A5z4R@{UzpyrZVNLkLs&LoF z!S1)^9GvgF6Vb0kLRYyqwbx9{$qE*MIxl}h{@zL6JB`=#p>}E)DeX=t^ckF2c#(GB z2%e;jaY{L(;BQYOcD4hbOOod@=_W9V9o-{a)5mtzEiC z&-AfG8jMB~naXqhBbUNwLV9pBG?M& z%qHprFneYPmo3Qj{Z0;KwyvQLi5HY@kpw#vIuf6xk2LdOjWH3J(6fD7PlQM!b=hcE zRx|mB+8cfC!J}#c^tnZ}z1!50QROdwe6|~j>5c>YgOTwy11tS!oZkIS?OpM)w*HH# zuY1E>>nY?Ya1x)3IwgF|Vf^_`8-M@Z9oyCFDXkW`e0$05Y)ulx4gOeKDg!2D%Tnnu8VRP)b*L$Y6|L z8wa}`^e^2~R+V;({hOOea}__+PfuJXsT`=BGp5y)tL@AA=2g67g;HB?1PnSHr5|YO z&j)(;4fpEX-U*y|^f<|3I=K&+ofW7|WPEKss`GFcIrQJ=ggPeYe>Qlf5AwyPm1ILB z508=~U1T7Nj)Vm&E<>w=O`v~M+TE8)9LQ&&s4w2n1TPiv;L1-2-n~H}yLJ}4w*w^e zI!R3#)}RhsiQoCxTCAl=uAn z7H@6`tszv>v=fu#$Ki0FmHge}F6u!2T(!Z=5eUj5Z{PIN25y$h(#ymA$_UBHq|Ajp z9TM6qnWK4yY+1!ioJN+L17IcvH-~pB$b=M6_j|*_tJ@g>&LDF#Lxy7{GC|^5JcvNq zPKj1}`T7PVsk`Q@GnFkgt cvw)EQ0V-YdJ0?oPAOHXW07*qoM6N<$f^s~Ph5!Hn literal 0 HcmV?d00001 diff --git a/LottieIslandProjection/readme.md b/LottieIslandProjection/readme.md new file mode 100644 index 000000000..6ff4aa2b9 --- /dev/null +++ b/LottieIslandProjection/readme.md @@ -0,0 +1,7 @@ +# LottieIsland + +This project shows a sample ContentIsland that hosts a Lottie animation. + +For more information on Lottie animations, check out [Lottie-Windows](https://github.com/CommunityToolkit/Lottie-Windows) on GitHub! + +To generate a nuget package, pack the LottieIslandProjection project using Visual Studio. Make sure you have built LottieIsland for x86, x64, and ARM64 Release, and built/pack LottieIslandProjection for Release|AnyCPU. \ No newline at end of file diff --git a/LottieWinRT/LottieWinRT.csproj b/LottieWinRT/LottieWinRT.csproj index 012dbe2b7..601b42415 100644 --- a/LottieWinRT/LottieWinRT.csproj +++ b/LottieWinRT/LottieWinRT.csproj @@ -4,11 +4,15 @@ net7.0-windows10.0.19041.0 true enable - x64;x86;ARM64 + + AnyCPU;x64;x86;ARM64 true - + LottieWinRT - 0.1.1-prerelease + 0.1.1-prerelease.1 win10-x86;win10-x64;win10-arm64 10.0.19041.0 @@ -34,13 +38,6 @@ - - diff --git a/SimpleCSharpApp/App.xaml b/SimpleCSharpApp/App.xaml new file mode 100644 index 000000000..f3cf2bab0 --- /dev/null +++ b/SimpleCSharpApp/App.xaml @@ -0,0 +1,16 @@ + + + + + + + + + + + + diff --git a/SimpleCSharpApp/App.xaml.cs b/SimpleCSharpApp/App.xaml.cs new file mode 100644 index 000000000..26a9f12e9 --- /dev/null +++ b/SimpleCSharpApp/App.xaml.cs @@ -0,0 +1,51 @@ +using Microsoft.UI.Xaml; +using Microsoft.UI.Xaml.Controls; +using Microsoft.UI.Xaml.Controls.Primitives; +using Microsoft.UI.Xaml.Data; +using Microsoft.UI.Xaml.Input; +using Microsoft.UI.Xaml.Media; +using Microsoft.UI.Xaml.Navigation; +using Microsoft.UI.Xaml.Shapes; +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Runtime.InteropServices.WindowsRuntime; +using Windows.ApplicationModel; +using Windows.ApplicationModel.Activation; +using Windows.Foundation; +using Windows.Foundation.Collections; + +// To learn more about WinUI, the WinUI project structure, +// and more about our project templates, see: http://aka.ms/winui-project-info. + +namespace SimpleCSharpApp +{ + /// + /// Provides application-specific behavior to supplement the default Application class. + /// + public partial class App : Application + { + /// + /// Initializes the singleton application object. This is the first line of authored code + /// executed, and as such is the logical equivalent of main() or WinMain(). + /// + public App() + { + this.InitializeComponent(); + m_window = new Window(); + } + + /// + /// Invoked when the application is launched. + /// + /// Details about the launch request and process. + protected override void OnLaunched(Microsoft.UI.Xaml.LaunchActivatedEventArgs args) + { + m_window = new MainWindow(); + m_window.Activate(); + } + + private Window m_window; + } +} diff --git a/SimpleCSharpApp/Assets/LockScreenLogo.scale-200.png b/SimpleCSharpApp/Assets/LockScreenLogo.scale-200.png new file mode 100644 index 0000000000000000000000000000000000000000..7440f0d4bf7c7e26e4e36328738c68e624ee851e GIT binary patch literal 432 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezr3(FqV6|IEGZ*x-#9g>~Mkr+x6^F zy~CDX2QIMs&Gcs3RnRBoxBA!*(Mfw0KTCYuYk0WlEIV>qBmPl! zq4ukrvfADX@#p8fbLY(H47N+k`FZ(FZh?cDro7>{8mkBO3>^oaIx`3!Jl)Qq)HI!+ z(S=1{o~eT)&W^=Ea8C`-17(Jv5(nHFJ{dOjGdxLVkY_y6&S1whfuFI4MM0kF0f&cO zPDVpV%nz;Id$>+0Ga5e9625-JcI)oq=#Pa3p^>8BB}21BUw@eN!-6@w%X+^`+Vn?! zryu|3T>kVWNBYyBc=7Y6H#s1Ah!OI_nezW zXTqOdkv2Az6KKBV=$yHdF^R3Fqw(TZEoNSZX>reXJ#bwX42%f|Pgg&ebxsLQ010xn AssI20 literal 0 HcmV?d00001 diff --git a/SimpleCSharpApp/Assets/LottieLogo1.json b/SimpleCSharpApp/Assets/LottieLogo1.json new file mode 100644 index 000000000..cb637e3ea --- /dev/null +++ b/SimpleCSharpApp/Assets/LottieLogo1.json @@ -0,0 +1,7390 @@ +{ + "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/SimpleCSharpApp/Assets/SplashScreen.scale-200.png b/SimpleCSharpApp/Assets/SplashScreen.scale-200.png new file mode 100644 index 0000000000000000000000000000000000000000..32f486a86792a5e34cd9a8261b394c49b48f86be GIT binary patch literal 5372 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 literal 0 HcmV?d00001 diff --git a/SimpleCSharpApp/Assets/Square44x44Logo.scale-200.png b/SimpleCSharpApp/Assets/Square44x44Logo.scale-200.png new file mode 100644 index 0000000000000000000000000000000000000000..f713bba67f551ef91020b75716a4dc8ebd744b1c GIT binary patch literal 637 zcmeAS@N?(olHy`uVBq!ia0vp^5g^RL1|$oo8kjIJFu8cTIEGZ*dUI*J;2{SImxtDO zm%3!R$UazoY}x{$j0P5ABYXWr(l=jxJ6ps1W{tV=^>{Dl><3nv3A}sm=EZ)#l3`NR zpZda3^rNox*D1%NC98Z~L*6zipLw~Gxn&(Y-;KmJ+aR6eLabU-L#y8HW%7P-E_-VlLqIabbHPHKT*)fT@9iWJ7iWgOT9%0}Lrj>lztPxWq6sPw3pi z#-<=#$jjrP_DD*i!RLsn0mIA=>4~N)IMYWIf=j%-zuKCdMG%tHYot70D1| zvWa0wMhauW#S>1CnI_;>!1Q3zMA17@DOVq{MQ+{U7^a&yA+%dMCG;WNPV0i;w$tu; zX^b}UKziPM)(<;)ruW;-`)bBN+rQNM*Zs_>?n$|FVFo-e*PZb*@U7VAd+tHb4e?=Blc~}S6K)wL}r*Gf`BM#QB z+y>N$mCswb4d{^{S9v_!eQj4fTRMOwOCi?lSk9%<=vAz}jM-*PQtH@Odn1LZcd^j#o> hW$4xn+CT+ep9lJ{OAO?njobhL002ovPDHLkV1nYebbkN< literal 0 HcmV?d00001 diff --git a/SimpleCSharpApp/Assets/StoreLogo.png b/SimpleCSharpApp/Assets/StoreLogo.png new file mode 100644 index 0000000000000000000000000000000000000000..a4586f26bdf7841cad10f39cdffe2aca3af252c1 GIT binary patch literal 456 zcmeAS@N?(olHy`uVBq!ia0vp^Mj*_=1|;R|J2o;fF!p=8IEGZ*dUM0H=rDtTTVkd2 z(%lbKn@VS_lUaADVB&;Z6F#LM+mPsa?e>FnHo;HND^!P`-lX%BH~FOg%y&x+t*x!? zg$#_1A1kgsSvO(fw`bOmo;lrJX8byO1j^gf7qohR%mmt z@L)WX;>gqgK|tWJvQ5j;4;=gt4HXVKSMYRv5RhY5vS~TqfK_NAP*r{h!!g^BZ;w4r z7CGdsai)y;fJQc`7{Zc2b==h%o`Op$|bg6a&nL{*m7-=0>k4M4-PXlU;G-?%*(*g>iFt^ U$m#7DfHB12>FVdQ&MBb@0G`#n8vpc0sq%A~kJcD9FY~qQRMt?ZR3YyDZt}Od;|mgpc{2dv9AHF){kXU%k({ z=Y8JidEayHTkG@twPZ|U3_^%3ct-OgLSiFAqDN!|tbCX@c@?4P`2x*TMK!+Q4b?k0 ziW7!!KF6dPWcF<%I|iznM~`QJ_V7sHGV_D`dhgpA9Vd@&X}ErK+j~_rdv;Bp?OA@a zFXOk7eWOJe5NcK;6h$FaM&7JxNc#-@QTwzW6x#d_zmQNkz5) zPI;kh;3d;5UCJU+9a(cOxX(|edWoOiAEdGU#kPJ&xnc2||3vDbuhBCkj-pb0as$Zl z5;}4n=**n6(1g`JEtSy;SG6X;#-F~Oz3lESG2b5`j@wAwY4Yp<=4Xeb>iH=6aicF?DxD&q{`!&}ct zBI)aycwuobQAf&678Uf+Mmh-@9RUhyH~>?w0dixO0#jZjEc9R^=5NZw=|a(kcB?9^ zfnTiEFXp-q#B;Tn>(O%$A*ud^Rg&eVH6Y_5Y%!E39RR&s?XpG`gKwU!6FE1 z7X)DC7)*(5g}lh`4`{i~DZcWupZI`K)_4P)VE{@gc7@Xsd^86zl~_mOYH?I4!aGeX z^E(_=L6?PgveDQ+r%P@UISEXrkn`LHJZ##+!-anV>6h)IkKp;E@p8+3&(5%kS2)ld*J*rJccZM0iyaAx7+F~GW1UWFK&3X$PE1^}NH zgAG9ck5K!{07OwU@j@Do>TbH=CDEo#4m0cEyAuXy_<&jlzJVcKweSJ5 z&=q~iIn18$w8yb=rmEmHxVEUA^?RwnB?6Qlp1os8@*dWTGL2bhzZ!s*xqScR?EPL` zo(JwNdKUUYy7GtvZ3asXm)cgFvCx9EmAi;|w=a0iGiv%%VYKh`P0Wma4y`Xyx|T~( zAmfGbgbEEC7)j8b@WA@+5W3a61HJXC1dX@6_T|Czk0I0zBk%tnW~()VWITGI!`$c< gARL?UBrYYkwoDw4eo*CrzXGTrZ@;GF>596)00d&n@&Et; literal 0 HcmV?d00001 diff --git a/SimpleCSharpApp/MainWindow.xaml b/SimpleCSharpApp/MainWindow.xaml new file mode 100644 index 000000000..4208db9da --- /dev/null +++ b/SimpleCSharpApp/MainWindow.xaml @@ -0,0 +1,14 @@ + + + + + + + diff --git a/SimpleCSharpApp/MainWindow.xaml.cs b/SimpleCSharpApp/MainWindow.xaml.cs new file mode 100644 index 000000000..cba43f9e1 --- /dev/null +++ b/SimpleCSharpApp/MainWindow.xaml.cs @@ -0,0 +1,71 @@ +using CommunityToolkit.WinAppSDK.LottieIsland; +using Microsoft.UI.Xaml; +using Microsoft.UI.Xaml.Controls; +using Microsoft.UI.Xaml.Controls.Primitives; +using Microsoft.UI.Xaml.Data; +using Microsoft.UI.Xaml.Input; +using Microsoft.UI.Xaml.Media; +using Microsoft.UI.Xaml.Navigation; +using System.Diagnostics; +using Windows.Foundation; +using Windows.Foundation.Collections; + +// To learn more about WinUI, the WinUI project structure, +// and more about our project templates, see: http://aka.ms/winui-project-info. +namespace SimpleCSharpApp +{ + /// + /// An empty window that can be used on its own or navigated to within a Frame. + /// + public sealed partial class MainWindow : Window + { + private LottieWinRT.LottieVisualSourceWinRT? _lottieVisualSource; + private LottieContentIsland? _lottieContentIsland; + + public MainWindow() + { + this.InitializeComponent(); + } + + private void MyButton_Click(object sender, RoutedEventArgs e) + { + myButton.Content = "Clicked"; + _lottieVisualSource = LottieWinRT.LottieVisualSourceWinRT.CreateFromString("ms-appx:///Assets/LottieLogo1.json"); + if (_lottieVisualSource != null) + { + _lottieVisualSource.AnimatedVisualInvalidated += LottieVisualSource_AnimatedVisualInvalidated; + } + else + { + Debug.WriteLine("Failed to load LottieVisualSourceWinRT from file"); + } + + _lottieContentIsland = LottieContentIsland.Create(this.Compositor); + if (_lottieContentIsland != null) + { + Debug.WriteLine("LottieContentIsland created!"); + } + else + { + Debug.WriteLine("LottieContentIsland creation failed :("); + } + } + + private void LottieVisualSource_AnimatedVisualInvalidated(object? sender, object? e) + { + Debug.Assert(_lottieVisualSource != null); + { + object? diagnostics = null; + IAnimatedVisualFrameworkless? animatedVisual = _lottieVisualSource.TryCreateAnimatedVisual(this.Compositor, out diagnostics); + if (animatedVisual != null) + { + Debug.WriteLine("Lottie duration: " + animatedVisual.Duration); + } + else + { + Debug.WriteLine("Visual creation failed"); + } + } + } + } +} diff --git a/SimpleCSharpApp/Package.appxmanifest b/SimpleCSharpApp/Package.appxmanifest new file mode 100644 index 000000000..6bc7fc019 --- /dev/null +++ b/SimpleCSharpApp/Package.appxmanifest @@ -0,0 +1,51 @@ + + + + + + + + + + SimpleCSharpApp + getrou + Assets\StoreLogo.png + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SimpleCSharpApp/Properties/PublishProfiles/win10-arm64.pubxml b/SimpleCSharpApp/Properties/PublishProfiles/win10-arm64.pubxml new file mode 100644 index 000000000..a7fdd16b6 --- /dev/null +++ b/SimpleCSharpApp/Properties/PublishProfiles/win10-arm64.pubxml @@ -0,0 +1,20 @@ + + + + + FileSystem + ARM64 + win10-arm64 + bin\$(Configuration)\$(TargetFramework)\$(RuntimeIdentifier)\publish\ + true + False + False + True + + + \ No newline at end of file diff --git a/SimpleCSharpApp/Properties/PublishProfiles/win10-x64.pubxml b/SimpleCSharpApp/Properties/PublishProfiles/win10-x64.pubxml new file mode 100644 index 000000000..26ea7e55c --- /dev/null +++ b/SimpleCSharpApp/Properties/PublishProfiles/win10-x64.pubxml @@ -0,0 +1,20 @@ + + + + + FileSystem + x64 + win10-x64 + bin\$(Configuration)\$(TargetFramework)\$(RuntimeIdentifier)\publish\ + true + False + False + True + + + \ No newline at end of file diff --git a/SimpleCSharpApp/Properties/PublishProfiles/win10-x86.pubxml b/SimpleCSharpApp/Properties/PublishProfiles/win10-x86.pubxml new file mode 100644 index 000000000..34d14d4d4 --- /dev/null +++ b/SimpleCSharpApp/Properties/PublishProfiles/win10-x86.pubxml @@ -0,0 +1,20 @@ + + + + + FileSystem + x86 + win10-x86 + bin\$(Configuration)\$(TargetFramework)\$(RuntimeIdentifier)\publish\ + true + False + False + True + + + \ No newline at end of file diff --git a/SimpleCSharpApp/SimpleCSharpApp.csproj b/SimpleCSharpApp/SimpleCSharpApp.csproj new file mode 100644 index 000000000..9e149398f --- /dev/null +++ b/SimpleCSharpApp/SimpleCSharpApp.csproj @@ -0,0 +1,55 @@ + + + WinExe + net7.0-windows10.0.19041.0 + 10.0.17763.0 + SimpleCSharpApp + app.manifest + x86;x64;ARM64 + win10-x86;win10-x64;win10-arm64 + win10-$(Platform).pubxml + true + true + + + + + + + + + + + + + + + + + + + + + + + + + + + PreserveNewest + + + + + + true + + diff --git a/SimpleCSharpApp/app.manifest b/SimpleCSharpApp/app.manifest new file mode 100644 index 000000000..8b0a41749 --- /dev/null +++ b/SimpleCSharpApp/app.manifest @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + PerMonitorV2 + + + \ No newline at end of file diff --git a/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj b/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj index dead72613..95382c65b 100644 --- a/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj +++ b/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj @@ -160,14 +160,6 @@ - - - {9ba7a2f2-b723-458b-a575-3f726d271465} - - - {dda0d223-4b59-455d-a8b1-cfae59523ffb} - - $(Platform) @@ -194,6 +186,7 @@ + @@ -206,5 +199,6 @@ + \ No newline at end of file diff --git a/SimpleLottieIslandApp/packages.config b/SimpleLottieIslandApp/packages.config index 26a6e74b1..c35847c12 100644 --- a/SimpleLottieIslandApp/packages.config +++ b/SimpleLottieIslandApp/packages.config @@ -1,5 +1,6 @@  + From 457d0b737ac7e5d29d508b364221228622135462 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Sat, 20 Apr 2024 17:54:47 -0400 Subject: [PATCH 17/40] Clean up C# app and add comments --- SimpleCSharpApp/App.xaml.cs | 1 + SimpleCSharpApp/MainWindow.xaml.cs | 25 +++++++++++++++++-------- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/SimpleCSharpApp/App.xaml.cs b/SimpleCSharpApp/App.xaml.cs index 26a9f12e9..3fdf20039 100644 --- a/SimpleCSharpApp/App.xaml.cs +++ b/SimpleCSharpApp/App.xaml.cs @@ -33,6 +33,7 @@ public partial class App : Application public App() { this.InitializeComponent(); + // TODO - updating to WinAppSDK 1.5 made weird nullable errors in the template, m_window should be null m_window = new Window(); } diff --git a/SimpleCSharpApp/MainWindow.xaml.cs b/SimpleCSharpApp/MainWindow.xaml.cs index cba43f9e1..47a3c7883 100644 --- a/SimpleCSharpApp/MainWindow.xaml.cs +++ b/SimpleCSharpApp/MainWindow.xaml.cs @@ -30,24 +30,27 @@ public MainWindow() private void MyButton_Click(object sender, RoutedEventArgs e) { myButton.Content = "Clicked"; - _lottieVisualSource = LottieWinRT.LottieVisualSourceWinRT.CreateFromString("ms-appx:///Assets/LottieLogo1.json"); - if (_lottieVisualSource != null) + + // Create the LottieIsland + _lottieContentIsland = LottieContentIsland.Create(this.Compositor); + if (_lottieContentIsland != null) { - _lottieVisualSource.AnimatedVisualInvalidated += LottieVisualSource_AnimatedVisualInvalidated; + Debug.WriteLine("LottieContentIsland created!"); } else { - Debug.WriteLine("Failed to load LottieVisualSourceWinRT from file"); + Debug.WriteLine("LottieContentIsland creation failed :("); } - _lottieContentIsland = LottieContentIsland.Create(this.Compositor); - if (_lottieContentIsland != null) + // Load the Lottie from JSON + _lottieVisualSource = LottieWinRT.LottieVisualSourceWinRT.CreateFromString("ms-appx:///Assets/LottieLogo1.json"); + if (_lottieVisualSource != null) { - Debug.WriteLine("LottieContentIsland created!"); + _lottieVisualSource.AnimatedVisualInvalidated += LottieVisualSource_AnimatedVisualInvalidated; } else { - Debug.WriteLine("LottieContentIsland creation failed :("); + Debug.WriteLine("Failed to load LottieVisualSourceWinRT from file"); } } @@ -59,6 +62,12 @@ private void LottieVisualSource_AnimatedVisualInvalidated(object? sender, object IAnimatedVisualFrameworkless? animatedVisual = _lottieVisualSource.TryCreateAnimatedVisual(this.Compositor, out diagnostics); if (animatedVisual != null) { + // Set Lottie as the content of the ContentIsland + if (_lottieContentIsland != null) + { + _lottieContentIsland.AnimatedVisualSource = _lottieVisualSource; + } + // Testing accessing a property through the WinRT component Debug.WriteLine("Lottie duration: " + animatedVisual.Duration); } else From 10d8542b15fc2cd4e1175e234e0522f143ea0e71 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Wed, 24 Apr 2024 15:33:41 -0400 Subject: [PATCH 18/40] Remove C# sample app, change LottieIsland to take an AnimatedVisual --- Lottie-Windows.sln | 47 - .../Lottie-Windows-WinUI3.csproj | 2 +- ...ommunityToolkit.WinAppSDK.LottieIsland.idl | 7 +- LottieIsland/LottieContentIsland.cpp | 15 +- LottieIsland/LottieContentIsland.h | 5 +- LottieWinRT/LottieVisualSourceWinRT.cs | 2 +- SimpleCSharpApp/App.xaml | 16 - SimpleCSharpApp/App.xaml.cs | 52 - .../Assets/LockScreenLogo.scale-200.png | Bin 432 -> 0 bytes SimpleCSharpApp/Assets/LottieLogo1.json | 7390 ----------------- .../Assets/SplashScreen.scale-200.png | Bin 5372 -> 0 bytes .../Assets/Square150x150Logo.scale-200.png | Bin 1755 -> 0 bytes .../Assets/Square44x44Logo.scale-200.png | Bin 637 -> 0 bytes ...x44Logo.targetsize-24_altform-unplated.png | Bin 283 -> 0 bytes SimpleCSharpApp/Assets/StoreLogo.png | Bin 456 -> 0 bytes .../Assets/Wide310x150Logo.scale-200.png | Bin 2097 -> 0 bytes SimpleCSharpApp/MainWindow.xaml | 14 - SimpleCSharpApp/MainWindow.xaml.cs | 80 - SimpleCSharpApp/Package.appxmanifest | 51 - .../PublishProfiles/win10-arm64.pubxml | 20 - .../PublishProfiles/win10-x64.pubxml | 20 - .../PublishProfiles/win10-x86.pubxml | 20 - SimpleCSharpApp/SimpleCSharpApp.csproj | 55 - SimpleCSharpApp/app.manifest | 19 - .../SimpleLottieIslandApp.cpp | 5 +- .../SimpleLottieIslandApp.vcxproj | 10 +- SimpleLottieIslandApp/packages.config | 1 - .../Lottie/LottieVisualSourceFrameworkless.cs | 2 + 28 files changed, 24 insertions(+), 7809 deletions(-) delete mode 100644 SimpleCSharpApp/App.xaml delete mode 100644 SimpleCSharpApp/App.xaml.cs delete mode 100644 SimpleCSharpApp/Assets/LockScreenLogo.scale-200.png delete mode 100644 SimpleCSharpApp/Assets/LottieLogo1.json delete mode 100644 SimpleCSharpApp/Assets/SplashScreen.scale-200.png delete mode 100644 SimpleCSharpApp/Assets/Square150x150Logo.scale-200.png delete mode 100644 SimpleCSharpApp/Assets/Square44x44Logo.scale-200.png delete mode 100644 SimpleCSharpApp/Assets/Square44x44Logo.targetsize-24_altform-unplated.png delete mode 100644 SimpleCSharpApp/Assets/StoreLogo.png delete mode 100644 SimpleCSharpApp/Assets/Wide310x150Logo.scale-200.png delete mode 100644 SimpleCSharpApp/MainWindow.xaml delete mode 100644 SimpleCSharpApp/MainWindow.xaml.cs delete mode 100644 SimpleCSharpApp/Package.appxmanifest delete mode 100644 SimpleCSharpApp/Properties/PublishProfiles/win10-arm64.pubxml delete mode 100644 SimpleCSharpApp/Properties/PublishProfiles/win10-x64.pubxml delete mode 100644 SimpleCSharpApp/Properties/PublishProfiles/win10-x86.pubxml delete mode 100644 SimpleCSharpApp/SimpleCSharpApp.csproj delete mode 100644 SimpleCSharpApp/app.manifest diff --git a/Lottie-Windows.sln b/Lottie-Windows.sln index a6c8e4cae..65fd71130 100644 --- a/Lottie-Windows.sln +++ b/Lottie-Windows.sln @@ -180,8 +180,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LottieIslandProjection", "L EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SimpleLottieIslandApp", "SimpleLottieIslandApp\SimpleLottieIslandApp.vcxproj", "{350A5EC2-B156-4AAF-9D80-A864C76BA0C5}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SimpleCSharpApp", "SimpleCSharpApp\SimpleCSharpApp.csproj", "{FA721C42-3629-4D57-A232-5F5CA399A9DE}" -EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution BETA|Any CPU = BETA|Any CPU @@ -759,51 +757,6 @@ Global {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x86.ActiveCfg = Release|Win32 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x86.Build.0 = Release|Win32 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x86.Deploy.0 = Release|Win32 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|Any CPU.ActiveCfg = Debug|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|Any CPU.Build.0 = Debug|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|Any CPU.Deploy.0 = Debug|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|ARM.ActiveCfg = Debug|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|ARM.Build.0 = Debug|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|ARM.Deploy.0 = Debug|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|ARM64.ActiveCfg = Debug|ARM64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|ARM64.Build.0 = Debug|ARM64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|ARM64.Deploy.0 = Debug|ARM64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|x64.ActiveCfg = Debug|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|x64.Build.0 = Debug|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|x64.Deploy.0 = Debug|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|x86.ActiveCfg = Debug|x86 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|x86.Build.0 = Debug|x86 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.BETA|x86.Deploy.0 = Debug|x86 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|Any CPU.ActiveCfg = Debug|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|Any CPU.Build.0 = Debug|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|Any CPU.Deploy.0 = Debug|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|ARM.ActiveCfg = Debug|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|ARM.Build.0 = Debug|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|ARM.Deploy.0 = Debug|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|ARM64.Build.0 = Debug|ARM64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|ARM64.Deploy.0 = Debug|ARM64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|x64.ActiveCfg = Debug|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|x64.Build.0 = Debug|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|x64.Deploy.0 = Debug|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|x86.ActiveCfg = Debug|x86 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|x86.Build.0 = Debug|x86 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Debug|x86.Deploy.0 = Debug|x86 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|Any CPU.ActiveCfg = Release|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|Any CPU.Build.0 = Release|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|Any CPU.Deploy.0 = Release|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|ARM.ActiveCfg = Release|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|ARM.Build.0 = Release|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|ARM.Deploy.0 = Release|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|ARM64.ActiveCfg = Release|ARM64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|ARM64.Build.0 = Release|ARM64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|ARM64.Deploy.0 = Release|ARM64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|x64.ActiveCfg = Release|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|x64.Build.0 = Release|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|x64.Deploy.0 = Release|x64 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|x86.ActiveCfg = Release|x86 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|x86.Build.0 = Release|x86 - {FA721C42-3629-4D57-A232-5F5CA399A9DE}.Release|x86.Deploy.0 = Release|x86 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj b/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj index a8e12b6b6..4bb7bc772 100644 --- a/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj +++ b/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj @@ -16,7 +16,7 @@ - + diff --git a/LottieIsland/CommunityToolkit.WinAppSDK.LottieIsland.idl b/LottieIsland/CommunityToolkit.WinAppSDK.LottieIsland.idl index 41db83229..271d7252b 100644 --- a/LottieIsland/CommunityToolkit.WinAppSDK.LottieIsland.idl +++ b/LottieIsland/CommunityToolkit.WinAppSDK.LottieIsland.idl @@ -7,18 +7,13 @@ Windows.Foundation.Numerics.Vector2 Size{ get; }; }; - interface IAnimatedVisualSourceFrameworkless - { - IAnimatedVisualFrameworkless TryCreateAnimatedVisual(Microsoft.UI.Composition.Compositor compositor, out IInspectable diagnostics); - }; - runtimeclass LottieContentIsland { static LottieContentIsland Create(Microsoft.UI.Composition.Compositor compositor); Microsoft.UI.Content.ContentIsland Island{ get; }; - IAnimatedVisualSourceFrameworkless AnimatedVisualSource; + IAnimatedVisualFrameworkless AnimatedVisual; Windows.Foundation.TimeSpan Duration{ get; }; diff --git a/LottieIsland/LottieContentIsland.cpp b/LottieIsland/LottieContentIsland.cpp index 5f0532f2c..2c8b6a277 100644 --- a/LottieIsland/LottieContentIsland.cpp +++ b/LottieIsland/LottieContentIsland.cpp @@ -33,33 +33,30 @@ namespace winrt::CommunityToolkit::WinAppSDK::LottieIsland::implementation m_island.Close(); } - winrt::IAnimatedVisualSourceFrameworkless LottieContentIsland::AnimatedVisualSource() const + winrt::IAnimatedVisualFrameworkless LottieContentIsland::AnimatedVisual() const { // Return the AnimatedVisualSource - return m_animatedVisualSource; + return m_animatedVisual; } - void LottieContentIsland::AnimatedVisualSource(winrt::IAnimatedVisualSourceFrameworkless const& value) + void LottieContentIsland::AnimatedVisual(winrt::IAnimatedVisualFrameworkless const& value) { - if (m_animatedVisualSource == value) + if (m_animatedVisual == value) { return; } - if (m_animatedVisualSource != nullptr) + if (m_animatedVisual != nullptr) { StopAnimation(); m_rootVisual.Children().RemoveAll(); m_animatedVisual = nullptr; - m_animatedVisualSource = nullptr; } if (value != nullptr) { // Set the AnimatedVisualSource - m_animatedVisualSource = value; - winrt::Windows::Foundation::IInspectable diagnostics; - m_animatedVisual = m_animatedVisualSource.TryCreateAnimatedVisual(m_compositor, diagnostics); + m_animatedVisual = value; // Set up lottie winrt::Visual lottieVisual = m_animatedVisual.RootVisual(); diff --git a/LottieIsland/LottieContentIsland.h b/LottieIsland/LottieContentIsland.h index aeebfc766..5d987fd78 100644 --- a/LottieIsland/LottieContentIsland.h +++ b/LottieIsland/LottieContentIsland.h @@ -24,8 +24,8 @@ namespace winrt::CommunityToolkit::WinAppSDK::LottieIsland::implementation return m_island; } - winrt::IAnimatedVisualSourceFrameworkless AnimatedVisualSource() const; - void AnimatedVisualSource(const winrt::IAnimatedVisualSourceFrameworkless& source); + winrt::IAnimatedVisualFrameworkless AnimatedVisual() const; + void AnimatedVisual(const winrt::IAnimatedVisualFrameworkless& source); winrt::Windows::Foundation::TimeSpan Duration() const; @@ -79,7 +79,6 @@ namespace winrt::CommunityToolkit::WinAppSDK::LottieIsland::implementation winrt::ContainerVisual m_rootVisual{ nullptr }; winrt::ContentIsland m_island{ nullptr }; winrt::InputPointerSource m_inputPointerSource{ nullptr }; - winrt::IAnimatedVisualSourceFrameworkless m_animatedVisualSource{ nullptr }; winrt::IAnimatedVisualFrameworkless m_animatedVisual{ nullptr }; winrt::CompositionPropertySet m_progressPropertySet{ nullptr }; winrt::AnimationController m_animationController{ nullptr }; diff --git a/LottieWinRT/LottieVisualSourceWinRT.cs b/LottieWinRT/LottieVisualSourceWinRT.cs index 7f55dbaab..d246718c1 100644 --- a/LottieWinRT/LottieVisualSourceWinRT.cs +++ b/LottieWinRT/LottieVisualSourceWinRT.cs @@ -10,7 +10,7 @@ namespace LottieWinRT { - public sealed class LottieVisualSourceWinRT : LottieIsland.IAnimatedVisualSourceFrameworkless + public sealed class LottieVisualSourceWinRT { public event EventHandler? AnimatedVisualInvalidated; diff --git a/SimpleCSharpApp/App.xaml b/SimpleCSharpApp/App.xaml deleted file mode 100644 index f3cf2bab0..000000000 --- a/SimpleCSharpApp/App.xaml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - diff --git a/SimpleCSharpApp/App.xaml.cs b/SimpleCSharpApp/App.xaml.cs deleted file mode 100644 index 3fdf20039..000000000 --- a/SimpleCSharpApp/App.xaml.cs +++ /dev/null @@ -1,52 +0,0 @@ -using Microsoft.UI.Xaml; -using Microsoft.UI.Xaml.Controls; -using Microsoft.UI.Xaml.Controls.Primitives; -using Microsoft.UI.Xaml.Data; -using Microsoft.UI.Xaml.Input; -using Microsoft.UI.Xaml.Media; -using Microsoft.UI.Xaml.Navigation; -using Microsoft.UI.Xaml.Shapes; -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Runtime.InteropServices.WindowsRuntime; -using Windows.ApplicationModel; -using Windows.ApplicationModel.Activation; -using Windows.Foundation; -using Windows.Foundation.Collections; - -// To learn more about WinUI, the WinUI project structure, -// and more about our project templates, see: http://aka.ms/winui-project-info. - -namespace SimpleCSharpApp -{ - /// - /// Provides application-specific behavior to supplement the default Application class. - /// - public partial class App : Application - { - /// - /// Initializes the singleton application object. This is the first line of authored code - /// executed, and as such is the logical equivalent of main() or WinMain(). - /// - public App() - { - this.InitializeComponent(); - // TODO - updating to WinAppSDK 1.5 made weird nullable errors in the template, m_window should be null - m_window = new Window(); - } - - /// - /// Invoked when the application is launched. - /// - /// Details about the launch request and process. - protected override void OnLaunched(Microsoft.UI.Xaml.LaunchActivatedEventArgs args) - { - m_window = new MainWindow(); - m_window.Activate(); - } - - private Window m_window; - } -} diff --git a/SimpleCSharpApp/Assets/LockScreenLogo.scale-200.png b/SimpleCSharpApp/Assets/LockScreenLogo.scale-200.png deleted file mode 100644 index 7440f0d4bf7c7e26e4e36328738c68e624ee851e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 432 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezr3(FqV6|IEGZ*x-#9g>~Mkr+x6^F zy~CDX2QIMs&Gcs3RnRBoxBA!*(Mfw0KTCYuYk0WlEIV>qBmPl! zq4ukrvfADX@#p8fbLY(H47N+k`FZ(FZh?cDro7>{8mkBO3>^oaIx`3!Jl)Qq)HI!+ z(S=1{o~eT)&W^=Ea8C`-17(Jv5(nHFJ{dOjGdxLVkY_y6&S1whfuFI4MM0kF0f&cO zPDVpV%nz;Id$>+0Ga5e9625-JcI)oq=#Pa3p^>8BB}21BUw@eN!-6@w%X+^`+Vn?! zryu|3T>kVWNBYyBc=7Y6H#s1Ah!OI_nezW zXTqOdkv2Az6KKBV=$yHdF^R3Fqw(TZEoNSZX>reXJ#bwX42%f|Pgg&ebxsLQ010xn AssI20 diff --git a/SimpleCSharpApp/Assets/LottieLogo1.json b/SimpleCSharpApp/Assets/LottieLogo1.json deleted file mode 100644 index cb637e3ea..000000000 --- a/SimpleCSharpApp/Assets/LottieLogo1.json +++ /dev/null @@ -1,7390 +0,0 @@ -{ - "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/SimpleCSharpApp/Assets/SplashScreen.scale-200.png b/SimpleCSharpApp/Assets/SplashScreen.scale-200.png deleted file mode 100644 index 32f486a86792a5e34cd9a8261b394c49b48f86be..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5372 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 diff --git a/SimpleCSharpApp/Assets/Square44x44Logo.scale-200.png b/SimpleCSharpApp/Assets/Square44x44Logo.scale-200.png deleted file mode 100644 index f713bba67f551ef91020b75716a4dc8ebd744b1c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 637 zcmeAS@N?(olHy`uVBq!ia0vp^5g^RL1|$oo8kjIJFu8cTIEGZ*dUI*J;2{SImxtDO zm%3!R$UazoY}x{$j0P5ABYXWr(l=jxJ6ps1W{tV=^>{Dl><3nv3A}sm=EZ)#l3`NR zpZda3^rNox*D1%NC98Z~L*6zipLw~Gxn&(Y-;KmJ+aR6eLabU-L#y8HW%7P-E_-VlLqIabbHPHKT*)fT@9iWJ7iWgOT9%0}Lrj>lztPxWq6sPw3pi z#-<=#$jjrP_DD*i!RLsn0mIA=>4~N)IMYWIf=j%-zuKCdMG%tHYot70D1| zvWa0wMhauW#S>1CnI_;>!1Q3zMA17@DOVq{MQ+{U7^a&yA+%dMCG;WNPV0i;w$tu; zX^b}UKziPM)(<;)ruW;-`)bBN+rQNM*Zs_>?n$|FVFo-e*PZb*@U7VAd+tHb4e?=Blc~}S6K)wL}r*Gf`BM#QB z+y>N$mCswb4d{^{S9v_!eQj4fTRMOwOCi?lSk9%<=vAz}jM-*PQtH@Odn1LZcd^j#o> hW$4xn+CT+ep9lJ{OAO?njobhL002ovPDHLkV1nYebbkN< diff --git a/SimpleCSharpApp/Assets/StoreLogo.png b/SimpleCSharpApp/Assets/StoreLogo.png deleted file mode 100644 index a4586f26bdf7841cad10f39cdffe2aca3af252c1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 456 zcmeAS@N?(olHy`uVBq!ia0vp^Mj*_=1|;R|J2o;fF!p=8IEGZ*dUM0H=rDtTTVkd2 z(%lbKn@VS_lUaADVB&;Z6F#LM+mPsa?e>FnHo;HND^!P`-lX%BH~FOg%y&x+t*x!? zg$#_1A1kgsSvO(fw`bOmo;lrJX8byO1j^gf7qohR%mmt z@L)WX;>gqgK|tWJvQ5j;4;=gt4HXVKSMYRv5RhY5vS~TqfK_NAP*r{h!!g^BZ;w4r z7CGdsai)y;fJQc`7{Zc2b==h%o`Op$|bg6a&nL{*m7-=0>k4M4-PXlU;G-?%*(*g>iFt^ U$m#7DfHB12>FVdQ&MBb@0G`#n8vpc0sq%A~kJcD9FY~qQRMt?ZR3YyDZt}Od;|mgpc{2dv9AHF){kXU%k({ z=Y8JidEayHTkG@twPZ|U3_^%3ct-OgLSiFAqDN!|tbCX@c@?4P`2x*TMK!+Q4b?k0 ziW7!!KF6dPWcF<%I|iznM~`QJ_V7sHGV_D`dhgpA9Vd@&X}ErK+j~_rdv;Bp?OA@a zFXOk7eWOJe5NcK;6h$FaM&7JxNc#-@QTwzW6x#d_zmQNkz5) zPI;kh;3d;5UCJU+9a(cOxX(|edWoOiAEdGU#kPJ&xnc2||3vDbuhBCkj-pb0as$Zl z5;}4n=**n6(1g`JEtSy;SG6X;#-F~Oz3lESG2b5`j@wAwY4Yp<=4Xeb>iH=6aicF?DxD&q{`!&}ct zBI)aycwuobQAf&678Uf+Mmh-@9RUhyH~>?w0dixO0#jZjEc9R^=5NZw=|a(kcB?9^ zfnTiEFXp-q#B;Tn>(O%$A*ud^Rg&eVH6Y_5Y%!E39RR&s?XpG`gKwU!6FE1 z7X)DC7)*(5g}lh`4`{i~DZcWupZI`K)_4P)VE{@gc7@Xsd^86zl~_mOYH?I4!aGeX z^E(_=L6?PgveDQ+r%P@UISEXrkn`LHJZ##+!-anV>6h)IkKp;E@p8+3&(5%kS2)ld*J*rJccZM0iyaAx7+F~GW1UWFK&3X$PE1^}NH zgAG9ck5K!{07OwU@j@Do>TbH=CDEo#4m0cEyAuXy_<&jlzJVcKweSJ5 z&=q~iIn18$w8yb=rmEmHxVEUA^?RwnB?6Qlp1os8@*dWTGL2bhzZ!s*xqScR?EPL` zo(JwNdKUUYy7GtvZ3asXm)cgFvCx9EmAi;|w=a0iGiv%%VYKh`P0Wma4y`Xyx|T~( zAmfGbgbEEC7)j8b@WA@+5W3a61HJXC1dX@6_T|Czk0I0zBk%tnW~()VWITGI!`$c< gARL?UBrYYkwoDw4eo*CrzXGTrZ@;GF>596)00d&n@&Et; diff --git a/SimpleCSharpApp/MainWindow.xaml b/SimpleCSharpApp/MainWindow.xaml deleted file mode 100644 index 4208db9da..000000000 --- a/SimpleCSharpApp/MainWindow.xaml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - diff --git a/SimpleCSharpApp/MainWindow.xaml.cs b/SimpleCSharpApp/MainWindow.xaml.cs deleted file mode 100644 index 47a3c7883..000000000 --- a/SimpleCSharpApp/MainWindow.xaml.cs +++ /dev/null @@ -1,80 +0,0 @@ -using CommunityToolkit.WinAppSDK.LottieIsland; -using Microsoft.UI.Xaml; -using Microsoft.UI.Xaml.Controls; -using Microsoft.UI.Xaml.Controls.Primitives; -using Microsoft.UI.Xaml.Data; -using Microsoft.UI.Xaml.Input; -using Microsoft.UI.Xaml.Media; -using Microsoft.UI.Xaml.Navigation; -using System.Diagnostics; -using Windows.Foundation; -using Windows.Foundation.Collections; - -// To learn more about WinUI, the WinUI project structure, -// and more about our project templates, see: http://aka.ms/winui-project-info. -namespace SimpleCSharpApp -{ - /// - /// An empty window that can be used on its own or navigated to within a Frame. - /// - public sealed partial class MainWindow : Window - { - private LottieWinRT.LottieVisualSourceWinRT? _lottieVisualSource; - private LottieContentIsland? _lottieContentIsland; - - public MainWindow() - { - this.InitializeComponent(); - } - - private void MyButton_Click(object sender, RoutedEventArgs e) - { - myButton.Content = "Clicked"; - - // Create the LottieIsland - _lottieContentIsland = LottieContentIsland.Create(this.Compositor); - if (_lottieContentIsland != null) - { - Debug.WriteLine("LottieContentIsland created!"); - } - else - { - Debug.WriteLine("LottieContentIsland creation failed :("); - } - - // Load the Lottie from JSON - _lottieVisualSource = LottieWinRT.LottieVisualSourceWinRT.CreateFromString("ms-appx:///Assets/LottieLogo1.json"); - if (_lottieVisualSource != null) - { - _lottieVisualSource.AnimatedVisualInvalidated += LottieVisualSource_AnimatedVisualInvalidated; - } - else - { - Debug.WriteLine("Failed to load LottieVisualSourceWinRT from file"); - } - } - - private void LottieVisualSource_AnimatedVisualInvalidated(object? sender, object? e) - { - Debug.Assert(_lottieVisualSource != null); - { - object? diagnostics = null; - IAnimatedVisualFrameworkless? animatedVisual = _lottieVisualSource.TryCreateAnimatedVisual(this.Compositor, out diagnostics); - if (animatedVisual != null) - { - // Set Lottie as the content of the ContentIsland - if (_lottieContentIsland != null) - { - _lottieContentIsland.AnimatedVisualSource = _lottieVisualSource; - } - // Testing accessing a property through the WinRT component - Debug.WriteLine("Lottie duration: " + animatedVisual.Duration); - } - else - { - Debug.WriteLine("Visual creation failed"); - } - } - } - } -} diff --git a/SimpleCSharpApp/Package.appxmanifest b/SimpleCSharpApp/Package.appxmanifest deleted file mode 100644 index 6bc7fc019..000000000 --- a/SimpleCSharpApp/Package.appxmanifest +++ /dev/null @@ -1,51 +0,0 @@ - - - - - - - - - - SimpleCSharpApp - getrou - Assets\StoreLogo.png - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/SimpleCSharpApp/Properties/PublishProfiles/win10-arm64.pubxml b/SimpleCSharpApp/Properties/PublishProfiles/win10-arm64.pubxml deleted file mode 100644 index a7fdd16b6..000000000 --- a/SimpleCSharpApp/Properties/PublishProfiles/win10-arm64.pubxml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - FileSystem - ARM64 - win10-arm64 - bin\$(Configuration)\$(TargetFramework)\$(RuntimeIdentifier)\publish\ - true - False - False - True - - - \ No newline at end of file diff --git a/SimpleCSharpApp/Properties/PublishProfiles/win10-x64.pubxml b/SimpleCSharpApp/Properties/PublishProfiles/win10-x64.pubxml deleted file mode 100644 index 26ea7e55c..000000000 --- a/SimpleCSharpApp/Properties/PublishProfiles/win10-x64.pubxml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - FileSystem - x64 - win10-x64 - bin\$(Configuration)\$(TargetFramework)\$(RuntimeIdentifier)\publish\ - true - False - False - True - - - \ No newline at end of file diff --git a/SimpleCSharpApp/Properties/PublishProfiles/win10-x86.pubxml b/SimpleCSharpApp/Properties/PublishProfiles/win10-x86.pubxml deleted file mode 100644 index 34d14d4d4..000000000 --- a/SimpleCSharpApp/Properties/PublishProfiles/win10-x86.pubxml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - FileSystem - x86 - win10-x86 - bin\$(Configuration)\$(TargetFramework)\$(RuntimeIdentifier)\publish\ - true - False - False - True - - - \ No newline at end of file diff --git a/SimpleCSharpApp/SimpleCSharpApp.csproj b/SimpleCSharpApp/SimpleCSharpApp.csproj deleted file mode 100644 index 9e149398f..000000000 --- a/SimpleCSharpApp/SimpleCSharpApp.csproj +++ /dev/null @@ -1,55 +0,0 @@ - - - WinExe - net7.0-windows10.0.19041.0 - 10.0.17763.0 - SimpleCSharpApp - app.manifest - x86;x64;ARM64 - win10-x86;win10-x64;win10-arm64 - win10-$(Platform).pubxml - true - true - - - - - - - - - - - - - - - - - - - - - - - - - - - PreserveNewest - - - - - - true - - diff --git a/SimpleCSharpApp/app.manifest b/SimpleCSharpApp/app.manifest deleted file mode 100644 index 8b0a41749..000000000 --- a/SimpleCSharpApp/app.manifest +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - - - - - - - PerMonitorV2 - - - \ No newline at end of file diff --git a/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp b/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp index 56746db97..151168901 100644 --- a/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp +++ b/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp @@ -208,9 +208,10 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { windowInfo->Compositor.DispatcherQueue().TryEnqueue([windowInfo, lottieVisualSource]() { - windowInfo->LottieIsland.AnimatedVisualSource(lottieVisualSource.as()); + winrt::Windows::Foundation::IInspectable diagnostics; + winrt::IAnimatedVisualFrameworkless animatedVisual = lottieVisualSource.TryCreateAnimatedVisual(windowInfo->Compositor, diagnostics); + windowInfo->LottieIsland.AnimatedVisual(animatedVisual.as()); }); - }); windowInfo->LottieIsland.PointerPressed([=](auto&...) { diff --git a/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj b/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj index 95382c65b..dead72613 100644 --- a/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj +++ b/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj @@ -160,6 +160,14 @@ + + + {9ba7a2f2-b723-458b-a575-3f726d271465} + + + {dda0d223-4b59-455d-a8b1-cfae59523ffb} + + $(Platform) @@ -186,7 +194,6 @@ - @@ -199,6 +206,5 @@ - \ No newline at end of file diff --git a/SimpleLottieIslandApp/packages.config b/SimpleLottieIslandApp/packages.config index c35847c12..26a6e74b1 100644 --- a/SimpleLottieIslandApp/packages.config +++ b/SimpleLottieIslandApp/packages.config @@ -1,6 +1,5 @@  - diff --git a/source/Lottie/LottieVisualSourceFrameworkless.cs b/source/Lottie/LottieVisualSourceFrameworkless.cs index 0e6aef5c1..94b09ca4f 100644 --- a/source/Lottie/LottieVisualSourceFrameworkless.cs +++ b/source/Lottie/LottieVisualSourceFrameworkless.cs @@ -4,6 +4,8 @@ #nullable enable +#define WINAPPSDK + #if WINAPPSDK using System; From ddcc1a68138098d79f6ea6e91ff787ba4ee4bbe0 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Wed, 24 Apr 2024 17:36:34 -0400 Subject: [PATCH 19/40] Fixed LottieWinRT x86 project dependencies --- Lottie-Windows.sln | 3 +++ LottieWinRT/LottieWinRT.csproj | 9 ++++++--- build/build.cake | 16 +++++++++++++++- source/Lottie/LottieVisualSourceFrameworkless.cs | 4 +--- 4 files changed, 25 insertions(+), 7 deletions(-) diff --git a/Lottie-Windows.sln b/Lottie-Windows.sln index 65fd71130..e7f522eae 100644 --- a/Lottie-Windows.sln +++ b/Lottie-Windows.sln @@ -173,6 +173,9 @@ EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LottieSamples", "LottieSamples\LottieSamples.csproj", "{6AB50ED0-6273-4919-9ADE-50195664EF15}" EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LottieWinRT", "LottieWinRT\LottieWinRT.csproj", "{DDA0D223-4B59-455D-A8B1-CFAE59523FFB}" + ProjectSection(ProjectDependencies) = postProject + {9BA7A2F2-B723-458B-A575-3F726D271465} = {9BA7A2F2-B723-458B-A575-3F726D271465} + EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LottieIsland", "LottieIsland\LottieIsland.vcxproj", "{9BA7A2F2-B723-458B-A575-3F726D271465}" EndProject diff --git a/LottieWinRT/LottieWinRT.csproj b/LottieWinRT/LottieWinRT.csproj index 601b42415..22c8e8d55 100644 --- a/LottieWinRT/LottieWinRT.csproj +++ b/LottieWinRT/LottieWinRT.csproj @@ -8,7 +8,7 @@ However, AnyCPU is not supported for C++ projects consuming a C# WinRT component via project references. So we build for individual platforms as well. --> - AnyCPU;x64;x86;ARM64 + x64;x86;ARM64 true LottieWinRT @@ -38,8 +38,11 @@ - - + + + + + diff --git a/build/build.cake b/build/build.cake index 175e3392a..d5065b7db 100644 --- a/build/build.cake +++ b/build/build.cake @@ -64,9 +64,24 @@ void MSBuildSolution( return settings; } + // Build LottieIsland, since some Any CPU projects depend on it + // Build all platforms for native projects. + foreach (var platformTarget in new [] + { + PlatformTarget.x64, + PlatformTarget.x86, + PlatformTarget.ARM64 + }) + { + var msBuildSettings = SetProperties(SettingsWithTarget(platformTarget).SetConfiguration(configuration)); + msBuildSettings.PlatformTarget = platformTarget; + MSBuild($"{baseDir}/LottieIsland/LottieIsland.vcxproj", msBuildSettings); + } + // Build one native and one MSIL version of each project. foreach (var platformTarget in new [] { + PlatformTarget.x64, PlatformTarget.x86, PlatformTarget.MSIL, }) @@ -86,7 +101,6 @@ void MSBuildSolution( { var msBuildSettings = SetProperties(SettingsWithTarget(platformTarget).SetConfiguration(configuration)); msBuildSettings.PlatformTarget = platformTarget; - MSBuild($"{baseDir}/LottieIsland/LottieIsland.vcxproj", msBuildSettings); MSBuild($"{baseDir}/LottieWinRT/LottieWinRT.csproj", msBuildSettings); MSBuild($"{baseDir}/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj", msBuildSettings); } diff --git a/source/Lottie/LottieVisualSourceFrameworkless.cs b/source/Lottie/LottieVisualSourceFrameworkless.cs index 94b09ca4f..772d3b08f 100644 --- a/source/Lottie/LottieVisualSourceFrameworkless.cs +++ b/source/Lottie/LottieVisualSourceFrameworkless.cs @@ -4,8 +4,6 @@ #nullable enable -#define WINAPPSDK - #if WINAPPSDK using System; @@ -19,7 +17,7 @@ using Windows.Foundation.Metadata; using Windows.Storage; using Windows.Storage.Streams; -using WinRT; +using static CommunityToolkit.WinUI.Lottie.LottieData.Serialization.LottieCompositionReader; #if WINAPPSDK using Microsoft.UI.Composition; From 144a38972157b9df918b4d3bda4d2866bfc2a367 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Wed, 24 Apr 2024 21:15:48 -0400 Subject: [PATCH 20/40] Fixed sample app Release configuration --- LottieIsland/Directory.Build.props | 3 --- LottieWinRT/Directory.Build.props | 10 ------- LottieWinRT/LottieVisualSourceWinRT.cs | 8 +++--- LottieWinRT/LottieWinRT.csproj | 8 +++--- SimpleLottieIslandApp/Directory.Build.props | 12 ++++----- .../SimpleLottieIslandApp.vcxproj | 26 ++++++++++--------- build/build.cake | 2 +- 7 files changed, 29 insertions(+), 40 deletions(-) delete mode 100644 LottieWinRT/Directory.Build.props diff --git a/LottieIsland/Directory.Build.props b/LottieIsland/Directory.Build.props index d515eb324..22b90cca1 100644 --- a/LottieIsland/Directory.Build.props +++ b/LottieIsland/Directory.Build.props @@ -3,8 +3,5 @@ $([MSBuild]::NormalizeDirectory('$(SolutionDir)', '_build', '$(Platform)', '$(Configuration)')) $([MSBuild]::NormalizeDirectory('$(BuildOutDir)', '$(MSBuildProjectName)', 'bin')) $([MSBuild]::NormalizeDirectory('$(BuildOutDir)', '$(MSBuildProjectName)', 'obj')) - $([MSBuild]::NormalizeDirectory('$(BuildOutDir)', '$(MSBuildProjectName)', 'bin')) - $([MSBuild]::NormalizeDirectory('$(BuildOutDir)', '$(MSBuildProjectName)', 'obj')) - $(BaseIntermediateOutputPath) \ No newline at end of file diff --git a/LottieWinRT/Directory.Build.props b/LottieWinRT/Directory.Build.props deleted file mode 100644 index 4a4e71a6a..000000000 --- a/LottieWinRT/Directory.Build.props +++ /dev/null @@ -1,10 +0,0 @@ - - - - - \ No newline at end of file diff --git a/LottieWinRT/LottieVisualSourceWinRT.cs b/LottieWinRT/LottieVisualSourceWinRT.cs index d246718c1..71d367762 100644 --- a/LottieWinRT/LottieVisualSourceWinRT.cs +++ b/LottieWinRT/LottieVisualSourceWinRT.cs @@ -60,12 +60,12 @@ public Uri? UriSource } /// - /// Implements . - /// WinRT Wrapper around for use by C++ or non-WinUI applications. + /// Implements . + /// WinRT Wrapper around for use by C++ or non-WinUI applications. /// - /// The that can be used as a factory for the resulting . + /// The that can be used as a factory for the resulting . /// An optional object that may provide extra information about the result. - /// An . + /// An . public LottieIsland.IAnimatedVisualFrameworkless? TryCreateAnimatedVisual( Compositor compositor, out object? diagnostics) diff --git a/LottieWinRT/LottieWinRT.csproj b/LottieWinRT/LottieWinRT.csproj index 22c8e8d55..7111e7702 100644 --- a/LottieWinRT/LottieWinRT.csproj +++ b/LottieWinRT/LottieWinRT.csproj @@ -8,7 +8,7 @@ However, AnyCPU is not supported for C++ projects consuming a C# WinRT component via project references. So we build for individual platforms as well. --> - x64;x86;ARM64 + Any CPU;x64;x86;ARM64 true LottieWinRT @@ -35,13 +35,13 @@ - + - + - + diff --git a/SimpleLottieIslandApp/Directory.Build.props b/SimpleLottieIslandApp/Directory.Build.props index 22b90cca1..09314652d 100644 --- a/SimpleLottieIslandApp/Directory.Build.props +++ b/SimpleLottieIslandApp/Directory.Build.props @@ -1,7 +1,7 @@ - - - $([MSBuild]::NormalizeDirectory('$(SolutionDir)', '_build', '$(Platform)', '$(Configuration)')) - $([MSBuild]::NormalizeDirectory('$(BuildOutDir)', '$(MSBuildProjectName)', 'bin')) - $([MSBuild]::NormalizeDirectory('$(BuildOutDir)', '$(MSBuildProjectName)', 'obj')) - + + + $([MSBuild]::NormalizeDirectory('$(SolutionDir)', '_build', '$(Platform)', '$(Configuration)')) + $([MSBuild]::NormalizeDirectory('$(BuildOutDir)', '$(MSBuildProjectName)', 'bin')) + $([MSBuild]::NormalizeDirectory('$(BuildOutDir)', '$(MSBuildProjectName)', 'obj')) + \ No newline at end of file diff --git a/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj b/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj index dead72613..1e8315054 100644 --- a/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj +++ b/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj @@ -65,10 +65,12 @@ true + true false true + false @@ -96,28 +98,26 @@ Level4 true true - _DEBUG;_WINDOWS;%(PreprocessorDefinitions) + _WINDOWS;%(PreprocessorDefinitions) true Windows - true + - + - DEBUG;%(PreprocessorDefinitions) + _DEBUG;%(PreprocessorDefinitions) - true - true NDEBUG;%(PreprocessorDefinitions) @@ -175,19 +175,21 @@ x64 - + - - - + --> + + + + + diff --git a/build/build.cake b/build/build.cake index d5065b7db..52444a10f 100644 --- a/build/build.cake +++ b/build/build.cake @@ -10,7 +10,7 @@ using System.Text.RegularExpressions; ////////////////////////////////////////////////////////////////////// var target = Argument("target", "Default"); -var configuration = Argument("configuration", "Release"); +var configuration = Argument("configuration", "Debug"); ////////////////////////////////////////////////////////////////////// // VERSIONS OF TOOLS TO USE From af22bdc4eec8ac5168a3a3b10ee16ced311f1cb6 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Wed, 24 Apr 2024 22:45:30 -0400 Subject: [PATCH 21/40] Can build from command line: msbuild .\Lottie-Windows.sln /p:Platform='x86' /p:Configuration='Release' /target:'SimpleLottieIslandApp' --- .../LottieIslandProjection.csproj | 1 + LottieWinRT/LottieWinRT.csproj | 7 +++++ build/build.cake | 31 ++----------------- 3 files changed, 10 insertions(+), 29 deletions(-) diff --git a/LottieIslandProjection/LottieIslandProjection.csproj b/LottieIslandProjection/LottieIslandProjection.csproj index 5fb85ab56..a52136285 100644 --- a/LottieIslandProjection/LottieIslandProjection.csproj +++ b/LottieIslandProjection/LottieIslandProjection.csproj @@ -1,6 +1,7 @@  + LottieIslandProjection net7.0-windows10.0.19041.0 CommunityToolkit.WinAppSDK.LottieIsland diff --git a/LottieWinRT/LottieWinRT.csproj b/LottieWinRT/LottieWinRT.csproj index 7111e7702..7496b59e6 100644 --- a/LottieWinRT/LottieWinRT.csproj +++ b/LottieWinRT/LottieWinRT.csproj @@ -45,4 +45,11 @@ + + diff --git a/build/build.cake b/build/build.cake index 52444a10f..a64816b36 100644 --- a/build/build.cake +++ b/build/build.cake @@ -10,7 +10,7 @@ using System.Text.RegularExpressions; ////////////////////////////////////////////////////////////////////// var target = Argument("target", "Default"); -var configuration = Argument("configuration", "Debug"); +var configuration = Argument("configuration", "Release"); ////////////////////////////////////////////////////////////////////// // VERSIONS OF TOOLS TO USE @@ -64,25 +64,12 @@ void MSBuildSolution( return settings; } - // Build LottieIsland, since some Any CPU projects depend on it - // Build all platforms for native projects. - foreach (var platformTarget in new [] - { - PlatformTarget.x64, - PlatformTarget.x86, - PlatformTarget.ARM64 - }) - { - var msBuildSettings = SetProperties(SettingsWithTarget(platformTarget).SetConfiguration(configuration)); - msBuildSettings.PlatformTarget = platformTarget; - MSBuild($"{baseDir}/LottieIsland/LottieIsland.vcxproj", msBuildSettings); - } - // Build one native and one MSIL version of each project. foreach (var platformTarget in new [] { PlatformTarget.x64, PlatformTarget.x86, + PlatformTarget.ARM64 PlatformTarget.MSIL, }) { @@ -90,20 +77,6 @@ void MSBuildSolution( msBuildSettings.PlatformTarget = platformTarget; MSBuild($"{baseDir}/Lottie-Windows.sln", msBuildSettings); } - - // Build all platforms for native projects. - foreach (var platformTarget in new [] - { - PlatformTarget.x86, - PlatformTarget.x64, - PlatformTarget.ARM64 - }) - { - var msBuildSettings = SetProperties(SettingsWithTarget(platformTarget).SetConfiguration(configuration)); - msBuildSettings.PlatformTarget = platformTarget; - MSBuild($"{baseDir}/LottieWinRT/LottieWinRT.csproj", msBuildSettings); - MSBuild($"{baseDir}/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj", msBuildSettings); - } } // Returns true if the given file has a name that indicates it is From 72018431f092f6afbfbca6441c3b2d82ef74c454 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Thu, 25 Apr 2024 00:13:39 -0400 Subject: [PATCH 22/40] Add nuget.config --- nuget.config | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 nuget.config diff --git a/nuget.config b/nuget.config new file mode 100644 index 000000000..de291b7f8 --- /dev/null +++ b/nuget.config @@ -0,0 +1,7 @@ + + + + + + + From 95e6616f1430a0f145fa959c7212be1a5896c567 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Thu, 25 Apr 2024 02:13:08 -0400 Subject: [PATCH 23/40] Fixed up some more project configurations --- Lottie-Windows.sln | 69 ++++++++----------- .../LottieIslandProjection.csproj | 2 +- azure-pipelines.yml | 3 +- 3 files changed, 32 insertions(+), 42 deletions(-) diff --git a/Lottie-Windows.sln b/Lottie-Windows.sln index e7f522eae..e4f5fff2e 100644 --- a/Lottie-Windows.sln +++ b/Lottie-Windows.sln @@ -202,7 +202,7 @@ Global Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.BETA|Any CPU.ActiveCfg = BETA|x86 + {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.BETA|Any CPU.ActiveCfg = BETA|x64 {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.BETA|ARM.ActiveCfg = BETA|ARM {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.BETA|ARM.Build.0 = BETA|ARM {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.BETA|ARM.Deploy.0 = BETA|ARM @@ -215,7 +215,7 @@ Global {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.BETA|x86.ActiveCfg = BETA|x86 {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.BETA|x86.Build.0 = BETA|x86 {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.BETA|x86.Deploy.0 = BETA|x86 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Debug|Any CPU.ActiveCfg = Debug|x86 + {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Debug|Any CPU.ActiveCfg = Debug|x64 {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Debug|ARM.ActiveCfg = Debug|ARM {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Debug|ARM.Build.0 = Debug|ARM {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Debug|ARM.Deploy.0 = Debug|ARM @@ -552,34 +552,34 @@ Global {192FBD28-8531-4607-A17C-44A1A51A1565}.Release|x86.ActiveCfg = Release|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|Any CPU.ActiveCfg = Debug|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|Any CPU.Build.0 = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM.ActiveCfg = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM.Build.0 = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM64.ActiveCfg = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM64.Build.0 = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x64.ActiveCfg = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x64.Build.0 = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x86.ActiveCfg = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x86.Build.0 = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM.ActiveCfg = Debug|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM.Build.0 = Debug|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM64.ActiveCfg = Debug|ARM64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM64.Build.0 = Debug|ARM64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x64.ActiveCfg = Debug|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x64.Build.0 = Debug|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x86.ActiveCfg = Debug|x86 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x86.Build.0 = Debug|x86 {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM.ActiveCfg = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM.Build.0 = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM64.ActiveCfg = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM64.Build.0 = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x64.ActiveCfg = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x64.Build.0 = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x86.ActiveCfg = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x86.Build.0 = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM.ActiveCfg = Debug|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM.Build.0 = Debug|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM64.Build.0 = Debug|ARM64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x64.ActiveCfg = Debug|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x64.Build.0 = Debug|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x86.ActiveCfg = Debug|x86 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x86.Build.0 = Debug|x86 {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|Any CPU.ActiveCfg = Release|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|Any CPU.Build.0 = Release|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM.ActiveCfg = Release|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM.Build.0 = Release|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM64.ActiveCfg = Release|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM64.Build.0 = Release|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x64.ActiveCfg = Release|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x64.Build.0 = Release|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x86.ActiveCfg = Release|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x86.Build.0 = Release|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM.ActiveCfg = Release|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM.Build.0 = Release|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM64.ActiveCfg = Release|ARM64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM64.Build.0 = Release|ARM64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x64.ActiveCfg = Release|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x64.Build.0 = Release|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x86.ActiveCfg = Release|x86 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x86.Build.0 = Release|x86 {6AB50ED0-6273-4919-9ADE-50195664EF15}.BETA|Any CPU.ActiveCfg = Debug|x64 {6AB50ED0-6273-4919-9ADE-50195664EF15}.BETA|Any CPU.Build.0 = Debug|x64 {6AB50ED0-6273-4919-9ADE-50195664EF15}.BETA|Any CPU.Deploy.0 = Debug|x64 @@ -656,9 +656,8 @@ Global {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|x86.ActiveCfg = Release|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|x86.Build.0 = Release|x86 {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|Any CPU.ActiveCfg = Debug|x64 - {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|Any CPU.Build.0 = Debug|x64 - {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|ARM.ActiveCfg = Debug|ARM - {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|ARM.Build.0 = Debug|ARM + {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|ARM.ActiveCfg = Debug|x64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|ARM.Build.0 = Debug|x64 {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|ARM64.ActiveCfg = Debug|ARM64 {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|ARM64.Build.0 = Debug|ARM64 {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|x64.ActiveCfg = Debug|x64 @@ -666,7 +665,6 @@ Global {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|x86.ActiveCfg = Debug|Win32 {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|x86.Build.0 = Debug|Win32 {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|Any CPU.ActiveCfg = Debug|x64 - {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|Any CPU.Build.0 = Debug|x64 {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|ARM.ActiveCfg = Debug|x64 {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|ARM.Build.0 = Debug|x64 {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|ARM64.ActiveCfg = Debug|ARM64 @@ -676,9 +674,8 @@ Global {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|x86.ActiveCfg = Debug|Win32 {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|x86.Build.0 = Debug|Win32 {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|Any CPU.ActiveCfg = Release|x64 - {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|Any CPU.Build.0 = Release|x64 - {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|ARM.ActiveCfg = Release|ARM - {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|ARM.Build.0 = Release|ARM + {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|ARM.ActiveCfg = Release|x64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|ARM.Build.0 = Release|x64 {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|ARM64.ActiveCfg = Release|ARM64 {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|ARM64.Build.0 = Release|ARM64 {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|x64.ActiveCfg = Release|x64 @@ -716,8 +713,6 @@ Global {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Release|x86.ActiveCfg = Release|Any CPU {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Release|x86.Build.0 = Release|Any CPU {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|Any CPU.ActiveCfg = Debug|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|Any CPU.Build.0 = Debug|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|Any CPU.Deploy.0 = Debug|x64 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM.ActiveCfg = Debug|x64 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM.Build.0 = Debug|x64 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM.Deploy.0 = Debug|x64 @@ -731,8 +726,6 @@ Global {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|x86.Build.0 = Debug|Win32 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|x86.Deploy.0 = Debug|Win32 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|Any CPU.ActiveCfg = Debug|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|Any CPU.Build.0 = Debug|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|Any CPU.Deploy.0 = Debug|x64 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|ARM.ActiveCfg = Debug|x64 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|ARM.Build.0 = Debug|x64 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|ARM.Deploy.0 = Debug|x64 @@ -746,8 +739,6 @@ Global {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|x86.Build.0 = Debug|Win32 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Debug|x86.Deploy.0 = Debug|Win32 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|Any CPU.ActiveCfg = Release|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|Any CPU.Build.0 = Release|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|Any CPU.Deploy.0 = Release|x64 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|ARM.ActiveCfg = Release|x64 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|ARM.Build.0 = Release|x64 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|ARM.Deploy.0 = Release|x64 diff --git a/LottieIslandProjection/LottieIslandProjection.csproj b/LottieIslandProjection/LottieIslandProjection.csproj index a52136285..792376a21 100644 --- a/LottieIslandProjection/LottieIslandProjection.csproj +++ b/LottieIslandProjection/LottieIslandProjection.csproj @@ -7,7 +7,7 @@ 0.1.1-prerelease.2 - AnyCPU + Any CPU CommunityToolkit.WinAppSDK.LottieIsland.Projection diff --git a/azure-pipelines.yml b/azure-pipelines.yml index c68656d8b..0b752440e 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -55,8 +55,7 @@ steps: # TODO - figure out why this is not getting restored as part of the solution restore - script: | - nuget restore LottieIsland\LottieIsland.vcxproj -SolutionDirectory . - nuget restore SimpleLottieIslandApp\SimpleLottieIslandApp.vcxproj -SolutionDirectory . + nuget restore Lottie-Windows.sln displayName: Nuget Restore LottieIsland # Run the build. From 544cde6f608a479ff95b33edcc32940d880906bd Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Thu, 25 Apr 2024 03:51:36 -0400 Subject: [PATCH 24/40] Remove UWP samples from sln file to allow solution to build --- Lottie-Windows.sln | 164 ++++++++------------------------------------- 1 file changed, 27 insertions(+), 137 deletions(-) diff --git a/Lottie-Windows.sln b/Lottie-Windows.sln index e4f5fff2e..662a3381c 100644 --- a/Lottie-Windows.sln +++ b/Lottie-Windows.sln @@ -18,11 +18,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "source", "source", "{AB232F source\README.md = source\README.md EndProjectSection EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LottieViewer", "LottieViewer\LottieViewer.csproj", "{5120EFD7-A556-46BF-8D56-F65F1EF9A305}" - ProjectSection(ProjectDependencies) = postProject - {6AB50ED0-6273-4919-9ADE-50195664EF15} = {6AB50ED0-6273-4919-9ADE-50195664EF15} - EndProjectSection -EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lottie-Windows-Uwp", "Lottie-Windows\Lottie-Windows-Uwp\Lottie-Windows-Uwp.csproj", "{E392BAD0-F936-4B64-A445-552597795CC7}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "dlls", "dlls", "{C75BD686-21A6-4EB3-8D4B-D5A01C019C52}" @@ -170,8 +165,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LottieGen.MsBuild", "Lottie EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lottie-Windows-WinUI3", "Lottie-Windows\Lottie-Windows-WinUI3\Lottie-Windows-WinUI3.csproj", "{C505CD2D-5D26-42EE-8FAA-41BB784821EF}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LottieSamples", "LottieSamples\LottieSamples.csproj", "{6AB50ED0-6273-4919-9ADE-50195664EF15}" -EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LottieWinRT", "LottieWinRT\LottieWinRT.csproj", "{DDA0D223-4B59-455D-A8B1-CFAE59523FFB}" ProjectSection(ProjectDependencies) = postProject {9BA7A2F2-B723-458B-A575-3F726D271465} = {9BA7A2F2-B723-458B-A575-3F726D271465} @@ -202,45 +195,6 @@ Global Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.BETA|Any CPU.ActiveCfg = BETA|x64 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.BETA|ARM.ActiveCfg = BETA|ARM - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.BETA|ARM.Build.0 = BETA|ARM - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.BETA|ARM.Deploy.0 = BETA|ARM - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.BETA|ARM64.ActiveCfg = BETA|ARM64 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.BETA|ARM64.Build.0 = BETA|ARM64 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.BETA|ARM64.Deploy.0 = BETA|ARM64 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.BETA|x64.ActiveCfg = BETA|x64 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.BETA|x64.Build.0 = BETA|x64 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.BETA|x64.Deploy.0 = BETA|x64 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.BETA|x86.ActiveCfg = BETA|x86 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.BETA|x86.Build.0 = BETA|x86 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.BETA|x86.Deploy.0 = BETA|x86 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Debug|Any CPU.ActiveCfg = Debug|x64 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Debug|ARM.ActiveCfg = Debug|ARM - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Debug|ARM.Build.0 = Debug|ARM - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Debug|ARM.Deploy.0 = Debug|ARM - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Debug|ARM64.Build.0 = Debug|ARM64 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Debug|ARM64.Deploy.0 = Debug|ARM64 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Debug|x64.ActiveCfg = Debug|x64 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Debug|x64.Build.0 = Debug|x64 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Debug|x64.Deploy.0 = Debug|x64 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Debug|x86.ActiveCfg = Debug|x86 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Debug|x86.Build.0 = Debug|x86 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Debug|x86.Deploy.0 = Debug|x86 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Release|Any CPU.ActiveCfg = Release|x64 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Release|ARM.ActiveCfg = Release|ARM - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Release|ARM.Build.0 = Release|ARM - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Release|ARM.Deploy.0 = Release|ARM - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Release|ARM64.ActiveCfg = Release|ARM64 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Release|ARM64.Build.0 = Release|ARM64 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Release|ARM64.Deploy.0 = Release|ARM64 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Release|x64.ActiveCfg = Release|x64 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Release|x64.Build.0 = Release|x64 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Release|x64.Deploy.0 = Release|x64 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Release|x86.ActiveCfg = Release|x86 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Release|x86.Build.0 = Release|x86 - {5120EFD7-A556-46BF-8D56-F65F1EF9A305}.Release|x86.Deploy.0 = Release|x86 {E392BAD0-F936-4B64-A445-552597795CC7}.BETA|Any CPU.ActiveCfg = Release|Any CPU {E392BAD0-F936-4B64-A445-552597795CC7}.BETA|ARM.ActiveCfg = Release|Any CPU {E392BAD0-F936-4B64-A445-552597795CC7}.BETA|ARM64.ActiveCfg = Release|Any CPU @@ -552,81 +506,35 @@ Global {192FBD28-8531-4607-A17C-44A1A51A1565}.Release|x86.ActiveCfg = Release|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|Any CPU.ActiveCfg = Debug|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|Any CPU.Build.0 = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM.ActiveCfg = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM.Build.0 = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM64.ActiveCfg = Debug|ARM64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM64.Build.0 = Debug|ARM64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x64.ActiveCfg = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x64.Build.0 = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x86.ActiveCfg = Debug|x86 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x86.Build.0 = Debug|x86 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM.ActiveCfg = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM.Build.0 = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM64.ActiveCfg = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM64.Build.0 = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x64.ActiveCfg = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x64.Build.0 = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x86.ActiveCfg = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x86.Build.0 = Debug|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM.ActiveCfg = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM.Build.0 = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM64.Build.0 = Debug|ARM64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x64.ActiveCfg = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x64.Build.0 = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x86.ActiveCfg = Debug|x86 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x86.Build.0 = Debug|x86 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM.ActiveCfg = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM.Build.0 = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM64.Build.0 = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x64.ActiveCfg = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x64.Build.0 = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x86.ActiveCfg = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x86.Build.0 = Debug|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|Any CPU.ActiveCfg = Release|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|Any CPU.Build.0 = Release|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM.ActiveCfg = Release|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM.Build.0 = Release|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM64.ActiveCfg = Release|ARM64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM64.Build.0 = Release|ARM64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x64.ActiveCfg = Release|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x64.Build.0 = Release|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x86.ActiveCfg = Release|x86 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x86.Build.0 = Release|x86 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.BETA|Any CPU.ActiveCfg = Debug|x64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.BETA|Any CPU.Build.0 = Debug|x64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.BETA|Any CPU.Deploy.0 = Debug|x64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.BETA|ARM.ActiveCfg = Debug|ARM - {6AB50ED0-6273-4919-9ADE-50195664EF15}.BETA|ARM.Build.0 = Debug|ARM - {6AB50ED0-6273-4919-9ADE-50195664EF15}.BETA|ARM.Deploy.0 = Debug|ARM - {6AB50ED0-6273-4919-9ADE-50195664EF15}.BETA|ARM64.ActiveCfg = Debug|ARM64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.BETA|ARM64.Build.0 = Debug|ARM64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.BETA|ARM64.Deploy.0 = Debug|ARM64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.BETA|x64.ActiveCfg = Debug|x64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.BETA|x64.Build.0 = Debug|x64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.BETA|x64.Deploy.0 = Debug|x64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.BETA|x86.ActiveCfg = Debug|x86 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.BETA|x86.Build.0 = Debug|x86 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.BETA|x86.Deploy.0 = Debug|x86 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Debug|Any CPU.ActiveCfg = Debug|x64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Debug|Any CPU.Build.0 = Debug|x64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Debug|Any CPU.Deploy.0 = Debug|x64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Debug|ARM.ActiveCfg = Debug|ARM - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Debug|ARM.Build.0 = Debug|ARM - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Debug|ARM.Deploy.0 = Debug|ARM - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Debug|ARM64.Build.0 = Debug|ARM64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Debug|ARM64.Deploy.0 = Debug|ARM64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Debug|x64.ActiveCfg = Debug|x64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Debug|x64.Build.0 = Debug|x64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Debug|x64.Deploy.0 = Debug|x64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Debug|x86.ActiveCfg = Debug|x86 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Debug|x86.Build.0 = Debug|x86 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Debug|x86.Deploy.0 = Debug|x86 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|Any CPU.ActiveCfg = Release|x64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|Any CPU.Build.0 = Release|x64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|Any CPU.Deploy.0 = Release|x64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|ARM.ActiveCfg = Release|ARM - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|ARM.Build.0 = Release|ARM - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|ARM.Deploy.0 = Release|ARM - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|ARM64.ActiveCfg = Release|ARM64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|ARM64.Build.0 = Release|ARM64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|ARM64.Deploy.0 = Release|ARM64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|x64.ActiveCfg = Release|x64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|x64.Build.0 = Release|x64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|x64.Deploy.0 = Release|x64 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|x86.ActiveCfg = Release|x86 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|x86.Build.0 = Release|x86 - {6AB50ED0-6273-4919-9ADE-50195664EF15}.Release|x86.Deploy.0 = Release|x86 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.ActiveCfg = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.Build.0 = Debug|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM.ActiveCfg = Release|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM.Build.0 = Release|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM64.ActiveCfg = Release|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM64.Build.0 = Release|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x64.ActiveCfg = Release|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x64.Build.0 = Release|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x86.ActiveCfg = Release|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x86.Build.0 = Release|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.ActiveCfg = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.ActiveCfg = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM64.ActiveCfg = Debug|ARM64 @@ -635,8 +543,7 @@ Global {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x64.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x86.ActiveCfg = Debug|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x86.Build.0 = Debug|x86 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.Build.0 = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.ActiveCfg = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.ActiveCfg = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM64.ActiveCfg = Debug|ARM64 @@ -645,8 +552,7 @@ Global {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x64.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x86.ActiveCfg = Debug|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x86.Build.0 = Debug|x86 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.ActiveCfg = Release|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.Build.0 = Release|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.ActiveCfg = Release|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM.ActiveCfg = Release|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM.Build.0 = Release|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM64.ActiveCfg = Release|ARM64 @@ -803,21 +709,6 @@ Global source\WinUIXamlMediaData\WinUIXamlMediaData.projitems*{30059ca7-0745-4eec-8d11-b14850a70c98}*SharedItemsImports = 13 source\YamlData\YamlData.projitems*{39c6b7f3-5e75-4019-82ab-00fd8a0a06e2}*SharedItemsImports = 13 source\LottieReader\LottieReader.projitems*{4e7d8957-3f5f-46e1-99a8-2012b806c9b0}*SharedItemsImports = 13 - source\Animatables\Animatables.projitems*{5120efd7-a556-46bf-8d56-f65f1ef9a305}*SharedItemsImports = 4 - source\CompMetadata\CompMetadata.projitems*{5120efd7-a556-46bf-8d56-f65f1ef9a305}*SharedItemsImports = 4 - source\DotLottie\DotLottie.projitems*{5120efd7-a556-46bf-8d56-f65f1ef9a305}*SharedItemsImports = 4 - source\GenericData\GenericData.projitems*{5120efd7-a556-46bf-8d56-f65f1ef9a305}*SharedItemsImports = 4 - source\LottieData\LottieData.projitems*{5120efd7-a556-46bf-8d56-f65f1ef9a305}*SharedItemsImports = 4 - source\LottieMetadata\LottieMetadata.projitems*{5120efd7-a556-46bf-8d56-f65f1ef9a305}*SharedItemsImports = 4 - source\LottieReader\LottieReader.projitems*{5120efd7-a556-46bf-8d56-f65f1ef9a305}*SharedItemsImports = 4 - source\LottieToWinComp\LottieToWinComp.projitems*{5120efd7-a556-46bf-8d56-f65f1ef9a305}*SharedItemsImports = 4 - source\Lottie\Lottie.projitems*{5120efd7-a556-46bf-8d56-f65f1ef9a305}*SharedItemsImports = 4 - source\NullablesAttributes\NullablesAttributes.projitems*{5120efd7-a556-46bf-8d56-f65f1ef9a305}*SharedItemsImports = 4 - source\UIData\UIData.projitems*{5120efd7-a556-46bf-8d56-f65f1ef9a305}*SharedItemsImports = 4 - source\WinCompData\WinCompData.projitems*{5120efd7-a556-46bf-8d56-f65f1ef9a305}*SharedItemsImports = 4 - source\WinStorageStreamsData\WinStorageStreamsData.projitems*{5120efd7-a556-46bf-8d56-f65f1ef9a305}*SharedItemsImports = 4 - source\WinUIXamlMediaData\WinUIXamlMediaData.projitems*{5120efd7-a556-46bf-8d56-f65f1ef9a305}*SharedItemsImports = 4 - source\YamlData\YamlData.projitems*{5120efd7-a556-46bf-8d56-f65f1ef9a305}*SharedItemsImports = 4 source\LottieData\LottieData.projitems*{6221591a-e8f4-4a5e-8f0c-2651c24ad495}*SharedItemsImports = 5 source\WinCompData\WinCompData.projitems*{68317393-f5a5-4b2c-918a-688db2c10f54}*SharedItemsImports = 5 source\Animatables\Animatables.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 @@ -836,7 +727,6 @@ Global source\WinStorageStreamsData\WinStorageStreamsData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 source\WinUIXamlMediaData\WinUIXamlMediaData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 source\YamlData\YamlData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 - source\NullablesAttributes\NullablesAttributes.projitems*{6ab50ed0-6273-4919-9ade-50195664ef15}*SharedItemsImports = 4 source\DotLottie\DotLottie.projitems*{7012420d-624c-4bd4-a1d2-1c6c1655ed3a}*SharedItemsImports = 13 source\UIData\UIData.projitems*{74601e6c-2dfe-4842-b170-047941abff2c}*SharedItemsImports = 13 source\LottieGen\LottieGen.projitems*{7654a857-9a99-4185-9f8e-dd0ce662af23}*SharedItemsImports = 13 From 8d9c0600acea8d6c64e9f183804cb8fb7f772949 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Thu, 25 Apr 2024 03:52:04 -0400 Subject: [PATCH 25/40] Fix pack targets --- LottieIsland/LottieIsland.vcxproj | 3 +++ LottieWinRT/AnimatedVisual.cs | 3 +-- LottieWinRT/LottieWinRT.csproj | 7 +++++-- SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj | 3 +++ build/build.cake | 2 +- 5 files changed, 13 insertions(+), 5 deletions(-) diff --git a/LottieIsland/LottieIsland.vcxproj b/LottieIsland/LottieIsland.vcxproj index c201f3d97..b3e626e17 100644 --- a/LottieIsland/LottieIsland.vcxproj +++ b/LottieIsland/LottieIsland.vcxproj @@ -163,4 +163,7 @@ + + + \ No newline at end of file diff --git a/LottieWinRT/AnimatedVisual.cs b/LottieWinRT/AnimatedVisual.cs index 650d26b27..c77f8c709 100644 --- a/LottieWinRT/AnimatedVisual.cs +++ b/LottieWinRT/AnimatedVisual.cs @@ -5,12 +5,11 @@ using System.Numerics; using Microsoft.UI; using Microsoft.UI.Composition; -using LottieIsland = CommunityToolkit.WinAppSDK.LottieIsland; using MUXC = Microsoft.UI.Xaml.Controls; namespace LottieWinRT { - public sealed class AnimatedVisual : LottieIsland.IAnimatedVisualFrameworkless + public sealed class AnimatedVisual : CommunityToolkit.WinAppSDK.LottieIsland.IAnimatedVisualFrameworkless { private MUXC.IAnimatedVisual? _animatedVisual; diff --git a/LottieWinRT/LottieWinRT.csproj b/LottieWinRT/LottieWinRT.csproj index 7496b59e6..6b1f53ba3 100644 --- a/LottieWinRT/LottieWinRT.csproj +++ b/LottieWinRT/LottieWinRT.csproj @@ -8,7 +8,7 @@ However, AnyCPU is not supported for C++ projects consuming a C# WinRT component via project references. So we build for individual platforms as well. --> - Any CPU;x64;x86;ARM64 + x64;x86;ARM64 true LottieWinRT @@ -38,12 +38,15 @@ - + + + + + This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. diff --git a/build/build.cake b/build/build.cake index a64816b36..2c5b75c82 100644 --- a/build/build.cake +++ b/build/build.cake @@ -69,7 +69,7 @@ void MSBuildSolution( { PlatformTarget.x64, PlatformTarget.x86, - PlatformTarget.ARM64 + PlatformTarget.ARM64, PlatformTarget.MSIL, }) { From 5896c83ff8a1c8bade71164e24790032ab1770d5 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Thu, 25 Apr 2024 14:05:40 -0400 Subject: [PATCH 26/40] Cleaned up nuget generation --- Lottie-Windows.sln | 9 +- LottieIsland/LottieIsland.vcxproj | 2 +- ...unityToolkit.WinAppSDK.LottieIsland.nuspec | 40 ---- .../LottieIslandProjection.csproj | 7 +- ...lkit.WinAppSDK.LottieIsland-WinUI3.targets | 27 +++ ...kit.WinAppSDK.LottieIsland-managed.targets | 31 +++ ...lkit.WinAppSDK.LottieIsland-native.targets | 26 +++ ...olkit.WinAppSDK.LottieIsland-win10.targets | 4 + ...unityToolkit.WinAppSDK.LottieIsland.nuspec | 49 +++++ LottieIslandProjection/{ => nuget}/icon.png | Bin ...ommunityToolkit.WinAppSDK.LottieIsland.dll | Bin 394240 -> 0 bytes ...ommunityToolkit.WinAppSDK.LottieIsland.pri | Bin 784 -> 0 bytes .../LottieIslandProjection.deps.json | 202 ------------------ .../LottieIslandProjection.dll | Bin 44544 -> 0 bytes .../LottieIslandProjection.pri | Bin 712 -> 0 bytes .../LottieIslandProjection.xml | 8 - LottieIslandProjection/{ => nuget}/readme.md | 0 LottieWinRT/AnimatedVisual.cs | 2 +- LottieWinRT/LottieVisualSourceWinRT.cs | 2 +- LottieWinRT/LottieWinRT.csproj | 11 +- .../SimpleLottieIslandApp.cpp | 62 +++--- version.json | 2 +- 22 files changed, 191 insertions(+), 293 deletions(-) delete mode 100644 LottieIslandProjection/CommunityToolkit.WinAppSDK.LottieIsland.nuspec create mode 100644 LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland-WinUI3.targets create mode 100644 LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland-managed.targets create mode 100644 LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland-native.targets create mode 100644 LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland-win10.targets create mode 100644 LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland.nuspec rename LottieIslandProjection/{ => nuget}/icon.png (100%) delete mode 100644 LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/CommunityToolkit.WinAppSDK.LottieIsland.dll delete mode 100644 LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/CommunityToolkit.WinAppSDK.LottieIsland.pri delete mode 100644 LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.deps.json delete mode 100644 LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.dll delete mode 100644 LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.pri delete mode 100644 LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.xml rename LottieIslandProjection/{ => nuget}/readme.md (100%) diff --git a/Lottie-Windows.sln b/Lottie-Windows.sln index 662a3381c..2fd8fe736 100644 --- a/Lottie-Windows.sln +++ b/Lottie-Windows.sln @@ -534,7 +534,8 @@ Global {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x64.Build.0 = Release|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x86.ActiveCfg = Release|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x86.Build.0 = Release|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.ActiveCfg = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.ActiveCfg = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.Build.0 = Debug|Any CPU {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.ActiveCfg = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM64.ActiveCfg = Debug|ARM64 @@ -543,7 +544,8 @@ Global {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x64.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x86.ActiveCfg = Debug|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x86.Build.0 = Debug|x86 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.ActiveCfg = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.Build.0 = Debug|Any CPU {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.ActiveCfg = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM64.ActiveCfg = Debug|ARM64 @@ -552,7 +554,8 @@ Global {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x64.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x86.ActiveCfg = Debug|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x86.Build.0 = Debug|x86 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.ActiveCfg = Release|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.ActiveCfg = Release|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.Build.0 = Release|Any CPU {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM.ActiveCfg = Release|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM.Build.0 = Release|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM64.ActiveCfg = Release|ARM64 diff --git a/LottieIsland/LottieIsland.vcxproj b/LottieIsland/LottieIsland.vcxproj index b3e626e17..7055a95ef 100644 --- a/LottieIsland/LottieIsland.vcxproj +++ b/LottieIsland/LottieIsland.vcxproj @@ -12,7 +12,7 @@ CommunityToolkit.WinAppSDK.LottieIsland CommunityToolkit.WinAppSDK.LottieIsland - 0.1.1-prerelease.2 + 0.2.5-prerelease en-US 14.0 Windows Store diff --git a/LottieIslandProjection/CommunityToolkit.WinAppSDK.LottieIsland.nuspec b/LottieIslandProjection/CommunityToolkit.WinAppSDK.LottieIsland.nuspec deleted file mode 100644 index 68e89f0aa..000000000 --- a/LottieIslandProjection/CommunityToolkit.WinAppSDK.LottieIsland.nuspec +++ /dev/null @@ -1,40 +0,0 @@ - - - - CommunityToolkit.WinAppSDK.LottieIsland - Microsoft - - 0.1.1-prerelease.2 - A ContentIsland to host Lottie Animations - images\icon.png - docs\readme.md - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/LottieIslandProjection/LottieIslandProjection.csproj b/LottieIslandProjection/LottieIslandProjection.csproj index 792376a21..dfbfe446c 100644 --- a/LottieIslandProjection/LottieIslandProjection.csproj +++ b/LottieIslandProjection/LottieIslandProjection.csproj @@ -5,16 +5,15 @@ net7.0-windows10.0.19041.0 CommunityToolkit.WinAppSDK.LottieIsland - 0.1.1-prerelease.2 + 0.2.5-prerelease Any CPU CommunityToolkit.WinAppSDK.LottieIsland.Projection - .\nuget\ - $(GeneratedNugetDir) + $(MSBuildThisFileDirectory)..\bin\nupkg\ True - CommunityToolkit.WinAppSDK.LottieIsland.nuspec + nuget\CommunityToolkit.WinAppSDK.LottieIsland.nuspec CommunityToolkit.WinAppSDK.LottieIsland diff --git a/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland-WinUI3.targets b/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland-WinUI3.targets new file mode 100644 index 000000000..b3495602a --- /dev/null +++ b/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland-WinUI3.targets @@ -0,0 +1,27 @@ + + + + + x64 + x86 + + + + x86 + $(Platform) + + + + + true + + + + + + + + + + + diff --git a/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland-managed.targets b/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland-managed.targets new file mode 100644 index 000000000..f80afb254 --- /dev/null +++ b/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland-managed.targets @@ -0,0 +1,31 @@ + + + + + x64 + x86 + + + + x86 + $(Platform) + + + + + true + + + + + $(MSBuildThisFileDirectory)..\..\lib\uap10.0\CommunityToolkit.WinAppSDK.LottieIsland.winmd + CommunityToolkit.WinAppSDK.LottieIsland.dll + + + + + + + + + diff --git a/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland-native.targets b/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland-native.targets new file mode 100644 index 000000000..76e9c444c --- /dev/null +++ b/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland-native.targets @@ -0,0 +1,26 @@ + + + + + x86 + $(Platform) + + + + + CommunityToolkit.WinAppSDK.LottieIsland.dll + + + + + + + + + $(MSBuildThisFileDirectory)..\..\Include; + $(MSBuildThisFileDirectory)..\..\Include\$(lottieisland-Platform); + %(AdditionalIncludeDirectories); + + + + diff --git a/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland-win10.targets b/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland-win10.targets new file mode 100644 index 000000000..671e02914 --- /dev/null +++ b/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland-win10.targets @@ -0,0 +1,4 @@ + + + + diff --git a/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland.nuspec b/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland.nuspec new file mode 100644 index 000000000..2f2493128 --- /dev/null +++ b/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland.nuspec @@ -0,0 +1,49 @@ + + + + CommunityToolkit.WinAppSDK.LottieIsland + Microsoft + + 0.2.5-prerelease + A ContentIsland to host Lottie Animations + images\icon.png + docs\readme.md + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/LottieIslandProjection/icon.png b/LottieIslandProjection/nuget/icon.png similarity index 100% rename from LottieIslandProjection/icon.png rename to LottieIslandProjection/nuget/icon.png diff --git a/LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/CommunityToolkit.WinAppSDK.LottieIsland.dll b/LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/CommunityToolkit.WinAppSDK.LottieIsland.dll deleted file mode 100644 index f64322bc557bd5c6a072074030a28f482ad2a829..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 394240 zcmeEv3z&`7_y56QjM0oJLLrop2<3i>BV;n;QgUg?CB`)~gG5YY%9-OtF;KbB z_FK6T<>@5{uG}jA_FuV7{Ec3jhQI5t9bB;%e^;K1UYUx&+h#_uID)@Vmg>LqOY!$v zG49Dy1H|8+BZrJ2Y{!{I8V!c-#exmxOV$`}Z98cwUbAem+wM242REh`6V+p%EN(D_ zBg_Ap@-M1NF~L9UU&G>H$wbtZFtjf(28c08+nlYWa0hLfTn+Nyp5 zUNk~q@&x~B|J5)U1~r^8ba32YgJJ9EXgOcXU|55{srDV)gUp7qo1yzlXkT0!%*Wpm zC6N^VYi}^5HykNDj<0}v%*9X;G#Av#yFUp1K8!{(?IMaJhM~*4^+-NAkGkm6=$zLUxjEO6bgPD8 zeTZYwNOYM+f;qkp{6L0%*cG529EIZK50G5^4xOJIgt{M-k<3g%@u3fp z>`y{#$vuQO6iL~)Q2d7gia{N-7d-~>Z@-1&D^DT$D;G)XbR@mnq2FyCko)&8eA z==Sl*)vJbF$};5IQ#?7#(B-Y)P%PFQxdUIKZu#>l{=E~)!L6uM$ixckkvlsQiOGmA zd5h5c`2|oAlZITgB}m3!M(fvOkZg=YaYrs%yXPT!{s91JMxK6pCtCN`L+ff1{%m<9 zBX^@XvoUhxD4r?}kUJWU+?uf%YrX(%e^9jLv(ayM1r*@P@;wg)X~3UalFVr=!hkt|^6OSRC@{vAN65962p&s;Pl!M8lsP`({2G z4t|G*x<4b=@j=wRoQ~YP8R&9)9FotEq4f+bclHMO>FmW+RV)yZAWsvFOnouIyV!^Ph8@isn6y6f!x(_ zPTB1Vpl35AKi`SE728l(VHu#jd=SMJJUB?lpwNj?3V)BpZFifj8J zX+WTxW+JzftH+X!VrnhqE|fs$ZBPm6ToaUi<#DUv>%(e}3Ja<=XJ!+|J%S_;L!S?E`f$iJba%N#^fn-*?+P2@IH@RtSwXrp~7{%TJrsy5fwI3i!Q2f44>p|zk5id)X0 z_)h}5Ea8G!O*32xZY}$Zrs(qNpUCAufx2~M#IqAo{5K4_J*_de$KS}Us*YT<+tK+X zd1_|AwZV1bIHEgp7we#N+Y)Ga7a>)4#%-uObRR(NKa7S; zCy}%tfuz2$2UMxG@1U4Oyw8`xh@O*B_kIwHV!dtTWL|HJE?0{oH}q$~>p{n||0fQ+ zAH_)KwmgVjd3L^V4y_ITKvIdT;+0WIEG+~pk zilAmxK(gg50DMn@mVX(=)u++#2U7ao+sNI`Mcjp}qRG4HccT*O?plfBk*|Y z=Mw{vi`fe(eW)ddzft!dp-jAr&O0h1*PuUIOQ)mw8)X?mRe6+9N|5)@(mAA2uh#cP z?jgGTx7k`}EOM_gSD)7Gts6+zQU$hdN54P0T%Jos?)`UAHbWNh!|!+Xy5BzC!08cB1vMHYom;j@;fHj6Hk>#T!qc zII=!+aqpwwI0g=@`lEH&ZWJ4xL~a!A#&AyXjek(LkdwLpB1XKq0=f4~Blpg7Btym_ zxk18La_u*3i4g_+&}B2tO-YK!K+--rh1TJ_Q1`~KXst%)`Z$&K_A_W5!>NuKi`K+N zD7JkaU3L;wMn1Y!r`ze*8Lb;SA!lYo|4-2Gdxl3H=+&k&)L6)dFMdPa =(r$cMV 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 z z82YfZ#n{N_Y&sSetzxnB#dHS-$&h%73Hib`&hTEei|}Q%cXjR-x(#fPr zi!sUnAiNQT*M2kLjY zrsWplZ9sVcCh)!sKr~$!5nL_tzB2~6?Swb%Aq{VIe0VIzHfIK!4WR12Bkj4M|P`v6c6i08L~g?`qRA4Jm=L@_c@yF{gYfDJuQWAycPECILwHl^=?A6;@2te| zY7M}9nE1VEx#M6XZHZ8OKfNx~o$!M0-3BI@48eOSF}%TqH-zmyH6ea^7Jn~H z3~witvuYXr_3pe?`LfE+xDw@&Ae7+4Rq}j~BCGBlWK+MnQk!_NI%#Y9W}d zaEq4uekiP!F@s>n-Uu+gV}J?L+Xf<6+w*Nc3&dums-C6gt+UKcu$+~ME^h?OSFrp} zmcP3bQ3oq4mMEO3!@@XtTf#rL3qWreIg6&7Ds)O{aL&O_oc~~Mw z`-9~xSbi|&=kB=Wsn4%1iq_{0t&HacfsG(A9E*kcKQ1s}X2XYJCj9e3L?2a+692_0 zXcV?IosAs$>)q^XI)(jLCUcuku#$tDj zJxy;tY$hi+UAx*$PHh?j>m?bkYc~3YOeR{O^uYQUhWC;ELPg^6wl0MskiIFb5kmDlRa9 zq&)lpY9-KZ#M!5b`**00Ms6QcRm&(3pFyQ+ye;;6^#efl=e;f0cvE#G@8gBy~iK7YsQRW}v zNB*@b<-eZ!C*OZ@pfcbY4pK&SW@5B77h)@5N@_%qU^0zVnUJNZIZ||>}e;w)h zd`kImWBv^G$17swH}&h`1<^8K+LHp7zlQoXE`Ir`G0K}m(gzo#{0f#&i&5Ujf79M= zLw+;?VRzl``)q?G?+=3hX3 zic-pd9P_UuJ}1Si zXIE9ykb97-;(=J+c4yXI1Nn=mWL;m6qb6O(cxSz@l7mZ4yfl%wW2=$+g`rCu^3|iB zoU41(a-rhLrt9eY3bUJr-4d-ECNEAT(&JYG>HI`U$7+cA&bX>YZjkPAzSCF9i&YFi zpG^Zv7<|hC%JS_>`Nn6{Bjx(rNbB2F`Nn5c&dt%tPR0ia!d$SSY88=PfU&6rIN3ju ze?w#VC)1yw0GOJ8IfVWq`8O~TbelZWQ2{M_zp6&YX?v}(&W1pA{$De{lRoMBl=9!k z{KJ^PBBlHnGyhcPFG?x@am>Gj`A>?G-|wfWG!24iNvmw_F+=1JU^=zE+ksS74K3xL zESGGfgihMZo8u*qvQz{0Z*7cH@%dze8AM|_Ee4n%9)3UFZqwIR z9veR9cxoTPhodI_txUnvh!1u7SFKOB^1F1*u?^T(IY@;a7(%iYm89vf8s@}plELz0 zS^vsd<j$?gK3;$!( z7ll9g@c}B6_qN8H{P-hmjn=1Hq^g#aA8%THgGgBXZPKIWrf86+|GtfY=8zs74~v9h z%IA<9qRa2mEiDj~7=oTbNNWh`tQe3qWLuMlY5hKk)>bW;jZz#Bi>e>=*j5%@xhYJq z($q=+@kN4}aSOm~z_3yznBZ^9`)%>z-57*7gYeo3uQVCFq4D9J5QLXQc+2Ml-oRw= zKA0D`y?;biCjXJD8ngiL-n6LdiW(Jg_jd1Y?{4o;AYjmd0Rp6w8ZNoZA4ziIa)F?z zLD8la5iDP&iZ&=!RHUI&q>30URkWy}s8q3q7A;n4L#0Y9>hJURPi}6r`GZ1#+Gb&H zc4ywafAi+eo7v5-0cYeiZogU6kq>=BUW~@tuv|!JmJ^yETc9z}sq59tES$4GzXeo$ z1zLXhwl>$ zXROQn0Z3``?#J22Ma17UoX#6+tW}DQ~Tw# zKV9Bwd(!ts7V_xx)j93V3?gKENIz$GiVPAFzPVT-nT0dvKakS>AI>%opuzG2rs+=g zL-=m7@CQ1+>)P=p2;ULX_tjnF+w)#4R`BF!##B(g@x2yYoB5ro`Mq;g{G`l5gujCP z-kDwD@7N!2fqOmv!`a4VG$p-(%_D1(JGQ^Oz5P;ZpG8y9oyX9AMtl27)P57SpMDJO z&uVW!klN?d6!Yz4X#W;w7hQgwZQM`o-#`pzEk8YP_UrPF{hac4evz5brua7_!e#1cMZYY2!27=@U$-oL%yt?#cXQ1{|>ag#G<9fZIa%l`_cGR zYO;)o4eGRsm6*L{y&CA%K(7XRHPEYpUJdkWpjQLE8tBzPuLgQG(5r!74fJZDR|6+r z19+OC_vqC?uLgQG(5r!74fJZDR|CBo_+Qh&BM)D=`R1lf<H8nP(Eso^Hazjn`j_42`hjoXvi`b{KHvPqe_r5!>t_!< zVXo)6#^56lKOFc`Q)Xc2DL=sXu~Uy#=Rc;Lj!SW(f?)#{u07nPkpxKVt-oA!cCXH;q#gC%O77KWRtl*{p^P} z|7ngKa9y$Xsp7Q{E9UyQ{&i01dl%^PVUY|&q#-}^dGnbrDm_|@zQwQQqy}6G520%SJ zROkgpJ>^y~ot3k&Cl-eKmQ5^WI`68^3~PBELMfX}K#izllc}0(MLnC$^<*1tGS_pE zFD01)(4J#cN)=skI!9pX=FVt_N)tu_+Y-&Cx!YQfpQG zK%YF!^?)$`Qxz_{JQ};K<+#hu^$QvsMI<+p59wla{pWpAa`ZI(v<30gij;b!(Ix$@ z3ui}aL^2;+QSdy{OGq8)+e4fW$%Q0fp6y6qmDt)hse~HU->!b1>#7ppq?eKS&R~eL zMm>3!0^5iyN}V4>zjGcm`Wg?`d|Zb1Y)YX->S0q#rFx^G9Rj;{SD{V-@GtM=CehD~N1H$XTxnd`re0ydfJHRU&= z*hprGMsysT%=N9PXOp>}8-o%ynE=i}|FS8y`cqu8DYcg42FHb`*<`N&+o$ybHks>R zm|pr6o6PkEi_TWq)S-Ux+9wK_WUhbX!81KqSXMj!S`agXCvCV8U*M}Eh7hqF|ddIgmhnZxq?>FcwKby?;-@kn1CN`PteUP6` z=6dvfkWJ=#j2_q?o6HcOJ;QNq>QFx#^-MC=fA;yacyK(KOx36xmy*o&pI?6o$0pP- z|3-#w%taSnJiW4Ja)EtLG+tL3tMNKU@uM6PFY(S%0$i2BBB-pU646 zk?q&)S*c!{EK9cHu|#lj*BU5O@^9a^?WR9`l0D_N8*lyj$?yH7FI8@COi$0g4ZgXv;3b$(Z<1dvxeb3}3@63_kzt}^6t<9aw zRdIE6f+NqDVY_ZZn(c@?%|_Q#Yi8BN=GNGw4W-fA1awA)I935}2w)7jl5oTxuBwWa zh8Z9w!`331VB+!cJbO)auDvQ+Q=X{MuyI^v&75#mC2+*c>#L(R2`WEVXKIYMC_f%6 zkB6)6<0`A7bwv{@OXIP+SXsh8t+K8@TxFkak7)p7NJuENz6l+|+)l*It=K#x1{uZSDV)u1Md zwzWvqB8t*!aOy=|0bpZlpAdy9dZ_@57{!U4NBt$M5^!FGwl(0PN~JWt5}KWVJYx+iFjpAxjhk!*{fnTII1#I^EMnM4x>+E=pC}eo*%=w@vs}VpINK1 ztJV`y?K8E%4GMj5l7>W1B^`;JB$XNERA!VDoRQdaqb-#g=Y+?AVRI_)ETO8)qhE+? z?8jv^p4z8RV;`JP$N9+|*O-R$fql{&3y|Ol8&5?#1!*wSbLoHwTpQ{*{SY`i=f^)g zHyzrW$W6vbEymdd_=r55jln34sUtZTqoxLdw+Q1c zie4qZQ;(}s#O<55zjb5X=y0{9vv@?qq4Xk4>? zY_5taj=CbQ1Tf@{Mse-VIfYy6i&m|89A$g|bn`DpuDdF4#T9Qn9JQUZgvyNBwUsV7 z5XZ6XqQ5TN{@&j4t)G7odEvGhDjeAX9j)rG24^fV*)rp%16y``?GraN;5t1+Jduei=&y`MHlV-4wY?vXWaBVXXK6EV9y%1bh`95mC=y}iIe>{ zk_*72lMc(F4?A}rQU%VaU&!Z{qsQaWQ<<0C>$>cny7rU$PFulK@^j zH&nGO1J;-wwGm3TqaAgieKoG^oPsn}wL`MP30yW;XrjQkb5IQk;<*gALUNHkBw)X0 z?z7-Wid9=Hf#q3CI0`dXJz8hMnyu~GU?WN2pzTnpkAY5WfuUa2pEkeNs(L2tq?xh? zV~KvrRvT1WHGrOdO-d1_D7yhi;S#eCeL_8;NbILK-r zcO#%j@{V=*r$JLmPdG9(!L{Sk`pxKNj%)U3*a|RLuJokY{yH|z=0r^O$8l-4XMAb4 zmk>KmL;2|rEfzDdCG~18G3joMs#{Igaq4*#-l{?`C2tae&CuLlr&>MPVjO*%Diz6D zkFr@v_7vi0X4LSp6Em>iY9SH$M5sjI|RV zx|gaJ6#Z@0^K+gG-SY0b-=Fr&lm4QC(*m2~zpsj4?wPiF>a(|PzhLzrVoPQ`>i+wy z8T&Q}B=adRp0jxO^yg>X{o;QADQ}2dscgKz@YE|mSx~U*yjQoL)928h zsf><}QS&I(lZ|3VJz0zSnw`@$Ov&HvkKcREm_;XD`N;Pk$t}6*1^ z^L*8!HLnv#+)dUPhs7DbH%X1-cK&STfk6)ir`&zothWAFmM@^X6BxHPXmK{nLGt|T z8MiiIR43=sq%_^1)x>H>ULB3c>~)n_N9{HBRaJIPJ;ie>qjQt(hoNU_78$9|m=sOf zLDQH&4Npg9Nj}K0QFJxew9X-{Dy7<3B`q-RrQw>ISi-JeV)8ZudH$2IXCMk>Ml7X#!hoYQKP=Ah2xvyR#|W|BJSDw>@D z>#qX!N^Uf~FU`cXE+sESv&R^9)}R@~h1ibvEhsvs`GQw}4K0q+y?I!jC#asZt@-y- z#2O?wl_qByG>|0rhBWHWYdW~tYs^c7k*IIhKfl7m~Gqf*vz?2MLL zlZ=09RIqTYhEmUuH$UT3c>N+AaoojczEm+MlsCLvD$hLC1!%1yJ~jPlbF!zZxcbqUIcC~3COC#Kn6%t^Doc3GP3 z4`}lwr zyZmXkhtU@{==@rg8GNp0;O_$*3qKk9GQ-Q`lK5XkA9M$=OwO>iq5o$>uIopq**?fm zvrU%MY!T>>_%xEi&%#Na!~YTVs-dIt$PM@bQ!;EP0na;^0w?5q1az)KUyQgsiQAw- zxzUdD0`S&Z+fSkYJs69dpxfJUo&&zwwpHMh@ZAYJz8bo%MxS1ZbO+>;!9zLV4@^q7 zDFFOO=o5nfIofpx-vGNX;CFz2ckr~Ykc^?UID_`ID0-^Ve=FgyldDULsb~*`_R48b zg?3^nCwMbtCFUPH=7tz*we|BTRvD)Aj)=cC1-yc?9cDFZfLE z;uotN64f}`60fu`)qp&Ly%1xcDY;Ib0!c_p!cMrfYtn@_gU;vXqt$<&53Pr2MMe7! z5mqV3cy3@fuh3{go z$BpquIBGE;{s!lFVGREZHUM0`K+u;s0HrK`HiD$KC$csJeFHYMFQ z^P?pE5#V9V+wRfeYrl_j;O7C){WA$4B0Nm_j=MGZjaPu~U%*R2y3O`+621v|*mCY? z8a!77Jb-Tjd@BRL19;eSTeAkA`vc$s|4YD63&YP~;9<-6uF&9*T$y1T3IE>!--@T> z+x4>wc-ZnG=o`}8>X{j~pFscX;G;+CaTb*q6sMMN(rvFToMBss{=E|RxDr0xm`hrL zhb>=;`IYc!M`Ms#oZBn0cE(M(c%8knMq5?kmT%Nv7LQfiBb8-k(Kw=YJFVl5JJJRo z4$(c0=H%|Xu|Bk`(KcB)`8@LF zee@=jvuR2qj7^MiJXT*5u_r2`_Br8rWw@j&YCoSl-##~7XD^M#JxfVWld$G68HJ9)>|j}wmQ>rSJg*pQ)TRwe3iVq=@O6C zM&niU>~-Nepb@600qU>=Q&wMt#agTen=@5aqwMyA3NVBJ_4JScz{B=XehLg{#tpsI+yI$SqP?eV%;eY{lFIrYCvQWcu6!nL)~JuD&-wU<;Ts14AMi^cJPNVvMT zD(bb{PdVuur4?c9klFqAtV;WNcD`ZUxC?xzoHV8ayC~|@0)#gfiINY{`I-mCVjqus zHw-UO3NZmR8~uje5R!y0wcaBPF+7V>O=hIx`GWd1^sU*v{xm|0i6{Fh8!AOdCWiyT zsmd;imc`(~DigYP+bulV7=%)2=)_9{p7vwU4QYVr-6$$768@ zisL4$I}o(TLNTLV-J7E*fc6Q;!q<_vizCWBg*yo)Q{flGh!iLSGj;$70E#>Ysswc=zPaMLc3cGu6&eGkta(QeL2q;o+f^)O_o2Yzb8 z)#~1xQ8pnKsfRLVJ5Vc!sdy7>%COZ3cE3jgu!TnWx!vyCcGwYp2&?%u_)C1WwAqDD~Ra zXUa~>ZhwdhJKNPI7~(YejDcbx_7Y#lanclw1ij>>>_`Oc)Oj)LjC#YTe@XrgbnW@M zb@*3{baezjl=Oc(M0RqtKo7@0DP(>-(^iN?=&FPa+ajb^q&-MBM}}Ii$!0iVUDwIS z)VMLa$29z<>MF@ik{4mUWV=*`o#=gQLYbH91yVeKF}bmiz!6$Q|LUA-m`=M{Bng*b zeAM8MBR%t#kKMx2*i)Af-;ct19{$lmPl!#%7@mkxMo*rM)nRe~mE5^Z;-oXW+g^!r zR*g|M5_dL;%1HPJZPhyxz9EX;Q}O^5Y0N`i6|jy}6H)IRZv@ejhMo59&5)C$<(Jn+ zYc7k<8{04)eBgRgeKbCAS{QS>RzziE&<#-lwKF{h_v^<&zUjE%I~fud;f(G+yPyrC zGZ9y`7Pfl+j-H_-NwnwhXx*E9`c8X-jz_yGXiYV>I46yEerW6X2w-Vdl>^+#N7a(O zLiaRN`^>=DS$TfWXwnT-QHeP^sxB=J%&kV_FOY|twQ->~&DX|GJDNW2XD8$&(@d`i zR0j65mk}5}A4WIrDvdG$d-Q6cR|CBo=+(ggh6eVm z%&3jn{%gqwIjpqCv%&f+I{E8fjG2tV<`POV-( zAGv`e>p^Q7i!5*uu6)36G}V!e+x49Ew+ zIEa@*y}SZBizl?&nwK04Jj6@0UcLso!OJS(u(F9oo#5E7m$xxEc6EYdhXoFjCo8D; zJ91VY+e6m!4AS8Zols7AYW4C)6Q0^m@Dy3#A-!zW%eNvo^s)mutn{+V0tfMOR4*TZ zd+Dr9p@*$yI?xH89JB{IuE2z+wG%wN4o_{^BlnRE+Y+XZWTE|rReITOpj=+rb8+rjdK3O`gpqps{V+Rcu7x6>5B)$Atcv-zB!-Ie639A{-<~j$WRp=SF)o4XgG9L*vgp)~KAujCp)ec@y~CXyS!d-`n-F1IP#9 zUbNY-8EvV5=wNls;*)=AZ4*3jYAut$geylc?~JAaO?a(vw4uC-!EM;u3caiaxiSCk z(#xogmEE#p^;Mw5KvwS61x_rULZx^|o}a;zSV*sx|{4lq0s0^*Bs z9o5UfC{IV$XV|RfmO{uzbc}=O5nok$`4^G@z^^iFWNT($w$*|bjfLHM`C;UPb2Ds3 zNGp(Xpkq|4hk=tWSbecLvmUqh^$KulSdzcw>+|(;gQi-$F$v4kX|%vWx>}}}6VKFs z2ijA)*{`-*v?m^R>E(Nor|a?>I0zrh1B;{i*VcSyF*>96bPzv^UT)AZ+MD@g+Z*~c z_hX7ab$yv(SbZ7t&^}{#@|a;*ekz`@_9H_u21!oiF!ays``|T=Vtv&S)C&gx3nkwx@#;%X_K^jbrV1<1^Ot$bg9**WganMkXU_9HEV&JDZ70+)fu$jOH<*UJr>RG0tTBrHp3n*|Q)pFMgx@l5R-pS7MxG8tJ2jt=5s zh+dwBJWoG2a1ad31B+whbJl#;TF@ar7wY8(4Wm7cDV7G?-q5Fcj$rj^=*tYl>dTPF zJV#i`V}@b*Ik3&zS42!>kmMz~8uW7Wm_-#Qzo6;QEPsm$7r_#~t$O)(JvZ7@J*z*q zebMhU8e|wO%%DlhzN7YZ5RELooY!-sJ=J&Do?ytYn0*M9)7UqUb1Gi~{#KZHq4C(F zmu*Mhh9qN8hTXd{+LG?*V0mNlwQjfWuR)VL%1^km^zzPVs>JX^c&%_8c`?IQWx`GJ zH0ot5khdb4_r(Y=wY8Fm#h3N6wLJSxGzlN!I--|%Mw8&^AiP#Migsk!lqpGF8Frno zmqm~p`;Eq0hT2%g2P__qs`k4a@XaO~v~F3immNg@MfSu9uhlwvUU@8+)I-frI#>gSGi)9agJJ{RpwWW!L3jqc0m;BZIQr`sEKL^g?pHHxWao6SF!OafT8-vo2-gz5 zygS-QcWHc(EwgxcneY;RlI?(A-lpe9d#dlOz5JR+!#sb;j1H(h9YiBfFE7w@qdnEL zG}!jWUXgij>1?lv^l8=|*~B)T<}T!hO*DdkE1Oua!xCTY5qcfZXiZP{uVE9z^|D;# zRY(R6vWcy@W^ICSSlI-Nmw&_BCYAsf%MZ~fT&wi*?r4wLZQWl7On8X~;XbODrx$AN zjP_K|_Lo(Af+0D~JX3is_$btI(zT(-D!pt8^7Tlp9tYs>4_G}C4l6yfcxV3JT93PR zIz*ceLyrgb^6qFCy=kpS9z1FolfQ&JM=#IQbE7>$v3j&>PcS5hnP)0*1|Q7~O+%0C z^|IZ_k0P;pEWqDouzDmMR(fRdE_usZk9Oc9K8(ZAqokL2M|;s8YdtoY@DhH)y+|)# zrsqa`s%Q0R)t+ET4l~bGz5{$5U}ze8JgS%3XJFlk#OiScu30@24l6yfcw67L)?)>5 z5g*23=yASY-W}~tf3VhLs|hdRC)~UA@;!QPw5NJjk5=sohU75wOy%4kv435Zl*Q0v zj$T%Qd=V0>$Njiw^+-6Z^vL3E1B}(2*`m`?dBKmN$E|vKceD@gwbo9AT&@>hNbu>(_Q z^jD)^whH++B!dR^mwhJge<2xI2!~aFv3LvLweGKj3~j<^^cSb&?~ZokU#$BphvCoQ zlW-U6zYVerG$#`~xbiD}I ztgZ=%m9AO5wFj(qT?kynhjAFXuF}i9qiuiBTGuTmyo8@{Z`I4U>$%aM>RDY|wI>*o z!^|_4N5F@@q@yg7UZ&_d!4W(iEIo5u4Wjq=e^~>Qr{qi-WIJUyA1)cYc;IW&oR3^T zB^$>3iKgNYlIn`eqY3;WXA%9WT~S^vk*JK0#QU!!vAK0cInk2(a=mbTT~)XyQZy!3 zU0sjAVVOtoOrBMl7zNnu+S(~OmyOaIYjC4#BPE*F&qqdy_F;x=MZLeh8t7C5cjFx> zM(Px(x1v`A|6>{$h<7j;>3>Z0UU9q70L6c;FZH(#>-UrI(7c{om5dG9W>iN9!D(mK zzvg`aBfd1C2@k;>03E_b>$PT_Q+bPtHo?*JTD$MVeh?7VasAcjx9IO9P|V$;U$6K% z{=NbA_vzR4Hv&6wo!v)+r@z(MitD|&rgrSnQ+fVd;Gl-jL%&S+w_J1l`nz>o67Q1Z zg!g#so#b!bn&eZCbuB-^@Az#JzM=>4wr7*@%X6d8brSwS58!7$l7t^Ty9e?Do_xY!y&d_a+-}+t zJlRGILu+9-Z3w>gVU5-{GHphG1^c0^eLWr7k{#ZTJZ&=ZwAX^Cy*f|ZPXJG?N=KgZ=cek3f3BmR5`ZB+%|y^VEd=c1T z$bfmNJk_>#>^mMXs{cdY6;C0ivV2EJS`8*z{4*VCt6YS}L*=B+45S zBB$rIh9IZs0MAE`?~rj0J@+H04$DQ3tiwTabSPvBj5v#AY2K*W#Usc`mdB8jESr%N z9+G3({M0@%P!YUw^pxh;0gm*u{o2lDCcSYOPb7OLa?*oM&(G5H^YnUxA(;uM{kpDk z?tN10i}&^XBR%i4Nh=?Kobb^>JlJ2}s(T{f~cJ#A*frIE7F!{RO(Y3*I`t{lvZ8Om`?A2%+GER^;)^wzm z2RtmTnOIL7*9NUxomLTY2HkP-eYdUa-Z$+9UE+mw-KO)xHFnNRh+%Tnue!${0xko8 zKF+CcXLf;K)z6ybIkVgxX6v?$RH2w5Jtl%hC$z@o!`B@7D1j z=pp|3GrPC*tQ(X1k#SD?$wl51{U~MK<8NZ{FW2#}?gBsA154X{ZuC`%srdH#?)k7S zOv-7;ImyW*XV7$N2NNIf9)B%^zfs4(qzn8#m6OJejoHsUV!~u(Eb#p-XmEjgcaz(F_% z7ydA{?+yJJeMHy)Ejs9x!{}WtH^xMWDK6*ws=mM&my{=dlZ9>{*5XMG}5y58xYHlJHA<0Kb>P-`WHC9Sr`q9>Ckz zCHb-6(!IPqgFn9q@cE2B8+!n6W8hnQ0*`e(^)L0w-X6e*7=79nbuDkm=y2o?d~1aI zn~IFws3zK!LcmA7kT1-~IhD;c(J;mds<;sS=ts%D-Q#a&@VDsrTYHFqG`>w@@NMJ< zZG(UA)+GNnoKv|SxdBIcXZ*+UZ50ErksIv{{4*K+wL1RB9^${DxqJMr4E`ND{=GfK zKN;ViG59ueGynF*N&WCRC%Hn%4LHhK{Scm7W_&f8V2yT!hYo^oW#C(S0{;+W|J}fc zR4UrfFnpVb=+Tvt8`VaC*=|e9YsWd2^T-W2%2|0sOvUXhyT@P4;BVCNFXx%TZGl9|S{D*KYuxhrHbcNGAJU_;0mb)@Kt%1P&Trtemm;ElF~ ziw=UXW#G5>0DcGKOON&dz7>1^L~HmKZC~nQYH3 zj-a-*pG9!Bz(M%PW;WuS${J00sf=VrrXEXlUe@UOHsox*0Y|yRCK@;X9AimVS(9tJwM&zMVz&bhz=|C(4@`IxBF# z$wY^q!6G;o&#+Ju54|VWTz|RF2bJHZe`~Q#r$csXmgRJOua95{{Y1k>FvD@4qhC|q zDia-QV8?gRsE!VLwv2LvPrCRKo|U9BI`-k4Rg^a{G@48_xcfWeIF0%CqoB*RiNUem zghR5x@e7?c(f`n)^Rz4}s}1L@tQ8hGUSMRY*7?X`a1@wuG+W@f3*Sv69_W~^fA^`0 z!Li(gW0wVveT=QTb=_=daO^SR$XwM?r+x6fNsSBit8VYM|4Zt_j&oKYITkn?@x4d` zM+?3mN#_L&j))0IqXmvue6Q2Mu?^p$r1Rwrj@2d{>n(76$nf!~{+-P|432{)9Bmdj z{><=kn~uYNM^Ya=&RKno(DwycTVI9m0vfVR(ZAUiVQ?f&IE=jo7Du!069~^gbo*GX z;~<|$JcOuHKYrv+`Z)uSQAhBUTF~BzH(PN|Wjl171}r;26Rc5gl^d`gRmFzwI6*s_#8|HPEYpUJdkW;H#?vxNdb$$-6g0okJ-e zrX=G!gp`Z)Yn|v5DG{of>6b;rL&zYrIhFuTjD5Y0-w# zD854)s|nR5BB4;bN?4eZaHKdKkB8?K*F@(Q<6D;Hi3$@q*8!eB0ciqaVJd6p&}ZX- zx4ga@-*Pp9rr@iJl~HyruLClJA9+K zI966%Lf>et>!Iv5v10m|ZoDj98ntL*DHFah3>A}P;W_wDDScVls%bZEk|0dpan&%HuxZKv^-o@Tph(XoFm2b9b=1@*7S_FD!pQjx>e(@ z=tiPMKM^g4$|}oiR8zO;PHTC?HKl0Y!PXdh)AT-%lV(x|NBcvVSRpo$5<_4a=CA`UQ9GZ7d=7)hsmnv^Tbd z%NK6>!P8l z7B%WHP~(*^#MAKM)4n7I3voIvN|m!+n{_8bvZ;b7Ib9*c3_InCDpL8XjpK9grFfmu z3Df$t;P6B}hOf2U$7ohsAkmdO>{9m5EF4 zHPxbyk>`&3jmOw!#tAikHa=nWXg*EVtBF6DL3M46K3`vq_!TqFa6UWKwYl{KAH^(K z&C~$l39zs3dF)yT)o=me56j|N#r3uH!E}dQw50_KN_h?b%3R#-F z5xw?2HenT!Dz9O;UBxNKN9JU_(lg=pJ(Dgq(9HLh9GdSFkRNHejuD&L6_p}?1)f6n1 zm#Q~*{qbL_HC?;v9S)aU?%D3DrRvneRQ*9`Df_NpGaa&vq~v{?E<6FNOoxbd4*q|M z;Dk}LwO*6)^VdwX|Isl`YP8m0Xlk$C7$aj&t@ZVFx3@2UAD2;)<*BvazOHumpVpUY z{q=QKTepuRu=9jE=^md+0v4HSeF5 zWwwnPPg7j;Uu&OVK4`Jjm%d*7n%UfcG*+?H+t=03x|u${yp@^#9W0B+<=5KIx>4G3 zSmmbLn0l{OyKmb4?NZbHQV|W;CU1>)a+9uo5&ea3o%Ya3Qf2B9U&m+bu!sB^QxMB1 z`y60!cmbY@jf|ax4IktAzp3MU_AuyFdU6ntbI>!8qr-{PiuNZ7Rdm_$@;Z8!&j7)` zR%k+HX*^aJD@)J{^-DZ9X^7P!XXOkIH=e={P5o-hIZdewSC>S>#ie32?BK(Zut)Yd zOB@kbnZx6BN6O?<7tfcKlmtRwazUS}m-eASe=(swsNSoh6dz-uAflS|QaAr!Y%eEJbW3~b0llxjy?FQtrtGNO=`3-( zJSCDW$d0f_Ds{TcN=pSX@?UH(Cs1@td+7naufDy6Wl<1i2V%QYha2`Gi@Zm0IGwVH z@J|%V{)_G91d48HFFm05)wdV7)9sPqU>qe;hcm)UWw;a~yvr$g!m@{t{ukTJ2^8JZ zUV1>UQ+w$)UQhk&H~q>wSWf|^rv{^Aw7-HrvEe(blkVg96eh9MSO2!}gvrw$V|p;v z3Q`&Gak|O`m&Z{Wb;6a(?h?7o9WE>Le2L*;lE3Hi{C}Y;SX~^8?!Wl>uzH$FE7SjA zwEMpio!ViQYq26e?yFw&esDMIn6HGK?Op1OdfX+>va+xzB8g6iI~pztOYX3z#OXv( zA_-q+IJMhC>N>CIMA!NOQ}9J8&Y@@Z)oUn!Ouevd^dMz^Rri-TeY{OuzC%s-R@ z(|ggYf&U*G7?PFAWg*EUGr2sZE0GdNKSp{0X)Drhq=QJAqcXW+NHWr7q#C4!NOvGT zjFiR$?qa|rwIV%?v;wISsSGI(NkO_0X%JEx(qXjQkMs)Cvq(=M4Fj#?b&P{-Gm)-F zT75w#*MxKhk_+i1r2QywMOuOMMGkyFv2h#H^GJ9LUgNRg`1ggG++L)ul)%dlq=#|7 z2x$(|o5UZ|G@OT!E<`$l>kp7@IRB!@TJ+PINQ;q<<;Xck_^Xc*{)%ISzwj90Ul{>A zyeN}vK)L~GG179RX-I33HXuEN^b*n@qytEYk(!ZgXgdr^LAny@YNR`m)*@xXUXLI@ zfaC@2Cgj7B??L`$kNLxsIApR>dnQ+OZnA6xY+*0Tjxc4XgZBKPnOw#BNw`5YhKFTx zwdW};@CXVF^XR1%2jj0 zAYYt^S6)==Z+M)PJvNjZx`O*TYJ?6og;#Lg&(ea$#bb@vQsyV(8i7#g``Lx+OU<~I zW{8|muN{oX=4v1s)qBk_#90SqATAJ(cL2Ijd*vqk229e$=o|pF_A4%^h)0U&RYt2K z+=MC9#^ehUpQEbZ&lT6!$D{PlLvAcr9jz{{uI0FK>RBybp?e9PRmbK;xm-G{izYa3 zC|8X4D@Kaj-wTRob_sS^hw_M~bi94FcuYeBn2617mx8|aQB1|-;^FG3zOEEG?pz&9 z`)UV|ov2+`T!nW*;tSHKFV)nWb6^-T|#P|N2y^<9>DA!`Nquk>nkajcZ%M)xT$ zi$|lyk&<%mr^H8P0z6f7cO}n@quls@(0OU?yy7~J8>^m&6Lh{9lB4e{W4Z#1=hW54 z@lZ(_DnCdou8UR_msM5)VKEKvJ>Vc#Q&w3H6DzL4`(a~q>20oaV6z&vO1$9p>h`K= z&74ZSKb8KVkmK%5fr!;a8!8jU>N^KH?oVlW^NRLr&|tx%39c+Hj(Rbnp(Y z>uRei6MDh*q0WYhq96c`)Er?C8jL@cjoJ;F(oEF5|>$!FPrq*bd9cjk^J63IN zHhJPstIuRO%#X+D#kky(eg%f?MiKWT@T_0N;^W}W(W3_Mm#0svkH+Wa;|;N~cr`t& zJ_aw!B;sdv#0~`{3`_JUV6abeap%jaBt^mGHak({c#o|-&KCPT%l2)$c-PLGY)^MFeL%!P!9h;IR?#kc!dqeP1bA5 zVFK;1=HyOB>E-dta&`RW;k~u>;c|9t*ic`9_u1Bw!RdXPfp^GjVF2}z#%MI6zit(_ zI2!c@;ksE9qSac*bK%;`k=1o0@yy#u{9SbvKh-0vgptBXUW-i3_3FcMT|%^D5W2#k zzDrue(^EK|qs#NgW=}0JA}6a@x3{cU1OF)v^yxjm9vV0y262p{xATzFuD!JP5K%n7UrJRTSqtP1`x$Tg;MSQc>tzm6A#b;21A#WCH{M_eHG zk!DMWq_A^~bEs>9Yo9CIz0y5YUMUX+-u~VZ-Z9?Y-a$UQZ;o$;?=jyc%0gv{GSEN5 zKgYkq|Cs-hz{0?iz(;{0K{3cJN#o{&#wmO*U%=1gkMM=UMm&1E!ZAXOidTtq#OuTr z;!5!WagA6ZZIm*dh0fK^BhFmca@PTu>~4ZgS@L}OX88&EfP7fa^(^-s^nB#G&|Bz@ zcpvb-?0wf8R#qshmGw%ivRzr@R|0zi4Z-a}5N*b{j*ujF0h zZVTKQ_*LMEz|(=>2ISzx;FMr-usnEE@W;X1g8vufS~R+ud?CLY66Xrbg#(be$+6p! zB`y^QN}_a!^t7~By3Ez&TIOnYjdRD`OWdExvM0xr59!YI%HAB%&-4v~j_>kq^lkO! zD^1EWCDUKw-{gPRKPAu@SQJe%MkmNd>&?rHEG@f3PDdI$R&e9!v+>ifiZv+|&_QE~aFgPYg=ANw<5S9bwpv&dEETIJg1+N<{Q5qE{WQO*LT1D+!9 zcCX@F;~Sx@QL_9EeogBe1DV0X;OgKJl5=kwhb1DH%P;2-@UqY(>=v>d4UllKSRrl{ zGo?alwRA+vbuNc|GIYGpwE*_JMGixfJnu~J3h!^dhrOJy%Gc=Ijy#0|NtR1cnCZ61}!GZauOm`NKRX3=l}Kyr2ln9q&3$6M1o(7?2vIh0+p9 zc8+#7Id6CFcK*qk<#Mr9_*k28j>B$9Y-96(9d9SyIUIPeAaoM zYlG`e*9WdlIV9(St9Rv-Jm-LmTJL=DafZ+9o9cTFz5THATV<^OBmbEJC+xlqcK&ms zVe6~*^SS)%{J;5c3I8XIb6n-P$>THb6)CQe&P>=S!>v3XyRr!vnqw9bo`vYxah>7zx+kKy zkD|X9$gj))mQVHE;MoKovb}eBpYXoq9qpU%Yx4C`rYTn|iTF4ge5S|cT5=J}b!>9Ct{ar0C7Skj}%EicjLHdJK z3%|DB+3K9;DsjE*`iExH4gok1?YuR7Pv=7$PfgrSZFj(w1Pr6@>Sq@m6Q&IztZU47iAxM#bs zb?lbE)%?bCPSFYasCMbPMuQ`H(!xv(7WnyTH58o9$Z(y@i!6 z%25AKzYsVS7!;fxToyb;x~kRa4B}_=%lJe5AYrz!OgJPAa?Ext1C>GIY;mVJPO6d` zrP=9H)TaYgJ7@3a#vv-j=eR6P)Xu16^lh zMyC1rQ8!ulJ~`VnLDkIJs&4)UYU_MYsk*;aIRyRx09N&)e<`%|X&@Zrnl-;Llpo12 z1@C=?uuv`R6y6rHVM(W`+Id^dmL{lU>TGD}ZD+P?WqVKf5d}OdQ%?}RTfK+8pL(l( z5BOg8{n^JUm-&kW=!2HN95#}@o< zgZru9Tl=bW{Yw5(emy^1xK>yw>=PD1gP(~fOKHvw=Qo{aIq!6?z{qHEzV6C&4|3bx zBiyoki~ORz3lWpg)5mM`&h}pGT?iX{-%DED>RW)w=8*EKl5RnHFVWr6mkS}w<|iP& z87Q2MxnTk9ZK>lv$3R%L06k_qS31ecPFAh?eRsAzT^{LK;0ePvxV@Sk?Gx5H&JiyX zZxCBBPxhBaNFjZM?NjyN#~pTWfqoXKJ-*WOfPcGxuiC4Vg6oKnw!Yk8WCQs=&M!1o|uGK9Ke_NDB_&$2FKk!X(E=$4>PAI%yKce!#HB z9}a8@tb{L4SN%XAjH^BT5X|RQh!Rhh!m!P3*kv|+UN$()#w?rd*#a-O1>m@bglr|$^4!0 zp1a^bjd<*UBNvfirc@zqLqybsXdxH#M<(X#?U+3Vc-D9ZdmFsZdjIb2@7w3M1@Z!g zfm?zf5zd+E>ilpP@8EyR|BP={XNWRHJNLutXnxq`s1a`x|0bRRuUsH)koHJz(gx>S z&VM++?<#gRs_|B~d$Id&w@0p!6Y>Z0C-~cqMB=@{f#?D)Ck6w!s4 zC?S3z_LHg+b#9Y(NfR+Azv?{d9O05(Yh6#ehPw0JMea@RGvw>!TjXyeA}R1Z;Mwlk z>lunsceC=S@|+_1y@)!N`J4UcAO^TUuw9*@ZiXLBSN(b>X6SAF2w{yd!m$Ri{Ti`K z8i6?P3Pc!hVFoI9S3}lq?pyzS2q;o_2**Z}7b3 z`MW3R9gALj-}|}uazrq%BVs*GDORG&yUNM_@A_l@dc-nk1uhO;AGj&dKX_3vsKxEg z>FUE^XYfA$a`frX`SXO!gks?r!mk9EV}>KM;Lbhh;)WiappV6xvJ2U^WA@S z7s+Lq<3}K}Spyy}RpY0lu$sGk+kLxzF69cPMtM!K`-{|w`QQFi1NDJcRfltecLmo5 zKP4Gk()GA@A-{zGh(AlX82bDrqN-Vr>m5fOX^1$U6kir4$tyi8y)S((UFMwReBJqp z^EB5C{ORkv@G#$X&w`g3An$>X4r6}*#Cy8$hrU~VYq5$s?3=Ch_h0B===TImf^&jg zYdXh+tim_*ue)QuWxi&_-L%%&;mcG8C^lt~GFTac*mzFx?%*$j+>Ue(4-Rk(`5*I- zAo4!UPeIhZ5TkdCxKjE|I@$RUBH#Vau~)B9yK}y4gnN&Bk*pvd&-Jdx3arAn!S|-`ecuX2 z@$Uha5y3r#17CEfHHeE}$&V36Ied;v$90Y+@cI?v!{Q$CfOuG3gHitz=T_$q#4^vi z-gl+B=ORkF7c1KR?l9uPb3M1hRt|U$dn&!RdGGgr06YC5V*IVj1^&zZrG8qgw*)o> z|41Ik)=wSdLBt8)6)td8J5CmJ#R74rxLCSd@*w(6U^X4+nuQg|$F5IZ=eP^q5kzF? zA+Db(&-UEy`Mu|R-gA6TtR_Ce+DcX)z-sw#%1!>Y{saEQ{`rBw1o99={WRDddSmV-LSbP#gyxE5tm+ z;gc}i9>RRI6sx|lyAJDsh3-Y}kKAX;4*65LuV*;sk}9k|PWBG-{>}R#_A&B(MXHZD zU3nW`Hr*fc=V68YKGs$*23`#u4)9nNYzV#;{0HeG)K8sDp5lMQ@8|8p2;l+YW#Mna zOPEClNp{TJvXq0Jlbz`Eoro*9z$?*wxYOGJKah=Bawul6K7mPreE|Ux{szLCugNh9 zwloRR-v;4H;W=QP|$F zSPpBVG4`zYh&SDLo$nTmGFiz{=it@;p@9XMH5UZ;5zU$XxP{0Rem8as{tj>RIiG>p zaaVf?Ca{73@Ea5H1n&ghFAa zut)e9I|i8!n`4pVLChr^9j%Ds)`+7dA67Q+OG^<0FU6W;cKga8j5wR5Zt?E*9`xq< zra^M@V*`{klzgR8S)|6n>r}hh39a8j@;COwy;Y7o4|8S!UjCa7rz7I1b-eEQ#BsX# zJiKfhb}MA8r+z2>NxB6ql3&8h9C4PpZgJg*ew_}xTJLVfY&JuV%cpq0>5(vV&&S@) zSzd?tG4HRvZ>l?FH~Sv(J>&a8H}Y(*4py*tyy-9f0R;lMYK)I%hc_ zfOZ~t{>J$`=X=f%oF6*><>Xxwq6@_p!v5rHtRAY|bKEbwe-FP`BR`Gxa3gwalXn}U z?9G^)&r^1&yOV=qpQmCk4RceAW}kK;Uns)fT`qPnK0x2Zuv4B;LlKiM2;71Z|GvIkI0Lb173R}^>Y61P3k!&a2Lj_E zF|5bcLtS%RKSK};>*Z@$UrL$2*uEe*u3=tqukix*?Xl8q>Q zAYyPqjSUm-RqhtVhTG6{JFx~gR4?Rd6)Fa^;ctnQ~6<7O*{EU{$|8& zcVboT5)|xiyd{W^Yp`ST2IAB~qFo#T31&$3(nr#n&WoIr;XN0?kFCV4w+|c-#fm8m zE*4;wyAsjRvw^<_GGHf_!TR8}+Mb@Rzv{E>{8Z3cfjD?2R+`z^18PR3zs~V%tgffS zQ|78Wyw76?G#$I?S2<(OInL{yKXf)DK3nU2%=v5VO)kRh^sZ~7yVU)F`$@z*Lp-a& zffnyJIi7X=O56_*dQ_biH)5n#U_F@)?4Q?@Av}z z0)*Myxcj} zIm0;<{C?p4r_<)T0y`l~TpL}#M?!lk z!Y;*X?@7KheLi2QZ=r9WuNp@H)QBLiXpf0_;LPYg^A6a`8HR|VqO8NDHJ zYv6WR!F}k9EwIe9F~)_UJLnIN362lu2d4+Ggk4kx>w;GYZ@}*G?bzA654-ih#NNz5 zv4^Pj+c5qDegSr!)?)m>&HtHC7funrDFlREAtwAx*d@Ft{8Q-Xn1+3#8pj;R5vz_`K7+4|@OT zJ>PdZ#`TN7d!UI|(T6Yi6OdvoRy~#A@Fwu~Q1FT1Z>isA_UG0h%iss_=VGpX5?r(i z9>+u2zfQwCYpgU`ib^k{&oZ2EqMtG_%bxG@y0Tq)t|_i7T~UnTMXsN!cQTG(G|xhe zf1^6{KIneT{WSIwK61Z+HMQXR*mHw-vG-@*N3qI%0%QFER%Q-(qB7sjzK0Qio~)ds zoU2Gmu2Q7bVt2Y(c>(u79>*&G#lUNUw`pIkwm)|eSvq+A5q~>oq?PWb;tIsQ3xo-Y-5R{zCi}eC-zTIq^mDRq^-YAH{dX_c1qpEPjd=_cx@| zq;DZQ7%H7Fjl>--j}(NqE|Vrn)1@CsrBbC7gRi>=dwoBYZk2w5*x_f=&#`h|Cp|7b zCH+QvUV2%2O?pe(C;dhGoAjadFRW+#IZt*D#6Ap!Z0@h_H+|rius5<^{!E_ex!3an z;=H-&;g7uIe2aa5@X5+t+=+Ta$?&`V<*?(O{__Im@EH5B*Hoj;buInXHT|jlm9V?d z_=&>3!Uw|nu&{O54HmH9xegKu*mqusy(a;&)H+y`?9=E7GULX26CyK>J3KgJrnzdFaC&rj#?<)~#l z_XDho7OVTxS1M~UuCK&gu@5nI7(3JZ1K);!UaZmG(VrUtH40cg!@9XFoG-MH>4NYaHa;uwQXR-K86VsACZB z;tdh(>YY4EkTG9}gdBJxT7ys=62Vxi5^6ESG-4;Y3Hy3Wa35j0utI1SRtYV_dPL=$ zgjQjzunqCx4tTGbfI=os{{GM(n0EVcoL?_bQg-9{C!qs@EgR+=OUoE8?N;jvd%n-0e7k z)oz>PFz)9ab#P+3m?;hr2a7`xV+ppwl!+OLX%tEBWV+7`7 zv}sXwBgR(??vZZ7=-Pvkq>iId2De=wM*}c+6g~&*$UKalDs`-^zzA8*uQ831-5421 z`9avpNF4_hlh4GR<0b7@zZ$!dWcjVQoBaRUHCy0Bwjc_RpehIi0ug~gAP|U2n3?du zBM=A#0)aq8AP^%E2n1pTA_9RxL?A{WA`lUX2m}IwKp+qZ1OgF(Ktx0!-q#m4%T~R5 z{#CIiwN<;R(E0A^)2I7*VcZYfafq%#afA6;yyzR$O8$L-&mcVhrm+Bptwe|ERc5$Z zVw2dBlS!%&MQaM^Or2e-YYdE65~6ow&V|N`ym~`+{%L4tz>Jc*7R;hqB73dlDLbZX z4%lmW=1A>z7Ur61z-I-lkQHb0EOHrB=QhT%n%u{3ub8BmT{R{h% zrzqr?AlOEY4F=^gIa8YqvqhIx)bO@W0g=`@5n+^HOqG@n2x3Ow87O!mYJoNZjm2%p>@L5#gaP^QS1|m&RMhN@+O%nKx&H} zvWx$FVFL7^^@Fr|P0qAsqS-Uk_(^c%^i&8p13iHK(CEUERuzla}~T|E%%(O!?Satc|vMC&COtXaiMxclBg-Bqxo1~Tyr*G zf$KKcK(Az(qx>|#R$QOh*oGC?Hr=GojM$}Xj39bJmpI6kNBK_Uj6@642Mpat{hNAQ z?rVn5>~+^-wc`|^WF@b5eSc&27Fh|CO)VS-LDtE-^n<3Y^aXprDwWJD7OREeG-yKb`HLF`A37}hE6Q6}irf0p+&)SxB=1Sq z|EOw!993v8v9apF^MFKRoSLLQxN(@J=8(N4`#X}vhqxCzlWoIxF5m77jN*!1>Zb*pNhk0IaOu1_)4}hg~?;emkueV zt#RSxLg0`@NYpgO4xojSzK|P>f^JdI13mwg@v#RBkqk-am%cArTA|~6=;u3>y~EB1 zZazudeEBGY{F`@<<;QDy!Ob=?W8e zpnE({n8~8VOwnOt82_5chOK|68Pr8%9th!N%Dj>mwej#TEB1DBho|G)Z5R~AAMzUH zEv!*`@!hhyi18khRH^#tD5XF9YES9>`f&%N;-IB&qVzG+#Uc)+k!YgwZlag)l+MfU zO1M2HzEO8STb`KG_ac?8qUUXuMapL8U6Cw~WrwP3reCRgRAoJ)=r!e7MAgNyj8*;D zX!;&a_gO*fp5H@Ev0hOZy`t?s?qEICeafZe0k7iVwMD}>_-LPU&INo&9iL3CJl-o` zL}MbC*=fs*)KLT%PBzR62A|Jk3+Kmgxpbi;TlywH&&rB%1+aUvlOsG!kX^7^R!Mka<2UgY}uDl_n% zx(Ko>~WJgaZl-*wxvJCnE{@; z4E56eOb@7plJx0YbHc0O#LKXW(#rs$c&bWlOR%M zs5X6EVs|zkmtm}Qz_>@3kuB$`)2%O5>FXe$`2G41#wzCgwZHI-I7VGFTThF-Gs!xs zzdq}I=aw^zxTgM=o!4T-dV>s_`i2w<)_BJ=JsDPbHQ!^r5K~;6RZqCZ1IBn{#+sTy;hwB3vZjd0 zhks`5$}siVIs`9l02uaWZ^`}19hv_A(*LSYWiLdIcRam0=uAP`S5Wc=rB{M>9Cr2* RQTDG4HnqHadFJvTd;=FOeDDAO diff --git a/LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.deps.json b/LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.deps.json deleted file mode 100644 index e87a7b96d..000000000 --- a/LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.deps.json +++ /dev/null @@ -1,202 +0,0 @@ -{ - "runtimeTarget": { - "name": ".NETCoreApp,Version=v7.0", - "signature": "" - }, - "compilationOptions": {}, - "targets": { - ".NETCoreApp,Version=v7.0": { - "LottieIslandProjection/8.0.230817-rc-FHL.2.g3e107ef073": { - "dependencies": { - "LottieIsland": "1.0.0", - "Microsoft.VisualStudio.Threading.Analyzers": "17.5.22", - "Microsoft.Windows.CsWinRT": "2.0.7", - "Microsoft.WindowsAppSDK": "1.5.240404000", - "Nerdbank.GitVersioning": "3.5.119", - "StyleCop.Analyzers": "1.1.118", - "runtimepack.Microsoft.Windows.SDK.NET.Ref": "10.0.19041.31" - }, - "runtime": { - "LottieIslandProjection.dll": {} - } - }, - "runtimepack.Microsoft.Windows.SDK.NET.Ref/10.0.19041.31": { - "runtime": { - "Microsoft.Windows.SDK.NET.dll": { - "assemblyVersion": "10.0.19041.24", - "fileVersion": "10.0.19041.31" - }, - "WinRT.Runtime.dll": { - "assemblyVersion": "2.0.0.0", - "fileVersion": "2.0.4.44211" - } - } - }, - "Microsoft.VisualStudio.Threading.Analyzers/17.5.22": {}, - "Microsoft.Windows.CsWinRT/2.0.7": { - "runtime": { - "lib/net6.0/WinRT.Runtime.dll": { - "assemblyVersion": "2.0.0.0", - "fileVersion": "2.0.7.45331" - } - } - }, - "Microsoft.Windows.SDK.BuildTools/10.0.22621.756": {}, - "Microsoft.WindowsAppSDK/1.5.240404000": { - "dependencies": { - "Microsoft.Windows.SDK.BuildTools": "10.0.22621.756" - }, - "runtime": { - "lib/net6.0-windows10.0.18362.0/Microsoft.InteractiveExperiences.Projection.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.26100.1000" - }, - "lib/net6.0-windows10.0.18362.0/Microsoft.WinUI.dll": { - "assemblyVersion": "3.0.0.0", - "fileVersion": "3.0.0.2404" - }, - "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.AppLifecycle.Projection.dll": { - "assemblyVersion": "1.5.0.0", - "fileVersion": "1.5.0.0" - }, - "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.AppNotifications.Builder.Projection.dll": { - "assemblyVersion": "1.5.0.0", - "fileVersion": "1.5.0.0" - }, - "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.AppNotifications.Projection.dll": { - "assemblyVersion": "1.5.0.0", - "fileVersion": "1.5.0.0" - }, - "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.ApplicationModel.DynamicDependency.Projection.dll": { - "assemblyVersion": "1.5.0.0", - "fileVersion": "1.5.0.0" - }, - "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.ApplicationModel.Resources.Projection.dll": { - "assemblyVersion": "1.5.0.0", - "fileVersion": "1.5.0.0" - }, - "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.ApplicationModel.WindowsAppRuntime.Projection.dll": { - "assemblyVersion": "1.5.0.0", - "fileVersion": "1.5.0.0" - }, - "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.Management.Deployment.Projection.dll": { - "assemblyVersion": "1.5.0.0", - "fileVersion": "1.5.0.0" - }, - "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.PushNotifications.Projection.dll": { - "assemblyVersion": "1.5.0.0", - "fileVersion": "1.5.0.0" - }, - "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.Security.AccessControl.Projection.dll": { - "assemblyVersion": "1.5.0.0", - "fileVersion": "1.5.0.0" - }, - "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.System.Power.Projection.dll": { - "assemblyVersion": "1.5.0.0", - "fileVersion": "1.5.0.0" - }, - "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.System.Projection.dll": { - "assemblyVersion": "1.5.0.0", - "fileVersion": "1.5.0.0" - }, - "lib/net6.0-windows10.0.18362.0/Microsoft.Windows.Widgets.Projection.dll": { - "assemblyVersion": "1.0.0.0", - "fileVersion": "1.0.0.0" - }, - "lib/net6.0-windows10.0.18362.0/Microsoft.WindowsAppRuntime.Bootstrap.Net.dll": { - "assemblyVersion": "1.5.0.0", - "fileVersion": "1.5.0.0" - } - }, - "runtimeTargets": { - "runtimes/win-arm64/native/Microsoft.WindowsAppRuntime.Bootstrap.dll": { - "rid": "win-arm64", - "assetType": "native", - "fileVersion": "1.5.0.0" - }, - "runtimes/win-x64/native/Microsoft.WindowsAppRuntime.Bootstrap.dll": { - "rid": "win-x64", - "assetType": "native", - "fileVersion": "1.5.0.0" - }, - "runtimes/win-x86/native/Microsoft.WindowsAppRuntime.Bootstrap.dll": { - "rid": "win-x86", - "assetType": "native", - "fileVersion": "1.5.0.0" - }, - "runtimes/win10-arm64/native/Microsoft.WindowsAppRuntime.Bootstrap.dll": { - "rid": "win10-arm64", - "assetType": "native", - "fileVersion": "1.5.0.0" - }, - "runtimes/win10-x64/native/Microsoft.WindowsAppRuntime.Bootstrap.dll": { - "rid": "win10-x64", - "assetType": "native", - "fileVersion": "1.5.0.0" - }, - "runtimes/win10-x86/native/Microsoft.WindowsAppRuntime.Bootstrap.dll": { - "rid": "win10-x86", - "assetType": "native", - "fileVersion": "1.5.0.0" - } - } - }, - "Nerdbank.GitVersioning/3.5.119": {}, - "StyleCop.Analyzers/1.1.118": {} - } - }, - "libraries": { - "LottieIslandProjection/8.0.230817-rc-FHL.2.g3e107ef073": { - "type": "project", - "serviceable": false, - "sha512": "" - }, - "runtimepack.Microsoft.Windows.SDK.NET.Ref/10.0.19041.31": { - "type": "runtimepack", - "serviceable": false, - "sha512": "" - }, - "Microsoft.VisualStudio.Threading.Analyzers/17.5.22": { - "type": "package", - "serviceable": true, - "sha512": "sha512-WzCsniKpC6S9yAerB+Od8pK8RytxW+fFSZ+GjL0y0XdIb7H/os71bWFbKMXxB1omDLZHNm1IdBlcLQm4KmS/AQ==", - "path": "microsoft.visualstudio.threading.analyzers/17.5.22", - "hashPath": "microsoft.visualstudio.threading.analyzers.17.5.22.nupkg.sha512" - }, - "Microsoft.Windows.CsWinRT/2.0.7": { - "type": "package", - "serviceable": true, - "sha512": "sha512-l2PNM7ZpWh+0oGmESofqKcUz1PkkzOU4hmqM4DYi4gIjp36dJlQR6vuU9bAjZYX1SHYj360NqEireFVRntYhSQ==", - "path": "microsoft.windows.cswinrt/2.0.7", - "hashPath": "microsoft.windows.cswinrt.2.0.7.nupkg.sha512" - }, - "Microsoft.Windows.SDK.BuildTools/10.0.22621.756": { - "type": "package", - "serviceable": true, - "sha512": "sha512-7ZL2sFSioYm1Ry067Kw1hg0SCcW5kuVezC2SwjGbcPE61Nn+gTbH86T73G3LcEOVj0S3IZzNuE/29gZvOLS7VA==", - "path": "microsoft.windows.sdk.buildtools/10.0.22621.756", - "hashPath": "microsoft.windows.sdk.buildtools.10.0.22621.756.nupkg.sha512" - }, - "Microsoft.WindowsAppSDK/1.5.240404000": { - "type": "package", - "serviceable": true, - "sha512": "sha512-B06pJv0nH31vf4Df72Qoa8A+i12LBUQ/3LhpyWVEQ83opd2a5U49XnqqYrK/T8J6Zf4JTxfLvKBSM5fgXb1YXg==", - "path": "microsoft.windowsappsdk/1.5.240404000", - "hashPath": "microsoft.windowsappsdk.1.5.240404000.nupkg.sha512" - }, - "Nerdbank.GitVersioning/3.5.119": { - "type": "package", - "serviceable": true, - "sha512": "sha512-x8k4zV6YKZA5Rr810439lG9NngdbyPtFv0QpIYz32m1Im59kvSbEHO8gKGZoNvsfZSquayjEDUCa8acbut372g==", - "path": "nerdbank.gitversioning/3.5.119", - "hashPath": "nerdbank.gitversioning.3.5.119.nupkg.sha512" - }, - "StyleCop.Analyzers/1.1.118": { - "type": "package", - "serviceable": true, - "sha512": "sha512-Onx6ovGSqXSK07n/0eM3ZusiNdB6cIlJdabQhWGgJp3Vooy9AaLS/tigeybOJAobqbtggTamoWndz72JscZBvw==", - "path": "stylecop.analyzers/1.1.118", - "hashPath": "stylecop.analyzers.1.1.118.nupkg.sha512" - } - } -} \ No newline at end of file diff --git a/LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.dll b/LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.dll deleted file mode 100644 index 8e08c7e15f1775ef57d7a1b3e293b659f9459208..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 44544 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 diff --git a/LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.xml b/LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.xml deleted file mode 100644 index dbff4144d..000000000 --- a/LottieIslandProjection/nuget/net7.0-windows10.0.19041.0/LottieIslandProjection.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - LottieIslandProjection - - - - diff --git a/LottieIslandProjection/readme.md b/LottieIslandProjection/nuget/readme.md similarity index 100% rename from LottieIslandProjection/readme.md rename to LottieIslandProjection/nuget/readme.md diff --git a/LottieWinRT/AnimatedVisual.cs b/LottieWinRT/AnimatedVisual.cs index c77f8c709..64b7f5ab9 100644 --- a/LottieWinRT/AnimatedVisual.cs +++ b/LottieWinRT/AnimatedVisual.cs @@ -7,7 +7,7 @@ using Microsoft.UI.Composition; using MUXC = Microsoft.UI.Xaml.Controls; -namespace LottieWinRT +namespace CommunityToolkit.WinAppSDK.LottieWinRT { public sealed class AnimatedVisual : CommunityToolkit.WinAppSDK.LottieIsland.IAnimatedVisualFrameworkless { diff --git a/LottieWinRT/LottieVisualSourceWinRT.cs b/LottieWinRT/LottieVisualSourceWinRT.cs index 71d367762..acf703e00 100644 --- a/LottieWinRT/LottieVisualSourceWinRT.cs +++ b/LottieWinRT/LottieVisualSourceWinRT.cs @@ -8,7 +8,7 @@ using LottieIsland = CommunityToolkit.WinAppSDK.LottieIsland; using MUXC = Microsoft.UI.Xaml.Controls; -namespace LottieWinRT +namespace CommunityToolkit.WinAppSDK.LottieWinRT { public sealed class LottieVisualSourceWinRT { diff --git a/LottieWinRT/LottieWinRT.csproj b/LottieWinRT/LottieWinRT.csproj index 6b1f53ba3..7519a0f1e 100644 --- a/LottieWinRT/LottieWinRT.csproj +++ b/LottieWinRT/LottieWinRT.csproj @@ -8,18 +8,15 @@ However, AnyCPU is not supported for C++ projects consuming a C# WinRT component via project references. So we build for individual platforms as well. --> - x64;x86;ARM64 + AnyCPU;x64;x86;ARM64 true - - LottieWinRT - 0.1.1-prerelease.1 + CommunityToolkit.WinAppSDK.LottieWinRT + CommunityToolkit.WinAppSDK.LottieWinRT win10-x86;win10-x64;win10-arm64 10.0.19041.0 true - + true None diff --git a/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp b/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp index 151168901..4aef93145 100644 --- a/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp +++ b/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp @@ -8,7 +8,7 @@ #include // For ContentPreTranslateMessage #include -#include +#include namespace winrt { @@ -16,7 +16,7 @@ namespace winrt using namespace winrt::Microsoft::UI; using namespace winrt::Microsoft::UI::Content; using namespace winrt::Microsoft::UI::Dispatching; - using namespace winrt::LottieWinRT; + using namespace winrt::CommunityToolkit::WinAppSDK::LottieWinRT; using namespace winrt::CommunityToolkit::WinAppSDK::LottieIsland; using float2 = winrt::Windows::Foundation::Numerics::float2; } @@ -52,6 +52,7 @@ constexpr int k_padding = 10; constexpr int k_buttonWidth = 150; constexpr int k_buttonHeight = 40; +void LayoutBridge(WindowInfo* windowInfo, int tlwWidth, int tlwHeight); void LayoutButton(ButtonType type, int tlwWidth, int tlwHeight, HWND topLevelWindow); void CreateWin32Button(ButtonType type, const std::wstring_view& text, HWND parentHwnd); void OnButtonClicked(ButtonType type, WindowInfo* windowInfo, HWND topLevelWindow); @@ -204,13 +205,18 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) windowInfo->Bridge.Show(); winrt::LottieVisualSourceWinRT lottieVisualSource = winrt::LottieVisualSourceWinRT::CreateFromString(L"ms-appx:///LottieLogo1.json"); - lottieVisualSource.AnimatedVisualInvalidated([windowInfo, lottieVisualSource](const winrt::IInspectable&, auto&&) + lottieVisualSource.AnimatedVisualInvalidated([hWnd, windowInfo, lottieVisualSource](const winrt::IInspectable&, auto&&) { - windowInfo->Compositor.DispatcherQueue().TryEnqueue([windowInfo, lottieVisualSource]() + windowInfo->Compositor.DispatcherQueue().TryEnqueue([hWnd, windowInfo, lottieVisualSource]() { winrt::Windows::Foundation::IInspectable diagnostics; winrt::IAnimatedVisualFrameworkless animatedVisual = lottieVisualSource.TryCreateAnimatedVisual(windowInfo->Compositor, diagnostics); windowInfo->LottieIsland.AnimatedVisual(animatedVisual.as()); + + // Resize bridge + RECT rect; + GetClientRect(hWnd, &rect); + LayoutBridge(windowInfo, rect.right - rect.left, rect.bottom-rect.top); }); }); @@ -233,27 +239,7 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) if (windowInfo->Bridge) { - // Layout our bridge: we want to use all available height (minus a button and some padding), - // but respect the ratio that the LottieIsland wants to display at. This can be accessed through - // the "RequestedSize" property on the ContentSiteView. - - int availableHeight = height - (k_padding * 3) - k_buttonHeight; - int availableWidth = width - (k_padding * 2); - - // Check what size the lottie wants to be - winrt::float2 requestedSize = windowInfo->Bridge.SiteView().RequestedSize(); - - // Scale the width to be the ratio the lottie wants - int bridgeWidth = 0; - if (requestedSize.y > 0) // Guard against divide-by-zero - { - bridgeWidth = static_cast((requestedSize.x / requestedSize.y) * availableHeight); - } - - // ... but don't overflow the width we have available - bridgeWidth = std::min(availableWidth, bridgeWidth); - - windowInfo->Bridge.MoveAndResize({ k_padding, k_padding, bridgeWidth, availableHeight }); + LayoutBridge(windowInfo, width, height); } LayoutButton(ButtonType::PlayButton, width, height, hWnd); @@ -349,6 +335,32 @@ INT_PTR CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) return (INT_PTR)FALSE; } +void LayoutBridge(WindowInfo* windowInfo, int width, int height) +{ + // Layout our bridge: we want to use all available height (minus a button and some padding), + // but respect the ratio that the LottieIsland wants to display at. This can be accessed through + // the "RequestedSize" property on the ContentSiteView. + + int availableHeight = height - (k_padding * 3) - k_buttonHeight; + int availableWidth = width - (k_padding * 2); + + + // Check what size the lottie wants to be + winrt::float2 requestedSize = windowInfo->Bridge.SiteView().RequestedSize(); + + // Scale the width to be the ratio the lottie wants + int bridgeWidth = 0; + if (requestedSize.y > 0) // Guard against divide-by-zero + { + bridgeWidth = static_cast((requestedSize.x / requestedSize.y) * availableHeight); + } + + // ... but don't overflow the width we have available + bridgeWidth = std::min(availableWidth, bridgeWidth); + + windowInfo->Bridge.MoveAndResize({ k_padding, k_padding, bridgeWidth, availableHeight }); +} + void LayoutButton(ButtonType type, int /*tlwWidth*/, int tlwHeight, HWND topLevelWindow) { int buttonIndex = static_cast(type); diff --git a/version.json b/version.json index eb07ae7a8..a97cf20b5 100644 --- a/version.json +++ b/version.json @@ -1,5 +1,5 @@ { - "version": "8.0.230818-rc-FHL.{height}", + "version": "8.0.230818-rc-LottieIsland.{height}", "publicReleaseRefSpec": [ "^refs/heads/main$", // we release out of main "^refs/heads/dev$", // we release out of dev From 9e92f8ea0b879f8b34da9a3d8e6f966e19b0239d Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Thu, 25 Apr 2024 15:51:14 -0400 Subject: [PATCH 27/40] Make nuget package for LottieWinRT include projection DLLs for project references --- LottieIsland/LottieIsland.vcxproj | 2 +- .../LottieIslandProjection.csproj | 2 +- ...ityToolkit.WinAppSDK.LottieIsland-native.targets | 1 - .../CommunityToolkit.WinAppSDK.LottieIsland.nuspec | 2 +- LottieWinRT/LottieWinRT.csproj | 13 +++++++++++-- 5 files changed, 14 insertions(+), 6 deletions(-) diff --git a/LottieIsland/LottieIsland.vcxproj b/LottieIsland/LottieIsland.vcxproj index 7055a95ef..1f358758f 100644 --- a/LottieIsland/LottieIsland.vcxproj +++ b/LottieIsland/LottieIsland.vcxproj @@ -12,7 +12,7 @@ CommunityToolkit.WinAppSDK.LottieIsland CommunityToolkit.WinAppSDK.LottieIsland - 0.2.5-prerelease + 0.2.6-prerelease en-US 14.0 Windows Store diff --git a/LottieIslandProjection/LottieIslandProjection.csproj b/LottieIslandProjection/LottieIslandProjection.csproj index dfbfe446c..6930879f8 100644 --- a/LottieIslandProjection/LottieIslandProjection.csproj +++ b/LottieIslandProjection/LottieIslandProjection.csproj @@ -5,7 +5,7 @@ net7.0-windows10.0.19041.0 CommunityToolkit.WinAppSDK.LottieIsland - 0.2.5-prerelease + 0.2.6-prerelease Any CPU diff --git a/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland-native.targets b/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland-native.targets index 76e9c444c..c26e7ef56 100644 --- a/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland-native.targets +++ b/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland-native.targets @@ -11,7 +11,6 @@ CommunityToolkit.WinAppSDK.LottieIsland.dll - diff --git a/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland.nuspec b/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland.nuspec index 2f2493128..a4cd61dc4 100644 --- a/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland.nuspec +++ b/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland.nuspec @@ -4,7 +4,7 @@ CommunityToolkit.WinAppSDK.LottieIsland Microsoft - 0.2.5-prerelease + 0.2.6-prerelease A ContentIsland to host Lottie Animations images\icon.png docs\readme.md diff --git a/LottieWinRT/LottieWinRT.csproj b/LottieWinRT/LottieWinRT.csproj index 7519a0f1e..b15622eec 100644 --- a/LottieWinRT/LottieWinRT.csproj +++ b/LottieWinRT/LottieWinRT.csproj @@ -31,10 +31,19 @@ - - + + + + $(TargetsForTfmSpecificBuildOutput);CopyProjectReferencesToPackage + + + + + + + From 1167c74cdf99ffef7aa361d80b7c5836f2dbcfd3 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Thu, 25 Apr 2024 16:00:35 -0400 Subject: [PATCH 28/40] Remove AnyCPU from LottieWinRT --- Lottie-Windows.sln | 12 ++++++------ LottieWinRT/LottieWinRT.csproj | 6 +----- 2 files changed, 7 insertions(+), 11 deletions(-) diff --git a/Lottie-Windows.sln b/Lottie-Windows.sln index 2fd8fe736..5f51054fb 100644 --- a/Lottie-Windows.sln +++ b/Lottie-Windows.sln @@ -534,8 +534,8 @@ Global {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x64.Build.0 = Release|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x86.ActiveCfg = Release|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x86.Build.0 = Release|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.ActiveCfg = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.Build.0 = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.ActiveCfg = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.ActiveCfg = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM64.ActiveCfg = Debug|ARM64 @@ -544,8 +544,8 @@ Global {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x64.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x86.ActiveCfg = Debug|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x86.Build.0 = Debug|x86 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.Build.0 = Debug|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.ActiveCfg = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.ActiveCfg = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM64.ActiveCfg = Debug|ARM64 @@ -554,8 +554,8 @@ Global {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x64.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x86.ActiveCfg = Debug|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x86.Build.0 = Debug|x86 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.ActiveCfg = Release|Any CPU - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.Build.0 = Release|Any CPU + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.ActiveCfg = Release|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.Build.0 = Release|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM.ActiveCfg = Release|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM.Build.0 = Release|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM64.ActiveCfg = Release|ARM64 diff --git a/LottieWinRT/LottieWinRT.csproj b/LottieWinRT/LottieWinRT.csproj index b15622eec..7719ca038 100644 --- a/LottieWinRT/LottieWinRT.csproj +++ b/LottieWinRT/LottieWinRT.csproj @@ -4,11 +4,7 @@ net7.0-windows10.0.19041.0 true enable - - AnyCPU;x64;x86;ARM64 + x64;x86;ARM64 true CommunityToolkit.WinAppSDK.LottieWinRT CommunityToolkit.WinAppSDK.LottieWinRT From b40f53f36cbdfcd59376c11a3ef6a1a44ef3687f Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Thu, 25 Apr 2024 16:23:03 -0400 Subject: [PATCH 29/40] Remove build target for LottieWinRT AnyCPU --- Lottie-Windows.sln | 3 --- 1 file changed, 3 deletions(-) diff --git a/Lottie-Windows.sln b/Lottie-Windows.sln index 5f51054fb..662a3381c 100644 --- a/Lottie-Windows.sln +++ b/Lottie-Windows.sln @@ -535,7 +535,6 @@ Global {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x86.ActiveCfg = Release|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x86.Build.0 = Release|Any CPU {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.ActiveCfg = Debug|x64 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.ActiveCfg = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM64.ActiveCfg = Debug|ARM64 @@ -545,7 +544,6 @@ Global {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x86.ActiveCfg = Debug|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x86.Build.0 = Debug|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.ActiveCfg = Debug|x64 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.ActiveCfg = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM64.ActiveCfg = Debug|ARM64 @@ -555,7 +553,6 @@ Global {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x86.ActiveCfg = Debug|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x86.Build.0 = Debug|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.ActiveCfg = Release|x64 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.Build.0 = Release|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM.ActiveCfg = Release|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM.Build.0 = Release|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM64.ActiveCfg = Release|ARM64 From 9a0ce7c2fb8154de59ea400b885b2ca04865b7ac Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Thu, 25 Apr 2024 16:59:13 -0400 Subject: [PATCH 30/40] Removed a few comments --- LottieWinRT/LottieWinRT.csproj | 10 ---------- azure-pipelines.yml | 2 +- 2 files changed, 1 insertion(+), 11 deletions(-) diff --git a/LottieWinRT/LottieWinRT.csproj b/LottieWinRT/LottieWinRT.csproj index 7719ca038..a18917bbd 100644 --- a/LottieWinRT/LottieWinRT.csproj +++ b/LottieWinRT/LottieWinRT.csproj @@ -13,11 +13,8 @@ true true - None - @@ -50,11 +47,4 @@ - - diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 0b752440e..2d89c8a06 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -53,7 +53,7 @@ steps: - powershell: .\build\Install-WindowsSdkISO.ps1 18362 displayName: Insider SDK -# TODO - figure out why this is not getting restored as part of the solution restore +# Restore the solution - script: | nuget restore Lottie-Windows.sln displayName: Nuget Restore LottieIsland From 0840bbbefe7f8558da059ff3b2ac73804171e58a Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Fri, 26 Apr 2024 00:11:16 -0400 Subject: [PATCH 31/40] Add Lottie-Windows-WinUI3-Controls project and package to remove the XAML dependency from Lottie-Windows-WinUI3 --- .../Lottie-Windows-WinUI3-Controls.csproj | 23 ++ .../LottieVisualSourceWinUI.cs | 219 +++++++++++ .../LottieVisualWinUI.cs | 30 ++ Lottie-Windows.sln | 79 ++-- .../Lottie-Windows-WinUI3.csproj | 4 + ...ommunityToolkit.WinAppSDK.LottieIsland.idl | 1 + LottieWinRT/AnimatedVisual.cs | 5 +- LottieWinRT/LottieVisualSourceWinRT.cs | 16 +- source/Lottie/AnimatedVisualFactory.cs | 12 +- source/Lottie/DisposableAnimatedVisual.cs | 9 +- source/Lottie/DotLottieLoader.cs | 8 +- source/Lottie/Instantiator.cs | 7 +- source/Lottie/Lottie.projitems | 1 - source/Lottie/LottieVisualSource.cs | 41 ++- .../Lottie/LottieVisualSourceFrameworkless.cs | 341 ------------------ 15 files changed, 376 insertions(+), 420 deletions(-) create mode 100644 Lottie-Windows-WinUI3-Controls/Lottie-Windows-WinUI3-Controls.csproj create mode 100644 Lottie-Windows-WinUI3-Controls/LottieVisualSourceWinUI.cs create mode 100644 Lottie-Windows-WinUI3-Controls/LottieVisualWinUI.cs delete mode 100644 source/Lottie/LottieVisualSourceFrameworkless.cs diff --git a/Lottie-Windows-WinUI3-Controls/Lottie-Windows-WinUI3-Controls.csproj b/Lottie-Windows-WinUI3-Controls/Lottie-Windows-WinUI3-Controls.csproj new file mode 100644 index 000000000..49a8fac31 --- /dev/null +++ b/Lottie-Windows-WinUI3-Controls/Lottie-Windows-WinUI3-Controls.csproj @@ -0,0 +1,23 @@ + + + net7.0-windows10.0.19041.0 + Library + + CommunityToolkit.WinUI.Lottie.Controls + WinUI3 Toolkit Windows Animations Lottie XAML + + enable + AnyCPU + Microsoft + True + + + + + + + + + + + diff --git a/Lottie-Windows-WinUI3-Controls/LottieVisualSourceWinUI.cs b/Lottie-Windows-WinUI3-Controls/LottieVisualSourceWinUI.cs new file mode 100644 index 000000000..0e8b0d8a9 --- /dev/null +++ b/Lottie-Windows-WinUI3-Controls/LottieVisualSourceWinUI.cs @@ -0,0 +1,219 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +#nullable enable + +using System; +using System.Collections.Generic; +using System.Linq; +using System.Runtime.InteropServices.WindowsRuntime; +using System.Threading.Tasks; +using CommunityToolkit.WinAppSDK.LottieIsland; +using CommunityToolkit.WinUI.Lottie; +using Microsoft.UI.Composition; +using Microsoft.UI.Xaml; +using Microsoft.UI.Xaml.Controls; +using Windows.Foundation; +using Windows.Foundation.Metadata; +using Windows.Storage; +using Windows.Storage.Streams; + +namespace CommunityToolkit.WinUI.Lottie.Controls +{ + /// + /// An for a Lottie composition. This allows + /// a Lottie to be specified as the source for a . + /// + public sealed class LottieVisualSourceWinUI : DependencyObject, IDynamicAnimatedVisualSource + { + LottieVisualSource _lottieVisualSource; + + HashSet> _compositionInvalidatedEventTokenTable = new HashSet>(); + + /// + /// Gets the options for the . + /// + // Optimize Lotties by default. Optimization takes a little longer but usually produces much + // more efficient translations. The only reason someone would turn optimization off is if + // the time to translate is too high, but in that case the Lottie is probably going to perform + // so badly on the machine that it won't really be usable with our without optimization. + public static DependencyProperty OptionsProperty { get; } = + RegisterDp(nameof(Options), LottieVisualOptions.Optimize); + + /// + /// Gets the URI from which to load a JSON Lottie file. + /// + public static DependencyProperty UriSourceProperty { get; } = + RegisterDp(nameof(UriSource), null, + (owner, oldValue, newValue) => owner._lottieVisualSource.UriSource = newValue); + + static DependencyProperty RegisterDp(string propertyName, T defaultValue) => + DependencyProperty.Register(propertyName, typeof(T), typeof(LottieVisualSourceWinUI), new PropertyMetadata(defaultValue)); + + static DependencyProperty RegisterDp(string propertyName, T? defaultValue, Action callback) + where T : class + => + DependencyProperty.Register(propertyName, typeof(T), typeof(LottieVisualSourceWinUI), + new PropertyMetadata(defaultValue, (d, e) => callback((LottieVisualSourceWinUI)d, (T)e.OldValue, (T)e.NewValue))); + + /// + /// Initializes a new instance of the class. + /// + public LottieVisualSourceWinUI() + { + _lottieVisualSource = new LottieVisualSource(); + _lottieVisualSource.AnimatedVisualInvalidated += OnAnimatedVisualInvalidated; + } + + public LottieVisualSourceWinUI(LottieVisualSource lottieVisualSource) + { + _lottieVisualSource = lottieVisualSource; + _lottieVisualSource.AnimatedVisualInvalidated += OnAnimatedVisualInvalidated; + } + + /// + /// Gets or sets options for how the Lottie is loaded. + /// + public LottieVisualOptions Options + { + get => (LottieVisualOptions)GetValue(OptionsProperty); + set => SetValue(OptionsProperty, value); + } + + /// + /// Gets or sets the Uniform Resource Identifier (URI) of the JSON source file for this . + /// + public Uri UriSource + { + get => (Uri)GetValue(UriSourceProperty); + set => SetValue(UriSourceProperty, value); + } + + /// + /// Called by XAML to convert a string to an . + /// + /// The for the given url. + public static LottieVisualSourceWinUI? CreateFromString(string uri) + { + LottieVisualSource? lottieVisualSource = LottieVisualSource.CreateFromString(uri); + if (lottieVisualSource != null) + { + return new LottieVisualSourceWinUI(lottieVisualSource); + } + else + { + return new LottieVisualSourceWinUI(); + } + } + + /// + /// Sets the source for the . + /// + /// A stream containing the text of a JSON Lottie file encoded as UTF-8. + /// An that completes when the load completes or fails. + [Overload("SetSourceStreamAsync")] + public IAsyncAction SetSourceAsync(IInputStream stream) + { + return _lottieVisualSource.SetSourceAsync(stream); + } + + /// + /// Sets the source for the . + /// + /// A file that is a JSON Lottie file. + /// An that completes when the load completes or fails. + [Overload("SetSourceFileAsync")] + public IAsyncAction SetSourceAsync(StorageFile file) + { + return _lottieVisualSource.SetSourceAsync(file); + } + + /// + /// Sets the source for the . + /// + /// A URI that refers to a JSON Lottie file. + /// An that completes when the load completes or fails. + [DefaultOverload] + [Overload("SetSourceUriAsync")] + public IAsyncAction SetSourceAsync(Uri sourceUri) + { + return _lottieVisualSource.SetSourceAsync(sourceUri); + } + + /// + /// Implements . + /// + // TODO: currently explicitly implemented interfaces are causing a problem with .NET Native. Make them implicit for now. + public event TypedEventHandler AnimatedVisualInvalidated + { + add + { + _compositionInvalidatedEventTokenTable.Add(value); + } + + remove + { + _compositionInvalidatedEventTokenTable.Remove(value); + } + } + + /// + /// Sets a delegate that returns an for the given image uri. + /// If this is null, no images will be loaded from references to external images. + /// + /// Most Lottie files do not reference external images, but those that do + /// will refer to the files via a uri. It is up to the user of + /// to manage the loading of the image, and return an for + /// that image. Alternatively the delegate may return null, and the image will not be + /// displayed. + public void SetImageAssetHandler(ImageAssetHandler? imageAssetHandler) + { + _lottieVisualSource.SetImageAssetHandler(imageAssetHandler); + } + + /// + /// Implements . + /// + /// The that can be used as a factory for the resulting . + /// An optional object that may provide extra information about the result. + /// An . + // TODO: currently explicitly implemented interfaces are causing a problem with .NET Native. Make them implicit for now. + //bool IAnimatedVisualSource.TryCreateAnimatedVisual( + public IAnimatedVisual? TryCreateAnimatedVisual( + Compositor compositor, + out object? diagnostics) + { + if (_lottieVisualSource is null) + { + // No content has been loaded yet. + // Return an IAnimatedVisual that produces nothing. + diagnostics = null; + return null; + } + else + { + // Some content was loaded. Ask the factory to produce an + // IAnimatedVisual. If it returns null, the player will treat it + // as an error. + IAnimatedVisualFrameworkless? animatedVisual = _lottieVisualSource.TryCreateAnimatedVisual(compositor, out diagnostics); + if (animatedVisual != null) + { + return new LottieVisualWinUI(animatedVisual); + } + else + { + return null; + } + } + } + + private void OnAnimatedVisualInvalidated(LottieVisualSource? sender, object? args) + { + foreach (var v in _compositionInvalidatedEventTokenTable) + { + v.Invoke(this, null); + } + } + } +} \ No newline at end of file diff --git a/Lottie-Windows-WinUI3-Controls/LottieVisualWinUI.cs b/Lottie-Windows-WinUI3-Controls/LottieVisualWinUI.cs new file mode 100644 index 000000000..eafb009be --- /dev/null +++ b/Lottie-Windows-WinUI3-Controls/LottieVisualWinUI.cs @@ -0,0 +1,30 @@ +using System; +using System.Numerics; +using CommunityToolkit.WinAppSDK.LottieIsland; +using Microsoft.UI.Composition; +using Microsoft.UI.Xaml.Controls; +using WinRT; + +namespace CommunityToolkit.WinUI.Lottie.Controls +{ + internal class LottieVisualWinUI : IAnimatedVisual + { + IAnimatedVisualFrameworkless _animatedVisual; + + internal LottieVisualWinUI(IAnimatedVisualFrameworkless animatedVisual) + { + _animatedVisual = animatedVisual; + } + + public TimeSpan Duration => _animatedVisual.Duration; + + public Visual RootVisual => _animatedVisual.RootVisual; + + public Vector2 Size => _animatedVisual.Size; + + public void Dispose() + { + _animatedVisual.As().Dispose(); + } + } +} diff --git a/Lottie-Windows.sln b/Lottie-Windows.sln index 662a3381c..86a3d0415 100644 --- a/Lottie-Windows.sln +++ b/Lottie-Windows.sln @@ -176,6 +176,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LottieIslandProjection", "L EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SimpleLottieIslandApp", "SimpleLottieIslandApp\SimpleLottieIslandApp.vcxproj", "{350A5EC2-B156-4AAF-9D80-A864C76BA0C5}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lottie-Windows-WinUI3-Controls", "Lottie-Windows-WinUI3-Controls\Lottie-Windows-WinUI3-Controls.csproj", "{A896C58F-1A1D-49A5-9044-75312051C455}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution BETA|Any CPU = BETA|Any CPU @@ -657,6 +659,36 @@ Global {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x86.ActiveCfg = Release|Win32 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x86.Build.0 = Release|Win32 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x86.Deploy.0 = Release|Win32 + {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|Any CPU.ActiveCfg = Debug|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|Any CPU.Build.0 = Debug|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|ARM.ActiveCfg = Debug|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|ARM.Build.0 = Debug|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|ARM64.ActiveCfg = Debug|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|ARM64.Build.0 = Debug|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|x64.ActiveCfg = Debug|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|x64.Build.0 = Debug|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|x86.ActiveCfg = Debug|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|x86.Build.0 = Debug|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|ARM.ActiveCfg = Debug|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|ARM.Build.0 = Debug|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|ARM64.Build.0 = Debug|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|x64.ActiveCfg = Debug|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|x64.Build.0 = Debug|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|x86.ActiveCfg = Debug|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|x86.Build.0 = Debug|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.Release|Any CPU.Build.0 = Release|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.Release|ARM.ActiveCfg = Release|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.Release|ARM.Build.0 = Release|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.Release|ARM64.ActiveCfg = Release|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.Release|ARM64.Build.0 = Release|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.Release|x64.ActiveCfg = Release|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.Release|x64.Build.0 = Release|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.Release|x86.ActiveCfg = Release|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.Release|x86.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -711,22 +743,6 @@ Global source\LottieReader\LottieReader.projitems*{4e7d8957-3f5f-46e1-99a8-2012b806c9b0}*SharedItemsImports = 13 source\LottieData\LottieData.projitems*{6221591a-e8f4-4a5e-8f0c-2651c24ad495}*SharedItemsImports = 5 source\WinCompData\WinCompData.projitems*{68317393-f5a5-4b2c-918a-688db2c10f54}*SharedItemsImports = 5 - source\Animatables\Animatables.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 - source\CompMetadata\CompMetadata.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 - source\DotLottie\DotLottie.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 - source\GenericData\GenericData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 - source\LottieData\LottieData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 - source\LottieGenExe\LottieGenExe.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 - source\LottieGen\LottieGen.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 - source\LottieMetadata\LottieMetadata.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 - source\LottieReader\LottieReader.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 - source\LottieToWinComp\LottieToWinComp.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 - source\UIDataCodeGen\UIDataCodeGen.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 - source\UIData\UIData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 - source\WinCompData\WinCompData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 - source\WinStorageStreamsData\WinStorageStreamsData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 - source\WinUIXamlMediaData\WinUIXamlMediaData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 - source\YamlData\YamlData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 source\DotLottie\DotLottie.projitems*{7012420d-624c-4bd4-a1d2-1c6c1655ed3a}*SharedItemsImports = 13 source\UIData\UIData.projitems*{74601e6c-2dfe-4842-b170-047941abff2c}*SharedItemsImports = 13 source\LottieGen\LottieGen.projitems*{7654a857-9a99-4185-9f8e-dd0ce662af23}*SharedItemsImports = 13 @@ -762,37 +778,6 @@ Global source\UIDataCodeGen\UIDataCodeGen.projitems*{d02be6c8-14db-4b4f-8600-f3c9b69c104d}*SharedItemsImports = 13 source\LottieGenExe\LottieGenExe.projitems*{dc7f7a39-b7a7-40b4-937a-601460cae38c}*SharedItemsImports = 13 source\NullablesAttributes\NullablesAttributes.projitems*{e32587a8-94e8-4b68-91ad-f3612a48a62b}*SharedItemsImports = 13 - source\Animatables\Animatables.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\CompMetadata\CompMetadata.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\DotLottie\DotLottie.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\GenericData\GenericData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\LottieData\LottieData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\LottieMetadata\LottieMetadata.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\LottieReader\LottieReader.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\LottieToWinComp\LottieToWinComp.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\Lottie\Lottie.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\NullablesAttributes\NullablesAttributes.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\UIData\UIData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\WinCompData\WinCompData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\WinStorageStreamsData\WinStorageStreamsData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\WinUIXamlMediaData\WinUIXamlMediaData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\YamlData\YamlData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 - source\Animatables\Animatables.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 - source\CompMetadata\CompMetadata.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 - source\DotLottie\DotLottie.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 - source\GenericData\GenericData.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 - source\LottieData\LottieData.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 - source\LottieGenExe\LottieGenExe.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 - source\LottieGen\LottieGen.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 - source\LottieMetadata\LottieMetadata.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 - source\LottieReader\LottieReader.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 - source\LottieToWinComp\LottieToWinComp.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 - source\UIDataCodeGen\UIDataCodeGen.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 - source\UIData\UIData.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 - source\WinCompData\WinCompData.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 - source\WinStorageStreamsData\WinStorageStreamsData.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 - source\WinUIXamlMediaData\WinUIXamlMediaData.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 - source\YamlData\YamlData.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 source\Animatables\Animatables.projitems*{fc89273a-b2da-4625-8a73-ef02a658d65e}*SharedItemsImports = 13 EndGlobalSection EndGlobal diff --git a/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj b/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj index 4bb7bc772..d3f41624d 100644 --- a/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj +++ b/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj @@ -19,6 +19,10 @@ + + + + diff --git a/LottieIsland/CommunityToolkit.WinAppSDK.LottieIsland.idl b/LottieIsland/CommunityToolkit.WinAppSDK.LottieIsland.idl index 271d7252b..d6d684ca7 100644 --- a/LottieIsland/CommunityToolkit.WinAppSDK.LottieIsland.idl +++ b/LottieIsland/CommunityToolkit.WinAppSDK.LottieIsland.idl @@ -1,6 +1,7 @@ namespace CommunityToolkit.WinAppSDK.LottieIsland { interface IAnimatedVisualFrameworkless + requires Windows.Foundation.IClosable { Windows.Foundation.TimeSpan Duration{ get; }; Microsoft.UI.Composition.Visual RootVisual{ get; }; diff --git a/LottieWinRT/AnimatedVisual.cs b/LottieWinRT/AnimatedVisual.cs index 64b7f5ab9..4610acc50 100644 --- a/LottieWinRT/AnimatedVisual.cs +++ b/LottieWinRT/AnimatedVisual.cs @@ -5,19 +5,18 @@ using System.Numerics; using Microsoft.UI; using Microsoft.UI.Composition; -using MUXC = Microsoft.UI.Xaml.Controls; namespace CommunityToolkit.WinAppSDK.LottieWinRT { public sealed class AnimatedVisual : CommunityToolkit.WinAppSDK.LottieIsland.IAnimatedVisualFrameworkless { - private MUXC.IAnimatedVisual? _animatedVisual; + private CommunityToolkit.WinAppSDK.LottieIsland.IAnimatedVisualFrameworkless? _animatedVisual; public AnimatedVisual() { } - internal AnimatedVisual(MUXC.IAnimatedVisual visual) + internal AnimatedVisual(CommunityToolkit.WinAppSDK.LottieIsland.IAnimatedVisualFrameworkless visual) { _animatedVisual = visual; } diff --git a/LottieWinRT/LottieVisualSourceWinRT.cs b/LottieWinRT/LottieVisualSourceWinRT.cs index acf703e00..b3beb3ee9 100644 --- a/LottieWinRT/LottieVisualSourceWinRT.cs +++ b/LottieWinRT/LottieVisualSourceWinRT.cs @@ -3,10 +3,10 @@ // See the LICENSE file in the project root for more information. using System.Diagnostics; +using CommunityToolkit.WinAppSDK.LottieIsland; using CommunityToolkit.WinUI.Lottie; using Microsoft.UI.Composition; using LottieIsland = CommunityToolkit.WinAppSDK.LottieIsland; -using MUXC = Microsoft.UI.Xaml.Controls; namespace CommunityToolkit.WinAppSDK.LottieWinRT { @@ -14,18 +14,18 @@ public sealed class LottieVisualSourceWinRT { public event EventHandler? AnimatedVisualInvalidated; - private LottieVisualSourceFrameworkless _lottieVisualSource; + private LottieVisualSource _lottieVisualSource; public LottieVisualSourceWinRT() { - _lottieVisualSource = new LottieVisualSourceFrameworkless(); + _lottieVisualSource = new LottieVisualSource(); } - private LottieVisualSourceWinRT(LottieVisualSourceFrameworkless lottieVisualSource) + private LottieVisualSourceWinRT(LottieVisualSource lottieVisualSource) { Debug.WriteLine("Hello from C#!!!"); _lottieVisualSource = lottieVisualSource; - _lottieVisualSource.AnimatedVisualInvalidated += (MUXC.IDynamicAnimatedVisualSource? sender, object? o) => + _lottieVisualSource.AnimatedVisualInvalidated += (LottieVisualSource? sender, object? o) => { AnimatedVisualInvalidated?.Invoke(this, o); }; @@ -33,7 +33,7 @@ private LottieVisualSourceWinRT(LottieVisualSourceFrameworkless lottieVisualSour public static LottieVisualSourceWinRT? CreateFromString(string uri) { - LottieVisualSourceFrameworkless? lottieSource = LottieVisualSourceFrameworkless.CreateFromString(uri); + LottieVisualSource? lottieSource = LottieVisualSource.CreateFromString(uri); if (lottieSource == null) { return null; @@ -61,7 +61,7 @@ public Uri? UriSource /// /// Implements . - /// WinRT Wrapper around for use by C++ or non-WinUI applications. + /// WinRT Wrapper around for use by C++ or non-WinUI applications. /// /// The that can be used as a factory for the resulting . /// An optional object that may provide extra information about the result. @@ -71,7 +71,7 @@ public Uri? UriSource out object? diagnostics) { diagnostics = null; - MUXC.IAnimatedVisual? visual = _lottieVisualSource?.TryCreateAnimatedVisual(compositor, out diagnostics); + LottieIsland.IAnimatedVisualFrameworkless? visual = _lottieVisualSource?.TryCreateAnimatedVisual(compositor, out diagnostics); if (visual == null) { return null; diff --git a/source/Lottie/AnimatedVisualFactory.cs b/source/Lottie/AnimatedVisualFactory.cs index b8887c19c..2aa8dec1e 100644 --- a/source/Lottie/AnimatedVisualFactory.cs +++ b/source/Lottie/AnimatedVisualFactory.cs @@ -10,7 +10,6 @@ using System.Diagnostics.CodeAnalysis; using System.Linq; using CommunityToolkit.WinUI.Lottie.UIData.Tools; -using Microsoft.UI.Xaml.Controls; #if WINAPPSDK using Microsoft.UI.Composition; @@ -18,6 +17,15 @@ using Windows.UI.Composition; #endif +#if WINAPPSDK +using IAnimatedVisual = CommunityToolkit.WinAppSDK.LottieIsland.IAnimatedVisualFrameworkless; +using IAnimatedVisualSource = object; +#pragma warning disable SA1121 // Use built-in type alias +#else +using IAnimatedVisual = Microsoft.UI.Xaml.Controls.IAnimatedVisual; +using IAnimatedVisualSource = Microsoft.UI.Xaml.Controls.IAnimatedVisualSource; +#endif + namespace CommunityToolkit.WinUI.Lottie { /// @@ -135,4 +143,4 @@ internal void SetRootVisual(WinCompData.Visual rootVisual) return result; } } -} +} \ No newline at end of file diff --git a/source/Lottie/DisposableAnimatedVisual.cs b/source/Lottie/DisposableAnimatedVisual.cs index 587c16f44..1332a03dd 100644 --- a/source/Lottie/DisposableAnimatedVisual.cs +++ b/source/Lottie/DisposableAnimatedVisual.cs @@ -7,7 +7,6 @@ using System; using System.Collections.Generic; using System.Numerics; -using Microsoft.UI.Xaml.Controls; #if WINAPPSDK using Microsoft.UI.Composition; @@ -15,6 +14,14 @@ using Windows.UI.Composition; #endif +#if WINAPPSDK +using IAnimatedVisual = CommunityToolkit.WinAppSDK.LottieIsland.IAnimatedVisualFrameworkless; +using IAnimatedVisualSource = object; +#else +using IAnimatedVisual = Microsoft.UI.Xaml.Controls.IAnimatedVisual; +using IAnimatedVisualSource = Microsoft.UI.Xaml.Controls.IAnimatedVisualSource; +#endif + namespace CommunityToolkit.WinUI.Lottie { sealed class DisposableAnimatedVisual : IAnimatedVisual, IDisposable diff --git a/source/Lottie/DotLottieLoader.cs b/source/Lottie/DotLottieLoader.cs index 82d9146ad..20ebd1a50 100644 --- a/source/Lottie/DotLottieLoader.cs +++ b/source/Lottie/DotLottieLoader.cs @@ -14,7 +14,8 @@ #if WINAPPSDK using Microsoft.UI.Composition; -using Microsoft.UI.Xaml.Media; + +// using Microsoft.UI.Xaml.Media; #else using Windows.UI.Composition; using Windows.UI.Xaml.Media; @@ -97,7 +98,10 @@ sealed class DotLottieLoader : Loader return null; } - return LoadedImageSurface.StartLoadFromStream(imageStream.AsRandomAccessStream()); + // TODO - Load this image some other way + return null; + + //return LoadedImageSurface.StartLoadFromStream(imageStream.AsRandomAccessStream()); } public override void Dispose() diff --git a/source/Lottie/Instantiator.cs b/source/Lottie/Instantiator.cs index 8fc44394c..c052ebd3a 100644 --- a/source/Lottie/Instantiator.cs +++ b/source/Lottie/Instantiator.cs @@ -20,7 +20,8 @@ using Mgce = Microsoft.Graphics.Canvas.Effects; #if WINAPPSDK using Wc = Microsoft.UI.Composition; -using Wm = Microsoft.UI.Xaml.Media; + +//using Wm = Microsoft.UI.Xaml.Media; #else using Wc = Windows.UI.Composition; using Wm = Windows.UI.Xaml.Media; @@ -1592,7 +1593,9 @@ Wc.CompositionRadialGradientBrush GetCompositionRadialGradientBrush(Wd.Compositi { case Wmd.LoadedImageSurface.LoadedImageSurfaceType.FromStream: var bytes = ((Wmd.LoadedImageSurfaceFromStream)obj).Bytes; - result = Wm.LoadedImageSurface.StartLoadFromStream(bytes.AsBuffer().AsStream().AsRandomAccessStream()); + + // TODO - load this image some other way + // result = Wm.LoadedImageSurface.StartLoadFromStream(bytes.AsBuffer().AsStream().AsRandomAccessStream()); break; case Wmd.LoadedImageSurface.LoadedImageSurfaceType.FromUri: var uri = ((Wmd.LoadedImageSurfaceFromUri)obj).Uri; diff --git a/source/Lottie/Lottie.projitems b/source/Lottie/Lottie.projitems index 0187349ad..3dab6596b 100644 --- a/source/Lottie/Lottie.projitems +++ b/source/Lottie/Lottie.projitems @@ -18,7 +18,6 @@ - diff --git a/source/Lottie/LottieVisualSource.cs b/source/Lottie/LottieVisualSource.cs index 21810a694..7175fe30d 100644 --- a/source/Lottie/LottieVisualSource.cs +++ b/source/Lottie/LottieVisualSource.cs @@ -10,7 +10,6 @@ using System.Runtime.InteropServices.WindowsRuntime; using System.Threading.Tasks; using CommunityToolkit.WinUI.Lottie; -using Microsoft.UI.Xaml.Controls; using Windows.Foundation; using Windows.Foundation.Metadata; using Windows.Storage; @@ -19,24 +18,41 @@ #if WINAPPSDK using Microsoft.UI.Composition; -using Microsoft.UI.Xaml; #else using Windows.UI.Composition; using Windows.UI.Xaml; #endif +#if WINAPPSDK +using IAnimatedVisual = CommunityToolkit.WinAppSDK.LottieIsland.IAnimatedVisualFrameworkless; +using IAnimatedVisualSource = CommunityToolkit.WinUI.Lottie.LottieVisualSource; +using IDynamicAnimatedVisualSource = CommunityToolkit.WinUI.Lottie.LottieVisualSource; +#pragma warning disable SA1121 // Use built-in type alias +#else +using IAnimatedVisual = Microsoft.UI.Xaml.Controls.IAnimatedVisual; +using IAnimatedVisualSource = Microsoft.UI.Xaml.Controls.IAnimatedVisualSource; +using IDynamicAnimatedVisualSource = Microsoft.UI.Xaml.Controls.IDynamicAnimatedVisualSource; +using +#endif + namespace CommunityToolkit.WinUI.Lottie { +#if WINAPPSDK + /// + /// A class for a Lottie composition. This allows + /// a Lottie to be specified as source of a . + /// + public sealed class LottieVisualSource + { +#else /// /// An for a Lottie composition. This allows /// a Lottie to be specified as the source for a . /// -#if FRAMEWORKLESS - public sealed class LottieVisualSource : IDynamicAnimatedVisualSource -#else public sealed class LottieVisualSource : DependencyObject, IDynamicAnimatedVisualSource -#endif { +#endif + #if WINAPPSDK HashSet> _compositionInvalidatedEventTokenTable = new HashSet>(); #else @@ -47,10 +63,9 @@ public sealed class LottieVisualSource : DependencyObject, IDynamicAnimatedVisua Uri? _uriSource; AnimatedVisualFactory? _animatedVisualFactory; ImageAssetHandler? _imageAssetHandler; -#if FRAMEWORKLESS +#if WINAPPSDK LottieVisualOptions _options; #else - /// /// Gets the options for the . /// @@ -85,7 +100,7 @@ public LottieVisualSource() { } -#if FRAMEWORKLESS +#if WINAPPSDK /// /// Gets or sets options for how the Lottie is loaded. /// @@ -123,10 +138,10 @@ public Uri UriSource } #endif - /// - /// Called by XAML to convert a string to an . - /// - /// The for the given url. + /// + /// Called by XAML to convert a string to an . + /// + /// The for the given url. public static LottieVisualSource? CreateFromString(string uri) { var uriUri = Uris.StringToUri(uri); diff --git a/source/Lottie/LottieVisualSourceFrameworkless.cs b/source/Lottie/LottieVisualSourceFrameworkless.cs deleted file mode 100644 index 772d3b08f..000000000 --- a/source/Lottie/LottieVisualSourceFrameworkless.cs +++ /dev/null @@ -1,341 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. -// See the LICENSE file in the project root for more information. - -#nullable enable - -#if WINAPPSDK - -using System; -using System.Collections.Generic; -using System.Linq; -using System.Runtime.InteropServices.WindowsRuntime; -using System.Threading.Tasks; -using CommunityToolkit.WinUI.Lottie; -using Microsoft.UI.Xaml.Controls; -using Windows.Foundation; -using Windows.Foundation.Metadata; -using Windows.Storage; -using Windows.Storage.Streams; -using static CommunityToolkit.WinUI.Lottie.LottieData.Serialization.LottieCompositionReader; - -#if WINAPPSDK -using Microsoft.UI.Composition; -using Microsoft.UI.Xaml; -#else -using Windows.UI.Composition; -using Windows.UI.Xaml; -#endif - -namespace CommunityToolkit.WinUI.Lottie -{ - /// - /// An for a Lottie composition. This allows - /// a Lottie to be specified as the source for a . - /// - public sealed class LottieVisualSourceFrameworkless : IDynamicAnimatedVisualSource - { -#if WINAPPSDK - HashSet> _compositionInvalidatedEventTokenTable = new HashSet>(); -#else - EventRegistrationTokenTable>? _compositionInvalidatedEventTokenTable; -#endif - - int _loadVersion; - Uri? _uriSource; - AnimatedVisualFactory? _animatedVisualFactory; - ImageAssetHandler? _imageAssetHandler; - LottieVisualOptions _options; - - ///// - ///// Gets the options for the . - ///// - //// Optimize Lotties by default. Optimization takes a little longer but usually produces much - //// more efficient translations. The only reason someone would turn optimization off is if - //// the time to translate is too high, but in that case the Lottie is probably going to perform - //// so badly on the machine that it won't really be usable with our without optimization. - //public static DependencyProperty OptionsProperty { get; } = - // RegisterDp(nameof(Options), LottieVisualOptions.Optimize); - - ///// - ///// Gets the URI from which to load a JSON Lottie file. - ///// - //public static DependencyProperty UriSourceProperty { get; } = - // RegisterDp(nameof(UriSource), null, - // (owner, oldValue, newValue) => owner.HandleUriSourcePropertyChanged(oldValue, newValue)); - - //static DependencyProperty RegisterDp(string propertyName, T defaultValue) => - // DependencyProperty.Register(propertyName, typeof(T), typeof(LottieVisualSource), new PropertyMetadata(defaultValue)); - - //static DependencyProperty RegisterDp(string propertyName, T? defaultValue, Action callback) - // where T : class - // => - // DependencyProperty.Register(propertyName, typeof(T), typeof(LottieVisualSource), - // new PropertyMetadata(defaultValue, (d, e) => callback((LottieVisualSource)d, (T)e.OldValue, (T)e.NewValue))); - - /// - /// Initializes a new instance of the class. - /// - public LottieVisualSourceFrameworkless() - { - } - - /// - /// Gets or sets options for how the Lottie is loaded. - /// - public LottieVisualOptions Options - { - get => _options; - set => _options = value; - } - - /// - /// Gets or sets the Uniform Resource Identifier (URI) of the JSON source file for this . - /// - public Uri? UriSource - { - get => _uriSource; - set => HandleUriSourcePropertyChanged(_uriSource, value); - } - - /// - /// Called by XAML to convert a string to an . - /// - /// The for the given url. - public static LottieVisualSourceFrameworkless? CreateFromString(string uri) - { - var uriUri = Uris.StringToUri(uri); - if (uriUri is null) - { - return null; - } - - return new LottieVisualSourceFrameworkless { UriSource = uriUri }; - } - - /// - /// Sets the source for the . - /// - /// A stream containing the text of a JSON Lottie file encoded as UTF-8. - /// An that completes when the load completes or fails. - [Overload("SetSourceStreamAsync")] - public IAsyncAction SetSourceAsync(IInputStream stream) - { - _uriSource = null; - return LoadAsync(InputStreamLoader.LoadAsync(_imageAssetHandler, stream, Options)).AsAsyncAction(); - } - - /// - /// Sets the source for the . - /// - /// A file that is a JSON Lottie file. - /// An that completes when the load completes or fails. - [Overload("SetSourceFileAsync")] - public IAsyncAction SetSourceAsync(StorageFile file) - { - _uriSource = null; - return LoadAsync(StorageFileLoader.LoadAsync(_imageAssetHandler, file, Options)).AsAsyncAction(); - } - - /// - /// Sets the source for the . - /// - /// A URI that refers to a JSON Lottie file. - /// An that completes when the load completes or fails. - [DefaultOverload] - [Overload("SetSourceUriAsync")] - public IAsyncAction SetSourceAsync(Uri sourceUri) - { - _uriSource = sourceUri; - - // Update the dependency property to keep it in sync with _uriSource. - // This will not trigger loading because it will be seen as no change - // from the current (just set) _uriSource value. - UriSource = sourceUri; - - return LoadAsync(UriLoader.LoadAsync(_imageAssetHandler, sourceUri, Options)).AsAsyncAction(); - } - - /// - /// Implements . - /// - // TODO: currently explicitly implemented interfaces are causing a problem with .NET Native. Make them implicit for now. - public event TypedEventHandler AnimatedVisualInvalidated - { - add - { -#if WINAPPSDK - _compositionInvalidatedEventTokenTable.Add(value); -#else - return EventRegistrationTokenTable> - .GetOrCreateEventRegistrationTokenTable(ref _compositionInvalidatedEventTokenTable) - .AddEventHandler(value); -#endif - } - - remove - { -#if WINAPPSDK - _compositionInvalidatedEventTokenTable.Remove(value); -#else - EventRegistrationTokenTable> - .GetOrCreateEventRegistrationTokenTable(ref _compositionInvalidatedEventTokenTable) - .RemoveEventHandler(value); -#endif - } - } - - /// - /// Sets a delegate that returns an for the given image uri. - /// If this is null, no images will be loaded from references to external images. - /// - /// Most Lottie files do not reference external images, but those that do - /// will refer to the files via a uri. It is up to the user of - /// to manage the loading of the image, and return an for - /// that image. Alternatively the delegate may return null, and the image will not be - /// displayed. - public void SetImageAssetHandler(ImageAssetHandler? imageAssetHandler) - { - _imageAssetHandler = imageAssetHandler; - } - - /// - /// Implements . - /// - /// The that can be used as a factory for the resulting . - /// An optional object that may provide extra information about the result. - /// An . - // TODO: currently explicitly implemented interfaces are causing a problem with .NET Native. Make them implicit for now. - //bool IAnimatedVisualSource.TryCreateAnimatedVisual( - public Microsoft.UI.Xaml.Controls.IAnimatedVisual? TryCreateAnimatedVisual( - Compositor compositor, - out object? diagnostics) - { - if (_animatedVisualFactory is null) - { - // No content has been loaded yet. - // Return an IAnimatedVisual that produces nothing. - diagnostics = null; - return null; - } - else - { - // Some content was loaded. Ask the factory to produce an - // IAnimatedVisual. If it returns null, the player will treat it - // as an error. - return _animatedVisualFactory.TryCreateAnimatedVisual(compositor, out diagnostics); - } - } - - void NotifyListenersThatCompositionChanged() - { -#if WINAPPSDK - foreach (var v in _compositionInvalidatedEventTokenTable) - { - v.Invoke(this, null); - } -#else - EventRegistrationTokenTable> - .GetOrCreateEventRegistrationTokenTable(ref _compositionInvalidatedEventTokenTable) - .InvocationList?.Invoke(this, null); -#endif - } - - // Called when the UriSource property is updated. - void HandleUriSourcePropertyChanged(Uri? oldValue, Uri? newValue) - { - if (newValue == _uriSource) - { - // Ignore if setting to the current value. This can't happen if the value - // is being set via the DependencyProperty, but it will happen if the value - // is set via SetSourceAsync, as _uriSource will have been set before this - // is called. - return; - } - - _uriSource = newValue; - - if (UriSource == null) - { - return; - } - - var ignoredTask = StartLoadingAndIgnoreErrorsAsync(); - - async Task StartLoadingAndIgnoreErrorsAsync() - { - try - { - await LoadAsync(UriLoader.LoadAsync(_imageAssetHandler, UriSource, Options)); - } - catch - { - // Swallow any errors - nobody is listening. - } - } - } - - // Starts loading. Completes the returned task when the load completes or is replaced by another load. - async Task LoadAsync(Task loader) - { - var loadVersion = ++_loadVersion; - - var oldFactory = _animatedVisualFactory; - _animatedVisualFactory = null; - - if (oldFactory is not null) - { - // Notify all listeners that their existing content is no longer valid. - // They should stop showing the content. We will notify them again when the - // content changes. - NotifyListenersThatCompositionChanged(); - } - - // Disable the warning about the task possibly having being started in - // another context. There is no other context here. -#pragma warning disable VSTHRD003 - - // Wait for the loader to finish. - var factory = await loader; -#pragma warning restore VSTHRD003 - - if (loadVersion != _loadVersion) - { - // Another load request came in before this one completed. - return; - } - - if (factory is null) - { - // Load didn't produce anything. - return; - } - - // We are the the most recent load. Save the result. - _animatedVisualFactory = factory; - - // Notify all listeners that they should try to create their instance of the content again. - NotifyListenersThatCompositionChanged(); - - if (!factory.CanInstantiate) - { - // The load did not produce any content. Throw an exception so the caller knows. - throw new ArgumentException("Failed to load animated visual."); - } - } - -#if !WINAPPSDK - /// - /// Returns a string representation of the for debugging purposes. - /// - /// A string representation of the for debugging purposes. - public override string ToString() - { - var identity = _uriSource?.ToString() ?? string.Empty; - return $"LottieVisualSourceFrameworkless({identity})"; - } -#endif - } -} - -#endif \ No newline at end of file From 32e0e81b91d92e6a9912eaeb043186d5921a0f82 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Fri, 26 Apr 2024 08:23:48 -0400 Subject: [PATCH 32/40] Fixes to get build to succeed --- .../Lottie-Windows-WinUI3-Controls.csproj | 3 +- .../LottieVisualWinUI.cs | 13 +- Lottie-Windows.sln | 172 +++++++++++------- .../Lottie-Windows-WinUI3.csproj | 3 +- LottieIsland/LottieIsland.vcxproj | 2 +- .../LottieIslandProjection.csproj | 4 +- ...unityToolkit.WinAppSDK.LottieIsland.nuspec | 2 +- LottieWinRT/AnimatedVisual.cs | 59 ------ LottieWinRT/LottieVisualSourceWinRT.cs | 8 +- source/Lottie/LottieVisualSource.cs | 2 +- version.json | 2 +- 11 files changed, 134 insertions(+), 136 deletions(-) delete mode 100644 LottieWinRT/AnimatedVisual.cs diff --git a/Lottie-Windows-WinUI3-Controls/Lottie-Windows-WinUI3-Controls.csproj b/Lottie-Windows-WinUI3-Controls/Lottie-Windows-WinUI3-Controls.csproj index 49a8fac31..88f5b1bfb 100644 --- a/Lottie-Windows-WinUI3-Controls/Lottie-Windows-WinUI3-Controls.csproj +++ b/Lottie-Windows-WinUI3-Controls/Lottie-Windows-WinUI3-Controls.csproj @@ -7,7 +7,7 @@ WinUI3 Toolkit Windows Animations Lottie XAML enable - AnyCPU + x64;x86;ARM64 Microsoft True @@ -15,6 +15,7 @@ + diff --git a/Lottie-Windows-WinUI3-Controls/LottieVisualWinUI.cs b/Lottie-Windows-WinUI3-Controls/LottieVisualWinUI.cs index eafb009be..34094fa6d 100644 --- a/Lottie-Windows-WinUI3-Controls/LottieVisualWinUI.cs +++ b/Lottie-Windows-WinUI3-Controls/LottieVisualWinUI.cs @@ -1,4 +1,10 @@ -using System; +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +#nullable enable + +using System; using System.Numerics; using CommunityToolkit.WinAppSDK.LottieIsland; using Microsoft.UI.Composition; @@ -7,6 +13,11 @@ namespace CommunityToolkit.WinUI.Lottie.Controls { + /// + /// Simple wrapper to convert an to an + /// for a Lottie composition. This allows + /// a Lottie to be specified as the source for a . + /// internal class LottieVisualWinUI : IAnimatedVisual { IAnimatedVisualFrameworkless _animatedVisual; diff --git a/Lottie-Windows.sln b/Lottie-Windows.sln index 86a3d0415..50749a27d 100644 --- a/Lottie-Windows.sln +++ b/Lottie-Windows.sln @@ -176,7 +176,7 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LottieIslandProjection", "L EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SimpleLottieIslandApp", "SimpleLottieIslandApp\SimpleLottieIslandApp.vcxproj", "{350A5EC2-B156-4AAF-9D80-A864C76BA0C5}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lottie-Windows-WinUI3-Controls", "Lottie-Windows-WinUI3-Controls\Lottie-Windows-WinUI3-Controls.csproj", "{A896C58F-1A1D-49A5-9044-75312051C455}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lottie-Windows-WinUI3-Controls", "Lottie-Windows-WinUI3-Controls\Lottie-Windows-WinUI3-Controls.csproj", "{A896C58F-1A1D-49A5-9044-75312051C455}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -506,36 +506,36 @@ Global {192FBD28-8531-4607-A17C-44A1A51A1565}.Release|ARM64.ActiveCfg = Release|Any CPU {192FBD28-8531-4607-A17C-44A1A51A1565}.Release|x64.ActiveCfg = Release|Any CPU {192FBD28-8531-4607-A17C-44A1A51A1565}.Release|x86.ActiveCfg = Release|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|Any CPU.ActiveCfg = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|Any CPU.Build.0 = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM.ActiveCfg = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM.Build.0 = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM64.ActiveCfg = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM64.Build.0 = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x64.ActiveCfg = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x64.Build.0 = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x86.ActiveCfg = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x86.Build.0 = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM.ActiveCfg = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM.Build.0 = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM64.ActiveCfg = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM64.Build.0 = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x64.ActiveCfg = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x64.Build.0 = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x86.ActiveCfg = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x86.Build.0 = Debug|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|Any CPU.ActiveCfg = Release|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|Any CPU.Build.0 = Release|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM.ActiveCfg = Release|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM.Build.0 = Release|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM64.ActiveCfg = Release|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM64.Build.0 = Release|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x64.ActiveCfg = Release|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x64.Build.0 = Release|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x86.ActiveCfg = Release|Any CPU - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x86.Build.0 = Release|Any CPU + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|Any CPU.ActiveCfg = Debug|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|Any CPU.Build.0 = Debug|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM.ActiveCfg = Debug|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM.Build.0 = Debug|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM64.ActiveCfg = Debug|ARM64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM64.Build.0 = Debug|ARM64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x64.ActiveCfg = Debug|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x64.Build.0 = Debug|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x86.ActiveCfg = Debug|x86 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x86.Build.0 = Debug|x86 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|Any CPU.ActiveCfg = Debug|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|Any CPU.Build.0 = Debug|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM.ActiveCfg = Debug|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM.Build.0 = Debug|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|ARM64.Build.0 = Debug|ARM64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x64.ActiveCfg = Debug|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x64.Build.0 = Debug|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x86.ActiveCfg = Debug|x86 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Debug|x86.Build.0 = Debug|x86 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|Any CPU.ActiveCfg = Release|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|Any CPU.Build.0 = Release|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM.ActiveCfg = Release|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM.Build.0 = Release|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM64.ActiveCfg = Release|ARM64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|ARM64.Build.0 = Release|ARM64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x64.ActiveCfg = Release|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x64.Build.0 = Release|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x86.ActiveCfg = Release|x86 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x86.Build.0 = Release|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.ActiveCfg = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.ActiveCfg = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.Build.0 = Debug|x64 @@ -564,6 +564,7 @@ Global {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|x86.ActiveCfg = Release|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|x86.Build.0 = Release|x86 {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|Any CPU.ActiveCfg = Debug|x64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|Any CPU.Build.0 = Debug|x64 {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|ARM.ActiveCfg = Debug|x64 {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|ARM.Build.0 = Debug|x64 {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|ARM64.ActiveCfg = Debug|ARM64 @@ -573,6 +574,7 @@ Global {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|x86.ActiveCfg = Debug|Win32 {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|x86.Build.0 = Debug|Win32 {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|Any CPU.ActiveCfg = Debug|x64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|Any CPU.Build.0 = Debug|x64 {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|ARM.ActiveCfg = Debug|x64 {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|ARM.Build.0 = Debug|x64 {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|ARM64.ActiveCfg = Debug|ARM64 @@ -582,6 +584,7 @@ Global {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|x86.ActiveCfg = Debug|Win32 {9BA7A2F2-B723-458B-A575-3F726D271465}.Debug|x86.Build.0 = Debug|Win32 {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|Any CPU.ActiveCfg = Release|x64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|Any CPU.Build.0 = Release|x64 {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|ARM.ActiveCfg = Release|x64 {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|ARM.Build.0 = Release|x64 {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|ARM64.ActiveCfg = Release|ARM64 @@ -659,36 +662,36 @@ Global {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x86.ActiveCfg = Release|Win32 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x86.Build.0 = Release|Win32 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x86.Deploy.0 = Release|Win32 - {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|Any CPU.ActiveCfg = Debug|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|Any CPU.Build.0 = Debug|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|ARM.ActiveCfg = Debug|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|ARM.Build.0 = Debug|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|ARM64.ActiveCfg = Debug|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|ARM64.Build.0 = Debug|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|x64.ActiveCfg = Debug|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|x64.Build.0 = Debug|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|x86.ActiveCfg = Debug|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|x86.Build.0 = Debug|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|Any CPU.Build.0 = Debug|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|ARM.ActiveCfg = Debug|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|ARM.Build.0 = Debug|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|ARM64.ActiveCfg = Debug|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|ARM64.Build.0 = Debug|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|x64.ActiveCfg = Debug|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|x64.Build.0 = Debug|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|x86.ActiveCfg = Debug|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|x86.Build.0 = Debug|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.Release|Any CPU.ActiveCfg = Release|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.Release|Any CPU.Build.0 = Release|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.Release|ARM.ActiveCfg = Release|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.Release|ARM.Build.0 = Release|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.Release|ARM64.ActiveCfg = Release|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.Release|ARM64.Build.0 = Release|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.Release|x64.ActiveCfg = Release|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.Release|x64.Build.0 = Release|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.Release|x86.ActiveCfg = Release|Any CPU - {A896C58F-1A1D-49A5-9044-75312051C455}.Release|x86.Build.0 = Release|Any CPU + {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|Any CPU.ActiveCfg = Debug|x64 + {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|Any CPU.Build.0 = Debug|x64 + {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|ARM.ActiveCfg = Debug|x64 + {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|ARM.Build.0 = Debug|x64 + {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|ARM64.ActiveCfg = Debug|ARM64 + {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|ARM64.Build.0 = Debug|ARM64 + {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|x64.ActiveCfg = Debug|x64 + {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|x64.Build.0 = Debug|x64 + {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|x86.ActiveCfg = Debug|x86 + {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|x86.Build.0 = Debug|x86 + {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|Any CPU.ActiveCfg = Debug|x64 + {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|Any CPU.Build.0 = Debug|x64 + {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|ARM.ActiveCfg = Debug|x64 + {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|ARM.Build.0 = Debug|x64 + {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|ARM64.Build.0 = Debug|ARM64 + {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|x64.ActiveCfg = Debug|x64 + {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|x64.Build.0 = Debug|x64 + {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|x86.ActiveCfg = Debug|x86 + {A896C58F-1A1D-49A5-9044-75312051C455}.Debug|x86.Build.0 = Debug|x86 + {A896C58F-1A1D-49A5-9044-75312051C455}.Release|Any CPU.ActiveCfg = Release|x64 + {A896C58F-1A1D-49A5-9044-75312051C455}.Release|Any CPU.Build.0 = Release|x64 + {A896C58F-1A1D-49A5-9044-75312051C455}.Release|ARM.ActiveCfg = Release|x64 + {A896C58F-1A1D-49A5-9044-75312051C455}.Release|ARM.Build.0 = Release|x64 + {A896C58F-1A1D-49A5-9044-75312051C455}.Release|ARM64.ActiveCfg = Release|ARM64 + {A896C58F-1A1D-49A5-9044-75312051C455}.Release|ARM64.Build.0 = Release|ARM64 + {A896C58F-1A1D-49A5-9044-75312051C455}.Release|x64.ActiveCfg = Release|x64 + {A896C58F-1A1D-49A5-9044-75312051C455}.Release|x64.Build.0 = Release|x64 + {A896C58F-1A1D-49A5-9044-75312051C455}.Release|x86.ActiveCfg = Release|x86 + {A896C58F-1A1D-49A5-9044-75312051C455}.Release|x86.Build.0 = Release|x86 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -743,6 +746,22 @@ Global source\LottieReader\LottieReader.projitems*{4e7d8957-3f5f-46e1-99a8-2012b806c9b0}*SharedItemsImports = 13 source\LottieData\LottieData.projitems*{6221591a-e8f4-4a5e-8f0c-2651c24ad495}*SharedItemsImports = 5 source\WinCompData\WinCompData.projitems*{68317393-f5a5-4b2c-918a-688db2c10f54}*SharedItemsImports = 5 + source\Animatables\Animatables.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 + source\CompMetadata\CompMetadata.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 + source\DotLottie\DotLottie.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 + source\GenericData\GenericData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 + source\LottieData\LottieData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 + source\LottieGenExe\LottieGenExe.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 + source\LottieGen\LottieGen.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 + source\LottieMetadata\LottieMetadata.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 + source\LottieReader\LottieReader.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 + source\LottieToWinComp\LottieToWinComp.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 + source\UIDataCodeGen\UIDataCodeGen.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 + source\UIData\UIData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 + source\WinCompData\WinCompData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 + source\WinStorageStreamsData\WinStorageStreamsData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 + source\WinUIXamlMediaData\WinUIXamlMediaData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 + source\YamlData\YamlData.projitems*{6984af37-d580-4087-806b-480a04f2df77}*SharedItemsImports = 5 source\DotLottie\DotLottie.projitems*{7012420d-624c-4bd4-a1d2-1c6c1655ed3a}*SharedItemsImports = 13 source\UIData\UIData.projitems*{74601e6c-2dfe-4842-b170-047941abff2c}*SharedItemsImports = 13 source\LottieGen\LottieGen.projitems*{7654a857-9a99-4185-9f8e-dd0ce662af23}*SharedItemsImports = 13 @@ -778,6 +797,37 @@ Global source\UIDataCodeGen\UIDataCodeGen.projitems*{d02be6c8-14db-4b4f-8600-f3c9b69c104d}*SharedItemsImports = 13 source\LottieGenExe\LottieGenExe.projitems*{dc7f7a39-b7a7-40b4-937a-601460cae38c}*SharedItemsImports = 13 source\NullablesAttributes\NullablesAttributes.projitems*{e32587a8-94e8-4b68-91ad-f3612a48a62b}*SharedItemsImports = 13 + source\Animatables\Animatables.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\CompMetadata\CompMetadata.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\DotLottie\DotLottie.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\GenericData\GenericData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\LottieData\LottieData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\LottieMetadata\LottieMetadata.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\LottieReader\LottieReader.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\LottieToWinComp\LottieToWinComp.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\Lottie\Lottie.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\NullablesAttributes\NullablesAttributes.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\UIData\UIData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\WinCompData\WinCompData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\WinStorageStreamsData\WinStorageStreamsData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\WinUIXamlMediaData\WinUIXamlMediaData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\YamlData\YamlData.projitems*{e392bad0-f936-4b64-a445-552597795cc7}*SharedItemsImports = 5 + source\Animatables\Animatables.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 + source\CompMetadata\CompMetadata.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 + source\DotLottie\DotLottie.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 + source\GenericData\GenericData.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 + source\LottieData\LottieData.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 + source\LottieGenExe\LottieGenExe.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 + source\LottieGen\LottieGen.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 + source\LottieMetadata\LottieMetadata.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 + source\LottieReader\LottieReader.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 + source\LottieToWinComp\LottieToWinComp.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 + source\UIDataCodeGen\UIDataCodeGen.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 + source\UIData\UIData.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 + source\WinCompData\WinCompData.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 + source\WinStorageStreamsData\WinStorageStreamsData.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 + source\WinUIXamlMediaData\WinUIXamlMediaData.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 + source\YamlData\YamlData.projitems*{e91e3cde-3088-4b12-8472-d2c1c05b7229}*SharedItemsImports = 5 source\Animatables\Animatables.projitems*{fc89273a-b2da-4625-8a73-ef02a658d65e}*SharedItemsImports = 13 EndGlobalSection EndGlobal diff --git a/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj b/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj index d3f41624d..dd9a1c2bc 100644 --- a/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj +++ b/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj @@ -8,7 +8,7 @@ WinUI3 Toolkit Windows Animations Lottie XAML enable - AnyCPU + x64;x86;ARM64 Microsoft WINAPPSDK True @@ -17,6 +17,7 @@ + diff --git a/LottieIsland/LottieIsland.vcxproj b/LottieIsland/LottieIsland.vcxproj index 1f358758f..e057365ea 100644 --- a/LottieIsland/LottieIsland.vcxproj +++ b/LottieIsland/LottieIsland.vcxproj @@ -12,7 +12,7 @@ CommunityToolkit.WinAppSDK.LottieIsland CommunityToolkit.WinAppSDK.LottieIsland - 0.2.6-prerelease + 0.2.7-prerelease en-US 14.0 Windows Store diff --git a/LottieIslandProjection/LottieIslandProjection.csproj b/LottieIslandProjection/LottieIslandProjection.csproj index 6930879f8..f84a1155c 100644 --- a/LottieIslandProjection/LottieIslandProjection.csproj +++ b/LottieIslandProjection/LottieIslandProjection.csproj @@ -5,7 +5,7 @@ net7.0-windows10.0.19041.0 CommunityToolkit.WinAppSDK.LottieIsland - 0.2.6-prerelease + 0.2.7-prerelease Any CPU @@ -21,7 +21,7 @@ None - + diff --git a/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland.nuspec b/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland.nuspec index a4cd61dc4..196cf646a 100644 --- a/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland.nuspec +++ b/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland.nuspec @@ -4,7 +4,7 @@ CommunityToolkit.WinAppSDK.LottieIsland Microsoft - 0.2.6-prerelease + 0.2.7-prerelease A ContentIsland to host Lottie Animations images\icon.png docs\readme.md diff --git a/LottieWinRT/AnimatedVisual.cs b/LottieWinRT/AnimatedVisual.cs deleted file mode 100644 index 4610acc50..000000000 --- a/LottieWinRT/AnimatedVisual.cs +++ /dev/null @@ -1,59 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. -// See the LICENSE file in the project root for more information. - -using System.Numerics; -using Microsoft.UI; -using Microsoft.UI.Composition; - -namespace CommunityToolkit.WinAppSDK.LottieWinRT -{ - public sealed class AnimatedVisual : CommunityToolkit.WinAppSDK.LottieIsland.IAnimatedVisualFrameworkless - { - private CommunityToolkit.WinAppSDK.LottieIsland.IAnimatedVisualFrameworkless? _animatedVisual; - - public AnimatedVisual() - { - } - - internal AnimatedVisual(CommunityToolkit.WinAppSDK.LottieIsland.IAnimatedVisualFrameworkless visual) - { - _animatedVisual = visual; - } - - public TimeSpan Duration - { - get - { - if (_animatedVisual == null) - { - return TimeSpan.Zero; - } - else - { - return _animatedVisual.Duration; - } - } - } - - public Visual? RootVisual - { - get => _animatedVisual?.RootVisual; - } - - public Vector2 Size - { - get - { - if (_animatedVisual == null) - { - return Vector2.Zero; - } - else - { - return _animatedVisual.Size; - } - } - } - } -} diff --git a/LottieWinRT/LottieVisualSourceWinRT.cs b/LottieWinRT/LottieVisualSourceWinRT.cs index b3beb3ee9..a4536d376 100644 --- a/LottieWinRT/LottieVisualSourceWinRT.cs +++ b/LottieWinRT/LottieVisualSourceWinRT.cs @@ -71,13 +71,7 @@ public Uri? UriSource out object? diagnostics) { diagnostics = null; - LottieIsland.IAnimatedVisualFrameworkless? visual = _lottieVisualSource?.TryCreateAnimatedVisual(compositor, out diagnostics); - if (visual == null) - { - return null; - } - - return new AnimatedVisual(visual); + return _lottieVisualSource?.TryCreateAnimatedVisual(compositor, out diagnostics); } } } diff --git a/source/Lottie/LottieVisualSource.cs b/source/Lottie/LottieVisualSource.cs index 7175fe30d..9613618f2 100644 --- a/source/Lottie/LottieVisualSource.cs +++ b/source/Lottie/LottieVisualSource.cs @@ -19,6 +19,7 @@ #if WINAPPSDK using Microsoft.UI.Composition; #else +using Microsoft.UI.Xaml.Controls; using Windows.UI.Composition; using Windows.UI.Xaml; #endif @@ -32,7 +33,6 @@ using IAnimatedVisual = Microsoft.UI.Xaml.Controls.IAnimatedVisual; using IAnimatedVisualSource = Microsoft.UI.Xaml.Controls.IAnimatedVisualSource; using IDynamicAnimatedVisualSource = Microsoft.UI.Xaml.Controls.IDynamicAnimatedVisualSource; -using #endif namespace CommunityToolkit.WinUI.Lottie diff --git a/version.json b/version.json index a97cf20b5..d76d3a370 100644 --- a/version.json +++ b/version.json @@ -1,5 +1,5 @@ { - "version": "8.0.230818-rc-LottieIsland.{height}", + "version": "8.0.230819-rc-LottieIsland.{height}", "publicReleaseRefSpec": [ "^refs/heads/main$", // we release out of main "^refs/heads/dev$", // we release out of dev From a542db3d7e9cb75442bb46fcdb773e760857932d Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Fri, 26 Apr 2024 08:51:18 -0400 Subject: [PATCH 33/40] Fixups for PR feedback --- Lottie-Windows.sln | 29 +++---- ...ommunityToolkit.WinAppSDK.LottieIsland.idl | 20 ++--- SimpleLottieIslandApp/package.appxmanifest | 78 +++++++++---------- 3 files changed, 65 insertions(+), 62 deletions(-) diff --git a/Lottie-Windows.sln b/Lottie-Windows.sln index 50749a27d..3916a5445 100644 --- a/Lottie-Windows.sln +++ b/Lottie-Windows.sln @@ -508,8 +508,8 @@ Global {192FBD28-8531-4607-A17C-44A1A51A1565}.Release|x86.ActiveCfg = Release|Any CPU {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|Any CPU.ActiveCfg = Debug|x64 {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|Any CPU.Build.0 = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM.ActiveCfg = Debug|x64 - {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM.Build.0 = Debug|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM.ActiveCfg = Release|x64 + {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM.Build.0 = Release|x64 {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM64.ActiveCfg = Debug|ARM64 {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|ARM64.Build.0 = Debug|ARM64 {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.BETA|x64.ActiveCfg = Debug|x64 @@ -537,8 +537,9 @@ Global {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x86.ActiveCfg = Release|x86 {C505CD2D-5D26-42EE-8FAA-41BB784821EF}.Release|x86.Build.0 = Release|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.ActiveCfg = Debug|x64 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.ActiveCfg = Debug|x64 - {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.Build.0 = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|Any CPU.Build.0 = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.ActiveCfg = Release|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM.Build.0 = Release|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM64.ActiveCfg = Debug|ARM64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|ARM64.Build.0 = Debug|ARM64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x64.ActiveCfg = Debug|x64 @@ -546,6 +547,7 @@ Global {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x86.ActiveCfg = Debug|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.BETA|x86.Build.0 = Debug|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.ActiveCfg = Debug|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|Any CPU.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.ActiveCfg = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM.Build.0 = Debug|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|ARM64.ActiveCfg = Debug|ARM64 @@ -555,6 +557,7 @@ Global {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x86.ActiveCfg = Debug|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Debug|x86.Build.0 = Debug|x86 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.ActiveCfg = Release|x64 + {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|Any CPU.Build.0 = Release|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM.ActiveCfg = Release|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM.Build.0 = Release|x64 {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|ARM64.ActiveCfg = Release|ARM64 @@ -565,8 +568,8 @@ Global {DDA0D223-4B59-455D-A8B1-CFAE59523FFB}.Release|x86.Build.0 = Release|x86 {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|Any CPU.ActiveCfg = Debug|x64 {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|Any CPU.Build.0 = Debug|x64 - {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|ARM.ActiveCfg = Debug|x64 - {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|ARM.Build.0 = Debug|x64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|ARM.ActiveCfg = Release|x64 + {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|ARM.Build.0 = Release|x64 {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|ARM64.ActiveCfg = Debug|ARM64 {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|ARM64.Build.0 = Debug|ARM64 {9BA7A2F2-B723-458B-A575-3F726D271465}.BETA|x64.ActiveCfg = Debug|x64 @@ -595,8 +598,8 @@ Global {9BA7A2F2-B723-458B-A575-3F726D271465}.Release|x86.Build.0 = Release|Win32 {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.BETA|Any CPU.ActiveCfg = Debug|Any CPU {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.BETA|Any CPU.Build.0 = Debug|Any CPU - {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.BETA|ARM.ActiveCfg = Debug|Any CPU - {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.BETA|ARM.Build.0 = Debug|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.BETA|ARM.ActiveCfg = Release|Any CPU + {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.BETA|ARM.Build.0 = Release|Any CPU {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.BETA|ARM64.ActiveCfg = Debug|Any CPU {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.BETA|ARM64.Build.0 = Debug|Any CPU {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.BETA|x64.ActiveCfg = Debug|Any CPU @@ -624,9 +627,9 @@ Global {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Release|x86.ActiveCfg = Release|Any CPU {D2DDC0A0-FD88-4053-9EA2-4233477D8477}.Release|x86.Build.0 = Release|Any CPU {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|Any CPU.ActiveCfg = Debug|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM.ActiveCfg = Debug|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM.Build.0 = Debug|x64 - {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM.Deploy.0 = Debug|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM.ActiveCfg = Release|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM.Build.0 = Release|x64 + {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM.Deploy.0 = Release|x64 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM64.ActiveCfg = Debug|ARM64 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM64.Build.0 = Debug|ARM64 {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.BETA|ARM64.Deploy.0 = Debug|ARM64 @@ -664,8 +667,8 @@ Global {350A5EC2-B156-4AAF-9D80-A864C76BA0C5}.Release|x86.Deploy.0 = Release|Win32 {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|Any CPU.ActiveCfg = Debug|x64 {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|Any CPU.Build.0 = Debug|x64 - {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|ARM.ActiveCfg = Debug|x64 - {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|ARM.Build.0 = Debug|x64 + {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|ARM.ActiveCfg = Release|x64 + {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|ARM.Build.0 = Release|x64 {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|ARM64.ActiveCfg = Debug|ARM64 {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|ARM64.Build.0 = Debug|ARM64 {A896C58F-1A1D-49A5-9044-75312051C455}.BETA|x64.ActiveCfg = Debug|x64 diff --git a/LottieIsland/CommunityToolkit.WinAppSDK.LottieIsland.idl b/LottieIsland/CommunityToolkit.WinAppSDK.LottieIsland.idl index d6d684ca7..495050dfc 100644 --- a/LottieIsland/CommunityToolkit.WinAppSDK.LottieIsland.idl +++ b/LottieIsland/CommunityToolkit.WinAppSDK.LottieIsland.idl @@ -12,18 +12,26 @@ { static LottieContentIsland Create(Microsoft.UI.Composition.Compositor compositor); - Microsoft.UI.Content.ContentIsland Island{ get; }; - IAnimatedVisualFrameworkless AnimatedVisual; Windows.Foundation.TimeSpan Duration{ get; }; Boolean IsAnimationLoaded{ get; }; + Microsoft.UI.Content.ContentIsland Island{ get; }; + Boolean IsPlaying{ get; }; + Windows.Foundation.IAsyncAction PlayAsync(Single fromProgress, Single toProgress, Boolean looped); + Single PlaybackRate; + void Pause(); + + void Resume(); + + void Stop(); + event Windows.Foundation.TypedEventHandler PointerEntered; event Windows.Foundation.TypedEventHandler PointerExited; @@ -33,13 +41,5 @@ event Windows.Foundation.TypedEventHandler PointerPressed; event Windows.Foundation.TypedEventHandler PointerReleased; - - void Pause(); - - Windows.Foundation.IAsyncAction PlayAsync(Single fromProgress, Single toProgress, Boolean looped); - - void Resume(); - - void Stop(); } } diff --git a/SimpleLottieIslandApp/package.appxmanifest b/SimpleLottieIslandApp/package.appxmanifest index 78b872b26..b0c5b5521 100644 --- a/SimpleLottieIslandApp/package.appxmanifest +++ b/SimpleLottieIslandApp/package.appxmanifest @@ -4,57 +4,57 @@ xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities" IgnorableNamespaces="uap rescap"> - + - - SimpleLottieIslandApp - Microsoft Corporation - Assets\logo.png - + + SimpleLottieIslandApp + Microsoft Corporation + Assets\logo.png + - - - - + + + + - - - + + + - - - - - - - + + + + + + + - - - + + - + + --> - - - + + + \ No newline at end of file From 05d2e1ffe36a68daf887cbaa8c6d819a080c7fb5 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Fri, 26 Apr 2024 09:06:16 -0400 Subject: [PATCH 34/40] Remove outdated tooling, old .NET versions --- LottieIsland/LottieIsland.vcxproj | 3 --- .../nuget/CommunityToolkit.WinAppSDK.LottieIsland.nuspec | 7 +------ LottieWinRT/LottieWinRT.csproj | 2 +- 3 files changed, 2 insertions(+), 10 deletions(-) diff --git a/LottieIsland/LottieIsland.vcxproj b/LottieIsland/LottieIsland.vcxproj index e057365ea..5b9e44424 100644 --- a/LottieIsland/LottieIsland.vcxproj +++ b/LottieIsland/LottieIsland.vcxproj @@ -60,9 +60,6 @@ DynamicLibrary v143 - v142 - v141 - v140 Unicode false diff --git a/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland.nuspec b/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland.nuspec index 196cf646a..4bdb0a9d9 100644 --- a/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland.nuspec +++ b/LottieIslandProjection/nuget/CommunityToolkit.WinAppSDK.LottieIsland.nuspec @@ -15,7 +15,6 @@ - @@ -31,17 +30,13 @@ - + - - - - diff --git a/LottieWinRT/LottieWinRT.csproj b/LottieWinRT/LottieWinRT.csproj index a18917bbd..20eb4083b 100644 --- a/LottieWinRT/LottieWinRT.csproj +++ b/LottieWinRT/LottieWinRT.csproj @@ -8,7 +8,7 @@ true CommunityToolkit.WinAppSDK.LottieWinRT CommunityToolkit.WinAppSDK.LottieWinRT - win10-x86;win10-x64;win10-arm64 + win-x86;win-x64;win-arm64 10.0.19041.0 true From 267afe5cfcf047f567033c81079695246433d51d Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Sun, 28 Apr 2024 11:20:59 -0400 Subject: [PATCH 35/40] Removed more unneeded code --- LottieGen/AnimatedVisuals.LottieLogo1.cpp | 4309 ---------------- LottieGen/AnimatedVisuals.LottieLogo1.h | 77 - LottieGen/AnimatedVisuals.LottieLogo1.idl | 29 - LottieIsland/readme.txt | 23 - .../AnimatedVisuals.LottieLogo1.cpp | 4310 ----------------- .../AnimatedVisuals.LottieLogo1.h | 77 - .../AnimatedVisuals.LottieLogo1.idl | 29 - source/Lottie/DotLottieLoader.cs | 1 - source/Lottie/Instantiator.cs | 1 - source/Lottie/LottieVisualSource.cs | 1 - 10 files changed, 8857 deletions(-) delete mode 100644 LottieGen/AnimatedVisuals.LottieLogo1.cpp delete mode 100644 LottieGen/AnimatedVisuals.LottieLogo1.h delete mode 100644 LottieGen/AnimatedVisuals.LottieLogo1.idl delete mode 100644 LottieIsland/readme.txt delete mode 100644 SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.cpp delete mode 100644 SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.h delete mode 100644 SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.idl diff --git a/LottieGen/AnimatedVisuals.LottieLogo1.cpp b/LottieGen/AnimatedVisuals.LottieLogo1.cpp deleted file mode 100644 index 43756ea1b..000000000 --- a/LottieGen/AnimatedVisuals.LottieLogo1.cpp +++ /dev/null @@ -1,4309 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// -// LottieGen version: -// 8.0.230813-rc.7+0443b1e789 -// -// Command: -// LottieGen -Language Cppwinrt -WinUIVersion 3.0 -InputFile LottieLogo1.json -// -// Input file: -// LottieLogo1.json (190271 bytes created 0:40-04:00 Mar 13 2024) -// -// LottieGen source: -// http://aka.ms/Lottie -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ -// ____________________________________ -// | Object stats | Count | -// |__________________________|_______| -// | All CompositionObjects | 610 | -// |--------------------------+-------| -// | Expression animators | 52 | -// | KeyFrame animators | 121 | -// | Reference parameters | 52 | -// | Expression operations | 0 | -// |--------------------------+-------| -// | Animated brushes | - | -// | Animated gradient stops | - | -// | ExpressionAnimations | 50 | -// | PathKeyFrameAnimations | - | -// |--------------------------+-------| -// | ContainerVisuals | 1 | -// | ShapeVisuals | 1 | -// |--------------------------+-------| -// | ContainerShapes | 23 | -// | CompositionSpriteShapes | 45 | -// |--------------------------+-------| -// | Brushes | 3 | -// | Gradient stops | - | -// | CompositionVisualSurface | - | -// ------------------------------------ -#include "pch.h" -#include "AnimatedVisuals.LottieLogo1.h" -#if __has_include ("AnimatedVisuals.LottieLogo1.g.cpp") -#include "AnimatedVisuals.LottieLogo1.g.cpp" -#endif -#include -#include -#include -#include "d2d1.h" -#include -#include -#include -#ifdef BUILD_WINDOWS -namespace ABI -{ -#include -} -#else -#include -#endif -#include - -using namespace winrt::Microsoft::UI; -using namespace winrt::Microsoft::UI::Composition; -using namespace winrt::Microsoft::UI::Xaml::Controls; -using namespace winrt::Windows::Foundation; -using namespace winrt::Windows::Foundation::Numerics; -using namespace winrt::Windows::Graphics; -using Color = winrt::Windows::UI::Color; -using CompositionPropertySet = winrt::Microsoft::UI::Composition::CompositionPropertySet; -using TimeSpan = winrt::Windows::Foundation::TimeSpan; - -namespace winrt::AnimatedVisuals::implementation -{ - class CanvasGeometry : public winrt::implements - { - winrt::com_ptr _geometry{ nullptr }; - - public: - CanvasGeometry(winrt::com_ptr geometry) - : _geometry{ geometry } - { } - - // IGeometrySource2D. - winrt::com_ptr Geometry() { return _geometry; } - - // IGeometrySource2DInterop. - IFACEMETHODIMP GetGeometry(ID2D1Geometry** value) noexcept(true) override - { - _geometry.copy_to(value); - return S_OK; - } - - // IGeometrySource2DInterop. - IFACEMETHODIMP TryGetGeometryUsingFactory(ID2D1Factory*, ID2D1Geometry**) noexcept(true) override - { - return E_NOTIMPL; - } - }; - class LottieLogo1_AnimatedVisual : public winrt::implements - { - winrt::com_ptr _d2dFactory{ nullptr }; - static constexpr int64_t c_durationTicks{ 59666666L }; - Compositor const _c{ nullptr }; - ExpressionAnimation const _reusableExpressionAnimation{ nullptr }; - AnimationController _animationController_0{ nullptr }; - AnimationController _animationController_1{ nullptr }; - CompositionColorBrush _colorBrush_AlmostTeal_FF007A87{ nullptr }; - CompositionColorBrush _colorBrush_White{ nullptr }; - CompositionContainerShape _containerShape_00{ nullptr }; - CompositionContainerShape _containerShape_01{ nullptr }; - CompositionContainerShape _containerShape_02{ nullptr }; - CompositionContainerShape _containerShape_03{ nullptr }; - CompositionContainerShape _containerShape_04{ nullptr }; - CompositionContainerShape _containerShape_05{ nullptr }; - CompositionContainerShape _containerShape_06{ nullptr }; - CompositionContainerShape _containerShape_07{ nullptr }; - CompositionContainerShape _containerShape_08{ nullptr }; - CompositionContainerShape _containerShape_09{ nullptr }; - CompositionContainerShape _containerShape_10{ nullptr }; - CompositionContainerShape _containerShape_11{ nullptr }; - CompositionContainerShape _containerShape_12{ nullptr }; - CompositionContainerShape _containerShape_13{ nullptr }; - CompositionContainerShape _containerShape_14{ nullptr }; - CompositionContainerShape _containerShape_15{ nullptr }; - CompositionContainerShape _containerShape_16{ nullptr }; - CompositionContainerShape _containerShape_17{ nullptr }; - CompositionContainerShape _containerShape_18{ nullptr }; - CompositionContainerShape _containerShape_19{ nullptr }; - CompositionContainerShape _containerShape_20{ nullptr }; - CompositionContainerShape _containerShape_21{ nullptr }; - CompositionContainerShape _containerShape_22{ nullptr }; - CompositionEllipseGeometry _ellipse_0_0{ nullptr }; - CompositionEllipseGeometry _ellipse_0_1{ nullptr }; - CompositionEllipseGeometry _ellipse_4p7{ nullptr }; - CompositionPath _path_0{ nullptr }; - CompositionPath _path_1{ nullptr }; - CompositionPath _path_2{ nullptr }; - CompositionPath _path_3{ nullptr }; - CompositionPath _path_4{ nullptr }; - CompositionPath _path_5{ nullptr }; - CompositionPath _path_6{ nullptr }; - CompositionPath _path_7{ nullptr }; - CompositionPath _path_8{ nullptr }; - CompositionPathGeometry _pathGeometry_00{ nullptr }; - CompositionPathGeometry _pathGeometry_01{ nullptr }; - CompositionPathGeometry _pathGeometry_02{ nullptr }; - CompositionPathGeometry _pathGeometry_03{ nullptr }; - CompositionPathGeometry _pathGeometry_04{ nullptr }; - CompositionPathGeometry _pathGeometry_05{ nullptr }; - CompositionPathGeometry _pathGeometry_06{ nullptr }; - CompositionPathGeometry _pathGeometry_07{ nullptr }; - CompositionPathGeometry _pathGeometry_08{ nullptr }; - CompositionPathGeometry _pathGeometry_09{ nullptr }; - CompositionPathGeometry _pathGeometry_10{ nullptr }; - CompositionPathGeometry _pathGeometry_11{ nullptr }; - CompositionPathGeometry _pathGeometry_12{ nullptr }; - CompositionPathGeometry _pathGeometry_13{ nullptr }; - CompositionPathGeometry _pathGeometry_14{ nullptr }; - CompositionPathGeometry _pathGeometry_15{ nullptr }; - CompositionPathGeometry _pathGeometry_16{ nullptr }; - CompositionPathGeometry _pathGeometry_17{ nullptr }; - CompositionPathGeometry _pathGeometry_18{ nullptr }; - CompositionPathGeometry _pathGeometry_19{ nullptr }; - CompositionPathGeometry _pathGeometry_20{ nullptr }; - CompositionPathGeometry _pathGeometry_21{ nullptr }; - CompositionPathGeometry _pathGeometry_22{ nullptr }; - CompositionPathGeometry _pathGeometry_23{ nullptr }; - CompositionPathGeometry _pathGeometry_24{ nullptr }; - CompositionPathGeometry _pathGeometry_25{ nullptr }; - CompositionPathGeometry _pathGeometry_26{ nullptr }; - CompositionPathGeometry _pathGeometry_27{ nullptr }; - CompositionPathGeometry _pathGeometry_28{ nullptr }; - CompositionPathGeometry _pathGeometry_29{ nullptr }; - CompositionPathGeometry _pathGeometry_30{ nullptr }; - CompositionPathGeometry _pathGeometry_31{ nullptr }; - CompositionPathGeometry _pathGeometry_32{ nullptr }; - CompositionPathGeometry _pathGeometry_33{ nullptr }; - CompositionPathGeometry _pathGeometry_34{ nullptr }; - CompositionPathGeometry _pathGeometry_35{ nullptr }; - CompositionPathGeometry _pathGeometry_36{ nullptr }; - CompositionPathGeometry _pathGeometry_37{ nullptr }; - CompositionPathGeometry _pathGeometry_38{ nullptr }; - CompositionSpriteShape _spriteShape_11{ nullptr }; - CompositionSpriteShape _spriteShape_12{ nullptr }; - CompositionSpriteShape _spriteShape_13{ nullptr }; - CompositionSpriteShape _spriteShape_14{ nullptr }; - CompositionSpriteShape _spriteShape_15{ nullptr }; - CompositionSpriteShape _spriteShape_19{ nullptr }; - CompositionSpriteShape _spriteShape_22{ nullptr }; - CompositionSpriteShape _spriteShape_23{ nullptr }; - CompositionSpriteShape _spriteShape_36{ nullptr }; - CompositionSpriteShape _spriteShape_37{ nullptr }; - CompositionSpriteShape _spriteShape_38{ nullptr }; - ContainerVisual _root{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_0{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_1{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_2{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_3{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_4{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_5{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_6{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_7{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_8{ nullptr }; - ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_02{ nullptr }; - ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_03{ nullptr }; - ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_06{ nullptr }; - ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_11{ nullptr }; - ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_13{ nullptr }; - ScalarKeyFrameAnimation _tStartScalarAnimation_0_to_0p249{ nullptr }; - ScalarKeyFrameAnimation _tStartScalarAnimation_0p87_to_0_02{ nullptr }; - StepEasingFunction _holdThenStepEasingFunction{ nullptr }; - StepEasingFunction _stepThenHoldEasingFunction{ nullptr }; - Vector2KeyFrameAnimation _offsetVector2Animation_02{ nullptr }; - Vector2KeyFrameAnimation _offsetVector2Animation_03{ nullptr }; - Vector2KeyFrameAnimation _offsetVector2Animation_04{ nullptr }; - Vector2KeyFrameAnimation _offsetVector2Animation_05{ nullptr }; - Vector2KeyFrameAnimation _offsetVector2Animation_06{ nullptr }; - Vector2KeyFrameAnimation _radiusVector2Animation{ nullptr }; - Vector2KeyFrameAnimation _shapeVisibilityAnimation_04{ nullptr }; - - void BindProperty( - CompositionObject target, - winrt::hstring animatedPropertyName, - winrt::hstring expression, - winrt::hstring referenceParameterName, - CompositionObject referencedObject) - { - _reusableExpressionAnimation.ClearAllParameters(); - _reusableExpressionAnimation.Expression(expression); - _reusableExpressionAnimation.SetReferenceParameter(referenceParameterName, referencedObject); - target.StartAnimation(animatedPropertyName, _reusableExpressionAnimation); - } - - ScalarKeyFrameAnimation CreateScalarKeyFrameAnimation(float initialProgress, float initialValue, CompositionEasingFunction initialEasingFunction) - { - const auto result = _c.CreateScalarKeyFrameAnimation(); - result.Duration(TimeSpan{ c_durationTicks }); - result.InsertKeyFrame(initialProgress, initialValue, initialEasingFunction); - return result; - } - - Vector2KeyFrameAnimation CreateVector2KeyFrameAnimation(float initialProgress, float2 initialValue, CompositionEasingFunction initialEasingFunction) - { - const auto result = _c.CreateVector2KeyFrameAnimation(); - result.Duration(TimeSpan{ c_durationTicks }); - result.InsertKeyFrame(initialProgress, initialValue, initialEasingFunction); - return result; - } - - CompositionSpriteShape CreateSpriteShape(CompositionGeometry geometry, float3x2 transformMatrix) - { - const auto result = _c.CreateSpriteShape(geometry); - result.TransformMatrix(transformMatrix); - return result; - } - - CompositionSpriteShape CreateSpriteShape(CompositionGeometry geometry, float3x2 transformMatrix, CompositionBrush fillBrush) - { - const auto result = _c.CreateSpriteShape(geometry); - result.TransformMatrix(transformMatrix); - result.FillBrush(fillBrush); - return result; - } - - AnimationController AnimationController_0() - { - if (_animationController_0 != nullptr) { return _animationController_0; } - const auto result = _animationController_0 = _c.CreateAnimationController(); - result.Pause(); - BindProperty(_animationController_0, L"Progress", L"_.Progress", L"_", _root); - return result; - } - - // - Layer aggregator - // Layer: Dot1 - AnimationController AnimationController_1() - { - if (_animationController_1 != nullptr) { return _animationController_1; } - const auto result = _animationController_1 = _c.CreateAnimationController(); - result.Pause(); - BindProperty(_animationController_1, L"Progress", L"_.Progress*0.9835165+0.01648352", L"_", _root); - return result; - } - - winrt::com_ptr Geometry_00() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -13.6639996F, -0.144999996F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 75.663002F, 0.289999992F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_01() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 0.859000027F, -21.1429996F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ -4.35900021F, 70.3919983F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_02() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -26.6700001F, -0.282999992F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 99.1709976F, 0.0659999996F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_03() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -13.6639996F, -0.144999996F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 62.1629982F, 0.289999992F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_04() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -30.7199993F, 63.7610016F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddBezier({ { -30.6889992F, 63.1669998F }, { -30.7889996F, 50.8470001F }, { -30.7409992F, 45.1920013F } }); - sink->AddBezier({ { -30.6650009F, 36.2140007F }, { -37.3429985F, 27.0739994F }, { -37.3969994F, 27.0139999F } }); - sink->AddBezier({ { -38.5579987F, 25.7140007F }, { -39.7519989F, 24.1469994F }, { -40.6980019F, 22.6609993F } }); - sink->AddBezier({ { -46.637001F, 13.3339996F }, { -47.8400002F, 0.933000028F }, { -37.8730011F, -7.1170001F } }); - sink->AddBezier({ { -13.1960001F, -27.0459995F }, { 8.96000004F, 11.559F }, { 49.5060005F, 11.559F } }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_05() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 246.649994F, 213.813995F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 340.955994F, 213.628006F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_06() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 1.68099999F, -29.9920006F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ -1.68099999F, 29.9920006F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_07() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 1.76800001F, -25.9659996F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ -1.76800001F, 25.9659996F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_08() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -8.83699989F, -58.2290001F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddBezier({ { -8.83699989F, -58.2290001F }, { -10.1630001F, 29.4950008F }, { -35.8339996F, 33.6619987F } }); - sink->AddBezier({ { -44.0579987F, 34.9970016F }, { -50.2319984F, 30.0499992F }, { -51.6879997F, 23.1480007F } }); - sink->AddBezier({ { -53.144001F, 16.2450008F }, { -49.6549988F, 9.15600014F }, { -41.1739998F, 7.29300022F } }); - sink->AddBezier({ { -17.3570004F, 2.05999994F }, { 4.23500013F, 57.1879997F }, { 51.7970009F, 44.1780014F } }); - sink->AddBezier({ { 51.9570007F, 44.1339989F }, { 52.6870003F, 43.8740005F }, { 53.1879997F, 43.7410011F } }); - sink->AddBezier({ { 53.6889992F, 43.6080017F }, { 68.9710007F, 41.3569984F }, { 140.393997F, 43.6720009F } }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_09() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -67.125F, -112.0F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddBezier({ { -67.125F, -112.0F }, { -73.5579987F, -100.719002F }, { -75.4580002F, -89.9509964F } }); - sink->AddBezier({ { -78.625F, -72.0F }, { -79.375F, -58.25F }, { -80.375F, -39.25F } }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_10() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -67.25F, -105.5F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddBezier({ { -67.25F, -105.5F }, { -70.4329987F, -94.9690018F }, { -72.3330002F, -84.2009964F } }); - sink->AddBezier({ { -75.5F, -66.25F }, { -75.5F, -56.75F }, { -76.5F, -37.75F } }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_11() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 34.5F, -13.0500002F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddBezier({ { 7.5F, -14.5F }, { -4.0F, -37.0F }, { -35.0460014F, -35.5789986F } }); - sink->AddBezier({ { -61.4720001F, -34.3689995F }, { -62.25F, -5.75F }, { -62.25F, -5.75F } }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_12() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -3.0F, 35.9500008F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddBezier({ { -3.0F, 35.9500008F }, { -1.5F, 7.5F }, { -1.352F, -6.75600004F } }); - sink->AddBezier({ { -9.90299988F, -15.0190001F }, { -21.5699997F, -20.5790005F }, { -32.0460014F, -20.5790005F } }); - sink->AddBezier({ { -53.5F, -20.5790005F }, { -42.25F, 4.25F }, { -42.25F, 4.25F } }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_13() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 16.2310009F, 39.0730019F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ -32.769001F, 57.3650017F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_14() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 7.44999981F, 21.9500008F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ -32.75F, 55.75F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_15() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -94.5F, 37.0730019F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ -48.769001F, 55.3650017F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_16() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -87.5F, 20.9500008F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ -48.75F, 54.75F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_17() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 166.731003F, -7.92700005F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 136.731003F, 7.11499977F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_18() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 156.449997F, -23.0499992F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 132.0F, 2.75F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_19() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 169.5F, 18.073F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 137.481003F, 11.3649998F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_20() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 119.5F, -45.0499992F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 82.75F, -44.75F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_21() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 119.25F, -20.0499992F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 63.5F, -20.5F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_22() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 128.0F, 3.6500001F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 78.25F, 3.5F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_23() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 149.623993F, 8.24400043F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 136.647995F, 10.1560001F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_24() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 144.429001F, -5.39699984F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 132.274994F, 4.73099995F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_25() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 145.677002F, 22.2199993F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 134.921997F, 14.7489996F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_26() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 147.699005F, 13.0249996F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 133.195007F, 13.21F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_27() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 142.182999F, -5.11199999F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 130.029007F, 5.01599979F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_28() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 142.037994F, 29.2779999F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 131.281998F, 21.8069992F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - // - Layer aggregator - // Offset:<187.5, 333.5> - CompositionColorBrush ColorBrush_AlmostDarkTurquoise_FF00D1C1() - { - return _c.CreateColorBrush({ 0xFF, 0x00, 0xD1, 0xC1 }); - } - - CompositionColorBrush ColorBrush_AlmostTeal_FF007A87() - { - return (_colorBrush_AlmostTeal_FF007A87 == nullptr) - ? _colorBrush_AlmostTeal_FF007A87 = _c.CreateColorBrush({ 0xFF, 0x00, 0x7A, 0x87 }) - : _colorBrush_AlmostTeal_FF007A87; - } - - CompositionColorBrush ColorBrush_White() - { - return (_colorBrush_White == nullptr) - ? _colorBrush_White = _c.CreateColorBrush({ 0xFF, 0xFF, 0xFF, 0xFF }) - : _colorBrush_White; - } - - // Layer aggregator - // Transforms for Bncr - CompositionContainerShape ContainerShape_00() - { - if (_containerShape_00 != nullptr) { return _containerShape_00; } - const auto result = _containerShape_00 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // Transforms: Dot-Y - result.Shapes().Append(ContainerShape_01()); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - // Transforms for Dot-Y - CompositionContainerShape ContainerShape_01() - { - if (_containerShape_01 != nullptr) { return _containerShape_01; } - const auto result = _containerShape_01 = _c.CreateContainerShape(); - // ShapeGroup: Ellipse 1 Offset:<196, 267> - result.Shapes().Append(SpriteShape_01()); - return result; - } - - // Layer aggregator - // Transforms for E3-Y - CompositionContainerShape ContainerShape_02() - { - if (_containerShape_02 != nullptr) { return _containerShape_02; } - const auto result = _containerShape_02 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // ShapeGroup: Group 1 Offset:<344.674, 261.877> - result.Shapes().Append(SpriteShape_02()); - return result; - } - - // Layer aggregator - // Transforms for E3-Y - CompositionContainerShape ContainerShape_03() - { - if (_containerShape_03 != nullptr) { return _containerShape_03; } - const auto result = _containerShape_03 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // Transforms: E3-B Offset:<0.06500244, 0> - result.Shapes().Append(SpriteShape_03()); - return result; - } - - // Layer aggregator - // Transforms for I-Y - CompositionContainerShape ContainerShape_04() - { - if (_containerShape_04 != nullptr) { return _containerShape_04; } - const auto result = _containerShape_04 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // ShapeGroup: Group 6 Offset:<304.135, 282.409> - result.Shapes().Append(SpriteShape_04()); - return result; - } - - // Layer aggregator - // Transforms for I-Y - CompositionContainerShape ContainerShape_05() - { - if (_containerShape_05 != nullptr) { return _containerShape_05; } - const auto result = _containerShape_05 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // Transforms: I-B - result.Shapes().Append(SpriteShape_05()); - return result; - } - - // Layer aggregator - // Transforms for E2-Y - CompositionContainerShape ContainerShape_06() - { - if (_containerShape_06 != nullptr) { return _containerShape_06; } - const auto result = _containerShape_06 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // ShapeGroup: Group 3 Offset:<331.664, 238.14> - result.Shapes().Append(SpriteShape_06()); - return result; - } - - // Layer aggregator - // Transforms for E2-Y - CompositionContainerShape ContainerShape_07() - { - if (_containerShape_07 != nullptr) { return _containerShape_07; } - const auto result = _containerShape_07 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // Transforms: E2-B - result.Shapes().Append(SpriteShape_07()); - return result; - } - - // Layer aggregator - // Transforms for E1-Y - CompositionContainerShape ContainerShape_08() - { - if (_containerShape_08 != nullptr) { return _containerShape_08; } - const auto result = _containerShape_08 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // ShapeGroup: Group 2 Offset:<344.672, 214.842> - result.Shapes().Append(SpriteShape_08()); - return result; - } - - // Layer aggregator - // Transforms for E1-Y - CompositionContainerShape ContainerShape_09() - { - if (_containerShape_09 != nullptr) { return _containerShape_09; } - const auto result = _containerShape_09 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // Transforms: E1-B - result.Shapes().Append(SpriteShape_09()); - return result; - } - - // Layer aggregator - // Transforms for T1a-Y - CompositionContainerShape ContainerShape_10() - { - if (_containerShape_10 != nullptr) { return _containerShape_10; } - const auto result = _containerShape_10 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // ShapeGroup: Group 9 Offset:<227.677, 234.375> - result.Shapes().Append(SpriteShape_10()); - return result; - } - - // Layer aggregator - // Transforms for O-Y - CompositionContainerShape ContainerShape_11() - { - if (_containerShape_11 != nullptr) { return _containerShape_11; } - const auto result = _containerShape_11 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - const auto shapes = result.Shapes(); - // ShapeGroup: Ellipse 1 Offset:<196, 267> - shapes.Append(SpriteShape_16()); - // ShapeGroup: Ellipse 1 Offset:<196, 267> - shapes.Append(SpriteShape_17()); - return result; - } - - // Layer aggregator - // Transforms for T1a-Y 2 - CompositionContainerShape ContainerShape_12() - { - if (_containerShape_12 != nullptr) { return _containerShape_12; } - const auto result = _containerShape_12 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // ShapeGroup: Group 9 Offset:<227.677, 234.375> - result.Shapes().Append(SpriteShape_18()); - return result; - } - - // Layer aggregator - // Transforms for T1a-Y - CompositionContainerShape ContainerShape_13() - { - if (_containerShape_13 != nullptr) { return _containerShape_13; } - const auto result = _containerShape_13 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // Transforms: T1a-B - result.Shapes().Append(SpriteShape_20()); - return result; - } - - // Layer aggregator - // Transforms for N - CompositionContainerShape ContainerShape_14() - { - if (_containerShape_14 != nullptr) { return _containerShape_14; } - const auto result = _containerShape_14 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // Transforms: Dot-Y - result.Shapes().Append(ContainerShape_15()); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - // Transforms for Dot-Y - CompositionContainerShape ContainerShape_15() - { - if (_containerShape_15 != nullptr) { return _containerShape_15; } - const auto result = _containerShape_15 = _c.CreateContainerShape(); - // ShapeGroup: Ellipse 1 Offset:<196, 267> - result.Shapes().Append(SpriteShape_21()); - return result; - } - - // Layer aggregator - // Transforms for Dot1 - CompositionContainerShape ContainerShape_16() - { - if (_containerShape_16 != nullptr) { return _containerShape_16; } - const auto result = _containerShape_16 = _c.CreateContainerShape(); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // ShapeGroup: Ellipse 1 Offset:<196, 267> - result.Shapes().Append(SpriteShape_24()); - return result; - } - - // Layer aggregator - // Layer: S1-Y - CompositionContainerShape ContainerShape_17() - { - if (_containerShape_17 != nullptr) { return _containerShape_17; } - const auto result = _containerShape_17 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - const auto shapes = result.Shapes(); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_25()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_26()); - return result; - } - - // Layer aggregator - // Layer: S7 - CompositionContainerShape ContainerShape_18() - { - if (_containerShape_18 != nullptr) { return _containerShape_18; } - const auto result = _containerShape_18 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - const auto shapes = result.Shapes(); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_27()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_28()); - return result; - } - - // Layer aggregator - // Layer: S3-Y - CompositionContainerShape ContainerShape_19() - { - if (_containerShape_19 != nullptr) { return _containerShape_19; } - const auto result = _containerShape_19 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - const auto shapes = result.Shapes(); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_29()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_30()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_31()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_32()); - return result; - } - - // Layer aggregator - // Layer: S3-Y 2 - CompositionContainerShape ContainerShape_20() - { - if (_containerShape_20 != nullptr) { return _containerShape_20; } - const auto result = _containerShape_20 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - const auto shapes = result.Shapes(); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_33()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_34()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_35()); - return result; - } - - // Layer aggregator - // Layer: S3-Y 3 - CompositionContainerShape ContainerShape_21() - { - if (_containerShape_21 != nullptr) { return _containerShape_21; } - const auto result = _containerShape_21 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - const auto shapes = result.Shapes(); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_39()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_40()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_41()); - return result; - } - - // Layer aggregator - // Layer: S3-Y 4 - CompositionContainerShape ContainerShape_22() - { - if (_containerShape_22 != nullptr) { return _containerShape_22; } - const auto result = _containerShape_22 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - const auto shapes = result.Shapes(); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_42()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_43()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_44()); - return result; - } - - // - - Layer aggregator - // - Layer: O-Y - // ShapeGroup: Ellipse 1 Offset:<196, 267> - // Ellipse Path 1.EllipseGeometry - CompositionEllipseGeometry Ellipse_0_0() - { - if (_ellipse_0_0 != nullptr) { return _ellipse_0_0; } - const auto result = _ellipse_0_0 = _c.CreateEllipseGeometry(); - result.Center({ 0.800000012F, -0.5F }); - result.Radius({ 0.0F, 0.0F }); - return result; - } - - // - - Layer aggregator - // - Layer: O-Y - // ShapeGroup: Ellipse 1 Offset:<196, 267> - // Ellipse Path 1.EllipseGeometry - CompositionEllipseGeometry Ellipse_0_1() - { - if (_ellipse_0_1 != nullptr) { return _ellipse_0_1; } - const auto result = _ellipse_0_1 = _c.CreateEllipseGeometry(); - result.Center({ 0.800000012F, -0.5F }); - result.Radius({ 0.0F, 0.0F }); - return result; - } - - // - - - Layer aggregator - // - - Layer: Dot-Y - // - Transforms: Dot-Y - // ShapeGroup: Ellipse 1 Offset:<196, 267> - // Ellipse Path 1.EllipseGeometry - CompositionEllipseGeometry Ellipse_4p6() - { - const auto result = _c.CreateEllipseGeometry(); - result.Center({ 0.800000012F, -0.5F }); - result.Radius({ 4.5999999F, 4.5999999F }); - return result; - } - - // Ellipse Path 1.EllipseGeometry - CompositionEllipseGeometry Ellipse_4p7() - { - if (_ellipse_4p7 != nullptr) { return _ellipse_4p7; } - const auto result = _ellipse_4p7 = _c.CreateEllipseGeometry(); - result.Center({ 0.800000012F, -0.5F }); - result.Radius({ 4.69999981F, 4.69999981F }); - return result; - } - - CompositionPath Path_0() - { - if (_path_0 != nullptr) { return _path_0; } - const auto result = _path_0 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_00())); - return result; - } - - CompositionPath Path_1() - { - if (_path_1 != nullptr) { return _path_1; } - const auto result = _path_1 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_01())); - return result; - } - - CompositionPath Path_2() - { - if (_path_2 != nullptr) { return _path_2; } - const auto result = _path_2 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_02())); - return result; - } - - CompositionPath Path_3() - { - if (_path_3 != nullptr) { return _path_3; } - const auto result = _path_3 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_03())); - return result; - } - - CompositionPath Path_4() - { - if (_path_4 != nullptr) { return _path_4; } - const auto result = _path_4 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_04())); - return result; - } - - CompositionPath Path_5() - { - if (_path_5 != nullptr) { return _path_5; } - const auto result = _path_5 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_05())); - return result; - } - - CompositionPath Path_6() - { - if (_path_6 != nullptr) { return _path_6; } - const auto result = _path_6 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_06())); - return result; - } - - CompositionPath Path_7() - { - if (_path_7 != nullptr) { return _path_7; } - const auto result = _path_7 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_07())); - return result; - } - - CompositionPath Path_8() - { - if (_path_8 != nullptr) { return _path_8; } - const auto result = _path_8 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_08())); - return result; - } - - // - - Layer aggregator - // - Layer: E3-Y - // ShapeGroup: Group 1 Offset:<344.674, 261.877> - CompositionPathGeometry PathGeometry_00() - { - if (_pathGeometry_00 != nullptr) { return _pathGeometry_00; } - const auto result = _pathGeometry_00 = _c.CreatePathGeometry(Path_0()); - return result; - } - - // - - Layer aggregator - // - Layer: E3-B - // Transforms: E3-B Offset:<0.06500244, 0> - CompositionPathGeometry PathGeometry_01() - { - if (_pathGeometry_01 != nullptr) { return _pathGeometry_01; } - const auto result = _pathGeometry_01 = _c.CreatePathGeometry(Path_0()); - return result; - } - - // - - Layer aggregator - // - Layer: I-Y - // ShapeGroup: Group 6 Offset:<304.135, 282.409> - CompositionPathGeometry PathGeometry_02() - { - if (_pathGeometry_02 != nullptr) { return _pathGeometry_02; } - const auto result = _pathGeometry_02 = _c.CreatePathGeometry(Path_1()); - return result; - } - - // - - Layer aggregator - // - Layer: I-B - // Transforms: I-B - CompositionPathGeometry PathGeometry_03() - { - if (_pathGeometry_03 != nullptr) { return _pathGeometry_03; } - const auto result = _pathGeometry_03 = _c.CreatePathGeometry(Path_1()); - return result; - } - - // - - Layer aggregator - // - Layer: E2-Y - // ShapeGroup: Group 3 Offset:<331.664, 238.14> - CompositionPathGeometry PathGeometry_04() - { - if (_pathGeometry_04 != nullptr) { return _pathGeometry_04; } - const auto result = _pathGeometry_04 = _c.CreatePathGeometry(Path_2()); - return result; - } - - // - - Layer aggregator - // - Layer: E2-B - // Transforms: E2-B - CompositionPathGeometry PathGeometry_05() - { - if (_pathGeometry_05 != nullptr) { return _pathGeometry_05; } - const auto result = _pathGeometry_05 = _c.CreatePathGeometry(Path_2()); - return result; - } - - // - - Layer aggregator - // - Layer: E1-Y - // ShapeGroup: Group 2 Offset:<344.672, 214.842> - CompositionPathGeometry PathGeometry_06() - { - if (_pathGeometry_06 != nullptr) { return _pathGeometry_06; } - const auto result = _pathGeometry_06 = _c.CreatePathGeometry(Path_3()); - return result; - } - - // - - Layer aggregator - // - Layer: E1-B - // Transforms: E1-B - CompositionPathGeometry PathGeometry_07() - { - if (_pathGeometry_07 != nullptr) { return _pathGeometry_07; } - const auto result = _pathGeometry_07 = _c.CreatePathGeometry(Path_3()); - return result; - } - - CompositionPathGeometry PathGeometry_08() - { - if (_pathGeometry_08 != nullptr) { return _pathGeometry_08; } - const auto result = _pathGeometry_08 = _c.CreatePathGeometry(Path_4()); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 0.0F); - propertySet.InsertScalar(L"TStart", 0.0F); - BindProperty(_pathGeometry_08, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_08); - BindProperty(_pathGeometry_08, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_08); - return result; - } - - // - Layer aggregator - // Layer: T2b-Y - CompositionPathGeometry PathGeometry_09() - { - if (_pathGeometry_09 != nullptr) { return _pathGeometry_09; } - const auto result = _pathGeometry_09 = _c.CreatePathGeometry(Path_5()); - return result; - } - - // - Layer aggregator - // Layer: T2a-Y - CompositionPathGeometry PathGeometry_10() - { - if (_pathGeometry_10 != nullptr) { return _pathGeometry_10; } - const auto result = _pathGeometry_10 = _c.CreatePathGeometry(Path_6()); - return result; - } - - // - Layer aggregator - // Layer: T2b-B - CompositionPathGeometry PathGeometry_11() - { - if (_pathGeometry_11 != nullptr) { return _pathGeometry_11; } - const auto result = _pathGeometry_11 = _c.CreatePathGeometry(Path_5()); - return result; - } - - // - Layer aggregator - // Layer: T1b-Y - CompositionPathGeometry PathGeometry_12() - { - if (_pathGeometry_12 != nullptr) { return _pathGeometry_12; } - const auto result = _pathGeometry_12 = _c.CreatePathGeometry(Path_7()); - return result; - } - - // - Layer aggregator - // Layer: T1b-B - CompositionPathGeometry PathGeometry_13() - { - if (_pathGeometry_13 != nullptr) { return _pathGeometry_13; } - const auto result = _pathGeometry_13 = _c.CreatePathGeometry(Path_7()); - return result; - } - - CompositionPathGeometry PathGeometry_14() - { - if (_pathGeometry_14 != nullptr) { return _pathGeometry_14; } - const auto result = _pathGeometry_14 = _c.CreatePathGeometry(Path_4()); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 0.0F); - propertySet.InsertScalar(L"TStart", 0.0F); - BindProperty(_pathGeometry_14, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_14); - BindProperty(_pathGeometry_14, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_14); - return result; - } - - // - Layer aggregator - // Layer: T2a-B - CompositionPathGeometry PathGeometry_15() - { - if (_pathGeometry_15 != nullptr) { return _pathGeometry_15; } - const auto result = _pathGeometry_15 = _c.CreatePathGeometry(Path_6()); - return result; - } - - // - - Layer aggregator - // - Layer: T1a-B - // Transforms: T1a-B - CompositionPathGeometry PathGeometry_16() - { - if (_pathGeometry_16 != nullptr) { return _pathGeometry_16; } - const auto result = _pathGeometry_16 = _c.CreatePathGeometry(Path_4()); - result.TrimStart(0.248999998F); - return result; - } - - CompositionPathGeometry PathGeometry_17() - { - if (_pathGeometry_17 != nullptr) { return _pathGeometry_17; } - const auto result = _pathGeometry_17 = _c.CreatePathGeometry(Path_8()); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 0.810000002F); - propertySet.InsertScalar(L"TStart", 0.800000012F); - BindProperty(_pathGeometry_17, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_17); - BindProperty(_pathGeometry_17, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_17); - return result; - } - - CompositionPathGeometry PathGeometry_18() - { - if (_pathGeometry_18 != nullptr) { return _pathGeometry_18; } - const auto result = _pathGeometry_18 = _c.CreatePathGeometry(Path_8()); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 0.810000002F); - propertySet.InsertScalar(L"TStart", 0.800000012F); - BindProperty(_pathGeometry_18, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_18); - BindProperty(_pathGeometry_18, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_18); - return result; - } - - CompositionPathGeometry PathGeometry_19() - { - if (_pathGeometry_19 != nullptr) { return _pathGeometry_19; } - const auto result = _pathGeometry_19 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_09()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_19, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_19); - BindProperty(_pathGeometry_19, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_19); - return result; - } - - CompositionPathGeometry PathGeometry_20() - { - if (_pathGeometry_20 != nullptr) { return _pathGeometry_20; } - const auto result = _pathGeometry_20 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_10()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_20, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_20); - BindProperty(_pathGeometry_20, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_20); - return result; - } - - CompositionPathGeometry PathGeometry_21() - { - if (_pathGeometry_21 != nullptr) { return _pathGeometry_21; } - const auto result = _pathGeometry_21 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_11()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_21, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_21); - BindProperty(_pathGeometry_21, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_21); - return result; - } - - CompositionPathGeometry PathGeometry_22() - { - if (_pathGeometry_22 != nullptr) { return _pathGeometry_22; } - const auto result = _pathGeometry_22 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_12()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_22, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_22); - BindProperty(_pathGeometry_22, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_22); - return result; - } - - CompositionPathGeometry PathGeometry_23() - { - if (_pathGeometry_23 != nullptr) { return _pathGeometry_23; } - const auto result = _pathGeometry_23 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_13()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_23, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_23); - BindProperty(_pathGeometry_23, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_23); - return result; - } - - CompositionPathGeometry PathGeometry_24() - { - if (_pathGeometry_24 != nullptr) { return _pathGeometry_24; } - const auto result = _pathGeometry_24 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_14()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_24, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_24); - BindProperty(_pathGeometry_24, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_24); - return result; - } - - CompositionPathGeometry PathGeometry_25() - { - if (_pathGeometry_25 != nullptr) { return _pathGeometry_25; } - const auto result = _pathGeometry_25 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_15()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_25, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_25); - BindProperty(_pathGeometry_25, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_25); - return result; - } - - CompositionPathGeometry PathGeometry_26() - { - if (_pathGeometry_26 != nullptr) { return _pathGeometry_26; } - const auto result = _pathGeometry_26 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_16()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_26, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_26); - BindProperty(_pathGeometry_26, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_26); - return result; - } - - CompositionPathGeometry PathGeometry_27() - { - if (_pathGeometry_27 != nullptr) { return _pathGeometry_27; } - const auto result = _pathGeometry_27 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_17()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_27, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_27); - BindProperty(_pathGeometry_27, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_27); - return result; - } - - CompositionPathGeometry PathGeometry_28() - { - if (_pathGeometry_28 != nullptr) { return _pathGeometry_28; } - const auto result = _pathGeometry_28 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_18()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_28, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_28); - BindProperty(_pathGeometry_28, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_28); - return result; - } - - CompositionPathGeometry PathGeometry_29() - { - if (_pathGeometry_29 != nullptr) { return _pathGeometry_29; } - const auto result = _pathGeometry_29 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_19()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_29, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_29); - BindProperty(_pathGeometry_29, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_29); - return result; - } - - CompositionPathGeometry PathGeometry_30() - { - if (_pathGeometry_30 != nullptr) { return _pathGeometry_30; } - const auto result = _pathGeometry_30 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_20()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_30, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_30); - BindProperty(_pathGeometry_30, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_30); - return result; - } - - CompositionPathGeometry PathGeometry_31() - { - if (_pathGeometry_31 != nullptr) { return _pathGeometry_31; } - const auto result = _pathGeometry_31 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_21()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_31, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_31); - BindProperty(_pathGeometry_31, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_31); - return result; - } - - CompositionPathGeometry PathGeometry_32() - { - if (_pathGeometry_32 != nullptr) { return _pathGeometry_32; } - const auto result = _pathGeometry_32 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_22()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_32, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_32); - BindProperty(_pathGeometry_32, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_32); - return result; - } - - CompositionPathGeometry PathGeometry_33() - { - if (_pathGeometry_33 != nullptr) { return _pathGeometry_33; } - const auto result = _pathGeometry_33 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_23()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_33, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_33); - BindProperty(_pathGeometry_33, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_33); - return result; - } - - CompositionPathGeometry PathGeometry_34() - { - if (_pathGeometry_34 != nullptr) { return _pathGeometry_34; } - const auto result = _pathGeometry_34 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_24()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_34, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_34); - BindProperty(_pathGeometry_34, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_34); - return result; - } - - CompositionPathGeometry PathGeometry_35() - { - if (_pathGeometry_35 != nullptr) { return _pathGeometry_35; } - const auto result = _pathGeometry_35 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_25()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_35, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_35); - BindProperty(_pathGeometry_35, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_35); - return result; - } - - CompositionPathGeometry PathGeometry_36() - { - if (_pathGeometry_36 != nullptr) { return _pathGeometry_36; } - const auto result = _pathGeometry_36 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_26()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_36, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_36); - BindProperty(_pathGeometry_36, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_36); - return result; - } - - CompositionPathGeometry PathGeometry_37() - { - if (_pathGeometry_37 != nullptr) { return _pathGeometry_37; } - const auto result = _pathGeometry_37 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_27()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_37, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_37); - BindProperty(_pathGeometry_37, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_37); - return result; - } - - CompositionPathGeometry PathGeometry_38() - { - if (_pathGeometry_38 != nullptr) { return _pathGeometry_38; } - const auto result = _pathGeometry_38 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_28()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_38, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_38); - BindProperty(_pathGeometry_38, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_38); - return result; - } - - // - Layer aggregator - // Offset:<187.5, 333.5> - // Rectangle Path 1.RectangleGeometry - CompositionRectangleGeometry Rectangle_375x667() - { - const auto result = _c.CreateRectangleGeometry(); - result.Offset({ -187.5F, -333.5F }); - result.Size({ 375.0F, 667.0F }); - return result; - } - - // Layer aggregator - // Rectangle Path 1 - CompositionSpriteShape SpriteShape_00() - { - // Offset:<187.5, 333.5> - const auto geometry = Rectangle_375x667(); - const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 187.5F, 333.5F }, ColorBrush_AlmostDarkTurquoise_FF00D1C1());; - return result; - } - - // - - Layer aggregator - // - Layer: Dot-Y - // Transforms: Dot-Y - // Ellipse Path 1 - CompositionSpriteShape SpriteShape_01() - { - // Offset:<196, 267> - const auto geometry = Ellipse_4p6(); - const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F }, ColorBrush_White());; - return result; - } - - // - Layer aggregator - // Layer: E3-Y - // Path 1 - CompositionSpriteShape SpriteShape_02() - { - // Offset:<344.674, 261.877> - const auto result = CreateSpriteShape(PathGeometry_00(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.674011F, 261.877014F });; - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.56200027F); - return result; - } - - // - Layer aggregator - // Layer: E3-B - // Path 1 - CompositionSpriteShape SpriteShape_03() - { - // Offset:<344.739, 261.877> - const auto result = CreateSpriteShape(PathGeometry_01(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.739014F, 261.877014F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.56200027F); - return result; - } - - // - Layer aggregator - // Layer: I-Y - // Path 1 - CompositionSpriteShape SpriteShape_04() - { - // Offset:<304.135, 282.409> - const auto result = CreateSpriteShape(PathGeometry_02(), { 1.0F, 0.0F, 0.0F, 1.0F, 304.13501F, 282.408997F });; - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Square); - result.StrokeStartCap(CompositionStrokeCap::Square); - result.StrokeEndCap(CompositionStrokeCap::Square); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(8.39999962F); - return result; - } - - // - Layer aggregator - // Layer: I-B - // Path 1 - CompositionSpriteShape SpriteShape_05() - { - // Offset:<304.135, 282.409> - const auto result = CreateSpriteShape(PathGeometry_03(), { 1.0F, 0.0F, 0.0F, 1.0F, 304.13501F, 282.408997F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Square); - result.StrokeStartCap(CompositionStrokeCap::Square); - result.StrokeEndCap(CompositionStrokeCap::Square); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // - Layer aggregator - // Layer: E2-Y - // Path 1 - CompositionSpriteShape SpriteShape_06() - { - // Offset:<331.664, 238.14> - const auto result = CreateSpriteShape(PathGeometry_04(), { 1.0F, 0.0F, 0.0F, 1.0F, 331.664001F, 238.139999F });; - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(8.39999962F); - return result; - } - - // - Layer aggregator - // Layer: E2-B - // Path 1 - CompositionSpriteShape SpriteShape_07() - { - // Offset:<331.664, 238.14> - const auto result = CreateSpriteShape(PathGeometry_05(), { 1.0F, 0.0F, 0.0F, 1.0F, 331.664001F, 238.139999F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.56200027F); - return result; - } - - // - Layer aggregator - // Layer: E1-Y - // Path 1 - CompositionSpriteShape SpriteShape_08() - { - // Offset:<344.672, 214.842> - const auto result = CreateSpriteShape(PathGeometry_06(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.671997F, 214.841995F });; - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(8.39999962F); - return result; - } - - // - Layer aggregator - // Layer: E1-B - // Path 1 - CompositionSpriteShape SpriteShape_09() - { - // Offset:<344.672, 214.842> - const auto result = CreateSpriteShape(PathGeometry_07(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.671997F, 214.841995F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.56200027F); - return result; - } - - // - Layer aggregator - // Layer: T1a-Y - // Path 1 - CompositionSpriteShape SpriteShape_10() - { - // Offset:<227.677, 234.375> - const auto result = CreateSpriteShape(PathGeometry_08(), { 1.0F, 0.0F, 0.0F, 1.0F, 227.677002F, 234.375F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(8.39999962F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_11() - { - // Offset:<-56.5, 83.5> - if (_spriteShape_11 != nullptr) { return _spriteShape_11; } - const auto result = _spriteShape_11 = CreateSpriteShape(PathGeometry_09(), { 1.0F, 0.0F, 0.0F, 1.0F, -56.5F, 83.5F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_12() - { - // Offset:<221.198, 330.758> - if (_spriteShape_12 != nullptr) { return _spriteShape_12; } - const auto result = _spriteShape_12 = CreateSpriteShape(PathGeometry_10(), { 1.0F, 0.0F, 0.0F, 1.0F, 221.197998F, 330.757996F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Square); - result.StrokeStartCap(CompositionStrokeCap::Square); - result.StrokeEndCap(CompositionStrokeCap::Square); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_13() - { - // Offset:<-56.5, 83.5> - if (_spriteShape_13 != nullptr) { return _spriteShape_13; } - const auto result = _spriteShape_13 = CreateSpriteShape(PathGeometry_11(), { 1.0F, 0.0F, 0.0F, 1.0F, -56.5F, 83.5F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_14() - { - // Offset:<186.256, 349.081> - if (_spriteShape_14 != nullptr) { return _spriteShape_14; } - const auto result = _spriteShape_14 = CreateSpriteShape(PathGeometry_12(), { 1.0F, 0.0F, 0.0F, 1.0F, 186.255997F, 349.080994F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeLineJoin(CompositionStrokeLineJoin::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(8.39999962F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_15() - { - // Offset:<186.256, 349.081> - if (_spriteShape_15 != nullptr) { return _spriteShape_15; } - const auto result = _spriteShape_15 = CreateSpriteShape(PathGeometry_13(), { 1.0F, 0.0F, 0.0F, 1.0F, 186.255997F, 349.080994F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeLineJoin(CompositionStrokeLineJoin::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // - Layer aggregator - // Layer: O-Y - // Ellipse Path 1 - CompositionSpriteShape SpriteShape_16() - { - // Offset:<196, 267> - const auto result = CreateSpriteShape(Ellipse_0_0(), { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeThickness(8.80000019F); - return result; - } - - // - Layer aggregator - // Layer: O-Y - // Ellipse Path 1 - CompositionSpriteShape SpriteShape_17() - { - // Offset:<196, 267> - const auto result = CreateSpriteShape(Ellipse_0_1(), { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F });; - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeThickness(9.19400024F); - return result; - } - - // - Layer aggregator - // Layer: T1a-Y 2 - // Path 1 - CompositionSpriteShape SpriteShape_18() - { - // Offset:<227.677, 234.375> - const auto result = CreateSpriteShape(PathGeometry_14(), { 1.0F, 0.0F, 0.0F, 1.0F, 227.677002F, 234.375F });; - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(8.39999962F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_19() - { - // Offset:<221.198, 330.758> - if (_spriteShape_19 != nullptr) { return _spriteShape_19; } - const auto result = _spriteShape_19 = CreateSpriteShape(PathGeometry_15(), { 1.0F, 0.0F, 0.0F, 1.0F, 221.197998F, 330.757996F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Square); - result.StrokeStartCap(CompositionStrokeCap::Square); - result.StrokeEndCap(CompositionStrokeCap::Square); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // - Layer aggregator - // Layer: T1a-B - // Path 1 - CompositionSpriteShape SpriteShape_20() - { - // Offset:<227.677, 234.375> - const auto result = CreateSpriteShape(PathGeometry_16(), { 1.0F, 0.0F, 0.0F, 1.0F, 227.677002F, 234.375F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // - - Layer aggregator - // - Layer: Dot-Y - // Transforms: Dot-Y - // Ellipse Path 1 - CompositionSpriteShape SpriteShape_21() - { - // Offset:<196, 267> - const auto geometry = Ellipse_4p7(); - const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F }, ColorBrush_White());; - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_22() - { - // Offset:<109.52901, 354.143> - if (_spriteShape_22 != nullptr) { return _spriteShape_22; } - const auto result = _spriteShape_22 = CreateSpriteShape(PathGeometry_17(), { 1.0F, 0.0F, 0.0F, 1.0F, 109.529007F, 354.143005F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(8.39999962F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_23() - { - // Offset:<109.52901, 354.143> - if (_spriteShape_23 != nullptr) { return _spriteShape_23; } - const auto result = _spriteShape_23 = CreateSpriteShape(PathGeometry_18(), { 1.0F, 0.0F, 0.0F, 1.0F, 109.529007F, 354.143005F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // - Layer aggregator - // Layer: Dot1 - // Ellipse Path 1 - CompositionSpriteShape SpriteShape_24() - { - // Offset:<196, 267> - const auto geometry = Ellipse_4p7(); - const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F }, ColorBrush_White());; - return result; - } - - // - Layer aggregator - // Layer: S1-Y - // Path 1 - CompositionSpriteShape SpriteShape_25() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_19(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(1.5F); - return result; - } - - // - Layer aggregator - // Layer: S1-Y - // Path 1 - CompositionSpriteShape SpriteShape_26() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_20(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(1.5F); - return result; - } - - // - Layer aggregator - // Layer: S7 - // Path 1 - CompositionSpriteShape SpriteShape_27() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_21(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(1.5F); - return result; - } - - // - Layer aggregator - // Layer: S7 - // Path 1 - CompositionSpriteShape SpriteShape_28() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_22(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(1.5F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y - // Path 1 - CompositionSpriteShape SpriteShape_29() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_23(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y - // Path 1 - CompositionSpriteShape SpriteShape_30() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_24(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y - // Path 1 - CompositionSpriteShape SpriteShape_31() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_25(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y - // Path 1 - CompositionSpriteShape SpriteShape_32() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_26(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 2 - // Path 1 - CompositionSpriteShape SpriteShape_33() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_27(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 2 - // Path 1 - CompositionSpriteShape SpriteShape_34() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_28(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 2 - // Path 1 - CompositionSpriteShape SpriteShape_35() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_29(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_36() - { - // Offset:<179.5, 333.5> - if (_spriteShape_36 != nullptr) { return _spriteShape_36; } - const auto result = _spriteShape_36 = CreateSpriteShape(PathGeometry_30(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(1.5F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_37() - { - // Offset:<179.5, 333.5> - if (_spriteShape_37 != nullptr) { return _spriteShape_37; } - const auto result = _spriteShape_37 = CreateSpriteShape(PathGeometry_31(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(1.5F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_38() - { - // Offset:<179.5, 333.5> - if (_spriteShape_38 != nullptr) { return _spriteShape_38; } - const auto result = _spriteShape_38 = CreateSpriteShape(PathGeometry_32(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(1.5F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 3 - // Path 1 - CompositionSpriteShape SpriteShape_39() - { - // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees - const auto result = CreateSpriteShape(PathGeometry_33(), { -0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 3 - // Path 1 - CompositionSpriteShape SpriteShape_40() - { - // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees - const auto result = CreateSpriteShape(PathGeometry_34(), { -0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 3 - // Path 1 - CompositionSpriteShape SpriteShape_41() - { - // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees - const auto result = CreateSpriteShape(PathGeometry_35(), { -0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 4 - // Path 1 - CompositionSpriteShape SpriteShape_42() - { - // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, - // Scale:<0.99999994, 0.99999994> - const auto result = CreateSpriteShape(PathGeometry_36(), { 0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 4 - // Path 1 - CompositionSpriteShape SpriteShape_43() - { - // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, - // Scale:<0.99999994, 0.99999994> - const auto result = CreateSpriteShape(PathGeometry_37(), { 0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 4 - // Path 1 - CompositionSpriteShape SpriteShape_44() - { - // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, - // Scale:<0.99999994, 0.99999994> - const auto result = CreateSpriteShape(PathGeometry_38(), { 0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // The root of the composition. - ContainerVisual Root() - { - if (_root != nullptr) { return _root; } - const auto result = _root = _c.CreateContainerVisual(); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"Progress", 0.0F); - propertySet.InsertScalar(L"t0", 0.0F); - // Layer aggregator - result.Children().InsertAtTop(ShapeVisual_0()); - return result; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_0() - { - return (_cubicBezierEasingFunction_0 == nullptr) - ? _cubicBezierEasingFunction_0 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.180000007F, 1.0F }) - : _cubicBezierEasingFunction_0; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_1() - { - return (_cubicBezierEasingFunction_1 == nullptr) - ? _cubicBezierEasingFunction_1 = _c.CreateCubicBezierEasingFunction({ 0.819999993F, 0.0F }, { 0.833000004F, 0.833000004F }) - : _cubicBezierEasingFunction_1; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_2() - { - return (_cubicBezierEasingFunction_2 == nullptr) - ? _cubicBezierEasingFunction_2 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.833000004F, 0.833000004F }) - : _cubicBezierEasingFunction_2; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_3() - { - return (_cubicBezierEasingFunction_3 == nullptr) - ? _cubicBezierEasingFunction_3 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.666999996F, 1.0F }) - : _cubicBezierEasingFunction_3; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_4() - { - return (_cubicBezierEasingFunction_4 == nullptr) - ? _cubicBezierEasingFunction_4 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.119999997F, 1.0F }) - : _cubicBezierEasingFunction_4; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_5() - { - return (_cubicBezierEasingFunction_5 == nullptr) - ? _cubicBezierEasingFunction_5 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.0F }, { 0.119999997F, 1.0F }) - : _cubicBezierEasingFunction_5; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_6() - { - return (_cubicBezierEasingFunction_6 == nullptr) - ? _cubicBezierEasingFunction_6 = _c.CreateCubicBezierEasingFunction({ 0.300999999F, 0.0F }, { 0.666999996F, 1.0F }) - : _cubicBezierEasingFunction_6; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_7() - { - return (_cubicBezierEasingFunction_7 == nullptr) - ? _cubicBezierEasingFunction_7 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.0599999987F, 1.0F }) - : _cubicBezierEasingFunction_7; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_8() - { - return (_cubicBezierEasingFunction_8 == nullptr) - ? _cubicBezierEasingFunction_8 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.337000012F, 1.0F }) - : _cubicBezierEasingFunction_8; - } - - ScalarKeyFrameAnimation t0ScalarAnimation_0_to_1() - { - // Frame 35.26. - const auto result = CreateScalarKeyFrameAnimation(0.196966499F, 0.0F, StepThenHoldEasingFunction()); - result.SetReferenceParameter(L"_", _root); - // Frame 44. - result.InsertKeyFrame(0.245810047F, 1.0F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.197999999F }, { 0.638000011F, 1.0F })); - // Frame 44. - result.InsertKeyFrame(0.245810062F, 0.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675946F, 1.0F, _c.CreateCubicBezierEasingFunction({ 0.523000002F, 0.0F }, { 0.795000017F, 1.0F })); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_0_to_1_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); - // Frame 74. - result.InsertKeyFrame(0.413407832F, 1.0F, CubicBezierEasingFunction_6()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_0_to_1_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 1.0F, CubicBezierEasingFunction_6()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_0p81_to_0p734_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.810000002F, StepThenHoldEasingFunction()); - // Frame 16. - result.InsertKeyFrame(0.0893854722F, 0.810000002F, HoldThenStepEasingFunction()); - // Frame 27. - result.InsertKeyFrame(0.150837988F, 0.734000027F, CubicBezierEasingFunction_8()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_0p81_to_0p734_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.810000002F, StepThenHoldEasingFunction()); - // Frame 18. - result.InsertKeyFrame(0.100558661F, 0.810000002F, HoldThenStepEasingFunction()); - // Frame 29. - result.InsertKeyFrame(0.162011176F, 0.734000027F, CubicBezierEasingFunction_8()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_00() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 29. - result.InsertKeyFrame(0.162011176F, 1.0F, HoldThenStepEasingFunction()); - // Frame 33. - result.InsertKeyFrame(0.184357539F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 36. - result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_01() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 29. - result.InsertKeyFrame(0.162011176F, 1.0F, HoldThenStepEasingFunction()); - // Frame 33. - result.InsertKeyFrame(0.184357539F, 0.690559983F, CubicBezierEasingFunction_2()); - // Frame 36. - result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_02() - { - // Frame 0. - if (_tEndScalarAnimation_1_to_0_02 != nullptr) { return _tEndScalarAnimation_1_to_0_02; } - const auto result = _tEndScalarAnimation_1_to_0_02 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 65. - result.InsertKeyFrame(0.363128483F, 1.0F, HoldThenStepEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_03() - { - // Frame 0. - if (_tEndScalarAnimation_1_to_0_03 != nullptr) { return _tEndScalarAnimation_1_to_0_03; } - const auto result = _tEndScalarAnimation_1_to_0_03 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_04() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.758560002F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_05() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.704559982F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_06() - { - // Frame 0. - if (_tEndScalarAnimation_1_to_0_06 != nullptr) { return _tEndScalarAnimation_1_to_0_06; } - const auto result = _tEndScalarAnimation_1_to_0_06 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 1.0F, HoldThenStepEasingFunction()); - // Frame 100. - result.InsertKeyFrame(0.558659196F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_07() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 1.0F, HoldThenStepEasingFunction()); - // Frame 100. - result.InsertKeyFrame(0.558659196F, 0.758560002F, CubicBezierEasingFunction_2()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_08() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 80. - result.InsertKeyFrame(0.446927369F, 1.0F, HoldThenStepEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 87. - result.InsertKeyFrame(0.486033529F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_09() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, 1.0F, HoldThenStepEasingFunction()); - // Frame 87. - result.InsertKeyFrame(0.486033529F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_10() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 1.0F, HoldThenStepEasingFunction()); - // Frame 90. - result.InsertKeyFrame(0.502793312F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 94. - result.InsertKeyFrame(0.525139689F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_11() - { - // Frame 0. - if (_tEndScalarAnimation_1_to_0_11 != nullptr) { return _tEndScalarAnimation_1_to_0_11; } - const auto result = _tEndScalarAnimation_1_to_0_11 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 1.0F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_12() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 1.0F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.758560002F, CubicBezierEasingFunction_2()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_13() - { - // Frame 0. - if (_tEndScalarAnimation_1_to_0_13 != nullptr) { return _tEndScalarAnimation_1_to_0_13; } - const auto result = _tEndScalarAnimation_1_to_0_13 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 1.0F, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_14() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 1.0F, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.758560002F, CubicBezierEasingFunction_2()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E2-Y - // - ShapeGroup: Group 3 Offset:<331.664, 238.14> - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p43_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.0F, HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, 0.430000007F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E2-B - // - Transforms: E2-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p43_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 86. - result.InsertKeyFrame(0.480446935F, 0.0F, HoldThenStepEasingFunction()); - // Frame 95. - result.InsertKeyFrame(0.530726254F, 0.430000007F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E3-Y - // - ShapeGroup: Group 1 Offset:<344.674, 261.877> - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p316_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, 0.0F, HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, 0.316000015F, CubicBezierEasingFunction_2()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E3-B - // - Transforms: E3-B Offset:<0.06500244, 0> - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p316_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, 0.0F, HoldThenStepEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 0.316000015F, CubicBezierEasingFunction_2()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E1-Y - // - ShapeGroup: Group 2 Offset:<344.672, 214.842> - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p375_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.0F, HoldThenStepEasingFunction()); - // Frame 88. - result.InsertKeyFrame(0.491620123F, 0.375F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E1-B - // - Transforms: E1-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p375_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, 0.0F, HoldThenStepEasingFunction()); - // Frame 93. - result.InsertKeyFrame(0.519553065F, 0.375F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: I-Y - // - ShapeGroup: Group 6 Offset:<304.135, 282.409> - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p457_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.0F, HoldThenStepEasingFunction()); - // Frame 88. - result.InsertKeyFrame(0.491620123F, 0.456999987F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: I-B - // - Transforms: I-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p457_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 81. - result.InsertKeyFrame(0.452513963F, 0.0F, HoldThenStepEasingFunction()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0.456999987F, CubicBezierEasingFunction_4()); - return result; - } - - // - - Layer aggregator - // - Layer: T2a-Y - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p5_to_1_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); - // Frame 72. - result.InsertKeyFrame(0.402234644F, 0.5F, HoldThenStepEasingFunction()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 1.0F, CubicBezierEasingFunction_7()); - return result; - } - - // - - Layer aggregator - // - Layer: T2a-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p5_to_1_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.5F, HoldThenStepEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 1.0F, CubicBezierEasingFunction_7()); - return result; - } - - // - - Layer aggregator - // - Layer: T1b-Y - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p117_to_1_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.116999999F, StepThenHoldEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, 0.116999999F, HoldThenStepEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 1.0F, CubicBezierEasingFunction_2()); - return result; - } - - // - - Layer aggregator - // - Layer: T1b-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p117_to_1_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.116999999F, StepThenHoldEasingFunction()); - // Frame 81. - result.InsertKeyFrame(0.452513963F, 0.116999999F, HoldThenStepEasingFunction()); - // Frame 88. - result.InsertKeyFrame(0.491620123F, 1.0F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.209999993F, 1.0F })); - return result; - } - - // - - - Layer aggregator - // - - Layer: T1a-B - // - Transforms: T1a-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p249_to_0p891() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.248999998F, StepThenHoldEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, 0.248999998F, HoldThenStepEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, 0.890999973F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.672999978F, 1.0F })); - return result; - } - - // - - Layer aggregator - // - Layer: T2b-Y - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p411_to_0p665_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.411000013F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 0.411000013F, HoldThenStepEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 0.665000021F, CubicBezierEasingFunction_4()); - return result; - } - - // - - Layer aggregator - // - Layer: T2b-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p411_to_0p665_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.411000013F, StepThenHoldEasingFunction()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.411000013F, HoldThenStepEasingFunction()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0.665000021F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: O-Y - // - ShapeGroup: Ellipse 1 Offset:<196, 267> - // Ellipse Path 1.EllipseGeometry - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_1_to_0p88() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); - // Frame 63. - result.InsertKeyFrame(0.351955295F, 0.879999995F, CubicBezierEasingFunction_2()); - return result; - } - - // - - - Layer aggregator - // - - Layer: O-Y - // - ShapeGroup: Ellipse 1 Offset:<196, 267> - // Ellipse Path 1.EllipseGeometry - // TrimStart - ScalarKeyFrameAnimation TrimStartScalarAnimation_0_to_0p399() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); - // Frame 63. - result.InsertKeyFrame(0.351955295F, 0.300000012F, CubicBezierEasingFunction_2()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0.398999989F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 1.0F }, { 0.432000011F, 1.0F })); - return result; - } - - // - - Layer aggregator - // - Layer: T2a-Y - // TrimStart - ScalarKeyFrameAnimation TrimStartScalarAnimation_0p5_to_0_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); - // Frame 72. - result.InsertKeyFrame(0.402234644F, 0.5F, HoldThenStepEasingFunction()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_7()); - return result; - } - - // - - Layer aggregator - // - Layer: T2a-B - // TrimStart - ScalarKeyFrameAnimation TrimStartScalarAnimation_0p5_to_0_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.5F, HoldThenStepEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 0.0F, CubicBezierEasingFunction_7()); - return result; - } - - // - - Layer aggregator - // - Layer: T2b-Y - // TrimStart - ScalarKeyFrameAnimation TrimStartScalarAnimation_0p29_to_0_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.289999992F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 0.289999992F, HoldThenStepEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 0.0F, CubicBezierEasingFunction_4()); - return result; - } - - // - - Layer aggregator - // - Layer: T2b-B - // TrimStart - ScalarKeyFrameAnimation TrimStartScalarAnimation_0p29_to_0_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.289999992F, StepThenHoldEasingFunction()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.289999992F, HoldThenStepEasingFunction()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0.0F, CubicBezierEasingFunction_4()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0_to_0p249() - { - // Frame 0. - if (_tStartScalarAnimation_0_to_0p249 != nullptr) { return _tStartScalarAnimation_0_to_0p249; } - const auto result = _tStartScalarAnimation_0_to_0p249 = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, 0.248999998F, _c.CreateCubicBezierEasingFunction({ 0.300999999F, 0.0F }, { 0.833000004F, 1.0F })); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p8_to_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.800000012F, StepThenHoldEasingFunction()); - // Frame 16. - result.InsertKeyFrame(0.0893854722F, 0.800000012F, HoldThenStepEasingFunction()); - // Frame 20. - result.InsertKeyFrame(0.111731842F, 0.5F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.703000009F, 0.856999993F })); - // Frame 28. - result.InsertKeyFrame(0.156424582F, 0.0F, _c.CreateCubicBezierEasingFunction({ 0.333000004F, 0.202000007F }, { 0.938000023F, 1.0F })); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p8_to_0p3() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.800000012F, StepThenHoldEasingFunction()); - // Frame 18. - result.InsertKeyFrame(0.100558661F, 0.800000012F, HoldThenStepEasingFunction()); - // Frame 23. - result.InsertKeyFrame(0.128491625F, 0.5F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.703000009F, 0.82099998F })); - // Frame 55. - result.InsertKeyFrame(0.30726257F, 0.300000012F, _c.CreateCubicBezierEasingFunction({ 0.0370000005F, 0.167999998F }, { 0.263000011F, 1.0F })); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_00() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 29. - result.InsertKeyFrame(0.162011176F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 33. - result.InsertKeyFrame(0.184357539F, 0.375330001F, CubicBezierEasingFunction_2()); - // Frame 36. - result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_01() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 29. - result.InsertKeyFrame(0.162011176F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 33. - result.InsertKeyFrame(0.184357539F, 0.253329992F, CubicBezierEasingFunction_2()); - // Frame 36. - result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_02() - { - // Frame 0. - if (_tStartScalarAnimation_0p87_to_0_02 != nullptr) { return _tStartScalarAnimation_0p87_to_0_02; } - const auto result = _tStartScalarAnimation_0p87_to_0_02 = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 65. - result.InsertKeyFrame(0.363128483F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, 0.212329999F, CubicBezierEasingFunction_2()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_03() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.421330005F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_04() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.438329995F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_05() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.506330013F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_06() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.439330012F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_07() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 100. - result.InsertKeyFrame(0.558659196F, 0.421330005F, CubicBezierEasingFunction_2()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_08() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 100. - result.InsertKeyFrame(0.558659196F, 0.438329995F, CubicBezierEasingFunction_2()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_09() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 100. - result.InsertKeyFrame(0.558659196F, 0.506330013F, CubicBezierEasingFunction_2()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_10() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 80. - result.InsertKeyFrame(0.446927369F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.212329999F, CubicBezierEasingFunction_2()); - // Frame 87. - result.InsertKeyFrame(0.486033529F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_11() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 87. - result.InsertKeyFrame(0.486033529F, 0.212329999F, CubicBezierEasingFunction_2()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_12() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 90. - result.InsertKeyFrame(0.502793312F, 0.212329999F, CubicBezierEasingFunction_2()); - // Frame 94. - result.InsertKeyFrame(0.525139689F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_13() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.421330005F, CubicBezierEasingFunction_2()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_14() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.438329995F, CubicBezierEasingFunction_2()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_15() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.506330013F, CubicBezierEasingFunction_2()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_16() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.421330005F, CubicBezierEasingFunction_2()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_17() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.438329995F, CubicBezierEasingFunction_2()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_18() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.506330013F, CubicBezierEasingFunction_2()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // Layer aggregator - ShapeVisual ShapeVisual_0() - { - const auto result = _c.CreateShapeVisual(); - result.Size({ 375.0F, 667.0F }); - const auto shapes = result.Shapes(); - // Offset:<187.5, 333.5> - shapes.Append(SpriteShape_00()); - // Layer: Dot-Y - shapes.Append(ContainerShape_00()); - // Layer: E3-Y - shapes.Append(ContainerShape_02()); - // Layer: E3-B - shapes.Append(ContainerShape_03()); - // Layer: I-Y - shapes.Append(ContainerShape_04()); - // Layer: I-B - shapes.Append(ContainerShape_05()); - // Layer: E2-Y - shapes.Append(ContainerShape_06()); - // Layer: E2-B - shapes.Append(ContainerShape_07()); - // Layer: E1-Y - shapes.Append(ContainerShape_08()); - // Layer: E1-B - shapes.Append(ContainerShape_09()); - // Layer: T1a-Y - shapes.Append(ContainerShape_10()); - // Layer: T2b-Y - shapes.Append(SpriteShape_11()); - // Layer: T2a-Y - shapes.Append(SpriteShape_12()); - // Layer: T2b-B - shapes.Append(SpriteShape_13()); - // Layer: T1b-Y - shapes.Append(SpriteShape_14()); - // Layer: T1b-B - shapes.Append(SpriteShape_15()); - // Layer: O-Y - shapes.Append(ContainerShape_11()); - // Layer: T1a-Y 2 - shapes.Append(ContainerShape_12()); - // Layer: T2a-B - shapes.Append(SpriteShape_19()); - // Layer: T1a-B - shapes.Append(ContainerShape_13()); - // Layer: Dot-Y - shapes.Append(ContainerShape_14()); - // Layer: L-Y - shapes.Append(SpriteShape_22()); - // Layer: L-B - shapes.Append(SpriteShape_23()); - // Layer: Dot1 - shapes.Append(ContainerShape_16()); - // Layer: S1-Y - shapes.Append(ContainerShape_17()); - // Layer: S7 - shapes.Append(ContainerShape_18()); - // Layer: S3-Y - shapes.Append(ContainerShape_19()); - // Layer: S3-Y 2 - shapes.Append(ContainerShape_20()); - // Layer: S11 - shapes.Append(SpriteShape_36()); - // Layer: S12 - shapes.Append(SpriteShape_37()); - // Layer: S13 - shapes.Append(SpriteShape_38()); - // Layer: S3-Y 3 - shapes.Append(ContainerShape_21()); - // Layer: S3-Y 4 - shapes.Append(ContainerShape_22()); - return result; - } - - StepEasingFunction HoldThenStepEasingFunction() - { - if (_holdThenStepEasingFunction != nullptr) { return _holdThenStepEasingFunction; } - const auto result = _holdThenStepEasingFunction = _c.CreateStepEasingFunction(); - result.IsFinalStepSingleFrame(true); - return result; - } - - StepEasingFunction StepThenHoldEasingFunction() - { - if (_stepThenHoldEasingFunction != nullptr) { return _stepThenHoldEasingFunction; } - const auto result = _stepThenHoldEasingFunction = _c.CreateStepEasingFunction(); - result.IsInitialStepSingleFrame(true); - return result; - } - - // - - Layer aggregator - // - Layer: Dot-Y - // Transforms: Dot-Y - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_00() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { -153.528F, -206.753998F }, StepThenHoldEasingFunction()); - // Frame 96. - result.InsertKeyFrame(0.536312878F, { -153.528F, -206.753998F }, HoldThenStepEasingFunction()); - // Frame 108. - result.InsertKeyFrame(0.603351951F, { -134.278F, -206.753998F }, _c.CreateCubicBezierEasingFunction({ 0.0F, 0.0F }, { 0.0F, 0.811999977F })); - // Frame 115. - result.InsertKeyFrame(0.642458081F, { -133.028F, -206.753998F }, _c.CreateCubicBezierEasingFunction({ 0.389999986F, 0.707000017F }, { 0.708000004F, 1.0F })); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_01() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 104.781998F, -2.52699995F }, StepThenHoldEasingFunction()); - // Frame 96. - result.InsertKeyFrame(0.536312878F, { 104.781998F, -2.52699995F }, HoldThenStepEasingFunction()); - // Frame 99. - result.InsertKeyFrame(0.553072631F, { 104.781998F, -4.52699995F }, CubicBezierEasingFunction_0()); - // Frame 102. - result.InsertKeyFrame(0.569832385F, { 104.781998F, -2.52699995F }, CubicBezierEasingFunction_1()); - // Frame 105. - result.InsertKeyFrame(0.586592197F, { 104.781998F, -3.09100008F }, CubicBezierEasingFunction_0()); - // Frame 108. - result.InsertKeyFrame(0.603351951F, { 104.781998F, -2.52699995F }, CubicBezierEasingFunction_1()); - return result; - } - - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_02() - { - // Frame 0. - if (_offsetVector2Animation_02 != nullptr) { return _offsetVector2Animation_02; } - const auto result = _offsetVector2Animation_02 = CreateVector2KeyFrameAnimation(0.0F, { -225.957001F, -204.322006F }, StepThenHoldEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, { -225.957001F, -204.322006F }, HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, { -207.957001F, -204.322006F }, CubicBezierEasingFunction_3()); - // Frame 96. - result.InsertKeyFrame(0.536312878F, { -210.957001F, -204.322006F }, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.0F }, { 0.666999996F, 1.0F })); - return result; - } - - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_03() - { - // Frame 0. - if (_offsetVector2Animation_03 != nullptr) { return _offsetVector2Animation_03; } - const auto result = _offsetVector2Animation_03 = CreateVector2KeyFrameAnimation(0.0F, { -210.207993F, -219.320999F }, StepThenHoldEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, { -210.207993F, -219.320999F }, HoldThenStepEasingFunction()); - // Frame 88. - result.InsertKeyFrame(0.491620123F, { -211.175995F, -199.352997F }, CubicBezierEasingFunction_4()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, { -210.957993F, -204.320999F }, CubicBezierEasingFunction_5()); - return result; - } - - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_04() - { - // Frame 0. - if (_offsetVector2Animation_04 != nullptr) { return _offsetVector2Animation_04; } - const auto result = _offsetVector2Animation_04 = CreateVector2KeyFrameAnimation(0.0F, { -222.957993F, -204.322006F }, StepThenHoldEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, { -222.957993F, -204.322006F }, HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, { -210.957993F, -204.322006F }, CubicBezierEasingFunction_4()); - return result; - } - - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_05() - { - // Frame 0. - if (_offsetVector2Animation_05 != nullptr) { return _offsetVector2Animation_05; } - const auto result = _offsetVector2Animation_05 = CreateVector2KeyFrameAnimation(0.0F, { -230.957001F, -205.695999F }, StepThenHoldEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, { -230.957001F, -205.695999F }, HoldThenStepEasingFunction()); - // Frame 88. - result.InsertKeyFrame(0.491620123F, { -206.957001F, -205.695999F }, CubicBezierEasingFunction_4()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, { -210.957001F, -205.695999F }, CubicBezierEasingFunction_5()); - return result; - } - - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_06() - { - // Frame 0. - if (_offsetVector2Animation_06 != nullptr) { return _offsetVector2Animation_06; } - const auto result = _offsetVector2Animation_06 = CreateVector2KeyFrameAnimation(0.0F, { -210.957001F, -201.322006F }, StepThenHoldEasingFunction()); - // Frame 56. - result.InsertKeyFrame(0.312849164F, { -210.957001F, -201.322006F }, HoldThenStepEasingFunction()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, { -210.957001F, -204.322006F }, CubicBezierEasingFunction_3()); - return result; - } - - // - Layer aggregator - // Layer: O-Y - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_07() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { -259.583008F, -193.447006F }, StepThenHoldEasingFunction()); - result.SetReferenceParameter(L"_", _root); - // Frame 31. - result.InsertKeyFrame(0.17318435F, { -259.583008F, -193.447006F }, HoldThenStepEasingFunction()); - // Frame 35.26. - result.InsertKeyFrame(0.196966484F, { -250.582993F, -258.946991F }, CubicBezierEasingFunction_2()); - // Frame 44. - result.InsertExpressionKeyFrame(0.245810047F, L"Pow(1-_.t0,3)*Vector2(-250.583,-258.947)+(3*Square(1-_.t0)*_.t0*Vector2(-250.583,-258.947))+(3*(1-_.t0)*Square(_.t0)*Vector2(-249.6143,-337.5837))+(Pow(_.t0,3)*Vector2(-230.458,-339.322))", StepThenHoldEasingFunction()); - // Frame 54. - result.InsertExpressionKeyFrame(0.301675946F, L"Pow(1-_.t0,3)*Vector2(-230.458,-339.322)+(3*Square(1-_.t0)*_.t0*Vector2(-214.2505,-340.7927))+(3*(1-_.t0)*Square(_.t0)*Vector2(-210.958,-164.322))+(Pow(_.t0,3)*Vector2(-210.958,-164.322))", StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, { -210.957993F, -164.322006F }, StepThenHoldEasingFunction()); - // Frame 63. - result.InsertKeyFrame(0.351955295F, { -210.957993F, -207.322006F }, _c.CreateCubicBezierEasingFunction({ 0.180000007F, 0.0F }, { 0.34799999F, 1.0F })); - // Frame 73. - result.InsertKeyFrame(0.407821238F, { -210.957993F, -204.322006F }, _c.CreateCubicBezierEasingFunction({ 0.693000019F, 0.0F }, { 0.270000011F, 1.0F })); - return result; - } - - // - - Layer aggregator - // - Layer: Dot-Y - // Transforms: Dot-Y - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_08() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { -156.916F, -206.503998F }, StepThenHoldEasingFunction()); - // Frame 28. - result.InsertKeyFrame(0.156424582F, { -156.916F, -206.503998F }, HoldThenStepEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, { -117.416F, -206.503998F }, CubicBezierEasingFunction_2()); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_09() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { -93.6669998F, -51.8180008F }, StepThenHoldEasingFunction()); - // Frame 28. - result.InsertKeyFrame(0.156424582F, { -93.6669998F, -51.8180008F }, HoldThenStepEasingFunction()); - // Frame 40. - result.InsertKeyFrame(0.223463684F, { -93.6669998F, -132.817993F }, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.25999999F, 1.0F })); - // Frame 54. - result.InsertKeyFrame(0.301675975F, { -93.6669998F, 42.0569992F }, _c.CreateCubicBezierEasingFunction({ 0.74000001F, 0.0F }, { 0.833000004F, 0.833000004F })); - return result; - } - - // - Layer aggregator - // Layer: Dot1 - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_10() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 98.9800034F, -157.509995F }, HoldThenStepEasingFunction()); - // Frame 18.69. - result.InsertKeyFrame(0.104395606F, { -161.020004F, -157.509995F }, _c.CreateCubicBezierEasingFunction({ 0.823000014F, 0.0F }, { 0.833000004F, 0.833000004F })); - return result; - } - - // Radius - Vector2KeyFrameAnimation RadiusVector2Animation() - { - // Frame 0. - if (_radiusVector2Animation != nullptr) { return _radiusVector2Animation; } - const auto result = _radiusVector2Animation = CreateVector2KeyFrameAnimation(0.0F, { 1.5F, 1.5F }, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, { 1.5F, 1.5F }, HoldThenStepEasingFunction()); - // Frame 61. - result.InsertKeyFrame(0.340782136F, { 22.2999992F, 22.2999992F }, _c.CreateCubicBezierEasingFunction({ 0.333000004F, 0.0F }, { 0.666999996F, 1.0F })); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_00() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 96. - result.InsertKeyFrame(0.536312878F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E3-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_01() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 102. - result.InsertKeyFrame(0.569832385F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E3-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_02() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: I-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_03() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 93. - result.InsertKeyFrame(0.519553065F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - Vector2KeyFrameAnimation ShapeVisibilityAnimation_04() - { - // Frame 0. - if (_shapeVisibilityAnimation_04 != nullptr) { return _shapeVisibilityAnimation_04; } - const auto result = _shapeVisibilityAnimation_04 = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 81. - result.InsertKeyFrame(0.452513963F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E2-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_05() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 96. - result.InsertKeyFrame(0.536312878F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E2-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_06() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 86. - result.InsertKeyFrame(0.480446935F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E1-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_07() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 94. - result.InsertKeyFrame(0.525139689F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E1-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_08() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T1a-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_09() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 59. - result.InsertKeyFrame(0.329608947F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 156. - result.InsertKeyFrame(0.87150836F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T2b-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_10() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T2a-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_11() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 72. - result.InsertKeyFrame(0.402234644F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 89. - result.InsertKeyFrame(0.497206718F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T2b-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_12() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T1b-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_13() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 161. - result.InsertKeyFrame(0.899441361F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: O-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_14() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T1a-Y 2 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_15() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 59. - result.InsertKeyFrame(0.329608947F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T2a-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_16() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T1a-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_17() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_18() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 28. - result.InsertKeyFrame(0.156424582F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: L-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_19() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 16. - result.InsertKeyFrame(0.0893854722F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: L-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_20() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 18. - result.InsertKeyFrame(0.100558661F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: Dot1 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_21() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 17. - result.InsertKeyFrame(0.0949720666F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S1-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_22() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 30. - result.InsertKeyFrame(0.167597771F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 37. - result.InsertKeyFrame(0.206703916F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S7 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_23() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 65. - result.InsertKeyFrame(0.363128483F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S3-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_24() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 2 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_25() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S11 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_26() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 80. - result.InsertKeyFrame(0.446927369F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 90. - result.InsertKeyFrame(0.502793312F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S12 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_27() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 94. - result.InsertKeyFrame(0.525139689F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S13 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_28() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 95. - result.InsertKeyFrame(0.530726254F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 3 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_29() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 4 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_30() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - static IGeometrySource2D CanvasGeometryToIGeometrySource2D(winrt::com_ptr geo) - { - return geo.as(); - } - - public: - LottieLogo1_AnimatedVisual(Compositor compositor) - : _c{compositor} - , _reusableExpressionAnimation(compositor.CreateExpressionAnimation()) - { - winrt::check_hresult(D2D1CreateFactory(D2D1_FACTORY_TYPE_SINGLE_THREADED, _d2dFactory.put())); - const auto _ = Root(); - } - - void Close() - { - if (_root) - { - _root.Close(); - } - } - - TimeSpan Duration() const - { - return TimeSpan{ c_durationTicks }; - } - - Visual RootVisual() const - { - return _root; - } - - float2 Size() const - { - return { 375.0F, 667.0F }; - } - - void CreateAnimations() - { - _containerShape_00.StartAnimation(L"Offset", OffsetVector2Animation_01(), AnimationController_0()); - _containerShape_00.StartAnimation(L"Scale", ShapeVisibilityAnimation_00(), AnimationController_0()); - _containerShape_01.StartAnimation(L"Offset", OffsetVector2Animation_00(), AnimationController_0()); - _containerShape_02.StartAnimation(L"Offset", OffsetVector2Animation_02(), AnimationController_0()); - _containerShape_02.StartAnimation(L"Scale", ShapeVisibilityAnimation_01(), AnimationController_0()); - _containerShape_03.StartAnimation(L"Offset", OffsetVector2Animation_02(), AnimationController_0()); - _containerShape_03.StartAnimation(L"Scale", ShapeVisibilityAnimation_02(), AnimationController_0()); - _containerShape_04.StartAnimation(L"Offset", OffsetVector2Animation_03(), AnimationController_0()); - _containerShape_04.StartAnimation(L"Scale", ShapeVisibilityAnimation_03(), AnimationController_0()); - _containerShape_05.StartAnimation(L"Offset", OffsetVector2Animation_03(), AnimationController_0()); - _containerShape_05.StartAnimation(L"Scale", ShapeVisibilityAnimation_04(), AnimationController_0()); - _containerShape_06.StartAnimation(L"Offset", OffsetVector2Animation_04(), AnimationController_0()); - _containerShape_06.StartAnimation(L"Scale", ShapeVisibilityAnimation_05(), AnimationController_0()); - _containerShape_07.StartAnimation(L"Offset", OffsetVector2Animation_04(), AnimationController_0()); - _containerShape_07.StartAnimation(L"Scale", ShapeVisibilityAnimation_06(), AnimationController_0()); - _containerShape_08.StartAnimation(L"Offset", OffsetVector2Animation_05(), AnimationController_0()); - _containerShape_08.StartAnimation(L"Scale", ShapeVisibilityAnimation_07(), AnimationController_0()); - _containerShape_09.StartAnimation(L"Offset", OffsetVector2Animation_05(), AnimationController_0()); - _containerShape_09.StartAnimation(L"Scale", ShapeVisibilityAnimation_08(), AnimationController_0()); - _containerShape_10.StartAnimation(L"Offset", OffsetVector2Animation_06(), AnimationController_0()); - _containerShape_10.StartAnimation(L"Scale", ShapeVisibilityAnimation_09(), AnimationController_0()); - _containerShape_11.StartAnimation(L"Offset", OffsetVector2Animation_07(), AnimationController_0()); - _containerShape_11.StartAnimation(L"Scale", ShapeVisibilityAnimation_14(), AnimationController_0()); - _containerShape_12.StartAnimation(L"Offset", OffsetVector2Animation_06(), AnimationController_0()); - _containerShape_12.StartAnimation(L"Scale", ShapeVisibilityAnimation_15(), AnimationController_0()); - _containerShape_13.StartAnimation(L"Offset", OffsetVector2Animation_06(), AnimationController_0()); - _containerShape_13.StartAnimation(L"Scale", ShapeVisibilityAnimation_17(), AnimationController_0()); - _containerShape_14.StartAnimation(L"Offset", OffsetVector2Animation_09(), AnimationController_0()); - _containerShape_14.StartAnimation(L"Scale", ShapeVisibilityAnimation_18(), AnimationController_0()); - _containerShape_15.StartAnimation(L"Offset", OffsetVector2Animation_08(), AnimationController_0()); - _containerShape_16.StartAnimation(L"Offset", OffsetVector2Animation_10(), AnimationController_1()); - _containerShape_16.StartAnimation(L"Scale", ShapeVisibilityAnimation_21(), AnimationController_0()); - _containerShape_17.StartAnimation(L"Scale", ShapeVisibilityAnimation_22(), AnimationController_0()); - _containerShape_18.StartAnimation(L"Scale", ShapeVisibilityAnimation_23(), AnimationController_0()); - _containerShape_19.StartAnimation(L"Scale", ShapeVisibilityAnimation_24(), AnimationController_0()); - _containerShape_20.StartAnimation(L"Scale", ShapeVisibilityAnimation_25(), AnimationController_0()); - _containerShape_21.StartAnimation(L"Scale", ShapeVisibilityAnimation_29(), AnimationController_0()); - _containerShape_22.StartAnimation(L"Scale", ShapeVisibilityAnimation_30(), AnimationController_0()); - _ellipse_0_0.StartAnimation(L"Radius", RadiusVector2Animation(), AnimationController_0()); - _ellipse_0_1.StartAnimation(L"Radius", RadiusVector2Animation(), AnimationController_0()); - _ellipse_0_1.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0_to_0p399(), AnimationController_0()); - _ellipse_0_1.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_1_to_0p88(), AnimationController_0()); - _pathGeometry_00.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p316_0(), AnimationController_0()); - _pathGeometry_01.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p316_1(), AnimationController_0()); - _pathGeometry_02.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p457_0(), AnimationController_0()); - _pathGeometry_03.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p457_1(), AnimationController_0()); - _pathGeometry_04.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p43_0(), AnimationController_0()); - _pathGeometry_05.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p43_1(), AnimationController_0()); - _pathGeometry_06.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p375_0(), AnimationController_0()); - _pathGeometry_07.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p375_1(), AnimationController_0()); - _pathGeometry_08.StartAnimation(L"TStart", TStartScalarAnimation_0_to_0p249(), AnimationController_0()); - _pathGeometry_08.StartAnimation(L"TEnd", TEndScalarAnimation_0_to_1_0(), AnimationController_0()); - _pathGeometry_09.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p29_to_0_0(), AnimationController_0()); - _pathGeometry_09.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p411_to_0p665_0(), AnimationController_0()); - _pathGeometry_10.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p5_to_0_0(), AnimationController_0()); - _pathGeometry_10.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p5_to_1_0(), AnimationController_0()); - _pathGeometry_11.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p29_to_0_1(), AnimationController_0()); - _pathGeometry_11.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p411_to_0p665_1(), AnimationController_0()); - _pathGeometry_12.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p117_to_1_0(), AnimationController_0()); - _pathGeometry_13.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p117_to_1_1(), AnimationController_0()); - _pathGeometry_14.StartAnimation(L"TStart", TStartScalarAnimation_0_to_0p249(), AnimationController_0()); - _pathGeometry_14.StartAnimation(L"TEnd", TEndScalarAnimation_0_to_1_1(), AnimationController_0()); - _pathGeometry_15.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p5_to_0_1(), AnimationController_0()); - _pathGeometry_15.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p5_to_1_1(), AnimationController_0()); - _pathGeometry_16.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p249_to_0p891(), AnimationController_0()); - _pathGeometry_17.StartAnimation(L"TStart", TStartScalarAnimation_0p8_to_0(), AnimationController_0()); - _pathGeometry_17.StartAnimation(L"TEnd", TEndScalarAnimation_0p81_to_0p734_0(), AnimationController_0()); - _pathGeometry_18.StartAnimation(L"TStart", TStartScalarAnimation_0p8_to_0p3(), AnimationController_0()); - _pathGeometry_18.StartAnimation(L"TEnd", TEndScalarAnimation_0p81_to_0p734_1(), AnimationController_0()); - _pathGeometry_19.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_00(), AnimationController_0()); - _pathGeometry_19.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_00(), AnimationController_0()); - _pathGeometry_20.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_01(), AnimationController_0()); - _pathGeometry_20.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_01(), AnimationController_0()); - _pathGeometry_21.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_02(), AnimationController_0()); - _pathGeometry_21.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_02(), AnimationController_0()); - _pathGeometry_22.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_02(), AnimationController_0()); - _pathGeometry_22.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_02(), AnimationController_0()); - _pathGeometry_23.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_03(), AnimationController_0()); - _pathGeometry_23.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_03(), AnimationController_0()); - _pathGeometry_24.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_04(), AnimationController_0()); - _pathGeometry_24.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_03(), AnimationController_0()); - _pathGeometry_25.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_05(), AnimationController_0()); - _pathGeometry_25.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_04(), AnimationController_0()); - _pathGeometry_26.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_06(), AnimationController_0()); - _pathGeometry_26.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_05(), AnimationController_0()); - _pathGeometry_27.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_07(), AnimationController_0()); - _pathGeometry_27.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_06(), AnimationController_0()); - _pathGeometry_28.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_08(), AnimationController_0()); - _pathGeometry_28.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_06(), AnimationController_0()); - _pathGeometry_29.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_09(), AnimationController_0()); - _pathGeometry_29.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_07(), AnimationController_0()); - _pathGeometry_30.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_10(), AnimationController_0()); - _pathGeometry_30.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_08(), AnimationController_0()); - _pathGeometry_31.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_11(), AnimationController_0()); - _pathGeometry_31.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_09(), AnimationController_0()); - _pathGeometry_32.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_12(), AnimationController_0()); - _pathGeometry_32.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_10(), AnimationController_0()); - _pathGeometry_33.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_13(), AnimationController_0()); - _pathGeometry_33.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_11(), AnimationController_0()); - _pathGeometry_34.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_14(), AnimationController_0()); - _pathGeometry_34.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_11(), AnimationController_0()); - _pathGeometry_35.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_15(), AnimationController_0()); - _pathGeometry_35.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_12(), AnimationController_0()); - _pathGeometry_36.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_16(), AnimationController_0()); - _pathGeometry_36.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_13(), AnimationController_0()); - _pathGeometry_37.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_17(), AnimationController_0()); - _pathGeometry_37.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_13(), AnimationController_0()); - _pathGeometry_38.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_18(), AnimationController_0()); - _pathGeometry_38.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_14(), AnimationController_0()); - _spriteShape_11.StartAnimation(L"Scale", ShapeVisibilityAnimation_10(), AnimationController_0()); - _spriteShape_12.StartAnimation(L"Scale", ShapeVisibilityAnimation_11(), AnimationController_0()); - _spriteShape_13.StartAnimation(L"Scale", ShapeVisibilityAnimation_12(), AnimationController_0()); - _spriteShape_14.StartAnimation(L"Scale", ShapeVisibilityAnimation_13(), AnimationController_0()); - _spriteShape_15.StartAnimation(L"Scale", ShapeVisibilityAnimation_04(), AnimationController_0()); - _spriteShape_19.StartAnimation(L"Scale", ShapeVisibilityAnimation_16(), AnimationController_0()); - _spriteShape_22.StartAnimation(L"Scale", ShapeVisibilityAnimation_19(), AnimationController_0()); - _spriteShape_23.StartAnimation(L"Scale", ShapeVisibilityAnimation_20(), AnimationController_0()); - _spriteShape_36.StartAnimation(L"Scale", ShapeVisibilityAnimation_26(), AnimationController_0()); - _spriteShape_37.StartAnimation(L"Scale", ShapeVisibilityAnimation_27(), AnimationController_0()); - _spriteShape_38.StartAnimation(L"Scale", ShapeVisibilityAnimation_28(), AnimationController_0()); - _root.Properties().StartAnimation(L"t0", t0ScalarAnimation_0_to_1(), AnimationController_0()); - } - - void DestroyAnimations() - { - _containerShape_00.StopAnimation(L"Offset"); - _containerShape_00.StopAnimation(L"Scale"); - _containerShape_01.StopAnimation(L"Offset"); - _containerShape_02.StopAnimation(L"Offset"); - _containerShape_02.StopAnimation(L"Scale"); - _containerShape_03.StopAnimation(L"Offset"); - _containerShape_03.StopAnimation(L"Scale"); - _containerShape_04.StopAnimation(L"Offset"); - _containerShape_04.StopAnimation(L"Scale"); - _containerShape_05.StopAnimation(L"Offset"); - _containerShape_05.StopAnimation(L"Scale"); - _containerShape_06.StopAnimation(L"Offset"); - _containerShape_06.StopAnimation(L"Scale"); - _containerShape_07.StopAnimation(L"Offset"); - _containerShape_07.StopAnimation(L"Scale"); - _containerShape_08.StopAnimation(L"Offset"); - _containerShape_08.StopAnimation(L"Scale"); - _containerShape_09.StopAnimation(L"Offset"); - _containerShape_09.StopAnimation(L"Scale"); - _containerShape_10.StopAnimation(L"Offset"); - _containerShape_10.StopAnimation(L"Scale"); - _containerShape_11.StopAnimation(L"Offset"); - _containerShape_11.StopAnimation(L"Scale"); - _containerShape_12.StopAnimation(L"Offset"); - _containerShape_12.StopAnimation(L"Scale"); - _containerShape_13.StopAnimation(L"Offset"); - _containerShape_13.StopAnimation(L"Scale"); - _containerShape_14.StopAnimation(L"Offset"); - _containerShape_14.StopAnimation(L"Scale"); - _containerShape_15.StopAnimation(L"Offset"); - _containerShape_16.StopAnimation(L"Offset"); - _containerShape_16.StopAnimation(L"Scale"); - _containerShape_17.StopAnimation(L"Scale"); - _containerShape_18.StopAnimation(L"Scale"); - _containerShape_19.StopAnimation(L"Scale"); - _containerShape_20.StopAnimation(L"Scale"); - _containerShape_21.StopAnimation(L"Scale"); - _containerShape_22.StopAnimation(L"Scale"); - _ellipse_0_0.StopAnimation(L"Radius"); - _ellipse_0_1.StopAnimation(L"Radius"); - _ellipse_0_1.StopAnimation(L"TrimStart"); - _ellipse_0_1.StopAnimation(L"TrimEnd"); - _pathGeometry_00.StopAnimation(L"TrimEnd"); - _pathGeometry_01.StopAnimation(L"TrimEnd"); - _pathGeometry_02.StopAnimation(L"TrimEnd"); - _pathGeometry_03.StopAnimation(L"TrimEnd"); - _pathGeometry_04.StopAnimation(L"TrimEnd"); - _pathGeometry_05.StopAnimation(L"TrimEnd"); - _pathGeometry_06.StopAnimation(L"TrimEnd"); - _pathGeometry_07.StopAnimation(L"TrimEnd"); - _pathGeometry_08.StopAnimation(L"TStart"); - _pathGeometry_08.StopAnimation(L"TEnd"); - _pathGeometry_09.StopAnimation(L"TrimStart"); - _pathGeometry_09.StopAnimation(L"TrimEnd"); - _pathGeometry_10.StopAnimation(L"TrimStart"); - _pathGeometry_10.StopAnimation(L"TrimEnd"); - _pathGeometry_11.StopAnimation(L"TrimStart"); - _pathGeometry_11.StopAnimation(L"TrimEnd"); - _pathGeometry_12.StopAnimation(L"TrimEnd"); - _pathGeometry_13.StopAnimation(L"TrimEnd"); - _pathGeometry_14.StopAnimation(L"TStart"); - _pathGeometry_14.StopAnimation(L"TEnd"); - _pathGeometry_15.StopAnimation(L"TrimStart"); - _pathGeometry_15.StopAnimation(L"TrimEnd"); - _pathGeometry_16.StopAnimation(L"TrimEnd"); - _pathGeometry_17.StopAnimation(L"TStart"); - _pathGeometry_17.StopAnimation(L"TEnd"); - _pathGeometry_18.StopAnimation(L"TStart"); - _pathGeometry_18.StopAnimation(L"TEnd"); - _pathGeometry_19.StopAnimation(L"TStart"); - _pathGeometry_19.StopAnimation(L"TEnd"); - _pathGeometry_20.StopAnimation(L"TStart"); - _pathGeometry_20.StopAnimation(L"TEnd"); - _pathGeometry_21.StopAnimation(L"TStart"); - _pathGeometry_21.StopAnimation(L"TEnd"); - _pathGeometry_22.StopAnimation(L"TStart"); - _pathGeometry_22.StopAnimation(L"TEnd"); - _pathGeometry_23.StopAnimation(L"TStart"); - _pathGeometry_23.StopAnimation(L"TEnd"); - _pathGeometry_24.StopAnimation(L"TStart"); - _pathGeometry_24.StopAnimation(L"TEnd"); - _pathGeometry_25.StopAnimation(L"TStart"); - _pathGeometry_25.StopAnimation(L"TEnd"); - _pathGeometry_26.StopAnimation(L"TStart"); - _pathGeometry_26.StopAnimation(L"TEnd"); - _pathGeometry_27.StopAnimation(L"TStart"); - _pathGeometry_27.StopAnimation(L"TEnd"); - _pathGeometry_28.StopAnimation(L"TStart"); - _pathGeometry_28.StopAnimation(L"TEnd"); - _pathGeometry_29.StopAnimation(L"TStart"); - _pathGeometry_29.StopAnimation(L"TEnd"); - _pathGeometry_30.StopAnimation(L"TStart"); - _pathGeometry_30.StopAnimation(L"TEnd"); - _pathGeometry_31.StopAnimation(L"TStart"); - _pathGeometry_31.StopAnimation(L"TEnd"); - _pathGeometry_32.StopAnimation(L"TStart"); - _pathGeometry_32.StopAnimation(L"TEnd"); - _pathGeometry_33.StopAnimation(L"TStart"); - _pathGeometry_33.StopAnimation(L"TEnd"); - _pathGeometry_34.StopAnimation(L"TStart"); - _pathGeometry_34.StopAnimation(L"TEnd"); - _pathGeometry_35.StopAnimation(L"TStart"); - _pathGeometry_35.StopAnimation(L"TEnd"); - _pathGeometry_36.StopAnimation(L"TStart"); - _pathGeometry_36.StopAnimation(L"TEnd"); - _pathGeometry_37.StopAnimation(L"TStart"); - _pathGeometry_37.StopAnimation(L"TEnd"); - _pathGeometry_38.StopAnimation(L"TStart"); - _pathGeometry_38.StopAnimation(L"TEnd"); - _spriteShape_11.StopAnimation(L"Scale"); - _spriteShape_12.StopAnimation(L"Scale"); - _spriteShape_13.StopAnimation(L"Scale"); - _spriteShape_14.StopAnimation(L"Scale"); - _spriteShape_15.StopAnimation(L"Scale"); - _spriteShape_19.StopAnimation(L"Scale"); - _spriteShape_22.StopAnimation(L"Scale"); - _spriteShape_23.StopAnimation(L"Scale"); - _spriteShape_36.StopAnimation(L"Scale"); - _spriteShape_37.StopAnimation(L"Scale"); - _spriteShape_38.StopAnimation(L"Scale"); - _root.Properties().StopAnimation(L"t0"); - } - - }; - - winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual LottieLogo1::TryCreateAnimatedVisual( - Compositor const& compositor) - { - IInspectable diagnostics = nullptr; - return TryCreateAnimatedVisual(compositor, diagnostics); - } - - winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual LottieLogo1::TryCreateAnimatedVisual( - Compositor const& compositor, - IInspectable& diagnostics) - { - diagnostics = nullptr; - auto result = winrt::make(compositor); - result.CreateAnimations(); - return result; - } - - double LottieLogo1::FrameCount() - { - return 179.0; - } - - double LottieLogo1::Framerate() - { - return 30.0; - } - - TimeSpan LottieLogo1::Duration() - { - return TimeSpan{ 59666666L }; - } - - double LottieLogo1::FrameToProgress(double frameNumber) - { - return frameNumber / 179.0; - } - - winrt::Windows::Foundation::Collections::IMapView LottieLogo1::Markers() - { - return winrt::single_threaded_map( - std::map - { - } - ).GetView(); - } - - void LottieLogo1::SetColorProperty(hstring const&, Color) - { - } - - void LottieLogo1::SetScalarProperty(hstring const&, double) - { - } -} // end namespace diff --git a/LottieGen/AnimatedVisuals.LottieLogo1.h b/LottieGen/AnimatedVisuals.LottieLogo1.h deleted file mode 100644 index dea9aeec8..000000000 --- a/LottieGen/AnimatedVisuals.LottieLogo1.h +++ /dev/null @@ -1,77 +0,0 @@ -#pragma once -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// -// LottieGen version: -// 8.0.230813-rc.7+0443b1e789 -// -// Command: -// LottieGen -Language Cppwinrt -WinUIVersion 3.0 -InputFile LottieLogo1.json -// -// Input file: -// LottieLogo1.json (190271 bytes created 0:40-04:00 Mar 13 2024) -// -// LottieGen source: -// http://aka.ms/Lottie -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ -#include "AnimatedVisuals.LottieLogo1.g.h" - -namespace winrt::AnimatedVisuals -{ - // Frame rate: 30 fps - // Frame count: 179 - // Duration: 5966.7 mS - namespace implementation - { - class LottieLogo1 - : public LottieLogo1T - { - public: - // Animation duration: 5.967 seconds. - static constexpr int64_t c_durationTicks{ 59666666L }; - - winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual TryCreateAnimatedVisual( - winrt::Microsoft::UI::Composition::Compositor const& compositor); - - winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual TryCreateAnimatedVisual( - winrt::Microsoft::UI::Composition::Compositor const& compositor, - winrt::Windows::Foundation::IInspectable& diagnostics); - - // Gets the number of frames in the animation. - double FrameCount(); - - // Gets the framerate of the animation. - double Framerate(); - - // Gets the duration of the animation. - winrt::Windows::Foundation::TimeSpan Duration(); - - // Converts a zero-based frame number to the corresponding progress value denoting the - // start of the frame. - double FrameToProgress(double frameNumber); - - // Returns a map from marker names to corresponding progress values. - winrt::Windows::Foundation::Collections::IMapView Markers(); - - // Sets the color property with the given name, or does nothing if no such property - // exists. - void SetColorProperty(hstring const& propertyName, winrt::Windows::UI::Color value); - - // Sets the scalar property with the given name, or does nothing if no such property - // exists. - void SetScalarProperty(hstring const& propertyName, double value); - }; - } - - namespace factory_implementation - { - struct LottieLogo1 : LottieLogo1T - { - }; - } -} diff --git a/LottieGen/AnimatedVisuals.LottieLogo1.idl b/LottieGen/AnimatedVisuals.LottieLogo1.idl deleted file mode 100644 index 2351887c1..000000000 --- a/LottieGen/AnimatedVisuals.LottieLogo1.idl +++ /dev/null @@ -1,29 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// -// LottieGen version: -// 8.0.230813-rc.7+0443b1e789 -// -// Command: -// LottieGen -Language Cppwinrt -WinUIVersion 3.0 -InputFile LottieLogo1.json -// -// Input file: -// LottieLogo1.json (190271 bytes created 0:40-04:00 Mar 13 2024) -// -// LottieGen source: -// http://aka.ms/Lottie -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ -namespace AnimatedVisuals -{ - runtimeclass LottieLogo1 - : [default] Microsoft.UI.Xaml.Controls.IAnimatedVisualSource - , Microsoft.UI.Xaml.Controls.IAnimatedVisualSource2 - { - LottieLogo1(); - }; -} diff --git a/LottieIsland/readme.txt b/LottieIsland/readme.txt deleted file mode 100644 index ee517a42b..000000000 --- a/LottieIsland/readme.txt +++ /dev/null @@ -1,23 +0,0 @@ -======================================================================== - C++/WinRT LottieIsland Project Overview -======================================================================== - -This project demonstrates how to get started authoring Windows Runtime -classes directly with standard C++, using the C++/WinRT SDK component -to generate implementation headers from interface (IDL) files. The -generated Windows Runtime component binary and WinMD files should then -be bundled with the Universal Windows Platform (UWP) app consuming them. - -Steps: -1. Create an interface (IDL) file to define your Windows Runtime class, - its default interface, and any other interfaces it implements. -2. Build the project once to generate module.g.cpp, module.h.cpp, and - implementation templates under the "Generated Files" folder, as - well as skeleton class definitions under "Generated Files\sources". -3. Use the skeleton class definitions for reference to implement your - Windows Runtime classes. - -======================================================================== -Learn more about C++/WinRT here: -http://aka.ms/cppwinrt/ -======================================================================== diff --git a/SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.cpp b/SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.cpp deleted file mode 100644 index 507d03cf9..000000000 --- a/SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.cpp +++ /dev/null @@ -1,4310 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// -// LottieGen version: -// 8.0.230813-rc.7+0443b1e789 -// -// Command: -// LottieGen -Language Cppwinrt -WinUIVersion 3.0 -InputFile LottieLogo1.json -// -// Input file: -// LottieLogo1.json (190271 bytes created 0:40-04:00 Mar 13 2024) -// -// LottieGen source: -// http://aka.ms/Lottie -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ -// ____________________________________ -// | Object stats | Count | -// |__________________________|_______| -// | All CompositionObjects | 610 | -// |--------------------------+-------| -// | Expression animators | 52 | -// | KeyFrame animators | 121 | -// | Reference parameters | 52 | -// | Expression operations | 0 | -// |--------------------------+-------| -// | Animated brushes | - | -// | Animated gradient stops | - | -// | ExpressionAnimations | 50 | -// | PathKeyFrameAnimations | - | -// |--------------------------+-------| -// | ContainerVisuals | 1 | -// | ShapeVisuals | 1 | -// |--------------------------+-------| -// | ContainerShapes | 23 | -// | CompositionSpriteShapes | 45 | -// |--------------------------+-------| -// | Brushes | 3 | -// | Gradient stops | - | -// | CompositionVisualSurface | - | -// ------------------------------------ -#include "pch.h" -#include "AnimatedVisuals.LottieLogo1.h" -#if __has_include ("AnimatedVisuals.LottieLogo1.g.cpp") -#include "AnimatedVisuals.LottieLogo1.g.cpp" -#endif -#include -#include -#include -#include -#include "d2d1.h" -#include -#include -#include -#ifdef BUILD_WINDOWS -namespace ABI -{ -#include -} -#else -#include -#endif -#include - -using namespace winrt::Microsoft::UI; -using namespace winrt::Microsoft::UI::Composition; -using namespace winrt::Microsoft::UI::Xaml::Controls; -using namespace winrt::Windows::Foundation; -using namespace winrt::Windows::Foundation::Numerics; -using namespace winrt::Windows::Graphics; -using Color = winrt::Windows::UI::Color; -using CompositionPropertySet = winrt::Microsoft::UI::Composition::CompositionPropertySet; -using TimeSpan = winrt::Windows::Foundation::TimeSpan; - -namespace winrt::AnimatedVisuals::implementation -{ - class CanvasGeometry : public winrt::implements - { - winrt::com_ptr _geometry{ nullptr }; - - public: - CanvasGeometry(winrt::com_ptr geometry) - : _geometry{ geometry } - { } - - // IGeometrySource2D. - winrt::com_ptr Geometry() { return _geometry; } - - // IGeometrySource2DInterop. - IFACEMETHODIMP GetGeometry(ID2D1Geometry** value) noexcept(true) override - { - _geometry.copy_to(value); - return S_OK; - } - - // IGeometrySource2DInterop. - IFACEMETHODIMP TryGetGeometryUsingFactory(ID2D1Factory*, ID2D1Geometry**) noexcept(true) override - { - return E_NOTIMPL; - } - }; - class LottieLogo1_AnimatedVisual : public winrt::implements - { - winrt::com_ptr _d2dFactory{ nullptr }; - static constexpr int64_t c_durationTicks{ 59666666L }; - Compositor const _c{ nullptr }; - ExpressionAnimation const _reusableExpressionAnimation{ nullptr }; - AnimationController _animationController_0{ nullptr }; - AnimationController _animationController_1{ nullptr }; - CompositionColorBrush _colorBrush_AlmostTeal_FF007A87{ nullptr }; - CompositionColorBrush _colorBrush_White{ nullptr }; - CompositionContainerShape _containerShape_00{ nullptr }; - CompositionContainerShape _containerShape_01{ nullptr }; - CompositionContainerShape _containerShape_02{ nullptr }; - CompositionContainerShape _containerShape_03{ nullptr }; - CompositionContainerShape _containerShape_04{ nullptr }; - CompositionContainerShape _containerShape_05{ nullptr }; - CompositionContainerShape _containerShape_06{ nullptr }; - CompositionContainerShape _containerShape_07{ nullptr }; - CompositionContainerShape _containerShape_08{ nullptr }; - CompositionContainerShape _containerShape_09{ nullptr }; - CompositionContainerShape _containerShape_10{ nullptr }; - CompositionContainerShape _containerShape_11{ nullptr }; - CompositionContainerShape _containerShape_12{ nullptr }; - CompositionContainerShape _containerShape_13{ nullptr }; - CompositionContainerShape _containerShape_14{ nullptr }; - CompositionContainerShape _containerShape_15{ nullptr }; - CompositionContainerShape _containerShape_16{ nullptr }; - CompositionContainerShape _containerShape_17{ nullptr }; - CompositionContainerShape _containerShape_18{ nullptr }; - CompositionContainerShape _containerShape_19{ nullptr }; - CompositionContainerShape _containerShape_20{ nullptr }; - CompositionContainerShape _containerShape_21{ nullptr }; - CompositionContainerShape _containerShape_22{ nullptr }; - CompositionEllipseGeometry _ellipse_0_0{ nullptr }; - CompositionEllipseGeometry _ellipse_0_1{ nullptr }; - CompositionEllipseGeometry _ellipse_4p7{ nullptr }; - CompositionPath _path_0{ nullptr }; - CompositionPath _path_1{ nullptr }; - CompositionPath _path_2{ nullptr }; - CompositionPath _path_3{ nullptr }; - CompositionPath _path_4{ nullptr }; - CompositionPath _path_5{ nullptr }; - CompositionPath _path_6{ nullptr }; - CompositionPath _path_7{ nullptr }; - CompositionPath _path_8{ nullptr }; - CompositionPathGeometry _pathGeometry_00{ nullptr }; - CompositionPathGeometry _pathGeometry_01{ nullptr }; - CompositionPathGeometry _pathGeometry_02{ nullptr }; - CompositionPathGeometry _pathGeometry_03{ nullptr }; - CompositionPathGeometry _pathGeometry_04{ nullptr }; - CompositionPathGeometry _pathGeometry_05{ nullptr }; - CompositionPathGeometry _pathGeometry_06{ nullptr }; - CompositionPathGeometry _pathGeometry_07{ nullptr }; - CompositionPathGeometry _pathGeometry_08{ nullptr }; - CompositionPathGeometry _pathGeometry_09{ nullptr }; - CompositionPathGeometry _pathGeometry_10{ nullptr }; - CompositionPathGeometry _pathGeometry_11{ nullptr }; - CompositionPathGeometry _pathGeometry_12{ nullptr }; - CompositionPathGeometry _pathGeometry_13{ nullptr }; - CompositionPathGeometry _pathGeometry_14{ nullptr }; - CompositionPathGeometry _pathGeometry_15{ nullptr }; - CompositionPathGeometry _pathGeometry_16{ nullptr }; - CompositionPathGeometry _pathGeometry_17{ nullptr }; - CompositionPathGeometry _pathGeometry_18{ nullptr }; - CompositionPathGeometry _pathGeometry_19{ nullptr }; - CompositionPathGeometry _pathGeometry_20{ nullptr }; - CompositionPathGeometry _pathGeometry_21{ nullptr }; - CompositionPathGeometry _pathGeometry_22{ nullptr }; - CompositionPathGeometry _pathGeometry_23{ nullptr }; - CompositionPathGeometry _pathGeometry_24{ nullptr }; - CompositionPathGeometry _pathGeometry_25{ nullptr }; - CompositionPathGeometry _pathGeometry_26{ nullptr }; - CompositionPathGeometry _pathGeometry_27{ nullptr }; - CompositionPathGeometry _pathGeometry_28{ nullptr }; - CompositionPathGeometry _pathGeometry_29{ nullptr }; - CompositionPathGeometry _pathGeometry_30{ nullptr }; - CompositionPathGeometry _pathGeometry_31{ nullptr }; - CompositionPathGeometry _pathGeometry_32{ nullptr }; - CompositionPathGeometry _pathGeometry_33{ nullptr }; - CompositionPathGeometry _pathGeometry_34{ nullptr }; - CompositionPathGeometry _pathGeometry_35{ nullptr }; - CompositionPathGeometry _pathGeometry_36{ nullptr }; - CompositionPathGeometry _pathGeometry_37{ nullptr }; - CompositionPathGeometry _pathGeometry_38{ nullptr }; - CompositionSpriteShape _spriteShape_11{ nullptr }; - CompositionSpriteShape _spriteShape_12{ nullptr }; - CompositionSpriteShape _spriteShape_13{ nullptr }; - CompositionSpriteShape _spriteShape_14{ nullptr }; - CompositionSpriteShape _spriteShape_15{ nullptr }; - CompositionSpriteShape _spriteShape_19{ nullptr }; - CompositionSpriteShape _spriteShape_22{ nullptr }; - CompositionSpriteShape _spriteShape_23{ nullptr }; - CompositionSpriteShape _spriteShape_36{ nullptr }; - CompositionSpriteShape _spriteShape_37{ nullptr }; - CompositionSpriteShape _spriteShape_38{ nullptr }; - ContainerVisual _root{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_0{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_1{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_2{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_3{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_4{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_5{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_6{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_7{ nullptr }; - CubicBezierEasingFunction _cubicBezierEasingFunction_8{ nullptr }; - ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_02{ nullptr }; - ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_03{ nullptr }; - ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_06{ nullptr }; - ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_11{ nullptr }; - ScalarKeyFrameAnimation _tEndScalarAnimation_1_to_0_13{ nullptr }; - ScalarKeyFrameAnimation _tStartScalarAnimation_0_to_0p249{ nullptr }; - ScalarKeyFrameAnimation _tStartScalarAnimation_0p87_to_0_02{ nullptr }; - StepEasingFunction _holdThenStepEasingFunction{ nullptr }; - StepEasingFunction _stepThenHoldEasingFunction{ nullptr }; - Vector2KeyFrameAnimation _offsetVector2Animation_02{ nullptr }; - Vector2KeyFrameAnimation _offsetVector2Animation_03{ nullptr }; - Vector2KeyFrameAnimation _offsetVector2Animation_04{ nullptr }; - Vector2KeyFrameAnimation _offsetVector2Animation_05{ nullptr }; - Vector2KeyFrameAnimation _offsetVector2Animation_06{ nullptr }; - Vector2KeyFrameAnimation _radiusVector2Animation{ nullptr }; - Vector2KeyFrameAnimation _shapeVisibilityAnimation_04{ nullptr }; - - void BindProperty( - CompositionObject target, - winrt::hstring animatedPropertyName, - winrt::hstring expression, - winrt::hstring referenceParameterName, - CompositionObject referencedObject) - { - _reusableExpressionAnimation.ClearAllParameters(); - _reusableExpressionAnimation.Expression(expression); - _reusableExpressionAnimation.SetReferenceParameter(referenceParameterName, referencedObject); - target.StartAnimation(animatedPropertyName, _reusableExpressionAnimation); - } - - ScalarKeyFrameAnimation CreateScalarKeyFrameAnimation(float initialProgress, float initialValue, CompositionEasingFunction initialEasingFunction) - { - const auto result = _c.CreateScalarKeyFrameAnimation(); - result.Duration(TimeSpan{ c_durationTicks }); - result.InsertKeyFrame(initialProgress, initialValue, initialEasingFunction); - return result; - } - - Vector2KeyFrameAnimation CreateVector2KeyFrameAnimation(float initialProgress, float2 initialValue, CompositionEasingFunction initialEasingFunction) - { - const auto result = _c.CreateVector2KeyFrameAnimation(); - result.Duration(TimeSpan{ c_durationTicks }); - result.InsertKeyFrame(initialProgress, initialValue, initialEasingFunction); - return result; - } - - CompositionSpriteShape CreateSpriteShape(CompositionGeometry geometry, float3x2 transformMatrix) - { - const auto result = _c.CreateSpriteShape(geometry); - result.TransformMatrix(transformMatrix); - return result; - } - - CompositionSpriteShape CreateSpriteShape(CompositionGeometry geometry, float3x2 transformMatrix, CompositionBrush fillBrush) - { - const auto result = _c.CreateSpriteShape(geometry); - result.TransformMatrix(transformMatrix); - result.FillBrush(fillBrush); - return result; - } - - AnimationController AnimationController_0() - { - if (_animationController_0 != nullptr) { return _animationController_0; } - const auto result = _animationController_0 = _c.CreateAnimationController(); - result.Pause(); - BindProperty(_animationController_0, L"Progress", L"_.Progress", L"_", _root); - return result; - } - - // - Layer aggregator - // Layer: Dot1 - AnimationController AnimationController_1() - { - if (_animationController_1 != nullptr) { return _animationController_1; } - const auto result = _animationController_1 = _c.CreateAnimationController(); - result.Pause(); - BindProperty(_animationController_1, L"Progress", L"_.Progress*0.9835165+0.01648352", L"_", _root); - return result; - } - - winrt::com_ptr Geometry_00() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -13.6639996F, -0.144999996F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 75.663002F, 0.289999992F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_01() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 0.859000027F, -21.1429996F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ -4.35900021F, 70.3919983F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_02() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -26.6700001F, -0.282999992F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 99.1709976F, 0.0659999996F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_03() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -13.6639996F, -0.144999996F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 62.1629982F, 0.289999992F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_04() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -30.7199993F, 63.7610016F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddBezier({ { -30.6889992F, 63.1669998F }, { -30.7889996F, 50.8470001F }, { -30.7409992F, 45.1920013F } }); - sink->AddBezier({ { -30.6650009F, 36.2140007F }, { -37.3429985F, 27.0739994F }, { -37.3969994F, 27.0139999F } }); - sink->AddBezier({ { -38.5579987F, 25.7140007F }, { -39.7519989F, 24.1469994F }, { -40.6980019F, 22.6609993F } }); - sink->AddBezier({ { -46.637001F, 13.3339996F }, { -47.8400002F, 0.933000028F }, { -37.8730011F, -7.1170001F } }); - sink->AddBezier({ { -13.1960001F, -27.0459995F }, { 8.96000004F, 11.559F }, { 49.5060005F, 11.559F } }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_05() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 246.649994F, 213.813995F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 340.955994F, 213.628006F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_06() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 1.68099999F, -29.9920006F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ -1.68099999F, 29.9920006F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_07() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 1.76800001F, -25.9659996F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ -1.76800001F, 25.9659996F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_08() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -8.83699989F, -58.2290001F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddBezier({ { -8.83699989F, -58.2290001F }, { -10.1630001F, 29.4950008F }, { -35.8339996F, 33.6619987F } }); - sink->AddBezier({ { -44.0579987F, 34.9970016F }, { -50.2319984F, 30.0499992F }, { -51.6879997F, 23.1480007F } }); - sink->AddBezier({ { -53.144001F, 16.2450008F }, { -49.6549988F, 9.15600014F }, { -41.1739998F, 7.29300022F } }); - sink->AddBezier({ { -17.3570004F, 2.05999994F }, { 4.23500013F, 57.1879997F }, { 51.7970009F, 44.1780014F } }); - sink->AddBezier({ { 51.9570007F, 44.1339989F }, { 52.6870003F, 43.8740005F }, { 53.1879997F, 43.7410011F } }); - sink->AddBezier({ { 53.6889992F, 43.6080017F }, { 68.9710007F, 41.3569984F }, { 140.393997F, 43.6720009F } }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_09() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -67.125F, -112.0F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddBezier({ { -67.125F, -112.0F }, { -73.5579987F, -100.719002F }, { -75.4580002F, -89.9509964F } }); - sink->AddBezier({ { -78.625F, -72.0F }, { -79.375F, -58.25F }, { -80.375F, -39.25F } }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_10() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -67.25F, -105.5F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddBezier({ { -67.25F, -105.5F }, { -70.4329987F, -94.9690018F }, { -72.3330002F, -84.2009964F } }); - sink->AddBezier({ { -75.5F, -66.25F }, { -75.5F, -56.75F }, { -76.5F, -37.75F } }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_11() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 34.5F, -13.0500002F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddBezier({ { 7.5F, -14.5F }, { -4.0F, -37.0F }, { -35.0460014F, -35.5789986F } }); - sink->AddBezier({ { -61.4720001F, -34.3689995F }, { -62.25F, -5.75F }, { -62.25F, -5.75F } }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_12() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -3.0F, 35.9500008F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddBezier({ { -3.0F, 35.9500008F }, { -1.5F, 7.5F }, { -1.352F, -6.75600004F } }); - sink->AddBezier({ { -9.90299988F, -15.0190001F }, { -21.5699997F, -20.5790005F }, { -32.0460014F, -20.5790005F } }); - sink->AddBezier({ { -53.5F, -20.5790005F }, { -42.25F, 4.25F }, { -42.25F, 4.25F } }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_13() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 16.2310009F, 39.0730019F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ -32.769001F, 57.3650017F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_14() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 7.44999981F, 21.9500008F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ -32.75F, 55.75F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_15() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -94.5F, 37.0730019F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ -48.769001F, 55.3650017F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_16() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ -87.5F, 20.9500008F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ -48.75F, 54.75F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_17() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 166.731003F, -7.92700005F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 136.731003F, 7.11499977F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_18() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 156.449997F, -23.0499992F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 132.0F, 2.75F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_19() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 169.5F, 18.073F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 137.481003F, 11.3649998F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_20() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 119.5F, -45.0499992F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 82.75F, -44.75F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_21() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 119.25F, -20.0499992F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 63.5F, -20.5F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_22() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 128.0F, 3.6500001F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 78.25F, 3.5F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_23() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 149.623993F, 8.24400043F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 136.647995F, 10.1560001F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_24() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 144.429001F, -5.39699984F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 132.274994F, 4.73099995F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_25() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 145.677002F, 22.2199993F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 134.921997F, 14.7489996F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_26() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 147.699005F, 13.0249996F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 133.195007F, 13.21F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_27() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 142.182999F, -5.11199999F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 130.029007F, 5.01599979F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - winrt::com_ptr Geometry_28() - { - winrt::com_ptr path{ nullptr }; - winrt::check_hresult(_d2dFactory->CreatePathGeometry(path.put())); - winrt::com_ptr sink{ nullptr }; - winrt::check_hresult(path->Open(sink.put())); - sink->BeginFigure({ 142.037994F, 29.2779999F }, D2D1_FIGURE_BEGIN_FILLED); - sink->AddLine({ 131.281998F, 21.8069992F }); - sink->EndFigure(D2D1_FIGURE_END_OPEN); - winrt::check_hresult(sink->Close()); - auto result = winrt::make_self(path); - return result; - } - - // - Layer aggregator - // Offset:<187.5, 333.5> - CompositionColorBrush ColorBrush_AlmostDarkTurquoise_FF00D1C1() - { - return _c.CreateColorBrush({ 0xFF, 0x00, 0xD1, 0xC1 }); - } - - CompositionColorBrush ColorBrush_AlmostTeal_FF007A87() - { - return (_colorBrush_AlmostTeal_FF007A87 == nullptr) - ? _colorBrush_AlmostTeal_FF007A87 = _c.CreateColorBrush({ 0xFF, 0x00, 0x7A, 0x87 }) - : _colorBrush_AlmostTeal_FF007A87; - } - - CompositionColorBrush ColorBrush_White() - { - return (_colorBrush_White == nullptr) - ? _colorBrush_White = _c.CreateColorBrush({ 0xFF, 0xFF, 0xFF, 0xFF }) - : _colorBrush_White; - } - - // Layer aggregator - // Transforms for Bncr - CompositionContainerShape ContainerShape_00() - { - if (_containerShape_00 != nullptr) { return _containerShape_00; } - const auto result = _containerShape_00 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // Transforms: Dot-Y - result.Shapes().Append(ContainerShape_01()); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - // Transforms for Dot-Y - CompositionContainerShape ContainerShape_01() - { - if (_containerShape_01 != nullptr) { return _containerShape_01; } - const auto result = _containerShape_01 = _c.CreateContainerShape(); - // ShapeGroup: Ellipse 1 Offset:<196, 267> - result.Shapes().Append(SpriteShape_01()); - return result; - } - - // Layer aggregator - // Transforms for E3-Y - CompositionContainerShape ContainerShape_02() - { - if (_containerShape_02 != nullptr) { return _containerShape_02; } - const auto result = _containerShape_02 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // ShapeGroup: Group 1 Offset:<344.674, 261.877> - result.Shapes().Append(SpriteShape_02()); - return result; - } - - // Layer aggregator - // Transforms for E3-Y - CompositionContainerShape ContainerShape_03() - { - if (_containerShape_03 != nullptr) { return _containerShape_03; } - const auto result = _containerShape_03 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // Transforms: E3-B Offset:<0.06500244, 0> - result.Shapes().Append(SpriteShape_03()); - return result; - } - - // Layer aggregator - // Transforms for I-Y - CompositionContainerShape ContainerShape_04() - { - if (_containerShape_04 != nullptr) { return _containerShape_04; } - const auto result = _containerShape_04 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // ShapeGroup: Group 6 Offset:<304.135, 282.409> - result.Shapes().Append(SpriteShape_04()); - return result; - } - - // Layer aggregator - // Transforms for I-Y - CompositionContainerShape ContainerShape_05() - { - if (_containerShape_05 != nullptr) { return _containerShape_05; } - const auto result = _containerShape_05 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // Transforms: I-B - result.Shapes().Append(SpriteShape_05()); - return result; - } - - // Layer aggregator - // Transforms for E2-Y - CompositionContainerShape ContainerShape_06() - { - if (_containerShape_06 != nullptr) { return _containerShape_06; } - const auto result = _containerShape_06 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // ShapeGroup: Group 3 Offset:<331.664, 238.14> - result.Shapes().Append(SpriteShape_06()); - return result; - } - - // Layer aggregator - // Transforms for E2-Y - CompositionContainerShape ContainerShape_07() - { - if (_containerShape_07 != nullptr) { return _containerShape_07; } - const auto result = _containerShape_07 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // Transforms: E2-B - result.Shapes().Append(SpriteShape_07()); - return result; - } - - // Layer aggregator - // Transforms for E1-Y - CompositionContainerShape ContainerShape_08() - { - if (_containerShape_08 != nullptr) { return _containerShape_08; } - const auto result = _containerShape_08 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // ShapeGroup: Group 2 Offset:<344.672, 214.842> - result.Shapes().Append(SpriteShape_08()); - return result; - } - - // Layer aggregator - // Transforms for E1-Y - CompositionContainerShape ContainerShape_09() - { - if (_containerShape_09 != nullptr) { return _containerShape_09; } - const auto result = _containerShape_09 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // Transforms: E1-B - result.Shapes().Append(SpriteShape_09()); - return result; - } - - // Layer aggregator - // Transforms for T1a-Y - CompositionContainerShape ContainerShape_10() - { - if (_containerShape_10 != nullptr) { return _containerShape_10; } - const auto result = _containerShape_10 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // ShapeGroup: Group 9 Offset:<227.677, 234.375> - result.Shapes().Append(SpriteShape_10()); - return result; - } - - // Layer aggregator - // Transforms for O-Y - CompositionContainerShape ContainerShape_11() - { - if (_containerShape_11 != nullptr) { return _containerShape_11; } - const auto result = _containerShape_11 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - const auto shapes = result.Shapes(); - // ShapeGroup: Ellipse 1 Offset:<196, 267> - shapes.Append(SpriteShape_16()); - // ShapeGroup: Ellipse 1 Offset:<196, 267> - shapes.Append(SpriteShape_17()); - return result; - } - - // Layer aggregator - // Transforms for T1a-Y 2 - CompositionContainerShape ContainerShape_12() - { - if (_containerShape_12 != nullptr) { return _containerShape_12; } - const auto result = _containerShape_12 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // ShapeGroup: Group 9 Offset:<227.677, 234.375> - result.Shapes().Append(SpriteShape_18()); - return result; - } - - // Layer aggregator - // Transforms for T1a-Y - CompositionContainerShape ContainerShape_13() - { - if (_containerShape_13 != nullptr) { return _containerShape_13; } - const auto result = _containerShape_13 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // Transforms: T1a-B - result.Shapes().Append(SpriteShape_20()); - return result; - } - - // Layer aggregator - // Transforms for N - CompositionContainerShape ContainerShape_14() - { - if (_containerShape_14 != nullptr) { return _containerShape_14; } - const auto result = _containerShape_14 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // Transforms: Dot-Y - result.Shapes().Append(ContainerShape_15()); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - // Transforms for Dot-Y - CompositionContainerShape ContainerShape_15() - { - if (_containerShape_15 != nullptr) { return _containerShape_15; } - const auto result = _containerShape_15 = _c.CreateContainerShape(); - // ShapeGroup: Ellipse 1 Offset:<196, 267> - result.Shapes().Append(SpriteShape_21()); - return result; - } - - // Layer aggregator - // Transforms for Dot1 - CompositionContainerShape ContainerShape_16() - { - if (_containerShape_16 != nullptr) { return _containerShape_16; } - const auto result = _containerShape_16 = _c.CreateContainerShape(); - // Offset:<154.457, 287.822> - result.TransformMatrix({ 1.0F, 0.0F, 0.0F, 1.0F, 154.457001F, 287.821991F }); - // ShapeGroup: Ellipse 1 Offset:<196, 267> - result.Shapes().Append(SpriteShape_24()); - return result; - } - - // Layer aggregator - // Layer: S1-Y - CompositionContainerShape ContainerShape_17() - { - if (_containerShape_17 != nullptr) { return _containerShape_17; } - const auto result = _containerShape_17 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - const auto shapes = result.Shapes(); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_25()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_26()); - return result; - } - - // Layer aggregator - // Layer: S7 - CompositionContainerShape ContainerShape_18() - { - if (_containerShape_18 != nullptr) { return _containerShape_18; } - const auto result = _containerShape_18 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - const auto shapes = result.Shapes(); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_27()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_28()); - return result; - } - - // Layer aggregator - // Layer: S3-Y - CompositionContainerShape ContainerShape_19() - { - if (_containerShape_19 != nullptr) { return _containerShape_19; } - const auto result = _containerShape_19 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - const auto shapes = result.Shapes(); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_29()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_30()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_31()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_32()); - return result; - } - - // Layer aggregator - // Layer: S3-Y 2 - CompositionContainerShape ContainerShape_20() - { - if (_containerShape_20 != nullptr) { return _containerShape_20; } - const auto result = _containerShape_20 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - const auto shapes = result.Shapes(); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_33()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_34()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_35()); - return result; - } - - // Layer aggregator - // Layer: S3-Y 3 - CompositionContainerShape ContainerShape_21() - { - if (_containerShape_21 != nullptr) { return _containerShape_21; } - const auto result = _containerShape_21 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - const auto shapes = result.Shapes(); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_39()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_40()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_41()); - return result; - } - - // Layer aggregator - // Layer: S3-Y 4 - CompositionContainerShape ContainerShape_22() - { - if (_containerShape_22 != nullptr) { return _containerShape_22; } - const auto result = _containerShape_22 = _c.CreateContainerShape(); - result.Scale({ 0.0F, 0.0F }); - const auto shapes = result.Shapes(); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_42()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_43()); - // Offset:<154.457, 287.822> - shapes.Append(SpriteShape_44()); - return result; - } - - // - - Layer aggregator - // - Layer: O-Y - // ShapeGroup: Ellipse 1 Offset:<196, 267> - // Ellipse Path 1.EllipseGeometry - CompositionEllipseGeometry Ellipse_0_0() - { - if (_ellipse_0_0 != nullptr) { return _ellipse_0_0; } - const auto result = _ellipse_0_0 = _c.CreateEllipseGeometry(); - result.Center({ 0.800000012F, -0.5F }); - result.Radius({ 0.0F, 0.0F }); - return result; - } - - // - - Layer aggregator - // - Layer: O-Y - // ShapeGroup: Ellipse 1 Offset:<196, 267> - // Ellipse Path 1.EllipseGeometry - CompositionEllipseGeometry Ellipse_0_1() - { - if (_ellipse_0_1 != nullptr) { return _ellipse_0_1; } - const auto result = _ellipse_0_1 = _c.CreateEllipseGeometry(); - result.Center({ 0.800000012F, -0.5F }); - result.Radius({ 0.0F, 0.0F }); - return result; - } - - // - - - Layer aggregator - // - - Layer: Dot-Y - // - Transforms: Dot-Y - // ShapeGroup: Ellipse 1 Offset:<196, 267> - // Ellipse Path 1.EllipseGeometry - CompositionEllipseGeometry Ellipse_4p6() - { - const auto result = _c.CreateEllipseGeometry(); - result.Center({ 0.800000012F, -0.5F }); - result.Radius({ 4.5999999F, 4.5999999F }); - return result; - } - - // Ellipse Path 1.EllipseGeometry - CompositionEllipseGeometry Ellipse_4p7() - { - if (_ellipse_4p7 != nullptr) { return _ellipse_4p7; } - const auto result = _ellipse_4p7 = _c.CreateEllipseGeometry(); - result.Center({ 0.800000012F, -0.5F }); - result.Radius({ 4.69999981F, 4.69999981F }); - return result; - } - - CompositionPath Path_0() - { - if (_path_0 != nullptr) { return _path_0; } - const auto result = _path_0 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_00())); - return result; - } - - CompositionPath Path_1() - { - if (_path_1 != nullptr) { return _path_1; } - const auto result = _path_1 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_01())); - return result; - } - - CompositionPath Path_2() - { - if (_path_2 != nullptr) { return _path_2; } - const auto result = _path_2 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_02())); - return result; - } - - CompositionPath Path_3() - { - if (_path_3 != nullptr) { return _path_3; } - const auto result = _path_3 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_03())); - return result; - } - - CompositionPath Path_4() - { - if (_path_4 != nullptr) { return _path_4; } - const auto result = _path_4 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_04())); - return result; - } - - CompositionPath Path_5() - { - if (_path_5 != nullptr) { return _path_5; } - const auto result = _path_5 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_05())); - return result; - } - - CompositionPath Path_6() - { - if (_path_6 != nullptr) { return _path_6; } - const auto result = _path_6 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_06())); - return result; - } - - CompositionPath Path_7() - { - if (_path_7 != nullptr) { return _path_7; } - const auto result = _path_7 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_07())); - return result; - } - - CompositionPath Path_8() - { - if (_path_8 != nullptr) { return _path_8; } - const auto result = _path_8 = CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_08())); - return result; - } - - // - - Layer aggregator - // - Layer: E3-Y - // ShapeGroup: Group 1 Offset:<344.674, 261.877> - CompositionPathGeometry PathGeometry_00() - { - if (_pathGeometry_00 != nullptr) { return _pathGeometry_00; } - const auto result = _pathGeometry_00 = _c.CreatePathGeometry(Path_0()); - return result; - } - - // - - Layer aggregator - // - Layer: E3-B - // Transforms: E3-B Offset:<0.06500244, 0> - CompositionPathGeometry PathGeometry_01() - { - if (_pathGeometry_01 != nullptr) { return _pathGeometry_01; } - const auto result = _pathGeometry_01 = _c.CreatePathGeometry(Path_0()); - return result; - } - - // - - Layer aggregator - // - Layer: I-Y - // ShapeGroup: Group 6 Offset:<304.135, 282.409> - CompositionPathGeometry PathGeometry_02() - { - if (_pathGeometry_02 != nullptr) { return _pathGeometry_02; } - const auto result = _pathGeometry_02 = _c.CreatePathGeometry(Path_1()); - return result; - } - - // - - Layer aggregator - // - Layer: I-B - // Transforms: I-B - CompositionPathGeometry PathGeometry_03() - { - if (_pathGeometry_03 != nullptr) { return _pathGeometry_03; } - const auto result = _pathGeometry_03 = _c.CreatePathGeometry(Path_1()); - return result; - } - - // - - Layer aggregator - // - Layer: E2-Y - // ShapeGroup: Group 3 Offset:<331.664, 238.14> - CompositionPathGeometry PathGeometry_04() - { - if (_pathGeometry_04 != nullptr) { return _pathGeometry_04; } - const auto result = _pathGeometry_04 = _c.CreatePathGeometry(Path_2()); - return result; - } - - // - - Layer aggregator - // - Layer: E2-B - // Transforms: E2-B - CompositionPathGeometry PathGeometry_05() - { - if (_pathGeometry_05 != nullptr) { return _pathGeometry_05; } - const auto result = _pathGeometry_05 = _c.CreatePathGeometry(Path_2()); - return result; - } - - // - - Layer aggregator - // - Layer: E1-Y - // ShapeGroup: Group 2 Offset:<344.672, 214.842> - CompositionPathGeometry PathGeometry_06() - { - if (_pathGeometry_06 != nullptr) { return _pathGeometry_06; } - const auto result = _pathGeometry_06 = _c.CreatePathGeometry(Path_3()); - return result; - } - - // - - Layer aggregator - // - Layer: E1-B - // Transforms: E1-B - CompositionPathGeometry PathGeometry_07() - { - if (_pathGeometry_07 != nullptr) { return _pathGeometry_07; } - const auto result = _pathGeometry_07 = _c.CreatePathGeometry(Path_3()); - return result; - } - - CompositionPathGeometry PathGeometry_08() - { - if (_pathGeometry_08 != nullptr) { return _pathGeometry_08; } - const auto result = _pathGeometry_08 = _c.CreatePathGeometry(Path_4()); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 0.0F); - propertySet.InsertScalar(L"TStart", 0.0F); - BindProperty(_pathGeometry_08, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_08); - BindProperty(_pathGeometry_08, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_08); - return result; - } - - // - Layer aggregator - // Layer: T2b-Y - CompositionPathGeometry PathGeometry_09() - { - if (_pathGeometry_09 != nullptr) { return _pathGeometry_09; } - const auto result = _pathGeometry_09 = _c.CreatePathGeometry(Path_5()); - return result; - } - - // - Layer aggregator - // Layer: T2a-Y - CompositionPathGeometry PathGeometry_10() - { - if (_pathGeometry_10 != nullptr) { return _pathGeometry_10; } - const auto result = _pathGeometry_10 = _c.CreatePathGeometry(Path_6()); - return result; - } - - // - Layer aggregator - // Layer: T2b-B - CompositionPathGeometry PathGeometry_11() - { - if (_pathGeometry_11 != nullptr) { return _pathGeometry_11; } - const auto result = _pathGeometry_11 = _c.CreatePathGeometry(Path_5()); - return result; - } - - // - Layer aggregator - // Layer: T1b-Y - CompositionPathGeometry PathGeometry_12() - { - if (_pathGeometry_12 != nullptr) { return _pathGeometry_12; } - const auto result = _pathGeometry_12 = _c.CreatePathGeometry(Path_7()); - return result; - } - - // - Layer aggregator - // Layer: T1b-B - CompositionPathGeometry PathGeometry_13() - { - if (_pathGeometry_13 != nullptr) { return _pathGeometry_13; } - const auto result = _pathGeometry_13 = _c.CreatePathGeometry(Path_7()); - return result; - } - - CompositionPathGeometry PathGeometry_14() - { - if (_pathGeometry_14 != nullptr) { return _pathGeometry_14; } - const auto result = _pathGeometry_14 = _c.CreatePathGeometry(Path_4()); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 0.0F); - propertySet.InsertScalar(L"TStart", 0.0F); - BindProperty(_pathGeometry_14, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_14); - BindProperty(_pathGeometry_14, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_14); - return result; - } - - // - Layer aggregator - // Layer: T2a-B - CompositionPathGeometry PathGeometry_15() - { - if (_pathGeometry_15 != nullptr) { return _pathGeometry_15; } - const auto result = _pathGeometry_15 = _c.CreatePathGeometry(Path_6()); - return result; - } - - // - - Layer aggregator - // - Layer: T1a-B - // Transforms: T1a-B - CompositionPathGeometry PathGeometry_16() - { - if (_pathGeometry_16 != nullptr) { return _pathGeometry_16; } - const auto result = _pathGeometry_16 = _c.CreatePathGeometry(Path_4()); - result.TrimStart(0.248999998F); - return result; - } - - CompositionPathGeometry PathGeometry_17() - { - if (_pathGeometry_17 != nullptr) { return _pathGeometry_17; } - const auto result = _pathGeometry_17 = _c.CreatePathGeometry(Path_8()); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 0.810000002F); - propertySet.InsertScalar(L"TStart", 0.800000012F); - BindProperty(_pathGeometry_17, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_17); - BindProperty(_pathGeometry_17, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_17); - return result; - } - - CompositionPathGeometry PathGeometry_18() - { - if (_pathGeometry_18 != nullptr) { return _pathGeometry_18; } - const auto result = _pathGeometry_18 = _c.CreatePathGeometry(Path_8()); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 0.810000002F); - propertySet.InsertScalar(L"TStart", 0.800000012F); - BindProperty(_pathGeometry_18, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_18); - BindProperty(_pathGeometry_18, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_18); - return result; - } - - CompositionPathGeometry PathGeometry_19() - { - if (_pathGeometry_19 != nullptr) { return _pathGeometry_19; } - const auto result = _pathGeometry_19 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_09()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_19, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_19); - BindProperty(_pathGeometry_19, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_19); - return result; - } - - CompositionPathGeometry PathGeometry_20() - { - if (_pathGeometry_20 != nullptr) { return _pathGeometry_20; } - const auto result = _pathGeometry_20 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_10()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_20, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_20); - BindProperty(_pathGeometry_20, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_20); - return result; - } - - CompositionPathGeometry PathGeometry_21() - { - if (_pathGeometry_21 != nullptr) { return _pathGeometry_21; } - const auto result = _pathGeometry_21 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_11()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_21, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_21); - BindProperty(_pathGeometry_21, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_21); - return result; - } - - CompositionPathGeometry PathGeometry_22() - { - if (_pathGeometry_22 != nullptr) { return _pathGeometry_22; } - const auto result = _pathGeometry_22 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_12()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_22, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_22); - BindProperty(_pathGeometry_22, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_22); - return result; - } - - CompositionPathGeometry PathGeometry_23() - { - if (_pathGeometry_23 != nullptr) { return _pathGeometry_23; } - const auto result = _pathGeometry_23 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_13()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_23, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_23); - BindProperty(_pathGeometry_23, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_23); - return result; - } - - CompositionPathGeometry PathGeometry_24() - { - if (_pathGeometry_24 != nullptr) { return _pathGeometry_24; } - const auto result = _pathGeometry_24 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_14()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_24, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_24); - BindProperty(_pathGeometry_24, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_24); - return result; - } - - CompositionPathGeometry PathGeometry_25() - { - if (_pathGeometry_25 != nullptr) { return _pathGeometry_25; } - const auto result = _pathGeometry_25 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_15()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_25, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_25); - BindProperty(_pathGeometry_25, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_25); - return result; - } - - CompositionPathGeometry PathGeometry_26() - { - if (_pathGeometry_26 != nullptr) { return _pathGeometry_26; } - const auto result = _pathGeometry_26 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_16()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_26, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_26); - BindProperty(_pathGeometry_26, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_26); - return result; - } - - CompositionPathGeometry PathGeometry_27() - { - if (_pathGeometry_27 != nullptr) { return _pathGeometry_27; } - const auto result = _pathGeometry_27 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_17()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_27, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_27); - BindProperty(_pathGeometry_27, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_27); - return result; - } - - CompositionPathGeometry PathGeometry_28() - { - if (_pathGeometry_28 != nullptr) { return _pathGeometry_28; } - const auto result = _pathGeometry_28 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_18()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_28, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_28); - BindProperty(_pathGeometry_28, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_28); - return result; - } - - CompositionPathGeometry PathGeometry_29() - { - if (_pathGeometry_29 != nullptr) { return _pathGeometry_29; } - const auto result = _pathGeometry_29 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_19()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_29, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_29); - BindProperty(_pathGeometry_29, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_29); - return result; - } - - CompositionPathGeometry PathGeometry_30() - { - if (_pathGeometry_30 != nullptr) { return _pathGeometry_30; } - const auto result = _pathGeometry_30 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_20()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_30, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_30); - BindProperty(_pathGeometry_30, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_30); - return result; - } - - CompositionPathGeometry PathGeometry_31() - { - if (_pathGeometry_31 != nullptr) { return _pathGeometry_31; } - const auto result = _pathGeometry_31 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_21()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_31, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_31); - BindProperty(_pathGeometry_31, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_31); - return result; - } - - CompositionPathGeometry PathGeometry_32() - { - if (_pathGeometry_32 != nullptr) { return _pathGeometry_32; } - const auto result = _pathGeometry_32 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_22()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_32, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_32); - BindProperty(_pathGeometry_32, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_32); - return result; - } - - CompositionPathGeometry PathGeometry_33() - { - if (_pathGeometry_33 != nullptr) { return _pathGeometry_33; } - const auto result = _pathGeometry_33 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_23()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_33, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_33); - BindProperty(_pathGeometry_33, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_33); - return result; - } - - CompositionPathGeometry PathGeometry_34() - { - if (_pathGeometry_34 != nullptr) { return _pathGeometry_34; } - const auto result = _pathGeometry_34 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_24()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_34, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_34); - BindProperty(_pathGeometry_34, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_34); - return result; - } - - CompositionPathGeometry PathGeometry_35() - { - if (_pathGeometry_35 != nullptr) { return _pathGeometry_35; } - const auto result = _pathGeometry_35 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_25()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_35, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_35); - BindProperty(_pathGeometry_35, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_35); - return result; - } - - CompositionPathGeometry PathGeometry_36() - { - if (_pathGeometry_36 != nullptr) { return _pathGeometry_36; } - const auto result = _pathGeometry_36 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_26()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_36, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_36); - BindProperty(_pathGeometry_36, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_36); - return result; - } - - CompositionPathGeometry PathGeometry_37() - { - if (_pathGeometry_37 != nullptr) { return _pathGeometry_37; } - const auto result = _pathGeometry_37 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_27()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_37, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_37); - BindProperty(_pathGeometry_37, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_37); - return result; - } - - CompositionPathGeometry PathGeometry_38() - { - if (_pathGeometry_38 != nullptr) { return _pathGeometry_38; } - const auto result = _pathGeometry_38 = _c.CreatePathGeometry(CompositionPath(CanvasGeometryToIGeometrySource2D(Geometry_28()))); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"TEnd", 1.0F); - propertySet.InsertScalar(L"TStart", 0.870000005F); - BindProperty(_pathGeometry_38, L"TrimStart", L"Min(my.TStart,my.TEnd)", L"my", _pathGeometry_38); - BindProperty(_pathGeometry_38, L"TrimEnd", L"Max(my.TStart,my.TEnd)", L"my", _pathGeometry_38); - return result; - } - - // - Layer aggregator - // Offset:<187.5, 333.5> - // Rectangle Path 1.RectangleGeometry - CompositionRectangleGeometry Rectangle_375x667() - { - const auto result = _c.CreateRectangleGeometry(); - result.Offset({ -187.5F, -333.5F }); - result.Size({ 375.0F, 667.0F }); - return result; - } - - // Layer aggregator - // Rectangle Path 1 - CompositionSpriteShape SpriteShape_00() - { - // Offset:<187.5, 333.5> - const auto geometry = Rectangle_375x667(); - const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 187.5F, 333.5F }, ColorBrush_AlmostDarkTurquoise_FF00D1C1());; - return result; - } - - // - - Layer aggregator - // - Layer: Dot-Y - // Transforms: Dot-Y - // Ellipse Path 1 - CompositionSpriteShape SpriteShape_01() - { - // Offset:<196, 267> - const auto geometry = Ellipse_4p6(); - const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F }, ColorBrush_White());; - return result; - } - - // - Layer aggregator - // Layer: E3-Y - // Path 1 - CompositionSpriteShape SpriteShape_02() - { - // Offset:<344.674, 261.877> - const auto result = CreateSpriteShape(PathGeometry_00(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.674011F, 261.877014F });; - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.56200027F); - return result; - } - - // - Layer aggregator - // Layer: E3-B - // Path 1 - CompositionSpriteShape SpriteShape_03() - { - // Offset:<344.739, 261.877> - const auto result = CreateSpriteShape(PathGeometry_01(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.739014F, 261.877014F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.56200027F); - return result; - } - - // - Layer aggregator - // Layer: I-Y - // Path 1 - CompositionSpriteShape SpriteShape_04() - { - // Offset:<304.135, 282.409> - const auto result = CreateSpriteShape(PathGeometry_02(), { 1.0F, 0.0F, 0.0F, 1.0F, 304.13501F, 282.408997F });; - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Square); - result.StrokeStartCap(CompositionStrokeCap::Square); - result.StrokeEndCap(CompositionStrokeCap::Square); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(8.39999962F); - return result; - } - - // - Layer aggregator - // Layer: I-B - // Path 1 - CompositionSpriteShape SpriteShape_05() - { - // Offset:<304.135, 282.409> - const auto result = CreateSpriteShape(PathGeometry_03(), { 1.0F, 0.0F, 0.0F, 1.0F, 304.13501F, 282.408997F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Square); - result.StrokeStartCap(CompositionStrokeCap::Square); - result.StrokeEndCap(CompositionStrokeCap::Square); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // - Layer aggregator - // Layer: E2-Y - // Path 1 - CompositionSpriteShape SpriteShape_06() - { - // Offset:<331.664, 238.14> - const auto result = CreateSpriteShape(PathGeometry_04(), { 1.0F, 0.0F, 0.0F, 1.0F, 331.664001F, 238.139999F });; - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(8.39999962F); - return result; - } - - // - Layer aggregator - // Layer: E2-B - // Path 1 - CompositionSpriteShape SpriteShape_07() - { - // Offset:<331.664, 238.14> - const auto result = CreateSpriteShape(PathGeometry_05(), { 1.0F, 0.0F, 0.0F, 1.0F, 331.664001F, 238.139999F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.56200027F); - return result; - } - - // - Layer aggregator - // Layer: E1-Y - // Path 1 - CompositionSpriteShape SpriteShape_08() - { - // Offset:<344.672, 214.842> - const auto result = CreateSpriteShape(PathGeometry_06(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.671997F, 214.841995F });; - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(8.39999962F); - return result; - } - - // - Layer aggregator - // Layer: E1-B - // Path 1 - CompositionSpriteShape SpriteShape_09() - { - // Offset:<344.672, 214.842> - const auto result = CreateSpriteShape(PathGeometry_07(), { 1.0F, 0.0F, 0.0F, 1.0F, 344.671997F, 214.841995F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.56200027F); - return result; - } - - // - Layer aggregator - // Layer: T1a-Y - // Path 1 - CompositionSpriteShape SpriteShape_10() - { - // Offset:<227.677, 234.375> - const auto result = CreateSpriteShape(PathGeometry_08(), { 1.0F, 0.0F, 0.0F, 1.0F, 227.677002F, 234.375F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(8.39999962F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_11() - { - // Offset:<-56.5, 83.5> - if (_spriteShape_11 != nullptr) { return _spriteShape_11; } - const auto result = _spriteShape_11 = CreateSpriteShape(PathGeometry_09(), { 1.0F, 0.0F, 0.0F, 1.0F, -56.5F, 83.5F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_12() - { - // Offset:<221.198, 330.758> - if (_spriteShape_12 != nullptr) { return _spriteShape_12; } - const auto result = _spriteShape_12 = CreateSpriteShape(PathGeometry_10(), { 1.0F, 0.0F, 0.0F, 1.0F, 221.197998F, 330.757996F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Square); - result.StrokeStartCap(CompositionStrokeCap::Square); - result.StrokeEndCap(CompositionStrokeCap::Square); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_13() - { - // Offset:<-56.5, 83.5> - if (_spriteShape_13 != nullptr) { return _spriteShape_13; } - const auto result = _spriteShape_13 = CreateSpriteShape(PathGeometry_11(), { 1.0F, 0.0F, 0.0F, 1.0F, -56.5F, 83.5F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_14() - { - // Offset:<186.256, 349.081> - if (_spriteShape_14 != nullptr) { return _spriteShape_14; } - const auto result = _spriteShape_14 = CreateSpriteShape(PathGeometry_12(), { 1.0F, 0.0F, 0.0F, 1.0F, 186.255997F, 349.080994F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeLineJoin(CompositionStrokeLineJoin::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(8.39999962F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_15() - { - // Offset:<186.256, 349.081> - if (_spriteShape_15 != nullptr) { return _spriteShape_15; } - const auto result = _spriteShape_15 = CreateSpriteShape(PathGeometry_13(), { 1.0F, 0.0F, 0.0F, 1.0F, 186.255997F, 349.080994F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeLineJoin(CompositionStrokeLineJoin::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // - Layer aggregator - // Layer: O-Y - // Ellipse Path 1 - CompositionSpriteShape SpriteShape_16() - { - // Offset:<196, 267> - const auto result = CreateSpriteShape(Ellipse_0_0(), { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeThickness(8.80000019F); - return result; - } - - // - Layer aggregator - // Layer: O-Y - // Ellipse Path 1 - CompositionSpriteShape SpriteShape_17() - { - // Offset:<196, 267> - const auto result = CreateSpriteShape(Ellipse_0_1(), { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F });; - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeThickness(9.19400024F); - return result; - } - - // - Layer aggregator - // Layer: T1a-Y 2 - // Path 1 - CompositionSpriteShape SpriteShape_18() - { - // Offset:<227.677, 234.375> - const auto result = CreateSpriteShape(PathGeometry_14(), { 1.0F, 0.0F, 0.0F, 1.0F, 227.677002F, 234.375F });; - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(8.39999962F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_19() - { - // Offset:<221.198, 330.758> - if (_spriteShape_19 != nullptr) { return _spriteShape_19; } - const auto result = _spriteShape_19 = CreateSpriteShape(PathGeometry_15(), { 1.0F, 0.0F, 0.0F, 1.0F, 221.197998F, 330.757996F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Square); - result.StrokeStartCap(CompositionStrokeCap::Square); - result.StrokeEndCap(CompositionStrokeCap::Square); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // - Layer aggregator - // Layer: T1a-B - // Path 1 - CompositionSpriteShape SpriteShape_20() - { - // Offset:<227.677, 234.375> - const auto result = CreateSpriteShape(PathGeometry_16(), { 1.0F, 0.0F, 0.0F, 1.0F, 227.677002F, 234.375F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // - - Layer aggregator - // - Layer: Dot-Y - // Transforms: Dot-Y - // Ellipse Path 1 - CompositionSpriteShape SpriteShape_21() - { - // Offset:<196, 267> - const auto geometry = Ellipse_4p7(); - const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F }, ColorBrush_White());; - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_22() - { - // Offset:<109.52901, 354.143> - if (_spriteShape_22 != nullptr) { return _spriteShape_22; } - const auto result = _spriteShape_22 = CreateSpriteShape(PathGeometry_17(), { 1.0F, 0.0F, 0.0F, 1.0F, 109.529007F, 354.143005F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(8.39999962F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_23() - { - // Offset:<109.52901, 354.143> - if (_spriteShape_23 != nullptr) { return _spriteShape_23; } - const auto result = _spriteShape_23 = CreateSpriteShape(PathGeometry_18(), { 1.0F, 0.0F, 0.0F, 1.0F, 109.529007F, 354.143005F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_AlmostTeal_FF007A87()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(5.0F); - result.StrokeThickness(9.19400024F); - return result; - } - - // - Layer aggregator - // Layer: Dot1 - // Ellipse Path 1 - CompositionSpriteShape SpriteShape_24() - { - // Offset:<196, 267> - const auto geometry = Ellipse_4p7(); - const auto result = CreateSpriteShape(geometry, { 1.0F, 0.0F, 0.0F, 1.0F, 196.0F, 267.0F }, ColorBrush_White());; - return result; - } - - // - Layer aggregator - // Layer: S1-Y - // Path 1 - CompositionSpriteShape SpriteShape_25() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_19(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(1.5F); - return result; - } - - // - Layer aggregator - // Layer: S1-Y - // Path 1 - CompositionSpriteShape SpriteShape_26() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_20(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(1.5F); - return result; - } - - // - Layer aggregator - // Layer: S7 - // Path 1 - CompositionSpriteShape SpriteShape_27() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_21(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(1.5F); - return result; - } - - // - Layer aggregator - // Layer: S7 - // Path 1 - CompositionSpriteShape SpriteShape_28() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_22(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(1.5F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y - // Path 1 - CompositionSpriteShape SpriteShape_29() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_23(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y - // Path 1 - CompositionSpriteShape SpriteShape_30() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_24(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y - // Path 1 - CompositionSpriteShape SpriteShape_31() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_25(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y - // Path 1 - CompositionSpriteShape SpriteShape_32() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_26(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 2 - // Path 1 - CompositionSpriteShape SpriteShape_33() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_27(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 2 - // Path 1 - CompositionSpriteShape SpriteShape_34() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_28(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 2 - // Path 1 - CompositionSpriteShape SpriteShape_35() - { - // Offset:<179.5, 333.5> - const auto result = CreateSpriteShape(PathGeometry_29(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_36() - { - // Offset:<179.5, 333.5> - if (_spriteShape_36 != nullptr) { return _spriteShape_36; } - const auto result = _spriteShape_36 = CreateSpriteShape(PathGeometry_30(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(1.5F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_37() - { - // Offset:<179.5, 333.5> - if (_spriteShape_37 != nullptr) { return _spriteShape_37; } - const auto result = _spriteShape_37 = CreateSpriteShape(PathGeometry_31(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(1.5F); - return result; - } - - // Layer aggregator - // Path 1 - CompositionSpriteShape SpriteShape_38() - { - // Offset:<179.5, 333.5> - if (_spriteShape_38 != nullptr) { return _spriteShape_38; } - const auto result = _spriteShape_38 = CreateSpriteShape(PathGeometry_32(), { 1.0F, 0.0F, 0.0F, 1.0F, 179.5F, 333.5F });; - result.Scale({ 0.0F, 0.0F }); - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(1.5F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 3 - // Path 1 - CompositionSpriteShape SpriteShape_39() - { - // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees - const auto result = CreateSpriteShape(PathGeometry_33(), { -0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 3 - // Path 1 - CompositionSpriteShape SpriteShape_40() - { - // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees - const auto result = CreateSpriteShape(PathGeometry_34(), { -0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 3 - // Path 1 - CompositionSpriteShape SpriteShape_41() - { - // Offset:<212.662, 248.428>, Rotation:97.90000401019934 degrees - const auto result = CreateSpriteShape(PathGeometry_35(), { -0.137444615F, 0.99050945F, -0.99050945F, -0.137444615F, 212.662003F, 248.427994F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 4 - // Path 1 - CompositionSpriteShape SpriteShape_42() - { - // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, - // Scale:<0.99999994, 0.99999994> - const auto result = CreateSpriteShape(PathGeometry_36(), { 0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 4 - // Path 1 - CompositionSpriteShape SpriteShape_43() - { - // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, - // Scale:<0.99999994, 0.99999994> - const auto result = CreateSpriteShape(PathGeometry_37(), { 0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 4 - // Path 1 - CompositionSpriteShape SpriteShape_44() - { - // Offset:<207.662, 419.42798>, Rotation:-89.09999525232098 degrees, - // Scale:<0.99999994, 0.99999994> - const auto result = CreateSpriteShape(PathGeometry_38(), { 0.0157073997F, -0.999876618F, 0.999876618F, 0.0157073997F, 207.662003F, 419.427979F });; - result.StrokeBrush(ColorBrush_White()); - result.StrokeDashCap(CompositionStrokeCap::Round); - result.StrokeStartCap(CompositionStrokeCap::Round); - result.StrokeEndCap(CompositionStrokeCap::Round); - result.StrokeMiterLimit(2.0F); - result.StrokeThickness(2.0F); - return result; - } - - // The root of the composition. - ContainerVisual Root() - { - if (_root != nullptr) { return _root; } - const auto result = _root = _c.CreateContainerVisual(); - const auto propertySet = result.Properties(); - propertySet.InsertScalar(L"Progress", 0.0F); - propertySet.InsertScalar(L"t0", 0.0F); - // Layer aggregator - result.Children().InsertAtTop(ShapeVisual_0()); - return result; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_0() - { - return (_cubicBezierEasingFunction_0 == nullptr) - ? _cubicBezierEasingFunction_0 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.180000007F, 1.0F }) - : _cubicBezierEasingFunction_0; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_1() - { - return (_cubicBezierEasingFunction_1 == nullptr) - ? _cubicBezierEasingFunction_1 = _c.CreateCubicBezierEasingFunction({ 0.819999993F, 0.0F }, { 0.833000004F, 0.833000004F }) - : _cubicBezierEasingFunction_1; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_2() - { - return (_cubicBezierEasingFunction_2 == nullptr) - ? _cubicBezierEasingFunction_2 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.833000004F, 0.833000004F }) - : _cubicBezierEasingFunction_2; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_3() - { - return (_cubicBezierEasingFunction_3 == nullptr) - ? _cubicBezierEasingFunction_3 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.666999996F, 1.0F }) - : _cubicBezierEasingFunction_3; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_4() - { - return (_cubicBezierEasingFunction_4 == nullptr) - ? _cubicBezierEasingFunction_4 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.119999997F, 1.0F }) - : _cubicBezierEasingFunction_4; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_5() - { - return (_cubicBezierEasingFunction_5 == nullptr) - ? _cubicBezierEasingFunction_5 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.0F }, { 0.119999997F, 1.0F }) - : _cubicBezierEasingFunction_5; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_6() - { - return (_cubicBezierEasingFunction_6 == nullptr) - ? _cubicBezierEasingFunction_6 = _c.CreateCubicBezierEasingFunction({ 0.300999999F, 0.0F }, { 0.666999996F, 1.0F }) - : _cubicBezierEasingFunction_6; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_7() - { - return (_cubicBezierEasingFunction_7 == nullptr) - ? _cubicBezierEasingFunction_7 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.0599999987F, 1.0F }) - : _cubicBezierEasingFunction_7; - } - - CubicBezierEasingFunction CubicBezierEasingFunction_8() - { - return (_cubicBezierEasingFunction_8 == nullptr) - ? _cubicBezierEasingFunction_8 = _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.337000012F, 1.0F }) - : _cubicBezierEasingFunction_8; - } - - ScalarKeyFrameAnimation t0ScalarAnimation_0_to_1() - { - // Frame 35.26. - const auto result = CreateScalarKeyFrameAnimation(0.196966499F, 0.0F, StepThenHoldEasingFunction()); - result.SetReferenceParameter(L"_", _root); - // Frame 44. - result.InsertKeyFrame(0.245810047F, 1.0F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.197999999F }, { 0.638000011F, 1.0F })); - // Frame 44. - result.InsertKeyFrame(0.245810062F, 0.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675946F, 1.0F, _c.CreateCubicBezierEasingFunction({ 0.523000002F, 0.0F }, { 0.795000017F, 1.0F })); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_0_to_1_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); - // Frame 74. - result.InsertKeyFrame(0.413407832F, 1.0F, CubicBezierEasingFunction_6()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_0_to_1_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 1.0F, CubicBezierEasingFunction_6()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_0p81_to_0p734_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.810000002F, StepThenHoldEasingFunction()); - // Frame 16. - result.InsertKeyFrame(0.0893854722F, 0.810000002F, HoldThenStepEasingFunction()); - // Frame 27. - result.InsertKeyFrame(0.150837988F, 0.734000027F, CubicBezierEasingFunction_8()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_0p81_to_0p734_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.810000002F, StepThenHoldEasingFunction()); - // Frame 18. - result.InsertKeyFrame(0.100558661F, 0.810000002F, HoldThenStepEasingFunction()); - // Frame 29. - result.InsertKeyFrame(0.162011176F, 0.734000027F, CubicBezierEasingFunction_8()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_00() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 29. - result.InsertKeyFrame(0.162011176F, 1.0F, HoldThenStepEasingFunction()); - // Frame 33. - result.InsertKeyFrame(0.184357539F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 36. - result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_01() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 29. - result.InsertKeyFrame(0.162011176F, 1.0F, HoldThenStepEasingFunction()); - // Frame 33. - result.InsertKeyFrame(0.184357539F, 0.690559983F, CubicBezierEasingFunction_2()); - // Frame 36. - result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_02() - { - // Frame 0. - if (_tEndScalarAnimation_1_to_0_02 != nullptr) { return _tEndScalarAnimation_1_to_0_02; } - const auto result = _tEndScalarAnimation_1_to_0_02 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 65. - result.InsertKeyFrame(0.363128483F, 1.0F, HoldThenStepEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_03() - { - // Frame 0. - if (_tEndScalarAnimation_1_to_0_03 != nullptr) { return _tEndScalarAnimation_1_to_0_03; } - const auto result = _tEndScalarAnimation_1_to_0_03 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_04() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.758560002F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_05() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.704559982F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_06() - { - // Frame 0. - if (_tEndScalarAnimation_1_to_0_06 != nullptr) { return _tEndScalarAnimation_1_to_0_06; } - const auto result = _tEndScalarAnimation_1_to_0_06 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 1.0F, HoldThenStepEasingFunction()); - // Frame 100. - result.InsertKeyFrame(0.558659196F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_07() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 1.0F, HoldThenStepEasingFunction()); - // Frame 100. - result.InsertKeyFrame(0.558659196F, 0.758560002F, CubicBezierEasingFunction_2()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_08() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 80. - result.InsertKeyFrame(0.446927369F, 1.0F, HoldThenStepEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 87. - result.InsertKeyFrame(0.486033529F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_09() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, 1.0F, HoldThenStepEasingFunction()); - // Frame 87. - result.InsertKeyFrame(0.486033529F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_10() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 1.0F, HoldThenStepEasingFunction()); - // Frame 90. - result.InsertKeyFrame(0.502793312F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 94. - result.InsertKeyFrame(0.525139689F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_11() - { - // Frame 0. - if (_tEndScalarAnimation_1_to_0_11 != nullptr) { return _tEndScalarAnimation_1_to_0_11; } - const auto result = _tEndScalarAnimation_1_to_0_11 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 1.0F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_12() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 1.0F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.758560002F, CubicBezierEasingFunction_2()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_13() - { - // Frame 0. - if (_tEndScalarAnimation_1_to_0_13 != nullptr) { return _tEndScalarAnimation_1_to_0_13; } - const auto result = _tEndScalarAnimation_1_to_0_13 = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 1.0F, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.663559973F, CubicBezierEasingFunction_2()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TEnd - ScalarKeyFrameAnimation TEndScalarAnimation_1_to_0_14() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 1.0F, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.758560002F, CubicBezierEasingFunction_2()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E2-Y - // - ShapeGroup: Group 3 Offset:<331.664, 238.14> - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p43_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.0F, HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, 0.430000007F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E2-B - // - Transforms: E2-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p43_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 86. - result.InsertKeyFrame(0.480446935F, 0.0F, HoldThenStepEasingFunction()); - // Frame 95. - result.InsertKeyFrame(0.530726254F, 0.430000007F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E3-Y - // - ShapeGroup: Group 1 Offset:<344.674, 261.877> - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p316_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, 0.0F, HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, 0.316000015F, CubicBezierEasingFunction_2()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E3-B - // - Transforms: E3-B Offset:<0.06500244, 0> - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p316_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, 0.0F, HoldThenStepEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 0.316000015F, CubicBezierEasingFunction_2()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E1-Y - // - ShapeGroup: Group 2 Offset:<344.672, 214.842> - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p375_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.0F, HoldThenStepEasingFunction()); - // Frame 88. - result.InsertKeyFrame(0.491620123F, 0.375F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: E1-B - // - Transforms: E1-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p375_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, 0.0F, HoldThenStepEasingFunction()); - // Frame 93. - result.InsertKeyFrame(0.519553065F, 0.375F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: I-Y - // - ShapeGroup: Group 6 Offset:<304.135, 282.409> - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p457_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.0F, HoldThenStepEasingFunction()); - // Frame 88. - result.InsertKeyFrame(0.491620123F, 0.456999987F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: I-B - // - Transforms: I-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0_to_0p457_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 81. - result.InsertKeyFrame(0.452513963F, 0.0F, HoldThenStepEasingFunction()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0.456999987F, CubicBezierEasingFunction_4()); - return result; - } - - // - - Layer aggregator - // - Layer: T2a-Y - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p5_to_1_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); - // Frame 72. - result.InsertKeyFrame(0.402234644F, 0.5F, HoldThenStepEasingFunction()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 1.0F, CubicBezierEasingFunction_7()); - return result; - } - - // - - Layer aggregator - // - Layer: T2a-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p5_to_1_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.5F, HoldThenStepEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 1.0F, CubicBezierEasingFunction_7()); - return result; - } - - // - - Layer aggregator - // - Layer: T1b-Y - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p117_to_1_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.116999999F, StepThenHoldEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, 0.116999999F, HoldThenStepEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 1.0F, CubicBezierEasingFunction_2()); - return result; - } - - // - - Layer aggregator - // - Layer: T1b-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p117_to_1_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.116999999F, StepThenHoldEasingFunction()); - // Frame 81. - result.InsertKeyFrame(0.452513963F, 0.116999999F, HoldThenStepEasingFunction()); - // Frame 88. - result.InsertKeyFrame(0.491620123F, 1.0F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.209999993F, 1.0F })); - return result; - } - - // - - - Layer aggregator - // - - Layer: T1a-B - // - Transforms: T1a-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p249_to_0p891() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.248999998F, StepThenHoldEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, 0.248999998F, HoldThenStepEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, 0.890999973F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.672999978F, 1.0F })); - return result; - } - - // - - Layer aggregator - // - Layer: T2b-Y - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p411_to_0p665_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.411000013F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 0.411000013F, HoldThenStepEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 0.665000021F, CubicBezierEasingFunction_4()); - return result; - } - - // - - Layer aggregator - // - Layer: T2b-B - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_0p411_to_0p665_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.411000013F, StepThenHoldEasingFunction()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.411000013F, HoldThenStepEasingFunction()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0.665000021F, CubicBezierEasingFunction_4()); - return result; - } - - // - - - Layer aggregator - // - - Layer: O-Y - // - ShapeGroup: Ellipse 1 Offset:<196, 267> - // Ellipse Path 1.EllipseGeometry - // TrimEnd - ScalarKeyFrameAnimation TrimEndScalarAnimation_1_to_0p88() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 1.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 1.0F, HoldThenStepEasingFunction()); - // Frame 63. - result.InsertKeyFrame(0.351955295F, 0.879999995F, CubicBezierEasingFunction_2()); - return result; - } - - // - - - Layer aggregator - // - - Layer: O-Y - // - ShapeGroup: Ellipse 1 Offset:<196, 267> - // Ellipse Path 1.EllipseGeometry - // TrimStart - ScalarKeyFrameAnimation TrimStartScalarAnimation_0_to_0p399() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); - // Frame 63. - result.InsertKeyFrame(0.351955295F, 0.300000012F, CubicBezierEasingFunction_2()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0.398999989F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 1.0F }, { 0.432000011F, 1.0F })); - return result; - } - - // - - Layer aggregator - // - Layer: T2a-Y - // TrimStart - ScalarKeyFrameAnimation TrimStartScalarAnimation_0p5_to_0_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); - // Frame 72. - result.InsertKeyFrame(0.402234644F, 0.5F, HoldThenStepEasingFunction()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_7()); - return result; - } - - // - - Layer aggregator - // - Layer: T2a-B - // TrimStart - ScalarKeyFrameAnimation TrimStartScalarAnimation_0p5_to_0_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.5F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.5F, HoldThenStepEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 0.0F, CubicBezierEasingFunction_7()); - return result; - } - - // - - Layer aggregator - // - Layer: T2b-Y - // TrimStart - ScalarKeyFrameAnimation TrimStartScalarAnimation_0p29_to_0_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.289999992F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 0.289999992F, HoldThenStepEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 0.0F, CubicBezierEasingFunction_4()); - return result; - } - - // - - Layer aggregator - // - Layer: T2b-B - // TrimStart - ScalarKeyFrameAnimation TrimStartScalarAnimation_0p29_to_0_1() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.289999992F, StepThenHoldEasingFunction()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.289999992F, HoldThenStepEasingFunction()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0.0F, CubicBezierEasingFunction_4()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0_to_0p249() - { - // Frame 0. - if (_tStartScalarAnimation_0_to_0p249 != nullptr) { return _tStartScalarAnimation_0_to_0p249; } - const auto result = _tStartScalarAnimation_0_to_0p249 = CreateScalarKeyFrameAnimation(0.0F, 0.0F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.0F, HoldThenStepEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, 0.248999998F, _c.CreateCubicBezierEasingFunction({ 0.300999999F, 0.0F }, { 0.833000004F, 1.0F })); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p8_to_0() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.800000012F, StepThenHoldEasingFunction()); - // Frame 16. - result.InsertKeyFrame(0.0893854722F, 0.800000012F, HoldThenStepEasingFunction()); - // Frame 20. - result.InsertKeyFrame(0.111731842F, 0.5F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.703000009F, 0.856999993F })); - // Frame 28. - result.InsertKeyFrame(0.156424582F, 0.0F, _c.CreateCubicBezierEasingFunction({ 0.333000004F, 0.202000007F }, { 0.938000023F, 1.0F })); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p8_to_0p3() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.800000012F, StepThenHoldEasingFunction()); - // Frame 18. - result.InsertKeyFrame(0.100558661F, 0.800000012F, HoldThenStepEasingFunction()); - // Frame 23. - result.InsertKeyFrame(0.128491625F, 0.5F, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.703000009F, 0.82099998F })); - // Frame 55. - result.InsertKeyFrame(0.30726257F, 0.300000012F, _c.CreateCubicBezierEasingFunction({ 0.0370000005F, 0.167999998F }, { 0.263000011F, 1.0F })); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_00() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 29. - result.InsertKeyFrame(0.162011176F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 33. - result.InsertKeyFrame(0.184357539F, 0.375330001F, CubicBezierEasingFunction_2()); - // Frame 36. - result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_01() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 29. - result.InsertKeyFrame(0.162011176F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 33. - result.InsertKeyFrame(0.184357539F, 0.253329992F, CubicBezierEasingFunction_2()); - // Frame 36. - result.InsertKeyFrame(0.201117322F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_02() - { - // Frame 0. - if (_tStartScalarAnimation_0p87_to_0_02 != nullptr) { return _tStartScalarAnimation_0p87_to_0_02; } - const auto result = _tStartScalarAnimation_0p87_to_0_02 = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 65. - result.InsertKeyFrame(0.363128483F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, 0.212329999F, CubicBezierEasingFunction_2()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_03() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.421330005F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_04() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.438329995F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_05() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.506330013F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_06() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 57. - result.InsertKeyFrame(0.318435758F, 0.439330012F, CubicBezierEasingFunction_2()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_07() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 100. - result.InsertKeyFrame(0.558659196F, 0.421330005F, CubicBezierEasingFunction_2()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_08() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 100. - result.InsertKeyFrame(0.558659196F, 0.438329995F, CubicBezierEasingFunction_2()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_09() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 100. - result.InsertKeyFrame(0.558659196F, 0.506330013F, CubicBezierEasingFunction_2()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_10() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 80. - result.InsertKeyFrame(0.446927369F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.212329999F, CubicBezierEasingFunction_2()); - // Frame 87. - result.InsertKeyFrame(0.486033529F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_11() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 87. - result.InsertKeyFrame(0.486033529F, 0.212329999F, CubicBezierEasingFunction_2()); - // Frame 91. - result.InsertKeyFrame(0.508379877F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_12() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 90. - result.InsertKeyFrame(0.502793312F, 0.212329999F, CubicBezierEasingFunction_2()); - // Frame 94. - result.InsertKeyFrame(0.525139689F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_13() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.421330005F, CubicBezierEasingFunction_2()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_14() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.438329995F, CubicBezierEasingFunction_2()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_15() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, 0.506330013F, CubicBezierEasingFunction_2()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_16() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.421330005F, CubicBezierEasingFunction_2()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_17() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.438329995F, CubicBezierEasingFunction_2()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // TStart - ScalarKeyFrameAnimation TStartScalarAnimation_0p87_to_0_18() - { - // Frame 0. - const auto result = CreateScalarKeyFrameAnimation(0.0F, 0.870000005F, StepThenHoldEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, 0.870000005F, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, 0.506330013F, CubicBezierEasingFunction_2()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, 0.0F, CubicBezierEasingFunction_2()); - return result; - } - - // Layer aggregator - ShapeVisual ShapeVisual_0() - { - const auto result = _c.CreateShapeVisual(); - result.Size({ 375.0F, 667.0F }); - const auto shapes = result.Shapes(); - // Offset:<187.5, 333.5> - shapes.Append(SpriteShape_00()); - // Layer: Dot-Y - shapes.Append(ContainerShape_00()); - // Layer: E3-Y - shapes.Append(ContainerShape_02()); - // Layer: E3-B - shapes.Append(ContainerShape_03()); - // Layer: I-Y - shapes.Append(ContainerShape_04()); - // Layer: I-B - shapes.Append(ContainerShape_05()); - // Layer: E2-Y - shapes.Append(ContainerShape_06()); - // Layer: E2-B - shapes.Append(ContainerShape_07()); - // Layer: E1-Y - shapes.Append(ContainerShape_08()); - // Layer: E1-B - shapes.Append(ContainerShape_09()); - // Layer: T1a-Y - shapes.Append(ContainerShape_10()); - // Layer: T2b-Y - shapes.Append(SpriteShape_11()); - // Layer: T2a-Y - shapes.Append(SpriteShape_12()); - // Layer: T2b-B - shapes.Append(SpriteShape_13()); - // Layer: T1b-Y - shapes.Append(SpriteShape_14()); - // Layer: T1b-B - shapes.Append(SpriteShape_15()); - // Layer: O-Y - shapes.Append(ContainerShape_11()); - // Layer: T1a-Y 2 - shapes.Append(ContainerShape_12()); - // Layer: T2a-B - shapes.Append(SpriteShape_19()); - // Layer: T1a-B - shapes.Append(ContainerShape_13()); - // Layer: Dot-Y - shapes.Append(ContainerShape_14()); - // Layer: L-Y - shapes.Append(SpriteShape_22()); - // Layer: L-B - shapes.Append(SpriteShape_23()); - // Layer: Dot1 - shapes.Append(ContainerShape_16()); - // Layer: S1-Y - shapes.Append(ContainerShape_17()); - // Layer: S7 - shapes.Append(ContainerShape_18()); - // Layer: S3-Y - shapes.Append(ContainerShape_19()); - // Layer: S3-Y 2 - shapes.Append(ContainerShape_20()); - // Layer: S11 - shapes.Append(SpriteShape_36()); - // Layer: S12 - shapes.Append(SpriteShape_37()); - // Layer: S13 - shapes.Append(SpriteShape_38()); - // Layer: S3-Y 3 - shapes.Append(ContainerShape_21()); - // Layer: S3-Y 4 - shapes.Append(ContainerShape_22()); - return result; - } - - StepEasingFunction HoldThenStepEasingFunction() - { - if (_holdThenStepEasingFunction != nullptr) { return _holdThenStepEasingFunction; } - const auto result = _holdThenStepEasingFunction = _c.CreateStepEasingFunction(); - result.IsFinalStepSingleFrame(true); - return result; - } - - StepEasingFunction StepThenHoldEasingFunction() - { - if (_stepThenHoldEasingFunction != nullptr) { return _stepThenHoldEasingFunction; } - const auto result = _stepThenHoldEasingFunction = _c.CreateStepEasingFunction(); - result.IsInitialStepSingleFrame(true); - return result; - } - - // - - Layer aggregator - // - Layer: Dot-Y - // Transforms: Dot-Y - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_00() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { -153.528F, -206.753998F }, StepThenHoldEasingFunction()); - // Frame 96. - result.InsertKeyFrame(0.536312878F, { -153.528F, -206.753998F }, HoldThenStepEasingFunction()); - // Frame 108. - result.InsertKeyFrame(0.603351951F, { -134.278F, -206.753998F }, _c.CreateCubicBezierEasingFunction({ 0.0F, 0.0F }, { 0.0F, 0.811999977F })); - // Frame 115. - result.InsertKeyFrame(0.642458081F, { -133.028F, -206.753998F }, _c.CreateCubicBezierEasingFunction({ 0.389999986F, 0.707000017F }, { 0.708000004F, 1.0F })); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_01() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 104.781998F, -2.52699995F }, StepThenHoldEasingFunction()); - // Frame 96. - result.InsertKeyFrame(0.536312878F, { 104.781998F, -2.52699995F }, HoldThenStepEasingFunction()); - // Frame 99. - result.InsertKeyFrame(0.553072631F, { 104.781998F, -4.52699995F }, CubicBezierEasingFunction_0()); - // Frame 102. - result.InsertKeyFrame(0.569832385F, { 104.781998F, -2.52699995F }, CubicBezierEasingFunction_1()); - // Frame 105. - result.InsertKeyFrame(0.586592197F, { 104.781998F, -3.09100008F }, CubicBezierEasingFunction_0()); - // Frame 108. - result.InsertKeyFrame(0.603351951F, { 104.781998F, -2.52699995F }, CubicBezierEasingFunction_1()); - return result; - } - - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_02() - { - // Frame 0. - if (_offsetVector2Animation_02 != nullptr) { return _offsetVector2Animation_02; } - const auto result = _offsetVector2Animation_02 = CreateVector2KeyFrameAnimation(0.0F, { -225.957001F, -204.322006F }, StepThenHoldEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, { -225.957001F, -204.322006F }, HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, { -207.957001F, -204.322006F }, CubicBezierEasingFunction_3()); - // Frame 96. - result.InsertKeyFrame(0.536312878F, { -210.957001F, -204.322006F }, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.0F }, { 0.666999996F, 1.0F })); - return result; - } - - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_03() - { - // Frame 0. - if (_offsetVector2Animation_03 != nullptr) { return _offsetVector2Animation_03; } - const auto result = _offsetVector2Animation_03 = CreateVector2KeyFrameAnimation(0.0F, { -210.207993F, -219.320999F }, StepThenHoldEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, { -210.207993F, -219.320999F }, HoldThenStepEasingFunction()); - // Frame 88. - result.InsertKeyFrame(0.491620123F, { -211.175995F, -199.352997F }, CubicBezierEasingFunction_4()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, { -210.957993F, -204.320999F }, CubicBezierEasingFunction_5()); - return result; - } - - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_04() - { - // Frame 0. - if (_offsetVector2Animation_04 != nullptr) { return _offsetVector2Animation_04; } - const auto result = _offsetVector2Animation_04 = CreateVector2KeyFrameAnimation(0.0F, { -222.957993F, -204.322006F }, StepThenHoldEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, { -222.957993F, -204.322006F }, HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, { -210.957993F, -204.322006F }, CubicBezierEasingFunction_4()); - return result; - } - - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_05() - { - // Frame 0. - if (_offsetVector2Animation_05 != nullptr) { return _offsetVector2Animation_05; } - const auto result = _offsetVector2Animation_05 = CreateVector2KeyFrameAnimation(0.0F, { -230.957001F, -205.695999F }, StepThenHoldEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, { -230.957001F, -205.695999F }, HoldThenStepEasingFunction()); - // Frame 88. - result.InsertKeyFrame(0.491620123F, { -206.957001F, -205.695999F }, CubicBezierEasingFunction_4()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, { -210.957001F, -205.695999F }, CubicBezierEasingFunction_5()); - return result; - } - - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_06() - { - // Frame 0. - if (_offsetVector2Animation_06 != nullptr) { return _offsetVector2Animation_06; } - const auto result = _offsetVector2Animation_06 = CreateVector2KeyFrameAnimation(0.0F, { -210.957001F, -201.322006F }, StepThenHoldEasingFunction()); - // Frame 56. - result.InsertKeyFrame(0.312849164F, { -210.957001F, -201.322006F }, HoldThenStepEasingFunction()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, { -210.957001F, -204.322006F }, CubicBezierEasingFunction_3()); - return result; - } - - // - Layer aggregator - // Layer: O-Y - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_07() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { -259.583008F, -193.447006F }, StepThenHoldEasingFunction()); - result.SetReferenceParameter(L"_", _root); - // Frame 31. - result.InsertKeyFrame(0.17318435F, { -259.583008F, -193.447006F }, HoldThenStepEasingFunction()); - // Frame 35.26. - result.InsertKeyFrame(0.196966484F, { -250.582993F, -258.946991F }, CubicBezierEasingFunction_2()); - // Frame 44. - result.InsertExpressionKeyFrame(0.245810047F, L"Pow(1-_.t0,3)*Vector2(-250.583,-258.947)+(3*Square(1-_.t0)*_.t0*Vector2(-250.583,-258.947))+(3*(1-_.t0)*Square(_.t0)*Vector2(-249.6143,-337.5837))+(Pow(_.t0,3)*Vector2(-230.458,-339.322))", StepThenHoldEasingFunction()); - // Frame 54. - result.InsertExpressionKeyFrame(0.301675946F, L"Pow(1-_.t0,3)*Vector2(-230.458,-339.322)+(3*Square(1-_.t0)*_.t0*Vector2(-214.2505,-340.7927))+(3*(1-_.t0)*Square(_.t0)*Vector2(-210.958,-164.322))+(Pow(_.t0,3)*Vector2(-210.958,-164.322))", StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, { -210.957993F, -164.322006F }, StepThenHoldEasingFunction()); - // Frame 63. - result.InsertKeyFrame(0.351955295F, { -210.957993F, -207.322006F }, _c.CreateCubicBezierEasingFunction({ 0.180000007F, 0.0F }, { 0.34799999F, 1.0F })); - // Frame 73. - result.InsertKeyFrame(0.407821238F, { -210.957993F, -204.322006F }, _c.CreateCubicBezierEasingFunction({ 0.693000019F, 0.0F }, { 0.270000011F, 1.0F })); - return result; - } - - // - - Layer aggregator - // - Layer: Dot-Y - // Transforms: Dot-Y - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_08() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { -156.916F, -206.503998F }, StepThenHoldEasingFunction()); - // Frame 28. - result.InsertKeyFrame(0.156424582F, { -156.916F, -206.503998F }, HoldThenStepEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, { -117.416F, -206.503998F }, CubicBezierEasingFunction_2()); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_09() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { -93.6669998F, -51.8180008F }, StepThenHoldEasingFunction()); - // Frame 28. - result.InsertKeyFrame(0.156424582F, { -93.6669998F, -51.8180008F }, HoldThenStepEasingFunction()); - // Frame 40. - result.InsertKeyFrame(0.223463684F, { -93.6669998F, -132.817993F }, _c.CreateCubicBezierEasingFunction({ 0.166999996F, 0.166999996F }, { 0.25999999F, 1.0F })); - // Frame 54. - result.InsertKeyFrame(0.301675975F, { -93.6669998F, 42.0569992F }, _c.CreateCubicBezierEasingFunction({ 0.74000001F, 0.0F }, { 0.833000004F, 0.833000004F })); - return result; - } - - // - Layer aggregator - // Layer: Dot1 - // Offset - Vector2KeyFrameAnimation OffsetVector2Animation_10() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 98.9800034F, -157.509995F }, HoldThenStepEasingFunction()); - // Frame 18.69. - result.InsertKeyFrame(0.104395606F, { -161.020004F, -157.509995F }, _c.CreateCubicBezierEasingFunction({ 0.823000014F, 0.0F }, { 0.833000004F, 0.833000004F })); - return result; - } - - // Radius - Vector2KeyFrameAnimation RadiusVector2Animation() - { - // Frame 0. - if (_radiusVector2Animation != nullptr) { return _radiusVector2Animation; } - const auto result = _radiusVector2Animation = CreateVector2KeyFrameAnimation(0.0F, { 1.5F, 1.5F }, StepThenHoldEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, { 1.5F, 1.5F }, HoldThenStepEasingFunction()); - // Frame 61. - result.InsertKeyFrame(0.340782136F, { 22.2999992F, 22.2999992F }, _c.CreateCubicBezierEasingFunction({ 0.333000004F, 0.0F }, { 0.666999996F, 1.0F })); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_00() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 96. - result.InsertKeyFrame(0.536312878F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E3-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_01() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 102. - result.InsertKeyFrame(0.569832385F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E3-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_02() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: I-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_03() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 78. - result.InsertKeyFrame(0.43575418F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 93. - result.InsertKeyFrame(0.519553065F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - Vector2KeyFrameAnimation ShapeVisibilityAnimation_04() - { - // Frame 0. - if (_shapeVisibilityAnimation_04 != nullptr) { return _shapeVisibilityAnimation_04; } - const auto result = _shapeVisibilityAnimation_04 = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 81. - result.InsertKeyFrame(0.452513963F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E2-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_05() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 96. - result.InsertKeyFrame(0.536312878F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E2-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_06() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 86. - result.InsertKeyFrame(0.480446935F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E1-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_07() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 79. - result.InsertKeyFrame(0.441340774F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 94. - result.InsertKeyFrame(0.525139689F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: E1-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_08() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T1a-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_09() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 59. - result.InsertKeyFrame(0.329608947F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 156. - result.InsertKeyFrame(0.87150836F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T2b-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_10() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 92. - result.InsertKeyFrame(0.513966501F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T2a-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_11() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 72. - result.InsertKeyFrame(0.402234644F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 89. - result.InsertKeyFrame(0.497206718F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T2b-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_12() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 82. - result.InsertKeyFrame(0.458100557F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T1b-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_13() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 161. - result.InsertKeyFrame(0.899441361F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: O-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_14() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T1a-Y 2 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_15() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 59. - result.InsertKeyFrame(0.329608947F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T2a-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_16() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: T1a-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_17() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 70. - result.InsertKeyFrame(0.391061455F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: Dot-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_18() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 28. - result.InsertKeyFrame(0.156424582F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: L-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_19() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 16. - result.InsertKeyFrame(0.0893854722F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: L-B - Vector2KeyFrameAnimation ShapeVisibilityAnimation_20() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 18. - result.InsertKeyFrame(0.100558661F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: Dot1 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_21() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 17. - result.InsertKeyFrame(0.0949720666F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S1-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_22() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 30. - result.InsertKeyFrame(0.167597771F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 37. - result.InsertKeyFrame(0.206703916F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S7 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_23() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 65. - result.InsertKeyFrame(0.363128483F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S3-Y - Vector2KeyFrameAnimation ShapeVisibilityAnimation_24() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 54. - result.InsertKeyFrame(0.301675975F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 64. - result.InsertKeyFrame(0.357541889F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 2 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_25() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 97. - result.InsertKeyFrame(0.541899443F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 107. - result.InsertKeyFrame(0.597765386F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S11 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_26() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 80. - result.InsertKeyFrame(0.446927369F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 90. - result.InsertKeyFrame(0.502793312F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S12 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_27() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 94. - result.InsertKeyFrame(0.525139689F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S13 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_28() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 85. - result.InsertKeyFrame(0.47486034F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 95. - result.InsertKeyFrame(0.530726254F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 3 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_29() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 75. - result.InsertKeyFrame(0.418994427F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 83. - result.InsertKeyFrame(0.463687152F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - // - Layer aggregator - // Layer: S3-Y 4 - Vector2KeyFrameAnimation ShapeVisibilityAnimation_30() - { - // Frame 0. - const auto result = CreateVector2KeyFrameAnimation(0.0F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - // Frame 76. - result.InsertKeyFrame(0.424580991F, { 1.0F, 1.0F }, HoldThenStepEasingFunction()); - // Frame 84. - result.InsertKeyFrame(0.469273746F, { 0.0F, 0.0F }, HoldThenStepEasingFunction()); - return result; - } - - static IGeometrySource2D CanvasGeometryToIGeometrySource2D(winrt::com_ptr geo) - { - return geo.as(); - } - - public: - LottieLogo1_AnimatedVisual(Compositor compositor) - : _c{compositor} - , _reusableExpressionAnimation(compositor.CreateExpressionAnimation()) - { - winrt::check_hresult(D2D1CreateFactory(D2D1_FACTORY_TYPE_SINGLE_THREADED, _d2dFactory.put())); - const auto _ = Root(); - } - - void Close() - { - if (_root) - { - _root.Close(); - } - } - - TimeSpan Duration() const - { - return TimeSpan{ c_durationTicks }; - } - - Visual RootVisual() const - { - return _root; - } - - float2 Size() const - { - return { 375.0F, 667.0F }; - } - - void CreateAnimations() - { - _containerShape_00.StartAnimation(L"Offset", OffsetVector2Animation_01(), AnimationController_0()); - _containerShape_00.StartAnimation(L"Scale", ShapeVisibilityAnimation_00(), AnimationController_0()); - _containerShape_01.StartAnimation(L"Offset", OffsetVector2Animation_00(), AnimationController_0()); - _containerShape_02.StartAnimation(L"Offset", OffsetVector2Animation_02(), AnimationController_0()); - _containerShape_02.StartAnimation(L"Scale", ShapeVisibilityAnimation_01(), AnimationController_0()); - _containerShape_03.StartAnimation(L"Offset", OffsetVector2Animation_02(), AnimationController_0()); - _containerShape_03.StartAnimation(L"Scale", ShapeVisibilityAnimation_02(), AnimationController_0()); - _containerShape_04.StartAnimation(L"Offset", OffsetVector2Animation_03(), AnimationController_0()); - _containerShape_04.StartAnimation(L"Scale", ShapeVisibilityAnimation_03(), AnimationController_0()); - _containerShape_05.StartAnimation(L"Offset", OffsetVector2Animation_03(), AnimationController_0()); - _containerShape_05.StartAnimation(L"Scale", ShapeVisibilityAnimation_04(), AnimationController_0()); - _containerShape_06.StartAnimation(L"Offset", OffsetVector2Animation_04(), AnimationController_0()); - _containerShape_06.StartAnimation(L"Scale", ShapeVisibilityAnimation_05(), AnimationController_0()); - _containerShape_07.StartAnimation(L"Offset", OffsetVector2Animation_04(), AnimationController_0()); - _containerShape_07.StartAnimation(L"Scale", ShapeVisibilityAnimation_06(), AnimationController_0()); - _containerShape_08.StartAnimation(L"Offset", OffsetVector2Animation_05(), AnimationController_0()); - _containerShape_08.StartAnimation(L"Scale", ShapeVisibilityAnimation_07(), AnimationController_0()); - _containerShape_09.StartAnimation(L"Offset", OffsetVector2Animation_05(), AnimationController_0()); - _containerShape_09.StartAnimation(L"Scale", ShapeVisibilityAnimation_08(), AnimationController_0()); - _containerShape_10.StartAnimation(L"Offset", OffsetVector2Animation_06(), AnimationController_0()); - _containerShape_10.StartAnimation(L"Scale", ShapeVisibilityAnimation_09(), AnimationController_0()); - _containerShape_11.StartAnimation(L"Offset", OffsetVector2Animation_07(), AnimationController_0()); - _containerShape_11.StartAnimation(L"Scale", ShapeVisibilityAnimation_14(), AnimationController_0()); - _containerShape_12.StartAnimation(L"Offset", OffsetVector2Animation_06(), AnimationController_0()); - _containerShape_12.StartAnimation(L"Scale", ShapeVisibilityAnimation_15(), AnimationController_0()); - _containerShape_13.StartAnimation(L"Offset", OffsetVector2Animation_06(), AnimationController_0()); - _containerShape_13.StartAnimation(L"Scale", ShapeVisibilityAnimation_17(), AnimationController_0()); - _containerShape_14.StartAnimation(L"Offset", OffsetVector2Animation_09(), AnimationController_0()); - _containerShape_14.StartAnimation(L"Scale", ShapeVisibilityAnimation_18(), AnimationController_0()); - _containerShape_15.StartAnimation(L"Offset", OffsetVector2Animation_08(), AnimationController_0()); - _containerShape_16.StartAnimation(L"Offset", OffsetVector2Animation_10(), AnimationController_1()); - _containerShape_16.StartAnimation(L"Scale", ShapeVisibilityAnimation_21(), AnimationController_0()); - _containerShape_17.StartAnimation(L"Scale", ShapeVisibilityAnimation_22(), AnimationController_0()); - _containerShape_18.StartAnimation(L"Scale", ShapeVisibilityAnimation_23(), AnimationController_0()); - _containerShape_19.StartAnimation(L"Scale", ShapeVisibilityAnimation_24(), AnimationController_0()); - _containerShape_20.StartAnimation(L"Scale", ShapeVisibilityAnimation_25(), AnimationController_0()); - _containerShape_21.StartAnimation(L"Scale", ShapeVisibilityAnimation_29(), AnimationController_0()); - _containerShape_22.StartAnimation(L"Scale", ShapeVisibilityAnimation_30(), AnimationController_0()); - _ellipse_0_0.StartAnimation(L"Radius", RadiusVector2Animation(), AnimationController_0()); - _ellipse_0_1.StartAnimation(L"Radius", RadiusVector2Animation(), AnimationController_0()); - _ellipse_0_1.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0_to_0p399(), AnimationController_0()); - _ellipse_0_1.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_1_to_0p88(), AnimationController_0()); - _pathGeometry_00.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p316_0(), AnimationController_0()); - _pathGeometry_01.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p316_1(), AnimationController_0()); - _pathGeometry_02.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p457_0(), AnimationController_0()); - _pathGeometry_03.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p457_1(), AnimationController_0()); - _pathGeometry_04.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p43_0(), AnimationController_0()); - _pathGeometry_05.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p43_1(), AnimationController_0()); - _pathGeometry_06.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p375_0(), AnimationController_0()); - _pathGeometry_07.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0_to_0p375_1(), AnimationController_0()); - _pathGeometry_08.StartAnimation(L"TStart", TStartScalarAnimation_0_to_0p249(), AnimationController_0()); - _pathGeometry_08.StartAnimation(L"TEnd", TEndScalarAnimation_0_to_1_0(), AnimationController_0()); - _pathGeometry_09.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p29_to_0_0(), AnimationController_0()); - _pathGeometry_09.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p411_to_0p665_0(), AnimationController_0()); - _pathGeometry_10.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p5_to_0_0(), AnimationController_0()); - _pathGeometry_10.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p5_to_1_0(), AnimationController_0()); - _pathGeometry_11.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p29_to_0_1(), AnimationController_0()); - _pathGeometry_11.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p411_to_0p665_1(), AnimationController_0()); - _pathGeometry_12.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p117_to_1_0(), AnimationController_0()); - _pathGeometry_13.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p117_to_1_1(), AnimationController_0()); - _pathGeometry_14.StartAnimation(L"TStart", TStartScalarAnimation_0_to_0p249(), AnimationController_0()); - _pathGeometry_14.StartAnimation(L"TEnd", TEndScalarAnimation_0_to_1_1(), AnimationController_0()); - _pathGeometry_15.StartAnimation(L"TrimStart", TrimStartScalarAnimation_0p5_to_0_1(), AnimationController_0()); - _pathGeometry_15.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p5_to_1_1(), AnimationController_0()); - _pathGeometry_16.StartAnimation(L"TrimEnd", TrimEndScalarAnimation_0p249_to_0p891(), AnimationController_0()); - _pathGeometry_17.StartAnimation(L"TStart", TStartScalarAnimation_0p8_to_0(), AnimationController_0()); - _pathGeometry_17.StartAnimation(L"TEnd", TEndScalarAnimation_0p81_to_0p734_0(), AnimationController_0()); - _pathGeometry_18.StartAnimation(L"TStart", TStartScalarAnimation_0p8_to_0p3(), AnimationController_0()); - _pathGeometry_18.StartAnimation(L"TEnd", TEndScalarAnimation_0p81_to_0p734_1(), AnimationController_0()); - _pathGeometry_19.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_00(), AnimationController_0()); - _pathGeometry_19.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_00(), AnimationController_0()); - _pathGeometry_20.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_01(), AnimationController_0()); - _pathGeometry_20.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_01(), AnimationController_0()); - _pathGeometry_21.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_02(), AnimationController_0()); - _pathGeometry_21.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_02(), AnimationController_0()); - _pathGeometry_22.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_02(), AnimationController_0()); - _pathGeometry_22.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_02(), AnimationController_0()); - _pathGeometry_23.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_03(), AnimationController_0()); - _pathGeometry_23.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_03(), AnimationController_0()); - _pathGeometry_24.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_04(), AnimationController_0()); - _pathGeometry_24.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_03(), AnimationController_0()); - _pathGeometry_25.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_05(), AnimationController_0()); - _pathGeometry_25.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_04(), AnimationController_0()); - _pathGeometry_26.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_06(), AnimationController_0()); - _pathGeometry_26.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_05(), AnimationController_0()); - _pathGeometry_27.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_07(), AnimationController_0()); - _pathGeometry_27.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_06(), AnimationController_0()); - _pathGeometry_28.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_08(), AnimationController_0()); - _pathGeometry_28.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_06(), AnimationController_0()); - _pathGeometry_29.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_09(), AnimationController_0()); - _pathGeometry_29.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_07(), AnimationController_0()); - _pathGeometry_30.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_10(), AnimationController_0()); - _pathGeometry_30.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_08(), AnimationController_0()); - _pathGeometry_31.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_11(), AnimationController_0()); - _pathGeometry_31.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_09(), AnimationController_0()); - _pathGeometry_32.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_12(), AnimationController_0()); - _pathGeometry_32.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_10(), AnimationController_0()); - _pathGeometry_33.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_13(), AnimationController_0()); - _pathGeometry_33.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_11(), AnimationController_0()); - _pathGeometry_34.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_14(), AnimationController_0()); - _pathGeometry_34.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_11(), AnimationController_0()); - _pathGeometry_35.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_15(), AnimationController_0()); - _pathGeometry_35.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_12(), AnimationController_0()); - _pathGeometry_36.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_16(), AnimationController_0()); - _pathGeometry_36.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_13(), AnimationController_0()); - _pathGeometry_37.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_17(), AnimationController_0()); - _pathGeometry_37.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_13(), AnimationController_0()); - _pathGeometry_38.StartAnimation(L"TStart", TStartScalarAnimation_0p87_to_0_18(), AnimationController_0()); - _pathGeometry_38.StartAnimation(L"TEnd", TEndScalarAnimation_1_to_0_14(), AnimationController_0()); - _spriteShape_11.StartAnimation(L"Scale", ShapeVisibilityAnimation_10(), AnimationController_0()); - _spriteShape_12.StartAnimation(L"Scale", ShapeVisibilityAnimation_11(), AnimationController_0()); - _spriteShape_13.StartAnimation(L"Scale", ShapeVisibilityAnimation_12(), AnimationController_0()); - _spriteShape_14.StartAnimation(L"Scale", ShapeVisibilityAnimation_13(), AnimationController_0()); - _spriteShape_15.StartAnimation(L"Scale", ShapeVisibilityAnimation_04(), AnimationController_0()); - _spriteShape_19.StartAnimation(L"Scale", ShapeVisibilityAnimation_16(), AnimationController_0()); - _spriteShape_22.StartAnimation(L"Scale", ShapeVisibilityAnimation_19(), AnimationController_0()); - _spriteShape_23.StartAnimation(L"Scale", ShapeVisibilityAnimation_20(), AnimationController_0()); - _spriteShape_36.StartAnimation(L"Scale", ShapeVisibilityAnimation_26(), AnimationController_0()); - _spriteShape_37.StartAnimation(L"Scale", ShapeVisibilityAnimation_27(), AnimationController_0()); - _spriteShape_38.StartAnimation(L"Scale", ShapeVisibilityAnimation_28(), AnimationController_0()); - _root.Properties().StartAnimation(L"t0", t0ScalarAnimation_0_to_1(), AnimationController_0()); - } - - void DestroyAnimations() - { - _containerShape_00.StopAnimation(L"Offset"); - _containerShape_00.StopAnimation(L"Scale"); - _containerShape_01.StopAnimation(L"Offset"); - _containerShape_02.StopAnimation(L"Offset"); - _containerShape_02.StopAnimation(L"Scale"); - _containerShape_03.StopAnimation(L"Offset"); - _containerShape_03.StopAnimation(L"Scale"); - _containerShape_04.StopAnimation(L"Offset"); - _containerShape_04.StopAnimation(L"Scale"); - _containerShape_05.StopAnimation(L"Offset"); - _containerShape_05.StopAnimation(L"Scale"); - _containerShape_06.StopAnimation(L"Offset"); - _containerShape_06.StopAnimation(L"Scale"); - _containerShape_07.StopAnimation(L"Offset"); - _containerShape_07.StopAnimation(L"Scale"); - _containerShape_08.StopAnimation(L"Offset"); - _containerShape_08.StopAnimation(L"Scale"); - _containerShape_09.StopAnimation(L"Offset"); - _containerShape_09.StopAnimation(L"Scale"); - _containerShape_10.StopAnimation(L"Offset"); - _containerShape_10.StopAnimation(L"Scale"); - _containerShape_11.StopAnimation(L"Offset"); - _containerShape_11.StopAnimation(L"Scale"); - _containerShape_12.StopAnimation(L"Offset"); - _containerShape_12.StopAnimation(L"Scale"); - _containerShape_13.StopAnimation(L"Offset"); - _containerShape_13.StopAnimation(L"Scale"); - _containerShape_14.StopAnimation(L"Offset"); - _containerShape_14.StopAnimation(L"Scale"); - _containerShape_15.StopAnimation(L"Offset"); - _containerShape_16.StopAnimation(L"Offset"); - _containerShape_16.StopAnimation(L"Scale"); - _containerShape_17.StopAnimation(L"Scale"); - _containerShape_18.StopAnimation(L"Scale"); - _containerShape_19.StopAnimation(L"Scale"); - _containerShape_20.StopAnimation(L"Scale"); - _containerShape_21.StopAnimation(L"Scale"); - _containerShape_22.StopAnimation(L"Scale"); - _ellipse_0_0.StopAnimation(L"Radius"); - _ellipse_0_1.StopAnimation(L"Radius"); - _ellipse_0_1.StopAnimation(L"TrimStart"); - _ellipse_0_1.StopAnimation(L"TrimEnd"); - _pathGeometry_00.StopAnimation(L"TrimEnd"); - _pathGeometry_01.StopAnimation(L"TrimEnd"); - _pathGeometry_02.StopAnimation(L"TrimEnd"); - _pathGeometry_03.StopAnimation(L"TrimEnd"); - _pathGeometry_04.StopAnimation(L"TrimEnd"); - _pathGeometry_05.StopAnimation(L"TrimEnd"); - _pathGeometry_06.StopAnimation(L"TrimEnd"); - _pathGeometry_07.StopAnimation(L"TrimEnd"); - _pathGeometry_08.StopAnimation(L"TStart"); - _pathGeometry_08.StopAnimation(L"TEnd"); - _pathGeometry_09.StopAnimation(L"TrimStart"); - _pathGeometry_09.StopAnimation(L"TrimEnd"); - _pathGeometry_10.StopAnimation(L"TrimStart"); - _pathGeometry_10.StopAnimation(L"TrimEnd"); - _pathGeometry_11.StopAnimation(L"TrimStart"); - _pathGeometry_11.StopAnimation(L"TrimEnd"); - _pathGeometry_12.StopAnimation(L"TrimEnd"); - _pathGeometry_13.StopAnimation(L"TrimEnd"); - _pathGeometry_14.StopAnimation(L"TStart"); - _pathGeometry_14.StopAnimation(L"TEnd"); - _pathGeometry_15.StopAnimation(L"TrimStart"); - _pathGeometry_15.StopAnimation(L"TrimEnd"); - _pathGeometry_16.StopAnimation(L"TrimEnd"); - _pathGeometry_17.StopAnimation(L"TStart"); - _pathGeometry_17.StopAnimation(L"TEnd"); - _pathGeometry_18.StopAnimation(L"TStart"); - _pathGeometry_18.StopAnimation(L"TEnd"); - _pathGeometry_19.StopAnimation(L"TStart"); - _pathGeometry_19.StopAnimation(L"TEnd"); - _pathGeometry_20.StopAnimation(L"TStart"); - _pathGeometry_20.StopAnimation(L"TEnd"); - _pathGeometry_21.StopAnimation(L"TStart"); - _pathGeometry_21.StopAnimation(L"TEnd"); - _pathGeometry_22.StopAnimation(L"TStart"); - _pathGeometry_22.StopAnimation(L"TEnd"); - _pathGeometry_23.StopAnimation(L"TStart"); - _pathGeometry_23.StopAnimation(L"TEnd"); - _pathGeometry_24.StopAnimation(L"TStart"); - _pathGeometry_24.StopAnimation(L"TEnd"); - _pathGeometry_25.StopAnimation(L"TStart"); - _pathGeometry_25.StopAnimation(L"TEnd"); - _pathGeometry_26.StopAnimation(L"TStart"); - _pathGeometry_26.StopAnimation(L"TEnd"); - _pathGeometry_27.StopAnimation(L"TStart"); - _pathGeometry_27.StopAnimation(L"TEnd"); - _pathGeometry_28.StopAnimation(L"TStart"); - _pathGeometry_28.StopAnimation(L"TEnd"); - _pathGeometry_29.StopAnimation(L"TStart"); - _pathGeometry_29.StopAnimation(L"TEnd"); - _pathGeometry_30.StopAnimation(L"TStart"); - _pathGeometry_30.StopAnimation(L"TEnd"); - _pathGeometry_31.StopAnimation(L"TStart"); - _pathGeometry_31.StopAnimation(L"TEnd"); - _pathGeometry_32.StopAnimation(L"TStart"); - _pathGeometry_32.StopAnimation(L"TEnd"); - _pathGeometry_33.StopAnimation(L"TStart"); - _pathGeometry_33.StopAnimation(L"TEnd"); - _pathGeometry_34.StopAnimation(L"TStart"); - _pathGeometry_34.StopAnimation(L"TEnd"); - _pathGeometry_35.StopAnimation(L"TStart"); - _pathGeometry_35.StopAnimation(L"TEnd"); - _pathGeometry_36.StopAnimation(L"TStart"); - _pathGeometry_36.StopAnimation(L"TEnd"); - _pathGeometry_37.StopAnimation(L"TStart"); - _pathGeometry_37.StopAnimation(L"TEnd"); - _pathGeometry_38.StopAnimation(L"TStart"); - _pathGeometry_38.StopAnimation(L"TEnd"); - _spriteShape_11.StopAnimation(L"Scale"); - _spriteShape_12.StopAnimation(L"Scale"); - _spriteShape_13.StopAnimation(L"Scale"); - _spriteShape_14.StopAnimation(L"Scale"); - _spriteShape_15.StopAnimation(L"Scale"); - _spriteShape_19.StopAnimation(L"Scale"); - _spriteShape_22.StopAnimation(L"Scale"); - _spriteShape_23.StopAnimation(L"Scale"); - _spriteShape_36.StopAnimation(L"Scale"); - _spriteShape_37.StopAnimation(L"Scale"); - _spriteShape_38.StopAnimation(L"Scale"); - _root.Properties().StopAnimation(L"t0"); - } - - }; - - winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual LottieLogo1::TryCreateAnimatedVisual( - Compositor const& compositor) - { - IInspectable diagnostics = nullptr; - return TryCreateAnimatedVisual(compositor, diagnostics); - } - - winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual LottieLogo1::TryCreateAnimatedVisual( - Compositor const& compositor, - IInspectable& diagnostics) - { - diagnostics = nullptr; - auto result = winrt::make(compositor); - result.CreateAnimations(); - return result; - } - - double LottieLogo1::FrameCount() - { - return 179.0; - } - - double LottieLogo1::Framerate() - { - return 30.0; - } - - TimeSpan LottieLogo1::Duration() - { - return TimeSpan{ 59666666L }; - } - - double LottieLogo1::FrameToProgress(double frameNumber) - { - return frameNumber / 179.0; - } - - winrt::Windows::Foundation::Collections::IMapView LottieLogo1::Markers() - { - return winrt::single_threaded_map( - std::map - { - } - ).GetView(); - } - - void LottieLogo1::SetColorProperty(hstring const&, Color) - { - } - - void LottieLogo1::SetScalarProperty(hstring const&, double) - { - } -} // end namespace diff --git a/SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.h b/SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.h deleted file mode 100644 index aa1f90655..000000000 --- a/SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.h +++ /dev/null @@ -1,77 +0,0 @@ -#pragma once -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// -// LottieGen version: -// 8.0.230813-rc.7+0443b1e789 -// -// Command: -// LottieGen -Language Cppwinrt -RootNamespace SimpleIslandApp -WinUIVersion 3.0 -InputFile LottieLogo1.json -// -// Input file: -// LottieLogo1.json (190271 bytes created 0:40-04:00 Mar 13 2024) -// -// LottieGen source: -// http://aka.ms/Lottie -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ -#include "AnimatedVisuals.LottieLogo1.g.h" - -namespace winrt::AnimatedVisuals -{ - // Frame rate: 30 fps - // Frame count: 179 - // Duration: 5966.7 mS - namespace implementation - { - class LottieLogo1 - : public LottieLogo1T - { - public: - // Animation duration: 5.967 seconds. - static constexpr int64_t c_durationTicks{ 59666666L }; - - winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual TryCreateAnimatedVisual( - winrt::Microsoft::UI::Composition::Compositor const& compositor); - - winrt::Microsoft::UI::Xaml::Controls::IAnimatedVisual TryCreateAnimatedVisual( - winrt::Microsoft::UI::Composition::Compositor const& compositor, - winrt::Windows::Foundation::IInspectable& diagnostics); - - // Gets the number of frames in the animation. - double FrameCount(); - - // Gets the framerate of the animation. - double Framerate(); - - // Gets the duration of the animation. - winrt::Windows::Foundation::TimeSpan Duration(); - - // Converts a zero-based frame number to the corresponding progress value denoting the - // start of the frame. - double FrameToProgress(double frameNumber); - - // Returns a map from marker names to corresponding progress values. - winrt::Windows::Foundation::Collections::IMapView Markers(); - - // Sets the color property with the given name, or does nothing if no such property - // exists. - void SetColorProperty(hstring const& propertyName, winrt::Windows::UI::Color value); - - // Sets the scalar property with the given name, or does nothing if no such property - // exists. - void SetScalarProperty(hstring const& propertyName, double value); - }; - } - - namespace factory_implementation - { - struct LottieLogo1 : LottieLogo1T - { - }; - } -} diff --git a/SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.idl b/SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.idl deleted file mode 100644 index 571cbbb15..000000000 --- a/SimpleLottieIslandApp/AnimatedVisuals.LottieLogo1.idl +++ /dev/null @@ -1,29 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// -// LottieGen version: -// 8.0.230813-rc.7+0443b1e789 -// -// Command: -// LottieGen -Language Cppwinrt -RootNamespace SimpleIslandApp -WinUIVersion 3.0 -InputFile LottieLogo1.json -// -// Input file: -// LottieLogo1.json (190271 bytes created 0:40-04:00 Mar 13 2024) -// -// LottieGen source: -// http://aka.ms/Lottie -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ -namespace AnimatedVisuals -{ - runtimeclass LottieLogo1 - : [default] Microsoft.UI.Xaml.Controls.IAnimatedVisualSource - , Microsoft.UI.Xaml.Controls.IAnimatedVisualSource2 - { - LottieLogo1(); - }; -} diff --git a/source/Lottie/DotLottieLoader.cs b/source/Lottie/DotLottieLoader.cs index 20ebd1a50..853edcb15 100644 --- a/source/Lottie/DotLottieLoader.cs +++ b/source/Lottie/DotLottieLoader.cs @@ -15,7 +15,6 @@ #if WINAPPSDK using Microsoft.UI.Composition; -// using Microsoft.UI.Xaml.Media; #else using Windows.UI.Composition; using Windows.UI.Xaml.Media; diff --git a/source/Lottie/Instantiator.cs b/source/Lottie/Instantiator.cs index c052ebd3a..f7c9169b8 100644 --- a/source/Lottie/Instantiator.cs +++ b/source/Lottie/Instantiator.cs @@ -21,7 +21,6 @@ #if WINAPPSDK using Wc = Microsoft.UI.Composition; -//using Wm = Microsoft.UI.Xaml.Media; #else using Wc = Windows.UI.Composition; using Wm = Windows.UI.Xaml.Media; diff --git a/source/Lottie/LottieVisualSource.cs b/source/Lottie/LottieVisualSource.cs index 9613618f2..f60cb7181 100644 --- a/source/Lottie/LottieVisualSource.cs +++ b/source/Lottie/LottieVisualSource.cs @@ -14,7 +14,6 @@ using Windows.Foundation.Metadata; using Windows.Storage; using Windows.Storage.Streams; -using static CommunityToolkit.WinUI.Lottie.LottieData.Serialization.LottieCompositionReader; #if WINAPPSDK using Microsoft.UI.Composition; From d8752d4ffc3f882e6e1f1e5a1f99b373124eda98 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Mon, 29 Apr 2024 13:10:29 -0400 Subject: [PATCH 36/40] Bump Lottie-Windows TFM to 19041 --- .../Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj b/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj index c92b7cfe0..315456fcd 100644 --- a/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj +++ b/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj @@ -1,7 +1,7 @@  - net7.0-windows10.0.18362.0 + net7.0-windows10.0.19041.0 true Library From 845f6f3470298b2d6ab455620197c74e9c9b97e0 Mon Sep 17 00:00:00 2001 From: Adib Parkar Date: Tue, 7 May 2024 14:20:27 -0700 Subject: [PATCH 37/40] Add UIA support --- .../Lottie-Windows-WinUI3-Controls.csproj | 2 +- .../Lottie-Windows-WinUI3.csproj | 2 +- LottieIsland/AutomationBase.cpp | 44 +++ LottieIsland/AutomationBase.h | 102 ++++++ LottieIsland/AutomationCallbackHandler.h | 75 +++++ LottieIsland/AutomationCallbackRevoker.h | 57 ++++ LottieIsland/AutomationElement.cpp | 116 +++++++ LottieIsland/AutomationElement.h | 43 +++ LottieIsland/AutomationFragment.cpp | 312 ++++++++++++++++++ LottieIsland/AutomationFragment.h | 68 ++++ LottieIsland/AutomationFragmentRoot.cpp | 56 ++++ LottieIsland/AutomationFragmentRoot.h | 25 ++ LottieIsland/LottieContentIsland.cpp | 67 ++++ LottieIsland/LottieContentIsland.h | 31 +- LottieIsland/LottieIsland.vcxproj | 30 +- LottieIsland/LottieIsland.vcxproj.filters | 41 ++- .../LottieIslandAutomationProvider.cpp | 33 ++ LottieIsland/LottieIslandAutomationProvider.h | 19 ++ LottieIsland/packages.config | 5 +- .../LottieIslandProjection.csproj | 4 +- LottieWinRT/LottieWinRT.csproj | 8 +- .../SimpleLottieIslandApp.vcxproj | 24 +- SimpleLottieIslandApp/packages.config | 6 +- 23 files changed, 1135 insertions(+), 35 deletions(-) create mode 100644 LottieIsland/AutomationBase.cpp create mode 100644 LottieIsland/AutomationBase.h create mode 100644 LottieIsland/AutomationCallbackHandler.h create mode 100644 LottieIsland/AutomationCallbackRevoker.h create mode 100644 LottieIsland/AutomationElement.cpp create mode 100644 LottieIsland/AutomationElement.h create mode 100644 LottieIsland/AutomationFragment.cpp create mode 100644 LottieIsland/AutomationFragment.h create mode 100644 LottieIsland/AutomationFragmentRoot.cpp create mode 100644 LottieIsland/AutomationFragmentRoot.h create mode 100644 LottieIsland/LottieIslandAutomationProvider.cpp create mode 100644 LottieIsland/LottieIslandAutomationProvider.h diff --git a/Lottie-Windows-WinUI3-Controls/Lottie-Windows-WinUI3-Controls.csproj b/Lottie-Windows-WinUI3-Controls/Lottie-Windows-WinUI3-Controls.csproj index 88f5b1bfb..e71fb584c 100644 --- a/Lottie-Windows-WinUI3-Controls/Lottie-Windows-WinUI3-Controls.csproj +++ b/Lottie-Windows-WinUI3-Controls/Lottie-Windows-WinUI3-Controls.csproj @@ -14,7 +14,7 @@ - + diff --git a/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj b/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj index 315456fcd..74b74ec86 100644 --- a/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj +++ b/Lottie-Windows/Lottie-Windows-WinUI3/Lottie-Windows-WinUI3.csproj @@ -17,7 +17,7 @@ - + diff --git a/LottieIsland/AutomationBase.cpp b/LottieIsland/AutomationBase.cpp new file mode 100644 index 000000000..bf3c30ec9 --- /dev/null +++ b/LottieIsland/AutomationBase.cpp @@ -0,0 +1,44 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +#include "pch.h" +#include "AutomationBase.h" + +namespace AutomationHelpers +{ + +void AutomationBase::RemoveHandler( + IAutomationCallbackHandler const* const handler) +{ + std::unique_lock lock{ m_mutex }; + + auto iterator = std::remove_if( + m_handlers.begin(), m_handlers.end(), [handler](auto const& handlerEntry) + { + return handlerEntry.Match(handler); + }); + + m_handlers.erase(iterator, m_handlers.end()); +} + +void AutomationBase::AddHandler( + AutomationCallbackHandlerType const& type, + IAutomationCallbackHandler* const handler) +{ + std::unique_lock lock{ m_mutex }; + + // Remove any existing handler of the same type. + auto iterator = std::remove_if( + m_handlers.begin(), m_handlers.end(), [type](auto const& handlerEntry) + { + return handlerEntry.Match(type); + }); + + m_handlers.erase(iterator, m_handlers.end()); + + if (nullptr != handler) + { + m_handlers.emplace_back(AutomationCallbackHandlerEntry{ type, handler }); + } +} + +} \ No newline at end of file diff --git a/LottieIsland/AutomationBase.h b/LottieIsland/AutomationBase.h new file mode 100644 index 000000000..fa18bd6d3 --- /dev/null +++ b/LottieIsland/AutomationBase.h @@ -0,0 +1,102 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +#pragma once +#include +#include "AutomationCallbackHandler.h" + +namespace AutomationHelpers +{ + +struct AutomationBase : winrt::implements +{ + [[nodiscard]] winrt::weak_ref GetWeak() const noexcept + { + try + { + return const_cast(this)->get_weak(); + } + catch (...) {} + return nullptr; + } + + template + [[nodiscard]] inline static winrt::com_ptr LockWeak( + winrt::weak_ref const& weakRef) noexcept + { + static_assert(std::is_base_of_v); + + try + { + if (nullptr != weakRef) + { + winrt::com_ptr weakRefGet = weakRef.get(); + if (nullptr != weakRefGet) + { + winrt::com_ptr strongRef{ nullptr }; + strongRef.copy_from(static_cast(weakRefGet.get())); + return strongRef; + } + } + } + catch (...) {} + return nullptr; + } + + template + [[nodiscard]] winrt::com_ptr GetStrong() const noexcept + { + static_assert(std::is_base_of_v); + + try + { + return static_cast(const_cast(this))->get_strong(); + } + catch (...) {} + return nullptr; + } + + template + [[nodiscard]] IUnknown* GetIUnknown() const noexcept + { + static_assert(std::is_base_of_v); + + try + { + return GetStrong().as().get(); + } + catch (...) {} + return nullptr; + } + + void RemoveHandler( + IAutomationCallbackHandler const* const handler); + +protected: + void AddHandler( + AutomationCallbackHandlerType const& type, + IAutomationCallbackHandler* const handler); + + template + [[nodiscard]] HandlerT* GetHandler( + AutomationCallbackHandlerType const& type) const + { + static_assert(std::is_base_of_v); + + std::unique_lock lock{ m_mutex }; + + auto iterator = std::find_if( + m_handlers.cbegin(), m_handlers.cend(), [&type](auto const& handlerEntry) + { + return handlerEntry.Match(type); + }); + + return (m_handlers.cend() != iterator) ? iterator->Get() : nullptr; + } + + mutable std::mutex m_mutex{}; + +private: + std::vector m_handlers{}; +}; + +} \ No newline at end of file diff --git a/LottieIsland/AutomationCallbackHandler.h b/LottieIsland/AutomationCallbackHandler.h new file mode 100644 index 000000000..0d720d0a3 --- /dev/null +++ b/LottieIsland/AutomationCallbackHandler.h @@ -0,0 +1,75 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +#pragma once +#include +#include +#include + +namespace AutomationHelpers +{ + +enum class AutomationCallbackHandlerType : unsigned char +{ + None, + Fragment, + FragmentRoot, + Invoke +}; + +struct IAutomationCallbackHandler +{ + virtual ~IAutomationCallbackHandler() noexcept = default; +}; + +struct IAutomationFragmentCallbackHandler : IAutomationCallbackHandler +{ + virtual winrt::Windows::Graphics::RectInt32 GetBoundingRectangleInScreenSpaceForAutomation( + ::IUnknown const* const sender) const = 0; + + virtual void HandleSetFocusForAutomation( + ::IUnknown const* const sender) = 0; +}; + +struct IAutomationFragmentRootCallbackHandler : IAutomationCallbackHandler +{ + virtual winrt::com_ptr<::IRawElementProviderFragment> GetFragmentFromPointForAutomation( + double x, + double y, + ::IUnknown const* const sender) const = 0; + + virtual winrt::com_ptr<::IRawElementProviderFragment> GetFragmentInFocusForAutomation( + ::IUnknown const* const sender) const = 0; +}; + +struct IAutomationInvokeCallbackHandler : IAutomationCallbackHandler +{ + virtual void HandleInvokeForAutomation( + ::IUnknown const* const sender) = 0; +}; + +struct AutomationCallbackHandlerEntry +{ + explicit AutomationCallbackHandlerEntry( + AutomationCallbackHandlerType const& type, + IAutomationCallbackHandler* const handler) : + _type{ type }, _handler{ handler } {} + + bool Match( + AutomationCallbackHandlerType const& type) const { return type == _type; } + + bool Match( + IAutomationCallbackHandler const* const handler) const { return handler == _handler; } + + template + DerivedT* Get() const + { + static_assert(std::is_base_of_v); + return static_cast(_handler); + } + +private: + AutomationCallbackHandlerType _type{ AutomationCallbackHandlerType::None }; + IAutomationCallbackHandler* _handler{ nullptr }; +}; + +} \ No newline at end of file diff --git a/LottieIsland/AutomationCallbackRevoker.h b/LottieIsland/AutomationCallbackRevoker.h new file mode 100644 index 000000000..6ceb07991 --- /dev/null +++ b/LottieIsland/AutomationCallbackRevoker.h @@ -0,0 +1,57 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +#pragma once +#include "AutomationBase.h" + +namespace AutomationHelpers +{ + +struct AutomationCallbackRevoker +{ + [[nodiscard]] static std::unique_ptr Create( + winrt::weak_ref const& automationObject, + IAutomationCallbackHandler* const handler) noexcept + { + try + { + auto newRevoker = std::make_unique(); + newRevoker->Initialize(automationObject, handler); + return newRevoker; + } + catch (...) {} + return nullptr; + } + + explicit AutomationCallbackRevoker() noexcept = default; + + ~AutomationCallbackRevoker() noexcept + { + if (auto strongAutomationObject = _automationObject.get()) + { + if (nullptr != _handler) + { + strongAutomationObject->RemoveHandler(_handler); + } + } + } + + // Disable move and copy. + explicit AutomationCallbackRevoker(AutomationCallbackRevoker const&) = delete; + explicit AutomationCallbackRevoker(AutomationCallbackRevoker&&) = delete; + AutomationCallbackRevoker& operator=(AutomationCallbackRevoker const&) = delete; + AutomationCallbackRevoker& operator=(AutomationCallbackRevoker&&) = delete; + +private: + void Initialize( + winrt::weak_ref const& automationObject, + IAutomationCallbackHandler* const handler) + { + _automationObject = automationObject; + _handler = handler; + } + + winrt::weak_ref _automationObject{ nullptr }; + IAutomationCallbackHandler* _handler{ nullptr }; +}; + +} \ No newline at end of file diff --git a/LottieIsland/AutomationElement.cpp b/LottieIsland/AutomationElement.cpp new file mode 100644 index 000000000..6c117a16f --- /dev/null +++ b/LottieIsland/AutomationElement.cpp @@ -0,0 +1,116 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +#include "pch.h" +#include "AutomationElement.h" +#include + +namespace AutomationHelpers +{ + +HRESULT __stdcall AutomationElement::get_ProviderOptions( + _Out_ ::ProviderOptions* providerOptions) +{ + try + { + std::unique_lock lock{ m_mutex }; + if (nullptr != providerOptions) + { + *providerOptions = m_providerOptions; + } + } + catch (...) { return UIA_E_ELEMENTNOTAVAILABLE; } + return S_OK; +} + +HRESULT __stdcall AutomationElement::GetPatternProvider( + _In_ PATTERNID patternId, + _COM_Outptr_opt_result_maybenull_ ::IUnknown** patternProvider) +{ + try + { + std::unique_lock lock{ m_mutex }; + if (nullptr != patternProvider) + { + *patternProvider = nullptr; + switch (patternId) + { + case UIA_InvokePatternId: + { + if (auto invokeProvider = get_strong().try_as<::IInvokeProvider>()) + { + invokeProvider.as<::IUnknown>().copy_to(patternProvider); + } + break; + } + } + } + } + catch (...) { return UIA_E_ELEMENTNOTAVAILABLE; } + return S_OK; +} + +HRESULT __stdcall AutomationElement::GetPropertyValue( + _In_ PROPERTYID propertyId, + _Out_ VARIANT* propertyValue) +{ + try + { + std::unique_lock lock{ m_mutex }; + if (nullptr != propertyValue) + { + ::VariantInit(propertyValue); + switch (propertyId) + { + case UIA_NamePropertyId: + { + propertyValue->bstrVal = wil::make_bstr(m_name.c_str()).release(); + propertyValue->vt = VT_BSTR; + break; + } + + case UIA_IsContentElementPropertyId: + { + propertyValue->boolVal = m_isContent ? VARIANT_TRUE : VARIANT_FALSE; + propertyValue->vt = VT_BOOL; + break; + } + + case UIA_IsControlElementPropertyId: + { + propertyValue->boolVal = m_isControl ? VARIANT_TRUE : VARIANT_FALSE; + propertyValue->vt = VT_BOOL; + break; + } + + case UIA_ControlTypePropertyId: + { + if (m_isControl) + { + propertyValue->vt = VT_I4; + propertyValue->lVal = m_uiaControlTypeId; + } + break; + } + } + } + } + catch (...) { return UIA_E_ELEMENTNOTAVAILABLE; } + return S_OK; +} + +HRESULT __stdcall AutomationElement::get_HostRawElementProvider( + _COM_Outptr_opt_result_maybenull_ ::IRawElementProviderSimple** hostRawElementProviderSimple) +{ + try + { + std::unique_lock lock{ m_mutex }; + if (nullptr != hostRawElementProviderSimple) + { + m_hostProvider.copy_to(hostRawElementProviderSimple); + } + } + catch (...) { return UIA_E_ELEMENTNOTAVAILABLE; } + return S_OK; +} + +} \ No newline at end of file diff --git a/LottieIsland/AutomationElement.h b/LottieIsland/AutomationElement.h new file mode 100644 index 000000000..bea39ce06 --- /dev/null +++ b/LottieIsland/AutomationElement.h @@ -0,0 +1,43 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +#pragma once +#include "AutomationBase.h" + +namespace AutomationHelpers +{ + +struct AutomationElement : winrt::implements +{ + // Settable properties. + void ProviderOptions(::ProviderOptions const& providerOptions) { std::unique_lock lock{ m_mutex }; m_providerOptions = providerOptions; } + void Name(std::wstring_view const& name) { std::unique_lock lock{ m_mutex }; m_name = name; } + void IsContent(bool const& isContent) { std::unique_lock lock{ m_mutex }; m_isContent = isContent; } + void IsControl(bool const& isControl) { std::unique_lock lock{ m_mutex }; m_isControl = isControl; } + void UiaControlTypeId(long const& uiaControlTypeId) { std::unique_lock lock{ m_mutex }; m_uiaControlTypeId = uiaControlTypeId; } + void HostProvider(winrt::com_ptr<::IRawElementProviderSimple> const& hostProvider) { std::unique_lock lock{ m_mutex }; m_hostProvider = hostProvider; } + + // IRawElementProviderSimple implementation. + HRESULT __stdcall get_ProviderOptions( + _Out_ ::ProviderOptions* providerOptions) final override; + + HRESULT __stdcall GetPatternProvider( + _In_ PATTERNID patternId, + _COM_Outptr_opt_result_maybenull_ ::IUnknown** patternProvider) final override; + + HRESULT __stdcall GetPropertyValue( + _In_ PROPERTYID propertyId, + _Out_ VARIANT* propertyValue) final override; + + HRESULT __stdcall get_HostRawElementProvider( + _COM_Outptr_opt_result_maybenull_ ::IRawElementProviderSimple** hostRawElementProviderSimple) final override; + +private: + ::ProviderOptions m_providerOptions{ ProviderOptions_ServerSideProvider | ProviderOptions_UseComThreading }; + std::wstring m_name{ L"" }; + bool m_isContent{ true }; + bool m_isControl{ true }; + long m_uiaControlTypeId{ UIA_CustomControlTypeId }; + winrt::com_ptr<::IRawElementProviderSimple> m_hostProvider{ nullptr }; +}; + +} \ No newline at end of file diff --git a/LottieIsland/AutomationFragment.cpp b/LottieIsland/AutomationFragment.cpp new file mode 100644 index 000000000..aea5ac69c --- /dev/null +++ b/LottieIsland/AutomationFragment.cpp @@ -0,0 +1,312 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +#include "pch.h" +#include "AutomationFragment.h" +#include + +using unique_safearray = wil::unique_any; + +namespace AutomationHelpers +{ + +std::unique_ptr AutomationFragment::SetFragmentCallbackHandler( + IAutomationFragmentCallbackHandler* const handler) +{ + AddHandler(AutomationCallbackHandlerType::Fragment, handler); + return AutomationCallbackRevoker::Create(GetWeak(), handler); +} + +void AutomationFragment::AddChildToEnd( + winrt::com_ptr const& child) +{ + std::unique_lock lock{ m_mutex }; + + if (nullptr == child) + { + // Nothing to do. + return; + } + + // The child should not already have a parent. + winrt::check_bool(nullptr == child->Parent()); + + // Set us up as the parent for the new child. + child->Parent(GetWeak()); + + // Set up the sibling relationships. + if (!m_children.empty()) + { + auto& previousSiblingForNewChild = m_children.back(); + previousSiblingForNewChild->NextSibling(child); + child->PreviousSibling(previousSiblingForNewChild); + } + + // Finally add the child. + m_children.push_back(child); + + // Raise the UIA structure changed event. + winrt::check_hresult(::UiaRaiseStructureChangedEvent( + GetStrong().as().get(), + StructureChangeType_ChildAdded, + child->RuntimeId(), child->RuntimeIdSize())); +} + +void AutomationFragment::RemoveChild( + winrt::com_ptr const& child) +{ + std::unique_lock lock{ m_mutex }; + + if (nullptr == child) + { + // Nothing to do. + return; + } + + auto iterator = std::find_if( + m_children.begin(), m_children.end(), [&child](auto const& childEntry) + { + // See if we find a matching child entry in our children. + return (childEntry.as<::IUnknown>().get() == child.as<::IUnknown>().get()); + }); + + // We cannot remove a child that isn't ours. + winrt::check_bool(m_children.end() != iterator); + + // Remove us from the parent relationship with the child. + child->Parent(nullptr); + + // Reset the sibling relationships. + auto previousSibling = child->PreviousSibling(); + auto nextSibling = child->NextSibling(); + if (nullptr != previousSibling) + { + previousSibling->NextSibling(nextSibling); + } + if (nullptr != nextSibling) + { + nextSibling->PreviousSibling(previousSibling); + } + child->PreviousSibling(nullptr); + child->NextSibling(nullptr); + + // Finally, remove the child. + m_children.erase(iterator); + + // Raise the UIA structure changed event. + winrt::check_hresult(::UiaRaiseStructureChangedEvent( + GetStrong().as().get(), + StructureChangeType_ChildRemoved, + child->RuntimeId(), child->RuntimeIdSize())); +} + +void AutomationFragment::RemoveAllChildren() +{ + std::unique_lock lock{ m_mutex }; + + for (auto& child : m_children) + { + // Disconnect the relationships from all our children. + child->Parent(nullptr); + child->PreviousSibling(nullptr); + child->NextSibling(nullptr); + } + + // Remove all the children. + m_children.clear(); + + // Raise the UIA structure changed event. + winrt::check_hresult(::UiaRaiseStructureChangedEvent( + GetStrong().as().get(), + StructureChangeType_ChildrenBulkRemoved, + nullptr, 0)); +} + +HRESULT __stdcall AutomationFragment::Navigate( + _In_ NavigateDirection direction, + _COM_Outptr_opt_result_maybenull_ IRawElementProviderFragment** fragment) +{ + try + { + std::unique_lock lock{ m_mutex }; + if (nullptr != fragment) + { + *fragment = nullptr; + switch (direction) + { + case NavigateDirection_Parent: + { + if (auto strongParent = LockWeak(m_parent)) + { + strongParent.as().copy_to(fragment); + } + break; + } + case NavigateDirection_NextSibling: + { + if (auto strongSibling = LockWeak(m_nextSibling)) + { + strongSibling.as().copy_to(fragment); + } + break; + } + case NavigateDirection_PreviousSibling: + { + if (auto strongSibling = LockWeak(m_previousSibling)) + { + strongSibling.as().copy_to(fragment); + } + break; + } + case NavigateDirection_FirstChild: + { + if (!m_children.empty()) + { + m_children.front().as().copy_to(fragment); + } + break; + } + case NavigateDirection_LastChild: + { + if (!m_children.empty()) + { + m_children.back().as().copy_to(fragment); + } + break; + } + } + } + } + catch (...) { return UIA_E_ELEMENTNOTAVAILABLE; } + return S_OK; +} + +HRESULT __stdcall AutomationFragment::GetRuntimeId( + _Outptr_opt_result_maybenull_ SAFEARRAY** runtimeId) +{ + try + { + std::unique_lock lock{ m_mutex }; + if (nullptr != runtimeId) + { + *runtimeId = nullptr; + + unsigned long arraySizeAsUnsignedLong = static_cast(m_runtimeId.size()); + + unique_safearray runtimeIdArray{ ::SafeArrayCreateVector(VT_I4, 0, arraySizeAsUnsignedLong) }; + SAFEARRAY* rawPointerToSafeArray = runtimeIdArray.get(); + winrt::check_pointer(rawPointerToSafeArray); + + for (long i = 0; i < static_cast(arraySizeAsUnsignedLong); ++i) + { + winrt::check_hresult(::SafeArrayPutElement(rawPointerToSafeArray, &i, &(m_runtimeId[i]))); + } + + *runtimeId = runtimeIdArray.release(); + } + } + catch (...) { return UIA_E_ELEMENTNOTAVAILABLE; } + return S_OK; +} + +HRESULT __stdcall AutomationFragment::get_BoundingRectangle( + _Out_ UiaRect* boundingRectangle) +{ + try + { + std::unique_lock lock{ m_mutex }; + if (nullptr != boundingRectangle) + { + *boundingRectangle = { 0, 0, 0, 0 }; + if (auto handler = GetHandler(AutomationCallbackHandlerType::Fragment)) + { + auto screenRectangle = + handler->GetBoundingRectangleInScreenSpaceForAutomation(GetIUnknown()); + + boundingRectangle->left = screenRectangle.X; + boundingRectangle->top = screenRectangle.Y; + boundingRectangle->width = screenRectangle.Width; + boundingRectangle->height = screenRectangle.Height; + } + } + } + catch (...) { return UIA_E_ELEMENTNOTAVAILABLE; } + return S_OK; +} + +HRESULT __stdcall AutomationFragment::GetEmbeddedFragmentRoots( + _Outptr_opt_result_maybenull_ SAFEARRAY** embeddedFragmentRoots) +{ + try + { + std::unique_lock lock{ m_mutex }; + if (nullptr != embeddedFragmentRoots) + { + *embeddedFragmentRoots = nullptr; + + if (!m_embeddedFragments.empty()) + { + unsigned long vectorSizeAsUnsignedLong = static_cast(m_embeddedFragments.size()); + + unique_safearray embeddedFragmentRootsArray{ ::SafeArrayCreateVector(VT_UNKNOWN, 0, vectorSizeAsUnsignedLong) }; + SAFEARRAY* rawPointerToSafeArray = embeddedFragmentRootsArray.get(); + winrt::check_pointer(rawPointerToSafeArray); + + for (long i = 0; i < static_cast(vectorSizeAsUnsignedLong); ++i) + { + winrt::check_hresult(::SafeArrayPutElement(rawPointerToSafeArray, &i, m_embeddedFragments.at(i).as<::IUnknown>().get())); + } + + *embeddedFragmentRoots = embeddedFragmentRootsArray.release(); + } + } + } + catch (...) { return UIA_E_ELEMENTNOTAVAILABLE; } + return S_OK; +} + +HRESULT __stdcall AutomationFragment::SetFocus() +{ + try + { + std::unique_lock lock{ m_mutex }; + if (auto handler = GetHandler(AutomationCallbackHandlerType::Fragment)) + { + handler->HandleSetFocusForAutomation(GetIUnknown()); + } + } + catch (...) { return UIA_E_ELEMENTNOTAVAILABLE; } + return S_OK; +} + +HRESULT __stdcall AutomationFragment::get_FragmentRoot( + _COM_Outptr_opt_result_maybenull_ IRawElementProviderFragmentRoot** fragmentRoot) +{ + try + { + std::unique_lock lock{ m_mutex }; + if (nullptr != fragmentRoot) + { + *fragmentRoot = nullptr; + + // Walk up our fragment tree until we find our fragment root. + auto fragmentRootCandidate = GetStrong(); + bool currentCandidateIsThisObject = true; + while (nullptr != fragmentRootCandidate && nullptr == fragmentRootCandidate.try_as()) + { + // Haven't found the fragment root yet, keep walking up our tree. + fragmentRootCandidate = currentCandidateIsThisObject ? LockWeak(m_parent) : fragmentRootCandidate->Parent(); + currentCandidateIsThisObject = false; + } + + if (nullptr != fragmentRootCandidate) + { + // Found the fragment root, return it. + fragmentRootCandidate.as().copy_to(fragmentRoot); + } + } + } + catch (...) { return UIA_E_ELEMENTNOTAVAILABLE; } + return S_OK; +} + +} \ No newline at end of file diff --git a/LottieIsland/AutomationFragment.h b/LottieIsland/AutomationFragment.h new file mode 100644 index 000000000..817ebb5e6 --- /dev/null +++ b/LottieIsland/AutomationFragment.h @@ -0,0 +1,68 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +#pragma once +#include "AutomationElement.h" +#include "AutomationCallbackRevoker.h" + +namespace AutomationHelpers +{ + +struct AutomationFragment : winrt::implements +{ + // Automation callback handler. + [[nodiscard]] std::unique_ptr SetFragmentCallbackHandler( + IAutomationFragmentCallbackHandler* const handler); + + // Methods. + void AddChildToEnd( + winrt::com_ptr const& child); + + void RemoveChild( + winrt::com_ptr const& child); + + void RemoveAllChildren(); + + // IRawElementProviderFragment implementation. + HRESULT __stdcall Navigate( + _In_ NavigateDirection direction, + _COM_Outptr_opt_result_maybenull_ ::IRawElementProviderFragment** fragment) final override; + + HRESULT __stdcall GetRuntimeId( + _Outptr_opt_result_maybenull_ SAFEARRAY** runtimeId) final override; + + HRESULT __stdcall get_BoundingRectangle( + _Out_ UiaRect* boundingRectangle) final override; + + HRESULT __stdcall GetEmbeddedFragmentRoots( + _Outptr_opt_result_maybenull_ SAFEARRAY** embeddedFragmentRoots) final override; + + HRESULT __stdcall SetFocus() final override; + + HRESULT __stdcall get_FragmentRoot( + _COM_Outptr_opt_result_maybenull_ ::IRawElementProviderFragmentRoot** fragmentRoot) final override; + +private: + // Property setters. + void Parent(winrt::weak_ref const& parent) { std::unique_lock lock{ m_mutex }; m_parent = parent; } + void PreviousSibling(winrt::weak_ref const& previousSibling) { std::unique_lock lock{ m_mutex }; m_previousSibling = previousSibling; } + void NextSibling(winrt::weak_ref const& nextSibling) { std::unique_lock lock{ m_mutex }; m_nextSibling = nextSibling; } + + // Property getters. + winrt::com_ptr Parent() const { std::unique_lock lock{ m_mutex }; return LockWeak(m_parent); } + winrt::com_ptr PreviousSibling() const { std::unique_lock lock{ m_mutex }; return LockWeak(m_previousSibling); } + winrt::com_ptr NextSibling() const { std::unique_lock lock{ m_mutex }; return LockWeak(m_nextSibling); } + int* RuntimeId() { std::unique_lock lock{ m_mutex }; return reinterpret_cast(&(m_runtimeId[0])); } + int RuntimeIdSize() const { std::unique_lock lock{ m_mutex }; return static_cast(m_runtimeId.size()); } + + // Automatically generate unique runtime IDs per fragment. + inline static unsigned __int32 s_nextAvailableInternalRuntimeId{ 0 }; + std::array m_runtimeId{ UiaAppendRuntimeId, ++s_nextAvailableInternalRuntimeId }; + + winrt::weak_ref m_parent{ nullptr }; + winrt::weak_ref m_previousSibling{ nullptr }; + winrt::weak_ref m_nextSibling{ nullptr }; + std::vector> m_children{}; + std::vector> m_embeddedFragments{}; +}; + +} \ No newline at end of file diff --git a/LottieIsland/AutomationFragmentRoot.cpp b/LottieIsland/AutomationFragmentRoot.cpp new file mode 100644 index 000000000..13c9005de --- /dev/null +++ b/LottieIsland/AutomationFragmentRoot.cpp @@ -0,0 +1,56 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +#include "pch.h" +#include "AutomationFragmentRoot.h" + +namespace AutomationHelpers +{ + +std::unique_ptr AutomationFragmentRoot::SetFragmentRootCallbackHandler( + IAutomationFragmentRootCallbackHandler* const handler) +{ + AddHandler(AutomationCallbackHandlerType::FragmentRoot, handler); + return AutomationCallbackRevoker::Create(GetWeak(), handler); +} + +HRESULT __stdcall AutomationFragmentRoot::ElementProviderFromPoint( + _In_ double x, + _In_ double y, + _COM_Outptr_opt_result_maybenull_ ::IRawElementProviderFragment** fragment) +{ + try + { + std::unique_lock lock{ m_mutex }; + if (nullptr != fragment) + { + *fragment = nullptr; + if (auto handler = GetHandler(AutomationCallbackHandlerType::FragmentRoot)) + { + handler->GetFragmentFromPointForAutomation(x, y, GetIUnknown()).copy_to(fragment); + } + } + } + catch (...) { return UIA_E_ELEMENTNOTAVAILABLE; } + return S_OK; +} + +HRESULT __stdcall AutomationFragmentRoot::GetFocus( + _COM_Outptr_opt_result_maybenull_ ::IRawElementProviderFragment** fragmentInFocus) +{ + try + { + std::unique_lock lock{ m_mutex }; + if (nullptr != fragmentInFocus) + { + *fragmentInFocus = nullptr; + if (auto handler = GetHandler(AutomationCallbackHandlerType::FragmentRoot)) + { + handler->GetFragmentInFocusForAutomation(GetIUnknown()).copy_to(fragmentInFocus); + } + } + } + catch (...) { return UIA_E_ELEMENTNOTAVAILABLE; } + return S_OK; +} + +} \ No newline at end of file diff --git a/LottieIsland/AutomationFragmentRoot.h b/LottieIsland/AutomationFragmentRoot.h new file mode 100644 index 000000000..15ee6a1d3 --- /dev/null +++ b/LottieIsland/AutomationFragmentRoot.h @@ -0,0 +1,25 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +#pragma once +#include "AutomationFragment.h" + +namespace AutomationHelpers +{ + +struct AutomationFragmentRoot : winrt::implements +{ + // Automation callback handler. + [[nodiscard]] std::unique_ptr SetFragmentRootCallbackHandler( + IAutomationFragmentRootCallbackHandler* const handler); + + // IRawElementProviderFragmentRoot implementation. + HRESULT __stdcall ElementProviderFromPoint( + _In_ double x, + _In_ double y, + _COM_Outptr_opt_result_maybenull_ ::IRawElementProviderFragment** fragment) final override; + + HRESULT __stdcall GetFocus( + _COM_Outptr_opt_result_maybenull_ ::IRawElementProviderFragment** fragmentInFocus) final override; +}; + +} \ No newline at end of file diff --git a/LottieIsland/LottieContentIsland.cpp b/LottieIsland/LottieContentIsland.cpp index 2c8b6a277..b83a522ab 100644 --- a/LottieIsland/LottieContentIsland.cpp +++ b/LottieIsland/LottieContentIsland.cpp @@ -16,6 +16,7 @@ namespace winrt::CommunityToolkit::WinAppSDK::LottieIsland::implementation m_rootVisual = m_compositor.CreateContainerVisual(); m_island = winrt::ContentIsland::Create(m_rootVisual); + m_island.AutomationProviderRequested({ get_weak(), &LottieContentIsland::OnIslandAutomationProviderRequested }); m_island.StateChanged({ get_weak(), &LottieContentIsland::OnIslandStateChanged }); // Once it's not experimental, we should use InputPointerSource::GetForVisual on our root visual. @@ -165,6 +166,48 @@ namespace winrt::CommunityToolkit::WinAppSDK::LottieIsland::implementation StopAnimation(); } + winrt::Windows::Graphics::RectInt32 LottieContentIsland::GetBoundingRectangleInScreenSpaceForAutomation( + ::IUnknown const* const /*sender*/) const + { + // Convert our local bounds to screen space and return it to UI Automation. + auto coordinateConverter = m_island.CoordinateConverter(); + auto actualSize = m_island.ActualSize(); + winrt::Windows::Foundation::Rect islandLocalBounds{ 0, 0, actualSize.x, actualSize.y }; + auto islandScreenBounds = coordinateConverter.ConvertLocalToScreen(islandLocalBounds); + return islandScreenBounds; + } + + void LottieContentIsland::HandleSetFocusForAutomation( + ::IUnknown const* const /*sender*/) + { + // No-op. + } + + winrt::com_ptr<::IRawElementProviderFragment> LottieContentIsland::GetFragmentFromPointForAutomation( + double /*x*/, + double /*y*/, + ::IUnknown const* const /*sender*/) const + { + // No child automation fragments. + return nullptr; + } + + winrt::com_ptr<::IRawElementProviderFragment> LottieContentIsland::GetFragmentInFocusForAutomation( + ::IUnknown const* const /*sender*/) const + { + // No child automation fragments. + return nullptr; + } + + void LottieContentIsland::HandleInvokeForAutomation( + ::IUnknown const* const /*sender*/) + { + if (nullptr != m_animatedVisual) + { + IsPlaying() ? StopAnimation() : StartAnimation(0.0f, 1.0f, false); + } + } + void LottieContentIsland::StartAnimation(float fromProgress, float toProgress, bool loop) { if (m_animatedVisual == nullptr) @@ -217,6 +260,30 @@ namespace winrt::CommunityToolkit::WinAppSDK::LottieIsland::implementation m_progressPropertySet = nullptr; } + void LottieContentIsland::OnIslandAutomationProviderRequested( + const winrt::ContentIsland& island, + const winrt::ContentIslandAutomationProviderRequestedEventArgs& args) + { + if (nullptr == m_automationProvider) + { + // We need to create the automation provider. + m_automationProvider = winrt::make_self(); + m_automationProvider->Name(L"Lottie"); + + // Register ourselves as the callback for our automation provider. + m_fragmentCallbackRevoker = m_automationProvider->SetFragmentCallbackHandler(this); + m_fragmentRootCallbackRevoker = m_automationProvider->SetFragmentRootCallbackHandler(this); + m_invokeCallbackRevoker = m_automationProvider->SetInvokeCallbackHandler(this); + + // Set up the host provider. + auto hostProviderAsIInspectable = island.GetAutomationHostProvider(); + m_automationProvider->HostProvider(hostProviderAsIInspectable.try_as<::IRawElementProviderSimple>()); + } + + args.AutomationProvider(m_automationProvider.as()); + args.Handled(true); + } + void LottieContentIsland::OnIslandStateChanged(const winrt::ContentIsland& /*island*/, const winrt::ContentIslandStateChangedEventArgs& args) { if (args.DidActualSizeChange() && IsAnimationLoaded()) diff --git a/LottieIsland/LottieContentIsland.h b/LottieIsland/LottieContentIsland.h index 5d987fd78..0653c33c4 100644 --- a/LottieIsland/LottieContentIsland.h +++ b/LottieIsland/LottieContentIsland.h @@ -2,6 +2,7 @@ #include "LottieContentIsland.g.h" #include "winrt/CommunityToolkit.WinAppSDK.LottieIsland.h" +#include "LottieIslandAutomationProvider.h" namespace winrt { @@ -10,7 +11,10 @@ namespace winrt namespace winrt::CommunityToolkit::WinAppSDK::LottieIsland::implementation { - struct LottieContentIsland : LottieContentIslandT + struct LottieContentIsland : LottieContentIslandT, + AutomationHelpers::IAutomationFragmentCallbackHandler, + AutomationHelpers::IAutomationFragmentRootCallbackHandler, + AutomationHelpers::IAutomationInvokeCallbackHandler { using PointerEventHandler = Windows::Foundation::TypedEventHandler; @@ -59,10 +63,29 @@ namespace winrt::CommunityToolkit::WinAppSDK::LottieIsland::implementation void Stop(); + // UI Automation callback implementation. + winrt::Windows::Graphics::RectInt32 GetBoundingRectangleInScreenSpaceForAutomation( + ::IUnknown const* const sender) const final override; + + void HandleSetFocusForAutomation( + ::IUnknown const* const sender) final override; + + winrt::com_ptr<::IRawElementProviderFragment> GetFragmentFromPointForAutomation( + double x, + double y, + ::IUnknown const* const sender) const final override; + + winrt::com_ptr<::IRawElementProviderFragment> GetFragmentInFocusForAutomation( + ::IUnknown const* const sender) const final override; + + void HandleInvokeForAutomation( + ::IUnknown const* const sender) final override; + private: void StartAnimation(float fromProgress, float toProgress, bool loop); void StopAnimation(); + void OnIslandAutomationProviderRequested(const winrt::ContentIsland& island, const winrt::ContentIslandAutomationProviderRequestedEventArgs& args); void OnIslandStateChanged(const winrt::ContentIsland& island, const winrt::ContentIslandStateChangedEventArgs& args); void Resize(const float2& size); @@ -75,6 +98,12 @@ namespace winrt::CommunityToolkit::WinAppSDK::LottieIsland::implementation winrt::event m_pointerPressedEvent; winrt::event m_pointerReleasedEvent; + // UI Automation. + winrt::com_ptr m_automationProvider{ nullptr }; + std::unique_ptr m_fragmentCallbackRevoker{ nullptr }; + std::unique_ptr m_fragmentRootCallbackRevoker{ nullptr }; + std::unique_ptr m_invokeCallbackRevoker{ nullptr }; + winrt::Compositor m_compositor{ nullptr }; winrt::ContainerVisual m_rootVisual{ nullptr }; winrt::ContentIsland m_island{ nullptr }; diff --git a/LottieIsland/LottieIsland.vcxproj b/LottieIsland/LottieIsland.vcxproj index 5b9e44424..bc881453b 100644 --- a/LottieIsland/LottieIsland.vcxproj +++ b/LottieIsland/LottieIsland.vcxproj @@ -1,8 +1,8 @@ + + - - true true @@ -115,12 +115,24 @@ + + + + + + + CommunityToolkit.WinAppSDK.LottieIsland.idl + + + + + Create @@ -145,20 +157,22 @@ - - + + + This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - - - + + + + + diff --git a/LottieIsland/LottieIsland.vcxproj.filters b/LottieIsland/LottieIsland.vcxproj.filters index a4cd6c6eb..fe286ca2f 100644 --- a/LottieIsland/LottieIsland.vcxproj.filters +++ b/LottieIsland/LottieIsland.vcxproj.filters @@ -11,20 +11,56 @@ {8de2e0c6-cc70-4b56-a68f-dd3ec76ce5fc} + + {f244735f-9786-4673-9823-f1b890d98b19} + + + Automation + + + Automation + + + Automation + + + Automation + + + + Automation + + + Automation + + + Automation + + + Automation + + + Automation + + + Automation + + - + + @@ -32,4 +68,7 @@ + + + \ No newline at end of file diff --git a/LottieIsland/LottieIslandAutomationProvider.cpp b/LottieIsland/LottieIslandAutomationProvider.cpp new file mode 100644 index 000000000..7a05f90d8 --- /dev/null +++ b/LottieIsland/LottieIslandAutomationProvider.cpp @@ -0,0 +1,33 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +#include "pch.h" +#include "LottieIslandAutomationProvider.h" + +namespace LottieIslandInternal +{ + + +std::unique_ptr LottieIslandAutomationProvider::SetInvokeCallbackHandler( + AutomationHelpers::IAutomationInvokeCallbackHandler* const handler) +{ + AddHandler(AutomationHelpers::AutomationCallbackHandlerType::Invoke, handler); + return AutomationHelpers::AutomationCallbackRevoker::Create(GetWeak(), handler); +} + + +HRESULT __stdcall LottieIslandAutomationProvider::Invoke() +{ + try + { + std::unique_lock lock{ m_mutex }; + if (auto handler = GetHandler( + AutomationHelpers::AutomationCallbackHandlerType::Invoke)) + { + handler->HandleInvokeForAutomation(GetIUnknown()); + } + } + catch (...) { return UIA_E_ELEMENTNOTAVAILABLE; } + return S_OK; +} + +} \ No newline at end of file diff --git a/LottieIsland/LottieIslandAutomationProvider.h b/LottieIsland/LottieIslandAutomationProvider.h new file mode 100644 index 000000000..5b50952ce --- /dev/null +++ b/LottieIsland/LottieIslandAutomationProvider.h @@ -0,0 +1,19 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +#pragma once +#include "AutomationFragmentRoot.h" + +namespace LottieIslandInternal +{ + +struct LottieIslandAutomationProvider : winrt::implements +{ + // Automation callback handler. + [[nodiscard]] std::unique_ptr SetInvokeCallbackHandler( + AutomationHelpers::IAutomationInvokeCallbackHandler* const handler); + + // IInvokeProvider implementation. + HRESULT __stdcall Invoke() final override; +}; + +} \ No newline at end of file diff --git a/LottieIsland/packages.config b/LottieIsland/packages.config index f1152df39..c4397c325 100644 --- a/LottieIsland/packages.config +++ b/LottieIsland/packages.config @@ -1,6 +1,7 @@  - - + + + \ No newline at end of file diff --git a/LottieIslandProjection/LottieIslandProjection.csproj b/LottieIslandProjection/LottieIslandProjection.csproj index f84a1155c..14ddd1bb6 100644 --- a/LottieIslandProjection/LottieIslandProjection.csproj +++ b/LottieIslandProjection/LottieIslandProjection.csproj @@ -21,11 +21,11 @@ None - + - + diff --git a/LottieWinRT/LottieWinRT.csproj b/LottieWinRT/LottieWinRT.csproj index 20eb4083b..fc4dbd9c4 100644 --- a/LottieWinRT/LottieWinRT.csproj +++ b/LottieWinRT/LottieWinRT.csproj @@ -19,13 +19,13 @@ - - + + - + @@ -33,7 +33,7 @@ - + diff --git a/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj b/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj index a238d7c9a..d3d9e738f 100644 --- a/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj +++ b/SimpleLottieIslandApp/SimpleLottieIslandApp.vcxproj @@ -1,8 +1,8 @@ - - - + + + Debug @@ -192,10 +192,10 @@ - - - + + + @@ -204,12 +204,12 @@ This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - - - - - + + + + + + \ No newline at end of file diff --git a/SimpleLottieIslandApp/packages.config b/SimpleLottieIslandApp/packages.config index 26a6e74b1..a9654c5f0 100644 --- a/SimpleLottieIslandApp/packages.config +++ b/SimpleLottieIslandApp/packages.config @@ -1,7 +1,7 @@  - - - + + + \ No newline at end of file From 750f44cad4be749d5e58e438900df430f5503151 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Tue, 7 May 2024 23:26:32 -0400 Subject: [PATCH 38/40] Update version to 8.1 and start producing Controls package --- .../Lottie-Windows-WinUI3-Controls.csproj | 2 +- LottieWinRT/LottieVisualSourceWinRT.cs | 1 - version.json | 2 +- 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/Lottie-Windows-WinUI3-Controls/Lottie-Windows-WinUI3-Controls.csproj b/Lottie-Windows-WinUI3-Controls/Lottie-Windows-WinUI3-Controls.csproj index 88f5b1bfb..3a1f11c51 100644 --- a/Lottie-Windows-WinUI3-Controls/Lottie-Windows-WinUI3-Controls.csproj +++ b/Lottie-Windows-WinUI3-Controls/Lottie-Windows-WinUI3-Controls.csproj @@ -2,7 +2,7 @@ net7.0-windows10.0.19041.0 Library - + true CommunityToolkit.WinUI.Lottie.Controls WinUI3 Toolkit Windows Animations Lottie XAML diff --git a/LottieWinRT/LottieVisualSourceWinRT.cs b/LottieWinRT/LottieVisualSourceWinRT.cs index a4536d376..c13e9a9a0 100644 --- a/LottieWinRT/LottieVisualSourceWinRT.cs +++ b/LottieWinRT/LottieVisualSourceWinRT.cs @@ -23,7 +23,6 @@ public LottieVisualSourceWinRT() private LottieVisualSourceWinRT(LottieVisualSource lottieVisualSource) { - Debug.WriteLine("Hello from C#!!!"); _lottieVisualSource = lottieVisualSource; _lottieVisualSource.AnimatedVisualInvalidated += (LottieVisualSource? sender, object? o) => { diff --git a/version.json b/version.json index d76d3a370..dc401cbbd 100644 --- a/version.json +++ b/version.json @@ -1,5 +1,5 @@ { - "version": "8.0.230819-rc-LottieIsland.{height}", + "version": "8.1.240503-prerelease.{height}", "publicReleaseRefSpec": [ "^refs/heads/main$", // we release out of main "^refs/heads/dev$", // we release out of dev From 81b84382e01cfcdc12bc937e5d62f184013f9dc4 Mon Sep 17 00:00:00 2001 From: Geoffrey Trousdale Date: Wed, 8 May 2024 14:58:35 -0400 Subject: [PATCH 39/40] Don't take the lock in Add/GetHandler in AutomationBase --- LottieIsland/AutomationBase.cpp | 2 -- LottieIsland/AutomationBase.h | 2 -- 2 files changed, 4 deletions(-) diff --git a/LottieIsland/AutomationBase.cpp b/LottieIsland/AutomationBase.cpp index bf3c30ec9..3e248dfec 100644 --- a/LottieIsland/AutomationBase.cpp +++ b/LottieIsland/AutomationBase.cpp @@ -24,8 +24,6 @@ void AutomationBase::AddHandler( AutomationCallbackHandlerType const& type, IAutomationCallbackHandler* const handler) { - std::unique_lock lock{ m_mutex }; - // Remove any existing handler of the same type. auto iterator = std::remove_if( m_handlers.begin(), m_handlers.end(), [type](auto const& handlerEntry) diff --git a/LottieIsland/AutomationBase.h b/LottieIsland/AutomationBase.h index fa18bd6d3..7571dce78 100644 --- a/LottieIsland/AutomationBase.h +++ b/LottieIsland/AutomationBase.h @@ -82,8 +82,6 @@ struct AutomationBase : winrt::implements); - std::unique_lock lock{ m_mutex }; - auto iterator = std::find_if( m_handlers.cbegin(), m_handlers.cend(), [&type](auto const& handlerEntry) { From eac0dc2bf644f92a53acd6a980d9cf31d8fe4a51 Mon Sep 17 00:00:00 2001 From: Adib Parkar Date: Wed, 8 May 2024 14:51:17 -0700 Subject: [PATCH 40/40] Use AppData in LottieIsland --- LottieIsland/AutomationFragment.cpp | 18 ------ LottieIsland/LottieContentIsland.cpp | 1 + .../SimpleLottieIslandApp.cpp | 55 ++++++++++++------- 3 files changed, 37 insertions(+), 37 deletions(-) diff --git a/LottieIsland/AutomationFragment.cpp b/LottieIsland/AutomationFragment.cpp index aea5ac69c..f98a5b2d6 100644 --- a/LottieIsland/AutomationFragment.cpp +++ b/LottieIsland/AutomationFragment.cpp @@ -43,12 +43,6 @@ void AutomationFragment::AddChildToEnd( // Finally add the child. m_children.push_back(child); - - // Raise the UIA structure changed event. - winrt::check_hresult(::UiaRaiseStructureChangedEvent( - GetStrong().as().get(), - StructureChangeType_ChildAdded, - child->RuntimeId(), child->RuntimeIdSize())); } void AutomationFragment::RemoveChild( @@ -91,12 +85,6 @@ void AutomationFragment::RemoveChild( // Finally, remove the child. m_children.erase(iterator); - - // Raise the UIA structure changed event. - winrt::check_hresult(::UiaRaiseStructureChangedEvent( - GetStrong().as().get(), - StructureChangeType_ChildRemoved, - child->RuntimeId(), child->RuntimeIdSize())); } void AutomationFragment::RemoveAllChildren() @@ -113,12 +101,6 @@ void AutomationFragment::RemoveAllChildren() // Remove all the children. m_children.clear(); - - // Raise the UIA structure changed event. - winrt::check_hresult(::UiaRaiseStructureChangedEvent( - GetStrong().as().get(), - StructureChangeType_ChildrenBulkRemoved, - nullptr, 0)); } HRESULT __stdcall AutomationFragment::Navigate( diff --git a/LottieIsland/LottieContentIsland.cpp b/LottieIsland/LottieContentIsland.cpp index b83a522ab..a0fc5082f 100644 --- a/LottieIsland/LottieContentIsland.cpp +++ b/LottieIsland/LottieContentIsland.cpp @@ -15,6 +15,7 @@ namespace winrt::CommunityToolkit::WinAppSDK::LottieIsland::implementation { m_rootVisual = m_compositor.CreateContainerVisual(); m_island = winrt::ContentIsland::Create(m_rootVisual); + m_island.AppData(get_strong().as()); m_island.AutomationProviderRequested({ get_weak(), &LottieContentIsland::OnIslandAutomationProviderRequested }); m_island.StateChanged({ get_weak(), &LottieContentIsland::OnIslandStateChanged }); diff --git a/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp b/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp index 4aef93145..544d869b1 100644 --- a/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp +++ b/SimpleLottieIslandApp/SimpleLottieIslandApp.cpp @@ -36,7 +36,7 @@ struct WindowInfo winrt::DesktopChildSiteBridge Bridge{ nullptr }; winrt::event_token TakeFocusRequestedToken{}; HWND LastFocusedWindow{ NULL }; - winrt::LottieContentIsland LottieIsland{ nullptr }; + winrt::ContentIsland Island{ nullptr }; bool isPaused = false; }; @@ -197,30 +197,38 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) windowInfo->Compositor, winrt::GetWindowIdFromWindow(hWnd)); - // Create the LottieIsland, which is a WinRT wrapper for hosting a Lottie animation in a ContentIsland - windowInfo->LottieIsland = winrt::LottieContentIsland::Create(windowInfo->Compositor); + // Create the LottieIsland, which is a WinRT wrapper for hosting + // a Lottie animation in a ContentIsland + auto lottieIsland = winrt::LottieContentIsland::Create(windowInfo->Compositor); + windowInfo->Island = lottieIsland.Island(); // Connect the ContentIsland to the DesktopChildSiteBridge - windowInfo->Bridge.Connect(windowInfo->LottieIsland.Island()); + windowInfo->Bridge.Connect(windowInfo->Island); windowInfo->Bridge.Show(); - winrt::LottieVisualSourceWinRT lottieVisualSource = winrt::LottieVisualSourceWinRT::CreateFromString(L"ms-appx:///LottieLogo1.json"); - lottieVisualSource.AnimatedVisualInvalidated([hWnd, windowInfo, lottieVisualSource](const winrt::IInspectable&, auto&&) + winrt::LottieVisualSourceWinRT lottieVisualSource = + winrt::LottieVisualSourceWinRT::CreateFromString(L"ms-appx:///LottieLogo1.json"); + lottieVisualSource.AnimatedVisualInvalidated( + [hWnd, lottieIsland, lottieVisualSource, windowInfo](auto&&, auto&&) { - windowInfo->Compositor.DispatcherQueue().TryEnqueue([hWnd, windowInfo, lottieVisualSource]() + windowInfo->Compositor.DispatcherQueue().TryEnqueue( + [hWnd, lottieIsland, lottieVisualSource, windowInfo]() { winrt::Windows::Foundation::IInspectable diagnostics; - winrt::IAnimatedVisualFrameworkless animatedVisual = lottieVisualSource.TryCreateAnimatedVisual(windowInfo->Compositor, diagnostics); - windowInfo->LottieIsland.AnimatedVisual(animatedVisual.as()); + winrt::IAnimatedVisualFrameworkless animatedVisual = + lottieVisualSource.TryCreateAnimatedVisual(windowInfo->Compositor, diagnostics); + lottieIsland.AnimatedVisual( + animatedVisual.as()); + // Resize bridge RECT rect; GetClientRect(hWnd, &rect); - LayoutBridge(windowInfo, rect.right - rect.left, rect.bottom-rect.top); + LayoutBridge(windowInfo, rect.right - rect.left, rect.bottom - rect.top); }); }); - windowInfo->LottieIsland.PointerPressed([=](auto&...) { + lottieIsland.PointerPressed([=](auto&...) { // Clicking on the Lottie animation acts like clicking "Pause/Resume" OnButtonClicked(ButtonType::PauseButton, windowInfo, hWnd); }); @@ -303,6 +311,11 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) } break; case WM_DESTROY: + if (nullptr != windowInfo && nullptr != windowInfo->Island) + { + // Must close the ContentIsland so that it will release the reference to its AppData. + windowInfo->Island.Close(); + } PostQuitMessage(0); break; case WM_NCDESTROY: @@ -394,10 +407,14 @@ void CreateWin32Button(ButtonType type, const std::wstring_view& text, HWND pare void OnButtonClicked(ButtonType type, WindowInfo* windowInfo, HWND topLevelWindow) { winrt::Windows::Foundation::IAsyncAction asyncAction{ nullptr }; + + // We can retrieve the Lottie-specific functionality from the LottieContentIsland via its AppData. + winrt::LottieContentIsland lottieIsland{ windowInfo->Island.AppData().as() }; + switch (type) { - case ButtonType::PlayButton: - asyncAction = windowInfo->LottieIsland.PlayAsync(0.0, 1.0, true); + case ButtonType::PlayButton: + asyncAction = lottieIsland.PlayAsync(0.0, 1.0, true); asyncAction.Completed([](auto&&, auto&& asyncStatus) { // Check if the async operation was successfully completed @@ -417,26 +434,26 @@ void OnButtonClicked(ButtonType type, WindowInfo* windowInfo, HWND topLevelWindo case ButtonType::PauseButton: if (windowInfo->isPaused) { - windowInfo->LottieIsland.Resume(); + lottieIsland.Resume(); } else { - windowInfo->LottieIsland.Pause(); + lottieIsland.Pause(); } SetPauseState(windowInfo, !windowInfo->isPaused, topLevelWindow); break; case ButtonType::StopButton: - windowInfo->LottieIsland.Stop(); + lottieIsland.Stop(); SetPauseState(windowInfo, false, topLevelWindow); break; case ButtonType::ReverseButton: - if (windowInfo->LottieIsland.PlaybackRate() == 1.0) + if (lottieIsland.PlaybackRate() == 1.0) { - windowInfo->LottieIsland.PlaybackRate(-1.0); + lottieIsland.PlaybackRate(-1.0); } else { - windowInfo->LottieIsland.PlaybackRate(1.0); + lottieIsland.PlaybackRate(1.0); } break; default: