Delete test code. Original code moved to dev branch. (#194)
author윤정현/Common Platform Lab(SR)/Staff Engineer/삼성전자 <jh0506.yun@samsung.com>
Mon, 13 Apr 2020 04:17:33 +0000 (13:17 +0900)
committer유리나/Common Platform Lab(SR)/Staff Engineer/삼성전자 <rina6350.you@samsung.com>
Mon, 13 Apr 2020 04:17:33 +0000 (13:17 +0900)
We should develop on dev branch first and merge to master branch.

534 files changed:
XSF.sln [deleted file]
test/Alarm/Alarm/Alarm.cs [deleted file]
test/Alarm/Alarm/Alarm.csproj [deleted file]
test/Alarm/Alarm/AlarmPageController.cs [deleted file]
test/Alarm/Alarm/App.xaml [deleted file]
test/Alarm/Alarm/App.xaml.cs [deleted file]
test/Alarm/Alarm/Controls/ImageButton.cs [deleted file]
test/Alarm/Alarm/Converters/ItemCountToVisibilityConverter.cs [deleted file]
test/Alarm/Alarm/Converters/ScheduledDateTimeToTextConverter.cs [deleted file]
test/Alarm/Alarm/Implements/AlarmNativeHandler.cs [deleted file]
test/Alarm/Alarm/Implements/AlarmPersistentHandler.cs [deleted file]
test/Alarm/Alarm/Implements/FileOpener.cs [deleted file]
test/Alarm/Alarm/Implements/LocaleHandler.cs [deleted file]
test/Alarm/Alarm/Models/AlarmModel.cs [deleted file]
test/Alarm/Alarm/Models/AlarmRecord.cs [deleted file]
test/Alarm/Alarm/Models/MessageKeys.cs [deleted file]
test/Alarm/Alarm/Renderers/ImageButtonRenderer.cs [deleted file]
test/Alarm/Alarm/Resx/AppResources.Designer.cs [deleted file]
test/Alarm/Alarm/Resx/AppResources.ko.resx [deleted file]
test/Alarm/Alarm/Resx/AppResources.resx [deleted file]
test/Alarm/Alarm/ViewModels/AlertPageModel.cs [deleted file]
test/Alarm/Alarm/ViewModels/BasePageModel.cs [deleted file]
test/Alarm/Alarm/ViewModels/MainPageModel.cs [deleted file]
test/Alarm/Alarm/Views/AlarmAlertPage.xaml [deleted file]
test/Alarm/Alarm/Views/AlarmAlertPage.xaml.cs [deleted file]
test/Alarm/Alarm/Views/AlarmEditPage.xaml [deleted file]
test/Alarm/Alarm/Views/AlarmEditPage.xaml.cs [deleted file]
test/Alarm/Alarm/Views/AlarmListCell.cs [deleted file]
test/Alarm/Alarm/Views/CirclePageEx.xaml [deleted file]
test/Alarm/Alarm/Views/CirclePageEx.xaml.cs [deleted file]
test/Alarm/Alarm/Views/MainPage.xaml [deleted file]
test/Alarm/Alarm/Views/MainPage.xaml.cs [deleted file]
test/Alarm/Alarm/Views/SavePopupPage.xaml [deleted file]
test/Alarm/Alarm/Views/SavePopupPage.xaml.cs [deleted file]
test/Alarm/Alarm/res/Notification.ogg [deleted file]
test/Alarm/Alarm/res/alarm_add_icon.png [deleted file]
test/Alarm/Alarm/res/alarm_no_alarm_icon.png [deleted file]
test/Alarm/Alarm/res/alarm_ringing_icon.png [deleted file]
test/Alarm/Alarm/res/ic_popup_btn_check.png [deleted file]
test/Alarm/Alarm/shared/res/Alarm.png [deleted file]
test/Alarm/Alarm/tizen-manifest.xml [deleted file]
test/Calculator/Calculator.sln [deleted file]
test/Calculator/Calculator/Calculator.cs [deleted file]
test/Calculator/Calculator/Calculator.csproj [deleted file]
test/Calculator/Calculator/CalculatorApp.cs [deleted file]
test/Calculator/Calculator/Controls/ImageButton.xaml [deleted file]
test/Calculator/Calculator/Controls/ImageButton.xaml.cs [deleted file]
test/Calculator/Calculator/Impl/CalculatorImpl.cs [deleted file]
test/Calculator/Calculator/Impl/Formatter.cs [deleted file]
test/Calculator/Calculator/Impl/InputParser.cs [deleted file]
test/Calculator/Calculator/Models/AddingElementResult.cs [deleted file]
test/Calculator/Calculator/Models/CalculationResult.cs [deleted file]
test/Calculator/Calculator/Models/IBinaryOperator.cs [deleted file]
test/Calculator/Calculator/Models/INullary.cs [deleted file]
test/Calculator/Calculator/Models/IOperator.cs [deleted file]
test/Calculator/Calculator/Models/IUnaryOperator.cs [deleted file]
test/Calculator/Calculator/Models/InputElement.cs [deleted file]
test/Calculator/Calculator/Models/Literal.cs [deleted file]
test/Calculator/Calculator/Models/Operators.cs [deleted file]
test/Calculator/Calculator/Renderers/ImageButtonRenderer.cs [deleted file]
test/Calculator/Calculator/ViewModels/MainPageViewModel.cs [deleted file]
test/Calculator/Calculator/Views/CalculatorMainPage.xaml [deleted file]
test/Calculator/Calculator/Views/CalculatorMainPage.xaml.cs [deleted file]
test/Calculator/Calculator/res/btn_delete.png [deleted file]
test/Calculator/Calculator/res/calculator_button_l_01.png [deleted file]
test/Calculator/Calculator/res/calculator_button_l_02.png [deleted file]
test/Calculator/Calculator/res/calculator_button_l_03.png [deleted file]
test/Calculator/Calculator/res/calculator_button_l_04.png [deleted file]
test/Calculator/Calculator/res/calculator_button_l_05.png [deleted file]
test/Calculator/Calculator/res/calculator_button_l_06.png [deleted file]
test/Calculator/Calculator/res/calculator_button_l_07.png [deleted file]
test/Calculator/Calculator/res/calculator_button_l_08.png [deleted file]
test/Calculator/Calculator/res/calculator_button_p_number_0.png [deleted file]
test/Calculator/Calculator/res/calculator_button_p_number_1.png [deleted file]
test/Calculator/Calculator/res/calculator_button_p_number_10.png [deleted file]
test/Calculator/Calculator/res/calculator_button_p_number_11.png [deleted file]
test/Calculator/Calculator/res/calculator_button_p_number_2.png [deleted file]
test/Calculator/Calculator/res/calculator_button_p_number_3.png [deleted file]
test/Calculator/Calculator/res/calculator_button_p_number_4.png [deleted file]
test/Calculator/Calculator/res/calculator_button_p_number_5.png [deleted file]
test/Calculator/Calculator/res/calculator_button_p_number_6.png [deleted file]
test/Calculator/Calculator/res/calculator_button_p_number_7.png [deleted file]
test/Calculator/Calculator/res/calculator_button_p_number_8.png [deleted file]
test/Calculator/Calculator/res/calculator_button_p_number_9.png [deleted file]
test/Calculator/Calculator/shared/res/Calculator.png [deleted file]
test/Calculator/Calculator/tizen-manifest.xml [deleted file]
test/Directory.Build.props [deleted file]
test/Directory.Build.targets [deleted file]
test/ElottieFormsGallery/ElottieFormsGallery.Tizen/ElottieFormsGallery.Tizen.cs [deleted file]
test/ElottieFormsGallery/ElottieFormsGallery.Tizen/ElottieFormsGallery.Tizen.csproj [deleted file]
test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/a_mountain.json [deleted file]
test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/cooking.json [deleted file]
test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/done.json [deleted file]
test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/emoji_wink.json [deleted file]
test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/fingerprint_success.json [deleted file]
test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/heart.json [deleted file]
test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/icon_animation.json [deleted file]
test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/like.json [deleted file]
test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/loading.json [deleted file]
test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/maps.json [deleted file]
test/ElottieFormsGallery/ElottieFormsGallery.Tizen/shared/res/ElottieFormsGallery.Tizen.png [deleted file]
test/ElottieFormsGallery/ElottieFormsGallery.Tizen/tizen-manifest.xml [deleted file]
test/ElottieFormsGallery/ElottieFormsGallery/App.cs [deleted file]
test/ElottieFormsGallery/ElottieFormsGallery/ElottieFormsGallery.csproj [deleted file]
test/ElottieFormsGallery/ElottieFormsGallery/LottieDataModel.cs [deleted file]
test/ElottieFormsGallery/ElottieFormsGallery/MainPage.xaml [deleted file]
test/ElottieFormsGallery/ElottieFormsGallery/MainPage.xaml.cs [deleted file]
test/ElottieFormsGallery/ElottieFormsGallery/MainPageCS.cs [deleted file]
test/HeartRateMonitor/App.cs [deleted file]
test/HeartRateMonitor/Controls/DialogOK.cs [deleted file]
test/HeartRateMonitor/HeartRateMonitor.cs [deleted file]
test/HeartRateMonitor/HeartRateMonitor.csproj [deleted file]
test/HeartRateMonitor/Model/HeartRateMonitorModel.cs [deleted file]
test/HeartRateMonitor/ViewModels/MainViewModel.cs [deleted file]
test/HeartRateMonitor/ViewModels/ViewModelBase.cs [deleted file]
test/HeartRateMonitor/Views/MeasurementPage.xaml [deleted file]
test/HeartRateMonitor/Views/MeasurementPage.xaml.cs [deleted file]
test/HeartRateMonitor/Views/SettingsPage.xaml [deleted file]
test/HeartRateMonitor/Views/SettingsPage.xaml.cs [deleted file]
test/HeartRateMonitor/res/heart.png [deleted file]
test/HeartRateMonitor/res/settings.png [deleted file]
test/HeartRateMonitor/shared/res/HeartRateMonitor.png [deleted file]
test/HeartRateMonitor/tizen-manifest.xml [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tests/DispatcherTest.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tests/LoadingTest.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tests/MapMyRun.Tests.csproj [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tests/PermissionManagerTest.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tests/PhoneServiceTest.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tests/SettingManagerTest.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tests/WorkoutTest.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/App.xaml [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/App.xaml.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/MapMyRun.Tizen.csproj [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/MapMyRun.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/Models/AppLauncher.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/Models/MessagePortHandler.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/Models/TizenPlatformService.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/BasePageModel.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/LoadingPageModel.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/MainPageModel.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/SettingsPageModel.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/AverageHrViewModel.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/CadenceViewModel.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/CaloriesViewModel.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/CurrentHrViewModel.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/CurrentPaceViewModel.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/DistanceViewModel.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/DurationViewModel.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/IWorkoutItemViewModel.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/PeakHrViewModel.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/PeakPaceViewModel.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/WorkoutMainPageModel.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/ZoneHrViewModel.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutSetupPageModel.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/BPMIcon.png [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/GPSIcon.png [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/UAIcon.png [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/backgroundBottomLight.png [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/backgroundWholeLight.png [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/finish-btn-pressed.png [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/finish-btn.png [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/hero-bg.png [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-gps--connected.png [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-gps--connecting.png [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-gps--error.png [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-gps--not-connected.png [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-shoes--connected.png [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-shoes--connecting.png [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-shoes--error.png [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-shoes--not-connected.png [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/localization/en.json [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/logo--tray.png [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/select-btn-empty.png [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/splash.circle.png [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/start-btn-empty.png [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/shared/res/MapMyRun.png [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/tizen-manifest.xml [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/CircleProgressBarSurfaceItemExtension.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/LoadingPage.xaml [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/LoadingPage.xaml.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/MainPage.xaml [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/MainPage.xaml.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/SelectWorkoutPage.xaml [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/SelectWorkoutPage.xaml.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/SetDurationPage.xaml [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/SetDurationPage.xaml.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/SettingsPage.xaml [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/SettingsPage.xaml.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/Templates/SettingCell.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/Templates/SettingCellTemplateSelector.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutHistoryPage.xaml [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutHistoryPage.xaml.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainIndexPage.xaml [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainIndexPage.xaml.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainLoadingPage.xaml [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainLoadingPage.xaml.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainPage.xaml [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainPage.xaml.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainPageGPS.xaml [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainPageGPS.xaml.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutSetupPage.xaml [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutSetupPage.xaml.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun.sln [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/MapMyRun.projitems [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/MapMyRun.shproj [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Activity.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/ActivityRepository.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Dispatcher.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/IAppLauncher.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/IDispatcher.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/IMessagePortHandler.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/IPermissionManager.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/IPhoneService.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/IPlatformService.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Loading.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/NotificationObserver.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/NotificationProvider.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/PermissionManager.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/PhoneService.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Request.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Response.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Settings/ISettingManager.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Settings/SettingManager.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Settings/SettingsData.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/AverageCadence.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/AverageHr.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/AveragePace.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/AverageSpeed.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/Calories.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/CurrentCadence.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/CurrentHr.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/CurrentPace.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/CurrentSpeed.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/Distance.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/Duration.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/IWorkoutItem.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/MaxPace.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/MaxSpeed.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/PeakHr.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/WorkoutItemFactory.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/ZoneHr.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Workout.cs [deleted file]
test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/WorkoutData.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService.Test/AccountManagerTest.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService.Test/DB.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService.Test/DispatcherTest.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService.Test/KeepAliveTest.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService.Test/MapMyRunService.Tests.csproj [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/MapMyRunService.Tizen.csproj [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/MapMyRunService_App.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/Models/AuthCache.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/Models/Database/DB.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/Models/MessagePortHandler.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/Models/Settings/GPSManager.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/Models/TizenServiceApplication.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/Services/SensorService.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/Services/WorkoutService.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/shared/res/MapMyRunService.png [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/tizen-manifest.xml [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService.sln [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/MapMyRunService.projitems [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/MapMyRunService.shproj [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/Account/AccountManager.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/Account/User.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/Account/UserDao.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/Auth/Authentication.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/Auth/AuthenticationToken.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/Auth/ExampleAuthProvider.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/Auth/IAuthCache.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/Auth/IAuthenticationProvider.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/Dispatcher.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/HttpService.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/IDB.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/IDispatcher.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/IMessagePortHandler.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/ITizenServiceApplication.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/KeepAlive/KeepAlive.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/Loading.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/NotificationObserver.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/NotificationProvider.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/Request.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/Response.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/Settings/IGPSManager.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/Settings/SettingsData.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/Settings/SettingsManager.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/Workout/HeartRateData.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/Workout/LocationData.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/Workout/PedometerData.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/Workout/WorkoutData.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/Workout/WorkoutManager.cs [deleted file]
test/UnderArmour/MapMyRunService/MapMyRunService/Models/Workout/WorkoutReport.cs [deleted file]
test/Voicememo2020/README.md [deleted file]
test/Voicememo2020/VoiceMemo.sln [deleted file]
test/Voicememo2020/VoiceMemo/App.xaml [deleted file]
test/Voicememo2020/VoiceMemo/App.xaml.cs [deleted file]
test/Voicememo2020/VoiceMemo/Converters/CountryCodeToNameConverter.cs [deleted file]
test/Voicememo2020/VoiceMemo/Converters/DurationToRemainingTimeConverter.cs [deleted file]
test/Voicememo2020/VoiceMemo/Converters/RecordImageSourceColorConverter.cs [deleted file]
test/Voicememo2020/VoiceMemo/Converters/RecordsCountToViewVisibilityConverter.cs [deleted file]
test/Voicememo2020/VoiceMemo/Converters/SttToPropertyConverter.cs [deleted file]
test/Voicememo2020/VoiceMemo/Data/RecordDatabase.cs [deleted file]
test/Voicememo2020/VoiceMemo/EffectRenderers/BlendColorEffect.cs [deleted file]
test/Voicememo2020/VoiceMemo/EffectRenderers/TizenEventPropagationEffect.cs [deleted file]
test/Voicememo2020/VoiceMemo/EffectRenderers/TizenItemLongPressEffect.cs [deleted file]
test/Voicememo2020/VoiceMemo/EffectRenderers/TizenStyleEffect.cs [deleted file]
test/Voicememo2020/VoiceMemo/Effects/ImageAttributes.cs [deleted file]
test/Voicememo2020/VoiceMemo/Effects/ImageBlendEffect.cs [deleted file]
test/Voicememo2020/VoiceMemo/Effects/InternalExtension.cs [deleted file]
test/Voicememo2020/VoiceMemo/Effects/ItemLongPressEffect.cs [deleted file]
test/Voicememo2020/VoiceMemo/Effects/TizenEventPropagationEffect.cs [deleted file]
test/Voicememo2020/VoiceMemo/Effects/TizenStyleEffect.cs [deleted file]
test/Voicememo2020/VoiceMemo/Effects/VisualAttributes.cs [deleted file]
test/Voicememo2020/VoiceMemo/Interop/Interop.Libraries.cs [deleted file]
test/Voicememo2020/VoiceMemo/Interop/Interop.SystemCall.cs [deleted file]
test/Voicememo2020/VoiceMemo/Models/LatestRecord.cs [deleted file]
test/Voicememo2020/VoiceMemo/Models/Record.cs [deleted file]
test/Voicememo2020/VoiceMemo/Models/SttLanguage.cs [deleted file]
test/Voicememo2020/VoiceMemo/Renderers/GraphicPopUpRenderer.cs [deleted file]
test/Voicememo2020/VoiceMemo/Renderers/ProgressbarPopupRenderer.cs [deleted file]
test/Voicememo2020/VoiceMemo/Resx/AppResources.Designer.cs [deleted file]
test/Voicememo2020/VoiceMemo/Resx/AppResources.hi.resx [deleted file]
test/Voicememo2020/VoiceMemo/Resx/AppResources.ko.resx [deleted file]
test/Voicememo2020/VoiceMemo/Resx/AppResources.resx [deleted file]
test/Voicememo2020/VoiceMemo/Services/AppDataService.cs [deleted file]
test/Voicememo2020/VoiceMemo/Services/AppTerminator.cs [deleted file]
test/Voicememo2020/VoiceMemo/Services/AudioPlayService.cs [deleted file]
test/Voicememo2020/VoiceMemo/Services/AudioRecordService.cs [deleted file]
test/Voicememo2020/VoiceMemo/Services/DeviceInformationService.cs [deleted file]
test/Voicememo2020/VoiceMemo/Services/LocaleService.cs [deleted file]
test/Voicememo2020/VoiceMemo/Services/MediaContentService.cs [deleted file]
test/Voicememo2020/VoiceMemo/Services/SpeechToTextService.cs [deleted file]
test/Voicememo2020/VoiceMemo/Services/UserPermission.cs [deleted file]
test/Voicememo2020/VoiceMemo/Settings.StyleCop [deleted file]
test/Voicememo2020/VoiceMemo/Utility.cs [deleted file]
test/Voicememo2020/VoiceMemo/Utility/ColorConverter.cs [deleted file]
test/Voicememo2020/VoiceMemo/Utility/LogInformation.cs [deleted file]
test/Voicememo2020/VoiceMemo/Utility/PrivilegeInformation.cs [deleted file]
test/Voicememo2020/VoiceMemo/ViewModels/BasePageModel.cs [deleted file]
test/Voicememo2020/VoiceMemo/ViewModels/DetailsPageModel.cs [deleted file]
test/Voicememo2020/VoiceMemo/ViewModels/MainPageModel.cs [deleted file]
test/Voicememo2020/VoiceMemo/ViewModels/MessageKeys.cs [deleted file]
test/Voicememo2020/VoiceMemo/ViewModels/PlayBackPageModel.cs [deleted file]
test/Voicememo2020/VoiceMemo/ViewModels/RecordingPageModel.cs [deleted file]
test/Voicememo2020/VoiceMemo/Views/BindableToolbarItem.cs [deleted file]
test/Voicememo2020/VoiceMemo/Views/CancelPage.xaml [deleted file]
test/Voicememo2020/VoiceMemo/Views/CancelPage.xaml.cs [deleted file]
test/Voicememo2020/VoiceMemo/Views/CirclePageEx.xaml [deleted file]
test/Voicememo2020/VoiceMemo/Views/CirclePageEx.xaml.cs [deleted file]
test/Voicememo2020/VoiceMemo/Views/DetailsPage.xaml [deleted file]
test/Voicememo2020/VoiceMemo/Views/DetailsPage.xaml.cs [deleted file]
test/Voicememo2020/VoiceMemo/Views/GraphicPopup.cs [deleted file]
test/Voicememo2020/VoiceMemo/Views/IGraphicPopup.cs [deleted file]
test/Voicememo2020/VoiceMemo/Views/IProgressbarPopup.cs [deleted file]
test/Voicememo2020/VoiceMemo/Views/LanguageSelectionPage.xaml [deleted file]
test/Voicememo2020/VoiceMemo/Views/LanguageSelectionPage.xaml.cs [deleted file]
test/Voicememo2020/VoiceMemo/Views/MainPage.xaml [deleted file]
test/Voicememo2020/VoiceMemo/Views/MainPage.xaml.cs [deleted file]
test/Voicememo2020/VoiceMemo/Views/PageFactory.cs [deleted file]
test/Voicememo2020/VoiceMemo/Views/PlayBackPage.xaml [deleted file]
test/Voicememo2020/VoiceMemo/Views/PlayBackPage.xaml.cs [deleted file]
test/Voicememo2020/VoiceMemo/Views/ProgressbarPopup.cs [deleted file]
test/Voicememo2020/VoiceMemo/Views/RecordListPage.xaml [deleted file]
test/Voicememo2020/VoiceMemo/Views/RecordListPage.xaml.cs [deleted file]
test/Voicememo2020/VoiceMemo/Views/RecordingPage.xaml [deleted file]
test/Voicememo2020/VoiceMemo/Views/RecordingPage.xaml.cs [deleted file]
test/Voicememo2020/VoiceMemo/Views/SttLanguageViewCell.xaml [deleted file]
test/Voicememo2020/VoiceMemo/Views/SttLanguageViewCell.xaml.cs [deleted file]
test/Voicememo2020/VoiceMemo/Views/ViewExtensions.cs [deleted file]
test/Voicememo2020/VoiceMemo/VoiceMemo.cs [deleted file]
test/Voicememo2020/VoiceMemo/VoiceMemo.csproj [deleted file]
test/Voicememo2020/VoiceMemo/res/2019/details_playback_icon.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019/recording_stt_icon.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019/voice_mamo_slider_btn_bg.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019/voicememo_effect.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019/voicememo_volume_control_cover_bg.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019/voicerecorder_effect_bg.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_custom_button/details_vol_icon_off.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_custom_button/details_vol_icon_on.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_custom_button/record_controller_bg.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_custom_button/recording_icon_cancel.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_custom_button/recording_icon_stop.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_custom_button/voicerecorder_btn_bg.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_custom_button/voicerecorder_btn_pause.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_custom_button/voicerecorder_btn_play.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_custom_button/voicerecorder_playback_btn_pause.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_custom_button/voicerecorder_stop_icon.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/b_icon_voicememo.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/b_slider_icon_minus.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/b_slider_icon_plus.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/details_playback_icon.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/more_option_icon_delete.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/more_option_icon_language.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/more_option_icon_stt_off.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/more_option_icon_stt_on.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/more_option_icon_stt_recording.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/play_volume_slider_ic.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_ic_menu_delete_holo_dark.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_ic_menu_selectall_holo_dark.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_ic_popup_btn_check.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_ic_popup_btn_delete.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_toast_popup_memory_full_gear.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_toast_popup_memory_full_mobile.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/voice_mamo_slider_mute.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/voice_mamo_slider_volume_on.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/voice_memo_slash.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicememo_effect.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_bt_headset_image.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_bt_mobile_image.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_btn_pause.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_btn_play.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_effect_bg.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_icon_stt.png [deleted file]
test/Voicememo2020/VoiceMemo/res/2019_images_icons/weather_toast_popup_show_on_divice.png [deleted file]
test/Voicememo2020/VoiceMemo/res/b_icon_voicememo.png [deleted file]
test/Voicememo2020/VoiceMemo/res/button/details_vol_icon_off.png [deleted file]
test/Voicememo2020/VoiceMemo/res/button/details_vol_icon_on.png [deleted file]
test/Voicememo2020/VoiceMemo/res/details_playback_icon.png [deleted file]
test/Voicememo2020/VoiceMemo/res/details_vol_icon_off.png [deleted file]
test/Voicememo2020/VoiceMemo/res/details_vol_icon_on.png [deleted file]
test/Voicememo2020/VoiceMemo/res/icons/b_slider_icon_minus.png [deleted file]
test/Voicememo2020/VoiceMemo/res/icons/b_slider_icon_plus.png [deleted file]
test/Voicememo2020/VoiceMemo/res/more_option_icon_delete.png [deleted file]
test/Voicememo2020/VoiceMemo/res/more_option_icon_language.png [deleted file]
test/Voicememo2020/VoiceMemo/res/more_option_icon_stt_list.png [deleted file]
test/Voicememo2020/VoiceMemo/res/more_option_icon_stt_off.png [deleted file]
test/Voicememo2020/VoiceMemo/res/more_option_icon_stt_on.png [deleted file]
test/Voicememo2020/VoiceMemo/res/record_controller_bg.png [deleted file]
test/Voicememo2020/VoiceMemo/res/record_stop_icon.png [deleted file]
test/Voicememo2020/VoiceMemo/res/recording_icon_cancel.png [deleted file]
test/Voicememo2020/VoiceMemo/res/recording_icon_pause.png [deleted file]
test/Voicememo2020/VoiceMemo/res/recording_stt_icon.png [deleted file]
test/Voicememo2020/VoiceMemo/res/tw_ic_popup_btn_check.png [deleted file]
test/Voicememo2020/VoiceMemo/res/tw_ic_popup_btn_delete.png [deleted file]
test/Voicememo2020/VoiceMemo/res/tw_no_item_bg.png [deleted file]
test/Voicememo2020/VoiceMemo/res/voice_mamo_slider_btn_bg.png [deleted file]
test/Voicememo2020/VoiceMemo/res/voice_mamo_slider_mute.png [deleted file]
test/Voicememo2020/VoiceMemo/res/voice_mamo_slider_volume_on.png [deleted file]
test/Voicememo2020/VoiceMemo/res/voicememo_effect.png [deleted file]
test/Voicememo2020/VoiceMemo/res/voicerecorder_btn_bg.png [deleted file]
test/Voicememo2020/VoiceMemo/res/voicerecorder_btn_pause.png [deleted file]
test/Voicememo2020/VoiceMemo/res/voicerecorder_btn_play.png [deleted file]
test/Voicememo2020/VoiceMemo/res/voicerecorder_btn_stop.png [deleted file]
test/Voicememo2020/VoiceMemo/res/voicerecorder_icon_stt.png [deleted file]
test/Voicememo2020/VoiceMemo/res/voicerecorder_icon_stt_off.png [deleted file]
test/Voicememo2020/VoiceMemo/res/voicerecorder_stop_bg.png [deleted file]
test/Voicememo2020/VoiceMemo/res/voicerecorder_stop_icon.png [deleted file]
test/Voicememo2020/VoiceMemo/res/xml/accessoryservices.xml [deleted file]
test/Voicememo2020/VoiceMemo/shared/res/VoiceMemo.png [deleted file]
test/Voicememo2020/VoiceMemo/shared/res/splash.png [deleted file]
test/Voicememo2020/VoiceMemo/tizen-manifest.xml [deleted file]
test/Weather/LICENSE [deleted file]
test/Weather/README.md [deleted file]
test/Weather/Screenshots/weatherApp_screen01.png [deleted file]
test/Weather/Screenshots/weatherApp_screen02.png [deleted file]
test/Weather/Screenshots/weatherApp_screen03.png [deleted file]
test/Weather/Screenshots/weatherApp_screen04.png [deleted file]
test/Weather/Screenshots/weatherApp_screen05.png [deleted file]
test/Weather/Weather.sln [deleted file]
test/Weather/Weather/App.cs [deleted file]
test/Weather/Weather/Behaviors/CountryCodeValidatorBehavior.cs [deleted file]
test/Weather/Weather/Behaviors/CurrentWeatherPageBehavior.cs [deleted file]
test/Weather/Weather/Config/ApiConfig.cs [deleted file]
test/Weather/Weather/Controls/DoubleLabel.xaml [deleted file]
test/Weather/Weather/Controls/DoubleLabel.xaml.cs [deleted file]
test/Weather/Weather/Converters/DegreeToCardinalDirectionConverter.cs [deleted file]
test/Weather/Weather/Converters/ErrorMessageConverter.cs [deleted file]
test/Weather/Weather/Converters/ImageSourceConverter.cs [deleted file]
test/Weather/Weather/Converters/MeasurementSystemConverter.cs [deleted file]
test/Weather/Weather/Converters/TimeStampToDateConverter.cs [deleted file]
test/Weather/Weather/Converters/TimeStampToTimeConverter.cs [deleted file]
test/Weather/Weather/Converters/TimeStampWithOffsetAndTimezoneConverter.cs [deleted file]
test/Weather/Weather/Converters/TimeStampWithOffsetConverter.cs [deleted file]
test/Weather/Weather/Data/city.list.json [deleted file]
test/Weather/Weather/Data/country.list.json [deleted file]
test/Weather/Weather/Models/Location/City.cs [deleted file]
test/Weather/Weather/Models/Location/Coordinates.cs [deleted file]
test/Weather/Weather/Models/Location/Country.cs [deleted file]
test/Weather/Weather/Models/Location/TimeZone.cs [deleted file]
test/Weather/Weather/Models/Weather/Clouds.cs [deleted file]
test/Weather/Weather/Models/Weather/CurrentWeather.cs [deleted file]
test/Weather/Weather/Models/Weather/Forecast.cs [deleted file]
test/Weather/Weather/Models/Weather/SunData.cs [deleted file]
test/Weather/Weather/Models/Weather/WeatherBase.cs [deleted file]
test/Weather/Weather/Models/Weather/WeatherData.cs [deleted file]
test/Weather/Weather/Models/Weather/Wind.cs [deleted file]
test/Weather/Weather/Service/CityProvider.cs [deleted file]
test/Weather/Weather/Service/CountryProvider.cs [deleted file]
test/Weather/Weather/Service/ICityProvider.cs [deleted file]
test/Weather/Weather/Service/ICountryProvider.cs [deleted file]
test/Weather/Weather/Utils/BindableString.cs [deleted file]
test/Weather/Weather/Utils/ErrorHandler.cs [deleted file]
test/Weather/Weather/Utils/HttpException.cs [deleted file]
test/Weather/Weather/Utils/IRequest.cs [deleted file]
test/Weather/Weather/Utils/JsonFileReader.cs [deleted file]
test/Weather/Weather/Utils/NotificationTask.cs [deleted file]
test/Weather/Weather/Utils/Request.cs [deleted file]
test/Weather/Weather/Utils/TimeStamp.cs [deleted file]
test/Weather/Weather/Utils/UnitFormatter.cs [deleted file]
test/Weather/Weather/ViewModels/ApiErrorViewModel.cs [deleted file]
test/Weather/Weather/ViewModels/CurrentWeatherViewModel.cs [deleted file]
test/Weather/Weather/ViewModels/ForecastViewModel.cs [deleted file]
test/Weather/Weather/ViewModels/MainPageViewModel.cs [deleted file]
test/Weather/Weather/ViewModels/ViewModelBase.cs [deleted file]
test/Weather/Weather/Views/ApiErrorPage.xaml [deleted file]
test/Weather/Weather/Views/ApiErrorPage.xaml.cs [deleted file]
test/Weather/Weather/Views/CurrentWeatherPage.xaml [deleted file]
test/Weather/Weather/Views/CurrentWeatherPage.xaml.cs [deleted file]
test/Weather/Weather/Views/ForecastPage.xaml [deleted file]
test/Weather/Weather/Views/ForecastPage.xaml.cs [deleted file]
test/Weather/Weather/Views/MainPage.xaml [deleted file]
test/Weather/Weather/Views/MainPage.xaml.cs [deleted file]
test/Weather/Weather/Views/MissingKeyErrorPage.xaml [deleted file]
test/Weather/Weather/Views/MissingKeyErrorPage.xaml.cs [deleted file]
test/Weather/Weather/Weather.cs [deleted file]
test/Weather/Weather/Weather.csproj [deleted file]
test/Weather/Weather/shared/res/Weather.png [deleted file]
test/Weather/Weather/tizen-manifest.xml [deleted file]
test/XStopWatch/LapsPage.xaml [deleted file]
test/XStopWatch/LapsPage.xaml.cs [deleted file]
test/XStopWatch/StopWatch.xaml [deleted file]
test/XStopWatch/StopWatch.xaml.cs [deleted file]
test/XStopWatch/StopWatchApplication.xaml [deleted file]
test/XStopWatch/StopWatchApplication.xaml.cs [deleted file]
test/XStopWatch/WindowExtension.cs [deleted file]
test/XStopWatch/XStopWatch.cs [deleted file]
test/XStopWatch/XStopWatch.csproj [deleted file]
test/XStopWatch/res/images/b_stopwatch_mark_blue.png [deleted file]
test/XStopWatch/res/images/b_stopwatch_mark_red.png [deleted file]
test/XStopWatch/res/images/b_stopwatch_unit_number.png [deleted file]
test/XStopWatch/res/images/event_spot.png [deleted file]
test/XStopWatch/res/images/wc_visual_cue.png [deleted file]
test/XStopWatch/shared/res/XStopWatch.png [deleted file]
test/XStopWatch/shared/res/splash.png [deleted file]
test/XStopWatch/tizen-manifest.xml [deleted file]

diff --git a/XSF.sln b/XSF.sln
deleted file mode 100644 (file)
index 60b77fc..0000000
--- a/XSF.sln
+++ /dev/null
@@ -1,261 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 16
-VisualStudioVersion = 16.0.29920.165
-MinimumVisualStudioVersion = 15.0.26124.0
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "XSF", "src\XSF\XSF.csproj", "{8CCD862D-0BB5-4350-9B0C-286CD3A6A7FF}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "XSF.Build.Tasks", "src\XSF.Build.Tasks\XSF.Build.Tasks.csproj", "{4D093123-296A-4471-A97F-58E5F8F2948D}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "XSF.Design", "src\XSF.Design\XSF.Design.csproj", "{184A0570-F7D8-4207-9B8C-CA48C018FEA8}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".nuspec", ".nuspec", "{CC822123-464F-4FF8-9E0B-2467946E07B6}"
-       ProjectSection(SolutionItems) = preProject
-               .nuspec\XSF.DefaultItems.props = .nuspec\XSF.DefaultItems.props
-               .nuspec\XSF.DefaultItems.targets = .nuspec\XSF.DefaultItems.targets
-               .nuspec\XSF.nuspec = .nuspec\XSF.nuspec
-               .nuspec\XSF.props = .nuspec\XSF.props
-               .nuspec\XSF.targets = .nuspec\XSF.targets
-       EndProjectSection
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{4D11032F-BD24-413A-ABB2-AFAC1E357697}"
-       ProjectSection(SolutionItems) = preProject
-               .editorconfig = .editorconfig
-               build.sh = build.sh
-       EndProjectSection
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{BCEBC994-EAB5-4142-B60C-58FED3DFC835}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Alarm", "test\Alarm\Alarm\Alarm.csproj", "{B6813215-D04E-44BA-8AF6-72EDA675C99C}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Calculator", "test\Calculator\Calculator\Calculator.csproj", "{BBB4DF2B-9D77-465B-A1C8-4EAD42F561BC}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "HeartRateMonitor", "test\HeartRateMonitor\HeartRateMonitor.csproj", "{39D1AD7A-80D6-47F8-A6C7-93E4D25F84E5}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "VoiceMemo", "test\Voicememo2020\VoiceMemo\VoiceMemo.csproj", "{7A4D58D3-EF64-46FC-B293-75F71D9938DF}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Weather", "test\Weather\Weather\Weather.csproj", "{198A2943-3091-46FB-B967-B85D26496025}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "XStopWatch", "test\XStopWatch\XStopWatch.csproj", "{A689445F-79CA-4843-BB47-B39860C863CD}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "UnderArmour", "UnderArmour", "{50836253-D1BC-4BCC-B968-52974065F166}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "MapMyRun", "MapMyRun", "{7295CB65-4F82-425B-A5CC-5DA241D5F6F1}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "MapMyRunService", "MapMyRunService", "{DCF6FC4F-A868-42A2-AEDA-DFD737B670B4}"
-EndProject
-Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "MapMyRun", "test\UnderArmour\MapMyRun\MapMyRun\MapMyRun.shproj", "{3C82C042-F1F4-42E3-B82D-DFED5E06EE19}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MapMyRun.Tizen", "test\UnderArmour\MapMyRun\MapMyRun.Tizen\MapMyRun.Tizen.csproj", "{017E4C5E-4CF8-4A84-898A-5045BF22646C}"
-       ProjectSection(ProjectDependencies) = postProject
-               {4D093123-296A-4471-A97F-58E5F8F2948D} = {4D093123-296A-4471-A97F-58E5F8F2948D}
-       EndProjectSection
-EndProject
-Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "MapMyRunService", "test\UnderArmour\MapMyRunService\MapMyRunService\MapMyRunService.shproj", "{7B89FD19-6DCD-4721-9000-FA612161C492}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MapMyRunService.Tizen", "test\UnderArmour\MapMyRunService\MapMyRunService.Tizen\MapMyRunService.Tizen.csproj", "{09C952B3-BE3F-447E-838F-CD9D14A76D09}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ElottieFormsGallery", "ElottieFormsGallery", "{AB224B2A-5582-4CD6-9A9D-C42CE8C5B9A1}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ElottieFormsGallery", "test\ElottieFormsGallery\ElottieFormsGallery\ElottieFormsGallery.csproj", "{8B6E623C-51BF-46DA-8483-1ABD5CA0150B}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ElottieFormsGallery.Tizen", "test\ElottieFormsGallery\ElottieFormsGallery.Tizen\ElottieFormsGallery.Tizen.csproj", "{061FB8A9-0CFC-4C6F-86AE-0E0505EDEA78}"
-EndProject
-Global
-       GlobalSection(SharedMSBuildProjectFiles) = preSolution
-               test\UnderArmour\MapMyRun\MapMyRun\MapMyRun.projitems*{017e4c5e-4cf8-4a84-898a-5045bf22646c}*SharedItemsImports = 5
-               test\UnderArmour\MapMyRunService\MapMyRunService\MapMyRunService.projitems*{09c952b3-be3f-447e-838f-cd9d14a76d09}*SharedItemsImports = 5
-               test\UnderArmour\MapMyRun\MapMyRun\MapMyRun.projitems*{3c82c042-f1f4-42e3-b82d-dfed5e06ee19}*SharedItemsImports = 13
-               test\UnderArmour\MapMyRunService\MapMyRunService\MapMyRunService.projitems*{7b89fd19-6dcd-4721-9000-fa612161c492}*SharedItemsImports = 13
-       EndGlobalSection
-       GlobalSection(SolutionConfigurationPlatforms) = preSolution
-               Debug|Any CPU = Debug|Any CPU
-               Debug|x64 = Debug|x64
-               Debug|x86 = Debug|x86
-               Release|Any CPU = Release|Any CPU
-               Release|x64 = Release|x64
-               Release|x86 = Release|x86
-       EndGlobalSection
-       GlobalSection(ProjectConfigurationPlatforms) = postSolution
-               {8CCD862D-0BB5-4350-9B0C-286CD3A6A7FF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {8CCD862D-0BB5-4350-9B0C-286CD3A6A7FF}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {8CCD862D-0BB5-4350-9B0C-286CD3A6A7FF}.Debug|x64.ActiveCfg = Debug|Any CPU
-               {8CCD862D-0BB5-4350-9B0C-286CD3A6A7FF}.Debug|x64.Build.0 = Debug|Any CPU
-               {8CCD862D-0BB5-4350-9B0C-286CD3A6A7FF}.Debug|x86.ActiveCfg = Debug|Any CPU
-               {8CCD862D-0BB5-4350-9B0C-286CD3A6A7FF}.Debug|x86.Build.0 = Debug|Any CPU
-               {8CCD862D-0BB5-4350-9B0C-286CD3A6A7FF}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {8CCD862D-0BB5-4350-9B0C-286CD3A6A7FF}.Release|Any CPU.Build.0 = Release|Any CPU
-               {8CCD862D-0BB5-4350-9B0C-286CD3A6A7FF}.Release|x64.ActiveCfg = Release|Any CPU
-               {8CCD862D-0BB5-4350-9B0C-286CD3A6A7FF}.Release|x64.Build.0 = Release|Any CPU
-               {8CCD862D-0BB5-4350-9B0C-286CD3A6A7FF}.Release|x86.ActiveCfg = Release|Any CPU
-               {8CCD862D-0BB5-4350-9B0C-286CD3A6A7FF}.Release|x86.Build.0 = Release|Any CPU
-               {4D093123-296A-4471-A97F-58E5F8F2948D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {4D093123-296A-4471-A97F-58E5F8F2948D}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {4D093123-296A-4471-A97F-58E5F8F2948D}.Debug|x64.ActiveCfg = Debug|Any CPU
-               {4D093123-296A-4471-A97F-58E5F8F2948D}.Debug|x64.Build.0 = Debug|Any CPU
-               {4D093123-296A-4471-A97F-58E5F8F2948D}.Debug|x86.ActiveCfg = Debug|Any CPU
-               {4D093123-296A-4471-A97F-58E5F8F2948D}.Debug|x86.Build.0 = Debug|Any CPU
-               {4D093123-296A-4471-A97F-58E5F8F2948D}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {4D093123-296A-4471-A97F-58E5F8F2948D}.Release|Any CPU.Build.0 = Release|Any CPU
-               {4D093123-296A-4471-A97F-58E5F8F2948D}.Release|x64.ActiveCfg = Release|Any CPU
-               {4D093123-296A-4471-A97F-58E5F8F2948D}.Release|x64.Build.0 = Release|Any CPU
-               {4D093123-296A-4471-A97F-58E5F8F2948D}.Release|x86.ActiveCfg = Release|Any CPU
-               {4D093123-296A-4471-A97F-58E5F8F2948D}.Release|x86.Build.0 = Release|Any CPU
-               {184A0570-F7D8-4207-9B8C-CA48C018FEA8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {184A0570-F7D8-4207-9B8C-CA48C018FEA8}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {184A0570-F7D8-4207-9B8C-CA48C018FEA8}.Debug|x64.ActiveCfg = Debug|Any CPU
-               {184A0570-F7D8-4207-9B8C-CA48C018FEA8}.Debug|x64.Build.0 = Debug|Any CPU
-               {184A0570-F7D8-4207-9B8C-CA48C018FEA8}.Debug|x86.ActiveCfg = Debug|Any CPU
-               {184A0570-F7D8-4207-9B8C-CA48C018FEA8}.Debug|x86.Build.0 = Debug|Any CPU
-               {184A0570-F7D8-4207-9B8C-CA48C018FEA8}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {184A0570-F7D8-4207-9B8C-CA48C018FEA8}.Release|Any CPU.Build.0 = Release|Any CPU
-               {184A0570-F7D8-4207-9B8C-CA48C018FEA8}.Release|x64.ActiveCfg = Release|Any CPU
-               {184A0570-F7D8-4207-9B8C-CA48C018FEA8}.Release|x64.Build.0 = Release|Any CPU
-               {184A0570-F7D8-4207-9B8C-CA48C018FEA8}.Release|x86.ActiveCfg = Release|Any CPU
-               {184A0570-F7D8-4207-9B8C-CA48C018FEA8}.Release|x86.Build.0 = Release|Any CPU
-               {B6813215-D04E-44BA-8AF6-72EDA675C99C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {B6813215-D04E-44BA-8AF6-72EDA675C99C}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {B6813215-D04E-44BA-8AF6-72EDA675C99C}.Debug|x64.ActiveCfg = Debug|Any CPU
-               {B6813215-D04E-44BA-8AF6-72EDA675C99C}.Debug|x64.Build.0 = Debug|Any CPU
-               {B6813215-D04E-44BA-8AF6-72EDA675C99C}.Debug|x86.ActiveCfg = Debug|Any CPU
-               {B6813215-D04E-44BA-8AF6-72EDA675C99C}.Debug|x86.Build.0 = Debug|Any CPU
-               {B6813215-D04E-44BA-8AF6-72EDA675C99C}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {B6813215-D04E-44BA-8AF6-72EDA675C99C}.Release|Any CPU.Build.0 = Release|Any CPU
-               {B6813215-D04E-44BA-8AF6-72EDA675C99C}.Release|x64.ActiveCfg = Release|Any CPU
-               {B6813215-D04E-44BA-8AF6-72EDA675C99C}.Release|x64.Build.0 = Release|Any CPU
-               {B6813215-D04E-44BA-8AF6-72EDA675C99C}.Release|x86.ActiveCfg = Release|Any CPU
-               {B6813215-D04E-44BA-8AF6-72EDA675C99C}.Release|x86.Build.0 = Release|Any CPU
-               {BBB4DF2B-9D77-465B-A1C8-4EAD42F561BC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {BBB4DF2B-9D77-465B-A1C8-4EAD42F561BC}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {BBB4DF2B-9D77-465B-A1C8-4EAD42F561BC}.Debug|x64.ActiveCfg = Debug|Any CPU
-               {BBB4DF2B-9D77-465B-A1C8-4EAD42F561BC}.Debug|x64.Build.0 = Debug|Any CPU
-               {BBB4DF2B-9D77-465B-A1C8-4EAD42F561BC}.Debug|x86.ActiveCfg = Debug|Any CPU
-               {BBB4DF2B-9D77-465B-A1C8-4EAD42F561BC}.Debug|x86.Build.0 = Debug|Any CPU
-               {BBB4DF2B-9D77-465B-A1C8-4EAD42F561BC}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {BBB4DF2B-9D77-465B-A1C8-4EAD42F561BC}.Release|Any CPU.Build.0 = Release|Any CPU
-               {BBB4DF2B-9D77-465B-A1C8-4EAD42F561BC}.Release|x64.ActiveCfg = Release|Any CPU
-               {BBB4DF2B-9D77-465B-A1C8-4EAD42F561BC}.Release|x64.Build.0 = Release|Any CPU
-               {BBB4DF2B-9D77-465B-A1C8-4EAD42F561BC}.Release|x86.ActiveCfg = Release|Any CPU
-               {BBB4DF2B-9D77-465B-A1C8-4EAD42F561BC}.Release|x86.Build.0 = Release|Any CPU
-               {39D1AD7A-80D6-47F8-A6C7-93E4D25F84E5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {39D1AD7A-80D6-47F8-A6C7-93E4D25F84E5}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {39D1AD7A-80D6-47F8-A6C7-93E4D25F84E5}.Debug|x64.ActiveCfg = Debug|Any CPU
-               {39D1AD7A-80D6-47F8-A6C7-93E4D25F84E5}.Debug|x64.Build.0 = Debug|Any CPU
-               {39D1AD7A-80D6-47F8-A6C7-93E4D25F84E5}.Debug|x86.ActiveCfg = Debug|Any CPU
-               {39D1AD7A-80D6-47F8-A6C7-93E4D25F84E5}.Debug|x86.Build.0 = Debug|Any CPU
-               {39D1AD7A-80D6-47F8-A6C7-93E4D25F84E5}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {39D1AD7A-80D6-47F8-A6C7-93E4D25F84E5}.Release|Any CPU.Build.0 = Release|Any CPU
-               {39D1AD7A-80D6-47F8-A6C7-93E4D25F84E5}.Release|x64.ActiveCfg = Release|Any CPU
-               {39D1AD7A-80D6-47F8-A6C7-93E4D25F84E5}.Release|x64.Build.0 = Release|Any CPU
-               {39D1AD7A-80D6-47F8-A6C7-93E4D25F84E5}.Release|x86.ActiveCfg = Release|Any CPU
-               {39D1AD7A-80D6-47F8-A6C7-93E4D25F84E5}.Release|x86.Build.0 = Release|Any CPU
-               {7A4D58D3-EF64-46FC-B293-75F71D9938DF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {7A4D58D3-EF64-46FC-B293-75F71D9938DF}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {7A4D58D3-EF64-46FC-B293-75F71D9938DF}.Debug|x64.ActiveCfg = Debug|Any CPU
-               {7A4D58D3-EF64-46FC-B293-75F71D9938DF}.Debug|x64.Build.0 = Debug|Any CPU
-               {7A4D58D3-EF64-46FC-B293-75F71D9938DF}.Debug|x86.ActiveCfg = Debug|Any CPU
-               {7A4D58D3-EF64-46FC-B293-75F71D9938DF}.Debug|x86.Build.0 = Debug|Any CPU
-               {7A4D58D3-EF64-46FC-B293-75F71D9938DF}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {7A4D58D3-EF64-46FC-B293-75F71D9938DF}.Release|Any CPU.Build.0 = Release|Any CPU
-               {7A4D58D3-EF64-46FC-B293-75F71D9938DF}.Release|x64.ActiveCfg = Release|Any CPU
-               {7A4D58D3-EF64-46FC-B293-75F71D9938DF}.Release|x64.Build.0 = Release|Any CPU
-               {7A4D58D3-EF64-46FC-B293-75F71D9938DF}.Release|x86.ActiveCfg = Release|Any CPU
-               {7A4D58D3-EF64-46FC-B293-75F71D9938DF}.Release|x86.Build.0 = Release|Any CPU
-               {198A2943-3091-46FB-B967-B85D26496025}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {198A2943-3091-46FB-B967-B85D26496025}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {198A2943-3091-46FB-B967-B85D26496025}.Debug|x64.ActiveCfg = Debug|Any CPU
-               {198A2943-3091-46FB-B967-B85D26496025}.Debug|x64.Build.0 = Debug|Any CPU
-               {198A2943-3091-46FB-B967-B85D26496025}.Debug|x86.ActiveCfg = Debug|Any CPU
-               {198A2943-3091-46FB-B967-B85D26496025}.Debug|x86.Build.0 = Debug|Any CPU
-               {198A2943-3091-46FB-B967-B85D26496025}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {198A2943-3091-46FB-B967-B85D26496025}.Release|Any CPU.Build.0 = Release|Any CPU
-               {198A2943-3091-46FB-B967-B85D26496025}.Release|x64.ActiveCfg = Release|Any CPU
-               {198A2943-3091-46FB-B967-B85D26496025}.Release|x64.Build.0 = Release|Any CPU
-               {198A2943-3091-46FB-B967-B85D26496025}.Release|x86.ActiveCfg = Release|Any CPU
-               {198A2943-3091-46FB-B967-B85D26496025}.Release|x86.Build.0 = Release|Any CPU
-               {A689445F-79CA-4843-BB47-B39860C863CD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {A689445F-79CA-4843-BB47-B39860C863CD}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {A689445F-79CA-4843-BB47-B39860C863CD}.Debug|x64.ActiveCfg = Debug|Any CPU
-               {A689445F-79CA-4843-BB47-B39860C863CD}.Debug|x64.Build.0 = Debug|Any CPU
-               {A689445F-79CA-4843-BB47-B39860C863CD}.Debug|x86.ActiveCfg = Debug|Any CPU
-               {A689445F-79CA-4843-BB47-B39860C863CD}.Debug|x86.Build.0 = Debug|Any CPU
-               {A689445F-79CA-4843-BB47-B39860C863CD}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {A689445F-79CA-4843-BB47-B39860C863CD}.Release|Any CPU.Build.0 = Release|Any CPU
-               {A689445F-79CA-4843-BB47-B39860C863CD}.Release|x64.ActiveCfg = Release|Any CPU
-               {A689445F-79CA-4843-BB47-B39860C863CD}.Release|x64.Build.0 = Release|Any CPU
-               {A689445F-79CA-4843-BB47-B39860C863CD}.Release|x86.ActiveCfg = Release|Any CPU
-               {A689445F-79CA-4843-BB47-B39860C863CD}.Release|x86.Build.0 = Release|Any CPU
-               {017E4C5E-4CF8-4A84-898A-5045BF22646C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {017E4C5E-4CF8-4A84-898A-5045BF22646C}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {017E4C5E-4CF8-4A84-898A-5045BF22646C}.Debug|x64.ActiveCfg = Debug|Any CPU
-               {017E4C5E-4CF8-4A84-898A-5045BF22646C}.Debug|x64.Build.0 = Debug|Any CPU
-               {017E4C5E-4CF8-4A84-898A-5045BF22646C}.Debug|x86.ActiveCfg = Debug|Any CPU
-               {017E4C5E-4CF8-4A84-898A-5045BF22646C}.Debug|x86.Build.0 = Debug|Any CPU
-               {017E4C5E-4CF8-4A84-898A-5045BF22646C}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {017E4C5E-4CF8-4A84-898A-5045BF22646C}.Release|Any CPU.Build.0 = Release|Any CPU
-               {017E4C5E-4CF8-4A84-898A-5045BF22646C}.Release|x64.ActiveCfg = Release|Any CPU
-               {017E4C5E-4CF8-4A84-898A-5045BF22646C}.Release|x64.Build.0 = Release|Any CPU
-               {017E4C5E-4CF8-4A84-898A-5045BF22646C}.Release|x86.ActiveCfg = Release|Any CPU
-               {017E4C5E-4CF8-4A84-898A-5045BF22646C}.Release|x86.Build.0 = Release|Any CPU
-               {09C952B3-BE3F-447E-838F-CD9D14A76D09}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {09C952B3-BE3F-447E-838F-CD9D14A76D09}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {09C952B3-BE3F-447E-838F-CD9D14A76D09}.Debug|x64.ActiveCfg = Debug|Any CPU
-               {09C952B3-BE3F-447E-838F-CD9D14A76D09}.Debug|x64.Build.0 = Debug|Any CPU
-               {09C952B3-BE3F-447E-838F-CD9D14A76D09}.Debug|x86.ActiveCfg = Debug|Any CPU
-               {09C952B3-BE3F-447E-838F-CD9D14A76D09}.Debug|x86.Build.0 = Debug|Any CPU
-               {09C952B3-BE3F-447E-838F-CD9D14A76D09}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {09C952B3-BE3F-447E-838F-CD9D14A76D09}.Release|Any CPU.Build.0 = Release|Any CPU
-               {09C952B3-BE3F-447E-838F-CD9D14A76D09}.Release|x64.ActiveCfg = Release|Any CPU
-               {09C952B3-BE3F-447E-838F-CD9D14A76D09}.Release|x64.Build.0 = Release|Any CPU
-               {09C952B3-BE3F-447E-838F-CD9D14A76D09}.Release|x86.ActiveCfg = Release|Any CPU
-               {09C952B3-BE3F-447E-838F-CD9D14A76D09}.Release|x86.Build.0 = Release|Any CPU
-               {8B6E623C-51BF-46DA-8483-1ABD5CA0150B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {8B6E623C-51BF-46DA-8483-1ABD5CA0150B}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {8B6E623C-51BF-46DA-8483-1ABD5CA0150B}.Debug|x64.ActiveCfg = Debug|Any CPU
-               {8B6E623C-51BF-46DA-8483-1ABD5CA0150B}.Debug|x64.Build.0 = Debug|Any CPU
-               {8B6E623C-51BF-46DA-8483-1ABD5CA0150B}.Debug|x86.ActiveCfg = Debug|Any CPU
-               {8B6E623C-51BF-46DA-8483-1ABD5CA0150B}.Debug|x86.Build.0 = Debug|Any CPU
-               {8B6E623C-51BF-46DA-8483-1ABD5CA0150B}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {8B6E623C-51BF-46DA-8483-1ABD5CA0150B}.Release|Any CPU.Build.0 = Release|Any CPU
-               {8B6E623C-51BF-46DA-8483-1ABD5CA0150B}.Release|x64.ActiveCfg = Release|Any CPU
-               {8B6E623C-51BF-46DA-8483-1ABD5CA0150B}.Release|x64.Build.0 = Release|Any CPU
-               {8B6E623C-51BF-46DA-8483-1ABD5CA0150B}.Release|x86.ActiveCfg = Release|Any CPU
-               {8B6E623C-51BF-46DA-8483-1ABD5CA0150B}.Release|x86.Build.0 = Release|Any CPU
-               {061FB8A9-0CFC-4C6F-86AE-0E0505EDEA78}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {061FB8A9-0CFC-4C6F-86AE-0E0505EDEA78}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {061FB8A9-0CFC-4C6F-86AE-0E0505EDEA78}.Debug|x64.ActiveCfg = Debug|Any CPU
-               {061FB8A9-0CFC-4C6F-86AE-0E0505EDEA78}.Debug|x64.Build.0 = Debug|Any CPU
-               {061FB8A9-0CFC-4C6F-86AE-0E0505EDEA78}.Debug|x86.ActiveCfg = Debug|Any CPU
-               {061FB8A9-0CFC-4C6F-86AE-0E0505EDEA78}.Debug|x86.Build.0 = Debug|Any CPU
-               {061FB8A9-0CFC-4C6F-86AE-0E0505EDEA78}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {061FB8A9-0CFC-4C6F-86AE-0E0505EDEA78}.Release|Any CPU.Build.0 = Release|Any CPU
-               {061FB8A9-0CFC-4C6F-86AE-0E0505EDEA78}.Release|x64.ActiveCfg = Release|Any CPU
-               {061FB8A9-0CFC-4C6F-86AE-0E0505EDEA78}.Release|x64.Build.0 = Release|Any CPU
-               {061FB8A9-0CFC-4C6F-86AE-0E0505EDEA78}.Release|x86.ActiveCfg = Release|Any CPU
-               {061FB8A9-0CFC-4C6F-86AE-0E0505EDEA78}.Release|x86.Build.0 = Release|Any CPU
-       EndGlobalSection
-       GlobalSection(SolutionProperties) = preSolution
-               HideSolutionNode = FALSE
-       EndGlobalSection
-       GlobalSection(NestedProjects) = preSolution
-               {B6813215-D04E-44BA-8AF6-72EDA675C99C} = {BCEBC994-EAB5-4142-B60C-58FED3DFC835}
-               {BBB4DF2B-9D77-465B-A1C8-4EAD42F561BC} = {BCEBC994-EAB5-4142-B60C-58FED3DFC835}
-               {39D1AD7A-80D6-47F8-A6C7-93E4D25F84E5} = {BCEBC994-EAB5-4142-B60C-58FED3DFC835}
-               {7A4D58D3-EF64-46FC-B293-75F71D9938DF} = {BCEBC994-EAB5-4142-B60C-58FED3DFC835}
-               {198A2943-3091-46FB-B967-B85D26496025} = {BCEBC994-EAB5-4142-B60C-58FED3DFC835}
-               {A689445F-79CA-4843-BB47-B39860C863CD} = {BCEBC994-EAB5-4142-B60C-58FED3DFC835}
-               {50836253-D1BC-4BCC-B968-52974065F166} = {BCEBC994-EAB5-4142-B60C-58FED3DFC835}
-               {7295CB65-4F82-425B-A5CC-5DA241D5F6F1} = {50836253-D1BC-4BCC-B968-52974065F166}
-               {DCF6FC4F-A868-42A2-AEDA-DFD737B670B4} = {50836253-D1BC-4BCC-B968-52974065F166}
-               {3C82C042-F1F4-42E3-B82D-DFED5E06EE19} = {7295CB65-4F82-425B-A5CC-5DA241D5F6F1}
-               {017E4C5E-4CF8-4A84-898A-5045BF22646C} = {7295CB65-4F82-425B-A5CC-5DA241D5F6F1}
-               {7B89FD19-6DCD-4721-9000-FA612161C492} = {DCF6FC4F-A868-42A2-AEDA-DFD737B670B4}
-               {09C952B3-BE3F-447E-838F-CD9D14A76D09} = {DCF6FC4F-A868-42A2-AEDA-DFD737B670B4}
-               {AB224B2A-5582-4CD6-9A9D-C42CE8C5B9A1} = {BCEBC994-EAB5-4142-B60C-58FED3DFC835}
-               {8B6E623C-51BF-46DA-8483-1ABD5CA0150B} = {AB224B2A-5582-4CD6-9A9D-C42CE8C5B9A1}
-               {061FB8A9-0CFC-4C6F-86AE-0E0505EDEA78} = {AB224B2A-5582-4CD6-9A9D-C42CE8C5B9A1}
-       EndGlobalSection
-       GlobalSection(ExtensibilityGlobals) = postSolution
-               SolutionGuid = {4312D28C-6473-4391-B1AF-AAAFAF4FA0C1}
-       EndGlobalSection
-EndGlobal
diff --git a/test/Alarm/Alarm/Alarm.cs b/test/Alarm/Alarm/Alarm.cs
deleted file mode 100644 (file)
index ed91866..0000000
+++ /dev/null
@@ -1,147 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using Alarm.Controls;
-using Alarm.Implements;
-using Alarm.Models;
-using Alarm.Tizen.Renderers;
-using Alarm.ViewModels;
-using Alarm.Views;
-using System;
-using System.Collections.Generic;
-using System.Globalization;
-using System.Threading;
-using Tizen.Applications;
-using Tizen.System;
-using Tizen.Wearable.CircularUI.Forms;
-using Tizen.Wearable.CircularUI.Forms.Renderer;
-using Xamarin.Forms;
-using Xamarin.Forms.Platform.Tizen;
-
-namespace Alarm
-{
-    class Program : global::Xamarin.Forms.Platform.Tizen.ApplicationLifecycle
-    {
-        App app;
-        AlertPageModel _alertPageModel;
-
-        /// <summary>
-        /// Called when this application is launched
-        /// </summary>
-        protected override void OnCreate()
-        {
-            AlarmNativeHandler.ResourceDir = FormsApplication.DirectoryInfo.Resource;
-
-            base.OnCreate();
-
-            app = new App();
-
-            FormsApplication.LoadApplication(app);
-        }
-
-        protected override void OnPause()
-        {
-            Console.WriteLine("OnPause");
-            if (_alertPageModel != null)
-            {
-                if(_alertPageModel.AlertSoundState == SoundState.Start)
-                {
-                    Console.WriteLine("Alert sound state is start, pause alert sound!");
-                    _alertPageModel.PauseAlert();
-                }
-            }
-
-            base.OnPause();
-
-        }
-
-        protected override void OnResume()
-        {
-            Console.WriteLine("OnResume");
-            base.OnResume();
-        }
-
-        /// <summary>
-        /// Called when this app control event received.
-        /// </summary>
-        /// <param name="e">AppControlReceivedEventArgs</param>
-        async protected override void OnAppControlReceived(AppControlReceivedEventArgs e)
-        {
-            Console.WriteLine("OnAppControlReceived");
-            base.OnAppControlReceived(e);
-            AppControl appControl = e.ReceivedAppControl;
-            var navi = app.MainPage as NavigationPage;
-            var currentPage = navi.CurrentPage;
-            try
-            {
-                if (appControl.ExtraData.Count() != 0)
-                {
-                    string AlarmCreatedDate = appControl.ExtraData.Get<string>("AlarmRecord.UniqueIdentifier");
-                    Console.WriteLine($"ExtraData.Count() != 0 AlarmCreatedDate:{AlarmCreatedDate}");
-                    if (AlarmModel.AlarmRecordDictionary == null)
-                    {
-                        // Need to retrieve at the page creation time
-                        AlarmModel.AlarmRecordDictionary = AlarmPersistentHandler.DeserializeAlarmRecord();
-                    }
-
-                    AlarmRecord retrievedRecord;
-                    if (AlarmModel.AlarmRecordDictionary != null)
-                    {
-                        if (AlarmModel.AlarmRecordDictionary.TryGetValue(AlarmCreatedDate, out retrievedRecord))
-                        {
-                            if (retrievedRecord == null)
-                            {
-                                Console.WriteLine("[OnAppControlReceived] retrievedRecord is null!!");
-                            }
-
-                            Console.WriteLine("retrievedRecord:" + retrievedRecord);
-                            if (retrievedRecord != null && retrievedRecord.AlarmState < AlarmStates.Inactive)
-                            {
-                                _alertPageModel = new AlertPageModel(retrievedRecord); 
-                                await currentPage.Navigation.PushAsync(new AlarmAlertPage(_alertPageModel));
-                            }
-                        }
-                    }
-                }
-            }
-            catch (Exception ex)
-            {
-                Console.WriteLine("[OnAppControlReceived] Exception - Message: " + ex.Message + ", source: " + ex.Source + ", " + ex.StackTrace);
-            }
-        }
-
-        static void Main(string[] args)
-        {
-            var app = new Program();
-            // define your custom handlers
-            var customRenderers = new Dictionary<Type, Func<IRegisterable>>()
-            {
-                { typeof(CirclePage), ()=> new CirclePageRenderer() },
-                { typeof(global:: Tizen.Wearable.CircularUI.Forms.CircleListView), () => new CircleListViewRenderer() },
-                { typeof(CircleDateTimeSelector), () => new CircleDateTimeSelectorRenderer() },
-                { typeof(CustomImageButton), () => new CustomImageButtonRenderer() }
-             };
-
-            var option = new InitializationOptions(app);
-            option.UseStaticRegistrar(StaticRegistrarStrategy.StaticRegistrarOnly, customRenderers, true);
-            Forms.Init(option);
-
-            // It's mandatory to initialize Circular UI for using Tizen Wearable Circular UI API
-            global::Tizen.Wearable.CircularUI.Forms.Renderer.FormsCircularUI.Init();
-            app.FormsApplication.Run(args);
-        }
-    }
-}
diff --git a/test/Alarm/Alarm/Alarm.csproj b/test/Alarm/Alarm/Alarm.csproj
deleted file mode 100755 (executable)
index 3c373c0..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-<Project Sdk="Tizen.NET.Sdk/1.0.8">
-
-  <PropertyGroup>
-    <OutputType>Exe</OutputType>
-    <TargetFramework>tizen40</TargetFramework>
-  </PropertyGroup>
-
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugType>portable</DebugType>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>None</DebugType>
-  </PropertyGroup>
-
-  <ItemGroup>
-    <Folder Include="res\" />
-  </ItemGroup>
-
-  <ItemGroup>
-    <ProjectReference Include="..\..\..\src\XSF\XSF.csproj" />
-  </ItemGroup>
-
-</Project>
-
diff --git a/test/Alarm/Alarm/AlarmPageController.cs b/test/Alarm/Alarm/AlarmPageController.cs
deleted file mode 100644 (file)
index d880424..0000000
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using Xamarin.Forms;
-using Alarm.Models;
-using Alarm.Views;
-using System;
-using Alarm.ViewModels;
-
-namespace Alarm
-{
-    public enum AlarmPages
-    {
-        /// <summary>
-        /// alarm main page
-        /// </summary>
-        MainPage,
-        /// <summary>
-        /// alarm edit page
-        /// </summary>
-        EditPage,
-        /// <summary>
-        ///
-        /// </summary>
-        SavePoupPage
-    }
-
-    public static class AlarmPageController
-    {
-        /// <summary>
-        /// alarm list page
-        /// </summary>
-        static MainPage alarmMainPage;
-
-        /// <summary>
-        /// alarm edit page
-        /// </summary>
-        static AlarmEditPage alarmEditPage;
-
-        /// <summary>
-        /// no alarm page
-        /// </summary>
-        static SavePopupPage savePopupPage;
-
-        public static Page GetInstance(AlarmPages page, Object o = null)
-        {
-            switch (page)
-            {
-                case AlarmPages.MainPage:
-                    return AlarmPageController.alarmMainPage ?? (alarmMainPage = new MainPage(o as MainPageModel));
-                case AlarmPages.EditPage:
-                    // parameter 'o' is AlarmRecord object to show in AlarmEditPage.
-                    // 1. Copy values to AlarmModel.BindableAlarmRecord
-                    AlarmModel.BindableAlarmRecord.DeepCopy((AlarmRecord)o);
-                    // 2. Apply values to EditPage (at first, create UI. next time, just show it)
-                    alarmEditPage?.Update((AlarmRecord)o);
-                    return AlarmPageController.alarmEditPage ?? (alarmEditPage = new AlarmEditPage(o as AlarmRecord));
-                case AlarmPages.SavePoupPage:
-                    return AlarmPageController.savePopupPage ?? (savePopupPage = new SavePopupPage(o as AlarmRecord));
-                default:
-                    return null;
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/Alarm/Alarm/App.xaml b/test/Alarm/Alarm/App.xaml
deleted file mode 100644 (file)
index 9d7b48a..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<Application
-       x:Class="Alarm.App"
-       xmlns="http://xamarin.com/schemas/2014/forms"
-       xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml">
-       <Application.Resources>
-
-               <!--  Application resource dictionary  -->
-
-       </Application.Resources>
-</Application>
\ No newline at end of file
diff --git a/test/Alarm/Alarm/App.xaml.cs b/test/Alarm/Alarm/App.xaml.cs
deleted file mode 100644 (file)
index fd38f3f..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using Alarm.Implements;
-using Alarm.Models;
-using Alarm.ViewModels;
-using Alarm.Views;
-using System;
-using System.Globalization;
-using Tizen.Applications;
-using Xamarin.Forms;
-using Xamarin.Forms.Platform.Tizen;
-using Xamarin.Forms.Xaml;
-
-namespace Alarm
-{
-    /// <summary>
-    /// Alarm Application class
-    /// </summary>
-    [XamlCompilation(XamlCompilationOptions.Compile)]
-    public partial class App : Xamarin.Forms.Application
-    {
-        MainPage firstPage;
-
-        public static CultureInfo Culture { get; set; }
-
-        public App()
-        {
-            UpdateLocale();
-
-            InitializeComponent();
-
-            var alarmModel = new AlarmModel();
-            firstPage = (MainPage)AlarmPageController.GetInstance(AlarmPages.MainPage, new MainPageModel());
-            MainPage = new NavigationPage(firstPage);
-        }
-
-        protected override void OnStart()
-        {
-            // Handle when your app starts
-        }
-
-        protected override void OnSleep()
-        {
-            // Handle when your app sleeps
-        }
-
-        protected override void OnResume()
-        {
-            // Handle when your app resumes
-        }
-
-        /// <summary>
-        /// Get the current locale and apply it.
-        /// </summary>
-        public void UpdateLocale()
-        {
-            // determine the correct, supported .NET culture
-            var handler = new LocaleHandler();
-
-            Culture = handler.CurrentCultureInfo;
-            // set the RESX for resource localization
-            Resx.AppResources.Culture = Culture;
-
-            // Whenever language has been changed, CurrentCulture will be updated.
-            MessagingCenter.Subscribe<LocaleHandler, CultureInfo>(this, MessageKeys.LanguageChanged, (obj, culture) =>
-            {
-                Console.WriteLine($"Received LanguageChanged  culture:{culture.ToString()}");
-            });
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/Alarm/Alarm/Controls/ImageButton.cs b/test/Alarm/Alarm/Controls/ImageButton.cs
deleted file mode 100644 (file)
index 6f2d240..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Diagnostics;
-using System.Windows.Input;
-using Xamarin.Forms;
-
-namespace Alarm.Controls
-{
-    /// <summary>
-    /// A element button which is implemented with a custom renderer based on a native image. 
-    /// </summary>
-    public class CustomImageButton : Image
-    {
-        public static readonly BindableProperty PressedColorProperty = BindableProperty.Create("PressedColor", typeof(Color), typeof(CustomImageButton), Color.Default);
-
-        public event EventHandler Clicked;
-
-        public event EventHandler Released;
-
-        /// <summary>
-        /// A color when the button is pressed. 
-        /// </summary>
-        public Color PressedColor
-        {
-            get { return (Color)GetValue(PressedColorProperty); }
-            set { SetValue(PressedColorProperty, value); }
-        }
-
-        /// <summary>
-        /// To broadcast a click event to subscribers
-        /// </summary>
-        public void SendClicked()
-        {
-            Clicked?.Invoke(this, EventArgs.Empty);
-        }
-
-        /// <summary>
-        /// To broadcast a release event to subscribers
-        /// </summary>
-        public void SendReleased()
-        {
-            Released?.Invoke(this, EventArgs.Empty);
-        }
-
-        /// <summary>
-        /// CustomImageButton constructor
-        /// </summary>
-        public CustomImageButton()
-        {
-            PressedColor = Color.FromRgba(255, 255, 255, 100);
-        }
-    }
-}
diff --git a/test/Alarm/Alarm/Converters/ItemCountToVisibilityConverter.cs b/test/Alarm/Alarm/Converters/ItemCountToVisibilityConverter.cs
deleted file mode 100644 (file)
index 29aee45..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Globalization;
-using Xamarin.Forms;
-
-namespace Alarm.Converters
-{
-    public enum MainPageType
-    {
-        // Empty layout
-        Empty,
-        // ListView
-        ListView,
-        //Action Button
-        Button,
-    }
-
-    /// <summary>
-    /// Converter class
-    /// This class converts bindable source value to proper target value
-    /// Depending on the number of items in ListView, control ListView's visibility
-    /// </summary>
-    class ItemCountToVisibilityConverter : IValueConverter
-    {
-        /// <summary>
-        /// Converting source value to target value
-        /// </summary>
-        /// <param name="value">Source object</param>
-        /// <param name="targetType">The target type to convert</param>
-        /// <param name="parameter">parameter object</param>
-        /// <param name="culture">The culture info</param>
-        /// <returns>Returns converted bool to decide UI widget's visibility</returns>
-        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            int count = System.Convert.ToInt32(value);
-            MainPageType type = (MainPageType)parameter;
-            bool flag = false;
-            switch (type)
-            {
-                case MainPageType.ListView:
-                case MainPageType.Button:
-                    flag = false;
-                    break;
-                case MainPageType.Empty:
-                default:
-                    flag = true;
-                    break;
-            }
-
-            //Console.WriteLine($"[ItemCountToVisibilityConverter] type:{type}, flag:{flag}, count:{count}");
-            if (count == 0)
-            {
-                return (bool)System.Convert.ToBoolean(flag);
-            }
-
-            return (bool)!System.Convert.ToBoolean(flag);
-        }
-
-        /// <summary>
-        /// Converting back source value to target value
-        /// This method is not being used in this app.
-        /// </summary>
-        /// <param name="value">Source object</param>
-        /// <seealso cref="System.object">
-        /// <param name="targetType">The target type to convert</param>
-        /// <seealso cref="Type">
-        /// <param name="CultureInfo">The culture info</param>
-        /// <seealso cref="CultureInfo">
-        /// <returns>Returns null</returns>
-        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            return null;
-        }
-    }
-}
diff --git a/test/Alarm/Alarm/Converters/ScheduledDateTimeToTextConverter.cs b/test/Alarm/Alarm/Converters/ScheduledDateTimeToTextConverter.cs
deleted file mode 100644 (file)
index c9fe4b0..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Globalization;
-using Xamarin.Forms;
-
-namespace Alarm.Converters
-{
-    /// <summary>
-    /// Converter class
-    /// This class converts bindable source value to proper target value
-    /// Depending on the Alarm time label's text value
-    /// </summary>
-    class ScheduledDateTimeToTextConverter : IValueConverter
-    {
-        /// <summary>
-        /// Converting source value to target value
-        /// </summary>
-        /// <param name="value">Source object</param>
-        /// <seealso cref="System.object">
-        /// <param name="targetType">The target type to convert</param>
-        /// <seealso cref="Type">
-        /// <param name="CultureInfo">The culture info</param>
-        /// <seealso cref="CultureInfo">
-        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            DateTime time = (DateTime)value;
-            string text = "";
-            text = time.ToString("hh") + ":" + time.ToString("mm") + " " + time.ToString("tt");
-            //Console.WriteLine($"ScheduledDateTimeToTextConverter {text}");
-            return text;
-        }
-
-        /// <summary>
-        /// Converting back source value to target value
-        /// This method is not being used in this app.
-        /// </summary>
-        /// <param name="value">Source object</param>
-        /// <seealso cref="System.object">
-        /// <param name="targetType">The target type to convert</param>
-        /// <seealso cref="Type">
-        /// <param name="CultureInfo">The culture info</param>
-        /// <seealso cref="CultureInfo">
-        /// <returns>Returns null</returns>
-        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            return null;
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/Alarm/Alarm/Implements/AlarmNativeHandler.cs b/test/Alarm/Alarm/Implements/AlarmNativeHandler.cs
deleted file mode 100644 (file)
index 058c5ef..0000000
+++ /dev/null
@@ -1,184 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using Alarm.Models;
-using Native = Tizen.Applications;
-using Tizen.Multimedia;
-using Tizen.System;
-using System;
-
-namespace Alarm.Implements
-{
-    /// <summary>
-    /// The Alarm class
-    /// </summary>
-    public static class AlarmNativeHandler
-    {
-        static AudioStreamPolicy audioStreamPolicy;
-        static Feedback feedback;
-        static Player player;
-        static string SoundNotificationUri = "Notification.ogg";
-
-        public static string ResourceDir { get; set; }
-
-        /// <summary>
-        /// Gets system alarm ID from alarm object
-        /// </summary>
-        /// <param name="alarm">AlarmRecord object to get system alarm ID from</param>
-        /// <seealso cref="AlarmRecord">
-        /// <returns> Returns system alarm ID </returns>
-        public static int GetAlarmID(object alarm)
-        {
-            Native.Alarm nativeAlarm = alarm as Native.Alarm;
-            return nativeAlarm.AlarmId;
-        }
-
-        /// <summary>
-        /// Creates a system alarm of AlarmRecord
-        /// </summary>
-        /// <param name="binableAlarmRecord">AlarmRecord object to create a system alarm based on</param>
-        /// <seealso cref="AlarmRecord">
-        /// <returns> Returns native alarm object </returns>
-        public static int CreateAlarm(AlarmRecord record)
-        {
-            Native.AppControl appControl = new Native.AppControl()
-            {
-                ApplicationId = Native.Application.Current.ApplicationInfo.ApplicationId
-            };
-            appControl.ExtraData.Add("AlarmRecord.UniqueIdentifier", record.GetUniqueIdentifier());
-            //temporary set AllDays , After implement select day of week. additional implementation should be add.
-            Native.Alarm nativeAlarm = Native.AlarmManager.CreateAlarm(record.ScheduledDateTime, Native.AlarmWeekFlag.AllDays, appControl);
-            Console.WriteLine("@@ [Alarm.CreateAlarm] UID : " + record.GetUniqueIdentifier()
-               + ", ScheduledDateTime : " + record.ScheduledDateTime + " NativeAlarmID : " + nativeAlarm.AlarmId);
-            return nativeAlarm.AlarmId;
-        }
-
-        /// <summary>
-        /// Cancel a system alarm of AlarmRecord
-        /// </summary>
-        /// <param name="binableAlarmRecord">AlarmRecord object relevant to a system alarm to cancel</param>
-        /// <seealso cref="AlarmRecord">
-        public static void DeleteAlarm(AlarmRecord record)
-        {
-            var allAlarms = Native.AlarmManager.GetAllScheduledAlarms();
-            foreach (Native.Alarm item in allAlarms)
-            {
-                if (item.AlarmId == record.NativeAlarmID)
-                {
-                    Console.WriteLine("@@ [Alarm.DeleteAlarm] Cancel NativeAlarmID:" + record.NativeAlarmID + ", UID:" + record.GetUniqueIdentifier());
-                    item.Cancel();
-                    record.NativeAlarmID = 0;
-                    break;
-                }
-            }
-        }
-
-        /// <summary>
-        /// Update the system alarm
-        /// </summary>
-        /// <param name="record">AlarmRecord</param>
-        public static void UpdateAlarm(ref AlarmRecord record)
-        {
-            DeleteAlarm(record);
-            record.NativeAlarmID = CreateAlarm(record);
-        }
-
-        /// <summary>
-        /// Starts to vibrate
-        /// </summary>
-        public static void StartVibration()
-        {
-            feedback = new Feedback();
-            if (feedback.IsSupportedPattern(FeedbackType.Vibration, "Timer"))
-            {
-                feedback.Play(FeedbackType.Vibration, "Timer");
-            }
-        }
-
-        /// <summary>
-        /// Stops to vibrate
-        /// </summary>
-        public static void StopVibration()
-        {
-            if (feedback != null)
-            {
-                feedback.Stop();
-            }
-        }
-
-        /// <summary>
-        /// Asynchronously plays ringing sound
-        /// </summary>
-        async public static void PlaySound()
-        {
-            if (player == null)
-            {
-                audioStreamPolicy = new AudioStreamPolicy(AudioStreamType.Alarm);
-                audioStreamPolicy.AcquireFocus(AudioStreamFocusOptions.Playback, AudioStreamBehaviors.Fading, null);
-
-                player = new Player();
-                string uri = ResourceDir + SoundNotificationUri;
-                MediaUriSource soudSource = new MediaUriSource(uri);
-                player.SetSource(soudSource);
-
-                player.ApplyAudioStreamPolicy(audioStreamPolicy);
-                await player.PrepareAsync();
-                player.IsLooping = true;
-                player.Volume = 1;
-                if (player.State == PlayerState.Ready)
-                {
-                    player.Start();
-                }
-            }
-        }
-
-        public static void PauseSound()
-        {
-            if (player.State == PlayerState.Playing)
-            {
-                player.Stop();
-            }
-        }
-
-        public static void ResumeSound()
-        {
-            if (player.State == PlayerState.Paused || player.State == PlayerState.Ready)
-            {
-                player.Start();
-            }
-        }
-
-        /// <summary>
-        /// Asynchronously stops ringing
-        /// </summary>
-        public static void StopSound()
-        {
-            if (player != null)
-            {
-                player.Stop();
-                player.Unprepare();
-                audioStreamPolicy.ReleaseFocus(AudioStreamFocusOptions.Playback, AudioStreamBehaviors.Fading, null);
-                player.Dispose();
-                player = null;
-            }
-
-            if (audioStreamPolicy != null)
-            {
-                audioStreamPolicy.Dispose();
-            }
-        }
-    }
-}
diff --git a/test/Alarm/Alarm/Implements/AlarmPersistentHandler.cs b/test/Alarm/Alarm/Implements/AlarmPersistentHandler.cs
deleted file mode 100644 (file)
index e7e7213..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-
-using System;
-using System.Collections.Generic;
-using System.IO;
-using System.Runtime.Serialization;
-using System.Threading.Tasks;
-using System.Xml;
-using Alarm.Models;
-
-namespace Alarm.Implements
-{
-    /// <summary>
-    /// The Deserializer class to deserialize an AlarmRecord object
-    /// </summary>
-    public static class AlarmPersistentHandler
-    {
-        const string AlarmRecordStoreFile = "AlarmRecordFile.xml";
-
-        /// <summary>
-        /// Deserializes an AlarmRecord object from XML document
-        /// </summary>
-        /// <returns> a collection of <string, AlarmRecord></string> </returns>
-        public static IDictionary<string, AlarmRecord> DeserializeAlarmRecord()
-        {
-            Console.WriteLine("DeserializeAlarmRecord");
-            Stream alarmFileStream = null;
-            var fileOpener = new FileOpener();
-            alarmFileStream = fileOpener.OpenFile(AlarmRecordStoreFile, System.IO.FileMode.OpenOrCreate);
-            if (alarmFileStream.Length == 0)
-            {
-                return null;
-            }
-
-            using (XmlDictionaryReader alarmReader = XmlDictionaryReader.CreateBinaryReader(alarmFileStream, XmlDictionaryReaderQuotas.Max))
-            {
-                var dataContractSerializer = new DataContractSerializer(typeof(Dictionary<string, AlarmRecord>));
-                Object ret1 = dataContractSerializer.ReadObject(alarmReader);
-                alarmFileStream = null;
-                return (IDictionary<string, AlarmRecord>)ret1;
-            }
-        }
-
-        /// <summary>
-        /// Serializes an AlarmRecord object to XML document
-        /// </summary>
-        /// <param name="properties">AlarmRecordDictionary object to serialize</param>
-        /// <seealso cref="IDictionary<string, AlarmRecord>">
-        /// <returns> Task return type </returns>
-        public static Task SerializeAlarmRecordAsync(IDictionary<string, AlarmRecord> properties)
-        {
-            Console.WriteLine("SerializeAlarmRecordAsync");
-            //properties = new Dictionary<string, object>(properties);
-            // Serialize property dictionary to local storage
-            // Make sure to use Internal
-            return Task.Run(() =>
-            {
-                Stream alarmFileStream = null;
-                var fileOpener = new FileOpener();
-                try
-                {
-                    alarmFileStream = fileOpener.OpenFile(AlarmRecordStoreFile, System.IO.FileMode.Create);
-                    using (XmlDictionaryWriter alarmWriter = XmlDictionaryWriter.CreateBinaryWriter(alarmFileStream))
-                    {
-                        var dataContractSerializer = new DataContractSerializer(typeof(Dictionary<string, AlarmRecord>));
-                        dataContractSerializer.WriteObject(alarmWriter, properties);
-                        alarmFileStream = null;
-                        alarmWriter.Flush();
-                    }
-                }
-                catch (Exception e)
-                {
-                    Console.WriteLine("[Alarm serialization error] " + e.Message);
-                }
-                finally
-                {
-                    if (alarmFileStream != null)
-                    {
-                        alarmFileStream.Dispose();
-                    }
-                }
-
-                return;
-            });
-        }
-    }
-}
diff --git a/test/Alarm/Alarm/Implements/FileOpener.cs b/test/Alarm/Alarm/Implements/FileOpener.cs
deleted file mode 100644 (file)
index 40641b3..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-
-using System;
-using System.IO;
-using TApplication = Tizen.Applications.Application;
-
-namespace Alarm.Implements
-{
-    /// <summary>
-    /// The FileAccessor class
-    /// </summary>
-    class FileOpener
-    {
-        string _path;
-
-        internal FileOpener()
-        {
-            _path = TApplication.Current.DirectoryInfo.Data;
-        }
-
-        public Stream OpenFile(string filePath, System.IO.FileMode fileMode)
-        {
-            if (filePath == null || filePath.Trim().Length == 0)
-            {
-                throw new ArgumentNullException("File path arguments are invalid.");
-            }
-
-            return new FileStream(Path.Combine(_path, filePath), fileMode, System.IO.FileAccess.ReadWrite, System.IO.FileShare.Read);
-        }
-    }
-}
diff --git a/test/Alarm/Alarm/Implements/LocaleHandler.cs b/test/Alarm/Alarm/Implements/LocaleHandler.cs
deleted file mode 100644 (file)
index 9a4ba66..0000000
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Globalization;
-using Tizen.System;
-using System.Threading;
-using Xamarin.Forms;
-using Alarm.Models;
-using Xamarin.Forms.Platform.Tizen;
-
-namespace Alarm.Implements
-{
-    public class LocaleHandler
-    {
-        CultureInfo _currentCultureInfo;
-
-        public LocaleHandler()
-        {
-            _currentCultureInfo = GetCurrentCultureInfo();
-
-            // To get notified when system locale settings has been changed
-            SystemSettings.LocaleLanguageChanged += OnLanguageChanged;
-        }
-
-        /// <summary>
-        /// Get the current CultureInfo
-        /// </summary>
-        public CultureInfo CurrentCultureInfo
-        {
-            get
-            {
-                return _currentCultureInfo;
-            }
-        }
-
-        /// <summary>
-        /// Set the current CultureInfo
-        /// </summary>
-        /// <param name="info">CultureInfo</param>
-        public void SetLocale(CultureInfo info)
-        {
-            Thread.CurrentThread.CurrentCulture = info;
-            Thread.CurrentThread.CurrentUICulture = info;
-        }
-
-        /// <summary>
-        /// Get CultureInfo from the locale information
-        /// </summary>
-        /// <returns>CultureInfo</returns>
-        CultureInfo GetCurrentCultureInfo()
-        {
-            var netLanguage = "en";
-            var TizenLocale = SystemSettings.LocaleLanguage;
-
-            netLanguage = TizenToDotnetLanguage(TizenLocale.ToString().Replace("_", "-"));
-            CultureInfo info = null;
-            try
-            {
-                info = new CultureInfo(netLanguage);
-            }
-            catch (CultureNotFoundException e1)
-            {
-                Console.WriteLine($"cannot find the current cultureInfo. so use 'en'. {e1.Message}");
-                info = new CultureInfo("en");
-            }
-
-            return info;
-        }
-
-        /// <summary>
-        /// Invoked when system locale setting has been changed
-        /// </summary>
-        /// <param name="sender">object</param>
-        /// <param name="e">LocaleLanguageChangedEventArgs</param>
-        private void OnLanguageChanged(object sender, LocaleLanguageChangedEventArgs e)
-        {
-            Console.WriteLine($"OnLanguageChanged");
-            CultureInfo info = GetCurrentCultureInfo();
-            _currentCultureInfo = info;
-            SetLocale(info);
-
-            // set the RESX for resource localization
-            Resx.AppResources.Culture = info;
-
-            // Notify the change of locale information
-            MessagingCenter.Send<LocaleHandler,CultureInfo>(this, MessageKeys.LanguageChanged, info);
-        }
-
-        string TizenToDotnetLanguage(string tizenLanguage)
-        {
-            var netLanguage = tizenLanguage;
-            //certain languages need to be converted to CultureInfo equivalent
-            switch (tizenLanguage)
-            {
-                case "zh-CN":   // Chinese Simplified (People's Republic of China)
-                    netLanguage = "zh-Hans"; // correct code for .NET
-                    break;
-                case "zh-HK":  // Chinese Traditional (Hong Kong)
-                case "zh-hk":
-                case "zh-tw":  // Chinese Traditional (Taiwan)
-                case "zh-TW":
-                    netLanguage = "zh-Hant"; // correct code for .NET
-                    break;
-            }
-
-            //Console.WriteLine($".NET Language/Locale:{netLanguage}");
-            return netLanguage;
-        }
-    }
-}
diff --git a/test/Alarm/Alarm/Models/AlarmModel.cs b/test/Alarm/Alarm/Models/AlarmModel.cs
deleted file mode 100644 (file)
index 2c24e6f..0000000
+++ /dev/null
@@ -1,283 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
-using Alarm.Implements;
-
-namespace Alarm.Models
-{
-    /// <summary>
-    /// AlarmModel class
-    /// </summary>
-    public class AlarmModel : INotifyPropertyChanged
-    {
-        /// <summary>
-        /// Gets/Sets AlarmRecordDictionary
-        /// </summary>
-        public static IDictionary<string, AlarmRecord> AlarmRecordDictionary { get; set; }
-
-        /// <summary>
-        /// ObservableAlarmList property
-        /// </summary>
-        public static ObservableCollection<AlarmRecord> ObservableAlarmList { get; set; }
-
-        /// <summary>
-        /// This static field holds current alarm record which is being displayed for alarm info input.
-        /// Through this record, edit view is automatically updated when users select certain option in sub pages.
-        /// </summary>
-        public static AlarmRecord BindableAlarmRecord { get; set; }
-
-        /// <summary>
-        /// AlarmModel constructor
-        /// </summary>
-        public AlarmModel()
-        {
-            ObservableAlarmList = new ObservableCollection<AlarmRecord>();
-            AlarmRecordDictionary = AlarmPersistentHandler.DeserializeAlarmRecord();
-            BindableAlarmRecord = new AlarmRecord();
-            if (AlarmRecordDictionary == null)
-            {
-                AlarmRecordDictionary = new Dictionary<string, AlarmRecord>();
-            }
-            else
-            {
-                foreach (var alarmItem in AlarmRecordDictionary)
-                {
-                    Console.WriteLine("alarmItem key:" + alarmItem.Key);
-                    // Key is DateCreated
-                    var keyString = alarmItem.Key;
-                    // Retrieve alarm record
-                    AlarmRecord retrieved = alarmItem.Value;
-                    Console.WriteLine("retrieved:" + retrieved.ToString());
-                    // Add the retrieved alarm to list for AlarmListUI
-                    ObservableAlarmList.Add(retrieved);
-                }
-            }
-        }
-
-        /// <summary>
-        /// Update alarm record
-        /// </summary>
-        /// <param name="record">AlarmRecord</param>
-        public static void UpdateAlarm(AlarmRecord record)
-        {
-            var obj = record;
-            // Update native alarm
-            AlarmNativeHandler.UpdateAlarm(ref obj);
-            record = obj;
-            string alarmUID = record.GetUniqueIdentifier();
-
-            // Update list
-            for (int i = 0; i < ObservableAlarmList.Count; i++)
-            {
-                AlarmRecord item = ObservableAlarmList[i];
-                if (item.GetUniqueIdentifier() == alarmUID)
-                {
-                    Console.WriteLine("Found AlarmRecord(UID: " + item.GetUniqueIdentifier() + ") in ObservableAlarmList.");
-                    AlarmRecordDictionary.Remove(alarmUID);
-                    item.DeepCopy(record);
-                    AlarmRecordDictionary.Add(alarmUID, item);
-                    SaveDictionary();
-                    break;
-                }
-            }
-        }
-
-        /// <summary>
-        /// Create native alarm
-        /// </summary>
-        public static void CreateAlarm()
-        {
-            // create a native alarm using AlarmModel.BindableAlarmRecord
-            // After then, update Native alarm ID.
-            BindableAlarmRecord.NativeAlarmID = AlarmNativeHandler.CreateAlarm(BindableAlarmRecord);
-
-            AlarmRecord record = new AlarmRecord();
-            record.DeepCopy(BindableAlarmRecord);
-            ObservableAlarmList.Add(record);
-            AlarmRecordDictionary.Add(record.GetUniqueIdentifier(), record);
-            SaveDictionary();
-        }
-
-        /// <summary>
-        /// Cancel native alarm
-        /// and then remove AlarmRecord from ObservableAlarmList and AlarmRecordDictionary
-        /// </summary>
-        /// <param name="alarm">AlarmRecord</param>
-        public static void DeleteAlarm(AlarmRecord alarm)
-        {
-            Console.WriteLine("DeleteAlarm:" + alarm.ToString());
-            // Cancel the native alarm
-            AlarmNativeHandler.DeleteAlarm(alarm);
-            string UID = alarm.GetUniqueIdentifier();
-            // Delete alarm from dictionary
-            AlarmModel.AlarmRecordDictionary.Remove(UID);
-            // Delete alarm from List
-            for (int i = AlarmModel.ObservableAlarmList.Count - 1; i >= 0; i--)
-            {
-                if (AlarmModel.ObservableAlarmList[i].GetUniqueIdentifier() == UID)
-                {
-                    ObservableAlarmList.RemoveAt(i);
-                    break;
-                }
-            }
-
-            AlarmModel.SaveDictionary();
-        }
-
-        /// <summary>
-        /// Cancel native alarm
-        /// and then deactivate AlarmRecord from AlarmRecordDictionary
-        /// </summary>
-        /// <param name="record">AlarmRecord</param>
-        public static void DeactivatelAlarm(AlarmRecord record)
-        {
-            //1. cancel native alarm
-            AlarmNativeHandler.DeleteAlarm(record);
-            //2. Make AlarmRecord's AlarmState
-            string UID = record.GetUniqueIdentifier();
-            UpdateDictionaryAndList(UID, 0, false);
-        }
-
-        /// <summary>
-        /// Reactivate AlarmRecord
-        /// </summary>
-        /// <param name="record">AlarmRecord for reactivating</param>
-        public static void ReactivatelAlarm(AlarmRecord record)
-        {
-            //1. register native alarm
-            int NativeAlarmID = AlarmNativeHandler.CreateAlarm(record);
-            //2. Update NativeAlarmID and AlarmState
-            string UID = record.GetUniqueIdentifier();
-        }
-
-        /// <summary>
-        /// Update AlarmRecord Dictionary and ObservableAlarmList
-        /// </summary>
-        /// <param name="UID">AlarmRecord unique ID</param>
-        /// <param name="NativeAlarmID">Native AlarmID</param>
-        /// <param name="active">active state of AlarmRecord</param>
-        private static void UpdateDictionaryAndList(string UID, int NativeAlarmID, bool active)
-        {
-            for (int i = 0; i < AlarmModel.ObservableAlarmList.Count; i++)
-            {
-                AlarmRecord item = AlarmModel.ObservableAlarmList[i];
-                if (item.GetUniqueIdentifier() == UID)
-                {
-                    AlarmModel.AlarmRecordDictionary.Remove(UID);
-                    item.NativeAlarmID = NativeAlarmID;
-                    if (active)
-                    {
-                        item.AlarmState = AlarmStates.Active;
-                    }
-                    else
-                    {
-                        item.AlarmState = AlarmStates.Inactive;
-                    }
-
-                    AlarmModel.AlarmRecordDictionary.Add(UID, item);
-                    AlarmModel.SaveDictionary();
-                    break;
-                }
-            }
-        }
-
-        /// <summary>
-        /// Serializes alarm record dictionary object and save it to file
-        /// </summary>
-        public static void SaveDictionary()
-        {
-           AlarmPersistentHandler.SerializeAlarmRecordAsync(AlarmModel.AlarmRecordDictionary).Wait();
-        }
-
-        ///<summary>
-        ///Event that is raised when the properties of AlarmRecord change
-        ///</summary>
-        public event PropertyChangedEventHandler PropertyChanged;
-
-        /// <summary>
-        /// When property is changed, registered event callback is invoked
-        /// </summary>
-        /// <param name="propertyName">Property name of the change event occured</param>
-        protected virtual void OnPropertyChanged(string propertyName)
-        {
-            if (PropertyChanged != null)
-            {
-                PropertyChanged(this,
-                    new PropertyChangedEventArgs(propertyName));
-            }
-        }
-
-        /// <summary>
-        /// PrintAll method for debugging.
-        /// </summary>
-        /// <param name="methodName">method name for printing</param>
-        public static void PrintAll(string methodName)
-        {
-            Console.WriteLine("");
-            Console.WriteLine("+++++++++++++++      PrintAll      ++++++++++");
-            Console.WriteLine("  START " + methodName);
-            if (AlarmModel.AlarmRecordDictionary != null)
-            {
-                Console.WriteLine("   AlarmRecordDictionary");
-                foreach (var item in AlarmModel.AlarmRecordDictionary)
-                {
-                    Console.WriteLine(" Key: " + item.Key + ", Value:" + item.Value.ToString());
-                }
-            }
-
-            Console.WriteLine("");
-            int count = 1;
-            if (AlarmModel.ObservableAlarmList != null)
-            {
-                Console.WriteLine("   ObservableAlarmList");
-                foreach (AlarmRecord item in AlarmModel.ObservableAlarmList)
-                {
-                    Console.WriteLine(count++ + ")" + item.ToString());
-                }
-            }
-
-            Console.WriteLine("");
-            count = 1;
-            Console.WriteLine("  END   " + methodName);
-        }
-
-        /// <summary>
-        /// Determines whether ObservableAlarmList contains an alarm which is scheduled at the same time.
-        /// </summary>
-        /// <param name="duplicate">AlarmRecord</param>
-        /// <returns> true if a same alarm is found in the list; otherwise, false.</returns>
-        public static bool CheckAlarmExist(ref AlarmRecord duplicate)
-        {
-            foreach (AlarmRecord item in AlarmModel.ObservableAlarmList)
-            {
-                // Check scheduled time and alarm name
-                if (item.ScheduledDateTime.Equals(AlarmModel.BindableAlarmRecord.ScheduledDateTime))
-                {
-                    // a same alarm is found.
-                    duplicate.DeepCopy(item);
-                    return true;
-                }
-            }
-            // there's no same alarm.
-            duplicate = null;
-            return false;
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/Alarm/Alarm/Models/AlarmRecord.cs b/test/Alarm/Alarm/Models/AlarmRecord.cs
deleted file mode 100644 (file)
index b18ce11..0000000
+++ /dev/null
@@ -1,279 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.ComponentModel;
-
-namespace Alarm.Models
-{
-    [Flags]
-    public enum AlarmWeekFlag
-    {
-        /// <summary>
-        /// Identifier for Never
-        /// </summary>
-        Never = 0x00,
-
-        /// <summary>
-        /// Identifier for Sunday.
-        /// </summary>
-        Sunday = 0x01,
-
-        /// <summary>
-        /// Identifier for Monday.
-        /// </summary>
-        Monday = 0x02,
-
-        /// <summary>
-        /// Identifier for Tuesday.
-        /// </summary>
-        Tuesday = 0x04,
-
-        /// <summary>
-        /// Identifier for Wednesday.
-        /// </summary>
-        Wednesday = 0x08,
-
-        /// <summary>
-        /// Identifier for Thursday.
-        /// </summary>
-        Thursday = 0x10,
-
-        /// <summary>
-        /// Identifier for Friday.
-        /// </summary>
-        Friday = 0x20,
-
-        /// <summary>
-        /// Identifier for Saturday.
-        /// </summary>
-        Saturday = 0x40,
-
-        /// <summary>
-        /// All Days of the Week.
-        /// </summary>
-        AllDays = Sunday | Monday | Tuesday | Wednesday | Thursday | Friday | Saturday,
-
-        /// <summary>
-        /// Only Weekdays
-        /// </summary>
-        WeekDays = Monday | Tuesday | Wednesday | Thursday | Friday
-    }
-
-    /// <summary>
-    /// The enumeration of AlarmStates
-    /// </summary>
-    public enum AlarmStates
-    {
-        /// <summary>
-        /// Identifier for Snooze
-        /// </summary>
-        Snooze,
-        /// <summary>
-        /// Identifier for Active
-        /// </summary>
-        Active,
-        /// <summary>
-        /// Identifier for Inactive
-        /// </summary>
-        Inactive,
-    }
-
-    public class AlarmRecord : INotifyPropertyChanged
-    {
-        private DateTime _scheduledDateTime;
-        /// <summary>
-        /// Gets/Sets ScheduledDateTime
-        /// </summary>
-        public DateTime ScheduledDateTime
-        {
-            get
-            {
-                return _scheduledDateTime;
-            }
-
-            set
-            {
-                if (_scheduledDateTime != value)
-                {
-                    _scheduledDateTime = value;
-                    PropertyChanged?.Invoke(this, new PropertyChangedEventArgs("ScheduledDateTime"));
-                }
-            }
-        }
-
-        private AlarmWeekFlag _weekFlag;
-        /// <summary>
-        /// Gets/Sets the day of week when an alarm recurs
-        /// </summary>
-        public AlarmWeekFlag WeekFlag
-        {
-            get
-            {
-                return _weekFlag;
-            }
-
-            set
-            {
-                if (_weekFlag != value)
-                {
-                    _weekFlag = value;
-                    PropertyChanged?.Invoke(this, new PropertyChangedEventArgs("WeekFlag"));
-                }
-            }
-        }
-
-        private AlarmStates _alarmstate;
-        /// <summary>
-        /// Gets/Sets the state of alarm
-        /// </summary>
-        public AlarmStates AlarmState
-        {
-            get { return _alarmstate; }
-            set
-            {
-                if (_alarmstate != value)
-                {
-                    _alarmstate = value;
-                    OnPropertyChanged("AlarmState");
-                }
-            }
-        }
-
-        /// <summary>
-        /// Gets/Sets alarm creation time
-        /// It is used as a Key in AlarmRecordDictionary.
-        /// </summary>
-        public TimeSpan DateCreated { get; set; }
-
-        /// <summary>
-        /// Gets/Sets system alarm ID
-        /// </summary>
-        public int NativeAlarmID { get; set; }
-
-
-        private bool _isSerialized;
-
-        /// <summary>
-        /// Gets/Sets whether the AlarmRecord object has been serialized
-        /// This indicates whether it is newly created or not.
-        /// </summary>
-        public bool IsSerialized
-        {
-            get
-            {
-                return _isSerialized;
-            }
-
-            set
-            {
-                if (_isSerialized != value)
-                {
-                    _isSerialized = value;
-                    PropertyChanged?.Invoke(this, new PropertyChangedEventArgs("IsSerialized"));
-                }
-            }
-        }
-
-        ///<summary>
-        ///Event that is raised when the properties of AlarmRecord change
-        ///</summary>
-        public event PropertyChangedEventHandler PropertyChanged;
-
-        /// <summary>
-        /// Initializes a new instance of the AlarmRecord class
-        /// </summary>
-        public AlarmRecord()
-        {
-        }
-
-        /// <summary>
-        /// Converts the string of the creation date time
-        /// </summary>
-        /// <returns> Returns a string representation of value of the alarm creation time</returns>
-        public string GetUniqueIdentifier()
-        {
-            return DateCreated.ToString();
-        }
-
-        /// <summary>
-        /// Return a string that represents the current AlarmRecord object.
-        /// </summary>
-        /// <returns>string</returns>
-        public override string ToString()
-        {
-            return "Alarm " + ScheduledDateTime
-                + ", NativeID[" + NativeAlarmID + "]"
-                + ", (" + WeekFlag + ")"
-                + ", (" + DateCreated + ")"
-                + ", (" + AlarmState + ")"
-                + ", (" + IsSerialized + ")";
-        }
-
-        /// <summary>
-        /// Sets the default value for AlarmRecord object
-        /// </summary>
-        public void SetDefault()
-        {
-            /// Sets current time to scheduled date time (Alarm creation time)
-            ScheduledDateTime = System.DateTime.Now;
-
-            /// Sets Never to Repeat weekday flag
-            WeekFlag = AlarmWeekFlag.AllDays;
-
-            /// This field is used to uniquely identify alarm by created time
-            DateCreated = ScheduledDateTime.TimeOfDay;
-
-            AlarmState = AlarmStates.Active;
-
-            /// This indicates whether it is newly created or not.
-            /// This value should set to false at default creation time
-            IsSerialized = false;
-        }
-
-        /// <summary>
-        /// Deep copy alarm record
-        /// </summary>
-        /// <param name="bindableAlarmRecord">Alarm record to deep copy</param>
-        /// <seealso cref="AlarmRecord">
-        public void DeepCopy(AlarmRecord Record, bool includeUID = true)
-        {
-            // All properties should be copied to this alarm record object
-            ScheduledDateTime = Record.ScheduledDateTime;
-            WeekFlag = Record.WeekFlag;
-            AlarmState = Record.AlarmState;
-            IsSerialized = Record.IsSerialized;
-            if (includeUID)
-            {
-                DateCreated = Record.DateCreated;
-                NativeAlarmID = Record.NativeAlarmID;
-            }
-        }
-
-        /// <summary>
-        /// When property is changed, registered event callback is invoked
-        /// </summary>
-        /// <param name="propertyName">Property name of the change event occured</param>
-        protected virtual void OnPropertyChanged(string propertyName)
-        {
-            if (PropertyChanged != null)
-            {
-                PropertyChanged(this,
-                    new PropertyChangedEventArgs(propertyName));
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/Alarm/Alarm/Models/MessageKeys.cs b/test/Alarm/Alarm/Models/MessageKeys.cs
deleted file mode 100644 (file)
index 9d5f905..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-namespace Alarm.Models
-{
-    public class MessageKeys
-    {
-        // Notify that language has been changed
-        public const string LanguageChanged = "LanguageChanged";
-    }
-}
diff --git a/test/Alarm/Alarm/Renderers/ImageButtonRenderer.cs b/test/Alarm/Alarm/Renderers/ImageButtonRenderer.cs
deleted file mode 100644 (file)
index 17df2d8..0000000
+++ /dev/null
@@ -1,164 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using ElmSharp;
-using Xamarin.Forms.Platform.Tizen;
-
-using Alarm.Controls;
-using Alarm.Tizen.Renderers;
-using Xamarin.Forms;
-
-[assembly: ExportRenderer(typeof(CustomImageButton), typeof(Alarm.Tizen.Renderers.CustomImageButtonRenderer))]
-namespace Alarm.Tizen.Renderers
-{
-    /// <summary>
-    /// Calculator element (Operator, numbers) button custom renderer
-    /// Actually to implement command button, A image is used instead a button to display as a calculator button.
-    /// </summary>
-    /// <remarks>
-    /// Please refer to Xamarin Custom Renderer
-    /// https://developer.xamarin.com/guides/xamarin-forms/custom-renderer/
-    /// </remarks>
-    class CustomImageButtonRenderer : ImageRenderer//ViewRenderer<Xamarin.Forms.Image, Image>
-    {
-        /// <summary>
-        /// Tizen's gesture recognizer for Tap gesture, Long Tap gesture, Line gesture and so on.
-        /// </summary>
-        private ElmSharp.GestureLayer GestureRecognizer;
-
-        /// <summary>
-        /// A flags that indicates whether the touch is handled or not.
-        /// </summary>
-        private volatile bool isTouched;
-
-        public CustomImageButtonRenderer()
-        {
-            RegisterPropertyHandler(CustomImageButton.PressedColorProperty, UpdatePressedColor);
-        }
-
-        /// <summary>
-        /// Making a button with a image and set the image's color and blending color by inputted background color.
-        /// Register touch event callback for the Tap, the Long Tap and the Line behavior. </summary>
-        /// <remarks>
-        /// When the button is touched, This class should change the image for each touch down/up situation.
-        /// Even a button touching  starts at the Tap touch down, but touch up will be happen in several situations such as the Tap, the Long Tap, the Line.
-        /// </remarks>
-        /// <param name="args"> A Image element changed event's argument </param>
-        protected override void OnElementChanged(ElementChangedEventArgs<Xamarin.Forms.Image> args)
-        {
-            base.OnElementChanged(args);
-
-            if (Control == null)
-            {
-                return;
-            }
-
-            if (GestureRecognizer == null)
-            {
-                GestureRecognizer = new ElmSharp.GestureLayer(Control);
-                GestureRecognizer.Attach(Control);
-            }
-
-            if (args.NewElement == null)
-            {
-                GestureRecognizer.ClearCallbacks();
-                return;
-            }
-            else
-            {
-                Control.Clicked += SendClicked;
-            }
-
-            CustomImageButton BtnElement = args.NewElement as CustomImageButton;
-            if (BtnElement == null)
-            {
-                return;
-            }
-
-            GestureRecognizer.SetTapCallback(ElmSharp.GestureLayer.GestureType.Tap, ElmSharp.GestureLayer.GestureState.Start, x =>
-            {
-                KeyDown();
-            });
-            GestureRecognizer.SetTapCallback(ElmSharp.GestureLayer.GestureType.Tap, ElmSharp.GestureLayer.GestureState.End, x =>
-            {
-                KeyUp();
-            });
-            GestureRecognizer.SetTapCallback(ElmSharp.GestureLayer.GestureType.LongTap, ElmSharp.GestureLayer.GestureState.End, x =>
-            {
-                KeyUp();
-            });
-            GestureRecognizer.SetTapCallback(ElmSharp.GestureLayer.GestureType.LongTap, ElmSharp.GestureLayer.GestureState.Abort, x =>
-            {
-                KeyUp();
-            });
-
-        }
-
-        /// <summary>
-        /// A Action delegate which is restore button image as default
-        /// and execute button's Command with CommandParameter. </summary>
-        private void KeyUp()
-        {
-            if (Control == null)
-            {
-                return;
-            }
-
-            if (isTouched)
-            {
-                //invoke click event when a user releases image button.
-                ((CustomImageButton)Element).SendReleased();
-            }
-
-            Control.Color = ElmSharp.Color.Default;
-            isTouched = false;
-        }
-
-        /// <summary>
-        /// A Action delegate which is restore button image as pressed situation. </summary>
-        private void KeyDown()
-        {
-            CustomImageButton BtnElement = Element as CustomImageButton;
-
-            if (BtnElement == null ||
-                Control == null)
-            {
-                return;
-            }
-
-            Control.Color = BtnElement.PressedColor.ToNative();
-            isTouched = true;
-        }
-
-        private void UpdatePressedColor(bool obj)
-        {
-            CustomImageButton BtnElement = Element as CustomImageButton;
-            Control.Color = BtnElement.PressedColor.ToNative();
-        }
-
-        /// <summary>
-        /// To send a click event to the element
-        /// </summary>
-        /// <param name="sender">sender</param>
-        /// <param name="e">event</param>
-        void SendClicked(object sender, EventArgs e)
-        {
-            ((CustomImageButton)Element).SendClicked();
-        }
-
-    }
-}
\ No newline at end of file
diff --git a/test/Alarm/Alarm/Resx/AppResources.Designer.cs b/test/Alarm/Alarm/Resx/AppResources.Designer.cs
deleted file mode 100644 (file)
index 7157d8d..0000000
+++ /dev/null
@@ -1,180 +0,0 @@
-//------------------------------------------------------------------------------
-// <auto-generated>
-//     This code was generated by a tool.
-//     Runtime Version:4.0.30319.42000
-//
-//     Changes to this file may cause incorrect behavior and will be lost if
-//     the code is regenerated.
-// </auto-generated>
-//------------------------------------------------------------------------------
-
-namespace Alarm.Resx {
-    using System;
-    
-    
-    /// <summary>
-    ///   A strongly-typed resource class, for looking up localized strings, etc.
-    /// </summary>
-    // This class was auto-generated by the StronglyTypedResourceBuilder
-    // class via a tool like ResGen or Visual Studio.
-    // To add or remove a member, edit your .ResX file then rerun ResGen
-    // with the /str option, or rebuild your VS project.
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")]
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    public class AppResources {
-        
-        private static global::System.Resources.ResourceManager resourceMan;
-        
-        private static global::System.Globalization.CultureInfo resourceCulture;
-        
-        [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
-        internal AppResources() {
-        }
-        
-        /// <summary>
-        ///   Returns the cached ResourceManager instance used by this class.
-        /// </summary>
-        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
-        public static global::System.Resources.ResourceManager ResourceManager {
-            get {
-                if (object.ReferenceEquals(resourceMan, null)) {
-                    global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Alarm.Resx.AppResources", typeof(AppResources).Assembly);
-                    resourceMan = temp;
-                }
-                return resourceMan;
-            }
-        }
-        
-        /// <summary>
-        ///   Overrides the current thread's CurrentUICulture property for all
-        ///   resource lookups using this strongly typed resource class.
-        /// </summary>
-        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
-        public static global::System.Globalization.CultureInfo Culture {
-            get {
-                return resourceCulture;
-            }
-            set {
-                resourceCulture = value;
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to Add.
-        /// </summary>
-        public static string Add {
-            get {
-                return ResourceManager.GetString("Add", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to Add alarm.
-        /// </summary>
-        public static string AddAlarm {
-            get {
-                return ResourceManager.GetString("AddAlarm", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to after.
-        /// </summary>
-        public static string After {
-            get {
-                return ResourceManager.GetString("After", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to Alarm.
-        /// </summary>
-        public static string Alarm {
-            get {
-                return ResourceManager.GetString("Alarm", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to Alarm set.
-        /// </summary>
-        public static string AlarmSet {
-            get {
-                return ResourceManager.GetString("AlarmSet", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to Dismiss.
-        /// </summary>
-        public static string Dismiss {
-            get {
-                return ResourceManager.GetString("Dismiss", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to from now.
-        /// </summary>
-        public static string FromNow {
-            get {
-                return ResourceManager.GetString("FromNow", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to one hour.
-        /// </summary>
-        public static string Hour {
-            get {
-                return ResourceManager.GetString("Hour", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to hours.
-        /// </summary>
-        public static string Hours {
-            get {
-                return ResourceManager.GetString("Hours", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to one minute.
-        /// </summary>
-        public static string Minute {
-            get {
-                return ResourceManager.GetString("Minute", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to minutes.
-        /// </summary>
-        public static string Minutes {
-            get {
-                return ResourceManager.GetString("Minutes", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to now.
-        /// </summary>
-        public static string Now {
-            get {
-                return ResourceManager.GetString("Now", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to Set alarm.
-        /// </summary>
-        public static string SetAlarm {
-            get {
-                return ResourceManager.GetString("SetAlarm", resourceCulture);
-            }
-        }
-    }
-}
diff --git a/test/Alarm/Alarm/Resx/AppResources.ko.resx b/test/Alarm/Alarm/Resx/AppResources.ko.resx
deleted file mode 100644 (file)
index 8a399ba..0000000
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
-  <!-- 
-    Microsoft ResX Schema 
-    
-    Version 2.0
-    
-    The primary goals of this format is to allow a simple XML format 
-    that is mostly human readable. The generation and parsing of the 
-    various data types are done through the TypeConverter classes 
-    associated with the data types.
-    
-    Example:
-    
-    ... ado.net/XML headers & schema ...
-    <resheader name="resmimetype">text/microsoft-resx</resheader>
-    <resheader name="version">2.0</resheader>
-    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
-    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
-    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
-    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
-    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
-        <value>[base64 mime encoded serialized .NET Framework object]</value>
-    </data>
-    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
-        <comment>This is a comment</comment>
-    </data>
-                
-    There are any number of "resheader" rows that contain simple 
-    name/value pairs.
-    
-    Each data row contains a name, and value. The row also contains a 
-    type or mimetype. Type corresponds to a .NET class that support 
-    text/value conversion through the TypeConverter architecture. 
-    Classes that don't support this are serialized and stored with the 
-    mimetype set.
-    
-    The mimetype is used for serialized objects, and tells the 
-    ResXResourceReader how to depersist the object. This is currently not 
-    extensible. For a given mimetype the value must be set accordingly:
-    
-    Note - application/x-microsoft.net.object.binary.base64 is the format 
-    that the ResXResourceWriter will generate, however the reader can 
-    read any of the formats listed below.
-    
-    mimetype: application/x-microsoft.net.object.binary.base64
-    value   : The object must be serialized with 
-            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
-            : and then encoded with base64 encoding.
-    
-    mimetype: application/x-microsoft.net.object.soap.base64
-    value   : The object must be serialized with 
-            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
-            : and then encoded with base64 encoding.
-
-    mimetype: application/x-microsoft.net.object.bytearray.base64
-    value   : The object must be serialized into a byte array 
-            : using a System.ComponentModel.TypeConverter
-            : and then encoded with base64 encoding.
-    -->
-  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
-    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
-    <xsd:element name="root" msdata:IsDataSet="true">
-      <xsd:complexType>
-        <xsd:choice maxOccurs="unbounded">
-          <xsd:element name="metadata">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" />
-              </xsd:sequence>
-              <xsd:attribute name="name" use="required" type="xsd:string" />
-              <xsd:attribute name="type" type="xsd:string" />
-              <xsd:attribute name="mimetype" type="xsd:string" />
-              <xsd:attribute ref="xml:space" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="assembly">
-            <xsd:complexType>
-              <xsd:attribute name="alias" type="xsd:string" />
-              <xsd:attribute name="name" type="xsd:string" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="data">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
-                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
-              </xsd:sequence>
-              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
-              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
-              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
-              <xsd:attribute ref="xml:space" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="resheader">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
-              </xsd:sequence>
-              <xsd:attribute name="name" type="xsd:string" use="required" />
-            </xsd:complexType>
-          </xsd:element>
-        </xsd:choice>
-      </xsd:complexType>
-    </xsd:element>
-  </xsd:schema>
-  <resheader name="resmimetype">
-    <value>text/microsoft-resx</value>
-  </resheader>
-  <resheader name="version">
-    <value>2.0</value>
-  </resheader>
-  <resheader name="reader">
-    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </resheader>
-  <resheader name="writer">
-    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </resheader>
-  <data name="Add" xml:space="preserve">
-    <value>추가</value>
-    <comment>Add button text</comment>
-  </data>
-  <data name="AddAlarm" xml:space="preserve">
-    <value>알람 추가</value>
-    <comment>Add alarm text</comment>
-  </data>
-  <data name="After" xml:space="preserve">
-    <value>후</value>
-  </data>
-  <data name="Alarm" xml:space="preserve">
-    <value>알람</value>
-    <comment>Alarm List header label text</comment>
-  </data>
-  <data name="AlarmSet" xml:space="preserve">
-    <value>알람 설정</value>
-    <comment>Alarm set</comment>
-  </data>
-  <data name="Dismiss" xml:space="preserve">
-    <value>해제</value>
-    <comment>Dismiss text</comment>
-  </data>
-  <data name="FromNow" xml:space="preserve">
-    <value>지금부터</value>
-  </data>
-  <data name="Hour" xml:space="preserve">
-    <value>1 시간</value>
-  </data>
-  <data name="Hours" xml:space="preserve">
-    <value>시간</value>
-  </data>
-  <data name="Minute" xml:space="preserve">
-    <value>1 분</value>
-  </data>
-  <data name="Minutes" xml:space="preserve">
-    <value>분</value>
-  </data>
-  <data name="Now" xml:space="preserve">
-    <value>현재시간으로</value>
-  </data>
-  <data name="SetAlarm" xml:space="preserve">
-    <value>알람 설정</value>
-    <comment>EditAlarm header text</comment>
-  </data>
-</root>
\ No newline at end of file
diff --git a/test/Alarm/Alarm/Resx/AppResources.resx b/test/Alarm/Alarm/Resx/AppResources.resx
deleted file mode 100644 (file)
index a9ca025..0000000
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
-  <!-- 
-    Microsoft ResX Schema 
-    
-    Version 2.0
-    
-    The primary goals of this format is to allow a simple XML format 
-    that is mostly human readable. The generation and parsing of the 
-    various data types are done through the TypeConverter classes 
-    associated with the data types.
-    
-    Example:
-    
-    ... ado.net/XML headers & schema ...
-    <resheader name="resmimetype">text/microsoft-resx</resheader>
-    <resheader name="version">2.0</resheader>
-    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
-    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
-    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
-    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
-    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
-        <value>[base64 mime encoded serialized .NET Framework object]</value>
-    </data>
-    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
-        <comment>This is a comment</comment>
-    </data>
-                
-    There are any number of "resheader" rows that contain simple 
-    name/value pairs.
-    
-    Each data row contains a name, and value. The row also contains a 
-    type or mimetype. Type corresponds to a .NET class that support 
-    text/value conversion through the TypeConverter architecture. 
-    Classes that don't support this are serialized and stored with the 
-    mimetype set.
-    
-    The mimetype is used for serialized objects, and tells the 
-    ResXResourceReader how to depersist the object. This is currently not 
-    extensible. For a given mimetype the value must be set accordingly:
-    
-    Note - application/x-microsoft.net.object.binary.base64 is the format 
-    that the ResXResourceWriter will generate, however the reader can 
-    read any of the formats listed below.
-    
-    mimetype: application/x-microsoft.net.object.binary.base64
-    value   : The object must be serialized with 
-            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
-            : and then encoded with base64 encoding.
-    
-    mimetype: application/x-microsoft.net.object.soap.base64
-    value   : The object must be serialized with 
-            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
-            : and then encoded with base64 encoding.
-
-    mimetype: application/x-microsoft.net.object.bytearray.base64
-    value   : The object must be serialized into a byte array 
-            : using a System.ComponentModel.TypeConverter
-            : and then encoded with base64 encoding.
-    -->
-  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
-    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
-    <xsd:element name="root" msdata:IsDataSet="true">
-      <xsd:complexType>
-        <xsd:choice maxOccurs="unbounded">
-          <xsd:element name="metadata">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" />
-              </xsd:sequence>
-              <xsd:attribute name="name" use="required" type="xsd:string" />
-              <xsd:attribute name="type" type="xsd:string" />
-              <xsd:attribute name="mimetype" type="xsd:string" />
-              <xsd:attribute ref="xml:space" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="assembly">
-            <xsd:complexType>
-              <xsd:attribute name="alias" type="xsd:string" />
-              <xsd:attribute name="name" type="xsd:string" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="data">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
-                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
-              </xsd:sequence>
-              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
-              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
-              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
-              <xsd:attribute ref="xml:space" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="resheader">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
-              </xsd:sequence>
-              <xsd:attribute name="name" type="xsd:string" use="required" />
-            </xsd:complexType>
-          </xsd:element>
-        </xsd:choice>
-      </xsd:complexType>
-    </xsd:element>
-  </xsd:schema>
-  <resheader name="resmimetype">
-    <value>text/microsoft-resx</value>
-  </resheader>
-  <resheader name="version">
-    <value>2.0</value>
-  </resheader>
-  <resheader name="reader">
-    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </resheader>
-  <resheader name="writer">
-    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </resheader>
-  <data name="Add" xml:space="preserve">
-    <value>Add</value>
-    <comment>Add button text</comment>
-  </data>
-  <data name="AddAlarm" xml:space="preserve">
-    <value>Add alarm</value>
-    <comment>Add alarm text</comment>
-  </data>
-  <data name="After" xml:space="preserve">
-    <value>after</value>
-  </data>
-  <data name="Alarm" xml:space="preserve">
-    <value>Alarm</value>
-    <comment>Alarm List header label text</comment>
-  </data>
-  <data name="AlarmSet" xml:space="preserve">
-    <value>Alarm set</value>
-    <comment>Alarm set</comment>
-  </data>
-  <data name="Dismiss" xml:space="preserve">
-    <value>Dismiss</value>
-    <comment>Dismiss text</comment>
-  </data>
-  <data name="FromNow" xml:space="preserve">
-    <value>from now</value>
-  </data>
-  <data name="Hour" xml:space="preserve">
-    <value>one hour</value>
-  </data>
-  <data name="Hours" xml:space="preserve">
-    <value>hours</value>
-  </data>
-  <data name="Minute" xml:space="preserve">
-    <value>one minute</value>
-  </data>
-  <data name="Minutes" xml:space="preserve">
-    <value>minutes</value>
-  </data>
-  <data name="Now" xml:space="preserve">
-    <value>now</value>
-  </data>
-  <data name="SetAlarm" xml:space="preserve">
-    <value>Set alarm</value>
-    <comment>EditAlarm header text</comment>
-  </data>
-</root>
\ No newline at end of file
diff --git a/test/Alarm/Alarm/ViewModels/AlertPageModel.cs b/test/Alarm/Alarm/ViewModels/AlertPageModel.cs
deleted file mode 100644 (file)
index a12000f..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using Alarm.Implements;
-using Alarm.Models;
-using System.ComponentModel;
-using System.Runtime.CompilerServices;
-
-namespace Alarm.ViewModels
-{
-    public enum SoundState
-    {
-        Stop = 0,
-        Start = 1,
-        Pause = 2,
-    }
-
-    public class AlertPageModel : BasePageModel
-    {
-        private AlarmRecord _alarmRecord;
-
-        private SoundState _alertSoundState;
-
-        /// <summary>
-        /// Alarm record to display in Alert Page
-        /// </summary>
-        public AlarmRecord Record
-        {
-            get
-            {
-                return _alarmRecord;
-            }
-
-            set
-            {
-                SetProperty(ref _alarmRecord, value, "Record");
-            }
-        }
-
-        public SoundState AlertSoundState
-        {
-            get
-            {
-                return _alertSoundState;
-            }
-
-            set
-            {
-                SetProperty(ref _alertSoundState, value, "AlertState");
-            }
-
-        }
-        /// <summary>
-        /// AlertPageModel constructor with AlarmRecord
-        /// </summary>
-        /// <param name="record">Record to be shown</param>
-        public AlertPageModel(AlarmRecord record = null)
-        {
-            Record = record;
-        }
-
-        public void StartAlert()
-        {
-            AlarmNativeHandler.PlaySound();
-            AlarmNativeHandler.StartVibration();
-            _alertSoundState = SoundState.Start;
-        }
-
-        public void PauseAlert()
-        {
-            AlarmNativeHandler.PauseSound();
-            AlarmNativeHandler.StopVibration();
-            _alertSoundState = SoundState.Pause;
-        }
-
-        public void ResumeAlert()
-        {
-            AlarmNativeHandler.ResumeSound();
-            _alertSoundState = SoundState.Start;
-        }
-
-        /// <summary>
-        /// Delete current AlarmRecord
-        /// </summary>
-        public void Dismiss()
-        {
-            AlarmNativeHandler.StopSound();
-            AlarmNativeHandler.StopVibration();
-            _alertSoundState = SoundState.Stop;
-
-            if (_alarmRecord !=  null)
-            {
-                AlarmModel.DeleteAlarm(_alarmRecord);
-            }
-        }
-
-    }
-}
diff --git a/test/Alarm/Alarm/ViewModels/BasePageModel.cs b/test/Alarm/Alarm/ViewModels/BasePageModel.cs
deleted file mode 100644 (file)
index f911b70..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Runtime.CompilerServices;
-
-namespace Alarm.ViewModels
-{
-    public class BasePageModel : INotifyPropertyChanged
-    {
-        protected bool SetProperty<T>(ref T backingStore, T value,
-            [CallerMemberName]string propertyName = "",
-            Action onChanged = null)
-        {
-            if (EqualityComparer<T>.Default.Equals(backingStore, value))
-            {
-                return false;
-            }
-
-            backingStore = value;
-            onChanged?.Invoke();
-            OnPropertyChanged(propertyName);
-            return true;
-        }
-
-        #region INotifyPropertyChanged
-        public event PropertyChangedEventHandler PropertyChanged;
-
-        /// <summary>
-        /// Called to notify that a change of property happened
-        /// </summary>
-        /// <param name="propertyName">The name of the property that changed</param>
-        protected void OnPropertyChanged([CallerMemberName] string propertyName = "")
-        {
-            var changed = PropertyChanged;
-            if (changed == null)
-            {
-                return;
-            }
-
-            changed.Invoke(this, new PropertyChangedEventArgs(propertyName));
-        }
-        #endregion
-    }
-}
diff --git a/test/Alarm/Alarm/ViewModels/MainPageModel.cs b/test/Alarm/Alarm/ViewModels/MainPageModel.cs
deleted file mode 100644 (file)
index c304e07..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using Alarm.Models;
-using System.Collections.ObjectModel;
-using System.Windows.Input;
-using Xamarin.Forms;
-
-namespace Alarm.ViewModels
-{
-    public class MainPageModel : BasePageModel
-    {
-        /// <summary>
-        /// RecordList to display in MainPage
-        /// </summary>
-        public ObservableCollection<AlarmRecord> RecordList
-        {
-            get
-            {
-                return AlarmModel.ObservableAlarmList;
-            }
-        }
-
-        /// <summary>
-        /// MainPageModel constructor 
-        /// </summary>
-        public MainPageModel()
-        {
-        }
-    }
-}
diff --git a/test/Alarm/Alarm/Views/AlarmAlertPage.xaml b/test/Alarm/Alarm/Views/AlarmAlertPage.xaml
deleted file mode 100755 (executable)
index d4341d1..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<views:CirclePageEx
-       x:Class="Alarm.Views.AlarmAlertPage"
-       xmlns="http://xamarin.com/schemas/2014/forms"
-       xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-       xmlns:converters="clr-namespace:Alarm.Converters"
-       xmlns:resx="clr-namespace:Alarm.Resx"
-       xmlns:views="clr-namespace:Alarm.Views"
-       xmlns:w="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF">
-       <ContentPage.Resources>
-               <ResourceDictionary>
-                       <converters:ScheduledDateTimeToTextConverter x:Key="TimeConverter" />
-               </ResourceDictionary>
-       </ContentPage.Resources>
-       <w:CirclePage.Content>
-               <AbsoluteLayout BackgroundColor="Black">
-                       <Image
-                               x:Name="AlarmRingImg"
-                               AbsoluteLayout.LayoutBounds="133, 66, 94, 94"
-                               AbsoluteLayout.LayoutFlags="None"
-                               Source="alarm_ringing_icon.png" />
-                       <Label
-                               x:Name="TimeLabel"
-                               AbsoluteLayout.LayoutBounds="0, 170, 360, 45"
-                               AbsoluteLayout.LayoutFlags="None"
-                               FontSize="12"
-                               HorizontalTextAlignment="Center"
-                               Text="{Binding Record.ScheduledDateTime, Converter={StaticResource TimeConverter}}"
-                               TextColor="White" />
-               </AbsoluteLayout>
-       </w:CirclePage.Content>
-       <w:CirclePage.ActionButton>
-               <w:ActionButtonItem
-                       x:Name="DismissButton"
-                       Clicked="OnDismissButtonClicked"
-                       Text="{x:Static resx:AppResources.Dismiss}" />
-       </w:CirclePage.ActionButton>
-</views:CirclePageEx>
\ No newline at end of file
diff --git a/test/Alarm/Alarm/Views/AlarmAlertPage.xaml.cs b/test/Alarm/Alarm/Views/AlarmAlertPage.xaml.cs
deleted file mode 100644 (file)
index f09794f..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using Alarm.Implements;
-using Alarm.Models;
-using Alarm.Resx;
-using Alarm.ViewModels;
-using System;
-using System.Globalization;
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace Alarm.Views
-{
-    /// <summary>
-    /// AlarmAlertPage class
-    /// It shows the Alert View of alarm
-    /// User can dismiss alarm alert and remove record using dismiss button in the bottom of view.
-    /// </summary>
-       [XamlCompilation(XamlCompilationOptions.Compile)]
-    public partial class AlarmAlertPage : CirclePageEx
-    {
-        AlertPageModel _viewModel;
-        /// <summary>
-        /// AlarmAlertPage constructor.
-        /// </summary>
-        /// <param name="viewModel">AlertPageModel</param>
-        public AlarmAlertPage(AlertPageModel viewModel)
-        {
-            Console.WriteLine("AlarmAlertPage");
-
-            InitializeComponent();
-            BindingContext = _viewModel = viewModel;
-
-            _viewModel.StartAlert();
-
-            // Subscribe notification of locale changes to update text based on locale
-            MessagingCenter.Subscribe<LocaleHandler, CultureInfo>(this, MessageKeys.LanguageChanged, (obj, culture) =>
-            {
-                Console.WriteLine($"AlarmAlertPage received LanguageChanged");
-                // Update text that has been translated into the current language.
-                TimeLabel.Text = _viewModel.Record.ScheduledDateTime.ToString("hh:mm tt");
-                DismissButton.Text = AppResources.Dismiss;
-            });
-        }
-
-        /// <summary>
-        /// Request to dissmiss alarm alert and remove alarm record.
-        /// </summary>
-        /// <param name="sender">object</param>
-        /// <param name="args">EventArgs</param>
-        void OnDismissButtonClicked(object sender, EventArgs args)
-        {
-            Console.WriteLine("OnDismissButtonClicked()");
-
-            _viewModel.Dismiss();
-            PopAsyncAlertPage();
-        }
-
-        /// <summary>
-        /// Invoked when backbutton is pressed
-        /// Alarm record is dismissed.
-        /// </summary>
-        /// <returns>bool value</returns>
-        protected override bool OnBackButtonPressed()
-        {
-            Console.WriteLine("[AlarmAlertPage]  OnBackButtonPressed PopAsync");
-            _viewModel.Dismiss();
-            PopAsyncAlertPage();
-
-            return true;
-        }
-
-        async void PopAsyncAlertPage()
-        {
-            await Navigation.PopAsync();
-        }
-
-    }
-}
\ No newline at end of file
diff --git a/test/Alarm/Alarm/Views/AlarmEditPage.xaml b/test/Alarm/Alarm/Views/AlarmEditPage.xaml
deleted file mode 100755 (executable)
index f47cb85..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<views:CirclePageEx
-       x:Class="Alarm.Views.AlarmEditPage"
-       xmlns="http://xamarin.com/schemas/2014/forms"
-       xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-       xmlns:views="clr-namespace:Alarm.Views"
-       xmlns:w="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"
-       RotaryFocusObject="{x:Reference TimeSelector}">
-       <w:CirclePage.Content>
-               <StackLayout
-                       BackgroundColor="Black"
-                       HorizontalOptions="FillAndExpand"
-                       Orientation="Vertical"
-                       VerticalOptions="FillAndExpand">
-                       <w:CircleDateTimeSelector
-                               x:Name="TimeSelector"
-                               DateTime="{Binding SelectedDateTime, Mode=TwoWay}"
-                               IsVisibleOfAmPm="True"
-                               ValueType="Time" />
-               </StackLayout>
-       </w:CirclePage.Content>
-       <w:CirclePage.ActionButton>
-               <w:ActionButtonItem
-                       x:Name="SaveButton"
-                       Clicked="OnSaveButtonClicked"
-                       Icon="ic_popup_btn_check.png" />
-       </w:CirclePage.ActionButton>
-</views:CirclePageEx>
\ No newline at end of file
diff --git a/test/Alarm/Alarm/Views/AlarmEditPage.xaml.cs b/test/Alarm/Alarm/Views/AlarmEditPage.xaml.cs
deleted file mode 100644 (file)
index 171e274..0000000
+++ /dev/null
@@ -1,156 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using Alarm.Models;
-using System;
-using Tizen.Wearable.CircularUI.Forms;
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace Alarm.Views
-{
-    /// <summary>
-    /// AlarmEditPage class
-    /// It shows the Edit View of alarm
-    /// User can set alarm time using CircleDateTimeSelector. and then save alarm record.
-    /// </summary>
-       [XamlCompilation(XamlCompilationOptions.Compile)]
-       public partial class AlarmEditPage : CirclePageEx
-    {
-        public static readonly BindableProperty SelectedDateTimeProperty = BindableProperty.Create("SelectedDateTime", typeof(DateTime), typeof(AlarmEditPage), DateTime.Now);
-
-        private bool _alarmSaving;
-
-        /// <summary>
-        /// Selected date time for saved record or current time.
-        /// </summary>
-        public DateTime SelectedDateTime
-        {
-            get
-            {
-                return (DateTime)GetValue(SelectedDateTimeProperty);
-            }
-
-            set
-            {
-                SetValue(SelectedDateTimeProperty, value);
-            }
-        }
-
-        /// <summary>
-        /// AlarmEditPage constructor.
-        /// </summary>
-        /// <param name="alarmRecordData">AlarmRecord</param>
-        public AlarmEditPage(AlarmRecord alarmRecordData)
-               {
-            InitializeComponent();
-            TimeSelector.BindingContext = this;
-            _alarmSaving = false;
-            SelectedDateTime = alarmRecordData.ScheduledDateTime;
-        }
-
-        /// <summary>
-        /// Update SelectedDateTime with alarmRecordData time.
-        /// </summary>
-        /// <param name="alarmRecordData">Alarm record data to set SelectedDateTime</param>
-        internal void Update(AlarmRecord alarmRecordData)
-        {
-            Console.WriteLine("Update" + alarmRecordData.ToString());
-            SelectedDateTime = alarmRecordData.ScheduledDateTime;
-            _alarmSaving = false;
-        }
-
-        /// <summary>
-        /// Request to save alarm event.
-        /// </summary>
-        /// <param name="sender">object</param>
-        /// <param name="args">EventArgs</param>
-        async void OnSaveButtonClicked(object sender, EventArgs args)
-        {
-            Console.WriteLine("OnSaveButtonClicked");
-            if (_alarmSaving)
-            {
-                return;
-            }
-
-            _alarmSaving = true;
-            //subtract second from selectedTime.
-            SelectedDateTime = SelectedDateTime.AddSeconds(-SelectedDateTime.Second);
-            Console.WriteLine($"SelectedDateTime :{SelectedDateTime}");
-            AlarmModel.BindableAlarmRecord.ScheduledDateTime = SelectedDateTime;
-
-            AlarmRecord duplicate = new AlarmRecord();
-            bool existSameAlarm = AlarmModel.CheckAlarmExist(ref duplicate);
-            if (existSameAlarm)
-            {
-                // Use alarm created date for unique identifier for an alarm record
-                string alarmUID = AlarmModel.BindableAlarmRecord.GetUniqueIdentifier();
-                if (!AlarmModel.BindableAlarmRecord.IsSerialized)
-                {
-                    // in case that AlarmEditPage is shown by clicking at add alarm
-                    // when trying to create a system alarm and save it, find the same alarm
-                    // expected behavior : update the previous one and do not create a new alarm
-                    AlarmModel.BindableAlarmRecord.IsSerialized = true;
-                    duplicate.DeepCopy(AlarmModel.BindableAlarmRecord, false);
-                    // Update the existing alarm(duplicate)
-                    Console.WriteLine("exist same alarm! update previous alarm, not create new alarm:" + AlarmModel.BindableAlarmRecord.ToString());
-                    AlarmModel.UpdateAlarm(duplicate);
-                }
-                else if (alarmUID.Equals(duplicate.GetUniqueIdentifier()))
-                {
-                    // in case that AlarmEditPage is shown by selecting an item of ListView in AlarmListPage
-                    // At saving time, just update itself. (It doesn't affect other alarms)
-                    Console.WriteLine("exist same alarm! update current alarm:" + AlarmModel.BindableAlarmRecord.ToString());
-                    AlarmModel.UpdateAlarm(AlarmModel.BindableAlarmRecord);
-                }
-                else
-                {
-                    // in case that AlarmEditPage is shown by selecting an item of ListView in AlarmListPage
-                    // At saving time, the same alarm is found.
-                    // In case that this alarm is not new, the existing alarm(duplicate) will be deleted and it will be updated.
-                    // 1. delete duplicate alarm
-                    Console.WriteLine("exist same alarm! delete duplicate alarm and update current alarm:" + AlarmModel.BindableAlarmRecord.ToString());
-                    AlarmModel.DeleteAlarm(duplicate);
-                    // 2. update bindableAlarmRecord
-                    AlarmModel.UpdateAlarm(AlarmModel.BindableAlarmRecord);
-                }
-            }
-            else
-            {
-                if (!AlarmModel.BindableAlarmRecord.IsSerialized)
-                {
-                    // In case that AlarmEditPage is shown by clicking FloatingButton
-                    // There's no same alarm. So, just create a new alarm and add to list and dictionary.
-                    AlarmModel.BindableAlarmRecord.IsSerialized = true;
-                    Console.WriteLine("new Alarm create:" + AlarmModel.BindableAlarmRecord.ToString());
-                    AlarmModel.CreateAlarm();
-                }
-                else
-                {
-                    // in case that AlarmEditPage is shown by selecting an item of ListView in AlarmListPage
-                    // There's no same alarm. So, just update itself.
-                    Console.WriteLine("update current alarm:" + AlarmModel.BindableAlarmRecord.ToString());
-                    AlarmModel.UpdateAlarm(AlarmModel.BindableAlarmRecord);
-                }
-            }
-
-            //Create SavePopupPage, and then close current EditPage.
-            Navigation.InsertPageBefore(new SavePopupPage(AlarmModel.BindableAlarmRecord), this);
-            await Navigation.PopAsync();
-            _alarmSaving = false;
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/Alarm/Alarm/Views/AlarmListCell.cs b/test/Alarm/Alarm/Views/AlarmListCell.cs
deleted file mode 100644 (file)
index 629daf8..0000000
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using Alarm.Converters;
-using Alarm.Models;
-using System;
-using Tizen.Wearable.CircularUI;
-using Tizen.Wearable.CircularUI.Forms;
-using Xamarin.Forms;
-
-
-namespace Alarm.Views
-{
-    /// <summary>
-    /// This class defines list cell for Alarm.
-    /// This inherits from ViewCell which provides custom UI for a ListView
-    /// It is commonly used for any cell for this ListView
-    /// </summary>
-    public class AlarmListCell : ViewCell
-    {
-
-        public StackLayout alarmItemLayout;
-
-        /// <summary>
-        /// time label for the alarm list
-        /// </summary>
-        public Label timeLabel;
-
-        /// <summary>
-        /// Active/Inactive switch object
-        /// </summary>
-        public Switch switchObj;
-
-        /// <summary>
-        /// Draws alarm list
-        /// </summary>
-        /// <returns>Returns RelativeLayout</returns>
-        protected virtual StackLayout Draw()
-        {
-
-            /// Need to get bindable context to assign list value
-            AlarmRecord alarmData = (AlarmRecord)BindingContext;
-
-            /// If binding context is null, can't proceed further action
-            if (alarmData == null)
-            {
-                return null;
-            }
-
-
-            /// Alarm item layout should be set if null
-            if (alarmItemLayout == null)
-            {
-                // The layout of item cell
-                alarmItemLayout = new StackLayout
-                {
-                    HeightRequest = 120,
-                    Orientation = StackOrientation.Horizontal,
-                    HorizontalOptions = LayoutOptions.FillAndExpand,
-                    VerticalOptions = LayoutOptions.FillAndExpand
-                };
-
-                // Time Label
-                timeLabel = new Label()
-                {
-                    WidthRequest = 280,
-                    FontSize = 12,
-                    TextColor = Color.White,
-                    HorizontalOptions = LayoutOptions.Center,
-                    VerticalOptions = LayoutOptions.Center,
-                    HorizontalTextAlignment = TextAlignment.Center,
-                    VerticalTextAlignment = TextAlignment.Center,
-                };
-
-                timeLabel.SetBinding(Label.TextProperty, new Binding("ScheduledDateTime", BindingMode.Default, new ScheduledDateTimeToTextConverter()));
-                alarmItemLayout.Children.Add(timeLabel);
-
-                switchObj = new Check
-                {
-                    HeightRequest = 80,
-                    WidthRequest = 80,
-                    DisplayStyle = CheckDisplayStyle.Default,
-                    IsToggled = alarmData.AlarmState == AlarmStates.Inactive ? false : true,
-                    HorizontalOptions = LayoutOptions.End,
-                    VerticalOptions = LayoutOptions.Center,
-                };
-
-                alarmItemLayout.Children.Add(switchObj);
-
-                /// Adds an event
-                switchObj.Toggled += (s, e) =>
-                {
-                    AlarmRecord am = (AlarmRecord)BindingContext;
-                    /// Modify state and re-draw it. Redraw must be called to redraw
-                    if (e.Value)
-                    {
-                        AlarmModel.ReactivatelAlarm(am);
-                    }
-                    else
-                    {
-                        AlarmModel.DeactivatelAlarm(am);
-                    }
-                };
-            }
-
-            return alarmItemLayout;
-        }
-
-        /// <summary>
-        /// When binding context is changed, need to redraw
-        /// </summary>
-        protected override void OnBindingContextChanged()
-        {
-            base.OnBindingContextChanged();
-            if (BindingContext == null)
-            {
-                return;
-            }
-            else
-            {
-                View = Draw();
-            }
-        }
-    }
-}
diff --git a/test/Alarm/Alarm/Views/CirclePageEx.xaml b/test/Alarm/Alarm/Views/CirclePageEx.xaml
deleted file mode 100755 (executable)
index b0f6cbc..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<w:CirclePage
-       x:Class="Alarm.Views.CirclePageEx"
-       xmlns="http://xamarin.com/schemas/2014/forms"
-       xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-       xmlns:w="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF" />
\ No newline at end of file
diff --git a/test/Alarm/Alarm/Views/CirclePageEx.xaml.cs b/test/Alarm/Alarm/Views/CirclePageEx.xaml.cs
deleted file mode 100644 (file)
index a335d25..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using Tizen.Wearable.CircularUI.Forms;
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace Alarm.Views
-{
-    /// <summary>
-    /// Base Page class
-    /// </summary>
-       [XamlCompilation(XamlCompilationOptions.Compile)]
-       public partial class CirclePageEx : CirclePage
-    {
-               public CirclePageEx()
-               {
-            // Hide navigation bar
-            NavigationPage.SetHasNavigationBar(this, false);
-
-            InitializeComponent();
-        }
-       }
-}
\ No newline at end of file
diff --git a/test/Alarm/Alarm/Views/MainPage.xaml b/test/Alarm/Alarm/Views/MainPage.xaml
deleted file mode 100755 (executable)
index a6d118c..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<views:CirclePageEx
-       x:Class="Alarm.Views.MainPage"
-       xmlns="http://xamarin.com/schemas/2014/forms"
-       xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-       xmlns:control="clr-namespace:Alarm.Controls"
-       xmlns:converters="clr-namespace:Alarm.Converters"
-       xmlns:resx="clr-namespace:Alarm.Resx"
-       xmlns:views="clr-namespace:Alarm.Views"
-       xmlns:w="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"
-       Title="MainPage"
-       RotaryFocusObject="{x:Reference AlarmList}">
-       <ContentPage.Resources>
-               <ResourceDictionary>
-                       <converters:ItemCountToVisibilityConverter x:Key="VisibilityConverter" />
-               </ResourceDictionary>
-       </ContentPage.Resources>
-       <ContentPage.Content>
-               <StackLayout Orientation="Vertical">
-                       <StackLayout
-                               x:Name="NoAlarmLayout"
-                               HorizontalOptions="Center"
-                               IsVisible="{Binding RecordList.Count, Converter={StaticResource VisibilityConverter}, ConverterParameter={x:Static converters:MainPageType.Empty}}"
-                               VerticalOptions="FillAndExpand">
-                               <Label
-                                       x:Name="EmptyHeaderLabel"
-                                       Margin="0,50,0,30"
-                                       FontAttributes="Bold"
-                                       FontSize="Medium"
-                                       HorizontalTextAlignment="Center"
-                                       Text="{x:Static resx:AppResources.Alarm}"
-                                       TextColor="#368AFF" />
-                               <control:CustomImageButton
-                                       x:Name="noAlarmImg"
-                                       Released="OnButtonReleased"
-                                       Source="alarm_no_alarm_icon.png" />
-                               <Label
-                                       x:Name="EmptyBottomLabel"
-                                       Margin="0,30,0,50"
-                                       FontSize="Small"
-                                       HorizontalTextAlignment="Center"
-                                       Text="{x:Static resx:AppResources.AddAlarm}" />
-                       </StackLayout>
-                       <StackLayout
-                               x:Name="AlarmListLayout"
-                               HorizontalOptions="FillAndExpand"
-                               IsVisible="{Binding RecordList.Count, Converter={StaticResource VisibilityConverter}, ConverterParameter={x:Static converters:MainPageType.ListView}}"
-                               VerticalOptions="Center">
-                               <w:CircleListView
-                                       x:Name="AlarmList"
-                                       HasUnevenRows="True"
-                                       HorizontalOptions="FillAndExpand"
-                                       ItemTapped="OnItemTapped"
-                                       ItemsSource="{Binding RecordList}"
-                                       VerticalOptions="Center">
-                                       <ListView.Header>
-                                               <StackLayout HeightRequest="115">
-                                                       <Label
-                                                               x:Name="HeaderLabel"
-                                                               FontAttributes="Bold"
-                                                               FontSize="16"
-                                                               HorizontalOptions="CenterAndExpand"
-                                                               Text="{x:Static resx:AppResources.Alarm}"
-                                                               TextColor="#368AFF"
-                                                               VerticalOptions="FillAndExpand" />
-                                               </StackLayout>
-                                       </ListView.Header>
-                                       <ListView.Footer>
-                                               <StackLayout HeightRequest="115">
-                                                       <BoxView />
-                                               </StackLayout>
-                                       </ListView.Footer>
-                                       <ListView.ItemTemplate>
-                                               <DataTemplate>
-                                                       <views:AlarmListCell />
-                                               </DataTemplate>
-                                       </ListView.ItemTemplate>
-                               </w:CircleListView>
-                       </StackLayout>
-               </StackLayout>
-       </ContentPage.Content>
-       <views:CirclePageEx.ActionButton>
-               <w:ActionButtonItem
-                       x:Name="AddButton"
-                       Clicked="OnAddButtonClicked"
-                       IsVisible="{Binding RecordList.Count, Converter={StaticResource VisibilityConverter}, ConverterParameter={x:Static converters:MainPageType.Button}}"
-                       Text="{x:Static resx:AppResources.Add}" />
-       </views:CirclePageEx.ActionButton>
-</views:CirclePageEx>
\ No newline at end of file
diff --git a/test/Alarm/Alarm/Views/MainPage.xaml.cs b/test/Alarm/Alarm/Views/MainPage.xaml.cs
deleted file mode 100644 (file)
index 910f76d..0000000
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using Alarm.Converters;
-using Alarm.Implements;
-using Alarm.Models;
-using Alarm.Resx;
-using Alarm.ViewModels;
-using System;
-using System.Globalization;
-using System.Windows.Input;
-using Tizen.Wearable.CircularUI.Forms;
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace Alarm.Views
-{
-    /// <summary>
-    /// Main Page class
-    /// </summary>
-       [XamlCompilation(XamlCompilationOptions.Compile)]
-       public partial class MainPage : CirclePageEx
-    {
-        /// <summary>
-        /// Constructor of MainPage class
-        /// </summary>
-        /// <param name="viewModel">MainPageModel</param>
-        public MainPage(MainPageModel viewModel)
-               {
-            BindingContext = viewModel;
-            InitializeComponent();
-
-            // Subscribe notification of locale changes to update text based on locale
-            MessagingCenter.Subscribe<LocaleHandler, CultureInfo>(this, MessageKeys.LanguageChanged, (obj, culture) =>
-            {
-                Console.WriteLine($"MainPage received LanguageChanged");
-                // Update text that has been translated into the current language.
-                HeaderLabel.Text = EmptyHeaderLabel.Text = AppResources.Alarm;
-                EmptyBottomLabel.Text = AppResources.AddAlarm;
-                AddButton.Text = AppResources.Add;
-
-                //This is workaround solution for refresh Listview following to language change.
-                AlarmList.ItemsSource = null;
-                AlarmList.ItemsSource = viewModel.RecordList;
-            });
-        }
-
-        /// <summary>
-        /// ListItem tapped event handler
-        /// </summary>
-        /// <param name="sender">object</param>
-        /// <param name="e">SelectedItemChangedEventArgs</param>
-        void OnItemTapped(object sender, SelectedItemChangedEventArgs e)
-        {
-            /// skips for no selected item case
-            if (e.SelectedItem == null)
-            {
-                return;
-            }
-
-            /// check selected item
-            AlarmRecord alarm = e.SelectedItem as AlarmRecord;
-            /// de-select first item
-            ((ListView)sender).SelectedItem = null; // de-select the row
-            EditAlarm(alarm);
-        }
-
-        /// <summary>
-        /// Image Button event handler
-        /// </summary>
-        /// <param name="sender">object</param>
-        /// <param name="args">EventArgs</param>
-        void OnButtonReleased(object sender, EventArgs args)
-        {
-            CreateNewAlarm();
-        }
-
-        /// <summary>
-        /// Action button event handler
-        /// </summary>
-        /// <param name="sender">object</param>
-        /// <param name="args">EventArgs</param>
-        void OnAddButtonClicked(object sender, EventArgs args)
-        {
-            CreateNewAlarm();
-        }
-
-        /// <summary>
-        /// Launch AlarmEdit page
-        /// </summary>
-        async void CreateNewAlarm()
-        {
-            /// Creates default alarm record
-            AlarmRecord defaultAlarmRecord = new AlarmRecord();
-            defaultAlarmRecord.SetDefault();
-            await Navigation.PushAsync(AlarmPageController.GetInstance(AlarmPages.EditPage, defaultAlarmRecord));
-        }
-
-        /// <summary>
-        /// Launch Edit page
-        /// </summary>
-        /// <param name="record">AlarmRecord</param>
-        async void EditAlarm(AlarmRecord record)
-        {
-            await Navigation.PushAsync(AlarmPageController.GetInstance(AlarmPages.EditPage, record));
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/Alarm/Alarm/Views/SavePopupPage.xaml b/test/Alarm/Alarm/Views/SavePopupPage.xaml
deleted file mode 100644 (file)
index daccff7..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<ContentPage
-       x:Class="Alarm.Views.SavePopupPage"
-       xmlns="http://xamarin.com/schemas/2014/forms"
-       xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml">
-       <ContentPage.Content>
-               <StackLayout HorizontalOptions="CenterAndExpand" VerticalOptions="CenterAndExpand">
-                       <Label x:Name="AlarmSetLabel" Text="Set Alarm now!" />
-               </StackLayout>
-       </ContentPage.Content>
-</ContentPage>
\ No newline at end of file
diff --git a/test/Alarm/Alarm/Views/SavePopupPage.xaml.cs b/test/Alarm/Alarm/Views/SavePopupPage.xaml.cs
deleted file mode 100644 (file)
index 0186bc1..0000000
+++ /dev/null
@@ -1,214 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using Alarm.Models;
-using Alarm.Resx;
-using System;
-using System.Threading.Tasks;
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace Alarm.Views
-{
-    /// <summary>
-    /// SavePopupPage class
-    /// It shows the remaining time from the current time to the alarm time. 
-    /// </summary>
-       [XamlCompilation(XamlCompilationOptions.Compile)]
-       public partial class SavePopupPage : ContentPage
-       {
-        ///Korean CultureInfo name
-        const string KoreanCultureInfoName = "ko-KR";
-
-        private AlarmRecord _record;
-
-        /// <summary>
-        /// SavePopupPage constructor
-        /// </summary>
-        /// <param name="record">AlarmRecord</param>
-        public SavePopupPage(AlarmRecord record)
-               {
-            InitializeComponent();
-
-            NavigationPage.SetHasNavigationBar(this, false);
-            _record = record;
-            SetPopupLabel();
-            ClosePopup();
-        }
-
-        /// <summary>
-        /// Calculate the remaining time and then set AlarmSetLabel.
-        /// </summary>
-        private void SetPopupLabel()
-        {
-            DateTime savedTime = _record.ScheduledDateTime;
-            DateTime now = System.DateTime.Now;
-            int hour = savedTime.Hour - now.Hour;
-            int min = savedTime.Minute - now.Minute;
-            string text = "";
-
-            if (hour >= 0)
-            {
-                if (min < 0)
-                {
-                    min = 60 + min;
-                    if (hour == 0)
-                    {
-                        hour = 24 - 1;
-                    }
-                    else
-                    {
-                        hour = hour - 1;
-                    }
-                }
-            }
-            else   //hour < 0
-            {
-                hour = 24 + hour;
-                if (min < 0)
-                {
-                    min = 60 + min;
-                    hour = hour - 1;
-                }
-            }
-
-            //Console.WriteLine($"App.Culture.Name:{App.Culture.Name}");
-            if (hour == 0)
-            {
-                //If hour is 0, display only remain minutes.
-                if (min == 0)
-                {
-                    text = GetSetNowText();
-                }
-                else
-                {
-                    text = GetRemainMinutesText(min);
-                }
-            }
-            else
-            {
-                 text = GetRemainHourMinutesText(hour, min);
-            }
-
-            AlarmSetLabel.Text = text;
-        }
-
-
-        /// <summary>
-        /// Get localized string of alarm set now string .
-        /// </summary>
-        /// <returns>localized string </returns>
-        private string GetSetNowText()
-        {
-            string text;
-            if (App.Culture.Name == KoreanCultureInfoName)
-            {
-                text = AppResources.Now + " " + AppResources.AlarmSet;
-            }
-            else
-            {
-                text = AppResources.AlarmSet + " " + AppResources.Now;
-            }
-
-            return text;
-        }
-
-        /// <summary>
-        /// Get localized string of remaining minutes.
-        /// </summary>
-        /// <param name="minutes">remain minutes</param>
-        /// <returns>Localized string of remaining minutes</returns>
-        private string GetRemainMinutesText(int minutes)
-        {
-            string text;
-            if (App.Culture.Name == KoreanCultureInfoName)
-            {
-                text = AppResources.FromNow + " " + minutes + " " + AppResources.Minutes + " " + AppResources.After + " " + AppResources.AlarmSet;
-            }
-            else
-            {
-                if (minutes == 1)
-                {
-                    text = AppResources.AlarmSet + " " + AppResources.Minute + " " + AppResources.After + " " + AppResources.FromNow;
-                }
-                else
-                {
-                    text = AppResources.AlarmSet + " " + minutes + " " + AppResources.Minutes + " " + AppResources.After + " " + AppResources.FromNow;
-                }
-            }
-
-            return text;
-        }
-
-        /// <summary>
-        /// Get localized string of remaining hours and minutes.
-        /// </summary>
-        /// <param name="hours">remain hours</param>
-        /// <param name="minutes">remain minutes</param>
-        /// <returns>Localized string of remaining hours and minutes</returns>
-        private string GetRemainHourMinutesText(int hours, int minutes)
-        {
-            string text;
-            if (App.Culture.Name == KoreanCultureInfoName)
-            {
-                if (minutes == 0)
-                {
-                    text = AppResources.FromNow + " " + hours + " " + AppResources.Hours + " " + AppResources.After + " " + AppResources.AlarmSet;
-                }
-                else
-                {
-                    text = AppResources.FromNow + " " + hours + " " + AppResources.Hours + " " + minutes + " " + AppResources.Minutes + " " + AppResources.After + " " + AppResources.AlarmSet;
-                }
-            }
-            else
-            {
-                
-                if (hours == 1)
-                {
-                    text = AppResources.AlarmSet  + " " + AppResources.Hour;
-                }
-                else
-                {
-                    text = AppResources.AlarmSet + " " + hours + " " + AppResources.Hours;
-                }
-
-                if (minutes == 0)
-                {
-                    text = text + " " + AppResources.After + " " + AppResources.FromNow;
-                }
-                else if (minutes == 1)
-                {
-                    text = text + " " + AppResources.Minute + " " + AppResources.After + " " + AppResources.FromNow;
-                }
-                else
-                {
-                    text = text + " " + minutes + " " + AppResources.Minutes + " " + AppResources.After + " " + AppResources.FromNow;
-                }
-            }
-
-            return text;
-        }
-
-        /// <summary>
-        /// After 2 seconds. this page closed and then go to the Mainpage
-        /// </summary>
-        async private void ClosePopup()
-        {
-            await Task.Delay(2000);
-            await Navigation.PopToRootAsync();
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/Alarm/Alarm/res/Notification.ogg b/test/Alarm/Alarm/res/Notification.ogg
deleted file mode 100644 (file)
index 24d9e68..0000000
Binary files a/test/Alarm/Alarm/res/Notification.ogg and /dev/null differ
diff --git a/test/Alarm/Alarm/res/alarm_add_icon.png b/test/Alarm/Alarm/res/alarm_add_icon.png
deleted file mode 100644 (file)
index 52b03a4..0000000
Binary files a/test/Alarm/Alarm/res/alarm_add_icon.png and /dev/null differ
diff --git a/test/Alarm/Alarm/res/alarm_no_alarm_icon.png b/test/Alarm/Alarm/res/alarm_no_alarm_icon.png
deleted file mode 100644 (file)
index 8de17cd..0000000
Binary files a/test/Alarm/Alarm/res/alarm_no_alarm_icon.png and /dev/null differ
diff --git a/test/Alarm/Alarm/res/alarm_ringing_icon.png b/test/Alarm/Alarm/res/alarm_ringing_icon.png
deleted file mode 100644 (file)
index 3bbe63d..0000000
Binary files a/test/Alarm/Alarm/res/alarm_ringing_icon.png and /dev/null differ
diff --git a/test/Alarm/Alarm/res/ic_popup_btn_check.png b/test/Alarm/Alarm/res/ic_popup_btn_check.png
deleted file mode 100644 (file)
index f20f62e..0000000
Binary files a/test/Alarm/Alarm/res/ic_popup_btn_check.png and /dev/null differ
diff --git a/test/Alarm/Alarm/shared/res/Alarm.png b/test/Alarm/Alarm/shared/res/Alarm.png
deleted file mode 100644 (file)
index 9e31f00..0000000
Binary files a/test/Alarm/Alarm/shared/res/Alarm.png and /dev/null differ
diff --git a/test/Alarm/Alarm/tizen-manifest.xml b/test/Alarm/Alarm/tizen-manifest.xml
deleted file mode 100644 (file)
index 54b7ded..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<manifest package="org.tizen.example.Alarm" version="1.0.0" api-version="4" xmlns="http://tizen.org/ns/packages">
-       <profile name="wearable" />
-       <ui-application appid="org.tizen.example.Alarm" exec="Alarm.dll" multiple="false" nodisplay="false" taskmanage="true" splash-screen-display="true" type="dotnet" launch_mode="single">
-               <label>.NET Alarm</label>
-               <icon>Alarm.png</icon>
-               <metadata key="http://tizen.org/metadata/prefer_dotnet_aot" value="true" />
-        <label xml:lang="ko-kr">닷넷 알람</label>
-        <label xml:lang="en-us">.NET Alarm</label>
-               <splash-screens />
-       </ui-application>
-       <shortcut-list />
-       <privileges>
-               <privilege>http://tizen.org/privilege/alarm.set</privilege>
-               <privilege>http://tizen.org/privilege/alarm.get</privilege>
-               <privilege>http://tizen.org/privilege/haptic</privilege>
-               <privilege>http://tizen.org/privilege/appmanager.launch</privilege>
-       </privileges>
-       <provides-appdefined-privileges />
-</manifest>
diff --git a/test/Calculator/Calculator.sln b/test/Calculator/Calculator.sln
deleted file mode 100644 (file)
index bc9279b..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 15
-VisualStudioVersion = 15.0.27703.2042
-MinimumVisualStudioVersion = 10.0.40219.1
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Calculator", "Calculator\Calculator.csproj", "{BEFE0E16-9184-4AEE-9793-AF374BFDA5E7}"
-EndProject
-Global
-       GlobalSection(SolutionConfigurationPlatforms) = preSolution
-               Debug|Any CPU = Debug|Any CPU
-               Release|Any CPU = Release|Any CPU
-       EndGlobalSection
-       GlobalSection(ProjectConfigurationPlatforms) = postSolution
-               {BEFE0E16-9184-4AEE-9793-AF374BFDA5E7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {BEFE0E16-9184-4AEE-9793-AF374BFDA5E7}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {BEFE0E16-9184-4AEE-9793-AF374BFDA5E7}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {BEFE0E16-9184-4AEE-9793-AF374BFDA5E7}.Release|Any CPU.Build.0 = Release|Any CPU
-       EndGlobalSection
-       GlobalSection(SolutionProperties) = preSolution
-               HideSolutionNode = FALSE
-       EndGlobalSection
-       GlobalSection(ExtensibilityGlobals) = postSolution
-               SolutionGuid = {332903D4-E06B-475C-ACDB-C5F7AF481E20}
-       EndGlobalSection
-EndGlobal
diff --git a/test/Calculator/Calculator/Calculator.cs b/test/Calculator/Calculator/Calculator.cs
deleted file mode 100644 (file)
index 48f9507..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-using System;
-using System.Collections.Generic;
-using Tizen.Wearable.CircularUI.Forms;
-using Tizen.Wearable.CircularUI.Forms.Renderer;
-using Xamarin.Forms;
-using Xamarin.Forms.Platform.Tizen;
-
-namespace Calculator
-{
-       /// <summary>
-       /// Calculator application entry point.
-       /// </summary>
-    class Program : global::Xamarin.Forms.Platform.Tizen.ApplicationLifecycle
-    {
-        /// <summary>
-        /// An AppResourcePath which is used to get full path of the app resources.
-        /// </summary>
-        public static string AppResourcePath
-        {
-            get;
-            private set;
-        }
-
-        /// <summary>
-        /// This function is called when the application is created
-        /// </summary>
-        protected override void OnCreate()
-        {
-            base.OnCreate();
-
-            AppResourcePath = FormsApplication.DirectoryInfo.Resource;
-            FormsApplication.LoadApplication(new CalculatorApp());
-        }
-
-        /// <summary>
-        /// The entry point of the application
-        /// </summary>
-        /// <param name="args">Arguments</param>
-        static void Main(string[] args)
-        {
-            var app = new Program();
-            // define your custom handlers
-            var customRenderers = new Dictionary<Type, Func<IRegisterable>>()
-            {
-                { typeof(CirclePage), ()=> new CirclePageRenderer() },
-                { typeof(global:: Tizen.Wearable.CircularUI.Forms.CircleListView), () => new CircleListViewRenderer() },
-                { typeof(Calculator.Controls.ImageButton), () => new  Calculator.Renderers.ImageButtonRenderer() }
-            };
-
-            var option = new InitializationOptions(app);
-            option.UseStaticRegistrar(StaticRegistrarStrategy.StaticRegistrarOnly, customRenderers, true);
-            option.UseMessagingCenter = false;
-            option.UseStyle = false;
-            option.UseVisual = false;
-            option.UseShell = false;
-            Forms.Init(option);
-
-            global::Tizen.Wearable.CircularUI.Forms.Renderer.FormsCircularUI.Init();
-            app.FormsApplication.Run(args);
-               }
-       }
-}
diff --git a/test/Calculator/Calculator/Calculator.csproj b/test/Calculator/Calculator/Calculator.csproj
deleted file mode 100755 (executable)
index bc169f5..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-<Project Sdk="Tizen.NET.Sdk/1.0.8">
-
-  <PropertyGroup>
-    <OutputType>Exe</OutputType>
-    <TargetFramework>tizen40</TargetFramework>
-  </PropertyGroup>
-
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugType>portable</DebugType>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>None</DebugType>
-  </PropertyGroup>
-
-  <ItemGroup>
-    <ProjectReference Include="..\..\..\src\XSF\XSF.csproj" />
-  </ItemGroup>
-
-  <ItemGroup>
-    <Folder Include="Impl\" />
-  </ItemGroup>
-
-</Project>
diff --git a/test/Calculator/Calculator/CalculatorApp.cs b/test/Calculator/Calculator/CalculatorApp.cs
deleted file mode 100644 (file)
index c59b5da..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-
-using Xamarin.Forms;
-using Calculator.Views;
-using Calculator.Impl;
-
-namespace Calculator
-{
-    public class CalculatorApp : Application
-    {
-        /// <summary>
-        /// InputParser class instance.
-        /// The InputParser checks user input and validates calculated expression.
-        /// </summary>
-        /// <seealso cref="global::Calculator.Impl.InputParser">
-        private static readonly Lazy<InputParser> inputParser = new Lazy<InputParser>(() => new InputParser());
-
-        static public InputParser InputParserInstance
-        {
-            get
-            {
-                return inputParser.Value;
-            }
-        }
-
-        /// <summary>
-        /// A Formatter class instance.
-        /// The Formatter class provides formatting for displaying text from validated expression.
-        /// </summary>
-        /// <seealso cref="global::Calculator.Impl.Formatter">
-        private static readonly Lazy<Formatter> formatter = new Lazy<Formatter>(() => new Formatter());
-        static public Formatter FormatterInstance
-        {
-            get
-            {
-                return formatter.Value;
-            }
-        }
-
-        /// <summary>
-        /// A CalculatorImpl class instance.
-        /// The CalculatorImpl class calculates validated expression and provides result value.
-        /// </summary>
-        /// <seealso cref="global::Calculator.Impl.CalculatorImpl">
-        private static readonly Lazy<CalculatorImpl> calculator = new Lazy<CalculatorImpl>(() => new CalculatorImpl());
-        static public CalculatorImpl CalculatorInstance
-        {
-            get
-            {
-                return calculator.Value;
-            }
-        }
-
-        public CalculatorApp()
-        {
-            // The root page of the application
-            MainPage = new CalculatorMainPage();
-        }
-    }
-}
diff --git a/test/Calculator/Calculator/Controls/ImageButton.xaml b/test/Calculator/Calculator/Controls/ImageButton.xaml
deleted file mode 100644 (file)
index ed50faf..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Image xmlns="http://xamarin.com/schemas/2014/forms" 
-             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-             x:Class="Calculator.Controls.ImageButton">
-</Image>
\ No newline at end of file
diff --git a/test/Calculator/Calculator/Controls/ImageButton.xaml.cs b/test/Calculator/Calculator/Controls/ImageButton.xaml.cs
deleted file mode 100644 (file)
index ef370f4..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-
-using System.Windows.Input;
-using Xamarin.Forms;
-
-namespace Calculator.Controls
-{
-    /// <summary>
-    /// A command button which is implemented with a custom renderer based on a native image. 
-    /// </summary>
-    public partial class ImageButton : Image
-    {
-        public static readonly BindableProperty CommandProperty =
-           BindableProperty.Create(nameof(Command), typeof(ICommand), typeof(ImageButton), null, BindingMode.TwoWay);
-
-        /// <summary>
-        /// A command that will be executed if the button is touched. 
-        /// </summary>
-        public ICommand Command
-        {
-            get { return (ICommand)GetValue(CommandProperty); }
-            set { SetValue(CommandProperty, value); }
-        }
-
-        /// <summary>
-        /// A command parameter that will be passed when the Command is executed. 
-        /// </summary>
-        /// <see cref="ImageButton.Command"/>
-        public String CommandParameter
-        {
-            get;
-            set;
-        }
-
-        public ImageButton()
-        {
-            CommandParameter = "";
-            InitializeComponent();
-        }
-    }
-}
diff --git a/test/Calculator/Calculator/Impl/CalculatorImpl.cs b/test/Calculator/Calculator/Impl/CalculatorImpl.cs
deleted file mode 100644 (file)
index a0be517..0000000
+++ /dev/null
@@ -1,345 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-using System.Collections.Generic;
-using System.Linq;
-
-using Calculator.Models;
-using Tizen;
-
-namespace Calculator.Impl
-{
-    /// <summary>
-    /// A Calculator Implementation class that calculates result for given expression.
-    /// </summary>
-    /// <remarks>
-    /// The CalculatorImpl requires InputElement class based infix notation expression list.
-    /// </remarks>
-    public sealed class CalculatorImpl
-    {
-        /// <summary>
-        /// An enum value representing Calculator working status.
-        /// </summary>
-        public enum WorkingStatus
-        {
-            WORKING,
-            ERROR,
-        }
-
-        /// <summary>
-        /// Calculator working status.
-        /// Status is set to ERROR if last calculation failed.
-        /// </summary>
-        public WorkingStatus Status
-        {
-            get;
-            private set;
-        }
-
-        /// <summary>
-        /// All operators that can be used in calculation.
-        /// </summary>
-        private IReadOnlyDictionary<String, IOperator> OperatorDescriptions;
-
-        /// <summary>
-        /// Last used operand.
-        /// This operand is used in repeated calculation.
-        /// </summary>
-        private Literal LastOperand;
-
-        /// <summary>
-        /// Last used operator.
-        /// This operator is used in repeated calculation.
-        /// </summary>
-        private IOperator LastOperator;
-
-        /// <summary>
-        /// A flag value shows if the last pressed button is equal key.
-        /// </summary>
-        private bool IsEqualUsed;
-
-        /// <summary>
-        /// Last calculated result value.
-        /// </summary>
-        public double Result
-        {
-            get;
-            private set;
-        }
-
-        /// <summary>
-        /// The CalculatorImpl's constructor which initializes calculator
-        /// and sets default calculation operators.
-        /// </summary>
-        public CalculatorImpl()
-        {
-            Status = WorkingStatus.WORKING;
-            OperatorDescriptions = Operators.OperatorMap;
-        }
-
-        /// <summary>
-        /// The method which calculates given expression.
-        /// </summary>
-        /// <param name="separatedInfixNotation"> An expression list in infix notation </param>
-        /// <returns> Calculation result status </returns>
-        public CalculationResult SetExpression(IEnumerable<InputElement> separatedInfixNotation)
-        {
-            IsEqualUsed = false;
-            return Calculate(separatedInfixNotation);
-        }
-
-        /// <summary>
-        /// This method is handling equal key press.
-        /// If the equal key is pressed once, just provides a result,
-        /// but if the equal key is pressed repeatedly, calculator calculates with lastly used operand and operator
-        /// </summary>
-        /// <param name="separated"> Expression list in infix notation </param>
-        /// <returns> Calculation result status </returns>
-        public CalculationResult Equal(IEnumerable<InputElement> separated)
-        {
-            CalculationResult res;
-
-            if (IsEqualUsed == false)
-            {
-                res = Calculate(separated);
-                if (res is CalculationSuccessful)
-                {
-                    IsEqualUsed = true;
-                    return res;
-                }
-
-                LastOperand = null;
-                LastOperator = null;
-                return res;
-            }
-
-            if (separated.Count() < 1 ||
-                LastOperator == null ||
-                LastOperand == null)
-            {
-                return new CalculationFailed();
-            }
-
-            List<InputElement> tempList = new List<InputElement>(separated);
-            tempList.Add(LastOperator as InputElement);
-            tempList.Add(LastOperand);
-
-            return Calculate(tempList);
-        }
-
-        /// <summary>
-        /// The method calculates result for given expression.
-        /// </summary>
-        /// <param name="separated"> InputElement list in infix notation</param>
-        /// <returns> Calculation result status </returns>
-        private CalculationResult Calculate(IEnumerable<InputElement> separated)
-        {
-            Status = WorkingStatus.ERROR;
-
-            if (!separated.Any())
-            {
-                Result = 0;
-                Status = WorkingStatus.WORKING;
-                return new CalculationSuccessful();
-            }
-
-            if (separated.Last() is Point)
-            {
-                return new CalculationFailed();
-            }
-
-            IList<InputElement> temp = new List<InputElement>(separated);
-            // This section adds missing closing brackets
-            {
-                int depth = 0;
-                foreach (var item in temp)
-                {
-                    if (item.CompareTo("(") == 0)
-                    {
-                        depth += 1;
-                    }
-                    else if (item.CompareTo(")") == 0)
-                    {
-                        depth -= 1;
-                    }
-                }
-
-                for (int i = 0; i < depth; i++)
-                {
-                    temp.Add(new CloseBracket());
-                }
-            }
-
-
-            Queue<InputElement> postfix;
-            if (!ChangeToPostfix(temp, out postfix))
-            {
-                return new CantCalculateInvalidFormat();
-            }
-            
-            Stack<string> operand = new Stack<string>();
-            try
-            {
-                foreach(var token in postfix)
-                {
-                    if (token is Literal)
-                    {
-                        operand.Push(token.GetElement);
-                    }
-                    else
-                    {
-                        IOperator op = OperatorDescriptions[token];
-                        string op1;
-                        string op2;
-                        double _op1 = 0;
-                        double _op2 = 0;
-
-                        // This section retrieves arguments needed by operator
-                        if (op is IBinaryOperator)
-                        {
-                            op2 = operand.Pop();
-                            op1 = operand.Pop();
-
-                            if (!GetDoubleValue(op2, out _op2) || !GetDoubleValue(op1, out _op1))
-                            {
-                                return new CantCalculateInvalidFormat();
-                            }
-
-                            if ((op is Models.Point) == false)
-                            {
-                                LastOperand = new Literal(op2);
-                                LastOperator = op;
-                            }
-                        }
-                        else if (op is IUnaryOperator)
-                        {
-                            op1 = operand.Pop();
-
-                            if (!GetDoubleValue(op1, out _op1))
-                            {
-                                return new CantCalculateInvalidFormat();
-                            }
-                        }
-
-                        op.GetResult(_op1, _op2, out double result);
-
-                        if (Double.IsInfinity(result) || Double.IsNaN(result))
-                        {
-                            return new CantCalculateTooBigNumber();
-                        }
-
-                        operand.Push(result.ToString());
-                    }
-                }
-            }
-            catch (DivideByZeroException)
-            {
-                return new CantDivideByZero();
-            }
-            catch (InvalidOperationException)
-            {
-                return new CantCalculateInvalidFormat();
-            }
-            catch (Exception e)
-            {
-                System.Diagnostics.Debug.WriteLine(e.Message);
-                return new CalculationFailed();
-            }
-
-            double ret;
-            if (operand.Count == 0 || Double.TryParse(operand.Peek(), out ret) == false)
-            {
-                return new CalculationFailed();
-            }
-
-            Result = ret;
-            Status = WorkingStatus.WORKING;
-            return new CalculationSuccessful();
-        }
-
-        /// <summary>
-        /// The method changes expression format from infix to postfix.
-        /// </summary>
-        /// <param name="separated"> InputElement list in infix notation </param>
-        /// <param name="ret"> InputElement queue in postfix notation </param>
-        /// <returns> Result status of expression's reorder </returns>
-        private bool ChangeToPostfix(IEnumerable<InputElement> separated, out Queue<InputElement> ret)
-        {
-            Queue<InputElement> postfix = new Queue<InputElement>();
-            Stack<InputElement> operators = new Stack<InputElement>();
-
-            try
-            {
-                foreach (InputElement token in separated)
-                {
-                    if (token is Literal)
-                    {
-                        postfix.Enqueue(token);
-                    }
-                    else if (token.CompareTo("(") == 0)
-                    {
-                        operators.Push(token);
-                    }
-                    else if (token.CompareTo(")") == 0)
-                    {
-                        InputElement topToken = operators.Pop();
-                        while (topToken.CompareTo("(") != 0)
-                        {
-                            postfix.Enqueue(topToken);
-                            topToken = operators.Pop();
-                        }
-                    }
-                    else
-                    {
-                        while ((operators.Count > 0) &&
-                            (OperatorDescriptions[operators.Peek()].Priority >= OperatorDescriptions[token].Priority))
-                        {
-                            postfix.Enqueue(operators.Pop());
-                        }
-
-                        operators.Push(token);
-                    }
-                }
-
-                while (operators.Count > 0)
-                {
-                    postfix.Enqueue(operators.Pop());
-                }
-            }
-            catch (Exception)
-            {
-                postfix.Clear();
-                ret = postfix;
-                return false;
-            }
-
-            ret = postfix;
-            return true;
-        }
-
-        private bool GetDoubleValue(string literal, out double value)
-        {
-            string strValue = literal;
-
-            if (literal.StartsWith("0") && literal.Contains(".") == false)
-            {
-                strValue = ("0." + literal);
-            }
-
-            return Double.TryParse(strValue, out value);
-        }
-    }
-}
diff --git a/test/Calculator/Calculator/Impl/Formatter.cs b/test/Calculator/Calculator/Impl/Formatter.cs
deleted file mode 100644 (file)
index 81a5386..0000000
+++ /dev/null
@@ -1,163 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using Xamarin.Forms;
-
-using Calculator.Models;
-
-namespace Calculator.Impl
-{
-    /// <summary>
-    /// A Formatter class that provides formatted displayable text.</summary>
-    public sealed class Formatter
-    {
-        private const double displayMax = 9999999999D;
-        private static readonly Color literalColor = Color.White;
-        private static readonly Color operatorColor = Color.Pink;
-
-        /// <summary>
-        /// The method provides formatted text for a number. 
-        /// </summary>
-        /// <param name="value"> A number value </param>
-        /// <returns> A formatted number text </returns>
-        private String GetNumberText(Double value)
-        {
-            if (Math.Abs(value) > displayMax)
-            {
-                return String.Format("{0:0.########E+000}", value);
-            }
-
-            return String.Format("{0:#,##0.##########}", value);
-        }
-
-        /// <summary>
-        /// The method provides formatted expression text for given expression. 
-        /// </summary>
-        /// <param name="separatedExpression"> An expression consist of InputElement list </param>
-        /// <returns> A formatted expression text </returns>
-        public FormattedString GetFormattedExpressionText(IEnumerable<InputElement> separatedExpression)
-        {
-            var result = new FormattedString();
-            int oneLineLengthCount = 0;
-
-            for (int i = 0; i < separatedExpression.Count(); i++)
-            {
-                InputElement s = separatedExpression.ElementAt(i);
-                string element = s.GetDisplayElement;
-
-                if (s is Literal)
-                {
-                    double value;
-                    string displayNumberText = element;
-                    if (Double.TryParse(element, out value))
-                    {
-                        displayNumberText = GetNumberText(value);
-                    }
-
-                    result.Spans.Add(new Span
-                    {
-                        Text = displayNumberText,
-                        ForegroundColor = literalColor,
-                    });
-                }
-                else if (s is Reverse)
-                {
-                    result.Spans.Add(new Span
-                    {
-                        Text = element,
-                        ForegroundColor = literalColor,
-                    });
-                }
-                else if (s is Models.Point && i < (separatedExpression.Count() - 1))
-                {
-                    if (separatedExpression.ElementAt(i + 1) is Literal)
-                    {
-                        string last = result.Spans.Last().Text;
-                        string stringValue = last;
-                        string next = separatedExpression.ElementAt(i + 1);
-                        stringValue = last + "." + next;
-                        double value;
-
-                        if (Double.TryParse(stringValue, out value))
-                        {
-                            result.Spans.RemoveAt(result.Spans.Count - 1);
-                            result.Spans.Add(new Span
-                            {
-                                Text = stringValue,
-                                ForegroundColor = literalColor,
-                            });
-                            i += 1;
-                        }
-                    }
-                }
-                else
-                {
-                    result.Spans.Add(new Span
-                    {
-                        Text = element,
-                        ForegroundColor = operatorColor,
-                    });
-
-                }
-
-
-                oneLineLengthCount += result.Spans.Last().Text.Length;
-            }
-
-            return result;
-        }
-
-        /// <summary>
-        /// The method provides formatted text for the calculated result. </summary>
-        /// <param name="outputText"> A result text </param>
-        /// <returns> A formatted result text </returns>
-        public FormattedString GetFormattedOutputText(String outputText)
-        {
-            string displayNumber;
-
-            double value;
-            if (Double.TryParse(outputText, out value) == false)
-            {
-                return new FormattedString();
-            }
-
-            // Exceptional Case : 0.00000 => 0.00000 (0), 0.0 (X)
-            if (value == 0 &&
-                outputText.Length > 1)
-            {
-                displayNumber = outputText;
-            }
-
-            else
-            {
-                displayNumber = "=" + GetNumberText(value);
-            }
-
-            return new FormattedString()
-            {
-                Spans =
-                {
-                    new Span
-                    {
-                        Text = displayNumber,
-                    },
-                }
-            };
-        }
-    }
-}
diff --git a/test/Calculator/Calculator/Impl/InputParser.cs b/test/Calculator/Calculator/Impl/InputParser.cs
deleted file mode 100644 (file)
index 9ca594a..0000000
+++ /dev/null
@@ -1,470 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-using System.Collections.Generic;
-using System.Linq;
-
-using Calculator.Models;
-
-namespace Calculator.Impl
-{
-    /// <summary>
-    /// InputParser class which validates inputted elements(Operator, Operand)
-    /// and provides separated elements list for the Formatter and the CalculatorImpl.
-    /// This class keeps the inputted expression further use for validate purpose.
-    /// </summary>
-    public sealed class InputParser
-    {
-        private List<InputElement> expressionElements = new List<InputElement>();
-
-        /// <summary>
-        /// InputElement list contains lastly validated expression. </summary>
-        public IEnumerable<InputElement> ExpressionElements
-        {
-            get
-            {
-                return expressionElements;
-            }
-        }
-
-        /// <summary>
-        /// A flag represents whether the input elements is empty or not. </summary>
-        public bool IsEmptyInputElements
-        {
-            get
-            {
-                return (expressionElements.Count == 0);
-            }
-        }
-
-        /// <summary>
-        /// A flag represents whether the last inputted element is the Literal or not. </summary>
-        private bool IsLastElementLiteral
-        {
-            get
-            {
-                if (expressionElements.Count > 0 &&
-                    expressionElements.Last() is Literal)
-                {
-                    return true;
-                }
-
-                return false;
-            }
-        }
-
-        /// <summary>
-        /// A flag represents whether the last inputted element is the Operator or not. </summary>
-        private bool IsLastElementOperator
-        {
-            get
-            {
-                if (expressionElements.Count > 0 &&
-                    expressionElements.Last() is IOperator)
-                {
-                    return true;
-                }
-
-                return false;
-            }
-        }
-
-        /// <summary>
-        /// A flag indicates last validation status. </summary>
-        private bool HasLastValidationSucceeded;
-        /// <summary>
-        /// A flag represents whether equal key is pressed or not last time. </summary>
-        private bool IsEqualUsed;
-
-        public InputParser()
-        {
-
-        }
-
-        /// <summary>
-        /// The method adds inputted element to existing expression and validates it. </summary>
-        /// <param name="input"> An inputted element </param>
-        /// <param name="separated"> An infix notation expression InputElement list </param>
-        /// <returns> An element adding result status </returns>
-        public AddingElementResult GetSeparatedPlainText(string input, out IEnumerable<InputElement> separated)
-        {
-            double inputNumber;
-            separated = expressionElements;
-
-            if (input.Length < 1)
-            {
-                HasLastValidationSucceeded = false;
-                return new InvalidFormatUsed();
-            }
-
-            if (Double.TryParse(input, out inputNumber))
-            {
-                Literal inputLiteral = new Literal(input);
-
-                if (IsEmptyInputElements)
-                {
-                    expressionElements.Add(inputLiteral);
-                    IsEqualUsed = false;
-                    HasLastValidationSucceeded = true;
-                    return new AddingPossible();
-                }
-                else
-                {
-                    AddingElementResult res = expressionElements.Last().CheckPossibilityAddingElement(ref expressionElements,
-                        ref IsEqualUsed, ref HasLastValidationSucceeded, inputLiteral);
-                    IsEqualUsed = false;
-                    if (res is AddingPossible)
-                    {
-                        HasLastValidationSucceeded = true;
-                    }
-                    else
-                    {
-                        HasLastValidationSucceeded = false;
-                    }
-
-                    return res;
-                }
-            }
-
-            InputElement inputElem = Operators.GetOperatorAsInputElement(input);
-            IOperator inputOper = inputElem as IOperator;
-            if (inputOper == null)
-            {
-                HasLastValidationSucceeded = false;
-                return new InvalidFormatUsed();
-            }
-
-            if (IsEmptyInputElements)
-            {
-                if (OperandType.LEFT == inputOper.OperandType ||
-                    OperandType.BOTH == inputOper.OperandType)
-                {
-                    // Exceptional Case : '.' => '0.'
-                    if (inputOper is Point)
-                    {
-                        expressionElements.Add(new Literal("0"));
-                    }
-
-                    else
-                    {
-                        return new InvalidFormatUsed();
-                    }
-                }
-
-                expressionElements.Add(inputElem);
-                Operators.GetOperatorAsInputElement(input)?.PostAddingWork(ref expressionElements);
-                IsEqualUsed = false;
-
-                HasLastValidationSucceeded = true;
-                return new AddingPossible();
-            }
-
-            if (inputElem.AlternativeWork(ref expressionElements, ref IsEqualUsed, ref HasLastValidationSucceeded))
-            {
-                IsEqualUsed = false;
-                HasLastValidationSucceeded = true;
-                return new AddingPossible();
-            }
-
-            // Exceptional case : Only one '.'
-            if (input.CompareTo(".") == 0)
-            {
-                if (CheckDotExist())
-                {
-                    separated = expressionElements;
-                    HasLastValidationSucceeded = true;
-                    return new AddingImpossible();
-                }
-            }
-            else if (input.CompareTo("R") == 0)
-            {
-                if (ReverseSign(out separated))
-                {
-                    return new AddingPossible();
-                }
-
-                return new InvalidFormatUsed();
-            }
-
-            expressionElements.Last().CheckPossibilityAddingElement(ref expressionElements, ref IsEqualUsed, ref HasLastValidationSucceeded, inputOper as InputElement);
-            IsEqualUsed = false;
-
-            HasLastValidationSucceeded = true;
-            return new AddingPossible();
-        }
-
-        /// <summary>
-        /// The method provides status indicates that there is '.' exists or not </summary>
-        /// <returns> A existence of '.' </returns>
-        private bool CheckDotExist()
-        {
-            for (int i = expressionElements.Count - 1; i >= 0; i--)
-            {
-                if (expressionElements[i].CompareTo(".") == 0)
-                {
-                    return true;
-                }
-
-                if (expressionElements[i] is IOperator)
-                {
-                    break;
-                }
-
-            }
-
-            return false;
-        }
-
-        /// <summary>
-        /// The method resets the InputParser to the initial status. </summary>
-        public void Clear()
-        {
-            expressionElements.Clear();
-            HasLastValidationSucceeded = false;
-            IsEqualUsed = false;
-        }
-
-        /// <summary>
-        /// The method removes last inputted element from current expression. </summary>
-        /// <param name="separated"> Current expression InputElement list </param>
-        /// <returns> Flag informing whether last element has been successfully removed. </returns>
-        public bool DeleteLast(out IEnumerable<InputElement> separated)
-        {
-            separated = new List<InputElement>();
-
-            if (expressionElements.Count == 0)
-            {
-                return false;
-            }
-
-            if (expressionElements.Last() is Literal &&
-                expressionElements.Last().GetElement.Length > 1)
-            {
-                Literal literal = expressionElements.Last() as Literal;
-
-                expressionElements[expressionElements.Count - 1] =
-                    new Literal(literal.GetElement.Substring(0, literal.GetElement.Length - 1));
-            }
-            else
-            {
-                expressionElements.RemoveAt(expressionElements.Count - 1);
-            }
-
-            separated = expressionElements;
-            return true;
-        }
-
-        /// <summary>
-        /// The method adds a reverse sign or replace last inputted reverse sign. </summary>
-        /// <param name="separated"> A current expression InputElement list </param>
-        /// <returns> An element adding reverse sign </returns>
-        public bool ReverseSign(out IEnumerable<InputElement> separated)
-        {
-            double lastNumber;
-
-            separated = expressionElements;
-            if (IsEmptyInputElements)
-            {
-                expressionElements.Add(new OpenBracket());
-                expressionElements.Add(new Reverse());
-                return true;
-            }
-
-            if (expressionElements.Last() is Point)
-            {
-                expressionElements.RemoveAt(expressionElements.Count - 1);
-            }
-
-            if (IsEmptyInputElements)
-            {
-                expressionElements.Add(new OpenBracket());
-                expressionElements.Add(new Reverse());
-                return true;
-            }
-
-            // (3 + R => ((-
-            // ((-3 + R => (3
-            // 1+-3 + R => 1+3
-            // 1.1 + R => (-1.1
-
-            if (Double.TryParse(expressionElements.Last(), out lastNumber))
-            {
-                if (lastNumber < 0)
-                {
-                    if (expressionElements.Count >= 2 &&
-                        expressionElements[expressionElements.Count - 2] is OpenBracket)
-                    {
-                        expressionElements.RemoveAt(expressionElements.Count - 1);
-                        expressionElements.RemoveAt(expressionElements.Count - 1);
-                        expressionElements.Add(new Literal(lastNumber * -1));
-                    }
-                    else
-                    {
-                        expressionElements.RemoveAt(expressionElements.Count - 1);
-                        expressionElements.Add(new Literal(lastNumber * -1));
-                    }
-                }
-                else
-                {
-                    if (expressionElements.Count > 2)
-                    {
-                        if (expressionElements[expressionElements.Count - 2] is IOperator)
-                        {
-                            if (expressionElements[expressionElements.Count - 2] is Point)
-                            {
-                                Double postPoint;
-                                if (Double.TryParse(expressionElements[expressionElements.Count - 3], out postPoint) == false)
-                                {
-                                    return false;
-                                }
-
-                                expressionElements.RemoveAt(expressionElements.Count - 1);
-                                expressionElements.RemoveAt(expressionElements.Count - 1);
-                                expressionElements.RemoveAt(expressionElements.Count - 1);
-
-                                while (expressionElements.Count > 0 &&
-                                    expressionElements.Last() is IOperator)
-                                {
-                                    if (expressionElements.Last() is OpenBracket)
-                                    {
-                                        if (postPoint < 0)
-                                        {
-                                            expressionElements.RemoveAt(expressionElements.Count - 1);
-                                        }
-
-                                        break;
-                                    }
-                                    else if (expressionElements.Last() is Reverse)
-                                    {
-                                        expressionElements.RemoveAt(expressionElements.Count - 1);
-                                        postPoint = postPoint * -1;
-                                    }
-                                    else
-                                    {
-                                        break;
-                                    }
-                                }
-
-                                if ((postPoint * -1) < 0)
-                                {
-                                    expressionElements.Add(new OpenBracket());
-                                }
-
-                                expressionElements.Add(new Literal(postPoint * -1));
-                                expressionElements.Add(new Point());
-                                expressionElements.Add(new Literal(lastNumber));
-                                return true;
-                            }
-                            else if (expressionElements[expressionElements.Count - 2] is OpenBracket)
-                            {
-                                expressionElements.RemoveAt(expressionElements.Count - 1);
-                                expressionElements.Add(new OpenBracket());
-                                expressionElements.Add(new Literal(lastNumber * -1));
-                            }
-                            else
-                            {
-                                expressionElements.RemoveAt(expressionElements.Count - 1);
-                                Operators.GetOperatorAsInputElement(expressionElements.Last())?.CheckPossibilityAddingElement(
-                                    ref expressionElements, ref IsEqualUsed, ref HasLastValidationSucceeded, new OpenBracket());
-                                expressionElements.Add(new Literal(lastNumber * -1));
-                            }
-
-                        }
-                        else
-                        {
-                            return false;
-                        }
-
-                    }
-                    else
-                    {
-                        expressionElements.RemoveAt(expressionElements.Count - 1);
-                        expressionElements.Add(new OpenBracket());
-                        expressionElements.Add(new Literal(lastNumber * -1));
-                    }
-                }
-
-                return true;
-            }
-
-            // ( + R => ((-
-            // ((R + R => (
-
-            if (expressionElements.Count > 0 &&
-                expressionElements[expressionElements.Count - 1].CompareTo("R") == 0)
-            {
-                if (expressionElements.Count > 1 &&
-                expressionElements[expressionElements.Count - 2].CompareTo("(") == 0)
-                {
-                    expressionElements.RemoveAt(expressionElements.Count - 1);
-                    expressionElements.RemoveAt(expressionElements.Count - 1);
-                }
-                else
-                {
-                    expressionElements.RemoveAt(expressionElements.Count - 1);
-                }
-            }
-            else
-            {
-                if ((expressionElements.Last().CheckPossibilityAddingElement(ref expressionElements,
-                        ref IsEqualUsed,
-                        ref HasLastValidationSucceeded,
-                        new OpenBracket())
-                    is AddingPossible) == false)
-                {
-                    return false;
-                }
-
-                expressionElements.Add(new Reverse());
-            }
-
-            return true;
-        }
-
-        /// <summary>
-        /// The method manages equal key operation. </summary>
-        /// <param name="separated"> A current expression InputElement list </param>
-        /// <returns> A status of equal key operation </returns>
-        public bool Equal(out IEnumerable<InputElement> separated)
-        {
-            List<InputElement> tempList = new List<InputElement>(expressionElements);
-            separated = tempList;
-
-            if (IsEqualUsed == false)
-            {
-                IsEqualUsed = true;
-                return true;
-            }
-
-            if (HasLastValidationSucceeded == false)
-            {
-                return false;
-            }
-
-            return true;
-        }
-
-        /// <summary>
-        /// The method sets Calculated result as expression.
-        /// Usually this is used after equal key pressed situation. </summary>
-        /// <param name="result"> A calculated result value </param>
-        public void Set(string result)
-        {
-            expressionElements.Clear();
-            expressionElements.Add(new Literal(result));
-        }
-    }
-}
diff --git a/test/Calculator/Calculator/Models/AddingElementResult.cs b/test/Calculator/Calculator/Models/AddingElementResult.cs
deleted file mode 100644 (file)
index 85ad49d..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-
-namespace Calculator.Models
-{
-    /// <summary>
-    /// AddingElementResult base class to notify of element submit. 
-    /// </summary>
-    public class AddingElementResult
-    {
-        /// <summary>
-        /// Message to be displayed in error pop up.
-        /// </summary>
-        public virtual String Message
-        {
-            get { return string.Empty; }
-        }
-    }
-
-    /// <summary>
-    /// Class used to inform that adding element is possible. 
-    /// </summary>
-    public class AddingPossible : AddingElementResult
-    {
-    }
-
-    /// <summary>
-    /// Class used to inform that  adding element is impossible.
-    /// </summary>
-    public class AddingImpossible : AddingElementResult
-    {
-    }
-
-    /// <summary>
-    /// Class used to inform that adding element is impossible due to invalid expression format. 
-    /// </summary>
-    public class InvalidFormatUsed : AddingElementResult
-    {
-        /// <summary>
-        /// Message to be displayed in error pop up.
-        /// </summary>
-        public override String Message
-        {
-            get { return "Invalid format used."; }
-        }
-    }
-
-    /// <summary>
-    /// Class used to inform that adding element is impossible due to a 15 digits exceeding number. 
-    /// </summary>
-    public class CantMoreThan15Digit : AddingElementResult
-    {
-        /// <summary>
-        /// Message to be displayed in error pop up.
-        /// </summary>
-        public override String Message
-        {
-            get { return "Can't enter more than 15 digits."; }
-        }
-    }
-
-    /// <summary>
-    /// Class used to inform that adding element is impossible because number contains more than 10 digits after decimal point. 
-    /// </summary>
-    public class CantMoreThan10Decimal : AddingElementResult
-    {
-        /// <summary>
-        /// Message to be displayed in error pop up.
-        /// </summary>
-        public override String Message
-        {
-            get { return "Can't enter more than 10 decimal places."; }
-        }
-    }
-}
diff --git a/test/Calculator/Calculator/Models/CalculationResult.cs b/test/Calculator/Calculator/Models/CalculationResult.cs
deleted file mode 100644 (file)
index c849505..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-
-namespace Calculator.Models
-{
-    /// <summary>
-    /// CalculateResult base class to notify the calculate result. </summary>
-    public class CalculationResult
-    {
-        /// <summary>
-        /// A message will be displayed in error pop up . </summary>
-        public virtual String Message
-        {
-            get { return string.Empty; }
-        }
-    }
-
-    /// <summary>
-    /// A CalculateResult class describes calculating is completed without error. </summary>
-    public class CalculationSuccessful : CalculationResult
-    {
-    }
-
-    /// <summary>
-    /// A CalculateFailed class describes calculating is failed. </summary>
-    public class CalculationFailed : CalculationResult
-    {
-    }
-
-    /// <summary>
-    /// A CalculateResult class describes calculating is failed
-    /// due to invalid expression format. </summary>
-    public class CantCalculateInvalidFormat : CalculationResult
-    {
-        /// <summary>
-        /// A message will be displayed in error pop up . </summary>
-        public override String Message
-        {
-            get { return "Invalid format used."; }
-        }
-    }
-
-    /// <summary>
-    /// A CalculateResult class describes calculating is failed
-    /// due to big number. </summary>
-    public class CantCalculateTooBigNumber : CalculationResult
-    {
-        /// <summary>
-        /// A message will be displayed in error pop up . </summary>
-        public override String Message
-        {
-            get { return "Couldn't display entire result. Result too long."; }
-        }
-    }
-
-    /// <summary>
-    /// A CalculateResult class describes calculating is failed
-    /// due to dividing by zero. </summary>
-    public class CantDivideByZero : CalculationResult
-    {
-        /// <summary>
-        /// A message will be displayed in error pop up . </summary>
-        public override String Message
-        {
-            get { return "Can't divide by zero."; }
-        }
-    }
-}
diff --git a/test/Calculator/Calculator/Models/IBinaryOperator.cs b/test/Calculator/Calculator/Models/IBinaryOperator.cs
deleted file mode 100644 (file)
index 4099649..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-namespace Calculator.Models
-{
-    /// <summary>
-    /// Interface for the BinaryOperator.
-    /// </summary>
-    public interface IBinaryOperator : IOperator
-    {
-    }
-}
diff --git a/test/Calculator/Calculator/Models/INullary.cs b/test/Calculator/Calculator/Models/INullary.cs
deleted file mode 100644 (file)
index 05382c9..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-namespace Calculator.Models
-{
-    /// <summary>
-    /// An interface for the Nullary.
-    /// </summary>
-    public interface INullary : IOperator
-    {
-    }
-}
diff --git a/test/Calculator/Calculator/Models/IOperator.cs b/test/Calculator/Calculator/Models/IOperator.cs
deleted file mode 100644 (file)
index efa75a3..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-namespace Calculator.Models
-{
-    /// <summary>
-    /// A operand placing type of the operator
-    /// LEFT : Operand is placed on Left side only
-    /// RIGHT : Operand is placed on Right side only
-    /// BOTH : Operand is placed on Both side
-    /// NONE : Operand is placed on Both side
-    /// </summary>
-    public enum OperandType
-    {
-        LEFT,   // Operand is placed on Left side only
-        RIGHT,  // Operand is placed on Right side only
-        BOTH,   // Operand is placed on Both side
-        NONE,   // Operand is placed on Both side
-    };
-
-    /// <summary>
-    /// An interface for the Operator</summary>
-    public interface IOperator
-    {
-        /// <summary>
-        /// Operator priority 
-        /// </summary>
-        int Priority { get; }
-
-        /// <summary>
-        /// An operator's operand type 
-        /// </summary>
-        /// <seealso cref="OperandType">
-        /// Operand type. 
-        /// </seealso>
-        OperandType OperandType { get; }
-
-        /// <summary>
-        /// The method provides result of operator 
-        /// </summary>
-        /// <param name="left"> Left side element. </param>
-        /// <param name="right"> Light side element. </param>
-        /// <param name="result"> Operator's calculation result. </param>
-        void GetResult(double left, double right, out double result);
-    }
-}
diff --git a/test/Calculator/Calculator/Models/IUnaryOperator.cs b/test/Calculator/Calculator/Models/IUnaryOperator.cs
deleted file mode 100644 (file)
index c491701..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-namespace Calculator.Models
-{
-    /// <summary>
-    /// An interface for the UnaryOperator. </summary>
-    public interface IUnaryOperator : IOperator
-    {
-    }
-}
diff --git a/test/Calculator/Calculator/Models/InputElement.cs b/test/Calculator/Calculator/Models/InputElement.cs
deleted file mode 100644 (file)
index bda25f9..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-using System.Collections.Generic;
-
-namespace Calculator.Models
-{
-    /// <summary>
-    /// A base class for the calculating elements(Number, Operators).
-    /// The InputElemet can be a Literal and any other operators that inherit the InputElement and IOperator. </summary>
-    public abstract class InputElement : IComparable<string>
-    {
-        /// <summary>
-        /// A property provides element string.
-        /// This property is used for validation and calculation </summary>
-        public abstract string GetElement { get; }
-
-        /// <summary>
-        /// A property provides displaying element string.
-        /// This property is used for building formatted string. </summary>
-        public abstract string GetDisplayElement { get; }
-
-        /// <summary>
-        /// The method provides whether it is possible to add followingElement after this InputElement(is placed at the end of expressionElements).
-        /// This method can modify current expression by adding new element or removing last element. </summary>
-        /// <param name="expressionElements"> Current expression, an InputElement list </param>
-        /// <param name="isEqualUsed"> A flag value whether equal key is pressed or not </param>
-        /// <param name="isLastValidationSucceed"> A flag value whether last calculation is succeed or not </param>
-        /// <param name="followingElement"> An input element will be added after this element. </param>
-        /// <returns> A status of adding element to exist expression </returns>
-        /// <seealso cref="AlternativeWork(ref List{InputElement}, ref bool, ref bool)"/>
-        public abstract AddingElementResult CheckPossibilityAddingElement(ref List<InputElement> expressionElements,
-            ref bool isEqualUsed,
-            ref bool isLastValidationSucceed,
-            InputElement followingElement);
-
-        /// <summary>
-        /// The method doing some exceptional or an independent work instead of adding this InputElement.
-        /// If this methods return true, calculator do not call the CheckPossibilityAddingElement method.</summary>
-        /// <param name="expressionElements"> Current expression, an InputElement list </param>
-        /// <param name="IsEqualUsed"> A flag value whether equal key is pressed or not </param>
-        /// <param name="IsLastValidationSucceed"> A flag value whether last calculation is succeed or not </param>
-        /// <returns> A status of operator's alternative work  </returns>
-        /// <seealso cref="AddingElementResult"/>
-        public virtual bool AlternativeWork(ref List<InputElement> expressionElements,
-            ref bool IsEqualUsed,
-            ref bool IsLastValidationSucceed)
-        {
-            return false;
-        }
-
-        /// <summary>
-        /// The method doing additional work after added as followingElement.</summary>
-        /// <param name="expressionElements"> Current expression, an InputElement list </param>
-        public virtual void PostAddingWork(ref List<InputElement> expressionElements)
-        {
-        }
-
-        public static implicit operator string(InputElement ie)
-        {
-            return ie.GetElement;
-        }
-
-        public override string ToString()
-        {
-            return GetElement;
-        }
-
-        public int CompareTo(string other)
-        {
-            return other.CompareTo(GetElement);
-        }
-    }
-}
diff --git a/test/Calculator/Calculator/Models/Literal.cs b/test/Calculator/Calculator/Models/Literal.cs
deleted file mode 100644 (file)
index 8187786..0000000
+++ /dev/null
@@ -1,157 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-using System.Collections.Generic;
-using System.Linq;
-
-namespace Calculator.Models
-{
-    /// <summary>
-    /// This class represents numbers. 
-    /// </summary>
-    public class Literal : InputElement
-    {
-        /// <summary>
-        /// Number value 
-        /// </summary>
-        private string literal;
-
-        /// <summary>
-        /// Literal constructor for a text formatted number. 
-        /// </summary>
-        /// <param name="value"> A number value string </param>
-        public Literal(string value)
-        {
-            literal = value ?? string.Empty;
-        }
-
-        /// <summary>
-        /// Literal constructor for a number. 
-        /// </summary>
-        /// <param name="value"> A number value </param>
-        public Literal(double value)
-        {
-            literal = value.ToString();
-        }
-
-        /// <summary>
-        /// A property provides element string.
-        /// This element string is using for validation and calculation.
-        /// </summary>
-        public override string GetElement
-        {
-            get
-            {
-                return literal;
-            }
-        }
-
-        /// <summary>
-        /// A property provides displaying element string.
-        /// This displaying element is used for making formatted string.
-        /// </summary>
-        public override string GetDisplayElement
-        {
-            get
-            {
-                return literal;
-            }
-        }
-
-        /// <summary>
-        /// The method provides possibility of adding followingElement after this Literal.
-        /// This method can modify current expression by adding additional element or removing last element. </summary>
-        /// <param name="expressionElements"> Current expression, an InputElement list </param>
-        /// <param name="IsEqualUsed"> A flag value whether equal key is pressed or not </param>
-        /// <param name="IsLastValidationSucceed"> A flag value whether last calculation is succeed or not </param>
-        /// <param name="right"> An input element will be added after this element. </param>
-        /// <returns> A status of adding element to current expression. </returns>
-        public override AddingElementResult CheckPossibilityAddingElement(ref List<InputElement> expressionElements,
-            ref bool IsEqualUsed,
-            ref bool IsLastValidationSucceed,
-            InputElement right)
-        {
-            if (right is Literal)
-            {
-                Literal lastLiteral = expressionElements.Last() as Literal;
-
-                if (IsEqualUsed &&
-                    IsLastValidationSucceed)
-                {
-                    expressionElements.Clear();
-                    expressionElements.Add(right);
-                }
-                else
-                {
-                    // Exceptional case, prohibit 15 digits
-                    if (lastLiteral.GetElement.Length > 14)
-                    {
-                        return new CantMoreThan15Digit();
-                    }
-
-                    // Exceptional case, prohibit 10 decimal places,
-                    // OK - 0.0000000000 (10)
-                    // NO - 0.00000000000 (11)
-                    if (expressionElements.Count > 2 &&
-                        lastLiteral.GetElement.Length == 10 &&
-                        expressionElements[expressionElements.Count - 2] is Point)
-                    {
-                        return new CantMoreThan10Decimal();
-                    }
-
-                    if (lastLiteral.Append(right))
-                    {
-                        return new AddingPossible();
-                    }
-
-                    return new InvalidFormatUsed();
-                }
-            }
-            else
-            {
-                IOperator rightOper = right as IOperator;
-
-                if (right is INullary ||
-                OperandType.RIGHT == rightOper.OperandType)
-                {
-                    expressionElements.Add(new Multiplication());
-                }
-
-                expressionElements.Add(right);
-
-                right.PostAddingWork(ref expressionElements);
-            }
-
-            return new AddingPossible();
-        }
-
-        /// <summary>
-        /// The methods appends a given literal.</summary>
-        /// <param name="value"> A InputElement(Literal) </param>
-        /// <returns> Result status of appending </returns>
-        public bool Append(InputElement value)
-        {
-            double number;
-            if (Double.TryParse(value.GetElement, out number) == false)
-            {
-                return false;
-            }
-
-            literal += value.GetElement;
-            return true;
-        }
-    }
-}
diff --git a/test/Calculator/Calculator/Models/Operators.cs b/test/Calculator/Calculator/Models/Operators.cs
deleted file mode 100644 (file)
index 7b4431f..0000000
+++ /dev/null
@@ -1,958 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using Tizen;
-
-namespace Calculator.Models
-{
-    /// <summary>
-    /// This class includes all possible operators for the InputParser and the CalculatorImpl.
-    /// Also this class includes helper methods for the input elements </summary>
-    public static class Operators
-    {
-        /// <summary>
-        /// Dictionary of the all possible operators 
-        /// </summary>
-        private static IReadOnlyDictionary<String, IOperator> operators = new Dictionary<string, IOperator>()
-        {
-            { Plus.Operator, new Plus() },
-            { Minus.Operator, new Minus() },
-            { Multiplication.Operator, new Multiplication() },
-            { Division.Operator, new Division() },
-            { OpenBracket.Operator, new OpenBracket() },
-            { CloseBracket.Operator, new CloseBracket() },
-            { Point.Operator, new Point() },
-            { Reverse.Operator, new Reverse() },
-        };
-
-        /// <summary>
-        /// The property returns operator dictionary.
-        /// </summary>
-        public static IReadOnlyDictionary<String, IOperator> OperatorMap
-        {
-            get => operators;
-        }
-
-        /// <summary>
-        /// The method provides matched Operator's instance </summary>
-        /// <param name="oper"> A operator's string. </param>
-        /// <returns> Matched operator's instance.
-        /// But NULL will be returned if there is no matched operator. </returns>
-        public static IOperator GetOperator(string oper)
-        {
-            if (OperatorMap.ContainsKey(oper))
-            {
-                return OperatorMap[oper];
-            }
-
-            return null;
-        }
-
-        /// <summary>
-        /// The method provides matched Operator's instance as InputElement type </summary>
-        /// <param name="oper"> A operator's string. </param>
-        /// <returns> Matched operator's InputElement type instance.
-        /// But NULL will be returned if there is no matched operator. </returns>
-        public static InputElement GetOperatorAsInputElement(string oper)
-        {
-            if (OperatorMap.ContainsKey(oper))
-            {
-                return OperatorMap[oper] as InputElement;
-            }
-
-            return null;
-        }
-
-        /// <summary>
-        /// The method checks addingElement can be following of left argument receiving operator </summary>
-        /// <param name="addingElement"> A adding InputElementthat can be a Literal or a Operator </param>
-        /// /// <param name="isMultiplyOperatorRequired"> A flag indicates '*' is required to following addingElement if following is possible </param>
-        /// <returns> A possibility of following </returns>
-        internal static bool IsPossibleCombineWithOperatorLeft(InputElement addingElement, out bool isMultiplyOperatorRequired)
-        {
-            IOperator addingElementOper = null;
-
-            isMultiplyOperatorRequired = false;
-            if ((addingElementOper = addingElement as IOperator) == null ||
-                addingElement is INullary)
-            {
-                isMultiplyOperatorRequired = true;
-                return true;
-            }
-
-            if (OperandType.LEFT == addingElementOper.OperandType || OperandType.BOTH == addingElementOper.OperandType)
-            {
-                return false;
-            }
-
-            else if (OperandType.RIGHT == addingElementOper.OperandType)
-            {
-                isMultiplyOperatorRequired = true;
-                return true;
-            }
-
-            return false;
-        }
-
-        /// <summary>
-        /// The method checks addingElement can be following of both side argument receiving operator </summary>
-        /// <param name="addingElement"> A adding InputElementthat can be a Literal or a Operator </param>
-        /// <param name="isMultiplyOperatorRequired"> A flag indicates '*' is required to following addingElement if following is possible </param>
-        /// <returns> A possibility of following </returns>
-        internal static bool IsPossibleCombineWithOperatorRightBoth(InputElement addingElement, out bool isMultiplyOperatorRequired)
-        {
-            IOperator addingElementOper = null;
-
-            isMultiplyOperatorRequired = false;
-
-            if ((addingElementOper = addingElement as IOperator) == null ||
-                addingElement is INullary)
-            {
-                return true;
-            }
-
-            if (addingElementOper is IUnaryOperator &&
-                OperandType.RIGHT == addingElementOper.OperandType)
-            {
-                return true;
-            }
-
-            return false;
-        }
-
-        /// <summary>
-        /// The method checks addingElement can be following of left argument receiving operand type operator </summary>
-        /// <param name="addingElement"> A adding InputElementthat can be a Literal or a Operator </param>
-        /// <param name="isMultiplyOperatorRequired"> A flag indicates '*' is required to following addingElement if following is possible </param>
-        /// <returns> A possibility of following </returns>
-        internal static bool IsPossibleCombineWithOperandOperatorLeft(InputElement addingElement, out bool isMultiplyOperatorRequired)
-        {
-            IOperator addingElementOper = null;
-
-            isMultiplyOperatorRequired = false;
-
-            if ((addingElementOper = addingElement as IOperator) == null ||
-                addingElement is INullary)
-            {
-                isMultiplyOperatorRequired = true;
-                return true;
-            }
-
-            if (OperandType.LEFT == addingElementOper.OperandType || OperandType.BOTH == addingElementOper.OperandType)
-            {
-                return true;   // ex ))
-            }
-
-            else if (OperandType.RIGHT == addingElementOper.OperandType)
-            {
-                isMultiplyOperatorRequired = true;
-                return true;
-            }
-
-            return false;
-        }
-
-        /// <summary>
-        /// The method checks addingElement can be following of both side argument receiving operand type operator </summary>
-        /// <param name="addingElement"> A adding InputElementthat can be a Literal or a Operator </param>
-        /// <param name="isMultiplyOperatorRequired"> A flag indicates '*' is required to following addingElement if following is possible </param>
-        /// <returns> A possibility of following </returns>
-        internal static bool IsPossibleCombineWithOperandOperatorRightBoth(InputElement addingElement, out bool isMultiplyOperatorRequired)
-        {
-            IOperator addingElementOper = null;
-
-            isMultiplyOperatorRequired = false;
-
-            if ((addingElementOper = addingElement as IOperator) == null ||
-                addingElement is INullary)
-            {
-                return true;
-            }
-
-            if (addingElementOper is IUnaryOperator &&
-                OperandType.RIGHT == addingElementOper.OperandType)
-            {
-                return true;
-            }
-
-            return false;
-        }
-
-        /// <summary>
-        /// The method checks addingElement can be following of no argument receiving operand type operator </summary>
-        /// <param name="addingElement"> A adding InputElementthat can be a Literal or a Operator </param>
-        /// <param name="isMultiplyOperatorRequired"> A flag indicates '*' is required to following addingElement if following is possible </param>
-        /// <returns> A possibility of following </returns>
-        internal static bool IsPossibleCombineOperandOperatorWithNone(InputElement addingElement, out bool isMultiplyOperatorRequired)
-        {
-            IOperator addingElementOper = null;
-
-            isMultiplyOperatorRequired = false;
-            if ((addingElementOper = addingElement as IOperator) == null ||
-                addingElement is INullary ||
-                OperandType.RIGHT == addingElementOper.OperandType)
-            {
-                isMultiplyOperatorRequired = true;
-                return true;
-            }
-
-            return true;
-        }
-
-        /// <summary>
-        /// The method checks whether addingElement can be following to current expression or
-        /// add '*' if the addingElement is required</summary>
-        /// <param name="expressionElements"> Current expression, an InputElement list </param>
-        /// <param name="isEqualUsed"> A flag value whether equal key is pressed or not </param>
-        /// <param name="isLastValidationSucceed"> A flag value whether last calculation is succeed or not </param>
-        /// <param name="addingElement"> A InputElement will be added after this element. </param>
-        /// <returns> A status of adding element to exist expression </returns>
-        private static bool PreInsertingWork(ref List<InputElement> expressionElements,
-                                             ref bool isEqualUsed, 
-                                             ref bool isLastValidationSucceed,
-                                             InputElement addingElement)
-        {
-            if (expressionElements.Count == 0)
-            {
-                throw new Exception("This function should not be called if there is no inputed element");
-            }
-
-            if (expressionElements.Last() is Literal &&
-                addingElement is IOperator)
-            {
-                IOperator inputOper = Operators.GetOperator(addingElement);
-                if (inputOper is INullary ||
-                    OperandType.RIGHT == inputOper?.OperandType)
-                {
-                    expressionElements.Add(new Multiplication());
-                }
-
-                return true;
-            }
-
-            IOperator lastOper = expressionElements.Last() as IOperator;
-            bool isMultiplyRequird = false;
-            bool res = false;
-
-            if (lastOper is Point &&
-                addingElement is IOperator)
-            {
-                IOperator inputOper = Operators.GetOperator(addingElement);
-                expressionElements.RemoveAt(expressionElements.Count - 1);
-                if (OperandType.RIGHT == inputOper.OperandType ||
-                    OperandType.NONE == inputOper.OperandType)
-                {
-                    expressionElements.Add(new Multiplication());
-                }
-
-                return true;
-            }
-
-            if (OperandType.RIGHT == lastOper.OperandType ||
-            OperandType.BOTH == lastOper.OperandType)
-            {
-                if (lastOper is IUnaryOperator)
-                {
-                    res = Operators.IsPossibleCombineWithOperandOperatorRightBoth(addingElement, out isMultiplyRequird);
-                }
-
-                else
-                {
-                    res = Operators.IsPossibleCombineWithOperatorRightBoth(addingElement, out isMultiplyRequird);
-                }
-            }
-            else if (OperandType.LEFT == lastOper.OperandType)
-            {
-                if (lastOper is IUnaryOperator)
-                {
-                    res = Operators.IsPossibleCombineWithOperandOperatorLeft(addingElement, out isMultiplyRequird);
-                }
-
-                else
-                {
-                    res = Operators.IsPossibleCombineWithOperatorLeft(addingElement, out isMultiplyRequird);
-                }
-            }
-            else if (OperandType.NONE == lastOper.OperandType)
-            {
-                res = Operators.IsPossibleCombineOperandOperatorWithNone(addingElement, out isMultiplyRequird);
-            }
-
-            if (isMultiplyRequird)
-            {
-                expressionElements.Add(new Multiplication());
-            }
-
-            return res;
-        }
-
-        /// <summary>
-        /// The methods insert addingElement to current expression(expressionElements)</summary>
-        /// <param name="expressionElements"> Current expression, an InputElement list </param>
-        /// <param name="isEqualUsed"> A flag value whether equal key is pressed or not </param>
-        /// <param name="isLastValidationSucceed"> A flag value whether last calculation is succeed or not </param>
-        /// <param name="addingElement"> A InputElement will be added after this element. </param>
-        /// <returns> A status of adding element to exist expression </returns>
-        /// <seealso cref="PreInsertingWork(ref List{InputElement}, ref bool, ref bool, InputElement)"/>
-        internal static bool InsertingWork(ref List<InputElement> expressionElements, 
-                                           ref bool isEqualUsed,
-                                           ref bool isLastValidationSucceed,
-                                           InputElement addingElement)
-        {
-            IOperator inputOper = Operators.GetOperator(addingElement);
-
-
-            if (PreInsertingWork(ref expressionElements, ref isEqualUsed, ref isLastValidationSucceed, addingElement) == false)
-            {
-                if (addingElement is IOperator &&
-                    inputOper == null)
-                {
-                    return isLastValidationSucceed = false;
-                }
-
-                IOperator lastOper = expressionElements.Last() as IOperator;
-                if (lastOper == null)
-                {
-                    return isLastValidationSucceed = false;
-                }
-
-                if (OperandType.BOTH == lastOper.OperandType &&
-                           OperandType.BOTH == inputOper?.OperandType)
-                {
-                    expressionElements.RemoveAt(expressionElements.Count - 1);
-                    expressionElements.Add(addingElement);
-                    return true;
-                }
-
-                return isLastValidationSucceed = false;
-            }
-
-            expressionElements.Add(addingElement);
-
-            addingElement.PostAddingWork(ref expressionElements);
-            return true;
-        }
-    }
-
-    /// <summary>
-    /// A plus operator. </summary>
-    public class Plus : InputElement, IBinaryOperator
-    {
-        public static string Operator = "+";
-        /// <summary>
-        /// A property provides element string.
-        /// This element string is using for validation and calculation. </summary>
-        public override string GetElement
-        {
-            get => Operator;
-        }
-
-        /// <summary>
-        /// A property provides displaying element string.
-        /// This displaying element is using for making formatted string. </summary>
-        public override string GetDisplayElement
-        {
-            get => "+";
-        }
-
-        /// <summary>
-        /// A operator priority </summary>
-        public int Priority
-        {
-            get => 2;
-        }
-
-        /// <summary>
-        /// A operator's operand type </summary>
-        /// <seealso cref="OperandType">
-        /// A operand type. </seealso>
-        public OperandType OperandType
-        {
-            get => OperandType.BOTH;
-        }
-
-        /// <summary>
-        /// The method provides possibility of that is it possible adding addingElement after this InputElement.
-        /// This method can modify current expression by adding additional element or removing last element. </summary>
-        /// <param name="expressionElements"> Current expression, an InputElement list </param>
-        /// <param name="isEqualUsed"> A flag value whether equal key is pressed or not </param>
-        /// <param name="isLastValidationSucceed"> A flag value whether last calculation is succeed or not </param>
-        /// <param name="addingElement"> A InputElement will be added after this element. </param>
-        /// <returns> A status of adding element to exist expression </returns>
-        public override AddingElementResult CheckPossibilityAddingElement(ref List<InputElement> expressionElements,
-            ref bool isEqualUsed,
-            ref bool isLastValidationSucceed,
-            InputElement addingElement)
-        {
-            if (Operators.InsertingWork(ref expressionElements, ref isEqualUsed, ref isLastValidationSucceed, addingElement))
-            {
-                return new AddingPossible();
-            }
-
-            return new InvalidFormatUsed();
-        }
-
-        /// <summary>
-        /// The method provides result of operator </summary>
-        /// <param name="left"> A left side element. </param>
-        /// <param name="right"> A rightside element. </param>
-        /// <param name="result"> Calculation result. </param>
-        public void GetResult(double left, double right, out double result)
-        {
-            result = left + right;
-        }
-    }
-
-    /// <summary>
-    /// A minus operator </summary>
-    public class Minus : InputElement, IBinaryOperator
-    {
-        public static string Operator = "-";
-        /// <summary>
-        /// A property provides element string.
-        /// This element string is using for validation and calculation. </summary>
-        public override string GetElement
-        {
-            get => Operator;
-        }
-
-        /// <summary>
-        /// A property provides displaying element string.
-        /// This displaying element is using for making formatted string. </summary>
-        public override string GetDisplayElement
-        {
-            get => "-";
-        }
-
-        /// <summary>
-        /// A operator priority </summary>
-        public int Priority
-        {
-            get => 2;
-        }
-
-        /// <summary>
-        /// A operator's operand type </summary>
-        /// <seealso cref="OperandType">
-        /// A operand type. </seealso>
-        public OperandType OperandType
-        {
-            get => OperandType.BOTH;
-        }
-
-        /// <summary>
-        /// The method provides possibility of that is it possible adding addingElement after this InputElement.
-        /// This method can modify current expression by adding additional element or removing last element. </summary>
-        /// <param name="expressionElements"> Current expression, an InputElement list </param>
-        /// <param name="isEqualUsed"> A flag value whether equal key is pressed or not </param>
-        /// <param name="isLastValidationSucceed"> A flag value whether last calculation is succeed or not </param>
-        /// <param name="addingElement"> A InputElement will be added after this element. </param>
-        /// <returns> A status of adding element to exist expression </returns>
-        public override AddingElementResult CheckPossibilityAddingElement(ref List<InputElement> expressionElements,
-            ref bool isEqualUsed,
-            ref bool isLastValidationSucceed,
-            InputElement addingElement)
-        {
-            if (Operators.InsertingWork(ref expressionElements, ref isEqualUsed, ref isLastValidationSucceed, addingElement))
-            {
-                return new AddingPossible();
-            }
-
-            return new InvalidFormatUsed();
-        }
-
-        /// <summary>
-        /// The method provides result of operator </summary>
-        /// <param name="left"> A left side element. </param>
-        /// <param name="right"> A rightside element. </param>
-        /// <param name="result"> Calculation result. </param>
-        public void GetResult(double left, double addingElement, out double result)
-        {
-            result = left - addingElement;
-        }
-    }
-
-    /// <summary>
-    /// A multiplication operator </summary>
-    public class Multiplication : InputElement, IBinaryOperator
-    {
-        public static string Operator = "*";
-        /// <summary>
-        /// A property provides element string.
-        /// This element string is using for validation and calculation. </summary>
-        public override string GetElement
-        {
-            get => Operator;
-        }
-
-        /// <summary>
-        /// A property provides displaying element string.
-        /// This displaying element is using for making formatted string. </summary>
-        public override string GetDisplayElement
-        {
-            get =>"×";
-        }
-
-        /// <summary>
-        /// A operator priority </summary>
-        public int Priority
-        {
-            get => 3;
-        }
-
-        /// <summary>
-        /// A operator's operand type </summary>
-        /// <seealso cref="OperandType">
-        /// A operand type. </seealso>
-        public OperandType OperandType
-        {
-            get => OperandType.BOTH;
-        }
-
-        /// <summary>
-        /// The method provides possibility of that is it possible adding addingElement after this InputElement.
-        /// This method can modify current expression by adding additional element or removing last element. </summary>
-        /// <param name="expressionElements"> Current expression, an InputElement list </param>
-        /// <param name="isEqualUsed"> A flag value whether equal key is pressed or not </param>
-        /// <param name="isLastValidationSucceed"> A flag value whether last calculation is succeed or not </param>
-        /// <param name="addingElement"> A InputElement will be added after this element. </param>
-        /// <returns> A status of adding element to exist expression </returns>
-        public override AddingElementResult CheckPossibilityAddingElement(ref List<InputElement> expressionElements,
-            ref bool isEqualUsed,
-            ref bool isLastValidationSucceed,
-            InputElement addingElement)
-        {
-            if (Operators.InsertingWork(ref expressionElements, ref isEqualUsed, ref isLastValidationSucceed, addingElement))
-            {
-                return new AddingPossible();
-            }
-
-            return new InvalidFormatUsed();
-        }
-
-        /// <summary>
-        /// The method provides result of operator </summary>
-        /// <param name="left"> A left side element. </param>
-        /// <param name="right"> A rightside element. </param>
-        /// <param name="result"> Calculation result. </param>
-        public void GetResult(double left, double right, out double result)
-        {
-            result = left * right;
-        }
-    }
-
-    /// <summary>
-    /// A division operator </summary>
-    public class Division : InputElement, IBinaryOperator
-    {
-        public static string Operator = "/";
-        /// <summary>
-        /// A property provides element string.
-        /// This element string is using for validation and calculation. </summary>
-        public override string GetElement
-        {
-            get => Operator;
-        }
-
-        /// <summary>
-        /// A property provides displaying element string.
-        /// This displaying element is using for making formatted string. </summary>
-        public override string GetDisplayElement
-        {
-            get => "÷";
-        }
-
-        /// <summary>
-        /// A operator priority </summary>
-        public int Priority
-        {
-            get => 3;
-        }
-
-        /// <summary>
-        /// A operator's operand type </summary>
-        /// <seealso cref="OperandType">
-        /// A operand type. </seealso>
-        public OperandType OperandType
-        {
-            get => OperandType.BOTH;
-        }
-
-        /// <summary>
-        /// The method provides possibility of that is it possible adding addingElement after this InputElement.
-        /// This method can modify current expression by adding additional element or removing last element. </summary>
-        /// <param name="expressionElements"> Current expression, an InputElement list </param>
-        /// <param name="isEqualUsed"> A flag value whether equal key is pressed or not </param>
-        /// <param name="isLastValidationSucceed"> A flag value whether last calculation is succeed or not </param>
-        /// <param name="addingElement"> A InputElement will be added after this element. </param>
-        /// <returns> A status of adding element to exist expression </returns>
-        public override AddingElementResult CheckPossibilityAddingElement(ref List<InputElement> expressionElements,
-            ref bool isEqualUsed,
-            ref bool isLastValidationSucceed,
-            InputElement addingElement)
-        {
-            if (Operators.InsertingWork(ref expressionElements, ref isEqualUsed, ref isLastValidationSucceed, addingElement))
-            {
-                return new AddingPossible();
-            }
-
-            return new InvalidFormatUsed();
-        }
-
-        /// <summary>
-        /// The method provides result of operator </summary>
-        /// <param name="left"> A left side element. </param>
-        /// <param name="right"> A rightside element. </param>
-        /// <param name="result"> Calculation result. </param>
-        public void GetResult(double left, double right, out double result)
-        {
-            result = 0;
-            if (right == 0)
-            {
-                throw new DivideByZeroException();
-            }
-
-            result = left / right;
-        }
-    }
-
-    /// <summary>
-    /// A opening parenthesis operator </summary>
-    public class OpenBracket : InputElement, IUnaryOperator
-    {
-        public static string Operator = "(";
-        /// <summary>
-        /// A property provides element string.
-        /// This element string is using for validation and calculation. </summary>
-        public override string GetElement
-        {
-            get => Operator;
-        }
-
-        /// <summary>
-        /// A property provides displaying element string.
-        /// This displaying element is using for making formatted string. </summary>
-        public override string GetDisplayElement
-        {
-            get => "(";
-        }
-
-        /// <summary>
-        /// A operator priority </summary>
-        public int Priority
-        {
-            get => 1;
-        }
-
-        /// <summary>
-        /// A operator's operand type </summary>
-        /// <seealso cref="OperandType">
-        /// A operand type. </seealso>
-        public OperandType OperandType
-        {
-            get => OperandType.RIGHT;
-        }
-
-        /// <summary>
-        /// The method provides possibility of that is it possible adding addingElement after this InputElement.
-        /// This method can modify current expression by adding additional element or removing last element. </summary>
-        /// <param name="expressionElements"> Current expression, an InputElement list </param>
-        /// <param name="isEqualUsed"> A flag value whether equal key is pressed or not </param>
-        /// <param name="isLastValidationSucceed"> A flag value whether last calculation is succeed or not </param>
-        /// <param name="addingElement"> A InputElement will be added after this element. </param>
-        /// <returns> A status of adding element to exist expression </returns>
-        public override AddingElementResult CheckPossibilityAddingElement(ref List<InputElement> expressionElements,
-            ref bool isEqualUsed,
-            ref bool isLastValidationSucceed,
-            InputElement addingElement)
-        {
-            if (Operators.InsertingWork(ref expressionElements, ref isEqualUsed, ref isLastValidationSucceed, addingElement))
-            {
-                return new AddingPossible();
-            }
-
-            return new InvalidFormatUsed();
-        }
-
-        public override bool AlternativeWork(ref List<InputElement> expressionElements,
-            ref bool isEqualUsed,
-            ref bool isLastValidationSucceed)
-        {
-            if (GetNumberOfOpenedBracket(expressionElements) > 0)
-            {
-                return Operators.InsertingWork(ref expressionElements, ref isEqualUsed, ref isLastValidationSucceed, new CloseBracket());
-            }
-
-            return Operators.InsertingWork(ref expressionElements, ref isEqualUsed, ref isLastValidationSucceed, new OpenBracket());
-        }
-
-        /// <summary>
-        /// The method provides result of operator </summary>
-        /// <param name="left"> A left side element. </param>
-        /// <param name="right"> A right side element. </param>
-        /// <param name="result"> Calculation result. </param>
-        public void GetResult(double left, double right, out double result)
-        {
-            throw new Exception();
-        }
-
-        /// <summary>
-        /// Return a number of unclosed parenthesis </summary>
-        /// <param name="expressionElements"> An expression. </param>
-        /// <returns> A number of unclosed parenthesizes </returns>
-        private int GetNumberOfOpenedBracket(List<InputElement> expressionElements)
-        {
-            int res = 0;
-            foreach (var item in expressionElements)
-            {
-                if (item.CompareTo("(") == 0)
-                {
-                    res += 1;
-                }
-
-                else if (item.CompareTo(")") == 0)
-                {
-                    res -= 1;
-                }
-            }
-
-            return res;
-        }
-    }
-
-
-    /// <summary>
-    /// A closing parenthesis operator </summary>
-    public class CloseBracket : InputElement, IUnaryOperator
-    {
-        public static string Operator = ")";
-        /// <summary>
-        /// A property provides element string.
-        /// This element string is using for validation and calculation. </summary>
-        public override string GetElement
-        {
-            get => Operator;
-        }
-
-        /// <summary>
-        /// A property provides displaying element string.
-        /// This displaying element is using for making formatted string. </summary>
-        public override string GetDisplayElement
-        {
-            get => ")";
-        }
-
-        /// <summary>
-        /// A operator priority </summary>
-        public int Priority
-        {
-            get => 1;
-        }
-
-        /// <summary>
-        /// A operator's operand type </summary>
-        /// <seealso cref="OperandType">
-        /// A operand type. </seealso>
-        public OperandType OperandType
-        {
-            get => OperandType.LEFT;
-        }
-
-        /// <summary>
-        /// The method provides possibility of that is it possible adding addingElement after this InputElement.
-        /// This method can modify current expression by adding additional element or removing last element. </summary>
-        /// <param name="expressionElements"> Current expression, an InputElement list </param>
-        /// <param name="isEqualUsed"> A flag value whether equal key is pressed or not </param>
-        /// <param name="isLastValidationSucceed"> A flag value whether last calculation is succeed or not </param>
-        /// <param name="addingElement"> A InputElement will be added after this element. </param>
-        /// <returns> A status of adding element to exist expression </returns>
-        public override AddingElementResult CheckPossibilityAddingElement(ref List<InputElement> expressionElements,
-            ref bool isEqualUsed,
-            ref bool isLastValidationSucceed,
-            InputElement addingElement)
-        {
-            if (Operators.InsertingWork(ref expressionElements, ref isEqualUsed, ref isLastValidationSucceed, addingElement))
-            {
-                return new AddingPossible();
-            }
-
-            return new InvalidFormatUsed();
-        }
-
-        /// <summary>
-        /// The method provides result of operator </summary>
-        /// <param name="left"> A left side element. </param>
-        /// <param name="right"> A right side element. </param>
-        /// <param name="result"> Calculation result. </param>
-        public void GetResult(double left, double right, out double result)
-        {
-            throw new Exception();
-        }
-    }
-
-    /// <summary>
-    /// A point adding operator </summary>
-    public class Point : InputElement, IBinaryOperator
-    {
-        public static string Operator = ".";
-        /// <summary>
-        /// A property provides element string.
-        /// This element string is using for validation and calculation. </summary>
-        public override string GetElement
-        {
-            get => Operator;
-        }
-
-        /// <summary>
-        /// A property provides displaying element string.
-        /// This displaying element is using for making formatted string. </summary>
-        public override string GetDisplayElement
-        {
-            get => ".";
-        }
-
-        /// <summary>
-        /// A operator priority </summary>
-        public int Priority
-        {
-            get => 4;
-        }
-
-        /// <summary>
-        /// A operator's operand type </summary>
-        /// <seealso cref="OperandType">
-        /// A operand type. </seealso>
-        public OperandType OperandType
-        {
-            get => OperandType.BOTH;
-        }
-
-        /// <summary>
-        /// The method provides possibility of that is it possible adding addingElement after this InputElement.
-        /// This method can modify current expression by adding additional element or removing last element. </summary>
-        /// <param name="expressionElements"> Current expression, an InputElement list </param>
-        /// <param name="isEqualUsed"> A flag value whether equal key is pressed or not </param>
-        /// <param name="isLastValidationSucceed"> A flag value whether last calculation is succeed or not </param>
-        /// <param name="addingElement"> A InputElement will be added after this element. </param>
-        /// <returns> A status of adding element to exist expression </returns>
-        public override AddingElementResult CheckPossibilityAddingElement(ref List<InputElement> expressionElements,
-            ref bool isEqualUsed,
-            ref bool isLastValidationSucceed,
-            InputElement addingElement)
-        {
-            if (Operators.InsertingWork(ref expressionElements, ref isEqualUsed, ref isLastValidationSucceed, addingElement))
-            {
-                return new AddingPossible();
-            }
-
-            return new InvalidFormatUsed();
-        }
-
-        /// <summary>
-        /// The method provides result of operator </summary>
-        /// <param name="left"> A left side element. </param>
-        /// <param name="right"> A rightside element. </param>
-        /// <param name="result"> Calculation result. </param>
-        public void GetResult(double left, double right, out double result)
-        {
-            double decimalPlace = right;
-            while (decimalPlace >= 1)
-            {
-                decimalPlace = decimalPlace / 10;
-            }
-
-            if (left < 0)
-                result = left - decimalPlace;
-            else
-                result = left + decimalPlace;
-        }
-    }
-
-    /// <summary>
-    /// A reverse sign operator </summary>
-    public class Reverse : InputElement, IUnaryOperator
-    {
-        public static string Operator = "R";
-        /// <summary>
-        /// A property provides element string.
-        /// This element string is using for validation and calculation. </summary>
-        public override string GetElement
-        {
-            get => Operator;
-        }
-
-        /// <summary>
-        /// A property provides displaying element string.
-        /// This displaying element is using for making formatted string. </summary>
-        public override string GetDisplayElement
-        {
-            get => "-";
-        }
-
-        /// <summary>
-        /// A operator priority </summary>
-        public int Priority
-        {
-            get => 4;
-        }
-
-        /// <summary>
-        /// A operator's operand type </summary>
-        /// <seealso cref="OperandType">
-        /// A operand type. </seealso>
-        public OperandType OperandType
-        {
-            get => OperandType.RIGHT;
-        }
-
-        /// <summary>
-        /// The method provides possibility of that is it possible adding addingElement after this InputElement.
-        /// This method can modify current expression by adding additional element or removing last element. </summary>
-        /// <param name="expressionElements"> Current expression, an InputElement list </param>
-        /// <param name="isEqualUsed"> A flag value whether equal key is pressed or not </param>
-        /// <param name="isLastValidationSucceed"> A flag value whether last calculation is succeed or not </param>
-        /// <param name="addingElement"> A InputElement will be added after this element. </param>
-        /// <returns> A status of adding element to exist expression </returns>
-        public override AddingElementResult CheckPossibilityAddingElement(ref List<InputElement> expressionElements,
-            ref bool isEqualUsed,
-            ref bool isLastValidationSucceed,
-            InputElement addingElement)
-        {
-            if (Operators.InsertingWork(ref expressionElements, ref isEqualUsed, ref isLastValidationSucceed, addingElement))
-            {
-                return new AddingPossible();
-            }
-
-            return new InvalidFormatUsed();
-
-        }
-
-        /// <summary>
-        /// The method provides result of operator </summary>
-        /// <param name="left"> A left side element. </param>
-        /// <param name="right"> A rightside element. </param>
-        /// <param name="result"> Calculation result. </param>
-        public void GetResult(double left, double right, out double result)
-        {
-            result = left * -1;
-        }
-    }
-
-    
-}
-
diff --git a/test/Calculator/Calculator/Renderers/ImageButtonRenderer.cs b/test/Calculator/Calculator/Renderers/ImageButtonRenderer.cs
deleted file mode 100644 (file)
index 330db7c..0000000
+++ /dev/null
@@ -1,126 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using ElmSharp;
-using System;
-using Xamarin.Forms;
-using Xamarin.Forms.Platform.Tizen;
-using TizenColor = ElmSharp.Color;
-using ImageButtonRenderer = Calculator.Renderers.ImageButtonRenderer;
-
-[assembly: ExportRenderer(typeof(Calculator.Controls.ImageButton), typeof(ImageButtonRenderer))]
-namespace Calculator.Renderers
-{
-    /// <summary>
-    /// Calculator command button custom renderer
-    /// Actually to implement command button, A image is used instead a button to display as a calculator button.
-    /// </summary>
-    /// <remarks>
-    /// Please refer to Xamarin.Forms Custom Renderer
-    /// https://developer.xamarin.com/guides/xamarin-forms/custom-renderer/
-    /// </remarks>
-    class ImageButtonRenderer : ImageRenderer
-    {
-
-        /// <summary>
-        /// Tizen's gesture recognizer for Tap gesture, Long Tap gesture, Line gesture and so on.
-        /// </summary>
-        private ElmSharp.GestureLayer GestureRecognizer;
-
-        /// <summary>
-        /// Resource directory path
-        /// </summary>
-        private readonly String ResourceDirectory = Program.AppResourcePath;
-
-        /// <summary>
-        /// Command button's color
-        /// </summary>
-        private static readonly TizenColor RegularColor = ElmSharp.Color.White;
-
-        /// <summary>
-        /// Command button's color if it is touched.
-        /// </summary>
-        private static readonly TizenColor PressedColor = new TizenColor(200, 200, 200);
-
-        /// <summary>
-        /// Register touch event callback for the Tap, the Long Tap and the Line behavior.
-        /// </summary>
-        /// <param name="args"> A Image element changed event's argument </param>
-        protected override void OnElementChanged(ElementChangedEventArgs<Xamarin.Forms.Image> args)
-        {
-            base.OnElementChanged(args);
-
-            if (Control == null || Element == null)
-            {
-                return;
-            }
-
-            if (GestureRecognizer == null)
-            {
-                GestureRecognizer = new ElmSharp.GestureLayer(Control);
-                GestureRecognizer.Attach(Control);
-            }
-
-            if (args.NewElement == null)
-            {
-                GestureRecognizer.ClearCallbacks();
-                return;
-            }
-
-            Control.Color = RegularColor;
-
-            GestureRecognizer.SetTapCallback(GestureLayer.GestureType.Tap, GestureLayer.GestureState.Start, x => KeyDown() );
-            GestureRecognizer.SetTapCallback(GestureLayer.GestureType.Tap, GestureLayer.GestureState.End, x => ExecuteTapCommand() );
-            GestureRecognizer.SetTapCallback(GestureLayer.GestureType.LongTap, GestureLayer.GestureState.End, x => KeyUp() );
-            GestureRecognizer.SetTapCallback(GestureLayer.GestureType.LongTap, GestureLayer.GestureState.Abort, x => KeyUp() );
-            GestureRecognizer.SetLineCallback(GestureLayer.GestureState.Move, x => KeyUp() );
-        }
-
-        /// <summary>
-        /// Set button image's blending color.
-        /// It's right time after updating the button image source.
-        /// </summary>
-        protected override void UpdateAfterLoading(bool initialize)
-        {
-            base.UpdateAfterLoading(initialize);
-            Control.Color = RegularColor;
-        }
-
-        /// <summary>
-        /// Revert the button's color
-        /// </summary>
-        private void KeyUp()
-        {
-            Control.Color = RegularColor;
-        }
-
-        /// <summary>
-        /// A Action delegate which is restore button image as default
-        /// and execute button's Command with CommandParameter. </summary>
-        private void ExecuteTapCommand()
-        {
-            Calculator.Controls.ImageButton BtnCommand = Element as Calculator.Controls.ImageButton;
-            BtnCommand?.Command?.Execute(BtnCommand.CommandParameter);
-            KeyUp();
-        }
-
-        /// <summary>
-        /// A Action delegate which is restore button image as pressed situation. </summary>
-        private void KeyDown()
-        {
-            Control.Color = PressedColor;
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/Calculator/Calculator/ViewModels/MainPageViewModel.cs b/test/Calculator/Calculator/ViewModels/MainPageViewModel.cs
deleted file mode 100644 (file)
index bf53076..0000000
+++ /dev/null
@@ -1,353 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Windows.Input;
-using Xamarin.Forms;
-
-using Calculator.Impl;
-using Calculator.Models;
-using System.Globalization;
-using System.Runtime.CompilerServices;
-
-namespace Calculator.ViewModels
-{
-    /// <summary>
-    /// A String to Color converter class.
-    /// </summary>
-    /// <remarks>
-    /// Please refer to Xamarin Custom Renderer
-    /// https://developer.xamarin.com/guides/xamarin-forms/custom-renderer/
-    /// </remarks>
-    public class StringToColorConverter : IValueConverter
-    {
-        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            return Color.FromHex(value.ToString());
-        }
-
-        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            return null;
-        }
-    }
-
-    /// <summary>
-    /// A Calculator ViewModel class which manages bindings and sending notifications.
-    /// </summary>
-    /// <seealso cref="Views.CalculatorMainPage">
-    public class MainPageViewModel : INotifyPropertyChanged
-    {
-        /// <summary>
-        /// Instance of MainPageViewModel which is wrapped in lazy<T> type.
-        /// </summary>
-        private static readonly Lazy<MainPageViewModel> lazy =
-                new Lazy<MainPageViewModel>(() => new MainPageViewModel());
-
-        /// <summary>
-        /// This property provides MainPageViewModel instance.
-        /// </summary>
-        public static MainPageViewModel Instance => lazy.Value;
-        
-        public event PropertyChangedEventHandler PropertyChanged;
-
-        /// <summary>
-        /// This property provides formatted expression text. 
-        /// </summary>
-        public FormattedString ExpressionText
-        {
-            get;
-            private set;
-        }
-
-        /// <summary>
-        /// A calculating result text.
-        /// </summary>
-        public FormattedString ResultText
-        {
-            get;
-            private set;
-        }
-
-        private static readonly String ResultRegularColor = "#7F000000";
-        private static readonly String ResultSoloColor = "#59C03A";
-
-        /// <summary>
-        /// Calculation result text color.
-        /// </summary>
-        public String ResultColor
-        {
-            get;
-            private set;
-        }
-        
-        /// <summary>
-        /// An element button's command 
-        /// </summary>
-        public ICommand PressButton { protected set; get; }
-        /// <summary>
-        /// A clear command button's command 
-        /// </summary>
-        public ICommand Clear { protected set; get; }
-        /// <summary>
-        /// A remove last button's command 
-        /// </summary>
-        public ICommand RemoveLast { protected set; get; }
-        /// <summary>
-        /// A = command button's command 
-        /// </summary>
-        public ICommand Calculate { protected set; get; }
-        /// <summary>
-        /// A +/- operator button's command 
-        /// </summary>
-        public ICommand Reverse { protected set; get; }
-
-        /// <summary>
-        /// MainPageViewModel constructor.
-        /// In this constructor, view initialization and commands bindings are completed. 
-        /// </summary>
-        private MainPageViewModel()
-        {
-            SetDisplayEmpty();
-
-            if (CalculatorApp.InputParserInstance.IsEmptyInputElements == false)
-            {
-                IEnumerable<InputElement> plainTexts = CalculatorApp.InputParserInstance.ExpressionElements;
-                FormattedString result;
-                FormattedString expression;
-                GetCalculatedResult(plainTexts, false, out expression, out result);
-                ResultText = result;
-
-                ExpressionText = expression;
-                UpdateDisplay();
-            }
-
-            this.PressButton = new Command((value) =>
-            {
-                string input = value.ToString();
-
-                IEnumerable<InputElement> plainTexts;
-                AddingElementResult res = CalculatorApp.InputParserInstance.GetSeparatedPlainText(input, out plainTexts);
-                if ((res is AddingPossible) == false)
-                {
-                    DisplayError(res.Message);
-                    return;
-                }
-
-                FormattedString result;
-                FormattedString expression;
-                GetCalculatedResult(plainTexts, false, out expression, out result);
-
-                ExpressionText = expression;
-                ResultText = result;
-                UpdateDisplay();
-            });
-
-            this.Clear = new Command(() =>
-            {
-                SetDisplayEmpty();
-                CalculatorApp.InputParserInstance.Clear();
-            });
-
-            this.RemoveLast = new Command(() =>
-            {
-                IEnumerable<InputElement> plainTexts;
-                if (CalculatorApp.InputParserInstance.DeleteLast(out plainTexts) == false)
-                {
-                    return;
-                }
-
-                FormattedString result;
-                FormattedString expression;
-                GetCalculatedResult(plainTexts, false, out expression, out result);
-
-                ExpressionText = expression;
-                ResultText = result;
-                UpdateDisplay();
-            });
-
-            this.Calculate = new Command(() =>
-            {
-                IEnumerable<InputElement> plainTexts;
-                if (CalculatorApp.InputParserInstance.Equal(out plainTexts) == false)
-                {
-                    return;
-                }
-
-                FormattedString result;
-                FormattedString expression;
-                if (GetEqualResult(plainTexts, out expression, out result) == false)
-                {
-                    return;
-                }
-
-                CalculatorApp.InputParserInstance.Set(CalculatorApp.CalculatorInstance.Result.ToString());
-                ResultText = result;
-
-                UpdateDisplay(true);
-            });
-
-            this.Reverse = new Command(() =>
-            {
-                IEnumerable<InputElement> plainTexts;
-                if (CalculatorApp.InputParserInstance.ReverseSign(out plainTexts) == false)
-                {
-                    DisplayError("Invalid format used.");
-                    return;
-                }
-
-                FormattedString result;
-                FormattedString expression;
-                GetCalculatedResult(plainTexts, false, out expression, out result);
-
-                ExpressionText = expression;
-                ResultText = result;
-                UpdateDisplay();
-            });
-        }
-
-        /// <summary>
-        /// The method provides calculated result and formatted expression for given expression. </summary>
-        /// <param name="inputExpression"> An expression which consist of InputElements with IEnumerable interface. </param>
-        /// <param name="isNeedCheckException"> Value indicates whether error displaying is needed. </param>
-        /// <param name="expression"> A formatted expression. </param>
-        /// <param name="result"> A formatted calculation result. </param>
-        /// <returns> A status of calculation </returns>
-        private bool GetCalculatedResult(IEnumerable<InputElement> inputExpression,
-            bool isNeedCheckException,
-            out FormattedString expression,
-            out FormattedString result)
-        {
-            expression = CalculatorApp.FormatterInstance.GetFormattedExpressionText(inputExpression);
-            result = string.Empty;
-
-            CalculationResult resCal = CalculatorApp.CalculatorInstance.SetExpression(inputExpression);
-            if ((resCal is CalculationSuccessful) == false)
-            {
-                if (isNeedCheckException)
-                {
-                    DisplayError(resCal.Message);
-                    return false;
-                }
-
-                return true;
-            }
-
-            result = CalculatorApp.FormatterInstance.GetFormattedOutputText(CalculatorApp.CalculatorInstance.Result.ToString());
-            return true;
-        }
-
-        /// <summary>
-        /// The method provides calculated result and formatted expression for given inputExpression. </summary>
-        /// <param name="inputExpression"> An expression which consist of InputElements with IEnumerable interface. </param>
-        /// <param name="expression"> A formatted expression. </param>
-        /// <param name="result"> A formatted calculation result. </param>
-        /// <returns> A result status of equal key execution </returns>
-        private bool GetEqualResult(IEnumerable<InputElement> inputExpression,
-            out FormattedString expression,
-            out FormattedString result)
-        {
-            expression = CalculatorApp.FormatterInstance.GetFormattedExpressionText(inputExpression);
-            result = string.Empty;
-
-            CalculationResult resCal = CalculatorApp.CalculatorInstance.Equal(inputExpression);
-            if ((resCal is CalculationSuccessful) == false)
-            {
-                DisplayError(resCal.Message);
-                return false;
-            }
-
-            result = CalculatorApp.FormatterInstance.GetFormattedOutputText(CalculatorApp.CalculatorInstance.Result.ToString());
-            return true;
-        }
-
-        /// <summary>
-        /// This method updates expression and result texts assuming calculation has not completed.
-        /// </summary>
-        private void UpdateDisplay()
-        {
-            UpdateDisplay(false);
-        }
-
-        /// <summary>
-        /// This method updates expression and result texts. 
-        /// </summary>
-        /// <param name="isCalculationCompleted"> Flag value indicating whether calculation has completed or not. </param>
-        private void UpdateDisplay(bool isCalculationCompleted)
-        {
-            UpdateResultTextColor(isCalculationCompleted);
-
-            OnPropertyChanged("ExpressionText");
-            OnPropertyChanged("ResultText");
-        }
-
-        /// <summary>
-        /// This method updates result text color. 
-        /// </summary>
-        /// <param name="isCalculationCompleted"> Flag value indicating whether calculation has completed or not. </param>
-        private void UpdateResultTextColor(bool isCalculationCompleted)
-        {
-            if (isCalculationCompleted)
-            {
-                if (ResultColor != ResultSoloColor)
-                {
-                    ResultColor = ResultSoloColor;
-                    OnPropertyChanged("ResultColor");
-                }
-            }
-            else
-            {
-                if (ResultColor != ResultRegularColor)
-                {
-                    ResultColor = ResultRegularColor;
-                    OnPropertyChanged("ResultColor");
-                }
-            }
-        }
-        
-
-        /// <summary>
-        /// This method clears Expression and result texts. 
-        /// </summary>
-        private void SetDisplayEmpty()
-        {
-            ExpressionText = string.Empty;
-            ResultText = string.Empty;
-            UpdateDisplay();
-        }
-
-        /// <summary>
-        /// This method displaying error message on the screen.
-        /// </summary>
-        /// <param name="message"> Message to be displayed </param>
-        private void DisplayError(String message)
-        {
-            if (message.Length > 0)
-            {
-                MessagingCenter.Send(this, "alert", message);
-            }
-        }
-
-        /// <summary>
-        /// The method is used to notify that property has changed. </summary>
-        /// <param name="propertyName"> A property name. </param>
-        protected void OnPropertyChanged([CallerMemberName] string propertyName = null)
-        {
-            PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
-        }
-    }
-}
diff --git a/test/Calculator/Calculator/Views/CalculatorMainPage.xaml b/test/Calculator/Calculator/Views/CalculatorMainPage.xaml
deleted file mode 100644 (file)
index 9b7fd15..0000000
+++ /dev/null
@@ -1,202 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
-             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-             xmlns:local="clr-namespace:Calculator.ViewModels"
-             xmlns:control="clr-namespace:Calculator.Controls"
-             x:Class="Calculator.Views.CalculatorMainPage">
-    <ContentPage.Resources>
-        <ResourceDictionary>
-            <local:StringToColorConverter x:Key="StringToColorConverter"/>
-
-            <Style x:Key="font1" TargetType="Label" >
-                <Setter Property="FontFamily" Value="Samsung sans" />
-                <Setter Property="FontSize" Value="7" />
-                <Setter Property="HorizontalTextAlignment" Value="End" />
-                <Setter Property="VerticalTextAlignment" Value="Center" />
-            </Style>
-
-            <Style x:Key="inputString" TargetType="Label" BasedOn="{StaticResource font1}">
-                <Setter Property="LineBreakMode" Value="HeadTruncation" />
-            </Style>
-
-            <Style x:Key="sumString" TargetType="Label" BasedOn="{StaticResource font1}">
-                <Setter Property="LineBreakMode" Value="NoWrap" />
-            </Style>
-
-            <Style x:Key="alertString" TargetType="Label" >
-                <Setter Property="FontFamily" Value="Samsung sans" />
-                <Setter Property="FontSize" Value="6" />
-                <Setter Property="VerticalTextAlignment" Value="Center" />
-                <Setter Property="LineBreakMode" Value="WordWrap" />
-                <Setter Property="TextColor" Value="Black"/>
-                <Setter Property="HorizontalTextAlignment" Value="Center" />
-                <Setter Property="BackgroundColor" Value="#DDFFFFFF" />
-            </Style>
-
-        </ResourceDictionary>
-    </ContentPage.Resources>
-    
-    <ContentPage.Content>
-
-        <RelativeLayout>
-            <Grid RelativeLayout.XConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=0, Constant=0}"
-              RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToParent, Property=Height, Factor=0, Constant=0}"
-              RelativeLayout.WidthConstraint="{ConstraintExpression Type=RelativeToParent,Property=Width, Factor=1,Constant=0}"
-              RelativeLayout.HeightConstraint="{ConstraintExpression Type=RelativeToParent,Property=Height, Factor=1,Constant=0}"
-              HorizontalOptions="Fill"
-              VerticalOptions="Fill"
-              RowSpacing="1"
-              ColumnSpacing="1">
-
-                <Grid.RowDefinitions>
-                    <!-- First row is there to leave empty space on the top of the screen -->
-                    <RowDefinition Height="2*" />
-                    <RowDefinition Height="3*" />
-                    <RowDefinition Height="3*" />
-                    <RowDefinition Height="4*" />
-                    <RowDefinition Height="4*" />
-                    <RowDefinition Height="4*" />
-                    <RowDefinition Height="4*" />
-                    <RowDefinition Height="4*" />
-                    <RowDefinition Height="4*" />
-                </Grid.RowDefinitions>
-
-                <Grid.ColumnDefinitions>
-                    <ColumnDefinition Width="100*"/>
-                    <ColumnDefinition Width="100*"/>
-                    <ColumnDefinition Width="100*"/>
-                    <ColumnDefinition Width="100*"/>
-                    <ColumnDefinition Width="100*"/>
-                    <ColumnDefinition Width="100*"/>
-                    <ColumnDefinition Width="100*"/>
-                    <!-- Last column should be a little wider to avoid uneven spacing between columns -->
-                    <ColumnDefinition Width="101*"/>
-                </Grid.ColumnDefinitions>
-
-
-                <Label x:Name="ExpressionLabel" Grid.Row="1" Grid.Column="2" Grid.ColumnSpan="4"
-                       Style="{StaticResource inputString}"
-                       FormattedText="{Binding ExpressionText}"/>
-
-                <Label Grid.Row="2" Grid.Column="2" Grid.ColumnSpan="4" Style="{StaticResource sumString}"
-                           TextColor="{Binding ResultColor, Converter={StaticResource StringToColorConverter}}"
-                           FormattedText="{Binding ResultText}" />
-
-                <control:ImageButton Grid.Row="3" Grid.Column="0" Grid.ColumnSpan="2" 
-                                     Source="calculator_button_l_01.png"    
-                                     Command="{Binding Clear}"
-                                     BackgroundColor="HotPink"/>
-                <control:ImageButton Grid.Row="3" Grid.Column="2" Grid.ColumnSpan="2" 
-                                     Source="calculator_button_l_05.png"   
-                                     Command="{Binding PressButton}" 
-                                     CommandParameter="*"
-                                     BackgroundColor="HotPink"/>
-                <control:ImageButton Grid.Row="3" Grid.Column="4" Grid.ColumnSpan="2"
-                                     Source="calculator_button_l_04.png"   
-                                     Command="{Binding PressButton}" 
-                                     CommandParameter="/"
-                                     BackgroundColor="HotPink"/>
-                <control:ImageButton Grid.Row="3" Grid.Column="6" Grid.ColumnSpan="2" 
-                                     Source="btn_delete.png"    
-                                     Command="{Binding RemoveLast}"
-                                     BackgroundColor="HotPink"/>
-
-                <control:ImageButton Grid.Row="4" Grid.Column="0" Grid.ColumnSpan="2" 
-                                     Source="calculator_button_p_number_7.png"  
-                                     Command="{Binding PressButton}"
-                                     CommandParameter="7"
-                                     BackgroundColor="Gray" />
-                <control:ImageButton Grid.Row="4" Grid.Column="2" Grid.ColumnSpan="2" 
-                                     Source="calculator_button_p_number_8.png"  
-                                     Command="{Binding PressButton}"
-                                     CommandParameter="8"
-                                     BackgroundColor="Gray"/>
-                <control:ImageButton Grid.Row="4" Grid.Column="4" Grid.ColumnSpan="2" 
-                                     Source="calculator_button_p_number_9.png"  
-                                     Command="{Binding PressButton}"
-                                     CommandParameter="9"
-                                     BackgroundColor="Gray"/>
-                <control:ImageButton Grid.Row="4" Grid.Column="6" Grid.ColumnSpan="2" 
-                                     Source="calculator_button_l_07.png"  
-                                     Command="{Binding PressButton}"
-                                     CommandParameter="+"
-                                     BackgroundColor="HotPink"/>
-
-                <control:ImageButton Grid.Row="5" Grid.Column="0" Grid.ColumnSpan="2" 
-                                     Source="calculator_button_p_number_4.png"  
-                                     Command="{Binding PressButton}"
-                                     CommandParameter="4"
-                                     BackgroundColor="Gray"/>
-                <control:ImageButton Grid.Row="5" Grid.Column="2" Grid.ColumnSpan="2" 
-                                     Source="calculator_button_p_number_5.png"  
-                                     Command="{Binding PressButton}"
-                                     CommandParameter="5"
-                                     BackgroundColor="Gray"/>
-                <control:ImageButton Grid.Row="5" Grid.Column="4" Grid.ColumnSpan="2" 
-                                     Source="calculator_button_p_number_6.png"  
-                                     Command="{Binding PressButton}"
-                                     CommandParameter="6"
-                                     BackgroundColor="Gray"/>
-                <control:ImageButton Grid.Row="5" Grid.Column="6" Grid.ColumnSpan="2" 
-                                     Source="calculator_button_l_06.png"  
-                                     Command="{Binding PressButton}"
-                                     CommandParameter="-"
-                                     BackgroundColor="HotPink"/>
-
-                <control:ImageButton Grid.Row="6" Grid.Column="0" Grid.ColumnSpan="2" 
-                                     Source="calculator_button_p_number_1.png"  
-                                     Command="{Binding PressButton}"
-                                     CommandParameter="1"
-                                     BackgroundColor="Gray"/>
-                <control:ImageButton Grid.Row="6" Grid.Column="2" Grid.ColumnSpan="2" 
-                                     Source="calculator_button_p_number_2.png"  
-                                     Command="{Binding PressButton}"
-                                     CommandParameter="2"
-                                     BackgroundColor="Gray"/>
-                <control:ImageButton Grid.Row="6" Grid.Column="4" Grid.ColumnSpan="2" 
-                                     Source="calculator_button_p_number_3.png"  
-                                     Command="{Binding PressButton}"
-                                     CommandParameter="3"
-                                     BackgroundColor="Gray"/>
-                <control:ImageButton Grid.Row="6" Grid.Column="6" Grid.ColumnSpan="2" 
-                                     Source="calculator_button_l_02.png" 
-                                     Command="{Binding PressButton}"
-                                     CommandParameter="("
-                                     BackgroundColor="HotPink" />
-
-                <control:ImageButton Grid.Row="7" Grid.Column="0" Grid.ColumnSpan="3" 
-                                     Source="calculator_button_p_number_10.png"  
-                                     Command="{Binding PressButton}"
-                                     CommandParameter="."
-                                     BackgroundColor="Gray"/>
-                <control:ImageButton Grid.Row="7" Grid.Column="3" Grid.ColumnSpan="2" 
-                                     Source="calculator_button_p_number_0.png"  
-                                     Command="{Binding PressButton}"
-                                     CommandParameter="0"
-                                     BackgroundColor="Gray" />
-                <control:ImageButton Grid.Row="7" Grid.Column="5" Grid.ColumnSpan="3" 
-                                     Source="calculator_button_p_number_11.png" 
-                                     Command="{Binding Reverse}"
-                                     BackgroundColor="HotPink"/>
-
-                <control:ImageButton Grid.Row="8" Grid.Column="0" Grid.ColumnSpan="8" 
-                                     Source="calculator_button_l_08.png"    
-                                     Command="{Binding Calculate}"
-                                     BackgroundColor="DeepPink"/>
-            </Grid>
-            
-            <Label RelativeLayout.XConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=0, Constant=0}"
-                   RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToParent, Property=Height, Factor=0.16, Constant=0}"
-                   RelativeLayout.WidthConstraint="{ConstraintExpression Type=RelativeToParent,Property=Width, Factor=1,Constant=0}"
-                   RelativeLayout.HeightConstraint="{ConstraintExpression Type=RelativeToParent,Property=Height, Factor=0.1,Constant=0}"
-                   HorizontalOptions="CenterAndExpand"
-                   VerticalOptions="CenterAndExpand"
-                   x:Name="AlertToast"
-                   Style="{StaticResource alertString}"
-                   IsVisible="false"/>
-
-        </RelativeLayout>
-
-
-    </ContentPage.Content>
-</ContentPage>
\ No newline at end of file
diff --git a/test/Calculator/Calculator/Views/CalculatorMainPage.xaml.cs b/test/Calculator/Calculator/Views/CalculatorMainPage.xaml.cs
deleted file mode 100644 (file)
index c8480ba..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System.Threading;
-using System.Threading.Tasks;
-
-using Calculator.ViewModels;
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace Calculator.Views
-{
-    [XamlCompilation(XamlCompilationOptions.Compile)]
-    public partial class CalculatorMainPage : ContentPage
-    {
-        private Mutex CounterMutex = new Mutex(false, "counter_mutex");
-        private int counter;
-
-        public CalculatorMainPage()
-        {
-            NavigationPage.SetHasNavigationBar(this, false);
-            InitializeComponent();
-            BindingContext = MainPageViewModel.Instance;
-
-            MessagingCenter.Subscribe<MainPageViewModel, string>(this, "alert", (sender, arg) =>
-            {
-                CounterMutex.WaitOne();
-                counter++;
-                CounterMutex.ReleaseMutex();
-
-                AlertToast.IsVisible = true;
-                AlertToast.Text = arg.ToString();
-                CloseAlertToast();
-            });
-        }
-
-        /// <summary>
-        /// This method closes alert toast after 1.5 seconds.
-        /// </summary>
-        async void CloseAlertToast()
-        {
-            await Task.Delay(1500);
-            CounterMutex.WaitOne();
-            if (--counter <= 0)
-            {
-                counter = 0;
-                AlertToast.IsVisible = false;
-            }
-
-            CounterMutex.ReleaseMutex();
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/Calculator/Calculator/res/btn_delete.png b/test/Calculator/Calculator/res/btn_delete.png
deleted file mode 100644 (file)
index a25ebfa..0000000
Binary files a/test/Calculator/Calculator/res/btn_delete.png and /dev/null differ
diff --git a/test/Calculator/Calculator/res/calculator_button_l_01.png b/test/Calculator/Calculator/res/calculator_button_l_01.png
deleted file mode 100644 (file)
index a634528..0000000
Binary files a/test/Calculator/Calculator/res/calculator_button_l_01.png and /dev/null differ
diff --git a/test/Calculator/Calculator/res/calculator_button_l_02.png b/test/Calculator/Calculator/res/calculator_button_l_02.png
deleted file mode 100644 (file)
index df740ee..0000000
Binary files a/test/Calculator/Calculator/res/calculator_button_l_02.png and /dev/null differ
diff --git a/test/Calculator/Calculator/res/calculator_button_l_03.png b/test/Calculator/Calculator/res/calculator_button_l_03.png
deleted file mode 100644 (file)
index c56764f..0000000
Binary files a/test/Calculator/Calculator/res/calculator_button_l_03.png and /dev/null differ
diff --git a/test/Calculator/Calculator/res/calculator_button_l_04.png b/test/Calculator/Calculator/res/calculator_button_l_04.png
deleted file mode 100644 (file)
index be4a25c..0000000
Binary files a/test/Calculator/Calculator/res/calculator_button_l_04.png and /dev/null differ
diff --git a/test/Calculator/Calculator/res/calculator_button_l_05.png b/test/Calculator/Calculator/res/calculator_button_l_05.png
deleted file mode 100644 (file)
index a013c82..0000000
Binary files a/test/Calculator/Calculator/res/calculator_button_l_05.png and /dev/null differ
diff --git a/test/Calculator/Calculator/res/calculator_button_l_06.png b/test/Calculator/Calculator/res/calculator_button_l_06.png
deleted file mode 100644 (file)
index 45b3aea..0000000
Binary files a/test/Calculator/Calculator/res/calculator_button_l_06.png and /dev/null differ
diff --git a/test/Calculator/Calculator/res/calculator_button_l_07.png b/test/Calculator/Calculator/res/calculator_button_l_07.png
deleted file mode 100644 (file)
index cec682d..0000000
Binary files a/test/Calculator/Calculator/res/calculator_button_l_07.png and /dev/null differ
diff --git a/test/Calculator/Calculator/res/calculator_button_l_08.png b/test/Calculator/Calculator/res/calculator_button_l_08.png
deleted file mode 100644 (file)
index f895b67..0000000
Binary files a/test/Calculator/Calculator/res/calculator_button_l_08.png and /dev/null differ
diff --git a/test/Calculator/Calculator/res/calculator_button_p_number_0.png b/test/Calculator/Calculator/res/calculator_button_p_number_0.png
deleted file mode 100644 (file)
index beccbb5..0000000
Binary files a/test/Calculator/Calculator/res/calculator_button_p_number_0.png and /dev/null differ
diff --git a/test/Calculator/Calculator/res/calculator_button_p_number_1.png b/test/Calculator/Calculator/res/calculator_button_p_number_1.png
deleted file mode 100644 (file)
index 4ab519c..0000000
Binary files a/test/Calculator/Calculator/res/calculator_button_p_number_1.png and /dev/null differ
diff --git a/test/Calculator/Calculator/res/calculator_button_p_number_10.png b/test/Calculator/Calculator/res/calculator_button_p_number_10.png
deleted file mode 100644 (file)
index edc5cff..0000000
Binary files a/test/Calculator/Calculator/res/calculator_button_p_number_10.png and /dev/null differ
diff --git a/test/Calculator/Calculator/res/calculator_button_p_number_11.png b/test/Calculator/Calculator/res/calculator_button_p_number_11.png
deleted file mode 100644 (file)
index ad28db9..0000000
Binary files a/test/Calculator/Calculator/res/calculator_button_p_number_11.png and /dev/null differ
diff --git a/test/Calculator/Calculator/res/calculator_button_p_number_2.png b/test/Calculator/Calculator/res/calculator_button_p_number_2.png
deleted file mode 100644 (file)
index 8d8bf41..0000000
Binary files a/test/Calculator/Calculator/res/calculator_button_p_number_2.png and /dev/null differ
diff --git a/test/Calculator/Calculator/res/calculator_button_p_number_3.png b/test/Calculator/Calculator/res/calculator_button_p_number_3.png
deleted file mode 100644 (file)
index e4a149c..0000000
Binary files a/test/Calculator/Calculator/res/calculator_button_p_number_3.png and /dev/null differ
diff --git a/test/Calculator/Calculator/res/calculator_button_p_number_4.png b/test/Calculator/Calculator/res/calculator_button_p_number_4.png
deleted file mode 100644 (file)
index 14e42d0..0000000
Binary files a/test/Calculator/Calculator/res/calculator_button_p_number_4.png and /dev/null differ
diff --git a/test/Calculator/Calculator/res/calculator_button_p_number_5.png b/test/Calculator/Calculator/res/calculator_button_p_number_5.png
deleted file mode 100644 (file)
index ad283c7..0000000
Binary files a/test/Calculator/Calculator/res/calculator_button_p_number_5.png and /dev/null differ
diff --git a/test/Calculator/Calculator/res/calculator_button_p_number_6.png b/test/Calculator/Calculator/res/calculator_button_p_number_6.png
deleted file mode 100644 (file)
index 0dd9caa..0000000
Binary files a/test/Calculator/Calculator/res/calculator_button_p_number_6.png and /dev/null differ
diff --git a/test/Calculator/Calculator/res/calculator_button_p_number_7.png b/test/Calculator/Calculator/res/calculator_button_p_number_7.png
deleted file mode 100644 (file)
index 721c907..0000000
Binary files a/test/Calculator/Calculator/res/calculator_button_p_number_7.png and /dev/null differ
diff --git a/test/Calculator/Calculator/res/calculator_button_p_number_8.png b/test/Calculator/Calculator/res/calculator_button_p_number_8.png
deleted file mode 100644 (file)
index 80d9a32..0000000
Binary files a/test/Calculator/Calculator/res/calculator_button_p_number_8.png and /dev/null differ
diff --git a/test/Calculator/Calculator/res/calculator_button_p_number_9.png b/test/Calculator/Calculator/res/calculator_button_p_number_9.png
deleted file mode 100644 (file)
index 56ef6a5..0000000
Binary files a/test/Calculator/Calculator/res/calculator_button_p_number_9.png and /dev/null differ
diff --git a/test/Calculator/Calculator/shared/res/Calculator.png b/test/Calculator/Calculator/shared/res/Calculator.png
deleted file mode 100644 (file)
index 9f3cb98..0000000
Binary files a/test/Calculator/Calculator/shared/res/Calculator.png and /dev/null differ
diff --git a/test/Calculator/Calculator/tizen-manifest.xml b/test/Calculator/Calculator/tizen-manifest.xml
deleted file mode 100644 (file)
index c959765..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<manifest xmlns="http://tizen.org/ns/packages" api-version="4" package="org.tizen.example.Calculator" version="1.0.0">
-       <profile name="wearable" />
-       <ui-application appid="org.tizen.example.Calculator"
-                                       exec="Calculator.dll"
-                                       type="dotnet"
-                                       multiple="false"
-                                       taskmanage="true"
-                                       nodisplay="false"
-                                       launch_mode="single">
-  <label>Calculator</label>
-       <icon>Calculator.png</icon>
-        <metadata key="http://tizen.org/metadata/prefer_dotnet_aot" value="true" />
-       </ui-application>
-</manifest>
diff --git a/test/Directory.Build.props b/test/Directory.Build.props
deleted file mode 100644 (file)
index 925c42d..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-<Project>
-
-  <Import Project="$(MSBuildThisFileDirectory)..\.nuspec\XSF.props" />
-
-</Project>
diff --git a/test/Directory.Build.targets b/test/Directory.Build.targets
deleted file mode 100644 (file)
index 3e7b6bf..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-<Project>
-
-  <Import Project="$(MSBuildThisFileDirectory)..\.nuspec\XSF.targets" />
-
-</Project>
diff --git a/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/ElottieFormsGallery.Tizen.cs b/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/ElottieFormsGallery.Tizen.cs
deleted file mode 100644 (file)
index 7110efe..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-using Xamarin.Forms;
-using Xamarin.Forms.Platform.Tizen;
-using Tizen.Wearable.CircularUI.Forms.Renderer;
-
-namespace ElottieFormsGallery
-{
-    class Program : FormsApplication
-    {
-        protected override void OnCreate()
-        {
-            base.OnCreate();
-            LoadApplication(new App());
-        }
-
-        static void Main(string[] args)
-        {
-            var app = new Program();
-            Forms.Init(app);
-            FormsCircularUI.Init();
-            app.Run(args);
-        }
-    }
-}
diff --git a/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/ElottieFormsGallery.Tizen.csproj b/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/ElottieFormsGallery.Tizen.csproj
deleted file mode 100644 (file)
index 80bd91a..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-<Project Sdk="Tizen.NET.Sdk/1.0.8">
-
-  <PropertyGroup>
-    <OutputType>Exe</OutputType>
-    <TargetFramework>tizen40</TargetFramework>
-  </PropertyGroup>
-
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugType>portable</DebugType>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>None</DebugType>
-  </PropertyGroup>
-
-  <ItemGroup>
-    <Folder Include="res\" />
-  </ItemGroup>
-
-  <ItemGroup>
-    <ProjectReference Include="..\ElottieFormsGallery\ElottieFormsGallery.csproj" />
-    <ProjectReference Include="..\..\..\src\XSF\XSF.csproj" />
-  </ItemGroup>
-
-</Project>
-
diff --git a/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/a_mountain.json b/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/a_mountain.json
deleted file mode 100644 (file)
index 65fed4b..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"v":"5.1.15","fr":25,"ip":0,"op":89,"w":300,"h":300,"nm":"MountainCircle","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"CloudA contornos","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":25,"s":[65,155,0],"e":[136,155,0],"to":[11.8333330154419,0,0],"ti":[-11.8333330154419,0,0]},{"t":88}],"ix":2},"a":{"a":0,"k":[21.25,16.25,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.25,0.25,0.667],"y":[1,1,1]},"o":{"x":[0.75,0.75,0.333],"y":[0,0,0]},"n":["0p25_1_0p75_0","0p25_1_0p75_0","0p667_1_0p333_0"],"t":10,"s":[100,0,100],"e":[100,110,100]},{"i":{"x":[0.25,0.25,0.667],"y":[1,1,1]},"o":{"x":[0.75,0.75,0.333],"y":[0,0,0]},"n":["0p25_1_0p75_0","0p25_1_0p75_0","0p667_1_0p333_0"],"t":17,"s":[100,110,100],"e":[100,90,100]},{"i":{"x":[0.25,0.25,0.667],"y":[1,1,1]},"o":{"x":[0.75,0.75,0.333],"y":[0,0,0]},"n":["0p25_1_0p75_0","0p25_1_0p75_0","0p667_1_0p333_0"],"t":22,"s":[100,90,100],"e":[100,100,100]},{"t":24}],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-4.418],[4.418,0],[0,4.418],[-4.418,0]],"o":[[0,4.418],[-4.418,0],[0,-4.418],[4.418,0]],"v":[[8,0],[0,8],[-8,0],[0,-8]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-78,149],[222,149],[222,-151],[-78,-151]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-78,-151],[222,-151],[222,149],[-78,149]],"c":true},"ix":2},"nm":"Trazado 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"mm","mm":4,"nm":"Combinar trazados 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0.929000016755,0.929000016755,0.929000016755,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Relleno 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[34.25,12.25],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-6.627],[6.627,0],[0,6.627],[-6.627,0]],"o":[[0,6.627],[-6.627,0],[0,-6.627],[6.627,0]],"v":[[12,0],[0,12],[-12,0],[0,-12]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-72,141],[228,141],[228,-159],[-72,-159]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-72,-159],[228,-159],[228,141],[-72,141]],"c":true},"ix":2},"nm":"Trazado 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"mm","mm":4,"nm":"Combinar trazados 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0.929000016755,0.929000016755,0.929000016755,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Relleno 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[28.25,20.25],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 2","np":4,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-6.075],[6.075,0],[0,6.075],[-6.075,0]],"o":[[0,6.075],[-6.075,0],[0,-6.075],[6.075,0]],"v":[[11,0],[0,11],[-11,0],[0,-11]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-65,150],[235,150],[235,-150],[-65,-150]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-65,-150],[235,-150],[235,150],[-65,150]],"c":true},"ix":2},"nm":"Trazado 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"mm","mm":4,"nm":"Combinar trazados 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0.929000016755,0.929000016755,0.929000016755,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Relleno 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[21.25,11.25],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 3","np":4,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-7.18],[7.18,0],[0,7.18],[-7.18,0]],"o":[[0,7.18],[-7.18,0],[0,-7.18],[7.18,0]],"v":[[13,0],[0,13],[-13,0],[0,-13]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-57,145],[243,145],[243,-155],[-57,-155]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-57,-155],[243,-155],[243,145],[-57,145]],"c":true},"ix":2},"nm":"Trazado 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"mm","mm":4,"nm":"Combinar trazados 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0.929000016755,0.929000016755,0.929000016755,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Relleno 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[13.25,16.25],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 4","np":4,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":89,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Circle 4","td":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[150,150,0],"ix":2},"a":{"a":0,"k":[137.25,137.25,0],"ix":1},"s":{"a":0,"k":[97.333,97.333,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-75.663],[75.663,0],[0,75.663],[-75.663,0]],"o":[[0,75.663],[-75.663,0],[0,-75.663],[75.663,0]],"v":[[137,0],[0,137],[-137,0],[0,-137]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-150,150],[150,150],[150,-150],[-150,-150]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-150,-150],[150,-150],[150,150],[-150,150]],"c":true},"ix":2},"nm":"Trazado 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"mm","mm":4,"nm":"Combinar trazados 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0.081999999402,0.626999978458,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Relleno 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[137.25,137.25],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":89,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Sun contornos","tt":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.25,"y":1},"o":{"x":0.75,"y":0},"n":"0p25_1_0p75_0","t":11,"s":[182,-13,0],"e":[182,83,0],"to":[0,16,0],"ti":[0,-13.6666669845581,0]},{"i":{"x":0.25,"y":1},"o":{"x":0.75,"y":0},"n":"0p25_1_0p75_0","t":29,"s":[182,83,0],"e":[182,69,0],"to":[0,13.6666669845581,0],"ti":[0,2.33333325386047,0]},{"t":33}],"ix":2},"a":{"a":0,"k":[20.25,20.25,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-11.05],[11.05,0],[0,0]],"o":[[0,11.05],[0,0],[11.05,0]],"v":[[10,0],[-10,20],[-10,-20]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-192,207],[108,207],[108,-93],[-192,-93]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-192,-93],[108,-93],[108,207],[-192,207]],"c":true},"ix":2},"nm":"Trazado 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"mm","mm":4,"nm":"Combinar trazados 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0.952999997606,0.611999990426,0.071000005685,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Relleno 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[30.25,20.25],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-11.046],[11.046,0],[0,11.046],[-11.046,0]],"o":[[0,11.046],[-11.046,0],[0,-11.046],[11.046,0]],"v":[[20,0],[0,20],[-20,0],[0,-20]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-182,207],[118,207],[118,-93],[-182,-93]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-182,-93],[118,-93],[118,207],[-182,207]],"c":true},"ix":2},"nm":"Trazado 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"mm","mm":4,"nm":"Combinar trazados 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0.944999964097,0.769000004787,0.059000000299,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Relleno 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[20.25,20.25],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 2","np":4,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":89,"st":0,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":"Circle 2","td":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[150,150,0],"ix":2},"a":{"a":0,"k":[137.25,137.25,0],"ix":1},"s":{"a":0,"k":[97.333,97.333,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-75.663],[75.663,0],[0,75.663],[-75.663,0]],"o":[[0,75.663],[-75.663,0],[0,-75.663],[75.663,0]],"v":[[137,0],[0,137],[-137,0],[0,-137]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-150,150],[150,150],[150,-150],[-150,-150]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-150,-150],[150,-150],[150,150],[-150,150]],"c":true},"ix":2},"nm":"Trazado 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"mm","mm":4,"nm":"Combinar trazados 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0.081999999402,0.626999978458,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Relleno 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[137.25,137.25],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":89,"st":0,"bm":0},{"ddd":0,"ind":5,"ty":4,"nm":"MountainF contornos","tt":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[150,280.135,0],"ix":2},"a":{"a":0,"k":[113.88,151.115,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.25,0.25,0.667],"y":[1,1,1]},"o":{"x":[0.75,0.75,0.333],"y":[0,0,0]},"n":["0p25_1_0p75_0","0p25_1_0p75_0","0p667_1_0p333_0"],"t":0,"s":[100,0,100],"e":[100,110,100]},{"i":{"x":[0.25,0.25,0.667],"y":[1,1,1]},"o":{"x":[0.75,0.75,0.333],"y":[0,0,0]},"n":["0p25_1_0p75_0","0p25_1_0p75_0","0p667_1_0p333_0"],"t":7,"s":[100,110,100],"e":[100,90,100]},{"i":{"x":[0.25,0.25,0.667],"y":[1,1,1]},"o":{"x":[0.75,0.75,0.333],"y":[0,0,0]},"n":["0p25_1_0p75_0","0p25_1_0p75_0","0p667_1_0p333_0"],"t":12,"s":[100,90,100],"e":[100,100,100]},{"t":14}],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[30.77,0],[14.62,5.52],[0,0],[-0.921,-0.9]],"o":[[-22.529,17.55],[-16.54,0],[0,0],[1.17,-0.03],[0,0]],"v":[[64.32,48.55],[-17.32,76.55],[-64.32,68.01],[-64.32,-76.52],[-61.039,-75.22]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-167.32,93.55],[132.68,93.55],[132.68,-206.45],[-167.32,-206.45]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-167.32,-206.45],[132.68,-206.45],[132.68,93.55],[-167.32,93.55]],"c":true},"ix":2},"nm":"Trazado 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"mm","mm":4,"nm":"Combinar trazados 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0.172999991623,0.243000000598,0.313999998803,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Relleno 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[131.2,77.429],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[30.77,0],[23.34,38.3],[0,0],[-1.987,-1.96]],"o":[[-22.529,17.55],[-48.13,0],[0,0],[1.634,-2.264],[0,0]],"v":[[97.635,48.864],[15.995,76.865],[-97.635,12.995],[-34.613,-74.329],[-27.725,-74.905]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-134.005,93.865],[165.995,93.865],[165.995,-206.135],[-134.005,-206.135]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-134.005,-206.135],[165.995,-206.135],[165.995,93.865],[-134.005,93.865]],"c":true},"ix":2},"nm":"Trazado 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"mm","mm":4,"nm":"Combinar trazados 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0.204000001795,0.286000001197,0.368999974868,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Relleno 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[97.885,77.115],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 2","np":4,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":89,"st":0,"bm":0},{"ddd":0,"ind":6,"ty":4,"nm":"CloudB contornos","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":32,"s":[181.824,192.221,0],"e":[216.824,192.221,0],"to":[5.83333349227905,0,0],"ti":[-5.83333349227905,0,0]},{"t":88}],"ix":2},"a":{"a":0,"k":[14.733,8.87,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.25,0.25,0.667],"y":[1,1,1]},"o":{"x":[0.75,0.75,0.333],"y":[0,0,0]},"n":["0p25_1_0p75_0","0p25_1_0p75_0","0p667_1_0p333_0"],"t":17,"s":[100,0,100],"e":[100,110,100]},{"i":{"x":[0.25,0.25,0.667],"y":[1,1,1]},"o":{"x":[0.75,0.75,0.333],"y":[0,0,0]},"n":["0p25_1_0p75_0","0p25_1_0p75_0","0p667_1_0p333_0"],"t":24,"s":[100,110,100],"e":[100,90,100]},{"i":{"x":[0.25,0.25,0.667],"y":[1,1,1]},"o":{"x":[0.75,0.75,0.333],"y":[0,0,0]},"n":["0p25_1_0p75_0","0p25_1_0p75_0","0p667_1_0p333_0"],"t":29,"s":[100,90,100],"e":[100,100,100]},{"t":31}],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.392,-3.246],[3.246,0.392],[-0.391,3.246],[-3.246,-0.392]],"o":[[-0.391,3.246],[-3.246,-0.391],[0.391,-3.246],[3.246,0.391]],"v":[[5.877,0.708],[-0.709,5.878],[-5.878,-0.709],[0.708,-5.878]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-190.038,106.159],[109.962,106.159],[109.962,-193.841],[-190.038,-193.841]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-190.038,-193.841],[109.962,-193.841],[109.962,106.159],[-190.038,106.159]],"c":true},"ix":2},"nm":"Trazado 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"mm","mm":4,"nm":"Combinar trazados 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0.808000033509,0.808000033509,0.808000033509,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Relleno 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[22.948,10.49],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.245,-2.028],[2.029,0.245],[-0.244,2.029],[-2.029,-0.244]],"o":[[-0.244,2.029],[-2.029,-0.245],[0.244,-2.029],[2.029,0.245]],"v":[[3.673,0.442],[-0.443,3.673],[-3.674,-0.443],[0.443,-3.674]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-191.304,110.478],[108.696,110.478],[108.696,-189.522],[-191.304,-189.522]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-191.304,-189.522],[108.696,-189.522],[108.696,110.478],[-191.304,110.478]],"c":true},"ix":2},"nm":"Trazado 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"mm","mm":4,"nm":"Combinar trazados 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0.808000033509,0.808000033509,0.808000033509,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Relleno 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[24.213,6.171],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 2","np":4,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.391,-3.246],[3.246,0.391],[-0.39,3.246],[-3.246,-0.391]],"o":[[-0.392,3.246],[-3.246,-0.392],[0.392,-3.246],[3.246,0.392]],"v":[[5.878,0.708],[-0.709,5.878],[-5.879,-0.708],[0.708,-5.878]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-173.609,105.902],[126.391,105.902],[126.391,-194.098],[-173.609,-194.098]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-173.609,-194.098],[126.391,-194.098],[126.391,105.902],[-173.609,105.902]],"c":true},"ix":2},"nm":"Trazado 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"mm","mm":4,"nm":"Combinar trazados 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0.808000033509,0.808000033509,0.808000033509,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Relleno 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[6.518,10.746],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 3","np":4,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.538,-4.464],[4.464,0.539],[-0.538,4.464],[-4.464,-0.538]],"o":[[-0.537,4.463],[-4.463,-0.538],[0.538,-4.463],[4.463,0.538]],"v":[[8.082,0.974],[-0.975,8.081],[-8.082,-0.974],[0.975,-8.082]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-182.779,107.779],[117.221,107.779],[117.221,-192.221],[-182.779,-192.221]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-182.779,-192.221],[117.221,-192.221],[117.221,107.779],[-182.779,107.779]],"c":true},"ix":2},"nm":"Trazado 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"mm","mm":4,"nm":"Combinar trazados 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0.808000033509,0.808000033509,0.808000033509,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Relleno 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[15.689,8.87],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 4","np":4,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":89,"st":0,"bm":0},{"ddd":0,"ind":7,"ty":4,"nm":"Circle 3","td":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[150,150,0],"ix":2},"a":{"a":0,"k":[137.25,137.25,0],"ix":1},"s":{"a":0,"k":[96.667,96.667,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-75.663],[75.663,0],[0,75.663],[-75.663,0]],"o":[[0,75.663],[-75.663,0],[0,-75.663],[75.663,0]],"v":[[137,0],[0,137],[-137,0],[0,-137]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-150,150],[150,150],[150,-150],[-150,-150]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-150,-150],[150,-150],[150,150],[-150,150]],"c":true},"ix":2},"nm":"Trazado 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"mm","mm":4,"nm":"Combinar trazados 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0.081999999402,0.626999978458,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Relleno 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[137.25,137.25],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":89,"st":0,"bm":0},{"ddd":0,"ind":8,"ty":4,"nm":"MountainB contornos","tt":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[174.57,280.73,0],"ix":2},"a":{"a":0,"k":[0.249,105.98,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.25,0.25,0.667],"y":[1,1,1]},"o":{"x":[0.75,0.75,0.333],"y":[0,0,0]},"n":["0p25_1_0p75_0","0p25_1_0p75_0","0p667_1_0p333_0"],"t":0,"s":[100,0,100],"e":[100,110,100]},{"i":{"x":[0.25,0.25,0.667],"y":[1,1,1]},"o":{"x":[0.75,0.75,0.333],"y":[0,0,0]},"n":["0p25_1_0p75_0","0p25_1_0p75_0","0p667_1_0p333_0"],"t":7,"s":[100,110,100],"e":[100,90,100]},{"i":{"x":[0.25,0.25,0.667],"y":[1,1,1]},"o":{"x":[0.75,0.75,0.333],"y":[0,0,0]},"n":["0p25_1_0p75_0","0p25_1_0p75_0","0p667_1_0p333_0"],"t":12,"s":[100,90,100],"e":[100,100,100]},{"t":14}],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[36.889,-6.891],[0,0]],"o":[[-19.399,30.58],[0,0],[0,0]],"v":[[43.91,-6.726],[-43.91,52.866],[8.52,-52.866]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-218.48,72.135],[81.52,72.135],[81.52,-227.865],[-218.48,-227.865]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-218.48,-227.865],[81.52,-227.865],[81.52,72.135],[-218.48,72.135]],"c":true},"ix":2},"nm":"Trazado 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"mm","mm":4,"nm":"Combinar trazados 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0.109999997008,0.165000002992,0.20800000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Relleno 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[44.159,53.116],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":89,"st":0,"bm":0},{"ddd":0,"ind":9,"ty":4,"nm":"Circle","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[150,150,0],"ix":2},"a":{"a":0,"k":[137.25,137.25,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-75.663],[75.663,0],[0,75.663],[-75.663,0]],"o":[[0,75.663],[-75.663,0],[0,-75.663],[75.663,0]],"v":[[137,0],[0,137],[-137,0],[0,-137]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-150,150],[150,150],[150,-150],[-150,-150]],"c":true},"ix":2},"nm":"Trazado 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-150,-150],[150,-150],[150,150],[-150,150]],"c":true},"ix":2},"nm":"Trazado 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"mm","mm":4,"nm":"Combinar trazados 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0.081999999402,0.626999978458,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Relleno 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[137.25,137.25],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":89,"st":0,"bm":0}],"markers":[]}
\ No newline at end of file
diff --git a/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/cooking.json b/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/cooking.json
deleted file mode 100644 (file)
index d14ac8f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"v":"5.1.20","fr":30,"ip":0,"op":90,"w":300,"h":300,"nm":"Layers-Panelinha","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"fum3","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[118,140,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[14.645,21.967],[0,0]],"o":[[0,0],[-10,-15],[0,0]],"v":[[103.5,-40.5],[102.5,-73],[105,-104]],"c":false},"ix":2},"nm":"Caminho 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.23137254902,0.647058823529,0.345098039216,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":5,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Traçado 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Forma 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":52,"s":[0],"e":[100]},{"t":61}],"ix":1},"e":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":38,"s":[1],"e":[100]},{"t":48}],"ix":2},"o":{"a":0,"k":0,"ix":3},"m":1,"ix":2,"nm":"Aparar caminhos 1","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":0,"op":90,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"fum2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[146.5,146.5,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[14.645,21.967],[0,0]],"o":[[0,0],[-10,-15],[0,0]],"v":[[103.5,-40.5],[102.5,-73],[105,-104]],"c":false},"ix":2},"nm":"Caminho 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.23137254902,0.647058823529,0.345098039216,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":5,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Traçado 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Forma 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":48,"s":[0],"e":[100]},{"t":57}],"ix":1},"e":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":34,"s":[0],"e":[100]},{"t":44}],"ix":2},"o":{"a":0,"k":0,"ix":3},"m":1,"ix":2,"nm":"Aparar caminhos 1","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":0,"op":90,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"fum1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[172.5,156,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[14.645,21.967],[0,0]],"o":[[0,0],[-10,-15],[0,0]],"v":[[103.5,-40.5],[102.5,-73],[105,-104]],"c":false},"ix":2},"nm":"Caminho 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.23137254902,0.647058823529,0.345098039216,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":5,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Traçado 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Forma 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":44,"s":[0],"e":[100]},{"t":53}],"ix":1},"e":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":30,"s":[0],"e":[100]},{"t":40}],"ix":2},"o":{"a":0,"k":0,"ix":3},"m":1,"ix":2,"nm":"Aparar caminhos 1","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":0,"op":90,"st":0,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":"tampa","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":21,"s":[3],"e":[-1]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.167],"y":[0]},"n":["0p667_1_0p167_0"],"t":30,"s":[-1],"e":[-1]},{"i":{"x":[0.833],"y":[1]},"o":{"x":[0.167],"y":[0]},"n":["0p833_1_0p167_0"],"t":60,"s":[-1],"e":[3]},{"t":69}],"ix":10},"p":{"a":0,"k":[45.545,146.5,0],"ix":2},"a":{"a":0,"k":[6.582,51.75,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-10.057,-13.526],[-8.536,81.451],[234.078,78.965],[232.557,-16.012]],"c":true},"ix":1},"o":{"a":0,"k":100,"ix":3},"x":{"a":0,"k":0,"ix":4},"nm":"Máscara 1"}],"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.181,-0.003]],"o":[[0,0]],"v":[[-0.22,-21.078]],"c":true},"ix":2},"nm":"Caminho 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[2.101,1.25],[4.773,0.893],[13.723,0.898],[6.051,0],[9.651,0],[0.205,3.94],[-2.76,0.691],[-1.947,1.145],[1.654,1.108],[3.862,0.587],[0,0],[3.533,-3.061],[0.933,-1.926],[-2.019,-0.218],[-0.671,0],[-2.685,0.154],[0,0],[4.667,-0.497],[21.998,-8.59],[4.733,-3.077],[1.514,-2.149],[0,0],[-62.874,3.606],[-0.255,0.592]],"o":[[-4.282,-2.547],[-13.548,-2.532],[-5.987,-0.393],[-9.334,0],[-0.192,-3.681],[3.294,-0.218],[2.102,-0.527],[-1.199,-1.786],[-2.849,-1.909],[0,0],[-5.411,0.808],[-1.487,1.289],[1.947,0.89],[0.659,0.072],[2.366,0],[0,0],[-4.912,0.467],[-23.337,2.485],[-5.247,2.049],[-2.046,1.33],[0,0],[62.874,-3.606],[0.254,-0.591],[-1.644,-2.017]],"v":[[105.32,8.989],[91.723,2.741],[50.79,-3.165],[32.749,-3.677],[4.32,-3.394],[3.742,-14.488],[12.777,-15.21],[18.647,-18.522],[14.986,-23.785],[4.674,-27.5],[-6.408,-27.5],[-20.437,-21.662],[-23.316,-15.976],[-17.462,-13.435],[-15.468,-13.334],[-7.956,-13.851],[-7.956,-2.777],[-22.213,-1.412],[-90.667,13.278],[-105.657,21.258],[-110.332,27.5],[-79.052,27.5],[109.569,16.681],[110.332,14.907]],"c":true},"ix":2},"nm":"Caminho 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"mm","mm":1,"nm":"Mesclar caminhos 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-255.545,289.5],[256.455,289.5],[256.455,-222.5],[-255.545,-222.5]],"c":true},"ix":2},"nm":"Caminho 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-255.545,-222.5],[256.455,-222.5],[256.455,289.5],[-255.545,289.5]],"c":true},"ix":2},"nm":"Caminho 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":2,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false},{"ty":"mm","mm":4,"nm":"Mesclar caminhos 2","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"tr","p":{"a":0,"k":[110.582,27.75],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":6,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":4,"s":[100],"e":[0]},{"t":14}],"ix":1},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":-3,"ix":3},"m":1,"ix":2,"nm":"Aparar caminhos 1","mn":"ADBE Vector Filter - Trim","hd":false},{"ty":"st","c":{"a":0,"k":[0.23137254902,0.647058823529,0.345098039216,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":5,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Traçado 1","mn":"ADBE Vector Graphic - Stroke","hd":false}],"ip":0,"op":90,"st":0,"bm":0},{"ddd":0,"ind":6,"ty":4,"nm":"panela 2","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":0,"s":[0],"e":[100]},{"t":9}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[149.925,197.5,0],"ix":2},"a":{"a":0,"k":[143.235,47.75,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[2.854,0.559],[0,0],[0.197,-2.328],[-5.896,-0.369],[-6.169,-0.264],[-0.728,-2.833],[-3.983,-13.859],[-3.697,-8.321],[-7.952,-1.308],[-6.447,-0.036],[-14.887,0],[-15.552,0.02],[-8.777,0.258],[-4.491,11.132],[-0.586,2.192],[-4.853,18.555],[-3.728,0.187],[-6.651,0.375],[-0.172,3.214]],"o":[[0,0],[-1.855,0.449],[-0.294,3.472],[6.161,0.386],[4.003,0.171],[3.58,13.924],[2.471,8.597],[2.569,5.782],[6.307,1.038],[14.886,0.083],[15.552,0],[8.786,-0.012],[15.381,-0.451],[0.862,-2.136],[4.955,-18.539],[0.713,-2.723],[6.654,-0.332],[4.02,-0.227],[0.131,-2.44]],"v":[[139.143,-47.5],[-139.292,-47.5],[-142.691,-43.703],[-134.774,-38.372],[-116.302,-37.118],[-109.899,-32.57],[-98.867,9.16],[-89.946,34.679],[-73.248,45.708],[-53.949,47.392],[-9.29,47.5],[37.366,47.453],[63.72,47.118],[93.278,29.351],[95.421,22.838],[110.176,-32.797],[116.329,-37.095],[136.264,-38.412],[142.854,-43.204]],"c":true},"ix":2},"nm":"Caminho 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-255.925,208.5],[256.075,208.5],[256.075,-303.5],[-255.925,-303.5]],"c":true},"ix":2},"nm":"Caminho 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-255.925,-303.5],[256.075,-303.5],[256.075,208.5],[-255.925,208.5]],"c":true},"ix":2},"nm":"Caminho 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"mm","mm":4,"nm":"Mesclar caminhos 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"tr","p":{"a":0,"k":[143.235,47.75],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.23137255013,0.647058844566,0.345098048449,1],"ix":4},"o":{"a":0,"k":32,"ix":5},"r":1,"nm":"Preenchimento 1","mn":"ADBE Vector Graphic - Fill","hd":false}],"ip":0,"op":90,"st":0,"bm":0},{"ddd":0,"ind":7,"ty":4,"nm":"panela","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[149.925,197.5,0],"ix":2},"a":{"a":0,"k":[143.235,47.75,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[2.854,0.559],[0,0],[0.197,-2.328],[-5.896,-0.369],[-6.169,-0.264],[-0.728,-2.833],[-3.983,-13.859],[-3.697,-8.321],[-7.952,-1.308],[-6.447,-0.036],[-14.887,0],[-15.552,0.02],[-8.777,0.258],[-4.491,11.132],[-0.586,2.192],[-4.853,18.555],[-3.728,0.187],[-6.651,0.375],[-0.172,3.214]],"o":[[0,0],[-1.855,0.449],[-0.294,3.472],[6.161,0.386],[4.003,0.171],[3.58,13.924],[2.471,8.597],[2.569,5.782],[6.307,1.038],[14.886,0.083],[15.552,0],[8.786,-0.012],[15.381,-0.451],[0.862,-2.136],[4.955,-18.539],[0.713,-2.723],[6.654,-0.332],[4.02,-0.227],[0.131,-2.44]],"v":[[139.143,-47.5],[-139.292,-47.5],[-142.691,-43.703],[-134.774,-38.372],[-116.302,-37.118],[-109.899,-32.57],[-98.867,9.16],[-89.946,34.679],[-73.248,45.708],[-53.949,47.392],[-9.29,47.5],[37.366,47.453],[63.72,47.118],[93.278,29.351],[95.421,22.838],[110.176,-32.797],[116.329,-37.095],[136.264,-38.412],[142.854,-43.204]],"c":true},"ix":2},"nm":"Caminho 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-255.925,208.5],[256.075,208.5],[256.075,-303.5],[-255.925,-303.5]],"c":true},"ix":2},"nm":"Caminho 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-255.925,-303.5],[256.075,-303.5],[256.075,208.5],[-255.925,208.5]],"c":true},"ix":2},"nm":"Caminho 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"mm","mm":4,"nm":"Mesclar caminhos 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"tr","p":{"a":0,"k":[143.235,47.75],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transformar"}],"nm":"Grupo 1","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":0,"s":[100],"e":[0]},{"t":9}],"ix":1},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":95,"ix":3},"m":1,"ix":2,"nm":"Aparar caminhos 1","mn":"ADBE Vector Filter - Trim","hd":false},{"ty":"st","c":{"a":0,"k":[0.23137254902,0.647058823529,0.345098039216,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":6,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Traçado 1","mn":"ADBE Vector Graphic - Stroke","hd":false}],"ip":0,"op":90,"st":0,"bm":0}],"markers":[]}
\ No newline at end of file
diff --git a/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/done.json b/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/done.json
deleted file mode 100644 (file)
index a4b1196..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"v":"4.11.1","fr":29.9700012207031,"ip":0,"op":76.0000030955435,"w":70,"h":70,"nm":"Comp 1","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Shape Layer 2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[35,35,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.667,0.667,0.667],"y":[1,1,1]},"o":{"x":[0.333,0.333,0.333],"y":[0,0,0]},"n":["0p667_1_0p333_0","0p667_1_0p333_0","0p667_1_0p333_0"],"t":33,"s":[0,0,100],"e":[120,120,100]},{"i":{"x":[0.667,0.667,0.667],"y":[1,1,1]},"o":{"x":[0.333,0.333,0.333],"y":[0,0,0]},"n":["0p667_1_0p333_0","0p667_1_0p333_0","0p667_1_0p333_0"],"t":46,"s":[120,120,100],"e":[100,100,100]},{"t":52.0000021180034}],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[-7,1.438],[-2.656,5.781],[7.422,-4.297]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":3,"ix":5},"lc":2,"lj":2,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":0,"k":0,"ix":1},"e":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":33,"s":[0],"e":[100]},{"t":52.0000021180034}],"ix":2},"o":{"a":0,"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":0,"op":450.000018328876,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Shape Layer 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[35,35,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.667,0.667,0.667],"y":[1,1,1]},"o":{"x":[0.333,0.333,0.333],"y":[0,0,0]},"n":["0p667_1_0p333_0","0p667_1_0p333_0","0p667_1_0p333_0"],"t":18,"s":[0,0,100],"e":[120,120,100]},{"i":{"x":[0.667,0.667,0.667],"y":[1,1,1]},"o":{"x":[0.333,0.333,0.333],"y":[0,0,0]},"n":["0p667_1_0p333_0","0p667_1_0p333_0","0p667_1_0p333_0"],"t":33,"s":[120,120,100],"e":[80,80,100]},{"i":{"x":[0.667,0.667,0.667],"y":[1,1,1]},"o":{"x":[0.333,0.333,0.333],"y":[0,0,0]},"n":["0p667_1_0p333_0","0p667_1_0p333_0","0p667_1_0p333_0"],"t":41,"s":[80,80,100],"e":[110,110,100]},{"i":{"x":[0.667,0.667,0.667],"y":[1,1,1]},"o":{"x":[0.333,0.333,0.333],"y":[0,0,0]},"n":["0p667_1_0p333_0","0p667_1_0p333_0","0p667_1_0p333_0"],"t":49,"s":[110,110,100],"e":[100,100,100]},{"t":52.0000021180034}],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[13.015,0],[0,-13.015],[-13.015,0],[0,13.015]],"o":[[-13.015,0],[0,13.015],[13.015,0],[0,-13.015]],"v":[[0,-23.566],[-23.566,0],[0,23.566],[23.566,0]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.898039215686,0.898039215686,0.898039215686,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0.760784313725,0.2,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[105.535,105.535],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":450.000018328876,"st":0,"bm":0}]}
\ No newline at end of file
diff --git a/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/emoji_wink.json b/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/emoji_wink.json
deleted file mode 100644 (file)
index 29b39a5..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"v":"4.5.7","fr":30,"ip":0,"op":60,"w":100,"h":100,"ddd":0,"assets":[{"id":"comp_38","layers":[{"ddd":0,"ind":0,"ty":4,"nm":"round_normal","ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[50,50,0]},"a":{"a":0,"k":[-252,-412,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"a":0,"k":{"i":[[-17.673,0],[0,-17.673],[17.673,0],[0,17.673]],"o":[[17.673,0],[0,17.673],[-17.673,0],[0,-17.673]],"v":[[-252,-444],[-220,-412],[-252,-380],[-284,-412]],"c":true}},"nm":"Path 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[1,0.88,0.59,1]},"o":{"a":0,"k":100},"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"mn":"ADBE Vector Group"}],"ip":0,"op":300,"st":0,"bm":0,"sr":1}]}],"layers":[{"ddd":0,"ind":0,"ty":4,"nm":"eyes_normal","parent":2,"ks":{"o":{"a":0,"k":100},"r":{"a":0,"k":0},"p":{"a":0,"k":[50,45.5,0]},"a":{"a":0,"k":[-252,-416.5,0]},"s":{"a":1,"k":[{"i":{"x":[0.516,0.831,0.667],"y":[0.516,1,0.667]},"o":{"x":[0.75,0.705,0.333],"y":[0.75,0,0.333]},"n":["0p516_0p516_0p75_0p75","0p831_1_0p705_0","0p667_0p667_0p333_0p333"],"t":40,"s":[100,100,100],"e":[100,0,100]},{"i":{"x":[0.667,0.667,0.667],"y":[0.667,1,0.667]},"o":{"x":[0.333,0.333,0.333],"y":[0.333,0,0.333]},"n":["0p667_0p667_0p333_0p333","0p667_1_0p333_0","0p667_0p667_0p333_0p333"],"t":45,"s":[100,0,100],"e":[100,110,100]},{"i":{"x":[0.298,0.276,0.667],"y":[0.298,1,0.667]},"o":{"x":[0.038,0.105,0.333],"y":[0.038,0,0.333]},"n":["0p298_0p298_0p038_0p038","0p276_1_0p105_0","0p667_0p667_0p333_0p333"],"t":50,"s":[100,110,100],"e":[100,98,100]},{"i":{"x":[0.667,0.667,0.667],"y":[0.667,1,0.667]},"o":{"x":[0.333,0.333,0.333],"y":[0.333,0,0.333]},"n":["0p667_0p667_0p333_0p333","0p667_1_0p333_0","0p667_0p667_0p333_0p333"],"t":55,"s":[100,98,100],"e":[100,100,100]},{"t":60}]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"a":1,"k":[{"i":{"x":0.313,"y":1},"o":{"x":0.467,"y":0},"n":"0p313_1_0p467_0","t":6,"s":[{"i":[[-1.933,0],[0,-1.933],[1.933,0],[0,1.933]],"o":[[1.933,0],[0,1.933],[-1.933,0],[0,-1.933]],"v":[[-237.5,-420],[-234,-416.5],[-237.5,-413],[-241,-416.5]],"c":true}],"e":[{"i":[[-1.933,0],[-0.312,-1.313],[1.933,0],[0,1.062]],"o":[[1.933,0],[0.174,0.732],[-1.933,0],[0,-1.25]],"v":[[-237.437,-418],[-231.25,-415.875],[-237.5,-416.938],[-243.188,-415.937]],"c":true}]},{"i":{"x":0.395,"y":1},"o":{"x":0.716,"y":0},"n":"0p395_1_0p716_0","t":16,"s":[{"i":[[-1.933,0],[-0.312,-1.313],[1.933,0],[0,1.062]],"o":[[1.933,0],[0.174,0.732],[-1.933,0],[0,-1.25]],"v":[[-237.437,-418],[-231.25,-415.875],[-237.5,-416.938],[-243.188,-415.937]],"c":true}],"e":[{"i":[[-1.933,0],[0,-1.933],[1.933,0],[0,1.933]],"o":[[1.933,0],[0,1.933],[-1.933,0],[0,-1.933]],"v":[[-237.5,-420],[-234,-416.5],[-237.5,-413],[-241,-416.5]],"c":true}]},{"t":29}]},"nm":"Path 1","mn":"ADBE Vector Shape - Group"},{"ind":1,"ty":"sh","ks":{"a":0,"k":{"i":[[-1.933,0],[0,-1.933],[1.933,0],[0,1.933]],"o":[[1.933,0],[0,1.933],[-1.933,0],[0,-1.933]],"v":[[-266.5,-420],[-263,-416.5],[-266.5,-413],[-270,-416.5]],"c":true}},"nm":"Path 2","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0.33,0.33,0.28,1]},"o":{"a":0,"k":100},"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":4,"mn":"ADBE Vector Group"}],"ip":0,"op":61,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":1,"ty":4,"nm":"mouth_smile","parent":2,"ks":{"o":{"a":0,"k":100},"r":{"a":1,"k":[{"i":{"x":[0.25],"y":[1]},"o":{"x":[0.75],"y":[0]},"n":["0p25_1_0p75_0"],"t":4,"s":[0],"e":[-15]},{"i":{"x":[0.25],"y":[1]},"o":{"x":[0.75],"y":[0]},"n":["0p25_1_0p75_0"],"t":15,"s":[-15],"e":[0]},{"t":30}]},"p":{"a":0,"k":[50.862,57.489,0]},"a":{"a":0,"k":[-251.138,-404.511,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"a":1,"k":[{"i":{"x":0.292,"y":1},"o":{"x":0.506,"y":0},"n":"0p292_1_0p506_0","t":0,"s":[{"i":[[6.254,0],[2.91,1.715],[-0.616,0.558],[-0.707,-0.436],[-2.276,0],[-3.615,1.995],[-0.52,-0.71],[0.737,-0.384]],"o":[[-6.249,0],[-0.716,-0.422],[0.615,-0.558],[3.273,2.017],[2.662,0],[0.728,-0.402],[0.324,0.602],[-3.252,1.696]],"v":[[-252.006,-391.01],[-263.629,-394.434],[-263.522,-396.373],[-261.398,-396.454],[-252.006,-394.02],[-242.635,-396.433],[-240.261,-396.227],[-240.405,-394.414]],"c":true}],"e":[{"i":[[6.233,0],[4.195,4.639],[-0.616,0.558],[-0.558,-0.615],[-5.401,0],[-3.206,6.717],[-0.615,-0.557],[0.338,-0.759]],"o":[[-6.249,0],[-0.557,-0.616],[0.615,-0.558],[3.626,4.01],[4.636,0],[0.358,-0.75],[0.616,0.557],[-2.811,6.323]],"v":[[-252.044,-390.197],[-266.129,-396.746],[-266.022,-398.873],[-263.898,-398.767],[-252.076,-392.959],[-239.687,-401.031],[-237.564,-401.138],[-237.457,-399.012]],"c":true}]},{"i":{"x":0.564,"y":1},"o":{"x":0.571,"y":0},"n":"0p564_1_0p571_0","t":15,"s":[{"i":[[6.233,0],[4.195,4.639],[-0.616,0.558],[-0.558,-0.615],[-5.401,0],[-3.206,6.717],[-0.615,-0.557],[0.338,-0.759]],"o":[[-6.249,0],[-0.557,-0.616],[0.615,-0.558],[3.626,4.01],[4.636,0],[0.358,-0.75],[0.616,0.557],[-2.811,6.323]],"v":[[-252.044,-390.197],[-266.129,-396.746],[-266.022,-398.873],[-263.898,-398.767],[-252.076,-392.959],[-239.687,-401.031],[-237.564,-401.138],[-237.457,-399.012]],"c":true}],"e":[{"i":[[6.254,0],[2.91,1.715],[-0.616,0.558],[-0.707,-0.436],[-2.276,0],[-3.615,1.995],[-0.52,-0.71],[0.737,-0.384]],"o":[[-6.249,0],[-0.716,-0.422],[0.615,-0.558],[3.273,2.017],[2.662,0],[0.728,-0.402],[0.324,0.602],[-3.252,1.696]],"v":[[-252.006,-391.01],[-263.629,-394.434],[-263.522,-396.373],[-261.398,-396.454],[-252.006,-394.02],[-242.635,-396.433],[-240.261,-396.227],[-240.405,-394.414]],"c":true}]},{"i":{"x":0.681,"y":0.833},"o":{"x":0.546,"y":0},"n":"0p681_0p833_0p546_0","t":30,"s":[{"i":[[6.254,0],[2.91,1.715],[-0.616,0.558],[-0.707,-0.436],[-2.276,0],[-3.615,1.995],[-0.52,-0.71],[0.737,-0.384]],"o":[[-6.249,0],[-0.716,-0.422],[0.615,-0.558],[3.273,2.017],[2.662,0],[0.728,-0.402],[0.324,0.602],[-3.252,1.696]],"v":[[-252.006,-391.01],[-263.629,-394.434],[-263.522,-396.373],[-261.398,-396.454],[-252.006,-394.02],[-242.635,-396.433],[-240.261,-396.227],[-240.405,-394.414]],"c":true}],"e":[{"i":[[6.254,0],[2.91,1.715],[-0.616,0.558],[-0.734,-0.389],[-2.276,0],[-3.487,2.248],[-0.52,-0.71],[0.673,-0.488]],"o":[[-6.249,0],[-0.716,-0.422],[0.615,-0.558],[3.089,1.638],[2.662,0],[0.699,-0.451],[0.324,0.602],[-2.905,2.105]],"v":[[-252.006,-391.01],[-264.507,-394.555],[-264.401,-396.494],[-262.276,-396.576],[-252.006,-394.02],[-242.076,-396.998],[-239.702,-396.793],[-239.845,-394.98]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.497,"y":0.261},"n":"0p667_1_0p497_0p261","t":40,"s":[{"i":[[6.254,0],[2.91,1.715],[-0.616,0.558],[-0.734,-0.389],[-2.276,0],[-3.487,2.248],[-0.52,-0.71],[0.673,-0.488]],"o":[[-6.249,0],[-0.716,-0.422],[0.615,-0.558],[3.089,1.638],[2.662,0],[0.699,-0.451],[0.324,0.602],[-2.905,2.105]],"v":[[-252.006,-391.01],[-264.507,-394.555],[-264.401,-396.494],[-262.276,-396.576],[-252.006,-394.02],[-242.076,-396.998],[-239.702,-396.793],[-239.845,-394.98]],"c":true}],"e":[{"i":[[6.254,0],[2.91,1.715],[-0.616,0.558],[-0.707,-0.436],[-2.276,0],[-3.615,1.995],[-0.52,-0.71],[0.737,-0.384]],"o":[[-6.249,0],[-0.716,-0.422],[0.615,-0.558],[3.273,2.017],[2.662,0],[0.728,-0.402],[0.324,0.602],[-3.252,1.696]],"v":[[-252.006,-391.01],[-263.629,-394.434],[-263.522,-396.373],[-261.398,-396.454],[-252.006,-394.02],[-242.635,-396.433],[-240.261,-396.227],[-240.405,-394.414]],"c":true}]},{"t":60}]},"nm":"Path 1","mn":"ADBE Vector Shape - Group"},{"ty":"fl","c":{"a":0,"k":[0.33,0.33,0.28,1]},"o":{"a":0,"k":100},"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill"},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"mn":"ADBE Vector Group"}],"ip":0,"op":61,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":2,"ty":0,"nm":"base_normal","refId":"comp_38","ks":{"o":{"a":0,"k":100},"r":{"a":1,"k":[{"i":{"x":[0.273],"y":[1]},"o":{"x":[0.464],"y":[0]},"n":["0p273_1_0p464_0"],"t":4,"s":[0],"e":[13]},{"i":{"x":[0.532],"y":[1]},"o":{"x":[0.578],"y":[0]},"n":["0p532_1_0p578_0"],"t":19,"s":[13],"e":[0]},{"t":40}]},"p":{"a":0,"k":[50,50,0]},"a":{"a":0,"k":[50,50,0]},"s":{"a":0,"k":[100,100,100]}},"ao":0,"w":100,"h":100,"ip":0,"op":61,"st":0,"bm":0,"sr":1}]}
\ No newline at end of file
diff --git a/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/fingerprint_success.json b/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/fingerprint_success.json
deleted file mode 100644 (file)
index e036550..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"v":"5.1.16","fr":60,"ip":0,"op":154,"w":800,"h":600,"nm":"Fingerprint Added","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"check-mark","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":114.999,"s":[0],"e":[100]},{"t":125.999075247122}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[478,200,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.833,0.833,0.833],"y":[0.833,0.833,0.833]},"o":{"x":[0.167,0.167,0.167],"y":[0.167,0.167,0.167]},"n":["0p833_0p833_0p167_0p167","0p833_0p833_0p167_0p167","0p833_0p833_0p167_0p167"],"t":112.999,"s":[40.225,40.225,100],"e":[90.225,90.225,100]},{"t":128.999075247122}],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.58,0.581],[0,0],[-0.586,0.586],[0,0],[-0.586,-0.586],[0,0],[0,0],[-0.578,-0.593],[0,0],[0.593,-0.578],[0,0]],"o":[[0,0],[-0.586,-0.586],[0,0],[0.586,-0.586],[0,0],[0,0],[0.593,-0.578],[0,0],[0.578,0.593],[0,0],[-0.588,0.573]],"v":[[-6.426,14.748],[-20.11,1.063],[-20.11,-1.059],[-16.575,-4.594],[-14.454,-4.594],[-5.306,4.553],[14.506,-14.756],[16.627,-14.729],[20.117,-11.148],[20.09,-9.027],[-4.318,14.761]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":77,"op":757.023023023023,"st":-143.877877877878,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"circle","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[478,200,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.833,0.833,0.833],"y":[0.833,0.833,0.833]},"o":{"x":[0.167,0.167,0.167],"y":[0.167,0.167,0.167]},"n":["0p833_0p833_0p167_0p167","0p833_0p833_0p167_0p167","0p833_0p833_0p167_0p167"],"t":91,"s":[118,118,100],"e":[83.4,83.4,100]},{"i":{"x":[0.833,0.833,0.833],"y":[0.833,0.833,0.833]},"o":{"x":[0.167,0.167,0.167],"y":[0.167,0.167,0.167]},"n":["0p833_0p833_0p167_0p167","0p833_0p833_0p167_0p167","0p833_0p833_0p167_0p167"],"t":104,"s":[83.4,83.4,100],"e":[100,100,100]},{"t":114}],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0,"y":1},"o":{"x":0.167,"y":0.167},"n":"0_1_0p167_0p167","t":506.533,"s":[{"i":[[27.5,0],[0,0],[0,27.5],[0,0],[-27.5,0],[0,0],[0,-27.5],[0,0]],"o":[[0,0],[-27.5,0],[0,0],[0,-27.5],[0,0],[27.5,0],[0,0],[0,27.5]],"v":[[0,50],[0,50],[-50,0],[-50,0],[0,-50],[0,-50],[50,0],[50,0]],"c":true}],"e":[{"i":[[27.5,0],[0,0],[0,27.5],[0,0],[-27.5,0],[0,0],[0,-27.5],[0,0]],"o":[[0,0],[-27.5,0],[0,0],[0,-27.5],[0,0],[27.5,0],[0,0],[0,27.5]],"v":[[77.5,50],[-77.5,50],[-127.5,0],[-127.5,0],[-77.5,-50],[77.5,-50],[127.5,0],[127.5,0]],"c":true}]},{"t":526.552734375}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.227450980392,0.717647058824,0.23137254902,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":74,"op":574.600600600601,"st":-26,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"bg","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0_1_0p167_0p167"],"t":460.461,"s":[35],"e":[0]},{"t":490.490234375}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[400.5,299.5,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-11.083,111.167],[-18.417,129.833]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.509803921569,0.427450980392,0.827450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 19","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,-31.333],[0,0]],"o":[[0,0],[0,26.833],[0,0]],"v":[[-2.917,0.375],[1.25,47.375],[-4.75,89.625]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.509803921569,0.427450980392,0.827450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0.5,-1],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 18","np":3,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[16.5,-45.333]],"o":[[0,0],[0,0]],"v":[[21.083,65.167],[4.75,129.833]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.509803921569,0.427450980392,0.827450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 17","np":3,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,34.5],[0.343,7.079],[-15.143,3.994],[-2.486,-6.934],[0,0]],"o":[[0,0],[0,-34.5],[-0.312,-6.447],[15.167,-4],[4.909,13.694],[0,0]],"v":[[-40.371,123.25],[-20.538,49.917],[-24.38,1.838],[-7.871,-22.25],[18.462,-7.583],[22.962,42.625]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.509803921569,0.427450980392,0.827450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 16","np":3,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-11.333,0],[-9.167,-11.792],[0,-58.958],[0,0]],"o":[[0,0],[10.833,0],[7.836,10.081],[0,35.958],[0,0]],"v":[[-18.417,-41.083],[-2.583,-43.75],[30.25,-27.917],[44.417,52.625],[30.25,123.75]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.509803921569,0.427450980392,0.827450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[-0.5,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 15","np":3,"cix":2,"ix":5,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-2.218,33.169],[0,12.439],[0,0]],"o":[[0,0],[1.75,-26.167],[0,-22.363],[0,0]],"v":[[-59.375,115.875],[-41.875,56.792],[-45.744,2.238],[-35.625,-28.375]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.509803921569,0.427450980392,0.827450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 14","np":3,"cix":2,"ix":6,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,-51.333],[0,0]],"o":[[0,0],[0,41.022],[0,0]],"v":[[57.417,-21.5],[65.083,46.5],[55.917,114.5]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.509803921569,0.427450980392,0.827450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 13","np":3,"cix":2,"ix":7,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.5,13],[0,15.5],[-25.188,12.89],[0,0]],"o":[[0,0],[-0.5,-13],[0,-15.5],[49.667,-25.417],[0,0]],"v":[[-64.25,56.042],[-63.5,32.625],[-67.333,-1.875],[-34.167,-57.125],[48.333,-40.708]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.509803921569,0.427450980392,0.827450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 12","np":3,"cix":2,"ix":8,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-2.5,11.25]],"o":[[0,0],[0,0]],"v":[[-23,35.875],[-12,9.125]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.509803921569,0.427450980392,0.827450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[-56,68.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 11","np":3,"cix":2,"ix":9,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[25.588,51.877],[0.253,0.286]],"o":[[-0.862,-0.039],[-12.167,-24.667],[0,0]],"v":[[83.122,95.5],[73.789,-41.833],[39.122,-75.5]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.509803921569,0.427450980392,0.827450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 10","np":3,"cix":2,"ix":10,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[37.69,-39.496],[0.227,-12.901],[0,-12.5],[0,0]],"o":[[0,0],[-22.167,23.229],[-0.229,12.998],[0,29.875],[0,0]],"v":[[18.047,-83.903],[-66.12,-59.632],[-88.229,0.347],[-84.703,39.347],[-95.703,89.597]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.509803921569,0.427450980392,0.827450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 9","np":3,"cix":2,"ix":11,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[1.346,-17.25]],"o":[[0,0],[0,0]],"v":[[108.577,39.125],[107.577,65.875]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.509803921569,0.427450980392,0.827450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 8","np":3,"cix":2,"ix":12,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ty":"st","c":{"a":0,"k":[0.509803921569,0.427450980392,0.827450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 7","np":2,"cix":2,"ix":13,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-52.475,-34.419],[0,0],[0,0]],"o":[[0,0],[46.5,30.5],[0,0],[0,0]],"v":[[-44.5,-100.374],[58.25,-89.29],[106.75,6.46],[107.5,16.21]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.509803921569,0.427450980392,0.827450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 6","np":3,"cix":2,"ix":14,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[2,18],[0,15.375],[-45.25,31.75]],"o":[[0,0],[-2,-18],[0,-15.375],[0,0]],"v":[[-111.125,71.625],[-106.125,41.625],[-110.125,3],[-64.875,-88.125]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.509803921569,0.427450980392,0.827450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 5","np":3,"cix":2,"ix":15,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[35.5,34.75],[0,0]],"o":[[0,0],[-34.746,-34.012],[0,0]],"v":[[126.531,-3.938],[89.281,-91.854],[17.531,-127.937]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.509803921569,0.427450980392,0.827450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 4","np":3,"cix":2,"ix":16,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ty":"st","c":{"a":0,"k":[0.509803921569,0.427450980392,0.827450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 3","np":2,"cix":2,"ix":17,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[31.5,-19.5],[0,0]],"o":[[0,0],[-31.5,19.5],[0,0]],"v":[[-4.75,-129.937],[-71,-110.687],[-118.75,-56.937]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.509803921569,0.427450980392,0.827450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 2","np":3,"cix":2,"ix":18,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,-22.25],[0,0]],"o":[[0,0],[0,22.25],[0,0]],"v":[[-128.25,-36.875],[-133.5,-0.125],[-126.5,40.375]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.509803921569,0.427450980392,0.827450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":19,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":0,"k":0,"ix":1},"e":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":0,"s":[0],"e":[100]},{"t":34}],"ix":2},"o":{"a":0,"k":0,"ix":3},"m":1,"ix":20,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":"Scan","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0_1_0p167_0p167"],"t":338.338,"s":[100],"e":[0]},{"t":368.369140625}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[400.5,299.5,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-11.083,111.167],[-18.417,129.833]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.294117647059,0.23137254902,0.658823529412,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 19","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,-31.333],[0,0]],"o":[[0,0],[0,26.833],[0,0]],"v":[[-2.917,0.375],[1.25,47.375],[-4.75,89.625]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.294117647059,0.23137254902,0.658823529412,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0.5,-1],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 18","np":3,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[16.5,-45.333]],"o":[[0,0],[0,0]],"v":[[21.083,65.167],[4.75,129.833]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.294117647059,0.23137254902,0.658823529412,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 17","np":3,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,34.5],[0.343,7.079],[-15.143,3.994],[-2.486,-6.934],[0,0]],"o":[[0,0],[0,-34.5],[-0.312,-6.447],[15.167,-4],[4.909,13.694],[0,0]],"v":[[-40.371,123.25],[-20.538,49.917],[-24.38,1.838],[-7.871,-22.25],[18.462,-7.583],[22.962,42.625]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.294117647059,0.23137254902,0.658823529412,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 16","np":3,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-11.333,0],[-9.167,-11.792],[0,-58.958],[0,0]],"o":[[0,0],[10.833,0],[7.836,10.081],[0,35.958],[0,0]],"v":[[-18.417,-41.083],[-2.583,-43.75],[30.25,-27.917],[44.417,52.625],[30.25,123.75]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.294117647059,0.23137254902,0.658823529412,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[-0.5,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 15","np":3,"cix":2,"ix":5,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-2.218,33.169],[0,12.439],[0,0]],"o":[[0,0],[1.75,-26.167],[0,-22.363],[0,0]],"v":[[-59.375,115.875],[-41.875,56.792],[-45.744,2.238],[-35.625,-28.375]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.294117647059,0.23137254902,0.658823529412,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 14","np":3,"cix":2,"ix":6,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,-51.333],[0,0]],"o":[[0,0],[0,41.022],[0,0]],"v":[[57.417,-21.5],[65.083,46.5],[55.917,114.5]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.294117647059,0.23137254902,0.658823529412,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 13","np":3,"cix":2,"ix":7,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.5,13],[0,15.5],[-25.188,12.89],[0,0]],"o":[[0,0],[-0.5,-13],[0,-15.5],[49.667,-25.417],[0,0]],"v":[[-64.25,56.042],[-63.5,32.625],[-67.333,-1.875],[-34.167,-57.125],[48.333,-40.708]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.294117647059,0.23137254902,0.658823529412,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 12","np":3,"cix":2,"ix":8,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-2.5,11.25]],"o":[[0,0],[0,0]],"v":[[-23,35.875],[-12,9.125]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.294117647059,0.23137254902,0.658823529412,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[-56,68.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 11","np":3,"cix":2,"ix":9,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[25.588,51.877],[0.253,0.286]],"o":[[-0.862,-0.039],[-12.167,-24.667],[0,0]],"v":[[83.122,95.5],[73.789,-41.833],[39.122,-75.5]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.294117647059,0.23137254902,0.658823529412,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 10","np":3,"cix":2,"ix":10,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[37.69,-39.496],[0.227,-12.901],[0,-12.5],[0,0]],"o":[[0,0],[-22.167,23.229],[-0.229,12.998],[0,29.875],[0,0]],"v":[[18.047,-83.903],[-66.12,-59.632],[-88.229,0.347],[-84.703,39.347],[-95.703,89.597]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.294117647059,0.23137254902,0.658823529412,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 9","np":3,"cix":2,"ix":11,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[1.346,-17.25]],"o":[[0,0],[0,0]],"v":[[108.577,39.125],[107.577,65.875]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.294117647059,0.23137254902,0.658823529412,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 8","np":3,"cix":2,"ix":12,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ty":"st","c":{"a":0,"k":[0.294117647059,0.23137254902,0.658823529412,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 7","np":2,"cix":2,"ix":13,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-52.475,-34.419],[0,0],[0,0]],"o":[[0,0],[46.5,30.5],[0,0],[0,0]],"v":[[-44.5,-100.374],[58.25,-89.29],[106.75,6.46],[107.5,16.21]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.294117647059,0.23137254902,0.658823529412,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 6","np":3,"cix":2,"ix":14,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[2,18],[0,15.375],[-45.25,31.75]],"o":[[0,0],[-2,-18],[0,-15.375],[0,0]],"v":[[-111.125,71.625],[-106.125,41.625],[-110.125,3],[-64.875,-88.125]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.294117647059,0.23137254902,0.658823529412,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 5","np":3,"cix":2,"ix":15,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[35.5,34.75],[0,0]],"o":[[0,0],[-34.746,-34.012],[0,0]],"v":[[126.531,-3.938],[89.281,-91.854],[17.531,-127.937]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.294117647059,0.23137254902,0.658823529412,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 4","np":3,"cix":2,"ix":16,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ty":"st","c":{"a":0,"k":[0.294117647059,0.23137254902,0.658823529412,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 3","np":2,"cix":2,"ix":17,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[31.5,-19.5],[0,0]],"o":[[0,0],[-31.5,19.5],[0,0]],"v":[[-4.75,-129.937],[-71,-110.687],[-118.75,-56.937]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.294117647059,0.23137254902,0.658823529412,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 2","np":3,"cix":2,"ix":18,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,-22.25],[0,0]],"o":[[0,0],[0,22.25],[0,0]],"v":[[-128.25,-36.875],[-133.5,-0.125],[-126.5,40.375]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.294117647059,0.23137254902,0.658823529412,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":19,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":0,"k":0,"ix":1},"e":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":38,"s":[0],"e":[100]},{"t":96}],"ix":2},"o":{"a":0,"k":0,"ix":3},"m":1,"ix":20,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0}],"markers":[]}
\ No newline at end of file
diff --git a/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/heart.json b/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/heart.json
deleted file mode 100644 (file)
index 08b2039..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"v":"5.1.7","fr":29.9700012207031,"ip":0,"op":24.00000097754,"w":100,"h":100,"nm":"heart","ddd":0,"assets":[{"id":"comp_4","layers":[{"ddd":0,"ind":1,"ty":0,"nm":"Shape Layer 2 Comp 2","refId":"comp_5","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":180,"ix":10},"p":{"a":0,"k":[50,50,0],"ix":2},"a":{"a":0,"k":[50,50,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":100,"h":100,"ip":0,"op":900.000036657751,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":0,"nm":"Shape Layer 2 Comp 2","refId":"comp_5","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":130,"ix":10},"p":{"a":0,"k":[50,50,0],"ix":2},"a":{"a":0,"k":[50,50,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":100,"h":100,"ip":0,"op":900.000036657751,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":0,"nm":"Shape Layer 2 Comp 2","refId":"comp_5","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":90,"ix":10},"p":{"a":0,"k":[50,50,0],"ix":2},"a":{"a":0,"k":[50,50,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":100,"h":100,"ip":0,"op":900.000036657751,"st":0,"bm":0},{"ddd":0,"ind":4,"ty":0,"nm":"Shape Layer 2 Comp 2","refId":"comp_5","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":45,"ix":10},"p":{"a":0,"k":[50,50,0],"ix":2},"a":{"a":0,"k":[50,50,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":100,"h":100,"ip":0,"op":900.000036657751,"st":0,"bm":0},{"ddd":0,"ind":5,"ty":0,"nm":"Shape Layer 2 Comp 2","refId":"comp_5","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":-135,"ix":10},"p":{"a":0,"k":[50,50,0],"ix":2},"a":{"a":0,"k":[50,50,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":100,"h":100,"ip":0,"op":900.000036657751,"st":0,"bm":0},{"ddd":0,"ind":6,"ty":0,"nm":"Shape Layer 2 Comp 2","refId":"comp_5","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":-90,"ix":10},"p":{"a":0,"k":[50,50,0],"ix":2},"a":{"a":0,"k":[50,50,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":100,"h":100,"ip":0,"op":900.000036657751,"st":0,"bm":0},{"ddd":0,"ind":7,"ty":0,"nm":"Shape Layer 2 Comp 2","refId":"comp_5","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":-45,"ix":10},"p":{"a":0,"k":[50,50,0],"ix":2},"a":{"a":0,"k":[50,50,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":100,"h":100,"ip":0,"op":900.000036657751,"st":0,"bm":0},{"ddd":0,"ind":8,"ty":0,"nm":"Shape Layer 2 Comp 2","refId":"comp_5","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[50,50,0],"ix":2},"a":{"a":0,"k":[50,50,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":100,"h":100,"ip":0,"op":900.000036657751,"st":0,"bm":0}]},{"id":"comp_5","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Shape Layer 4","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0.281]},"n":["0p667_1_0p333_0p281"],"t":3,"s":[0],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":9,"s":[100],"e":[0]},{"t":17.0000006924242}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.667,"y":0.567},"o":{"x":0.333,"y":0.406},"n":"0p667_0p567_0p333_0p406","t":3,"s":[39.878,39.582,0],"e":[39.878,22.253,0],"to":[0,-0.83333331346512,0],"ti":[0,2.48720121383667,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0.5},"n":"0p667_1_0p333_0p5","t":9,"s":[39.878,22.253,0],"e":[39.878,2.25,0],"to":[0,-8.33440494537354,0],"ti":[0,3.3337619304657,0]},{"t":17.0000006924242}],"ix":2},"a":{"a":0,"k":[-0.122,-27.75,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.667,0.667,0.667],"y":[15.897,15.897,-17.409]},"o":{"x":[0.333,0.333,0.333],"y":[-44.172,-44.172,107.618]},"n":["0p667_15p897_0p333_-44p172","0p667_15p897_0p333_-44p172","0p667_-17p409_0p333_107p618"],"t":3,"s":[78.68,78.68,100],"e":[78,78,100]},{"i":{"x":[0.667,0.667,0.667],"y":[1,1,1]},"o":{"x":[0.333,0.333,0.333],"y":[-0.562,-0.562,24.545]},"n":["0p667_1_0p333_-0p562","0p667_1_0p333_-0p562","0p667_1_0p333_24p545"],"t":9,"s":[78,78,100],"e":[54,54,100]},{"t":17.0000006924242}],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[6.66,6.66],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"fl","c":{"a":0,"k":[0.909803921569,0.18431372549,0.56862745098,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-0.17,-26.594],"ix":2},"a":{"a":0,"k":[0,1.076],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":900.000036657751,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Shape Layer 3","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0.281]},"n":["0p667_1_0p333_0p281"],"t":0,"s":[0],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":6,"s":[100],"e":[0]},{"t":17.0000006924242}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.667,"y":0.567},"o":{"x":0.333,"y":0.406},"n":"0p667_0p567_0p333_0p406","t":0,"s":[49.878,39.582,0],"e":[49.878,22.253,0],"to":[0,-2.35414934158325,0],"ti":[0,2.48720121383667,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0.687},"n":"0p667_1_0p333_0p687","t":6,"s":[49.878,22.253,0],"e":[49.878,2.25,0],"to":[0,-8.33440494537354,0],"ti":[0,3.3337619304657,0]},{"t":17.0000006924242}],"ix":2},"a":{"a":0,"k":[-0.122,-27.75,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.667,0.667,0.667],"y":[15.897,15.897,-17.409]},"o":{"x":[0.333,0.333,0.333],"y":[-44.172,-44.172,107.618]},"n":["0p667_15p897_0p333_-44p172","0p667_15p897_0p333_-44p172","0p667_-17p409_0p333_107p618"],"t":0,"s":[78.68,78.68,100],"e":[78,78,100]},{"i":{"x":[0.667,0.667,0.667],"y":[1,1,1]},"o":{"x":[0.333,0.333,0.333],"y":[-0.773,-0.773,33.75]},"n":["0p667_1_0p333_-0p773","0p667_1_0p333_-0p773","0p667_1_0p333_33p75"],"t":6,"s":[78,78,100],"e":[54,54,100]},{"t":17.0000006924242}],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[6.66,6.66],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"fl","c":{"a":0,"k":[0.964705882353,0.309803921569,0.4,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-0.17,-26.594],"ix":2},"a":{"a":0,"k":[0,1.076],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":900.000036657751,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Shape Layer 2","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0.281]},"n":["0p667_1_0p333_0p281"],"t":5,"s":[0],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":11,"s":[100],"e":[0]},{"t":19.0000007738859}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.667,"y":0.567},"o":{"x":0.333,"y":0.406},"n":"0p667_0p567_0p333_0p406","t":5,"s":[59.878,39.582,0],"e":[59.878,22.253,0],"to":[0,-2.35414934158325,0],"ti":[0,2.48720121383667,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0.5},"n":"0p667_1_0p333_0p5","t":11,"s":[59.878,22.253,0],"e":[59.878,2.25,0],"to":[0,-8.33440494537354,0],"ti":[0,3.3337619304657,0]},{"t":19.0000007738859}],"ix":2},"a":{"a":0,"k":[-0.122,-27.75,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.667,0.667,0.667],"y":[15.897,15.897,-17.409]},"o":{"x":[0.333,0.333,0.333],"y":[-44.172,-44.172,107.618]},"n":["0p667_15p897_0p333_-44p172","0p667_15p897_0p333_-44p172","0p667_-17p409_0p333_107p618"],"t":5,"s":[78.68,78.68,100],"e":[78,78,100]},{"i":{"x":[0.667,0.667,0.667],"y":[1,1,1]},"o":{"x":[0.333,0.333,0.333],"y":[-0.562,-0.562,24.545]},"n":["0p667_1_0p333_-0p562","0p667_1_0p333_-0p562","0p667_1_0p333_24p545"],"t":11,"s":[78,78,100],"e":[54,54,100]},{"t":19.0000007738859}],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[6.66,6.66],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.868822583965,0.051056981554,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-0.17,-26.594],"ix":2},"a":{"a":0,"k":[0,1.076],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":5.00000020365417,"op":905.000036861406,"st":5.00000020365417,"bm":0}]}],"layers":[{"ddd":0,"ind":3,"ty":4,"nm":"Layer 2 Outlines","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[50.085,49.972,0],"ix":2},"a":{"a":0,"k":[20.392,17.022,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.667,0.667,0.667],"y":[1,1,1]},"o":{"x":[0.486,0.486,0.333],"y":[0,0,0]},"n":["0p667_1_0p486_0","0p667_1_0p486_0","0p667_1_0p333_0"],"t":0,"s":[0,0,100],"e":[119,119,100]},{"i":{"x":[0.576,0.576,0.667],"y":[1,1,1]},"o":{"x":[0.439,0.439,0.333],"y":[0,0,0]},"n":["0p576_1_0p439_0","0p576_1_0p439_0","0p667_1_0p333_0"],"t":5,"s":[119,119,100],"e":[82,82,100]},{"i":{"x":[0.288,0.288,0.667],"y":[1,1,1]},"o":{"x":[0.152,0.152,0.333],"y":[0,0,0]},"n":["0p288_1_0p152_0","0p288_1_0p152_0","0p667_1_0p333_0"],"t":10,"s":[82,82,100],"e":[100,100,100]},{"t":15.0000006109625}],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-2.008,2.091],[-2.887,0.06],[0,0],[-2.098,-2.123],[0,0],[0,0],[-3.003,0.063],[0,0],[-2.092,-2.008],[-0.059,-2.889],[2.542,-1.428],[0.178,8.815]],"o":[[2.007,-2.09],[0,0],[3.002,-0.062],[0,0],[0,0],[2.009,-2.205],[0,0],[2.89,-0.058],[2.09,2.008],[0.229,11.336],[-7.185,-3.885],[-0.059,-2.89]],"v":[[-17.06,-13.009],[-9.471,-16.342],[-9.465,-16.342],[-1.555,-13.145],[-0.209,-11.783],[1.081,-13.198],[8.851,-16.714],[8.855,-16.714],[16.579,-13.69],[19.913,-6.096],[0.38,16.772],[-20.083,-5.285]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.964999988032,0.310000011968,0.4,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[20.392,17.022],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":900.000036657751,"st":0,"bm":0},{"ddd":0,"ind":4,"ty":0,"nm":"Shape Layer 2 Comp 1","refId":"comp_4","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[50,50,0],"ix":2},"a":{"a":0,"k":[50,50,0],"ix":1},"s":{"a":0,"k":[86,86,100],"ix":6}},"ao":0,"w":100,"h":100,"ip":3.00000012219251,"op":903.000036779944,"st":3.00000012219251,"bm":0},{"ddd":0,"ind":6,"ty":1,"nm":"White Solid 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[50,50,0],"ix":2},"a":{"a":0,"k":[50,50,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"sw":100,"sh":100,"sc":"#ffffff","ip":0,"op":900.000036657751,"st":0,"bm":0}],"markers":[]}
\ No newline at end of file
diff --git a/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/icon_animation.json b/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/icon_animation.json
deleted file mode 100644 (file)
index c574f74..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"v":"5.1.13","fr":33.8690032958984,"ip":0,"op":90.000932593746,"w":276,"h":580,"nm":"IconAnimation","ddd":0,"assets":[{"id":"comp_0","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Shape Layer 2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[100,102,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[400,400,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-2.083,-0.067],[-0.067,2.085],[2.085,0.067],[0.068,-2.084]],"o":[[2.084,0.068],[0.067,-2.084],[-2.083,-0.068],[-0.067,2.085]],"v":[[-0.123,3.772],[3.774,0.12],[0.122,-3.773],[-3.774,-0.124]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[2.438,-16.813],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"head","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[1.66,4.158],[0.55,-0.255],[0.162,-0.111],[0,0],[0.052,-0.433],[0,0],[-0.72,-0.085],[-0.053,0],[-0.079,0.669],[0,0],[0,0]],"o":[[-0.122,0.001],[-0.175,0.062],[0,0],[-0.358,0.248],[0,0],[-0.083,0.72],[0.053,0.006],[0.656,0],[0,0],[0,0],[0,0]],"v":[[1.653,-16.626],[-0.169,-16.3],[-0.678,-16.043],[-6.499,-11.32],[-7.142,-10.25],[-7.54,-4.643],[-6.387,-3.183],[-6.23,-3.174],[-4.926,-4.334],[-4.207,-9.214],[-2.379,-10.24]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[1.219,-10.875],"ix":2},"a":{"a":0,"k":[1.219,-15.875],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":50.804,"s":[0],"e":[-40]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":60.964,"s":[-40],"e":[-71]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":76.205,"s":[-71],"e":[-40]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":86.366,"s":[-40],"e":[0]},{"t":101.607009887695}],"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"arm right","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.091,-0.063],[0,0],[-0.282,0],[-0.276,0.395],[0.644,0.449],[0,0],[0,0],[0.035,0.064]],"o":[[0.074,0.082],[0,0],[0.247,0.175],[0.448,0],[0.447,-0.644],[0,0],[0,0],[-0.291,-1.581],[-4.465,2.376]],"v":[[4.208,-6.719],[4.455,-6.499],[8.738,-3.549],[9.55,-3.292],[10.717,-3.899],[10.366,-5.878],[6.496,-8.672],[4.938,-13.658],[1.653,-16.626]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[1.313,-10.375],"ix":2},"a":{"a":0,"k":[1.313,-15.375],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":50.804,"s":[0],"e":[40]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":60.964,"s":[40],"e":[78]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":76.205,"s":[78],"e":[40]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":86.366,"s":[40],"e":[0]},{"t":101.607009887695}],"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"arm left","np":2,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":50.804,"s":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-10.646,13.483],[-10.407,15.601],[-9.466,15.932],[-8.288,15.362],[-2.648,8.873],[-2.389,8.435],[0.782,2.375]],"c":true}],"e":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-13.908,5.842],[-14.222,8.524],[-13.282,8.855],[-12.04,9.012],[-4.151,10.956],[-3.306,10.456],[0.782,2.375]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":60.964,"s":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-13.908,5.842],[-14.222,8.524],[-13.282,8.855],[-12.04,9.012],[-4.151,10.956],[-3.306,10.456],[0.782,2.375]],"c":true}],"e":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-9.071,14.817],[-8.832,16.934],[-7.892,17.265],[-6.713,16.695],[-2.648,8.873],[-2.389,8.435],[0.782,2.375]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":71.125,"s":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-9.071,14.817],[-8.832,16.934],[-7.892,17.265],[-6.713,16.695],[-2.648,8.873],[-2.389,8.435],[0.782,2.375]],"c":true}],"e":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-10.646,13.483],[-10.407,15.601],[-9.466,15.932],[-8.288,15.362],[-2.648,8.873],[-2.389,8.435],[0.782,2.375]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":76.205,"s":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-10.646,13.483],[-10.407,15.601],[-9.466,15.932],[-8.288,15.362],[-2.648,8.873],[-2.389,8.435],[0.782,2.375]],"c":true}],"e":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-9.071,14.817],[-8.832,16.934],[-7.892,17.265],[-6.713,16.695],[-2.648,8.873],[-2.389,8.435],[0.782,2.375]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":86.366,"s":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-9.071,14.817],[-8.832,16.934],[-7.892,17.265],[-6.713,16.695],[-2.648,8.873],[-2.389,8.435],[0.782,2.375]],"c":true}],"e":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-8.141,13.802],[-7.902,15.92],[-6.961,16.251],[-5.783,15.681],[-2.648,8.873],[-2.389,8.435],[0.782,2.375]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":96.527,"s":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-8.141,13.802],[-7.902,15.92],[-6.961,16.251],[-5.783,15.681],[-2.648,8.873],[-2.389,8.435],[0.782,2.375]],"c":true}],"e":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-10.646,13.483],[-10.407,15.601],[-9.466,15.932],[-8.288,15.362],[-2.648,8.873],[-2.389,8.435],[0.782,2.375]],"c":true}]},{"t":101.607009887695}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-0.063,2.75],"ix":2},"a":{"a":0,"k":[-0.063,-2.25],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":50.804,"s":[0],"e":[-42]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":60.964,"s":[-42],"e":[-57]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":71.125,"s":[-57],"e":[-59]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":76.205,"s":[-59],"e":[-25]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":86.366,"s":[-25],"e":[4]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":96.527,"s":[4],"e":[0]},{"t":101.607009887695}],"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"leg right","np":2,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":50.804,"s":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[0.248,0.813]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.566,6.553],[8.333,6.066],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[7.725,15.592],[9.191,16.678],[9.643,16.612],[10.662,14.693]],"c":true}],"e":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[0.248,0.813]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.566,6.553],[8.333,6.066],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[9.788,14.342],[11.253,15.428],[11.706,15.362],[12.724,13.443]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":60.964,"s":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[0.248,0.813]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.566,6.553],[8.333,6.066],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[9.788,14.342],[11.253,15.428],[11.706,15.362],[12.724,13.443]],"c":true}],"e":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[0.248,0.813]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.566,6.553],[8.333,6.066],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[9.788,14.342],[11.253,15.428],[11.706,15.362],[12.724,13.443]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":71.125,"s":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[0.248,0.813]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.566,6.553],[8.333,6.066],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[9.788,14.342],[11.253,15.428],[11.706,15.362],[12.724,13.443]],"c":true}],"e":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[0.248,0.813]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.566,6.553],[8.333,6.066],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[7.725,15.592],[9.191,16.678],[9.643,16.612],[10.662,14.693]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":76.205,"s":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[0.248,0.813]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.566,6.553],[8.333,6.066],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[7.725,15.592],[9.191,16.678],[9.643,16.612],[10.662,14.693]],"c":true}],"e":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[-0.146,0.395]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.884,7.314],[9.099,6.616],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[1.131,14.888],[2.597,15.974],[3.049,15.908],[4.628,14.457]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":86.366,"s":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[-0.146,0.395]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.884,7.314],[9.099,6.616],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[1.131,14.888],[2.597,15.974],[3.049,15.908],[4.628,14.457]],"c":true}],"e":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[0.248,0.813]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.566,6.553],[8.333,6.066],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[9.722,13.827],[11.188,14.913],[11.64,14.846],[12.659,12.927]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":96.527,"s":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[0.248,0.813]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.566,6.553],[8.333,6.066],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[9.722,13.827],[11.188,14.913],[11.64,14.846],[12.659,12.927]],"c":true}],"e":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[0.248,0.813]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.566,6.553],[8.333,6.066],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[7.725,15.592],[9.191,16.678],[9.643,16.612],[10.662,14.693]],"c":true}]},{"t":101.607009887695}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[1.094,3.281],"ix":2},"a":{"a":0,"k":[1.094,-1.719],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":50.804,"s":[0],"e":[34]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":60.964,"s":[34],"e":[64]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":71.125,"s":[64],"e":[60]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":76.205,"s":[60],"e":[18]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":86.366,"s":[18],"e":[4]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":96.527,"s":[4],"e":[0]},{"t":101.607009887695}],"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"leg left","np":2,"cix":2,"ix":5,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.013,0.152],[0,0],[-0.091,-0.063],[1.678,0.136],[0.55,-0.255],[0.162,-0.111],[0,0],[0,0],[-0.022,-0.203],[-1.843,0.062]],"o":[[0.034,-0.145],[0,0],[0.074,0.082],[0,0],[-0.65,-0.052],[-0.175,0.062],[0,0],[0,0],[-0.018,0.211],[0,0],[1.843,-0.062]],"v":[[3.59,-2.105],[3.664,-2.552],[4.208,-6.719],[4.455,-6.499],[1.653,-16.626],[-0.169,-16.3],[-0.678,-16.043],[-2.379,-10.24],[-2.626,-3.062],[-2.616,-2.439],[0.782,2.375]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"body","np":3,"cix":2,"ix":6,"mn":"ADBE Vector Group","hd":false}],"ip":50.8035049438477,"op":389.493537902832,"st":50.8035049438477,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Shape Layer 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[100,102,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[400,400,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-2.083,-0.067],[-0.067,2.085],[2.085,0.067],[0.068,-2.084]],"o":[[2.084,0.068],[0.067,-2.084],[-2.083,-0.068],[-0.067,2.085]],"v":[[-0.123,3.772],[3.774,0.12],[0.122,-3.773],[-3.774,-0.124]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[2.438,-16.813],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"head","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[1.66,4.158],[0.55,-0.255],[0.162,-0.111],[0,0],[0.052,-0.433],[0,0],[-0.72,-0.085],[-0.053,0],[-0.079,0.669],[0,0],[0,0]],"o":[[-0.122,0.001],[-0.175,0.062],[0,0],[-0.358,0.248],[0,0],[-0.083,0.72],[0.053,0.006],[0.656,0],[0,0],[0,0],[0,0]],"v":[[1.653,-16.626],[-0.169,-16.3],[-0.678,-16.043],[-6.499,-11.32],[-7.142,-10.25],[-7.54,-4.643],[-6.387,-3.183],[-6.23,-3.174],[-4.926,-4.334],[-4.207,-9.214],[-2.379,-10.24]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[1.219,-10.875],"ix":2},"a":{"a":0,"k":[1.219,-15.875],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":0,"s":[0],"e":[-40]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":10.161,"s":[-40],"e":[-71]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":25.402,"s":[-71],"e":[-40]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":35.562,"s":[-40],"e":[0]},{"t":50.8035049438477}],"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"arm right","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.091,-0.063],[0,0],[-0.282,0],[-0.276,0.395],[0.644,0.449],[0,0],[0,0],[0.035,0.064]],"o":[[0.074,0.082],[0,0],[0.247,0.175],[0.448,0],[0.447,-0.644],[0,0],[0,0],[-0.291,-1.581],[-4.465,2.376]],"v":[[4.208,-6.719],[4.455,-6.499],[8.738,-3.549],[9.55,-3.292],[10.717,-3.899],[10.366,-5.878],[6.496,-8.672],[4.938,-13.658],[1.653,-16.626]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[1.313,-10.375],"ix":2},"a":{"a":0,"k":[1.313,-15.375],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":0,"s":[0],"e":[40]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":10.161,"s":[40],"e":[78]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":25.402,"s":[78],"e":[40]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":35.562,"s":[40],"e":[0]},{"t":50.8035049438477}],"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"arm left","np":2,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":0,"s":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-10.646,13.483],[-10.407,15.601],[-9.466,15.932],[-8.288,15.362],[-2.648,8.873],[-2.389,8.435],[0.782,2.375]],"c":true}],"e":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-13.908,5.842],[-14.222,8.524],[-13.282,8.855],[-12.04,9.012],[-4.151,10.956],[-3.306,10.456],[0.782,2.375]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":10.161,"s":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-13.908,5.842],[-14.222,8.524],[-13.282,8.855],[-12.04,9.012],[-4.151,10.956],[-3.306,10.456],[0.782,2.375]],"c":true}],"e":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-9.071,14.817],[-8.832,16.934],[-7.892,17.265],[-6.713,16.695],[-2.648,8.873],[-2.389,8.435],[0.782,2.375]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":20.321,"s":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-9.071,14.817],[-8.832,16.934],[-7.892,17.265],[-6.713,16.695],[-2.648,8.873],[-2.389,8.435],[0.782,2.375]],"c":true}],"e":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-10.646,13.483],[-10.407,15.601],[-9.466,15.932],[-8.288,15.362],[-2.648,8.873],[-2.389,8.435],[0.782,2.375]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":25.402,"s":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-10.646,13.483],[-10.407,15.601],[-9.466,15.932],[-8.288,15.362],[-2.648,8.873],[-2.389,8.435],[0.782,2.375]],"c":true}],"e":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-9.071,14.817],[-8.832,16.934],[-7.892,17.265],[-6.713,16.695],[-2.648,8.873],[-2.389,8.435],[0.782,2.375]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":35.562,"s":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-9.071,14.817],[-8.832,16.934],[-7.892,17.265],[-6.713,16.695],[-2.648,8.873],[-2.389,8.435],[0.782,2.375]],"c":true}],"e":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-8.141,13.802],[-7.902,15.92],[-6.961,16.251],[-5.783,15.681],[-2.648,8.873],[-2.389,8.435],[0.782,2.375]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":45.723,"s":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-8.141,13.802],[-7.902,15.92],[-6.961,16.251],[-5.783,15.681],[-2.648,8.873],[-2.389,8.435],[0.782,2.375]],"c":true}],"e":[{"i":[[7.053,-0.748],[0,0],[0,0],[-0.65,-0.519],[-0.331,0],[-0.297,0.374],[0,0],[-0.065,0.158],[0,0]],"o":[[-0.072,-0.061],[0,0],[-0.519,0.651],[0.277,0.222],[0.441,0],[0,0],[0.106,-0.134],[0,0],[0,0]],"v":[[-2.616,-2.439],[-5.683,6.781],[-10.646,13.483],[-10.407,15.601],[-9.466,15.932],[-8.288,15.362],[-2.648,8.873],[-2.389,8.435],[0.782,2.375]],"c":true}]},{"t":50.8035049438477}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-0.063,2.75],"ix":2},"a":{"a":0,"k":[-0.063,-2.25],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":0,"s":[0],"e":[-42]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":10.161,"s":[-42],"e":[-57]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":20.321,"s":[-57],"e":[-59]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":25.402,"s":[-59],"e":[-25]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":35.562,"s":[-25],"e":[4]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":45.723,"s":[4],"e":[0]},{"t":50.8035049438477}],"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"leg right","np":2,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":0,"s":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[0.248,0.813]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.566,6.553],[8.333,6.066],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[7.725,15.592],[9.191,16.678],[9.643,16.612],[10.662,14.693]],"c":true}],"e":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[0.248,0.813]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.566,6.553],[8.333,6.066],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[9.788,14.342],[11.253,15.428],[11.706,15.362],[12.724,13.443]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":10.161,"s":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[0.248,0.813]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.566,6.553],[8.333,6.066],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[9.788,14.342],[11.253,15.428],[11.706,15.362],[12.724,13.443]],"c":true}],"e":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[0.248,0.813]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.566,6.553],[8.333,6.066],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[9.788,14.342],[11.253,15.428],[11.706,15.362],[12.724,13.443]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":20.321,"s":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[0.248,0.813]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.566,6.553],[8.333,6.066],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[9.788,14.342],[11.253,15.428],[11.706,15.362],[12.724,13.443]],"c":true}],"e":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[0.248,0.813]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.566,6.553],[8.333,6.066],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[7.725,15.592],[9.191,16.678],[9.643,16.612],[10.662,14.693]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":25.402,"s":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[0.248,0.813]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.566,6.553],[8.333,6.066],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[7.725,15.592],[9.191,16.678],[9.643,16.612],[10.662,14.693]],"c":true}],"e":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[-0.146,0.395]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.884,7.314],[9.099,6.616],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[1.131,14.888],[2.597,15.974],[3.049,15.908],[4.628,14.457]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":35.562,"s":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[-0.146,0.395]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.884,7.314],[9.099,6.616],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[1.131,14.888],[2.597,15.974],[3.049,15.908],[4.628,14.457]],"c":true}],"e":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[0.248,0.813]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.566,6.553],[8.333,6.066],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[9.722,13.827],[11.188,14.913],[11.64,14.846],[12.659,12.927]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":45.723,"s":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[0.248,0.813]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.566,6.553],[8.333,6.066],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[9.722,13.827],[11.188,14.913],[11.64,14.846],[12.659,12.927]],"c":true}],"e":[{"i":[[0,0],[0.101,0.149],[0,0],[-0.007,0.021],[0,0],[0,0],[0,0],[-0.656,0],[-0.15,0.046],[0.248,0.813]],"o":[[-0.054,-0.172],[0,0],[0.034,-0.145],[-5.804,0.458],[0,0],[0,0],[0.201,0.661],[0.149,0],[0.811,-0.248],[0,0]],"v":[[8.566,6.553],[8.333,6.066],[3.59,-2.105],[3.664,-2.552],[0.782,2.375],[5.127,7.892],[7.725,15.592],[9.191,16.678],[9.643,16.612],[10.662,14.693]],"c":true}]},{"t":50.8035049438477}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[1.094,3.281],"ix":2},"a":{"a":0,"k":[1.094,-1.719],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":0,"s":[0],"e":[34]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":10.161,"s":[34],"e":[64]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":20.321,"s":[64],"e":[60]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":25.402,"s":[60],"e":[18]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":35.562,"s":[18],"e":[4]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":45.723,"s":[4],"e":[0]},{"t":50.8035049438477}],"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"leg left","np":2,"cix":2,"ix":5,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.013,0.152],[0,0],[-0.091,-0.063],[1.678,0.136],[0.55,-0.255],[0.162,-0.111],[0,0],[0,0],[-0.022,-0.203],[-1.843,0.062]],"o":[[0.034,-0.145],[0,0],[0.074,0.082],[0,0],[-0.65,-0.052],[-0.175,0.062],[0,0],[0,0],[-0.018,0.211],[0,0],[1.843,-0.062]],"v":[[3.59,-2.105],[3.664,-2.552],[4.208,-6.719],[4.455,-6.499],[1.653,-16.626],[-0.169,-16.3],[-0.678,-16.043],[-2.379,-10.24],[-2.626,-3.062],[-2.616,-2.439],[0.782,2.375]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"body","np":3,"cix":2,"ix":6,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":50.8035049438477,"st":0,"bm":0}]},{"id":"comp_1","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Shape Layer 3","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[99.657,107.486,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[400,400,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-2.083,-0.067],[-0.067,2.085],[2.085,0.067],[0.068,-2.084]],"o":[[2.084,0.068],[0.067,-2.084],[-2.083,-0.068],[-0.067,2.085]],"v":[[-0.123,3.772],[3.774,0.12],[0.122,-3.773],[-3.774,-0.124]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[6.625,-20.75],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"head","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.017,0.019],[0.04,0.027],[0,0],[0,0],[0,0],[-0.672,0],[-0.124,0.03],[0.205,0.745],[0,0],[0.348,0.264],[0,0]],"o":[[-0.013,0.013],[0,0],[0,0],[0,0],[0.173,0.629],[0.123,0],[0.807,-0.189],[0,0],[-0.11,-0.401],[0,0],[0,0]],"v":[[2.561,-4.414],[0.991,-2.508],[2.518,0.539],[9.146,5.668],[11.642,14.735],[13.1,15.782],[13.472,15.738],[14.561,14.047],[13.08,4.085],[12.375,3.061],[5.551,-3.128]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[3.063,-2.188],"ix":2},"a":{"a":0,"k":[3.063,-2.188],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":54.19,"s":[94],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":67.738,"s":[0],"e":[94]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":81.286,"s":[94],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":94.833,"s":[0],"e":[94]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":108.381,"s":[94],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":115.155,"s":[0],"e":[94]},{"t":121.928411865234}],"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"leg left","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.039,-0.055],[0,0],[0,0],[0.064,-0.838],[-0.814,-0.068],[0,0],[-0.055,0],[-0.387,0.536],[0,0],[0.941,1.069]],"o":[[-0.043,0.051],[0,0],[0,0],[-0.815,-0.069],[-0.066,0.839],[0,0],[0.057,0.004],[0.69,0],[0,0],[0,0],[-1.011,-1.15]],"v":[[-0.697,-4.047],[-0.822,-3.891],[-5.511,3.443],[-13.571,3.263],[-15.162,4.658],[-13.808,6.299],[-4.627,7.337],[-4.461,7.344],[-2.736,6.49],[2.518,0.539],[3.114,-3.753]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[2,-3.313],"ix":2},"a":{"a":0,"k":[2,-3.313],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":54.19,"s":[-92],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":67.738,"s":[0],"e":[-92]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":81.286,"s":[-92],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":94.833,"s":[0],"e":[-92]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":108.381,"s":[-92],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":115.155,"s":[0],"e":[-92]},{"t":121.928411865234}],"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"leg right","np":2,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.576,0.03],[-0.027,0.003],[-0.261,0.549],[0,0],[0.723,0.342],[0.341,-0.722],[0,0],[0,0],[0,0],[0.009,0.01],[1.037,0.254],[0.218,-1.676],[0,0]],"o":[[0.348,0.465],[0.027,-0.002],[0.604,-0.061],[0,0],[0.343,-0.722],[-0.722,-0.341],[0,0],[0,0],[0,0],[-0.009,-0.009],[-0.483,-0.828],[-0.956,-0.079],[-0.218,1.676],[0,0]],"v":[[8.772,-5.613],[10.252,-4.92],[10.334,-4.927],[11.728,-5.911],[14.885,-10.833],[14.198,-12.759],[12.272,-12.071],[10.205,-9.296],[8.014,-13.23],[7.877,-13.474],[7.851,-13.502],[5.51,-15.23],[2.522,-12.203],[7.043,-7.479]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[3.5,-14.094],"ix":2},"a":{"a":0,"k":[3.5,-14.094],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":54.19,"s":[102],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":67.738,"s":[0],"e":[102]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":81.286,"s":[102],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":94.833,"s":[0],"e":[102]},{"t":108.380810546875}],"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"arm left","np":2,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.571,1.598],[0,0],[0,0],[0.003,0],[0.309,-0.694],[0,0],[-0.727,-0.324],[-0.142,-0.016],[-0.263,0.59],[0,0],[0,0]],"o":[[0.571,-1.598],[0,0],[-0.002,0],[-0.752,-0.087],[0,0],[-0.324,0.727],[0.138,0.061],[0.61,0.071],[0,0],[0,0],[0,0]],"v":[[4.577,-12.524],[3.928,-15.382],[-2.871,-15.695],[-2.877,-15.695],[-4.66,-14.677],[-6.655,-9.525],[-5.924,-7.621],[-5.502,-7.506],[-4.02,-8.352],[-2.009,-12.1],[0.749,-11.524]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[4.656,-13.281],"ix":2},"a":{"a":0,"k":[4.656,-13.281],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":54.19,"s":[-146],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":67.738,"s":[0],"e":[-146]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":81.286,"s":[-146],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":94.833,"s":[0],"e":[-146]},{"t":108.380810546875}],"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"arm right","np":2,"cix":2,"ix":5,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0.009,0.01],[1.037,0.254],[0.237,0.013],[0.018,0.003],[0,0],[1.075,-1.386],[0,0],[0,0],[0.039,-0.055],[0,0],[0,0],[0.348,0.264],[0,0],[0,0]],"o":[[0,0],[0,0],[-0.009,-0.009],[-0.483,-0.828],[-0.238,-0.059],[-0.016,-0.002],[0,0],[0,0],[-1.075,1.386],[0,0],[-0.043,0.051],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[7.798,-10.046],[8.014,-13.23],[7.877,-13.474],[7.851,-13.502],[5.51,-15.23],[4.795,-15.336],[4.746,-15.345],[3.928,-15.382],[1.879,-14.538],[0.749,-11.524],[-0.697,-4.047],[-0.822,-3.891],[-0.403,-0.141],[2.518,0.539],[5.47,-0.404],[5.551,-3.128],[7.043,-7.479]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"body","np":4,"cix":2,"ix":6,"mn":"ADBE Vector Group","hd":false}],"ip":54.1904052734375,"op":108.380810546875,"st":54.1904052734375,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Shape Layer 2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[99.657,107.486,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[400,400,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-2.083,-0.067],[-0.067,2.085],[2.085,0.067],[0.068,-2.084]],"o":[[2.084,0.068],[0.067,-2.084],[-2.083,-0.068],[-0.067,2.085]],"v":[[-0.123,3.772],[3.774,0.12],[0.122,-3.773],[-3.774,-0.124]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[6.625,-20.75],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"head","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.017,0.019],[0.04,0.027],[0,0],[0,0],[0,0],[-0.672,0],[-0.124,0.03],[0.205,0.745],[0,0],[0.348,0.264],[0,0]],"o":[[-0.013,0.013],[0,0],[0,0],[0,0],[0.173,0.629],[0.123,0],[0.807,-0.189],[0,0],[-0.11,-0.401],[0,0],[0,0]],"v":[[2.561,-4.414],[0.991,-2.508],[2.518,0.539],[9.146,5.668],[11.642,14.735],[13.1,15.782],[13.472,15.738],[14.561,14.047],[13.08,4.085],[12.375,3.061],[5.551,-3.128]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[3.063,-2.188],"ix":2},"a":{"a":0,"k":[3.063,-2.188],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":0,"s":[94],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":13.548,"s":[0],"e":[94]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":27.095,"s":[94],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":40.643,"s":[0],"e":[94]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":54.19,"s":[94],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":60.964,"s":[0],"e":[94]},{"t":67.7380065917969}],"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"leg left","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.039,-0.055],[0,0],[0,0],[0.064,-0.838],[-0.814,-0.068],[0,0],[-0.055,0],[-0.387,0.536],[0,0],[0.941,1.069]],"o":[[-0.043,0.051],[0,0],[0,0],[-0.815,-0.069],[-0.066,0.839],[0,0],[0.057,0.004],[0.69,0],[0,0],[0,0],[-1.011,-1.15]],"v":[[-0.697,-4.047],[-0.822,-3.891],[-5.511,3.443],[-13.571,3.263],[-15.162,4.658],[-13.808,6.299],[-4.627,7.337],[-4.461,7.344],[-2.736,6.49],[2.518,0.539],[3.114,-3.753]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[2,-3.313],"ix":2},"a":{"a":0,"k":[2,-3.313],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":0,"s":[-92],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":13.548,"s":[0],"e":[-92]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":27.095,"s":[-92],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":40.643,"s":[0],"e":[-92]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":54.19,"s":[-92],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":60.964,"s":[0],"e":[-92]},{"t":67.7380065917969}],"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"leg right","np":2,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.576,0.03],[-0.027,0.003],[-0.261,0.549],[0,0],[0.723,0.342],[0.341,-0.722],[0,0],[0,0],[0,0],[0.009,0.01],[1.037,0.254],[0.218,-1.676],[0,0]],"o":[[0.348,0.465],[0.027,-0.002],[0.604,-0.061],[0,0],[0.343,-0.722],[-0.722,-0.341],[0,0],[0,0],[0,0],[-0.009,-0.009],[-0.483,-0.828],[-0.956,-0.079],[-0.218,1.676],[0,0]],"v":[[8.772,-5.613],[10.252,-4.92],[10.334,-4.927],[11.728,-5.911],[14.885,-10.833],[14.198,-12.759],[12.272,-12.071],[10.205,-9.296],[8.014,-13.23],[7.877,-13.474],[7.851,-13.502],[5.51,-15.23],[2.522,-12.203],[7.043,-7.479]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[3.5,-14.094],"ix":2},"a":{"a":0,"k":[3.5,-14.094],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":0,"s":[102],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":13.548,"s":[0],"e":[102]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":27.095,"s":[102],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":40.643,"s":[0],"e":[102]},{"t":54.1904052734375}],"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"arm left","np":2,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.571,1.598],[0,0],[0,0],[0.003,0],[0.309,-0.694],[0,0],[-0.727,-0.324],[-0.142,-0.016],[-0.263,0.59],[0,0],[0,0]],"o":[[0.571,-1.598],[0,0],[-0.002,0],[-0.752,-0.087],[0,0],[-0.324,0.727],[0.138,0.061],[0.61,0.071],[0,0],[0,0],[0,0]],"v":[[4.577,-12.524],[3.928,-15.382],[-2.871,-15.695],[-2.877,-15.695],[-4.66,-14.677],[-6.655,-9.525],[-5.924,-7.621],[-5.502,-7.506],[-4.02,-8.352],[-2.009,-12.1],[0.749,-11.524]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[4.656,-13.281],"ix":2},"a":{"a":0,"k":[4.656,-13.281],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":0,"s":[-146],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":13.548,"s":[0],"e":[-146]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":27.095,"s":[-146],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":40.643,"s":[0],"e":[-146]},{"t":54.1904052734375}],"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"arm right","np":2,"cix":2,"ix":5,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0.009,0.01],[1.037,0.254],[0.237,0.013],[0.018,0.003],[0,0],[1.075,-1.386],[0,0],[0,0],[0.039,-0.055],[0,0],[0,0],[0.348,0.264],[0,0],[0,0]],"o":[[0,0],[0,0],[-0.009,-0.009],[-0.483,-0.828],[-0.238,-0.059],[-0.016,-0.002],[0,0],[0,0],[-1.075,1.386],[0,0],[-0.043,0.051],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[7.798,-10.046],[8.014,-13.23],[7.877,-13.474],[7.851,-13.502],[5.51,-15.23],[4.795,-15.336],[4.746,-15.345],[3.928,-15.382],[1.879,-14.538],[0.749,-11.524],[-0.697,-4.047],[-0.822,-3.891],[-0.403,-0.141],[2.518,0.539],[5.47,-0.404],[5.551,-3.128],[7.043,-7.479]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"body","np":4,"cix":2,"ix":6,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":54.1904052734375,"st":0,"bm":0}]},{"id":"comp_2","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Shape Layer 3","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[100,100,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[400,400,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-2.083,-0.067],[-0.067,2.085],[2.085,0.067],[0.068,-2.084]],"o":[[2.084,0.068],[0.067,-2.084],[-2.083,-0.068],[-0.067,2.085]],"v":[[-0.123,3.772],[3.774,0.12],[0.122,-3.773],[-3.774,-0.124]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,-14.438],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"head","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":67.738,"s":[{"i":[[0.717,2.38],[0,0],[0,0],[0.313,-0.621],[-0.53,-0.458],[0,0],[-0.011,0.063]],"o":[[0,0],[0,0],[-0.545,-0.365],[-0.314,0.621],[0,0],[0,0],[2.396,0.532]],"v":[[-0.717,-11.599],[-7.06,-13.364],[-13.286,-13.415],[-14.978,-12.858],[-14.421,-11.166],[-8.351,-10.775],[-3.864,-8.282]],"c":true}],"e":[{"i":[[0.717,2.38],[0,0],[0,0],[0.313,-0.621],[-0.53,-0.458],[0,0],[-0.011,0.063]],"o":[[0,0],[0,0],[-0.545,-0.365],[-0.314,0.621],[0,0],[0,0],[2.396,0.532]],"v":[[-0.717,-11.599],[-7.06,-13.364],[-11.599,-16.915],[-13.29,-16.358],[-12.733,-14.666],[-8.351,-10.775],[-3.864,-8.282]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":84.673,"s":[{"i":[[0.717,2.38],[0,0],[0,0],[0.313,-0.621],[-0.53,-0.458],[0,0],[-0.011,0.063]],"o":[[0,0],[0,0],[-0.545,-0.365],[-0.314,0.621],[0,0],[0,0],[2.396,0.532]],"v":[[-0.717,-11.599],[-7.06,-13.364],[-11.599,-16.915],[-13.29,-16.358],[-12.733,-14.666],[-8.351,-10.775],[-3.864,-8.282]],"c":true}],"e":[{"i":[[0.717,2.38],[0,0],[0,0],[0.313,-0.621],[-0.53,-0.458],[0,0],[-0.011,0.063]],"o":[[0,0],[0,0],[-0.545,-0.365],[-0.314,0.621],[0,0],[0,0],[2.396,0.532]],"v":[[-0.717,-11.599],[-7.06,-13.364],[-13.286,-13.415],[-14.978,-12.858],[-14.421,-11.166],[-8.351,-10.775],[-3.864,-8.282]],"c":true}]},{"t":101.607009887695}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-2.188,-6.875],"ix":2},"a":{"a":0,"k":[-2.188,-9.875],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":67.738,"s":[-90],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":84.673,"s":[0],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":88.059,"s":[0],"e":[-90]},{"t":101.607009887695}],"ix":6,"x":"var $bm_rt;\nvar easingPreset = [\n        [\n            3,\n            4,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ],\n        [\n            1,\n            2,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ]\n    ];\nfunction easingMaker() {\n    var t, d, newProgress, sX, eX, sY, eY, sZ, eZ, val1, val2, val2, val3;\n    var n = 0;\n    if (numKeys > 0) {\n        n = nearestKey(time).index;\n        if (key(n).time > time) {\n            n--;\n        }\n    }\n    try {\n        var key1 = key(n);\n        var key2 = key(sum(n, 1));\n    } catch (e) {\n        return null;\n    }\n    var dim = 1;\n    try {\n        key(1)[1];\n        dim = 2;\n        key(1)[2];\n        dim = 3;\n    } catch (e) {\n    }\n    var expression = null;\n    for (var i = 0; i < easingPreset.length; ++i) {\n        if (easingPreset[i][0] <= n && easingPreset[i][1] >= n + 1) {\n            var expression = eval([easingPreset[i][2][0]][0]);\n            try {\n                expression = expression.apply({}, easingPreset[i][2][1].concat(easingPreset[i][2][3]));\n            } catch (e) {\n                expression = expression.apply({}, easingPreset[i][2][1]);\n            }\n            break;\n        }\n    }\n    if (!expression)\n        return null;\n    t = sub(time, key1.time);\n    d = sub(key2.time, key1.time);\n    if (expression.hasOwnProperty('curviosity') && expression.curviosity) {\n        newProgress = expression.executeProgress(div(t, d));\n        return thisProperty.valueAtTime(sum(key1.time, mul(d, newProgress)));\n    }\n    sX = key1[0];\n    eX = sub(key2[0], key1[0]);\n    if (dim >= 2) {\n        sY = key1[1];\n        eY = sub(key2[1], key1[1]);\n        if (dim >= 3) {\n            sZ = key1[2];\n            eZ = sub(key2[2], key1[2]);\n        }\n    }\n    if (time < key1.time || time > key2.time) {\n        return value;\n    } else {\n        val1 = expression.execute(t, sX, eX, d);\n        switch (dim) {\n        case 1:\n            return val1;\n        case 2:\n            val2 = expression.execute(t, sY, eY, d);\n            return [\n                val1,\n                val2\n            ];\n        case 3:\n            val2 = expression.execute(t, sY, eY, d);\n            val3 = expression.execute(t, sZ, eZ, d);\n            return [\n                val1,\n                val2,\n                val3\n            ];\n        default:\n            return null;\n        }\n    }\n}\n$bm_rt = easingMaker() || value;\nfunction sampleCurveY(t) {\n    return mul(sum(mul(sum(mul(this.ay, t), this.by), t), this.cy), t);\n}\nfunction sampleCurveX(t) {\n    return mul(sum(mul(sum(mul(this.ax, t), this.bx), t), this.cx), t);\n}\nfunction sampleCurveDerivativeX(t) {\n    return sum(mul(sum(mul(mul(3, this.ax), t), mul(2, this.bx)), t), this.cx);\n}\nfunction solveCurveX(x, epsilon) {\n    var t2, i, x2, d2, t0, t1;\n    for (t2 = x, i = 0; i < 8; i++) {\n        x2 = sub(sampleCurveX.call(this, t2), x);\n        if (Math.abs(x2) < epsilon)\n            return t2;\n        d2 = sampleCurveDerivativeX.call(this, t2);\n        if (Math.abs(d2) < 0.000001)\n            break;\n        t2 = sub(t2, div(x2, d2));\n    }\n    t0 = 0;\n    t1 = 1;\n    t2 = x;\n    if (t2 < t0)\n        return t0;\n    if (t2 > t1)\n        return t1;\n    while (t0 < t1) {\n        x2 = sampleCurveX.call(this, t2);\n        if (Math.abs(x2 - x) < epsilon)\n            return t2;\n        if (x > x2)\n            t0 = t2;\n        else\n            t1 = t2;\n        t2 = sum(mul(sub(t1, t0), 0.5), t0);\n    }\n    return t2;\n}\nfunction executeBezier(t, b, e, d) {\n    return sum(b, mul(e, sampleCurveY.call(this, solveCurveX.call(this, div(t, d), div(1, mul(200, d))))));\n}\nfunction executeBezierProgress(oldProgress) {\n    return sampleCurveY.call(this, solveCurveX.call(this, oldProgress, 1 / 200));\n}\nfunction make_bezier_easing(p1x, p1y, p2x, p2y, curviosity) {\n    this.cx = mul(3, p1x);\n    this.bx = sub(mul(3, sub(p2x, p1x)), this.cx);\n    this.ax = sub(sub(1, this.cx), this.bx);\n    this.cy = mul(3, p1y);\n    this.by = sub(mul(3, sub(p2y, p1y)), this.cy);\n    this.ay = sub(sub(1, this.cy), this.by);\n    this.curviosity = curviosity;\n    this.execute = executeBezier;\n    this.executeProgress = executeBezierProgress;\n    return this;\n}\nfunction executeElasticIn(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum($bm_neg(mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n}\nfunction executeElasticOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum(sum(mul(mul(a, Math.pow(2, mul(-10, t))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), c), b);\n}\nfunction executeElasticInOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d / 2) === 2)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3 * 1.5);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    if (t < 1)\n        return sum(mul(-0.5, mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n    return sum(sum(mul(mul(mul(a, Math.pow(2, mul(-10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), 0.5), c), b);\n}\nfunction executeElasticInProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : -Math.pow(2, 10 * Progress - 10) * Math.sin((Progress * 10 - 10.75) * (2 * Math.PI / 3));\n}\nfunction executeElasticOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Math.pow(2, -10 * Progress) * Math.sin((Progress * 10 - 0.75) * (2 * Math.PI / 3)) + 1;\n}\nfunction executeElasticInOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Progress < 0.5 ? -(Math.pow(2, 20 * Progress - 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5))) / 2 : Math.pow(2, -20 * Progress + 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5)) / 2 + 1;\n}\nfunction make_elastic_easing_in(curviosity) {\n    this.execute = executeElasticIn;\n    this.executeProgress = executeElasticInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_out(curviosity) {\n    this.execute = executeElasticOut;\n    this.executeProgress = executeElasticOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_in_out(curviosity) {\n    this.execute = executeElasticInOut;\n    this.executeProgress = executeElasticInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction executeBounceIn(t, b, c, d) {\n    return sum(sub(c, executeBounceOut(sub(d, t), 0, c, d)), b);\n}\nfunction executeBounceOut(t, b, c, d) {\n    if ((t /= d) < 1 / 2.75) {\n        return sum(mul(c, mul(mul(7.5625, t), t)), b);\n    } else if (t < 2 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 1.5 / 2.75), t), 0.75)), b);\n    } else if (t < 2.5 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.25 / 2.75), t), 0.9375)), b);\n    } else {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.625 / 2.75), t), 0.984375)), b);\n    }\n}\nfunction executeBounceInOut(t, b, c, d) {\n    if (t < d / 2)\n        return sum(mul(executeBounceIn(mul(t, 2), 0, c, d), 0.5), b);\n    return sum(sum(mul(executeBounceOut(sub(mul(t, 2), d), 0, c, d), 0.5), mul(c, 0.5)), b);\n}\nfunction executeBounceInProgress(oldProgress) {\n    return sub(1, executeBounceOut(sub(1, oldProgress)));\n}\nfunction executeBounceOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2.75) {\n        return mul(mul(7.5625, oldProgress), oldProgress);\n    } else if (oldProgress < 2 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 1.5 / 2.75), oldProgress), 0.75);\n    } else if (oldProgress < 2.5 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 2.25 / 2.75), oldProgress), 0.9375);\n    } else {\n        return sum(mul(mul(7.5625, oldProgress -= 2.625 / 2.75), oldProgress), 0.984375);\n    }\n}\nfunction executeBounceInOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2)\n        return mul(executeBounceIn(mul(oldProgress, 2)), 0.5);\n    return sum(mul(executeBounceOut(sub(mul(oldProgress, 2), 1)), 0.5), 0.5);\n}\nfunction make_bounce_easing_in(curviosity) {\n    this.execute = executeBounceIn;\n    this.executeProgress = executeBounceInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_out(curviosity) {\n    this.execute = executeBounceOut;\n    this.executeProgress = executeBounceOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_in_out(curviosity) {\n    this.execute = executeBounceInOut;\n    this.executeProgress = executeBounceInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}"},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"arm left","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":67.738,"s":[{"i":[[0,0],[0,0],[0.314,0.621],[0.573,-0.371],[0,0],[-0.026,0.054],[-2.461,0.5]],"o":[[0,0],[0.607,-0.463],[-0.313,-0.621],[0,0],[0,0],[-1.183,2.773],[0.008,0]],"v":[[8.035,-10.775],[13.921,-11.416],[14.478,-13.108],[12.786,-13.665],[6.745,-13.364],[0.964,-11.617],[4.117,-8.282]],"c":true}],"e":[{"i":[[0,0],[0,0],[0.314,0.621],[0.573,-0.371],[0,0],[-0.026,0.054],[-2.461,0.5]],"o":[[0,0],[0.607,-0.463],[-0.313,-0.621],[0,0],[0,0],[-1.183,2.773],[0.008,0]],"v":[[8.035,-10.775],[12.733,-14.666],[13.29,-16.358],[11.599,-16.915],[6.745,-13.364],[0.964,-11.617],[4.117,-8.282]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":84.673,"s":[{"i":[[0,0],[0,0],[0.314,0.621],[0.573,-0.371],[0,0],[-0.026,0.054],[-2.461,0.5]],"o":[[0,0],[0.607,-0.463],[-0.313,-0.621],[0,0],[0,0],[-1.183,2.773],[0.008,0]],"v":[[8.035,-10.775],[12.733,-14.666],[13.29,-16.358],[11.599,-16.915],[6.745,-13.364],[0.964,-11.617],[4.117,-8.282]],"c":true}],"e":[{"i":[[0,0],[0,0],[0.314,0.621],[0.573,-0.371],[0,0],[-0.026,0.054],[-2.461,0.5]],"o":[[0,0],[0.607,-0.463],[-0.313,-0.621],[0,0],[0,0],[-1.183,2.773],[0.008,0]],"v":[[8.035,-10.775],[13.921,-11.416],[14.478,-13.108],[12.786,-13.665],[6.745,-13.364],[0.964,-11.617],[4.117,-8.282]],"c":true}]},{"t":101.607009887695}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[2,-6.969],"ix":2},"a":{"a":0,"k":[2,-9.969],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":67.738,"s":[90],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":84.673,"s":[0],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":88.059,"s":[0],"e":[90]},{"t":101.607009887695}],"ix":6,"x":"var $bm_rt;\nvar easingPreset = [\n        [\n            3,\n            4,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ],\n        [\n            1,\n            2,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ]\n    ];\nfunction easingMaker() {\n    var t, d, newProgress, sX, eX, sY, eY, sZ, eZ, val1, val2, val2, val3;\n    var n = 0;\n    if (numKeys > 0) {\n        n = nearestKey(time).index;\n        if (key(n).time > time) {\n            n--;\n        }\n    }\n    try {\n        var key1 = key(n);\n        var key2 = key(sum(n, 1));\n    } catch (e) {\n        return null;\n    }\n    var dim = 1;\n    try {\n        key(1)[1];\n        dim = 2;\n        key(1)[2];\n        dim = 3;\n    } catch (e) {\n    }\n    var expression = null;\n    for (var i = 0; i < easingPreset.length; ++i) {\n        if (easingPreset[i][0] <= n && easingPreset[i][1] >= n + 1) {\n            var expression = eval([easingPreset[i][2][0]][0]);\n            try {\n                expression = expression.apply({}, easingPreset[i][2][1].concat(easingPreset[i][2][3]));\n            } catch (e) {\n                expression = expression.apply({}, easingPreset[i][2][1]);\n            }\n            break;\n        }\n    }\n    if (!expression)\n        return null;\n    t = sub(time, key1.time);\n    d = sub(key2.time, key1.time);\n    if (expression.hasOwnProperty('curviosity') && expression.curviosity) {\n        newProgress = expression.executeProgress(div(t, d));\n        return thisProperty.valueAtTime(sum(key1.time, mul(d, newProgress)));\n    }\n    sX = key1[0];\n    eX = sub(key2[0], key1[0]);\n    if (dim >= 2) {\n        sY = key1[1];\n        eY = sub(key2[1], key1[1]);\n        if (dim >= 3) {\n            sZ = key1[2];\n            eZ = sub(key2[2], key1[2]);\n        }\n    }\n    if (time < key1.time || time > key2.time) {\n        return value;\n    } else {\n        val1 = expression.execute(t, sX, eX, d);\n        switch (dim) {\n        case 1:\n            return val1;\n        case 2:\n            val2 = expression.execute(t, sY, eY, d);\n            return [\n                val1,\n                val2\n            ];\n        case 3:\n            val2 = expression.execute(t, sY, eY, d);\n            val3 = expression.execute(t, sZ, eZ, d);\n            return [\n                val1,\n                val2,\n                val3\n            ];\n        default:\n            return null;\n        }\n    }\n}\n$bm_rt = easingMaker() || value;\nfunction sampleCurveY(t) {\n    return mul(sum(mul(sum(mul(this.ay, t), this.by), t), this.cy), t);\n}\nfunction sampleCurveX(t) {\n    return mul(sum(mul(sum(mul(this.ax, t), this.bx), t), this.cx), t);\n}\nfunction sampleCurveDerivativeX(t) {\n    return sum(mul(sum(mul(mul(3, this.ax), t), mul(2, this.bx)), t), this.cx);\n}\nfunction solveCurveX(x, epsilon) {\n    var t2, i, x2, d2, t0, t1;\n    for (t2 = x, i = 0; i < 8; i++) {\n        x2 = sub(sampleCurveX.call(this, t2), x);\n        if (Math.abs(x2) < epsilon)\n            return t2;\n        d2 = sampleCurveDerivativeX.call(this, t2);\n        if (Math.abs(d2) < 0.000001)\n            break;\n        t2 = sub(t2, div(x2, d2));\n    }\n    t0 = 0;\n    t1 = 1;\n    t2 = x;\n    if (t2 < t0)\n        return t0;\n    if (t2 > t1)\n        return t1;\n    while (t0 < t1) {\n        x2 = sampleCurveX.call(this, t2);\n        if (Math.abs(x2 - x) < epsilon)\n            return t2;\n        if (x > x2)\n            t0 = t2;\n        else\n            t1 = t2;\n        t2 = sum(mul(sub(t1, t0), 0.5), t0);\n    }\n    return t2;\n}\nfunction executeBezier(t, b, e, d) {\n    return sum(b, mul(e, sampleCurveY.call(this, solveCurveX.call(this, div(t, d), div(1, mul(200, d))))));\n}\nfunction executeBezierProgress(oldProgress) {\n    return sampleCurveY.call(this, solveCurveX.call(this, oldProgress, 1 / 200));\n}\nfunction make_bezier_easing(p1x, p1y, p2x, p2y, curviosity) {\n    this.cx = mul(3, p1x);\n    this.bx = sub(mul(3, sub(p2x, p1x)), this.cx);\n    this.ax = sub(sub(1, this.cx), this.bx);\n    this.cy = mul(3, p1y);\n    this.by = sub(mul(3, sub(p2y, p1y)), this.cy);\n    this.ay = sub(sub(1, this.cy), this.by);\n    this.curviosity = curviosity;\n    this.execute = executeBezier;\n    this.executeProgress = executeBezierProgress;\n    return this;\n}\nfunction executeElasticIn(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum($bm_neg(mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n}\nfunction executeElasticOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum(sum(mul(mul(a, Math.pow(2, mul(-10, t))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), c), b);\n}\nfunction executeElasticInOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d / 2) === 2)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3 * 1.5);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    if (t < 1)\n        return sum(mul(-0.5, mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n    return sum(sum(mul(mul(mul(a, Math.pow(2, mul(-10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), 0.5), c), b);\n}\nfunction executeElasticInProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : -Math.pow(2, 10 * Progress - 10) * Math.sin((Progress * 10 - 10.75) * (2 * Math.PI / 3));\n}\nfunction executeElasticOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Math.pow(2, -10 * Progress) * Math.sin((Progress * 10 - 0.75) * (2 * Math.PI / 3)) + 1;\n}\nfunction executeElasticInOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Progress < 0.5 ? -(Math.pow(2, 20 * Progress - 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5))) / 2 : Math.pow(2, -20 * Progress + 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5)) / 2 + 1;\n}\nfunction make_elastic_easing_in(curviosity) {\n    this.execute = executeElasticIn;\n    this.executeProgress = executeElasticInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_out(curviosity) {\n    this.execute = executeElasticOut;\n    this.executeProgress = executeElasticOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_in_out(curviosity) {\n    this.execute = executeElasticInOut;\n    this.executeProgress = executeElasticInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction executeBounceIn(t, b, c, d) {\n    return sum(sub(c, executeBounceOut(sub(d, t), 0, c, d)), b);\n}\nfunction executeBounceOut(t, b, c, d) {\n    if ((t /= d) < 1 / 2.75) {\n        return sum(mul(c, mul(mul(7.5625, t), t)), b);\n    } else if (t < 2 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 1.5 / 2.75), t), 0.75)), b);\n    } else if (t < 2.5 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.25 / 2.75), t), 0.9375)), b);\n    } else {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.625 / 2.75), t), 0.984375)), b);\n    }\n}\nfunction executeBounceInOut(t, b, c, d) {\n    if (t < d / 2)\n        return sum(mul(executeBounceIn(mul(t, 2), 0, c, d), 0.5), b);\n    return sum(sum(mul(executeBounceOut(sub(mul(t, 2), d), 0, c, d), 0.5), mul(c, 0.5)), b);\n}\nfunction executeBounceInProgress(oldProgress) {\n    return sub(1, executeBounceOut(sub(1, oldProgress)));\n}\nfunction executeBounceOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2.75) {\n        return mul(mul(7.5625, oldProgress), oldProgress);\n    } else if (oldProgress < 2 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 1.5 / 2.75), oldProgress), 0.75);\n    } else if (oldProgress < 2.5 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 2.25 / 2.75), oldProgress), 0.9375);\n    } else {\n        return sum(mul(mul(7.5625, oldProgress -= 2.625 / 2.75), oldProgress), 0.984375);\n    }\n}\nfunction executeBounceInOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2)\n        return mul(executeBounceIn(mul(oldProgress, 2)), 0.5);\n    return sum(mul(executeBounceOut(sub(mul(oldProgress, 2), 1)), 0.5), 0.5);\n}\nfunction make_bounce_easing_in(curviosity) {\n    this.execute = executeBounceIn;\n    this.executeProgress = executeBounceInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_out(curviosity) {\n    this.execute = executeBounceOut;\n    this.executeProgress = executeBounceOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_in_out(curviosity) {\n    this.execute = executeBounceInOut;\n    this.executeProgress = executeBounceInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}"},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"arm right","np":2,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":81.286,"s":[{"i":[[3.419,-0.047],[0,0],[0,0],[-0.589,-0.426],[-0.061,-0.031],[-0.387,0.532],[0,0],[0.006,-0.049]],"o":[[0.013,-0.047],[0,0],[-0.427,0.589],[0.056,0.041],[0.568,0.29],[0,0],[0,0],[0.975,-3.393]],"v":[[-3.606,0.078],[-9.234,8.474],[-12.881,15.048],[-12.586,16.888],[-12.411,16.996],[-10.746,16.594],[-5.964,9.747],[-0.006,4.393]],"c":true}],"e":[{"i":[[3.419,-0.047],[0,0],[0,0],[-0.589,-0.426],[-0.061,-0.031],[-0.387,0.532],[0,0],[0.006,-0.049]],"o":[[0.013,-0.047],[0,0],[-0.427,0.589],[0.056,0.041],[0.568,0.29],[0,0],[0,0],[0.975,-3.393]],"v":[[-3.606,0.078],[-9.297,6.224],[-12.443,12.673],[-12.148,14.513],[-11.974,14.621],[-10.309,14.219],[-6.026,7.497],[-0.006,4.393]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":88.059,"s":[{"i":[[3.419,-0.047],[0,0],[0,0],[-0.589,-0.426],[-0.061,-0.031],[-0.387,0.532],[0,0],[0.006,-0.049]],"o":[[0.013,-0.047],[0,0],[-0.427,0.589],[0.056,0.041],[0.568,0.29],[0,0],[0,0],[0.975,-3.393]],"v":[[-3.606,0.078],[-9.297,6.224],[-12.443,12.673],[-12.148,14.513],[-11.974,14.621],[-10.309,14.219],[-6.026,7.497],[-0.006,4.393]],"c":true}],"e":[{"i":[[3.419,-0.047],[0,0],[0,0],[-0.589,-0.426],[-0.061,-0.031],[-0.387,0.532],[0,0],[0.006,-0.049]],"o":[[0.013,-0.047],[0,0],[-0.427,0.589],[0.056,0.041],[0.568,0.29],[0,0],[0,0],[0.975,-3.393]],"v":[[-3.606,0.078],[-9.234,8.474],[-12.881,15.048],[-12.586,16.888],[-12.411,16.996],[-10.746,16.594],[-5.964,9.747],[-0.006,4.393]],"c":true}]},{"t":101.607009887695}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,3],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":67.738,"s":[-30],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":84.673,"s":[0],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":88.059,"s":[0],"e":[-30]},{"t":101.607009887695}],"ix":6,"x":"var $bm_rt;\nvar easingPreset = [\n        [\n            3,\n            4,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ],\n        [\n            1,\n            2,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ]\n    ];\nfunction easingMaker() {\n    var t, d, newProgress, sX, eX, sY, eY, sZ, eZ, val1, val2, val2, val3;\n    var n = 0;\n    if (numKeys > 0) {\n        n = nearestKey(time).index;\n        if (key(n).time > time) {\n            n--;\n        }\n    }\n    try {\n        var key1 = key(n);\n        var key2 = key(sum(n, 1));\n    } catch (e) {\n        return null;\n    }\n    var dim = 1;\n    try {\n        key(1)[1];\n        dim = 2;\n        key(1)[2];\n        dim = 3;\n    } catch (e) {\n    }\n    var expression = null;\n    for (var i = 0; i < easingPreset.length; ++i) {\n        if (easingPreset[i][0] <= n && easingPreset[i][1] >= n + 1) {\n            var expression = eval([easingPreset[i][2][0]][0]);\n            try {\n                expression = expression.apply({}, easingPreset[i][2][1].concat(easingPreset[i][2][3]));\n            } catch (e) {\n                expression = expression.apply({}, easingPreset[i][2][1]);\n            }\n            break;\n        }\n    }\n    if (!expression)\n        return null;\n    t = sub(time, key1.time);\n    d = sub(key2.time, key1.time);\n    if (expression.hasOwnProperty('curviosity') && expression.curviosity) {\n        newProgress = expression.executeProgress(div(t, d));\n        return thisProperty.valueAtTime(sum(key1.time, mul(d, newProgress)));\n    }\n    sX = key1[0];\n    eX = sub(key2[0], key1[0]);\n    if (dim >= 2) {\n        sY = key1[1];\n        eY = sub(key2[1], key1[1]);\n        if (dim >= 3) {\n            sZ = key1[2];\n            eZ = sub(key2[2], key1[2]);\n        }\n    }\n    if (time < key1.time || time > key2.time) {\n        return value;\n    } else {\n        val1 = expression.execute(t, sX, eX, d);\n        switch (dim) {\n        case 1:\n            return val1;\n        case 2:\n            val2 = expression.execute(t, sY, eY, d);\n            return [\n                val1,\n                val2\n            ];\n        case 3:\n            val2 = expression.execute(t, sY, eY, d);\n            val3 = expression.execute(t, sZ, eZ, d);\n            return [\n                val1,\n                val2,\n                val3\n            ];\n        default:\n            return null;\n        }\n    }\n}\n$bm_rt = easingMaker() || value;\nfunction sampleCurveY(t) {\n    return mul(sum(mul(sum(mul(this.ay, t), this.by), t), this.cy), t);\n}\nfunction sampleCurveX(t) {\n    return mul(sum(mul(sum(mul(this.ax, t), this.bx), t), this.cx), t);\n}\nfunction sampleCurveDerivativeX(t) {\n    return sum(mul(sum(mul(mul(3, this.ax), t), mul(2, this.bx)), t), this.cx);\n}\nfunction solveCurveX(x, epsilon) {\n    var t2, i, x2, d2, t0, t1;\n    for (t2 = x, i = 0; i < 8; i++) {\n        x2 = sub(sampleCurveX.call(this, t2), x);\n        if (Math.abs(x2) < epsilon)\n            return t2;\n        d2 = sampleCurveDerivativeX.call(this, t2);\n        if (Math.abs(d2) < 0.000001)\n            break;\n        t2 = sub(t2, div(x2, d2));\n    }\n    t0 = 0;\n    t1 = 1;\n    t2 = x;\n    if (t2 < t0)\n        return t0;\n    if (t2 > t1)\n        return t1;\n    while (t0 < t1) {\n        x2 = sampleCurveX.call(this, t2);\n        if (Math.abs(x2 - x) < epsilon)\n            return t2;\n        if (x > x2)\n            t0 = t2;\n        else\n            t1 = t2;\n        t2 = sum(mul(sub(t1, t0), 0.5), t0);\n    }\n    return t2;\n}\nfunction executeBezier(t, b, e, d) {\n    return sum(b, mul(e, sampleCurveY.call(this, solveCurveX.call(this, div(t, d), div(1, mul(200, d))))));\n}\nfunction executeBezierProgress(oldProgress) {\n    return sampleCurveY.call(this, solveCurveX.call(this, oldProgress, 1 / 200));\n}\nfunction make_bezier_easing(p1x, p1y, p2x, p2y, curviosity) {\n    this.cx = mul(3, p1x);\n    this.bx = sub(mul(3, sub(p2x, p1x)), this.cx);\n    this.ax = sub(sub(1, this.cx), this.bx);\n    this.cy = mul(3, p1y);\n    this.by = sub(mul(3, sub(p2y, p1y)), this.cy);\n    this.ay = sub(sub(1, this.cy), this.by);\n    this.curviosity = curviosity;\n    this.execute = executeBezier;\n    this.executeProgress = executeBezierProgress;\n    return this;\n}\nfunction executeElasticIn(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum($bm_neg(mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n}\nfunction executeElasticOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum(sum(mul(mul(a, Math.pow(2, mul(-10, t))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), c), b);\n}\nfunction executeElasticInOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d / 2) === 2)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3 * 1.5);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    if (t < 1)\n        return sum(mul(-0.5, mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n    return sum(sum(mul(mul(mul(a, Math.pow(2, mul(-10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), 0.5), c), b);\n}\nfunction executeElasticInProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : -Math.pow(2, 10 * Progress - 10) * Math.sin((Progress * 10 - 10.75) * (2 * Math.PI / 3));\n}\nfunction executeElasticOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Math.pow(2, -10 * Progress) * Math.sin((Progress * 10 - 0.75) * (2 * Math.PI / 3)) + 1;\n}\nfunction executeElasticInOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Progress < 0.5 ? -(Math.pow(2, 20 * Progress - 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5))) / 2 : Math.pow(2, -20 * Progress + 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5)) / 2 + 1;\n}\nfunction make_elastic_easing_in(curviosity) {\n    this.execute = executeElasticIn;\n    this.executeProgress = executeElasticInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_out(curviosity) {\n    this.execute = executeElasticOut;\n    this.executeProgress = executeElasticOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_in_out(curviosity) {\n    this.execute = executeElasticInOut;\n    this.executeProgress = executeElasticInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction executeBounceIn(t, b, c, d) {\n    return sum(sub(c, executeBounceOut(sub(d, t), 0, c, d)), b);\n}\nfunction executeBounceOut(t, b, c, d) {\n    if ((t /= d) < 1 / 2.75) {\n        return sum(mul(c, mul(mul(7.5625, t), t)), b);\n    } else if (t < 2 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 1.5 / 2.75), t), 0.75)), b);\n    } else if (t < 2.5 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.25 / 2.75), t), 0.9375)), b);\n    } else {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.625 / 2.75), t), 0.984375)), b);\n    }\n}\nfunction executeBounceInOut(t, b, c, d) {\n    if (t < d / 2)\n        return sum(mul(executeBounceIn(mul(t, 2), 0, c, d), 0.5), b);\n    return sum(sum(mul(executeBounceOut(sub(mul(t, 2), d), 0, c, d), 0.5), mul(c, 0.5)), b);\n}\nfunction executeBounceInProgress(oldProgress) {\n    return sub(1, executeBounceOut(sub(1, oldProgress)));\n}\nfunction executeBounceOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2.75) {\n        return mul(mul(7.5625, oldProgress), oldProgress);\n    } else if (oldProgress < 2 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 1.5 / 2.75), oldProgress), 0.75);\n    } else if (oldProgress < 2.5 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 2.25 / 2.75), oldProgress), 0.9375);\n    } else {\n        return sum(mul(mul(7.5625, oldProgress -= 2.625 / 2.75), oldProgress), 0.984375);\n    }\n}\nfunction executeBounceInOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2)\n        return mul(executeBounceIn(mul(oldProgress, 2)), 0.5);\n    return sum(mul(executeBounceOut(sub(mul(oldProgress, 2), 1)), 0.5), 0.5);\n}\nfunction make_bounce_easing_in(curviosity) {\n    this.execute = executeBounceIn;\n    this.executeProgress = executeBounceInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_out(curviosity) {\n    this.execute = executeBounceOut;\n    this.executeProgress = executeBounceOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_in_out(curviosity) {\n    this.execute = executeBounceInOut;\n    this.executeProgress = executeBounceInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}"},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"leg left","np":2,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":81.286,"s":[{"i":[[-1.494,-2.799],[0,0],[0,0],[-0.568,0.29],[-0.056,0.041],[0.427,0.589],[0,0],[0.007,0.016]],"o":[[-0.025,-0.018],[0,0],[0.385,0.532],[0.061,-0.031],[0.589,-0.426],[0,0],[0,0],[-3.118,-0.234]],"v":[[-0.006,4.393],[5.97,9.514],[10.735,16.594],[12.399,16.996],[12.574,16.888],[12.869,15.048],[9.04,8.191],[3.587,0.078]],"c":true}],"e":[{"i":[[-1.494,-2.799],[0,0],[0,0],[-0.568,0.29],[-0.056,0.041],[0.427,0.589],[0,0],[0.007,0.016]],"o":[[-0.025,-0.018],[0,0],[0.385,0.532],[0.061,-0.031],[0.589,-0.426],[0,0],[0,0],[-3.118,-0.234]],"v":[[-0.006,4.393],[6.345,7.764],[10.36,14.219],[12.024,14.621],[12.199,14.513],[12.494,12.673],[9.415,6.441],[3.587,0.078]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":88.059,"s":[{"i":[[-1.494,-2.799],[0,0],[0,0],[-0.568,0.29],[-0.056,0.041],[0.427,0.589],[0,0],[0.007,0.016]],"o":[[-0.025,-0.018],[0,0],[0.385,0.532],[0.061,-0.031],[0.589,-0.426],[0,0],[0,0],[-3.118,-0.234]],"v":[[-0.006,4.393],[6.345,7.764],[10.36,14.219],[12.024,14.621],[12.199,14.513],[12.494,12.673],[9.415,6.441],[3.587,0.078]],"c":true}],"e":[{"i":[[-1.494,-2.799],[0,0],[0,0],[-0.568,0.29],[-0.056,0.041],[0.427,0.589],[0,0],[0.007,0.016]],"o":[[-0.025,-0.018],[0,0],[0.385,0.532],[0.061,-0.031],[0.589,-0.426],[0,0],[0,0],[-3.118,-0.234]],"v":[[-0.006,4.393],[5.97,9.514],[10.735,16.594],[12.399,16.996],[12.574,16.888],[12.869,15.048],[9.04,8.191],[3.587,0.078]],"c":true}]},{"t":101.607009887695}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,3],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":67.738,"s":[30],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":84.673,"s":[0],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":88.059,"s":[0],"e":[30]},{"t":101.607009887695}],"ix":6,"x":"var $bm_rt;\nvar easingPreset = [\n        [\n            3,\n            4,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ],\n        [\n            1,\n            2,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ],\n        [\n            2,\n            3,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ]\n    ];\nfunction easingMaker() {\n    var t, d, newProgress, sX, eX, sY, eY, sZ, eZ, val1, val2, val2, val3;\n    var n = 0;\n    if (numKeys > 0) {\n        n = nearestKey(time).index;\n        if (key(n).time > time) {\n            n--;\n        }\n    }\n    try {\n        var key1 = key(n);\n        var key2 = key(sum(n, 1));\n    } catch (e) {\n        return null;\n    }\n    var dim = 1;\n    try {\n        key(1)[1];\n        dim = 2;\n        key(1)[2];\n        dim = 3;\n    } catch (e) {\n    }\n    var expression = null;\n    for (var i = 0; i < easingPreset.length; ++i) {\n        if (easingPreset[i][0] <= n && easingPreset[i][1] >= n + 1) {\n            var expression = eval([easingPreset[i][2][0]][0]);\n            try {\n                expression = expression.apply({}, easingPreset[i][2][1].concat(easingPreset[i][2][3]));\n            } catch (e) {\n                expression = expression.apply({}, easingPreset[i][2][1]);\n            }\n            break;\n        }\n    }\n    if (!expression)\n        return null;\n    t = sub(time, key1.time);\n    d = sub(key2.time, key1.time);\n    if (expression.hasOwnProperty('curviosity') && expression.curviosity) {\n        newProgress = expression.executeProgress(div(t, d));\n        return thisProperty.valueAtTime(sum(key1.time, mul(d, newProgress)));\n    }\n    sX = key1[0];\n    eX = sub(key2[0], key1[0]);\n    if (dim >= 2) {\n        sY = key1[1];\n        eY = sub(key2[1], key1[1]);\n        if (dim >= 3) {\n            sZ = key1[2];\n            eZ = sub(key2[2], key1[2]);\n        }\n    }\n    if (time < key1.time || time > key2.time) {\n        return value;\n    } else {\n        val1 = expression.execute(t, sX, eX, d);\n        switch (dim) {\n        case 1:\n            return val1;\n        case 2:\n            val2 = expression.execute(t, sY, eY, d);\n            return [\n                val1,\n                val2\n            ];\n        case 3:\n            val2 = expression.execute(t, sY, eY, d);\n            val3 = expression.execute(t, sZ, eZ, d);\n            return [\n                val1,\n                val2,\n                val3\n            ];\n        default:\n            return null;\n        }\n    }\n}\n$bm_rt = easingMaker() || value;\nfunction sampleCurveY(t) {\n    return mul(sum(mul(sum(mul(this.ay, t), this.by), t), this.cy), t);\n}\nfunction sampleCurveX(t) {\n    return mul(sum(mul(sum(mul(this.ax, t), this.bx), t), this.cx), t);\n}\nfunction sampleCurveDerivativeX(t) {\n    return sum(mul(sum(mul(mul(3, this.ax), t), mul(2, this.bx)), t), this.cx);\n}\nfunction solveCurveX(x, epsilon) {\n    var t2, i, x2, d2, t0, t1;\n    for (t2 = x, i = 0; i < 8; i++) {\n        x2 = sub(sampleCurveX.call(this, t2), x);\n        if (Math.abs(x2) < epsilon)\n            return t2;\n        d2 = sampleCurveDerivativeX.call(this, t2);\n        if (Math.abs(d2) < 0.000001)\n            break;\n        t2 = sub(t2, div(x2, d2));\n    }\n    t0 = 0;\n    t1 = 1;\n    t2 = x;\n    if (t2 < t0)\n        return t0;\n    if (t2 > t1)\n        return t1;\n    while (t0 < t1) {\n        x2 = sampleCurveX.call(this, t2);\n        if (Math.abs(x2 - x) < epsilon)\n            return t2;\n        if (x > x2)\n            t0 = t2;\n        else\n            t1 = t2;\n        t2 = sum(mul(sub(t1, t0), 0.5), t0);\n    }\n    return t2;\n}\nfunction executeBezier(t, b, e, d) {\n    return sum(b, mul(e, sampleCurveY.call(this, solveCurveX.call(this, div(t, d), div(1, mul(200, d))))));\n}\nfunction executeBezierProgress(oldProgress) {\n    return sampleCurveY.call(this, solveCurveX.call(this, oldProgress, 1 / 200));\n}\nfunction make_bezier_easing(p1x, p1y, p2x, p2y, curviosity) {\n    this.cx = mul(3, p1x);\n    this.bx = sub(mul(3, sub(p2x, p1x)), this.cx);\n    this.ax = sub(sub(1, this.cx), this.bx);\n    this.cy = mul(3, p1y);\n    this.by = sub(mul(3, sub(p2y, p1y)), this.cy);\n    this.ay = sub(sub(1, this.cy), this.by);\n    this.curviosity = curviosity;\n    this.execute = executeBezier;\n    this.executeProgress = executeBezierProgress;\n    return this;\n}\nfunction executeElasticIn(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum($bm_neg(mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n}\nfunction executeElasticOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum(sum(mul(mul(a, Math.pow(2, mul(-10, t))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), c), b);\n}\nfunction executeElasticInOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d / 2) === 2)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3 * 1.5);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    if (t < 1)\n        return sum(mul(-0.5, mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n    return sum(sum(mul(mul(mul(a, Math.pow(2, mul(-10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), 0.5), c), b);\n}\nfunction executeElasticInProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : -Math.pow(2, 10 * Progress - 10) * Math.sin((Progress * 10 - 10.75) * (2 * Math.PI / 3));\n}\nfunction executeElasticOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Math.pow(2, -10 * Progress) * Math.sin((Progress * 10 - 0.75) * (2 * Math.PI / 3)) + 1;\n}\nfunction executeElasticInOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Progress < 0.5 ? -(Math.pow(2, 20 * Progress - 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5))) / 2 : Math.pow(2, -20 * Progress + 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5)) / 2 + 1;\n}\nfunction make_elastic_easing_in(curviosity) {\n    this.execute = executeElasticIn;\n    this.executeProgress = executeElasticInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_out(curviosity) {\n    this.execute = executeElasticOut;\n    this.executeProgress = executeElasticOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_in_out(curviosity) {\n    this.execute = executeElasticInOut;\n    this.executeProgress = executeElasticInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction executeBounceIn(t, b, c, d) {\n    return sum(sub(c, executeBounceOut(sub(d, t), 0, c, d)), b);\n}\nfunction executeBounceOut(t, b, c, d) {\n    if ((t /= d) < 1 / 2.75) {\n        return sum(mul(c, mul(mul(7.5625, t), t)), b);\n    } else if (t < 2 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 1.5 / 2.75), t), 0.75)), b);\n    } else if (t < 2.5 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.25 / 2.75), t), 0.9375)), b);\n    } else {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.625 / 2.75), t), 0.984375)), b);\n    }\n}\nfunction executeBounceInOut(t, b, c, d) {\n    if (t < d / 2)\n        return sum(mul(executeBounceIn(mul(t, 2), 0, c, d), 0.5), b);\n    return sum(sum(mul(executeBounceOut(sub(mul(t, 2), d), 0, c, d), 0.5), mul(c, 0.5)), b);\n}\nfunction executeBounceInProgress(oldProgress) {\n    return sub(1, executeBounceOut(sub(1, oldProgress)));\n}\nfunction executeBounceOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2.75) {\n        return mul(mul(7.5625, oldProgress), oldProgress);\n    } else if (oldProgress < 2 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 1.5 / 2.75), oldProgress), 0.75);\n    } else if (oldProgress < 2.5 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 2.25 / 2.75), oldProgress), 0.9375);\n    } else {\n        return sum(mul(mul(7.5625, oldProgress -= 2.625 / 2.75), oldProgress), 0.984375);\n    }\n}\nfunction executeBounceInOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2)\n        return mul(executeBounceIn(mul(oldProgress, 2)), 0.5);\n    return sum(mul(executeBounceOut(sub(mul(oldProgress, 2), 1)), 0.5), 0.5);\n}\nfunction make_bounce_easing_in(curviosity) {\n    this.execute = executeBounceIn;\n    this.executeProgress = executeBounceInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_out(curviosity) {\n    this.execute = executeBounceOut;\n    this.executeProgress = executeBounceOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_in_out(curviosity) {\n    this.execute = executeBounceInOut;\n    this.executeProgress = executeBounceInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}"},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"leg right","np":2,"cix":2,"ix":5,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.551,0.153],[0,0],[0,0],[-3.568,0.081],[0,0],[0,0]],"o":[[-0.548,0.165],[0,0],[0,0],[0,0],[3.568,-0.081],[0,0],[0.001,-0.048]],"v":[[1.526,-11.742],[-1.779,-11.724],[-3.864,-8.282],[-3.606,0.078],[-0.006,4.393],[3.587,0.078],[4.117,-8.282]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,3],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"body","np":3,"cix":2,"ix":6,"mn":"ADBE Vector Group","hd":false}],"ip":67.7380065917969,"op":101.607009887695,"st":67.7380065917969,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Shape Layer 2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[100,100,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[400,400,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-2.083,-0.067],[-0.067,2.085],[2.085,0.067],[0.068,-2.084]],"o":[[2.084,0.068],[0.067,-2.084],[-2.083,-0.068],[-0.067,2.085]],"v":[[-0.123,3.772],[3.774,0.12],[0.122,-3.773],[-3.774,-0.124]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,-14.438],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"head","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":33.869,"s":[{"i":[[0.717,2.38],[0,0],[0,0],[0.313,-0.621],[-0.53,-0.458],[0,0],[-0.011,0.063]],"o":[[0,0],[0,0],[-0.545,-0.365],[-0.314,0.621],[0,0],[0,0],[2.396,0.532]],"v":[[-0.717,-11.599],[-7.06,-13.364],[-13.286,-13.415],[-14.978,-12.858],[-14.421,-11.166],[-8.351,-10.775],[-3.864,-8.282]],"c":true}],"e":[{"i":[[0.717,2.38],[0,0],[0,0],[0.313,-0.621],[-0.53,-0.458],[0,0],[-0.011,0.063]],"o":[[0,0],[0,0],[-0.545,-0.365],[-0.314,0.621],[0,0],[0,0],[2.396,0.532]],"v":[[-0.717,-11.599],[-7.06,-13.364],[-11.599,-16.915],[-13.29,-16.358],[-12.733,-14.666],[-8.351,-10.775],[-3.864,-8.282]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":50.804,"s":[{"i":[[0.717,2.38],[0,0],[0,0],[0.313,-0.621],[-0.53,-0.458],[0,0],[-0.011,0.063]],"o":[[0,0],[0,0],[-0.545,-0.365],[-0.314,0.621],[0,0],[0,0],[2.396,0.532]],"v":[[-0.717,-11.599],[-7.06,-13.364],[-11.599,-16.915],[-13.29,-16.358],[-12.733,-14.666],[-8.351,-10.775],[-3.864,-8.282]],"c":true}],"e":[{"i":[[0.717,2.38],[0,0],[0,0],[0.313,-0.621],[-0.53,-0.458],[0,0],[-0.011,0.063]],"o":[[0,0],[0,0],[-0.545,-0.365],[-0.314,0.621],[0,0],[0,0],[2.396,0.532]],"v":[[-0.717,-11.599],[-7.06,-13.364],[-13.286,-13.415],[-14.978,-12.858],[-14.421,-11.166],[-8.351,-10.775],[-3.864,-8.282]],"c":true}]},{"t":67.7380065917969}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-2.188,-6.875],"ix":2},"a":{"a":0,"k":[-2.188,-9.875],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":33.869,"s":[-90],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":50.804,"s":[0],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":54.19,"s":[0],"e":[-90]},{"t":67.7380065917969}],"ix":6,"x":"var $bm_rt;\nvar easingPreset = [\n        [\n            3,\n            4,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ],\n        [\n            1,\n            2,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ]\n    ];\nfunction easingMaker() {\n    var t, d, newProgress, sX, eX, sY, eY, sZ, eZ, val1, val2, val2, val3;\n    var n = 0;\n    if (numKeys > 0) {\n        n = nearestKey(time).index;\n        if (key(n).time > time) {\n            n--;\n        }\n    }\n    try {\n        var key1 = key(n);\n        var key2 = key(sum(n, 1));\n    } catch (e) {\n        return null;\n    }\n    var dim = 1;\n    try {\n        key(1)[1];\n        dim = 2;\n        key(1)[2];\n        dim = 3;\n    } catch (e) {\n    }\n    var expression = null;\n    for (var i = 0; i < easingPreset.length; ++i) {\n        if (easingPreset[i][0] <= n && easingPreset[i][1] >= n + 1) {\n            var expression = eval([easingPreset[i][2][0]][0]);\n            try {\n                expression = expression.apply({}, easingPreset[i][2][1].concat(easingPreset[i][2][3]));\n            } catch (e) {\n                expression = expression.apply({}, easingPreset[i][2][1]);\n            }\n            break;\n        }\n    }\n    if (!expression)\n        return null;\n    t = sub(time, key1.time);\n    d = sub(key2.time, key1.time);\n    if (expression.hasOwnProperty('curviosity') && expression.curviosity) {\n        newProgress = expression.executeProgress(div(t, d));\n        return thisProperty.valueAtTime(sum(key1.time, mul(d, newProgress)));\n    }\n    sX = key1[0];\n    eX = sub(key2[0], key1[0]);\n    if (dim >= 2) {\n        sY = key1[1];\n        eY = sub(key2[1], key1[1]);\n        if (dim >= 3) {\n            sZ = key1[2];\n            eZ = sub(key2[2], key1[2]);\n        }\n    }\n    if (time < key1.time || time > key2.time) {\n        return value;\n    } else {\n        val1 = expression.execute(t, sX, eX, d);\n        switch (dim) {\n        case 1:\n            return val1;\n        case 2:\n            val2 = expression.execute(t, sY, eY, d);\n            return [\n                val1,\n                val2\n            ];\n        case 3:\n            val2 = expression.execute(t, sY, eY, d);\n            val3 = expression.execute(t, sZ, eZ, d);\n            return [\n                val1,\n                val2,\n                val3\n            ];\n        default:\n            return null;\n        }\n    }\n}\n$bm_rt = easingMaker() || value;\nfunction sampleCurveY(t) {\n    return mul(sum(mul(sum(mul(this.ay, t), this.by), t), this.cy), t);\n}\nfunction sampleCurveX(t) {\n    return mul(sum(mul(sum(mul(this.ax, t), this.bx), t), this.cx), t);\n}\nfunction sampleCurveDerivativeX(t) {\n    return sum(mul(sum(mul(mul(3, this.ax), t), mul(2, this.bx)), t), this.cx);\n}\nfunction solveCurveX(x, epsilon) {\n    var t2, i, x2, d2, t0, t1;\n    for (t2 = x, i = 0; i < 8; i++) {\n        x2 = sub(sampleCurveX.call(this, t2), x);\n        if (Math.abs(x2) < epsilon)\n            return t2;\n        d2 = sampleCurveDerivativeX.call(this, t2);\n        if (Math.abs(d2) < 0.000001)\n            break;\n        t2 = sub(t2, div(x2, d2));\n    }\n    t0 = 0;\n    t1 = 1;\n    t2 = x;\n    if (t2 < t0)\n        return t0;\n    if (t2 > t1)\n        return t1;\n    while (t0 < t1) {\n        x2 = sampleCurveX.call(this, t2);\n        if (Math.abs(x2 - x) < epsilon)\n            return t2;\n        if (x > x2)\n            t0 = t2;\n        else\n            t1 = t2;\n        t2 = sum(mul(sub(t1, t0), 0.5), t0);\n    }\n    return t2;\n}\nfunction executeBezier(t, b, e, d) {\n    return sum(b, mul(e, sampleCurveY.call(this, solveCurveX.call(this, div(t, d), div(1, mul(200, d))))));\n}\nfunction executeBezierProgress(oldProgress) {\n    return sampleCurveY.call(this, solveCurveX.call(this, oldProgress, 1 / 200));\n}\nfunction make_bezier_easing(p1x, p1y, p2x, p2y, curviosity) {\n    this.cx = mul(3, p1x);\n    this.bx = sub(mul(3, sub(p2x, p1x)), this.cx);\n    this.ax = sub(sub(1, this.cx), this.bx);\n    this.cy = mul(3, p1y);\n    this.by = sub(mul(3, sub(p2y, p1y)), this.cy);\n    this.ay = sub(sub(1, this.cy), this.by);\n    this.curviosity = curviosity;\n    this.execute = executeBezier;\n    this.executeProgress = executeBezierProgress;\n    return this;\n}\nfunction executeElasticIn(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum($bm_neg(mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n}\nfunction executeElasticOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum(sum(mul(mul(a, Math.pow(2, mul(-10, t))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), c), b);\n}\nfunction executeElasticInOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d / 2) === 2)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3 * 1.5);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    if (t < 1)\n        return sum(mul(-0.5, mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n    return sum(sum(mul(mul(mul(a, Math.pow(2, mul(-10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), 0.5), c), b);\n}\nfunction executeElasticInProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : -Math.pow(2, 10 * Progress - 10) * Math.sin((Progress * 10 - 10.75) * (2 * Math.PI / 3));\n}\nfunction executeElasticOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Math.pow(2, -10 * Progress) * Math.sin((Progress * 10 - 0.75) * (2 * Math.PI / 3)) + 1;\n}\nfunction executeElasticInOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Progress < 0.5 ? -(Math.pow(2, 20 * Progress - 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5))) / 2 : Math.pow(2, -20 * Progress + 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5)) / 2 + 1;\n}\nfunction make_elastic_easing_in(curviosity) {\n    this.execute = executeElasticIn;\n    this.executeProgress = executeElasticInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_out(curviosity) {\n    this.execute = executeElasticOut;\n    this.executeProgress = executeElasticOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_in_out(curviosity) {\n    this.execute = executeElasticInOut;\n    this.executeProgress = executeElasticInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction executeBounceIn(t, b, c, d) {\n    return sum(sub(c, executeBounceOut(sub(d, t), 0, c, d)), b);\n}\nfunction executeBounceOut(t, b, c, d) {\n    if ((t /= d) < 1 / 2.75) {\n        return sum(mul(c, mul(mul(7.5625, t), t)), b);\n    } else if (t < 2 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 1.5 / 2.75), t), 0.75)), b);\n    } else if (t < 2.5 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.25 / 2.75), t), 0.9375)), b);\n    } else {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.625 / 2.75), t), 0.984375)), b);\n    }\n}\nfunction executeBounceInOut(t, b, c, d) {\n    if (t < d / 2)\n        return sum(mul(executeBounceIn(mul(t, 2), 0, c, d), 0.5), b);\n    return sum(sum(mul(executeBounceOut(sub(mul(t, 2), d), 0, c, d), 0.5), mul(c, 0.5)), b);\n}\nfunction executeBounceInProgress(oldProgress) {\n    return sub(1, executeBounceOut(sub(1, oldProgress)));\n}\nfunction executeBounceOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2.75) {\n        return mul(mul(7.5625, oldProgress), oldProgress);\n    } else if (oldProgress < 2 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 1.5 / 2.75), oldProgress), 0.75);\n    } else if (oldProgress < 2.5 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 2.25 / 2.75), oldProgress), 0.9375);\n    } else {\n        return sum(mul(mul(7.5625, oldProgress -= 2.625 / 2.75), oldProgress), 0.984375);\n    }\n}\nfunction executeBounceInOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2)\n        return mul(executeBounceIn(mul(oldProgress, 2)), 0.5);\n    return sum(mul(executeBounceOut(sub(mul(oldProgress, 2), 1)), 0.5), 0.5);\n}\nfunction make_bounce_easing_in(curviosity) {\n    this.execute = executeBounceIn;\n    this.executeProgress = executeBounceInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_out(curviosity) {\n    this.execute = executeBounceOut;\n    this.executeProgress = executeBounceOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_in_out(curviosity) {\n    this.execute = executeBounceInOut;\n    this.executeProgress = executeBounceInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}"},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"arm left","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":33.869,"s":[{"i":[[0,0],[0,0],[0.314,0.621],[0.573,-0.371],[0,0],[-0.026,0.054],[-2.461,0.5]],"o":[[0,0],[0.607,-0.463],[-0.313,-0.621],[0,0],[0,0],[-1.183,2.773],[0.008,0]],"v":[[8.035,-10.775],[13.921,-11.416],[14.478,-13.108],[12.786,-13.665],[6.745,-13.364],[0.964,-11.617],[4.117,-8.282]],"c":true}],"e":[{"i":[[0,0],[0,0],[0.314,0.621],[0.573,-0.371],[0,0],[-0.026,0.054],[-2.461,0.5]],"o":[[0,0],[0.607,-0.463],[-0.313,-0.621],[0,0],[0,0],[-1.183,2.773],[0.008,0]],"v":[[8.035,-10.775],[12.733,-14.666],[13.29,-16.358],[11.599,-16.915],[6.745,-13.364],[0.964,-11.617],[4.117,-8.282]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":50.804,"s":[{"i":[[0,0],[0,0],[0.314,0.621],[0.573,-0.371],[0,0],[-0.026,0.054],[-2.461,0.5]],"o":[[0,0],[0.607,-0.463],[-0.313,-0.621],[0,0],[0,0],[-1.183,2.773],[0.008,0]],"v":[[8.035,-10.775],[12.733,-14.666],[13.29,-16.358],[11.599,-16.915],[6.745,-13.364],[0.964,-11.617],[4.117,-8.282]],"c":true}],"e":[{"i":[[0,0],[0,0],[0.314,0.621],[0.573,-0.371],[0,0],[-0.026,0.054],[-2.461,0.5]],"o":[[0,0],[0.607,-0.463],[-0.313,-0.621],[0,0],[0,0],[-1.183,2.773],[0.008,0]],"v":[[8.035,-10.775],[13.921,-11.416],[14.478,-13.108],[12.786,-13.665],[6.745,-13.364],[0.964,-11.617],[4.117,-8.282]],"c":true}]},{"t":67.7380065917969}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[2,-6.969],"ix":2},"a":{"a":0,"k":[2,-9.969],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":33.869,"s":[90],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":50.804,"s":[0],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":54.19,"s":[0],"e":[90]},{"t":67.7380065917969}],"ix":6,"x":"var $bm_rt;\nvar easingPreset = [\n        [\n            3,\n            4,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ],\n        [\n            1,\n            2,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ]\n    ];\nfunction easingMaker() {\n    var t, d, newProgress, sX, eX, sY, eY, sZ, eZ, val1, val2, val2, val3;\n    var n = 0;\n    if (numKeys > 0) {\n        n = nearestKey(time).index;\n        if (key(n).time > time) {\n            n--;\n        }\n    }\n    try {\n        var key1 = key(n);\n        var key2 = key(sum(n, 1));\n    } catch (e) {\n        return null;\n    }\n    var dim = 1;\n    try {\n        key(1)[1];\n        dim = 2;\n        key(1)[2];\n        dim = 3;\n    } catch (e) {\n    }\n    var expression = null;\n    for (var i = 0; i < easingPreset.length; ++i) {\n        if (easingPreset[i][0] <= n && easingPreset[i][1] >= n + 1) {\n            var expression = eval([easingPreset[i][2][0]][0]);\n            try {\n                expression = expression.apply({}, easingPreset[i][2][1].concat(easingPreset[i][2][3]));\n            } catch (e) {\n                expression = expression.apply({}, easingPreset[i][2][1]);\n            }\n            break;\n        }\n    }\n    if (!expression)\n        return null;\n    t = sub(time, key1.time);\n    d = sub(key2.time, key1.time);\n    if (expression.hasOwnProperty('curviosity') && expression.curviosity) {\n        newProgress = expression.executeProgress(div(t, d));\n        return thisProperty.valueAtTime(sum(key1.time, mul(d, newProgress)));\n    }\n    sX = key1[0];\n    eX = sub(key2[0], key1[0]);\n    if (dim >= 2) {\n        sY = key1[1];\n        eY = sub(key2[1], key1[1]);\n        if (dim >= 3) {\n            sZ = key1[2];\n            eZ = sub(key2[2], key1[2]);\n        }\n    }\n    if (time < key1.time || time > key2.time) {\n        return value;\n    } else {\n        val1 = expression.execute(t, sX, eX, d);\n        switch (dim) {\n        case 1:\n            return val1;\n        case 2:\n            val2 = expression.execute(t, sY, eY, d);\n            return [\n                val1,\n                val2\n            ];\n        case 3:\n            val2 = expression.execute(t, sY, eY, d);\n            val3 = expression.execute(t, sZ, eZ, d);\n            return [\n                val1,\n                val2,\n                val3\n            ];\n        default:\n            return null;\n        }\n    }\n}\n$bm_rt = easingMaker() || value;\nfunction sampleCurveY(t) {\n    return mul(sum(mul(sum(mul(this.ay, t), this.by), t), this.cy), t);\n}\nfunction sampleCurveX(t) {\n    return mul(sum(mul(sum(mul(this.ax, t), this.bx), t), this.cx), t);\n}\nfunction sampleCurveDerivativeX(t) {\n    return sum(mul(sum(mul(mul(3, this.ax), t), mul(2, this.bx)), t), this.cx);\n}\nfunction solveCurveX(x, epsilon) {\n    var t2, i, x2, d2, t0, t1;\n    for (t2 = x, i = 0; i < 8; i++) {\n        x2 = sub(sampleCurveX.call(this, t2), x);\n        if (Math.abs(x2) < epsilon)\n            return t2;\n        d2 = sampleCurveDerivativeX.call(this, t2);\n        if (Math.abs(d2) < 0.000001)\n            break;\n        t2 = sub(t2, div(x2, d2));\n    }\n    t0 = 0;\n    t1 = 1;\n    t2 = x;\n    if (t2 < t0)\n        return t0;\n    if (t2 > t1)\n        return t1;\n    while (t0 < t1) {\n        x2 = sampleCurveX.call(this, t2);\n        if (Math.abs(x2 - x) < epsilon)\n            return t2;\n        if (x > x2)\n            t0 = t2;\n        else\n            t1 = t2;\n        t2 = sum(mul(sub(t1, t0), 0.5), t0);\n    }\n    return t2;\n}\nfunction executeBezier(t, b, e, d) {\n    return sum(b, mul(e, sampleCurveY.call(this, solveCurveX.call(this, div(t, d), div(1, mul(200, d))))));\n}\nfunction executeBezierProgress(oldProgress) {\n    return sampleCurveY.call(this, solveCurveX.call(this, oldProgress, 1 / 200));\n}\nfunction make_bezier_easing(p1x, p1y, p2x, p2y, curviosity) {\n    this.cx = mul(3, p1x);\n    this.bx = sub(mul(3, sub(p2x, p1x)), this.cx);\n    this.ax = sub(sub(1, this.cx), this.bx);\n    this.cy = mul(3, p1y);\n    this.by = sub(mul(3, sub(p2y, p1y)), this.cy);\n    this.ay = sub(sub(1, this.cy), this.by);\n    this.curviosity = curviosity;\n    this.execute = executeBezier;\n    this.executeProgress = executeBezierProgress;\n    return this;\n}\nfunction executeElasticIn(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum($bm_neg(mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n}\nfunction executeElasticOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum(sum(mul(mul(a, Math.pow(2, mul(-10, t))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), c), b);\n}\nfunction executeElasticInOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d / 2) === 2)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3 * 1.5);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    if (t < 1)\n        return sum(mul(-0.5, mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n    return sum(sum(mul(mul(mul(a, Math.pow(2, mul(-10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), 0.5), c), b);\n}\nfunction executeElasticInProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : -Math.pow(2, 10 * Progress - 10) * Math.sin((Progress * 10 - 10.75) * (2 * Math.PI / 3));\n}\nfunction executeElasticOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Math.pow(2, -10 * Progress) * Math.sin((Progress * 10 - 0.75) * (2 * Math.PI / 3)) + 1;\n}\nfunction executeElasticInOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Progress < 0.5 ? -(Math.pow(2, 20 * Progress - 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5))) / 2 : Math.pow(2, -20 * Progress + 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5)) / 2 + 1;\n}\nfunction make_elastic_easing_in(curviosity) {\n    this.execute = executeElasticIn;\n    this.executeProgress = executeElasticInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_out(curviosity) {\n    this.execute = executeElasticOut;\n    this.executeProgress = executeElasticOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_in_out(curviosity) {\n    this.execute = executeElasticInOut;\n    this.executeProgress = executeElasticInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction executeBounceIn(t, b, c, d) {\n    return sum(sub(c, executeBounceOut(sub(d, t), 0, c, d)), b);\n}\nfunction executeBounceOut(t, b, c, d) {\n    if ((t /= d) < 1 / 2.75) {\n        return sum(mul(c, mul(mul(7.5625, t), t)), b);\n    } else if (t < 2 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 1.5 / 2.75), t), 0.75)), b);\n    } else if (t < 2.5 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.25 / 2.75), t), 0.9375)), b);\n    } else {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.625 / 2.75), t), 0.984375)), b);\n    }\n}\nfunction executeBounceInOut(t, b, c, d) {\n    if (t < d / 2)\n        return sum(mul(executeBounceIn(mul(t, 2), 0, c, d), 0.5), b);\n    return sum(sum(mul(executeBounceOut(sub(mul(t, 2), d), 0, c, d), 0.5), mul(c, 0.5)), b);\n}\nfunction executeBounceInProgress(oldProgress) {\n    return sub(1, executeBounceOut(sub(1, oldProgress)));\n}\nfunction executeBounceOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2.75) {\n        return mul(mul(7.5625, oldProgress), oldProgress);\n    } else if (oldProgress < 2 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 1.5 / 2.75), oldProgress), 0.75);\n    } else if (oldProgress < 2.5 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 2.25 / 2.75), oldProgress), 0.9375);\n    } else {\n        return sum(mul(mul(7.5625, oldProgress -= 2.625 / 2.75), oldProgress), 0.984375);\n    }\n}\nfunction executeBounceInOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2)\n        return mul(executeBounceIn(mul(oldProgress, 2)), 0.5);\n    return sum(mul(executeBounceOut(sub(mul(oldProgress, 2), 1)), 0.5), 0.5);\n}\nfunction make_bounce_easing_in(curviosity) {\n    this.execute = executeBounceIn;\n    this.executeProgress = executeBounceInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_out(curviosity) {\n    this.execute = executeBounceOut;\n    this.executeProgress = executeBounceOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_in_out(curviosity) {\n    this.execute = executeBounceInOut;\n    this.executeProgress = executeBounceInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}"},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"arm right","np":2,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":47.417,"s":[{"i":[[3.419,-0.047],[0,0],[0,0],[-0.589,-0.426],[-0.061,-0.031],[-0.387,0.532],[0,0],[0.006,-0.049]],"o":[[0.013,-0.047],[0,0],[-0.427,0.589],[0.056,0.041],[0.568,0.29],[0,0],[0,0],[0.975,-3.393]],"v":[[-3.606,0.078],[-9.234,8.474],[-12.881,15.048],[-12.586,16.888],[-12.411,16.996],[-10.746,16.594],[-5.964,9.747],[-0.006,4.393]],"c":true}],"e":[{"i":[[3.419,-0.047],[0,0],[0,0],[-0.589,-0.426],[-0.061,-0.031],[-0.387,0.532],[0,0],[0.006,-0.049]],"o":[[0.013,-0.047],[0,0],[-0.427,0.589],[0.056,0.041],[0.568,0.29],[0,0],[0,0],[0.975,-3.393]],"v":[[-3.606,0.078],[-9.297,6.224],[-12.443,12.673],[-12.148,14.513],[-11.974,14.621],[-10.309,14.219],[-6.026,7.497],[-0.006,4.393]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":54.19,"s":[{"i":[[3.419,-0.047],[0,0],[0,0],[-0.589,-0.426],[-0.061,-0.031],[-0.387,0.532],[0,0],[0.006,-0.049]],"o":[[0.013,-0.047],[0,0],[-0.427,0.589],[0.056,0.041],[0.568,0.29],[0,0],[0,0],[0.975,-3.393]],"v":[[-3.606,0.078],[-9.297,6.224],[-12.443,12.673],[-12.148,14.513],[-11.974,14.621],[-10.309,14.219],[-6.026,7.497],[-0.006,4.393]],"c":true}],"e":[{"i":[[3.419,-0.047],[0,0],[0,0],[-0.589,-0.426],[-0.061,-0.031],[-0.387,0.532],[0,0],[0.006,-0.049]],"o":[[0.013,-0.047],[0,0],[-0.427,0.589],[0.056,0.041],[0.568,0.29],[0,0],[0,0],[0.975,-3.393]],"v":[[-3.606,0.078],[-9.234,8.474],[-12.881,15.048],[-12.586,16.888],[-12.411,16.996],[-10.746,16.594],[-5.964,9.747],[-0.006,4.393]],"c":true}]},{"t":67.7380065917969}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,3],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":33.869,"s":[-30],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":50.804,"s":[0],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":54.19,"s":[0],"e":[-30]},{"t":67.7380065917969}],"ix":6,"x":"var $bm_rt;\nvar easingPreset = [\n        [\n            3,\n            4,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ],\n        [\n            1,\n            2,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ]\n    ];\nfunction easingMaker() {\n    var t, d, newProgress, sX, eX, sY, eY, sZ, eZ, val1, val2, val2, val3;\n    var n = 0;\n    if (numKeys > 0) {\n        n = nearestKey(time).index;\n        if (key(n).time > time) {\n            n--;\n        }\n    }\n    try {\n        var key1 = key(n);\n        var key2 = key(sum(n, 1));\n    } catch (e) {\n        return null;\n    }\n    var dim = 1;\n    try {\n        key(1)[1];\n        dim = 2;\n        key(1)[2];\n        dim = 3;\n    } catch (e) {\n    }\n    var expression = null;\n    for (var i = 0; i < easingPreset.length; ++i) {\n        if (easingPreset[i][0] <= n && easingPreset[i][1] >= n + 1) {\n            var expression = eval([easingPreset[i][2][0]][0]);\n            try {\n                expression = expression.apply({}, easingPreset[i][2][1].concat(easingPreset[i][2][3]));\n            } catch (e) {\n                expression = expression.apply({}, easingPreset[i][2][1]);\n            }\n            break;\n        }\n    }\n    if (!expression)\n        return null;\n    t = sub(time, key1.time);\n    d = sub(key2.time, key1.time);\n    if (expression.hasOwnProperty('curviosity') && expression.curviosity) {\n        newProgress = expression.executeProgress(div(t, d));\n        return thisProperty.valueAtTime(sum(key1.time, mul(d, newProgress)));\n    }\n    sX = key1[0];\n    eX = sub(key2[0], key1[0]);\n    if (dim >= 2) {\n        sY = key1[1];\n        eY = sub(key2[1], key1[1]);\n        if (dim >= 3) {\n            sZ = key1[2];\n            eZ = sub(key2[2], key1[2]);\n        }\n    }\n    if (time < key1.time || time > key2.time) {\n        return value;\n    } else {\n        val1 = expression.execute(t, sX, eX, d);\n        switch (dim) {\n        case 1:\n            return val1;\n        case 2:\n            val2 = expression.execute(t, sY, eY, d);\n            return [\n                val1,\n                val2\n            ];\n        case 3:\n            val2 = expression.execute(t, sY, eY, d);\n            val3 = expression.execute(t, sZ, eZ, d);\n            return [\n                val1,\n                val2,\n                val3\n            ];\n        default:\n            return null;\n        }\n    }\n}\n$bm_rt = easingMaker() || value;\nfunction sampleCurveY(t) {\n    return mul(sum(mul(sum(mul(this.ay, t), this.by), t), this.cy), t);\n}\nfunction sampleCurveX(t) {\n    return mul(sum(mul(sum(mul(this.ax, t), this.bx), t), this.cx), t);\n}\nfunction sampleCurveDerivativeX(t) {\n    return sum(mul(sum(mul(mul(3, this.ax), t), mul(2, this.bx)), t), this.cx);\n}\nfunction solveCurveX(x, epsilon) {\n    var t2, i, x2, d2, t0, t1;\n    for (t2 = x, i = 0; i < 8; i++) {\n        x2 = sub(sampleCurveX.call(this, t2), x);\n        if (Math.abs(x2) < epsilon)\n            return t2;\n        d2 = sampleCurveDerivativeX.call(this, t2);\n        if (Math.abs(d2) < 0.000001)\n            break;\n        t2 = sub(t2, div(x2, d2));\n    }\n    t0 = 0;\n    t1 = 1;\n    t2 = x;\n    if (t2 < t0)\n        return t0;\n    if (t2 > t1)\n        return t1;\n    while (t0 < t1) {\n        x2 = sampleCurveX.call(this, t2);\n        if (Math.abs(x2 - x) < epsilon)\n            return t2;\n        if (x > x2)\n            t0 = t2;\n        else\n            t1 = t2;\n        t2 = sum(mul(sub(t1, t0), 0.5), t0);\n    }\n    return t2;\n}\nfunction executeBezier(t, b, e, d) {\n    return sum(b, mul(e, sampleCurveY.call(this, solveCurveX.call(this, div(t, d), div(1, mul(200, d))))));\n}\nfunction executeBezierProgress(oldProgress) {\n    return sampleCurveY.call(this, solveCurveX.call(this, oldProgress, 1 / 200));\n}\nfunction make_bezier_easing(p1x, p1y, p2x, p2y, curviosity) {\n    this.cx = mul(3, p1x);\n    this.bx = sub(mul(3, sub(p2x, p1x)), this.cx);\n    this.ax = sub(sub(1, this.cx), this.bx);\n    this.cy = mul(3, p1y);\n    this.by = sub(mul(3, sub(p2y, p1y)), this.cy);\n    this.ay = sub(sub(1, this.cy), this.by);\n    this.curviosity = curviosity;\n    this.execute = executeBezier;\n    this.executeProgress = executeBezierProgress;\n    return this;\n}\nfunction executeElasticIn(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum($bm_neg(mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n}\nfunction executeElasticOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum(sum(mul(mul(a, Math.pow(2, mul(-10, t))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), c), b);\n}\nfunction executeElasticInOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d / 2) === 2)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3 * 1.5);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    if (t < 1)\n        return sum(mul(-0.5, mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n    return sum(sum(mul(mul(mul(a, Math.pow(2, mul(-10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), 0.5), c), b);\n}\nfunction executeElasticInProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : -Math.pow(2, 10 * Progress - 10) * Math.sin((Progress * 10 - 10.75) * (2 * Math.PI / 3));\n}\nfunction executeElasticOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Math.pow(2, -10 * Progress) * Math.sin((Progress * 10 - 0.75) * (2 * Math.PI / 3)) + 1;\n}\nfunction executeElasticInOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Progress < 0.5 ? -(Math.pow(2, 20 * Progress - 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5))) / 2 : Math.pow(2, -20 * Progress + 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5)) / 2 + 1;\n}\nfunction make_elastic_easing_in(curviosity) {\n    this.execute = executeElasticIn;\n    this.executeProgress = executeElasticInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_out(curviosity) {\n    this.execute = executeElasticOut;\n    this.executeProgress = executeElasticOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_in_out(curviosity) {\n    this.execute = executeElasticInOut;\n    this.executeProgress = executeElasticInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction executeBounceIn(t, b, c, d) {\n    return sum(sub(c, executeBounceOut(sub(d, t), 0, c, d)), b);\n}\nfunction executeBounceOut(t, b, c, d) {\n    if ((t /= d) < 1 / 2.75) {\n        return sum(mul(c, mul(mul(7.5625, t), t)), b);\n    } else if (t < 2 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 1.5 / 2.75), t), 0.75)), b);\n    } else if (t < 2.5 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.25 / 2.75), t), 0.9375)), b);\n    } else {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.625 / 2.75), t), 0.984375)), b);\n    }\n}\nfunction executeBounceInOut(t, b, c, d) {\n    if (t < d / 2)\n        return sum(mul(executeBounceIn(mul(t, 2), 0, c, d), 0.5), b);\n    return sum(sum(mul(executeBounceOut(sub(mul(t, 2), d), 0, c, d), 0.5), mul(c, 0.5)), b);\n}\nfunction executeBounceInProgress(oldProgress) {\n    return sub(1, executeBounceOut(sub(1, oldProgress)));\n}\nfunction executeBounceOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2.75) {\n        return mul(mul(7.5625, oldProgress), oldProgress);\n    } else if (oldProgress < 2 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 1.5 / 2.75), oldProgress), 0.75);\n    } else if (oldProgress < 2.5 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 2.25 / 2.75), oldProgress), 0.9375);\n    } else {\n        return sum(mul(mul(7.5625, oldProgress -= 2.625 / 2.75), oldProgress), 0.984375);\n    }\n}\nfunction executeBounceInOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2)\n        return mul(executeBounceIn(mul(oldProgress, 2)), 0.5);\n    return sum(mul(executeBounceOut(sub(mul(oldProgress, 2), 1)), 0.5), 0.5);\n}\nfunction make_bounce_easing_in(curviosity) {\n    this.execute = executeBounceIn;\n    this.executeProgress = executeBounceInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_out(curviosity) {\n    this.execute = executeBounceOut;\n    this.executeProgress = executeBounceOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_in_out(curviosity) {\n    this.execute = executeBounceInOut;\n    this.executeProgress = executeBounceInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}"},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"leg left","np":2,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":47.417,"s":[{"i":[[-1.494,-2.799],[0,0],[0,0],[-0.568,0.29],[-0.056,0.041],[0.427,0.589],[0,0],[0.007,0.016]],"o":[[-0.025,-0.018],[0,0],[0.385,0.532],[0.061,-0.031],[0.589,-0.426],[0,0],[0,0],[-3.118,-0.234]],"v":[[-0.006,4.393],[5.97,9.514],[10.735,16.594],[12.399,16.996],[12.574,16.888],[12.869,15.048],[9.04,8.191],[3.587,0.078]],"c":true}],"e":[{"i":[[-1.494,-2.799],[0,0],[0,0],[-0.568,0.29],[-0.056,0.041],[0.427,0.589],[0,0],[0.007,0.016]],"o":[[-0.025,-0.018],[0,0],[0.385,0.532],[0.061,-0.031],[0.589,-0.426],[0,0],[0,0],[-3.118,-0.234]],"v":[[-0.006,4.393],[6.345,7.764],[10.36,14.219],[12.024,14.621],[12.199,14.513],[12.494,12.673],[9.415,6.441],[3.587,0.078]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":54.19,"s":[{"i":[[-1.494,-2.799],[0,0],[0,0],[-0.568,0.29],[-0.056,0.041],[0.427,0.589],[0,0],[0.007,0.016]],"o":[[-0.025,-0.018],[0,0],[0.385,0.532],[0.061,-0.031],[0.589,-0.426],[0,0],[0,0],[-3.118,-0.234]],"v":[[-0.006,4.393],[6.345,7.764],[10.36,14.219],[12.024,14.621],[12.199,14.513],[12.494,12.673],[9.415,6.441],[3.587,0.078]],"c":true}],"e":[{"i":[[-1.494,-2.799],[0,0],[0,0],[-0.568,0.29],[-0.056,0.041],[0.427,0.589],[0,0],[0.007,0.016]],"o":[[-0.025,-0.018],[0,0],[0.385,0.532],[0.061,-0.031],[0.589,-0.426],[0,0],[0,0],[-3.118,-0.234]],"v":[[-0.006,4.393],[5.97,9.514],[10.735,16.594],[12.399,16.996],[12.574,16.888],[12.869,15.048],[9.04,8.191],[3.587,0.078]],"c":true}]},{"t":67.7380065917969}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,3],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":33.869,"s":[30],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":50.804,"s":[0],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":54.19,"s":[0],"e":[30]},{"t":67.7380065917969}],"ix":6,"x":"var $bm_rt;\nvar easingPreset = [\n        [\n            3,\n            4,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ],\n        [\n            1,\n            2,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ],\n        [\n            2,\n            3,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ]\n    ];\nfunction easingMaker() {\n    var t, d, newProgress, sX, eX, sY, eY, sZ, eZ, val1, val2, val2, val3;\n    var n = 0;\n    if (numKeys > 0) {\n        n = nearestKey(time).index;\n        if (key(n).time > time) {\n            n--;\n        }\n    }\n    try {\n        var key1 = key(n);\n        var key2 = key(sum(n, 1));\n    } catch (e) {\n        return null;\n    }\n    var dim = 1;\n    try {\n        key(1)[1];\n        dim = 2;\n        key(1)[2];\n        dim = 3;\n    } catch (e) {\n    }\n    var expression = null;\n    for (var i = 0; i < easingPreset.length; ++i) {\n        if (easingPreset[i][0] <= n && easingPreset[i][1] >= n + 1) {\n            var expression = eval([easingPreset[i][2][0]][0]);\n            try {\n                expression = expression.apply({}, easingPreset[i][2][1].concat(easingPreset[i][2][3]));\n            } catch (e) {\n                expression = expression.apply({}, easingPreset[i][2][1]);\n            }\n            break;\n        }\n    }\n    if (!expression)\n        return null;\n    t = sub(time, key1.time);\n    d = sub(key2.time, key1.time);\n    if (expression.hasOwnProperty('curviosity') && expression.curviosity) {\n        newProgress = expression.executeProgress(div(t, d));\n        return thisProperty.valueAtTime(sum(key1.time, mul(d, newProgress)));\n    }\n    sX = key1[0];\n    eX = sub(key2[0], key1[0]);\n    if (dim >= 2) {\n        sY = key1[1];\n        eY = sub(key2[1], key1[1]);\n        if (dim >= 3) {\n            sZ = key1[2];\n            eZ = sub(key2[2], key1[2]);\n        }\n    }\n    if (time < key1.time || time > key2.time) {\n        return value;\n    } else {\n        val1 = expression.execute(t, sX, eX, d);\n        switch (dim) {\n        case 1:\n            return val1;\n        case 2:\n            val2 = expression.execute(t, sY, eY, d);\n            return [\n                val1,\n                val2\n            ];\n        case 3:\n            val2 = expression.execute(t, sY, eY, d);\n            val3 = expression.execute(t, sZ, eZ, d);\n            return [\n                val1,\n                val2,\n                val3\n            ];\n        default:\n            return null;\n        }\n    }\n}\n$bm_rt = easingMaker() || value;\nfunction sampleCurveY(t) {\n    return mul(sum(mul(sum(mul(this.ay, t), this.by), t), this.cy), t);\n}\nfunction sampleCurveX(t) {\n    return mul(sum(mul(sum(mul(this.ax, t), this.bx), t), this.cx), t);\n}\nfunction sampleCurveDerivativeX(t) {\n    return sum(mul(sum(mul(mul(3, this.ax), t), mul(2, this.bx)), t), this.cx);\n}\nfunction solveCurveX(x, epsilon) {\n    var t2, i, x2, d2, t0, t1;\n    for (t2 = x, i = 0; i < 8; i++) {\n        x2 = sub(sampleCurveX.call(this, t2), x);\n        if (Math.abs(x2) < epsilon)\n            return t2;\n        d2 = sampleCurveDerivativeX.call(this, t2);\n        if (Math.abs(d2) < 0.000001)\n            break;\n        t2 = sub(t2, div(x2, d2));\n    }\n    t0 = 0;\n    t1 = 1;\n    t2 = x;\n    if (t2 < t0)\n        return t0;\n    if (t2 > t1)\n        return t1;\n    while (t0 < t1) {\n        x2 = sampleCurveX.call(this, t2);\n        if (Math.abs(x2 - x) < epsilon)\n            return t2;\n        if (x > x2)\n            t0 = t2;\n        else\n            t1 = t2;\n        t2 = sum(mul(sub(t1, t0), 0.5), t0);\n    }\n    return t2;\n}\nfunction executeBezier(t, b, e, d) {\n    return sum(b, mul(e, sampleCurveY.call(this, solveCurveX.call(this, div(t, d), div(1, mul(200, d))))));\n}\nfunction executeBezierProgress(oldProgress) {\n    return sampleCurveY.call(this, solveCurveX.call(this, oldProgress, 1 / 200));\n}\nfunction make_bezier_easing(p1x, p1y, p2x, p2y, curviosity) {\n    this.cx = mul(3, p1x);\n    this.bx = sub(mul(3, sub(p2x, p1x)), this.cx);\n    this.ax = sub(sub(1, this.cx), this.bx);\n    this.cy = mul(3, p1y);\n    this.by = sub(mul(3, sub(p2y, p1y)), this.cy);\n    this.ay = sub(sub(1, this.cy), this.by);\n    this.curviosity = curviosity;\n    this.execute = executeBezier;\n    this.executeProgress = executeBezierProgress;\n    return this;\n}\nfunction executeElasticIn(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum($bm_neg(mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n}\nfunction executeElasticOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum(sum(mul(mul(a, Math.pow(2, mul(-10, t))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), c), b);\n}\nfunction executeElasticInOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d / 2) === 2)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3 * 1.5);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    if (t < 1)\n        return sum(mul(-0.5, mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n    return sum(sum(mul(mul(mul(a, Math.pow(2, mul(-10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), 0.5), c), b);\n}\nfunction executeElasticInProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : -Math.pow(2, 10 * Progress - 10) * Math.sin((Progress * 10 - 10.75) * (2 * Math.PI / 3));\n}\nfunction executeElasticOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Math.pow(2, -10 * Progress) * Math.sin((Progress * 10 - 0.75) * (2 * Math.PI / 3)) + 1;\n}\nfunction executeElasticInOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Progress < 0.5 ? -(Math.pow(2, 20 * Progress - 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5))) / 2 : Math.pow(2, -20 * Progress + 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5)) / 2 + 1;\n}\nfunction make_elastic_easing_in(curviosity) {\n    this.execute = executeElasticIn;\n    this.executeProgress = executeElasticInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_out(curviosity) {\n    this.execute = executeElasticOut;\n    this.executeProgress = executeElasticOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_in_out(curviosity) {\n    this.execute = executeElasticInOut;\n    this.executeProgress = executeElasticInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction executeBounceIn(t, b, c, d) {\n    return sum(sub(c, executeBounceOut(sub(d, t), 0, c, d)), b);\n}\nfunction executeBounceOut(t, b, c, d) {\n    if ((t /= d) < 1 / 2.75) {\n        return sum(mul(c, mul(mul(7.5625, t), t)), b);\n    } else if (t < 2 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 1.5 / 2.75), t), 0.75)), b);\n    } else if (t < 2.5 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.25 / 2.75), t), 0.9375)), b);\n    } else {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.625 / 2.75), t), 0.984375)), b);\n    }\n}\nfunction executeBounceInOut(t, b, c, d) {\n    if (t < d / 2)\n        return sum(mul(executeBounceIn(mul(t, 2), 0, c, d), 0.5), b);\n    return sum(sum(mul(executeBounceOut(sub(mul(t, 2), d), 0, c, d), 0.5), mul(c, 0.5)), b);\n}\nfunction executeBounceInProgress(oldProgress) {\n    return sub(1, executeBounceOut(sub(1, oldProgress)));\n}\nfunction executeBounceOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2.75) {\n        return mul(mul(7.5625, oldProgress), oldProgress);\n    } else if (oldProgress < 2 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 1.5 / 2.75), oldProgress), 0.75);\n    } else if (oldProgress < 2.5 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 2.25 / 2.75), oldProgress), 0.9375);\n    } else {\n        return sum(mul(mul(7.5625, oldProgress -= 2.625 / 2.75), oldProgress), 0.984375);\n    }\n}\nfunction executeBounceInOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2)\n        return mul(executeBounceIn(mul(oldProgress, 2)), 0.5);\n    return sum(mul(executeBounceOut(sub(mul(oldProgress, 2), 1)), 0.5), 0.5);\n}\nfunction make_bounce_easing_in(curviosity) {\n    this.execute = executeBounceIn;\n    this.executeProgress = executeBounceInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_out(curviosity) {\n    this.execute = executeBounceOut;\n    this.executeProgress = executeBounceOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_in_out(curviosity) {\n    this.execute = executeBounceInOut;\n    this.executeProgress = executeBounceInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}"},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"leg right","np":2,"cix":2,"ix":5,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.551,0.153],[0,0],[0,0],[-3.568,0.081],[0,0],[0,0]],"o":[[-0.548,0.165],[0,0],[0,0],[0,0],[3.568,-0.081],[0,0],[0.001,-0.048]],"v":[[1.526,-11.742],[-1.779,-11.724],[-3.864,-8.282],[-3.606,0.078],[-0.006,4.393],[3.587,0.078],[4.117,-8.282]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,3],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"body","np":3,"cix":2,"ix":6,"mn":"ADBE Vector Group","hd":false}],"ip":33.8690032958984,"op":67.7380065917969,"st":33.8690032958984,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Shape Layer 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[100,100,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[400,400,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-2.083,-0.067],[-0.067,2.085],[2.085,0.067],[0.068,-2.084]],"o":[[2.084,0.068],[0.067,-2.084],[-2.083,-0.068],[-0.067,2.085]],"v":[[-0.123,3.772],[3.774,0.12],[0.122,-3.773],[-3.774,-0.124]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,-14.438],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"head","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":0,"s":[{"i":[[0.717,2.38],[0,0],[0,0],[0.313,-0.621],[-0.53,-0.458],[0,0],[-0.011,0.063]],"o":[[0,0],[0,0],[-0.545,-0.365],[-0.314,0.621],[0,0],[0,0],[2.396,0.532]],"v":[[-0.717,-11.599],[-7.06,-13.364],[-13.286,-13.415],[-14.978,-12.858],[-14.421,-11.166],[-8.351,-10.775],[-3.864,-8.282]],"c":true}],"e":[{"i":[[0.717,2.38],[0,0],[0,0],[0.313,-0.621],[-0.53,-0.458],[0,0],[-0.011,0.063]],"o":[[0,0],[0,0],[-0.545,-0.365],[-0.314,0.621],[0,0],[0,0],[2.396,0.532]],"v":[[-0.717,-11.599],[-7.06,-13.364],[-11.599,-16.915],[-13.29,-16.358],[-12.733,-14.666],[-8.351,-10.775],[-3.864,-8.282]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":16.935,"s":[{"i":[[0.717,2.38],[0,0],[0,0],[0.313,-0.621],[-0.53,-0.458],[0,0],[-0.011,0.063]],"o":[[0,0],[0,0],[-0.545,-0.365],[-0.314,0.621],[0,0],[0,0],[2.396,0.532]],"v":[[-0.717,-11.599],[-7.06,-13.364],[-11.599,-16.915],[-13.29,-16.358],[-12.733,-14.666],[-8.351,-10.775],[-3.864,-8.282]],"c":true}],"e":[{"i":[[0.717,2.38],[0,0],[0,0],[0.313,-0.621],[-0.53,-0.458],[0,0],[-0.011,0.063]],"o":[[0,0],[0,0],[-0.545,-0.365],[-0.314,0.621],[0,0],[0,0],[2.396,0.532]],"v":[[-0.717,-11.599],[-7.06,-13.364],[-13.286,-13.415],[-14.978,-12.858],[-14.421,-11.166],[-8.351,-10.775],[-3.864,-8.282]],"c":true}]},{"t":33.8690032958984}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-2.188,-6.875],"ix":2},"a":{"a":0,"k":[-2.188,-9.875],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":0,"s":[-90],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":16.935,"s":[0],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":20.321,"s":[0],"e":[-90]},{"t":33.8690032958984}],"ix":6,"x":"var $bm_rt;\nvar easingPreset = [\n        [\n            3,\n            4,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ],\n        [\n            1,\n            2,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ]\n    ];\nfunction easingMaker() {\n    var t, d, newProgress, sX, eX, sY, eY, sZ, eZ, val1, val2, val2, val3;\n    var n = 0;\n    if (numKeys > 0) {\n        n = nearestKey(time).index;\n        if (key(n).time > time) {\n            n--;\n        }\n    }\n    try {\n        var key1 = key(n);\n        var key2 = key(sum(n, 1));\n    } catch (e) {\n        return null;\n    }\n    var dim = 1;\n    try {\n        key(1)[1];\n        dim = 2;\n        key(1)[2];\n        dim = 3;\n    } catch (e) {\n    }\n    var expression = null;\n    for (var i = 0; i < easingPreset.length; ++i) {\n        if (easingPreset[i][0] <= n && easingPreset[i][1] >= n + 1) {\n            var expression = eval([easingPreset[i][2][0]][0]);\n            try {\n                expression = expression.apply({}, easingPreset[i][2][1].concat(easingPreset[i][2][3]));\n            } catch (e) {\n                expression = expression.apply({}, easingPreset[i][2][1]);\n            }\n            break;\n        }\n    }\n    if (!expression)\n        return null;\n    t = sub(time, key1.time);\n    d = sub(key2.time, key1.time);\n    if (expression.hasOwnProperty('curviosity') && expression.curviosity) {\n        newProgress = expression.executeProgress(div(t, d));\n        return thisProperty.valueAtTime(sum(key1.time, mul(d, newProgress)));\n    }\n    sX = key1[0];\n    eX = sub(key2[0], key1[0]);\n    if (dim >= 2) {\n        sY = key1[1];\n        eY = sub(key2[1], key1[1]);\n        if (dim >= 3) {\n            sZ = key1[2];\n            eZ = sub(key2[2], key1[2]);\n        }\n    }\n    if (time < key1.time || time > key2.time) {\n        return value;\n    } else {\n        val1 = expression.execute(t, sX, eX, d);\n        switch (dim) {\n        case 1:\n            return val1;\n        case 2:\n            val2 = expression.execute(t, sY, eY, d);\n            return [\n                val1,\n                val2\n            ];\n        case 3:\n            val2 = expression.execute(t, sY, eY, d);\n            val3 = expression.execute(t, sZ, eZ, d);\n            return [\n                val1,\n                val2,\n                val3\n            ];\n        default:\n            return null;\n        }\n    }\n}\n$bm_rt = easingMaker() || value;\nfunction sampleCurveY(t) {\n    return mul(sum(mul(sum(mul(this.ay, t), this.by), t), this.cy), t);\n}\nfunction sampleCurveX(t) {\n    return mul(sum(mul(sum(mul(this.ax, t), this.bx), t), this.cx), t);\n}\nfunction sampleCurveDerivativeX(t) {\n    return sum(mul(sum(mul(mul(3, this.ax), t), mul(2, this.bx)), t), this.cx);\n}\nfunction solveCurveX(x, epsilon) {\n    var t2, i, x2, d2, t0, t1;\n    for (t2 = x, i = 0; i < 8; i++) {\n        x2 = sub(sampleCurveX.call(this, t2), x);\n        if (Math.abs(x2) < epsilon)\n            return t2;\n        d2 = sampleCurveDerivativeX.call(this, t2);\n        if (Math.abs(d2) < 0.000001)\n            break;\n        t2 = sub(t2, div(x2, d2));\n    }\n    t0 = 0;\n    t1 = 1;\n    t2 = x;\n    if (t2 < t0)\n        return t0;\n    if (t2 > t1)\n        return t1;\n    while (t0 < t1) {\n        x2 = sampleCurveX.call(this, t2);\n        if (Math.abs(x2 - x) < epsilon)\n            return t2;\n        if (x > x2)\n            t0 = t2;\n        else\n            t1 = t2;\n        t2 = sum(mul(sub(t1, t0), 0.5), t0);\n    }\n    return t2;\n}\nfunction executeBezier(t, b, e, d) {\n    return sum(b, mul(e, sampleCurveY.call(this, solveCurveX.call(this, div(t, d), div(1, mul(200, d))))));\n}\nfunction executeBezierProgress(oldProgress) {\n    return sampleCurveY.call(this, solveCurveX.call(this, oldProgress, 1 / 200));\n}\nfunction make_bezier_easing(p1x, p1y, p2x, p2y, curviosity) {\n    this.cx = mul(3, p1x);\n    this.bx = sub(mul(3, sub(p2x, p1x)), this.cx);\n    this.ax = sub(sub(1, this.cx), this.bx);\n    this.cy = mul(3, p1y);\n    this.by = sub(mul(3, sub(p2y, p1y)), this.cy);\n    this.ay = sub(sub(1, this.cy), this.by);\n    this.curviosity = curviosity;\n    this.execute = executeBezier;\n    this.executeProgress = executeBezierProgress;\n    return this;\n}\nfunction executeElasticIn(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum($bm_neg(mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n}\nfunction executeElasticOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum(sum(mul(mul(a, Math.pow(2, mul(-10, t))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), c), b);\n}\nfunction executeElasticInOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d / 2) === 2)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3 * 1.5);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    if (t < 1)\n        return sum(mul(-0.5, mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n    return sum(sum(mul(mul(mul(a, Math.pow(2, mul(-10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), 0.5), c), b);\n}\nfunction executeElasticInProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : -Math.pow(2, 10 * Progress - 10) * Math.sin((Progress * 10 - 10.75) * (2 * Math.PI / 3));\n}\nfunction executeElasticOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Math.pow(2, -10 * Progress) * Math.sin((Progress * 10 - 0.75) * (2 * Math.PI / 3)) + 1;\n}\nfunction executeElasticInOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Progress < 0.5 ? -(Math.pow(2, 20 * Progress - 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5))) / 2 : Math.pow(2, -20 * Progress + 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5)) / 2 + 1;\n}\nfunction make_elastic_easing_in(curviosity) {\n    this.execute = executeElasticIn;\n    this.executeProgress = executeElasticInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_out(curviosity) {\n    this.execute = executeElasticOut;\n    this.executeProgress = executeElasticOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_in_out(curviosity) {\n    this.execute = executeElasticInOut;\n    this.executeProgress = executeElasticInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction executeBounceIn(t, b, c, d) {\n    return sum(sub(c, executeBounceOut(sub(d, t), 0, c, d)), b);\n}\nfunction executeBounceOut(t, b, c, d) {\n    if ((t /= d) < 1 / 2.75) {\n        return sum(mul(c, mul(mul(7.5625, t), t)), b);\n    } else if (t < 2 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 1.5 / 2.75), t), 0.75)), b);\n    } else if (t < 2.5 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.25 / 2.75), t), 0.9375)), b);\n    } else {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.625 / 2.75), t), 0.984375)), b);\n    }\n}\nfunction executeBounceInOut(t, b, c, d) {\n    if (t < d / 2)\n        return sum(mul(executeBounceIn(mul(t, 2), 0, c, d), 0.5), b);\n    return sum(sum(mul(executeBounceOut(sub(mul(t, 2), d), 0, c, d), 0.5), mul(c, 0.5)), b);\n}\nfunction executeBounceInProgress(oldProgress) {\n    return sub(1, executeBounceOut(sub(1, oldProgress)));\n}\nfunction executeBounceOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2.75) {\n        return mul(mul(7.5625, oldProgress), oldProgress);\n    } else if (oldProgress < 2 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 1.5 / 2.75), oldProgress), 0.75);\n    } else if (oldProgress < 2.5 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 2.25 / 2.75), oldProgress), 0.9375);\n    } else {\n        return sum(mul(mul(7.5625, oldProgress -= 2.625 / 2.75), oldProgress), 0.984375);\n    }\n}\nfunction executeBounceInOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2)\n        return mul(executeBounceIn(mul(oldProgress, 2)), 0.5);\n    return sum(mul(executeBounceOut(sub(mul(oldProgress, 2), 1)), 0.5), 0.5);\n}\nfunction make_bounce_easing_in(curviosity) {\n    this.execute = executeBounceIn;\n    this.executeProgress = executeBounceInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_out(curviosity) {\n    this.execute = executeBounceOut;\n    this.executeProgress = executeBounceOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_in_out(curviosity) {\n    this.execute = executeBounceInOut;\n    this.executeProgress = executeBounceInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}"},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"arm left","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":0,"s":[{"i":[[0,0],[0,0],[0.314,0.621],[0.573,-0.371],[0,0],[-0.026,0.054],[-2.461,0.5]],"o":[[0,0],[0.607,-0.463],[-0.313,-0.621],[0,0],[0,0],[-1.183,2.773],[0.008,0]],"v":[[8.035,-10.775],[13.921,-11.416],[14.478,-13.108],[12.786,-13.665],[6.745,-13.364],[0.964,-11.617],[4.117,-8.282]],"c":true}],"e":[{"i":[[0,0],[0,0],[0.314,0.621],[0.573,-0.371],[0,0],[-0.026,0.054],[-2.461,0.5]],"o":[[0,0],[0.607,-0.463],[-0.313,-0.621],[0,0],[0,0],[-1.183,2.773],[0.008,0]],"v":[[8.035,-10.775],[12.733,-14.666],[13.29,-16.358],[11.599,-16.915],[6.745,-13.364],[0.964,-11.617],[4.117,-8.282]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":16.935,"s":[{"i":[[0,0],[0,0],[0.314,0.621],[0.573,-0.371],[0,0],[-0.026,0.054],[-2.461,0.5]],"o":[[0,0],[0.607,-0.463],[-0.313,-0.621],[0,0],[0,0],[-1.183,2.773],[0.008,0]],"v":[[8.035,-10.775],[12.733,-14.666],[13.29,-16.358],[11.599,-16.915],[6.745,-13.364],[0.964,-11.617],[4.117,-8.282]],"c":true}],"e":[{"i":[[0,0],[0,0],[0.314,0.621],[0.573,-0.371],[0,0],[-0.026,0.054],[-2.461,0.5]],"o":[[0,0],[0.607,-0.463],[-0.313,-0.621],[0,0],[0,0],[-1.183,2.773],[0.008,0]],"v":[[8.035,-10.775],[13.921,-11.416],[14.478,-13.108],[12.786,-13.665],[6.745,-13.364],[0.964,-11.617],[4.117,-8.282]],"c":true}]},{"t":33.8690032958984}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[2,-6.969],"ix":2},"a":{"a":0,"k":[2,-9.969],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":0,"s":[90],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":16.935,"s":[0],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":20.321,"s":[0],"e":[90]},{"t":33.8690032958984}],"ix":6,"x":"var $bm_rt;\nvar easingPreset = [\n        [\n            3,\n            4,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ],\n        [\n            1,\n            2,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ]\n    ];\nfunction easingMaker() {\n    var t, d, newProgress, sX, eX, sY, eY, sZ, eZ, val1, val2, val2, val3;\n    var n = 0;\n    if (numKeys > 0) {\n        n = nearestKey(time).index;\n        if (key(n).time > time) {\n            n--;\n        }\n    }\n    try {\n        var key1 = key(n);\n        var key2 = key(sum(n, 1));\n    } catch (e) {\n        return null;\n    }\n    var dim = 1;\n    try {\n        key(1)[1];\n        dim = 2;\n        key(1)[2];\n        dim = 3;\n    } catch (e) {\n    }\n    var expression = null;\n    for (var i = 0; i < easingPreset.length; ++i) {\n        if (easingPreset[i][0] <= n && easingPreset[i][1] >= n + 1) {\n            var expression = eval([easingPreset[i][2][0]][0]);\n            try {\n                expression = expression.apply({}, easingPreset[i][2][1].concat(easingPreset[i][2][3]));\n            } catch (e) {\n                expression = expression.apply({}, easingPreset[i][2][1]);\n            }\n            break;\n        }\n    }\n    if (!expression)\n        return null;\n    t = sub(time, key1.time);\n    d = sub(key2.time, key1.time);\n    if (expression.hasOwnProperty('curviosity') && expression.curviosity) {\n        newProgress = expression.executeProgress(div(t, d));\n        return thisProperty.valueAtTime(sum(key1.time, mul(d, newProgress)));\n    }\n    sX = key1[0];\n    eX = sub(key2[0], key1[0]);\n    if (dim >= 2) {\n        sY = key1[1];\n        eY = sub(key2[1], key1[1]);\n        if (dim >= 3) {\n            sZ = key1[2];\n            eZ = sub(key2[2], key1[2]);\n        }\n    }\n    if (time < key1.time || time > key2.time) {\n        return value;\n    } else {\n        val1 = expression.execute(t, sX, eX, d);\n        switch (dim) {\n        case 1:\n            return val1;\n        case 2:\n            val2 = expression.execute(t, sY, eY, d);\n            return [\n                val1,\n                val2\n            ];\n        case 3:\n            val2 = expression.execute(t, sY, eY, d);\n            val3 = expression.execute(t, sZ, eZ, d);\n            return [\n                val1,\n                val2,\n                val3\n            ];\n        default:\n            return null;\n        }\n    }\n}\n$bm_rt = easingMaker() || value;\nfunction sampleCurveY(t) {\n    return mul(sum(mul(sum(mul(this.ay, t), this.by), t), this.cy), t);\n}\nfunction sampleCurveX(t) {\n    return mul(sum(mul(sum(mul(this.ax, t), this.bx), t), this.cx), t);\n}\nfunction sampleCurveDerivativeX(t) {\n    return sum(mul(sum(mul(mul(3, this.ax), t), mul(2, this.bx)), t), this.cx);\n}\nfunction solveCurveX(x, epsilon) {\n    var t2, i, x2, d2, t0, t1;\n    for (t2 = x, i = 0; i < 8; i++) {\n        x2 = sub(sampleCurveX.call(this, t2), x);\n        if (Math.abs(x2) < epsilon)\n            return t2;\n        d2 = sampleCurveDerivativeX.call(this, t2);\n        if (Math.abs(d2) < 0.000001)\n            break;\n        t2 = sub(t2, div(x2, d2));\n    }\n    t0 = 0;\n    t1 = 1;\n    t2 = x;\n    if (t2 < t0)\n        return t0;\n    if (t2 > t1)\n        return t1;\n    while (t0 < t1) {\n        x2 = sampleCurveX.call(this, t2);\n        if (Math.abs(x2 - x) < epsilon)\n            return t2;\n        if (x > x2)\n            t0 = t2;\n        else\n            t1 = t2;\n        t2 = sum(mul(sub(t1, t0), 0.5), t0);\n    }\n    return t2;\n}\nfunction executeBezier(t, b, e, d) {\n    return sum(b, mul(e, sampleCurveY.call(this, solveCurveX.call(this, div(t, d), div(1, mul(200, d))))));\n}\nfunction executeBezierProgress(oldProgress) {\n    return sampleCurveY.call(this, solveCurveX.call(this, oldProgress, 1 / 200));\n}\nfunction make_bezier_easing(p1x, p1y, p2x, p2y, curviosity) {\n    this.cx = mul(3, p1x);\n    this.bx = sub(mul(3, sub(p2x, p1x)), this.cx);\n    this.ax = sub(sub(1, this.cx), this.bx);\n    this.cy = mul(3, p1y);\n    this.by = sub(mul(3, sub(p2y, p1y)), this.cy);\n    this.ay = sub(sub(1, this.cy), this.by);\n    this.curviosity = curviosity;\n    this.execute = executeBezier;\n    this.executeProgress = executeBezierProgress;\n    return this;\n}\nfunction executeElasticIn(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum($bm_neg(mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n}\nfunction executeElasticOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum(sum(mul(mul(a, Math.pow(2, mul(-10, t))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), c), b);\n}\nfunction executeElasticInOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d / 2) === 2)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3 * 1.5);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    if (t < 1)\n        return sum(mul(-0.5, mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n    return sum(sum(mul(mul(mul(a, Math.pow(2, mul(-10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), 0.5), c), b);\n}\nfunction executeElasticInProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : -Math.pow(2, 10 * Progress - 10) * Math.sin((Progress * 10 - 10.75) * (2 * Math.PI / 3));\n}\nfunction executeElasticOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Math.pow(2, -10 * Progress) * Math.sin((Progress * 10 - 0.75) * (2 * Math.PI / 3)) + 1;\n}\nfunction executeElasticInOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Progress < 0.5 ? -(Math.pow(2, 20 * Progress - 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5))) / 2 : Math.pow(2, -20 * Progress + 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5)) / 2 + 1;\n}\nfunction make_elastic_easing_in(curviosity) {\n    this.execute = executeElasticIn;\n    this.executeProgress = executeElasticInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_out(curviosity) {\n    this.execute = executeElasticOut;\n    this.executeProgress = executeElasticOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_in_out(curviosity) {\n    this.execute = executeElasticInOut;\n    this.executeProgress = executeElasticInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction executeBounceIn(t, b, c, d) {\n    return sum(sub(c, executeBounceOut(sub(d, t), 0, c, d)), b);\n}\nfunction executeBounceOut(t, b, c, d) {\n    if ((t /= d) < 1 / 2.75) {\n        return sum(mul(c, mul(mul(7.5625, t), t)), b);\n    } else if (t < 2 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 1.5 / 2.75), t), 0.75)), b);\n    } else if (t < 2.5 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.25 / 2.75), t), 0.9375)), b);\n    } else {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.625 / 2.75), t), 0.984375)), b);\n    }\n}\nfunction executeBounceInOut(t, b, c, d) {\n    if (t < d / 2)\n        return sum(mul(executeBounceIn(mul(t, 2), 0, c, d), 0.5), b);\n    return sum(sum(mul(executeBounceOut(sub(mul(t, 2), d), 0, c, d), 0.5), mul(c, 0.5)), b);\n}\nfunction executeBounceInProgress(oldProgress) {\n    return sub(1, executeBounceOut(sub(1, oldProgress)));\n}\nfunction executeBounceOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2.75) {\n        return mul(mul(7.5625, oldProgress), oldProgress);\n    } else if (oldProgress < 2 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 1.5 / 2.75), oldProgress), 0.75);\n    } else if (oldProgress < 2.5 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 2.25 / 2.75), oldProgress), 0.9375);\n    } else {\n        return sum(mul(mul(7.5625, oldProgress -= 2.625 / 2.75), oldProgress), 0.984375);\n    }\n}\nfunction executeBounceInOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2)\n        return mul(executeBounceIn(mul(oldProgress, 2)), 0.5);\n    return sum(mul(executeBounceOut(sub(mul(oldProgress, 2), 1)), 0.5), 0.5);\n}\nfunction make_bounce_easing_in(curviosity) {\n    this.execute = executeBounceIn;\n    this.executeProgress = executeBounceInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_out(curviosity) {\n    this.execute = executeBounceOut;\n    this.executeProgress = executeBounceOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_in_out(curviosity) {\n    this.execute = executeBounceInOut;\n    this.executeProgress = executeBounceInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}"},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"arm right","np":2,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":13.548,"s":[{"i":[[3.419,-0.047],[0,0],[0,0],[-0.589,-0.426],[-0.061,-0.031],[-0.387,0.532],[0,0],[0.006,-0.049]],"o":[[0.013,-0.047],[0,0],[-0.427,0.589],[0.056,0.041],[0.568,0.29],[0,0],[0,0],[0.975,-3.393]],"v":[[-3.606,0.078],[-9.234,8.474],[-12.881,15.048],[-12.586,16.888],[-12.411,16.996],[-10.746,16.594],[-5.964,9.747],[-0.006,4.393]],"c":true}],"e":[{"i":[[3.419,-0.047],[0,0],[0,0],[-0.589,-0.426],[-0.061,-0.031],[-0.387,0.532],[0,0],[0.006,-0.049]],"o":[[0.013,-0.047],[0,0],[-0.427,0.589],[0.056,0.041],[0.568,0.29],[0,0],[0,0],[0.975,-3.393]],"v":[[-3.606,0.078],[-9.297,6.224],[-12.443,12.673],[-12.148,14.513],[-11.974,14.621],[-10.309,14.219],[-6.026,7.497],[-0.006,4.393]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":20.321,"s":[{"i":[[3.419,-0.047],[0,0],[0,0],[-0.589,-0.426],[-0.061,-0.031],[-0.387,0.532],[0,0],[0.006,-0.049]],"o":[[0.013,-0.047],[0,0],[-0.427,0.589],[0.056,0.041],[0.568,0.29],[0,0],[0,0],[0.975,-3.393]],"v":[[-3.606,0.078],[-9.297,6.224],[-12.443,12.673],[-12.148,14.513],[-11.974,14.621],[-10.309,14.219],[-6.026,7.497],[-0.006,4.393]],"c":true}],"e":[{"i":[[3.419,-0.047],[0,0],[0,0],[-0.589,-0.426],[-0.061,-0.031],[-0.387,0.532],[0,0],[0.006,-0.049]],"o":[[0.013,-0.047],[0,0],[-0.427,0.589],[0.056,0.041],[0.568,0.29],[0,0],[0,0],[0.975,-3.393]],"v":[[-3.606,0.078],[-9.234,8.474],[-12.881,15.048],[-12.586,16.888],[-12.411,16.996],[-10.746,16.594],[-5.964,9.747],[-0.006,4.393]],"c":true}]},{"t":33.8690032958984}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,3],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":0,"s":[-30],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":16.935,"s":[0],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":20.321,"s":[0],"e":[-30]},{"t":33.8690032958984}],"ix":6,"x":"var $bm_rt;\nvar easingPreset = [\n        [\n            3,\n            4,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ],\n        [\n            1,\n            2,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ]\n    ];\nfunction easingMaker() {\n    var t, d, newProgress, sX, eX, sY, eY, sZ, eZ, val1, val2, val2, val3;\n    var n = 0;\n    if (numKeys > 0) {\n        n = nearestKey(time).index;\n        if (key(n).time > time) {\n            n--;\n        }\n    }\n    try {\n        var key1 = key(n);\n        var key2 = key(sum(n, 1));\n    } catch (e) {\n        return null;\n    }\n    var dim = 1;\n    try {\n        key(1)[1];\n        dim = 2;\n        key(1)[2];\n        dim = 3;\n    } catch (e) {\n    }\n    var expression = null;\n    for (var i = 0; i < easingPreset.length; ++i) {\n        if (easingPreset[i][0] <= n && easingPreset[i][1] >= n + 1) {\n            var expression = eval([easingPreset[i][2][0]][0]);\n            try {\n                expression = expression.apply({}, easingPreset[i][2][1].concat(easingPreset[i][2][3]));\n            } catch (e) {\n                expression = expression.apply({}, easingPreset[i][2][1]);\n            }\n            break;\n        }\n    }\n    if (!expression)\n        return null;\n    t = sub(time, key1.time);\n    d = sub(key2.time, key1.time);\n    if (expression.hasOwnProperty('curviosity') && expression.curviosity) {\n        newProgress = expression.executeProgress(div(t, d));\n        return thisProperty.valueAtTime(sum(key1.time, mul(d, newProgress)));\n    }\n    sX = key1[0];\n    eX = sub(key2[0], key1[0]);\n    if (dim >= 2) {\n        sY = key1[1];\n        eY = sub(key2[1], key1[1]);\n        if (dim >= 3) {\n            sZ = key1[2];\n            eZ = sub(key2[2], key1[2]);\n        }\n    }\n    if (time < key1.time || time > key2.time) {\n        return value;\n    } else {\n        val1 = expression.execute(t, sX, eX, d);\n        switch (dim) {\n        case 1:\n            return val1;\n        case 2:\n            val2 = expression.execute(t, sY, eY, d);\n            return [\n                val1,\n                val2\n            ];\n        case 3:\n            val2 = expression.execute(t, sY, eY, d);\n            val3 = expression.execute(t, sZ, eZ, d);\n            return [\n                val1,\n                val2,\n                val3\n            ];\n        default:\n            return null;\n        }\n    }\n}\n$bm_rt = easingMaker() || value;\nfunction sampleCurveY(t) {\n    return mul(sum(mul(sum(mul(this.ay, t), this.by), t), this.cy), t);\n}\nfunction sampleCurveX(t) {\n    return mul(sum(mul(sum(mul(this.ax, t), this.bx), t), this.cx), t);\n}\nfunction sampleCurveDerivativeX(t) {\n    return sum(mul(sum(mul(mul(3, this.ax), t), mul(2, this.bx)), t), this.cx);\n}\nfunction solveCurveX(x, epsilon) {\n    var t2, i, x2, d2, t0, t1;\n    for (t2 = x, i = 0; i < 8; i++) {\n        x2 = sub(sampleCurveX.call(this, t2), x);\n        if (Math.abs(x2) < epsilon)\n            return t2;\n        d2 = sampleCurveDerivativeX.call(this, t2);\n        if (Math.abs(d2) < 0.000001)\n            break;\n        t2 = sub(t2, div(x2, d2));\n    }\n    t0 = 0;\n    t1 = 1;\n    t2 = x;\n    if (t2 < t0)\n        return t0;\n    if (t2 > t1)\n        return t1;\n    while (t0 < t1) {\n        x2 = sampleCurveX.call(this, t2);\n        if (Math.abs(x2 - x) < epsilon)\n            return t2;\n        if (x > x2)\n            t0 = t2;\n        else\n            t1 = t2;\n        t2 = sum(mul(sub(t1, t0), 0.5), t0);\n    }\n    return t2;\n}\nfunction executeBezier(t, b, e, d) {\n    return sum(b, mul(e, sampleCurveY.call(this, solveCurveX.call(this, div(t, d), div(1, mul(200, d))))));\n}\nfunction executeBezierProgress(oldProgress) {\n    return sampleCurveY.call(this, solveCurveX.call(this, oldProgress, 1 / 200));\n}\nfunction make_bezier_easing(p1x, p1y, p2x, p2y, curviosity) {\n    this.cx = mul(3, p1x);\n    this.bx = sub(mul(3, sub(p2x, p1x)), this.cx);\n    this.ax = sub(sub(1, this.cx), this.bx);\n    this.cy = mul(3, p1y);\n    this.by = sub(mul(3, sub(p2y, p1y)), this.cy);\n    this.ay = sub(sub(1, this.cy), this.by);\n    this.curviosity = curviosity;\n    this.execute = executeBezier;\n    this.executeProgress = executeBezierProgress;\n    return this;\n}\nfunction executeElasticIn(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum($bm_neg(mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n}\nfunction executeElasticOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum(sum(mul(mul(a, Math.pow(2, mul(-10, t))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), c), b);\n}\nfunction executeElasticInOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d / 2) === 2)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3 * 1.5);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    if (t < 1)\n        return sum(mul(-0.5, mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n    return sum(sum(mul(mul(mul(a, Math.pow(2, mul(-10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), 0.5), c), b);\n}\nfunction executeElasticInProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : -Math.pow(2, 10 * Progress - 10) * Math.sin((Progress * 10 - 10.75) * (2 * Math.PI / 3));\n}\nfunction executeElasticOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Math.pow(2, -10 * Progress) * Math.sin((Progress * 10 - 0.75) * (2 * Math.PI / 3)) + 1;\n}\nfunction executeElasticInOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Progress < 0.5 ? -(Math.pow(2, 20 * Progress - 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5))) / 2 : Math.pow(2, -20 * Progress + 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5)) / 2 + 1;\n}\nfunction make_elastic_easing_in(curviosity) {\n    this.execute = executeElasticIn;\n    this.executeProgress = executeElasticInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_out(curviosity) {\n    this.execute = executeElasticOut;\n    this.executeProgress = executeElasticOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_in_out(curviosity) {\n    this.execute = executeElasticInOut;\n    this.executeProgress = executeElasticInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction executeBounceIn(t, b, c, d) {\n    return sum(sub(c, executeBounceOut(sub(d, t), 0, c, d)), b);\n}\nfunction executeBounceOut(t, b, c, d) {\n    if ((t /= d) < 1 / 2.75) {\n        return sum(mul(c, mul(mul(7.5625, t), t)), b);\n    } else if (t < 2 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 1.5 / 2.75), t), 0.75)), b);\n    } else if (t < 2.5 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.25 / 2.75), t), 0.9375)), b);\n    } else {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.625 / 2.75), t), 0.984375)), b);\n    }\n}\nfunction executeBounceInOut(t, b, c, d) {\n    if (t < d / 2)\n        return sum(mul(executeBounceIn(mul(t, 2), 0, c, d), 0.5), b);\n    return sum(sum(mul(executeBounceOut(sub(mul(t, 2), d), 0, c, d), 0.5), mul(c, 0.5)), b);\n}\nfunction executeBounceInProgress(oldProgress) {\n    return sub(1, executeBounceOut(sub(1, oldProgress)));\n}\nfunction executeBounceOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2.75) {\n        return mul(mul(7.5625, oldProgress), oldProgress);\n    } else if (oldProgress < 2 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 1.5 / 2.75), oldProgress), 0.75);\n    } else if (oldProgress < 2.5 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 2.25 / 2.75), oldProgress), 0.9375);\n    } else {\n        return sum(mul(mul(7.5625, oldProgress -= 2.625 / 2.75), oldProgress), 0.984375);\n    }\n}\nfunction executeBounceInOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2)\n        return mul(executeBounceIn(mul(oldProgress, 2)), 0.5);\n    return sum(mul(executeBounceOut(sub(mul(oldProgress, 2), 1)), 0.5), 0.5);\n}\nfunction make_bounce_easing_in(curviosity) {\n    this.execute = executeBounceIn;\n    this.executeProgress = executeBounceInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_out(curviosity) {\n    this.execute = executeBounceOut;\n    this.executeProgress = executeBounceOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_in_out(curviosity) {\n    this.execute = executeBounceInOut;\n    this.executeProgress = executeBounceInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}"},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"leg left","np":2,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":13.548,"s":[{"i":[[-1.494,-2.799],[0,0],[0,0],[-0.568,0.29],[-0.056,0.041],[0.427,0.589],[0,0],[0.007,0.016]],"o":[[-0.025,-0.018],[0,0],[0.385,0.532],[0.061,-0.031],[0.589,-0.426],[0,0],[0,0],[-3.118,-0.234]],"v":[[-0.006,4.393],[5.97,9.514],[10.735,16.594],[12.399,16.996],[12.574,16.888],[12.869,15.048],[9.04,8.191],[3.587,0.078]],"c":true}],"e":[{"i":[[-1.494,-2.799],[0,0],[0,0],[-0.568,0.29],[-0.056,0.041],[0.427,0.589],[0,0],[0.007,0.016]],"o":[[-0.025,-0.018],[0,0],[0.385,0.532],[0.061,-0.031],[0.589,-0.426],[0,0],[0,0],[-3.118,-0.234]],"v":[[-0.006,4.393],[6.345,7.764],[10.36,14.219],[12.024,14.621],[12.199,14.513],[12.494,12.673],[9.415,6.441],[3.587,0.078]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":20.321,"s":[{"i":[[-1.494,-2.799],[0,0],[0,0],[-0.568,0.29],[-0.056,0.041],[0.427,0.589],[0,0],[0.007,0.016]],"o":[[-0.025,-0.018],[0,0],[0.385,0.532],[0.061,-0.031],[0.589,-0.426],[0,0],[0,0],[-3.118,-0.234]],"v":[[-0.006,4.393],[6.345,7.764],[10.36,14.219],[12.024,14.621],[12.199,14.513],[12.494,12.673],[9.415,6.441],[3.587,0.078]],"c":true}],"e":[{"i":[[-1.494,-2.799],[0,0],[0,0],[-0.568,0.29],[-0.056,0.041],[0.427,0.589],[0,0],[0.007,0.016]],"o":[[-0.025,-0.018],[0,0],[0.385,0.532],[0.061,-0.031],[0.589,-0.426],[0,0],[0,0],[-3.118,-0.234]],"v":[[-0.006,4.393],[5.97,9.514],[10.735,16.594],[12.399,16.996],[12.574,16.888],[12.869,15.048],[9.04,8.191],[3.587,0.078]],"c":true}]},{"t":33.8690032958984}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,3],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":0,"s":[30],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":16.935,"s":[0],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":20.321,"s":[0],"e":[30]},{"t":33.8690032958984}],"ix":6,"x":"var $bm_rt;\nvar easingPreset = [\n        [\n            3,\n            4,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ],\n        [\n            1,\n            2,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ],\n        [\n            2,\n            3,\n            [\n                'make_bezier_easing',\n                [\n                    0.25,\n                    0.46,\n                    0.45,\n                    1\n                ],\n                'Glide.Out',\n                false\n            ]\n        ]\n    ];\nfunction easingMaker() {\n    var t, d, newProgress, sX, eX, sY, eY, sZ, eZ, val1, val2, val2, val3;\n    var n = 0;\n    if (numKeys > 0) {\n        n = nearestKey(time).index;\n        if (key(n).time > time) {\n            n--;\n        }\n    }\n    try {\n        var key1 = key(n);\n        var key2 = key(sum(n, 1));\n    } catch (e) {\n        return null;\n    }\n    var dim = 1;\n    try {\n        key(1)[1];\n        dim = 2;\n        key(1)[2];\n        dim = 3;\n    } catch (e) {\n    }\n    var expression = null;\n    for (var i = 0; i < easingPreset.length; ++i) {\n        if (easingPreset[i][0] <= n && easingPreset[i][1] >= n + 1) {\n            var expression = eval([easingPreset[i][2][0]][0]);\n            try {\n                expression = expression.apply({}, easingPreset[i][2][1].concat(easingPreset[i][2][3]));\n            } catch (e) {\n                expression = expression.apply({}, easingPreset[i][2][1]);\n            }\n            break;\n        }\n    }\n    if (!expression)\n        return null;\n    t = sub(time, key1.time);\n    d = sub(key2.time, key1.time);\n    if (expression.hasOwnProperty('curviosity') && expression.curviosity) {\n        newProgress = expression.executeProgress(div(t, d));\n        return thisProperty.valueAtTime(sum(key1.time, mul(d, newProgress)));\n    }\n    sX = key1[0];\n    eX = sub(key2[0], key1[0]);\n    if (dim >= 2) {\n        sY = key1[1];\n        eY = sub(key2[1], key1[1]);\n        if (dim >= 3) {\n            sZ = key1[2];\n            eZ = sub(key2[2], key1[2]);\n        }\n    }\n    if (time < key1.time || time > key2.time) {\n        return value;\n    } else {\n        val1 = expression.execute(t, sX, eX, d);\n        switch (dim) {\n        case 1:\n            return val1;\n        case 2:\n            val2 = expression.execute(t, sY, eY, d);\n            return [\n                val1,\n                val2\n            ];\n        case 3:\n            val2 = expression.execute(t, sY, eY, d);\n            val3 = expression.execute(t, sZ, eZ, d);\n            return [\n                val1,\n                val2,\n                val3\n            ];\n        default:\n            return null;\n        }\n    }\n}\n$bm_rt = easingMaker() || value;\nfunction sampleCurveY(t) {\n    return mul(sum(mul(sum(mul(this.ay, t), this.by), t), this.cy), t);\n}\nfunction sampleCurveX(t) {\n    return mul(sum(mul(sum(mul(this.ax, t), this.bx), t), this.cx), t);\n}\nfunction sampleCurveDerivativeX(t) {\n    return sum(mul(sum(mul(mul(3, this.ax), t), mul(2, this.bx)), t), this.cx);\n}\nfunction solveCurveX(x, epsilon) {\n    var t2, i, x2, d2, t0, t1;\n    for (t2 = x, i = 0; i < 8; i++) {\n        x2 = sub(sampleCurveX.call(this, t2), x);\n        if (Math.abs(x2) < epsilon)\n            return t2;\n        d2 = sampleCurveDerivativeX.call(this, t2);\n        if (Math.abs(d2) < 0.000001)\n            break;\n        t2 = sub(t2, div(x2, d2));\n    }\n    t0 = 0;\n    t1 = 1;\n    t2 = x;\n    if (t2 < t0)\n        return t0;\n    if (t2 > t1)\n        return t1;\n    while (t0 < t1) {\n        x2 = sampleCurveX.call(this, t2);\n        if (Math.abs(x2 - x) < epsilon)\n            return t2;\n        if (x > x2)\n            t0 = t2;\n        else\n            t1 = t2;\n        t2 = sum(mul(sub(t1, t0), 0.5), t0);\n    }\n    return t2;\n}\nfunction executeBezier(t, b, e, d) {\n    return sum(b, mul(e, sampleCurveY.call(this, solveCurveX.call(this, div(t, d), div(1, mul(200, d))))));\n}\nfunction executeBezierProgress(oldProgress) {\n    return sampleCurveY.call(this, solveCurveX.call(this, oldProgress, 1 / 200));\n}\nfunction make_bezier_easing(p1x, p1y, p2x, p2y, curviosity) {\n    this.cx = mul(3, p1x);\n    this.bx = sub(mul(3, sub(p2x, p1x)), this.cx);\n    this.ax = sub(sub(1, this.cx), this.bx);\n    this.cy = mul(3, p1y);\n    this.by = sub(mul(3, sub(p2y, p1y)), this.cy);\n    this.ay = sub(sub(1, this.cy), this.by);\n    this.curviosity = curviosity;\n    this.execute = executeBezier;\n    this.executeProgress = executeBezierProgress;\n    return this;\n}\nfunction executeElasticIn(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum($bm_neg(mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n}\nfunction executeElasticOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d) === 1)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    return sum(sum(mul(mul(a, Math.pow(2, mul(-10, t))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), c), b);\n}\nfunction executeElasticInOut(t, b, c, d) {\n    var s = 1.70158;\n    var p = 0;\n    var a = c;\n    if (t === 0)\n        return b;\n    if ((t /= d / 2) === 2)\n        return sum(b, c);\n    if (!p)\n        p = mul(d, 0.3 * 1.5);\n    if (a < Math.abs(c)) {\n        a = c;\n        s = div(p, 4);\n    } else\n        s = mul(div(p, mul(2, Math.PI)), Math.asin(1));\n    if (t < 1)\n        return sum(mul(-0.5, mul(mul(a, Math.pow(2, mul(10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p)))), b);\n    return sum(sum(mul(mul(mul(a, Math.pow(2, mul(-10, t -= 1))), Math.sin(div(mul(sub(mul(t, d), s), mul(2, Math.PI)), p))), 0.5), c), b);\n}\nfunction executeElasticInProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : -Math.pow(2, 10 * Progress - 10) * Math.sin((Progress * 10 - 10.75) * (2 * Math.PI / 3));\n}\nfunction executeElasticOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Math.pow(2, -10 * Progress) * Math.sin((Progress * 10 - 0.75) * (2 * Math.PI / 3)) + 1;\n}\nfunction executeElasticInOutProgress(Progress) {\n    return Progress === 0 ? 0 : Progress === 1 ? 1 : Progress < 0.5 ? -(Math.pow(2, 20 * Progress - 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5))) / 2 : Math.pow(2, -20 * Progress + 10) * Math.sin((20 * Progress - 11.125) * (2 * Math.PI / 4.5)) / 2 + 1;\n}\nfunction make_elastic_easing_in(curviosity) {\n    this.execute = executeElasticIn;\n    this.executeProgress = executeElasticInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_out(curviosity) {\n    this.execute = executeElasticOut;\n    this.executeProgress = executeElasticOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_elastic_easing_in_out(curviosity) {\n    this.execute = executeElasticInOut;\n    this.executeProgress = executeElasticInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction executeBounceIn(t, b, c, d) {\n    return sum(sub(c, executeBounceOut(sub(d, t), 0, c, d)), b);\n}\nfunction executeBounceOut(t, b, c, d) {\n    if ((t /= d) < 1 / 2.75) {\n        return sum(mul(c, mul(mul(7.5625, t), t)), b);\n    } else if (t < 2 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 1.5 / 2.75), t), 0.75)), b);\n    } else if (t < 2.5 / 2.75) {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.25 / 2.75), t), 0.9375)), b);\n    } else {\n        return sum(mul(c, sum(mul(mul(7.5625, t -= 2.625 / 2.75), t), 0.984375)), b);\n    }\n}\nfunction executeBounceInOut(t, b, c, d) {\n    if (t < d / 2)\n        return sum(mul(executeBounceIn(mul(t, 2), 0, c, d), 0.5), b);\n    return sum(sum(mul(executeBounceOut(sub(mul(t, 2), d), 0, c, d), 0.5), mul(c, 0.5)), b);\n}\nfunction executeBounceInProgress(oldProgress) {\n    return sub(1, executeBounceOut(sub(1, oldProgress)));\n}\nfunction executeBounceOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2.75) {\n        return mul(mul(7.5625, oldProgress), oldProgress);\n    } else if (oldProgress < 2 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 1.5 / 2.75), oldProgress), 0.75);\n    } else if (oldProgress < 2.5 / 2.75) {\n        return sum(mul(mul(7.5625, oldProgress -= 2.25 / 2.75), oldProgress), 0.9375);\n    } else {\n        return sum(mul(mul(7.5625, oldProgress -= 2.625 / 2.75), oldProgress), 0.984375);\n    }\n}\nfunction executeBounceInOutProgress(oldProgress) {\n    if (oldProgress < 1 / 2)\n        return mul(executeBounceIn(mul(oldProgress, 2)), 0.5);\n    return sum(mul(executeBounceOut(sub(mul(oldProgress, 2), 1)), 0.5), 0.5);\n}\nfunction make_bounce_easing_in(curviosity) {\n    this.execute = executeBounceIn;\n    this.executeProgress = executeBounceInProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_out(curviosity) {\n    this.execute = executeBounceOut;\n    this.executeProgress = executeBounceOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}\nfunction make_bounce_easing_in_out(curviosity) {\n    this.execute = executeBounceInOut;\n    this.executeProgress = executeBounceInOutProgress;\n    this.curviosity = curviosity;\n    return this;\n}"},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"leg right","np":2,"cix":2,"ix":5,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.551,0.153],[0,0],[0,0],[-3.568,0.081],[0,0],[0,0]],"o":[[-0.548,0.165],[0,0],[0,0],[0,0],[3.568,-0.081],[0,0],[0.001,-0.048]],"v":[[1.526,-11.742],[-1.779,-11.724],[-3.864,-8.282],[-3.606,0.078],[-0.006,4.393],[3.587,0.078],[4.117,-8.282]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,3],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"body","np":3,"cix":2,"ix":6,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":33.8690032958984,"st":0,"bm":0}]},{"id":"comp_3","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Shape Layer 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[101.25,104.125,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[400,400,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-1.74,0.359],[0.357,1.738],[1.738,-0.356],[-0.354,-1.737]],"o":[[1.733,-0.354],[-0.355,-1.737],[-1.738,0.354],[0.357,1.737]],"v":[[0.647,3.143],[3.144,-0.646],[-0.645,-3.146],[-3.147,0.646]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-11.25,4.844],"ix":2},"a":{"a":0,"k":[6.5,17.969],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":0,"s":[0],"e":[30]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":16.935,"s":[30],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":42.336,"s":[0],"e":[30]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":59.271,"s":[30],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":84.673,"s":[0],"e":[30]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":96.527,"s":[30],"e":[0]},{"t":111.767710876465}],"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"head","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.145,-0.018],[0.306,-0.102],[-0.519,-1.549],[-0.175,-1.679],[-3.71,1.418],[0,0],[-0.004,0.004],[0,0],[0.369,1.397]],"o":[[-0.14,-0.014],[-0.313,0],[-1.549,0.52],[0.694,2.07],[0.146,0.847],[0,0],[0.003,-0.002],[0,0],[-0.506,-1.975],[0,0]],"v":[[-14.642,-8.556],[-15.072,-8.547],[-16.006,-8.398],[-17.872,-4.654],[-15.683,2.599],[-11.015,5.502],[-11.014,5.502],[-11.004,5.496],[-10.372,0.328],[-11.79,-5.252]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-11.266,4.844],"ix":2},"a":{"a":0,"k":[-11.266,4.844],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":0,"s":[0],"e":[30]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":16.935,"s":[30],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":42.336,"s":[0],"e":[30]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":59.271,"s":[30],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":84.673,"s":[0],"e":[30]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":96.527,"s":[30],"e":[0]},{"t":111.767710876465}],"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"body","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":0,"s":[{"i":[[2.615,0.41],[0.044,0.006],[0,0],[0.419,0.042],[0,0],[0.369,1.397],[0,0],[-0.201,0.143],[0,0]],"o":[[-0.03,-0.013],[0,0],[-0.132,-0.38],[0,0],[-0.14,-0.014],[0,0],[0.266,0.026],[0,0],[-1.733,0.917]],"v":[[14.448,-2.291],[14.337,-2.32],[-3.302,-6.104],[-4.195,-6.817],[-14.642,-8.556],[-11.79,-5.252],[-4.408,-4.707],[-3.691,-4.9],[11.048,-1.729]],"c":true}],"e":[{"i":[[2.142,0.411],[0.036,0.006],[0,0],[0.343,0.042],[0,0],[0.303,1.398],[0,0],[-0.165,0.143],[0,0]],"o":[[-0.025,-0.013],[0,0],[-0.108,-0.38],[0,0],[-0.114,-0.014],[0,0],[0.218,0.026],[0,0],[-1.419,0.916]],"v":[[14.921,-2.292],[14.831,-2.321],[0.384,-6.112],[-0.347,-6.825],[-8.903,-8.567],[-6.565,-5.262],[-0.52,-4.715],[0.067,-4.908],[12.138,-1.732]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":16.935,"s":[{"i":[[2.142,0.411],[0.036,0.006],[0,0],[0.343,0.042],[0,0],[0.303,1.398],[0,0],[-0.165,0.143],[0,0]],"o":[[-0.025,-0.013],[0,0],[-0.108,-0.38],[0,0],[-0.114,-0.014],[0,0],[0.218,0.026],[0,0],[-1.419,0.916]],"v":[[14.921,-2.292],[14.831,-2.321],[0.384,-6.112],[-0.347,-6.825],[-8.903,-8.567],[-6.565,-5.262],[-0.52,-4.715],[0.067,-4.908],[12.138,-1.732]],"c":true}],"e":[{"i":[[2.615,0.41],[0.044,0.006],[0,0],[0.419,0.042],[0,0],[0.369,1.397],[0,0],[-0.201,0.143],[0,0]],"o":[[-0.03,-0.013],[0,0],[-0.132,-0.38],[0,0],[-0.14,-0.014],[0,0],[0.266,0.026],[0,0],[-1.733,0.917]],"v":[[14.448,-2.291],[14.337,-2.32],[-3.302,-6.104],[-4.195,-6.817],[-14.642,-8.556],[-11.79,-5.252],[-4.408,-4.707],[-3.691,-4.9],[11.048,-1.729]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":42.336,"s":[{"i":[[2.615,0.41],[0.044,0.006],[0,0],[0.419,0.042],[0,0],[0.369,1.397],[0,0],[-0.201,0.143],[0,0]],"o":[[-0.03,-0.013],[0,0],[-0.132,-0.38],[0,0],[-0.14,-0.014],[0,0],[0.266,0.026],[0,0],[-1.733,0.917]],"v":[[14.448,-2.291],[14.337,-2.32],[-3.302,-6.104],[-4.195,-6.817],[-14.642,-8.556],[-11.79,-5.252],[-4.408,-4.707],[-3.691,-4.9],[11.048,-1.729]],"c":true}],"e":[{"i":[[2.142,0.411],[0.036,0.006],[0,0],[0.343,0.042],[0,0],[0.303,1.398],[0,0],[-0.165,0.143],[0,0]],"o":[[-0.025,-0.013],[0,0],[-0.108,-0.38],[0,0],[-0.114,-0.014],[0,0],[0.218,0.026],[0,0],[-1.419,0.916]],"v":[[14.921,-2.292],[14.831,-2.321],[0.384,-6.112],[-0.347,-6.825],[-8.903,-8.567],[-6.565,-5.262],[-0.52,-4.715],[0.067,-4.908],[12.138,-1.732]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":59.271,"s":[{"i":[[2.142,0.411],[0.036,0.006],[0,0],[0.343,0.042],[0,0],[0.303,1.398],[0,0],[-0.165,0.143],[0,0]],"o":[[-0.025,-0.013],[0,0],[-0.108,-0.38],[0,0],[-0.114,-0.014],[0,0],[0.218,0.026],[0,0],[-1.419,0.916]],"v":[[14.921,-2.292],[14.831,-2.321],[0.384,-6.112],[-0.347,-6.825],[-8.903,-8.567],[-6.565,-5.262],[-0.52,-4.715],[0.067,-4.908],[12.138,-1.732]],"c":true}],"e":[{"i":[[2.615,0.41],[0.044,0.006],[0,0],[0.419,0.042],[0,0],[0.369,1.397],[0,0],[-0.201,0.143],[0,0]],"o":[[-0.03,-0.013],[0,0],[-0.132,-0.38],[0,0],[-0.14,-0.014],[0,0],[0.266,0.026],[0,0],[-1.733,0.917]],"v":[[14.448,-2.291],[14.337,-2.32],[-3.302,-6.104],[-4.195,-6.817],[-14.642,-8.556],[-11.79,-5.252],[-4.408,-4.707],[-3.691,-4.9],[11.048,-1.729]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":84.673,"s":[{"i":[[2.615,0.41],[0.044,0.006],[0,0],[0.419,0.042],[0,0],[0.369,1.397],[0,0],[-0.201,0.143],[0,0]],"o":[[-0.03,-0.013],[0,0],[-0.132,-0.38],[0,0],[-0.14,-0.014],[0,0],[0.266,0.026],[0,0],[-1.733,0.917]],"v":[[14.448,-2.291],[14.337,-2.32],[-3.302,-6.104],[-4.195,-6.817],[-14.642,-8.556],[-11.79,-5.252],[-4.408,-4.707],[-3.691,-4.9],[11.048,-1.729]],"c":true}],"e":[{"i":[[2.142,0.411],[0.036,0.006],[0,0],[0.343,0.042],[0,0],[0.303,1.398],[0,0],[-0.165,0.143],[0,0]],"o":[[-0.025,-0.013],[0,0],[-0.108,-0.38],[0,0],[-0.114,-0.014],[0,0],[0.218,0.026],[0,0],[-1.419,0.916]],"v":[[14.921,-2.292],[14.831,-2.321],[0.384,-6.112],[-0.347,-6.825],[-8.903,-8.567],[-6.565,-5.262],[-0.52,-4.715],[0.067,-4.908],[12.138,-1.732]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":96.527,"s":[{"i":[[2.142,0.411],[0.036,0.006],[0,0],[0.343,0.042],[0,0],[0.303,1.398],[0,0],[-0.165,0.143],[0,0]],"o":[[-0.025,-0.013],[0,0],[-0.108,-0.38],[0,0],[-0.114,-0.014],[0,0],[0.218,0.026],[0,0],[-1.419,0.916]],"v":[[14.921,-2.292],[14.831,-2.321],[0.384,-6.112],[-0.347,-6.825],[-8.903,-8.567],[-6.565,-5.262],[-0.52,-4.715],[0.067,-4.908],[12.138,-1.732]],"c":true}],"e":[{"i":[[2.615,0.41],[0.044,0.006],[0,0],[0.419,0.042],[0,0],[0.369,1.397],[0,0],[-0.201,0.143],[0,0]],"o":[[-0.03,-0.013],[0,0],[-0.132,-0.38],[0,0],[-0.14,-0.014],[0,0],[0.266,0.026],[0,0],[-1.733,0.917]],"v":[[14.448,-2.291],[14.337,-2.32],[-3.302,-6.104],[-4.195,-6.817],[-14.642,-8.556],[-11.79,-5.252],[-4.408,-4.707],[-3.691,-4.9],[11.048,-1.729]],"c":true}]},{"t":111.767710876465}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0.113,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"arm","np":2,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-3.71,1.418],[0,0],[-0.004,0.004],[0,0],[0,0],[-0.291,0.617],[0.617,0.289],[0,0],[0.512,-0.252],[0,0]],"o":[[0,0],[0.003,-0.002],[0,0],[0,0],[0.616,0.29],[0.29,-0.617],[0,0],[-0.515,-0.242],[0,0],[-0.506,-1.975]],"v":[[-11.015,5.502],[-11.014,5.502],[-11.004,5.496],[-3.568,1.344],[3.58,4.77],[5.222,4.178],[4.63,2.535],[-2.965,-2.291],[-4.588,-2.274],[-10.372,0.328]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"leg","np":2,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,2.914],[2.615,0.41],[0.044,0.006],[0,0],[0,-2.097],[-0.673,-0.908],[0,0],[0,-0.611],[-0.612,0],[0,0],[-0.006,0],[-0.006,0],[0,0],[-0.015,0.009]],"o":[[0,-2.729],[-0.03,-0.013],[0,0],[-1.733,0.917],[0,1.218],[0,0],[-0.612,0],[0,0.613],[0,0],[0,0],[0,0],[0,0],[0.059,0],[2.874,-0.162]],"v":[[19.065,3.104],[14.448,-2.291],[14.337,-2.32],[11.048,-1.729],[8.133,3.104],[9.208,6.351],[-17.956,6.351],[-19.065,7.459],[-17.956,8.568],[13.58,8.568],[13.599,8.569],[13.618,8.568],[13.808,8.568],[13.91,8.554]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[2.034,0],[0,2.034],[-2.034,0],[0,-2.034]],"o":[[-2.034,0],[0,-2.034],[2.034,0],[0,2.034]],"v":[[13.599,6.787],[9.916,3.104],[13.599,-0.58],[17.282,3.104]],"c":true},"ix":2},"nm":"circle","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"macine","np":3,"cix":2,"ix":5,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":338.690032958984,"st":0,"bm":0}]},{"id":"comp_4","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Shape Layer 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[100.539,100.996,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[400,400,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[1.473,-1.118],[-1.989,-1.65],[-1.284,0.567],[0.251,1.628]],"o":[[-1.342,-1.164],[-1.927,1.461],[1.08,0.896],[1.73,-0.764],[0,0]],"v":[[-11.176,-7.404],[-16.007,-7.559],[-16.101,-1.52],[-12.186,-0.974],[-9.898,-5.095]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[3.438,6.953],"ix":2},"a":{"a":0,"k":[3.438,6.953],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":0,"s":[0],"e":[25]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":11.854,"s":[25],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":27.095,"s":[0],"e":[25]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":38.949,"s":[25],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":54.19,"s":[0],"e":[25]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":66.045,"s":[25],"e":[0]},{"t":81.2856079101562}],"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"head","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0.409,0.451],[0.604,-0.063],[0,0],[0.251,1.628],[0,0],[0,0],[0,0],[0,0],[0,0],[-1.215,-1.029],[-3.595,0],[0,0],[-1.66,1.26]],"o":[[0,0],[0,0],[0,0],[0.121,-0.596],[-0.409,-0.449],[0,0],[-1.342,-1.164],[0,0],[0,0],[0,0],[0,0],[0,0],[-0.983,1.252],[2.743,2.324],[0,0],[2.084,0],[0,0]],"v":[[1.707,2.891],[-2.509,2.815],[-5.914,0.3],[-3.283,-6.308],[-3.714,-8.037],[-5.326,-8.653],[-11.176,-7.404],[-9.898,-5.095],[-6.652,-5.636],[-6.762,-5.477],[-6.747,-5.513],[-9.383,-1.929],[-11.629,1.03],[-11.216,5.116],[-1.402,8.716],[-1.002,8.716],[4.769,6.774]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[3.453,6.953],"ix":2},"a":{"a":0,"k":[3.453,6.953],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":0,"s":[0],"e":[25]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":11.854,"s":[25],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":27.095,"s":[0],"e":[25]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":38.949,"s":[25],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":54.19,"s":[0],"e":[25]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":66.045,"s":[25],"e":[0]},{"t":81.2856079101562}],"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"body top","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.73,0.716],[0,0],[1.121,-0.761],[0,0],[0,0],[0,0],[-1.66,1.26],[0,0],[0,0],[-0.883,0.883]],"o":[[0,0],[-0.961,-0.956],[0,0],[0,0],[0,0],[2.084,0],[0,0],[0,0],[0.341,0.247],[0.679,-0.678]],"v":[[17.34,5.004],[11.346,-1.059],[7.762,-1.394],[1.707,2.891],[-2.509,2.815],[0.06,6.434],[4.769,6.774],[9.442,2.983],[14.991,7.558],[17.412,7.557]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"body bottom","np":3,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":338.690032958984,"st":0,"bm":0}]},{"id":"comp_5","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Shape Layer 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[100,100,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[400,400,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-2.027,-1.297],[-1.295,2.036],[2.03,1.294],[1.295,-2.031]],"o":[[2.029,1.293],[1.292,-2.024],[-2.029,-1.297],[-1.298,2.028]],"v":[[-2.531,15.115],[3.49,13.779],[2.159,7.764],[-3.859,9.094]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":0,"s":[0,-3.063],"e":[0,-5.063],"to":[0,0],"ti":[0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":25.402,"s":[0,-5.063],"e":[0,-3.063],"to":[0,0],"ti":[0,0]},{"t":67.7380065917969}],"ix":2},"a":{"a":0,"k":[-0.188,20.375],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":67.738,"s":[0],"e":[35]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":101.607,"s":[35],"e":[-35]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":169.345,"s":[-35],"e":[0]},{"t":203.214019775391}],"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"head","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":0,"s":[{"i":[[1.024,0.29],[0,0],[-0.277,0.418],[0.714,0.476],[0,0],[0,0],[0.127,0.188],[2.398,0.001],[0,0],[0.529,-1.678],[0.058,-0.178],[0,0],[0,0],[-0.511,-0.763],[-0.319,-0.117],[0,0],[-0.182,-1.05],[-1.004,0],[-0.048,0.003],[0,0],[-0.039,0.005],[-3.297,-0.177],[0,0],[0,0],[-0.047,0],[-0.174,1.002]],"o":[[0,0],[0.465,-0.031],[0.478,-0.714],[0,0],[0,0],[-0.074,-0.227],[-0.58,-1.622],[0,0],[-2.451,0],[-0.091,0.155],[0,0],[0,0],[-0.764,0.509],[0.201,0.305],[0,0],[-1.026,0.29],[0.174,1.003],[0.047,0],[0,0],[0.041,-0.002],[0.33,-0.03],[0.006,0],[0,0],[0.048,0.003],[1.004,0],[0.183,-1.05]],"v":[[15.109,7.459],[13.649,7.047],[14.839,6.361],[14.409,4.207],[8.091,-0.689],[5.568,-8.097],[5.265,-8.719],[0.277,-11.541],[0.275,-11.541],[-4.753,-8.612],[-4.978,-8.113],[-7.582,-0.54],[-13.894,4.078],[-14.353,6.38],[-13.545,7.017],[-15.108,7.459],[-16.593,9.816],[-14.545,11.541],[-14.403,11.536],[-2.768,10.742],[-2.647,10.728],[2.75,10.741],[2.761,10.742],[14.401,11.536],[14.544,11.541],[16.592,9.816]],"c":true}],"e":[{"i":[[1.024,0.29],[0,0],[-0.277,0.418],[0.714,0.476],[0,0],[0,0],[0.127,0.188],[2.398,0.001],[0,0],[0.529,-1.678],[0.058,-0.178],[0,0],[0,0],[-0.511,-0.763],[-0.319,-0.117],[0,0],[-0.182,-1.05],[-1.004,0],[-0.048,0.003],[0,0],[-0.039,0.005],[-3.297,-0.177],[0,0],[0,0],[-0.047,0],[-0.174,1.002]],"o":[[0,0],[0.465,-0.031],[0.478,-0.714],[0,0],[0,0],[-0.074,-0.227],[-0.58,-1.622],[0,0],[-2.451,0],[-0.091,0.155],[0,0],[0,0],[-0.764,0.509],[0.201,0.305],[0,0],[-1.026,0.29],[0.174,1.003],[0.047,0],[0,0],[0.041,-0.002],[0.33,-0.03],[0.006,0],[0,0],[0.048,0.003],[1.004,0],[0.183,-1.05]],"v":[[15.109,7.459],[13.649,7.047],[14.839,6.361],[14.409,4.207],[9.091,-0.876],[7.725,-9.097],[7.421,-9.719],[0.09,-13.604],[0.088,-13.604],[-7.472,-9.706],[-7.696,-9.207],[-8.988,-0.759],[-13.894,4.078],[-14.353,6.38],[-13.545,7.017],[-15.108,7.459],[-16.593,9.816],[-14.545,11.541],[-14.403,11.536],[-2.768,10.742],[-2.647,10.728],[2.75,10.741],[2.761,10.742],[14.401,11.536],[14.544,11.541],[16.592,9.816]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":25.402,"s":[{"i":[[1.024,0.29],[0,0],[-0.277,0.418],[0.714,0.476],[0,0],[0,0],[0.127,0.188],[2.398,0.001],[0,0],[0.529,-1.678],[0.058,-0.178],[0,0],[0,0],[-0.511,-0.763],[-0.319,-0.117],[0,0],[-0.182,-1.05],[-1.004,0],[-0.048,0.003],[0,0],[-0.039,0.005],[-3.297,-0.177],[0,0],[0,0],[-0.047,0],[-0.174,1.002]],"o":[[0,0],[0.465,-0.031],[0.478,-0.714],[0,0],[0,0],[-0.074,-0.227],[-0.58,-1.622],[0,0],[-2.451,0],[-0.091,0.155],[0,0],[0,0],[-0.764,0.509],[0.201,0.305],[0,0],[-1.026,0.29],[0.174,1.003],[0.047,0],[0,0],[0.041,-0.002],[0.33,-0.03],[0.006,0],[0,0],[0.048,0.003],[1.004,0],[0.183,-1.05]],"v":[[15.109,7.459],[13.649,7.047],[14.839,6.361],[14.409,4.207],[9.091,-0.876],[7.725,-9.097],[7.421,-9.719],[0.09,-13.604],[0.088,-13.604],[-7.472,-9.706],[-7.696,-9.207],[-8.988,-0.759],[-13.894,4.078],[-14.353,6.38],[-13.545,7.017],[-15.108,7.459],[-16.593,9.816],[-14.545,11.541],[-14.403,11.536],[-2.768,10.742],[-2.647,10.728],[2.75,10.741],[2.761,10.742],[14.401,11.536],[14.544,11.541],[16.592,9.816]],"c":true}],"e":[{"i":[[1.024,0.29],[0,0],[-0.277,0.418],[0.714,0.476],[0,0],[0,0],[0.127,0.188],[2.398,0.001],[0,0],[0.529,-1.678],[0.058,-0.178],[0,0],[0,0],[-0.511,-0.763],[-0.319,-0.117],[0,0],[-0.182,-1.05],[-1.004,0],[-0.048,0.003],[0,0],[-0.039,0.005],[-3.297,-0.177],[0,0],[0,0],[-0.047,0],[-0.174,1.002]],"o":[[0,0],[0.465,-0.031],[0.478,-0.714],[0,0],[0,0],[-0.074,-0.227],[-0.58,-1.622],[0,0],[-2.451,0],[-0.091,0.155],[0,0],[0,0],[-0.764,0.509],[0.201,0.305],[0,0],[-1.026,0.29],[0.174,1.003],[0.047,0],[0,0],[0.041,-0.002],[0.33,-0.03],[0.006,0],[0,0],[0.048,0.003],[1.004,0],[0.183,-1.05]],"v":[[15.109,7.459],[13.649,7.047],[14.839,6.361],[14.409,4.207],[8.091,-0.689],[5.568,-8.097],[5.265,-8.719],[0.277,-11.541],[0.275,-11.541],[-4.753,-8.612],[-4.978,-8.113],[-7.582,-0.54],[-13.894,4.078],[-14.353,6.38],[-13.545,7.017],[-15.108,7.459],[-16.593,9.816],[-14.545,11.541],[-14.403,11.536],[-2.768,10.742],[-2.647,10.728],[2.75,10.741],[2.761,10.742],[14.401,11.536],[14.544,11.541],[16.592,9.816]],"c":true}]},{"t":67.7380065917969}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,6],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"body","np":3,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":338.690032958984,"st":0,"bm":0}]}],"layers":[{"ddd":0,"ind":1,"ty":0,"nm":"walking","refId":"comp_0","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[80,113,0],"ix":2},"a":{"a":0,"k":[100,100,0],"ix":1},"s":{"a":0,"k":[40,40,100],"ix":6}},"ao":0,"w":200,"h":200,"ip":0,"op":338.690032958984,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":0,"nm":"running","refId":"comp_1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[182.5,115,0],"ix":2},"a":{"a":0,"k":[100,100,0],"ix":1},"s":{"a":0,"k":[40,40,100],"ix":6}},"ao":0,"w":200,"h":200,"ip":0,"op":338.690032958984,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":0,"nm":"star jumps","refId":"comp_2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[84.5,213,0],"ix":2},"a":{"a":0,"k":[100,100,0],"ix":1},"s":{"a":0,"k":[40,40,100],"ix":6}},"ao":0,"w":200,"h":200,"ip":0,"op":338.690032958984,"st":0,"bm":0},{"ddd":0,"ind":4,"ty":0,"nm":"rawing machine","refId":"comp_3","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[191.5,222.5,0],"ix":2},"a":{"a":0,"k":[100,100,0],"ix":1},"s":{"a":0,"k":[40,40,100],"ix":6}},"ao":0,"w":200,"h":200,"ip":0,"op":338.690032958984,"st":0,"bm":0},{"ddd":0,"ind":5,"ty":0,"nm":"crunches","refId":"comp_4","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[193,313.5,0],"ix":2},"a":{"a":0,"k":[100,100,0],"ix":1},"s":{"a":0,"k":[40,40,100],"ix":6}},"ao":0,"w":200,"h":200,"ip":0,"op":338.690032958984,"st":0,"bm":0},{"ddd":0,"ind":6,"ty":0,"nm":"yoga","refId":"comp_5","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[81.5,314.5,0],"ix":2},"a":{"a":0,"k":[100,100,0],"ix":1},"s":{"a":0,"k":[40,40,100],"ix":6}},"ao":0,"w":200,"h":200,"ip":0,"op":338.690032958984,"st":0,"bm":0}],"markers":[]}
\ No newline at end of file
diff --git a/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/like.json b/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/like.json
deleted file mode 100644 (file)
index 95c1416..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"assets":[],"layers":[{"ddd":0,"ind":0,"ty":1,"nm":"品蓝色 纯色 1","ks":{"o":{"k":[{"i":{"x":[0.667],"y":[0.667]},"o":{"x":[0.167],"y":[0.167]},"n":["0p667_0p667_0p167_0p167"],"t":0,"s":[100],"e":[100]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.537],"y":[0]},"n":["0p667_1_0p537_0"],"t":5,"s":[100],"e":[0]},{"t":17}]},"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":5,"s":[400,320,0],"e":[408,274,0],"to":[1.33333337306976,-7.66666650772095,0],"ti":[-1.33333337306976,7.66666650772095,0]},{"t":17}]},"a":{"k":[400,300,0]},"s":{"k":[{"i":{"x":[0.518,0.518,0.667],"y":[1,1,0.667]},"o":{"x":[0.16,0.16,0.333],"y":[0.329,0.329,0.333]},"n":["0p518_1_0p16_0p329","0p518_1_0p16_0p329","0p667_0p667_0p333_0p333"],"t":5,"s":[0,0,100],"e":[160,160,100]},{"t":17}]}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"f","pt":{"k":{"i":[[0,0],[3.675,0],[0,0],[2.623,1.039],[10.49,18.686],[8.393,0],[0,0],[5.767,-5.706],[-0.526,-6.747],[8.391,-4.158],[2.101,0],[0,0],[0,-4.152],[0,0],[-4.196,0],[0,0],[-1.574,1.04],[-1.051,-0.52],[-31.47,0],[-9.441,41.527],[-2.097,6.748],[5.768,7.267]],"o":[[-7.342,-8.823],[0,0],[-12.065,0],[14.688,-23.358],[-5.772,-9.866],[0,0],[-3.671,-0.52],[-3.672,3.633],[4.198,46.715],[-1.572,-1.556],[0,0],[-4.198,0],[0,0],[0,4.155],[0,0],[2.097,0],[0.525,1.036],[0,0],[31.47,0],[2.098,-9.345],[3.671,-14.014],[0,0]],"v":[[521.158,276.64],[498.604,267.817],[454.021,267.817],[433.565,265.741],[435.663,188.92],[414.159,173.864],[413.112,173.864],[395.279,178.534],[390.561,194.626],[337.06,270.932],[331.816,268.856],[280.411,268.856],[272.544,276.642],[272.544,419.386],[280.411,427.172],[332.339,427.172],[338.111,425.096],[340.208,427.172],[464.514,426.652],[517.49,333.736],[523.785,308.82],[521.16,276.637]],"c":true}},"o":{"k":100},"x":{"k":0},"nm":"蒙版 1"}],"sw":800,"sh":600,"sc":"#00b1ff","ip":0,"op":50,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":1,"ty":1,"nm":"品蓝色 纯色 3","ks":{"o":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":11,"s":[0],"e":[100]},{"t":15}]},"r":{"k":0},"p":{"k":[400,300,0]},"a":{"k":[400,300,0]},"s":{"k":[100,100,100]}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"k":{"i":[[0,0],[3.675,0],[0,0],[2.623,1.039],[10.49,18.686],[8.393,0],[0,0],[5.767,-5.706],[-0.526,-6.747],[8.391,-4.158],[2.101,0],[0,0],[0,-4.152],[0,0],[-4.196,0],[0,0],[-1.574,1.04],[-1.051,-0.52],[-31.47,0],[-9.441,41.527],[-2.097,6.748],[5.768,7.267]],"o":[[-7.342,-8.823],[0,0],[-12.065,0],[14.688,-23.358],[-5.772,-9.866],[0,0],[-3.671,-0.52],[-3.672,3.633],[4.198,46.715],[-1.572,-1.556],[0,0],[-4.198,0],[0,0],[0,4.155],[0,0],[2.097,0],[0.525,1.036],[0,0],[31.47,0],[2.098,-9.345],[3.671,-14.014],[0,0]],"v":[[521.158,276.64],[498.604,267.817],[454.021,267.817],[433.565,265.741],[435.663,188.92],[414.159,173.864],[413.112,173.864],[395.279,178.534],[390.561,194.626],[337.06,270.932],[331.816,268.856],[280.411,268.856],[272.544,276.642],[272.544,419.386],[280.411,427.172],[332.339,427.172],[338.111,425.096],[340.208,427.172],[464.514,426.652],[517.49,333.736],[523.785,308.82],[521.16,276.637]],"c":true}},"o":{"k":100},"x":{"k":0},"nm":"蒙版 3"},{"inv":false,"mode":"s","pt":{"k":{"i":[[0,0],[2.097,-9.861],[18.887,0],[6.816,0],[0,0],[-1.052,0.52],[5.769,62.291],[0.525,0],[-3.147,0],[0,0],[-2.098,-4.669],[12.067,-18.166],[-1.052,-2.596],[-21.503,0],[0,0],[-2.101,-2.597],[2.618,-8.822]],"o":[[-2.098,7.267],[-7.343,32.183],[-30.419,0],[0,0],[1.047,0],[2.624,-1.036],[0,-2.597],[0.525,-0.52],[0,0],[2.098,0],[8.392,15.571],[-4.199,6.23],[4.198,7.267],[0,0],[2.098,0],[3.671,2.597],[0,0]],"v":[[508.045,304.672],[501.75,330.626],[463.984,411.599],[339.679,412.119],[339.679,287.025],[342.303,286.505],[406.292,193.589],[406.292,189.956],[411.537,189.435],[413.634,189.435],[420.977,196.702],[418.353,259.51],[416.781,273.524],[452.971,283.903],[498.081,283.903],[507.524,286.5],[508.049,304.668]],"c":true}},"o":{"k":100},"x":{"k":0},"nm":"蒙版 1"},{"inv":false,"mode":"s","pt":{"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[323.943,411.599],[287.753,411.599],[287.753,284.428],[323.943,284.428]],"c":true}},"o":{"k":100},"x":{"k":0},"nm":"蒙版 2"}],"sw":800,"sh":600,"sc":"#00b1ff","ip":0,"op":50,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":2,"ty":1,"nm":"品蓝色 纯色 2","ks":{"o":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":11,"s":[0],"e":[27]},{"t":16}]},"r":{"k":0},"p":{"k":[400,300,0]},"a":{"k":[400,300,0]},"s":{"k":[100,100,100]}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"f","pt":{"k":{"i":[[0,0],[3.675,0],[0,0],[2.623,1.039],[10.49,18.686],[8.393,0],[0,0],[5.767,-5.706],[-0.526,-6.747],[8.391,-4.158],[2.101,0],[0,0],[0,-4.152],[0,0],[-4.196,0],[0,0],[-1.574,1.04],[-1.051,-0.52],[-31.47,0],[-9.441,41.527],[-2.097,6.748],[5.768,7.267]],"o":[[-7.342,-8.823],[0,0],[-12.065,0],[14.688,-23.358],[-5.772,-9.866],[0,0],[-3.671,-0.52],[-3.672,3.633],[4.198,46.715],[-1.572,-1.556],[0,0],[-4.198,0],[0,0],[0,4.155],[0,0],[2.097,0],[0.525,1.036],[0,0],[31.47,0],[2.098,-9.345],[3.671,-14.014],[0,0]],"v":[[521.158,276.64],[498.604,267.817],[454.021,267.817],[433.565,265.741],[435.663,188.92],[414.159,173.864],[413.112,173.864],[395.279,178.534],[390.561,194.626],[337.06,270.932],[331.816,268.856],[280.411,268.856],[272.544,276.642],[272.544,419.386],[280.411,427.172],[332.339,427.172],[338.111,425.096],[340.208,427.172],[464.514,426.652],[517.49,333.736],[523.785,308.82],[521.16,276.637]],"c":true}},"o":{"k":100},"x":{"k":0},"nm":"蒙版 1"}],"sw":800,"sh":600,"sc":"#00b1ff","ip":0,"op":50,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":3,"ty":1,"nm":"灰色 纯色 1","ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[400,300,0]},"a":{"k":[400,300,0]},"s":{"k":[100,100,100]}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"k":{"i":[[0,0],[3.675,0],[0,0],[2.623,1.039],[10.49,18.686],[8.393,0],[0,0],[5.767,-5.706],[-0.526,-6.747],[8.391,-4.158],[2.101,0],[0,0],[0,-4.152],[0,0],[-4.196,0],[0,0],[-1.574,1.04],[-1.051,-0.52],[-31.47,0],[-9.441,41.527],[-2.097,6.748],[5.768,7.267]],"o":[[-7.342,-8.823],[0,0],[-12.065,0],[14.688,-23.358],[-5.772,-9.866],[0,0],[-3.671,-0.52],[-3.672,3.633],[4.198,46.715],[-1.572,-1.556],[0,0],[-4.198,0],[0,0],[0,4.155],[0,0],[2.097,0],[0.525,1.036],[0,0],[31.47,0],[2.098,-9.345],[3.671,-14.014],[0,0]],"v":[[521.158,276.64],[498.604,267.817],[454.021,267.817],[433.565,265.741],[435.663,188.92],[414.159,173.864],[413.112,173.864],[395.279,178.534],[390.561,194.626],[337.06,270.932],[331.816,268.856],[280.411,268.856],[272.544,276.642],[272.544,419.386],[280.411,427.172],[332.339,427.172],[338.111,425.096],[340.208,427.172],[464.514,426.652],[517.49,333.736],[523.785,308.82],[521.16,276.637]],"c":true}},"o":{"k":100},"x":{"k":0},"nm":"蒙版 3"},{"inv":false,"mode":"s","pt":{"k":{"i":[[0,0],[2.097,-9.861],[18.887,0],[6.816,0],[0,0],[-1.052,0.52],[5.769,62.291],[0.525,0],[-3.147,0],[0,0],[-2.098,-4.669],[12.067,-18.166],[-1.052,-2.596],[-21.503,0],[0,0],[-2.101,-2.597],[2.618,-8.822]],"o":[[-2.098,7.267],[-7.343,32.183],[-30.419,0],[0,0],[1.047,0],[2.624,-1.036],[0,-2.597],[0.525,-0.52],[0,0],[2.098,0],[8.392,15.571],[-4.199,6.23],[4.198,7.267],[0,0],[2.098,0],[3.671,2.597],[0,0]],"v":[[508.045,304.672],[501.75,330.626],[463.984,411.599],[339.679,412.119],[339.679,287.025],[342.303,286.505],[406.292,193.589],[406.292,189.956],[411.537,189.435],[413.634,189.435],[420.977,196.702],[418.353,259.51],[416.781,273.524],[452.971,283.903],[498.081,283.903],[507.524,286.5],[508.049,304.668]],"c":true}},"o":{"k":100},"x":{"k":0},"nm":"蒙版 1"},{"inv":false,"mode":"s","pt":{"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[323.943,411.599],[287.753,411.599],[287.753,284.428],[323.943,284.428]],"c":true}},"o":{"k":100},"x":{"k":0},"nm":"蒙版 2"}],"sw":800,"sh":600,"sc":"#8c8c8c","ip":0,"op":37,"st":0,"bm":0,"sr":1}],"v":"4.5.4","ddd":0,"ip":0,"op":50,"fr":25,"w":800,"h":600}
\ No newline at end of file
diff --git a/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/loading.json b/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/loading.json
deleted file mode 100644 (file)
index b6605b8..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"v":"5.2.1","fr":29.9700012207031,"ip":0,"op":900.000036657751,"w":237,"h":237,"nm":"final","ddd":0,"assets":[{"id":"comp_0","layers":[{"ddd":0,"ind":1,"ty":0,"nm":"flight","refId":"comp_1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.9]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p9_0p167_0p167"],"t":0,"s":[-50],"e":[0]},{"t":180.00000733155}],"ix":10},"p":{"a":1,"k":[{"i":{"x":0.833,"y":0.894},"o":{"x":0.167,"y":0.167},"n":"0p833_0p894_0p167_0p167","t":0,"s":[-50,141.805,0],"e":[118,38.61,0],"to":[28,-17.1991653442383,0],"ti":[-78,4.31500005722046,0]},{"i":{"x":0.538,"y":0.736},"o":{"x":0.05,"y":1},"n":"0p538_0p736_0p05_1","t":180,"s":[118,38.61,0],"e":[118,38.61,0],"to":[0.02864627912641,-2.52048540115356,0],"ti":[0.00681143719703,0.76931047439575,0]},{"i":{"x":0.833,"y":0.761},"o":{"x":0.422,"y":0.048},"n":"0p833_0p761_0p422_0p048","t":242,"s":[118,38.61,0],"e":[118,33,0],"to":[-0.00714083854109,-0.80651438236237,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.821},"o":{"x":0.167,"y":0.126},"n":"0p833_0p821_0p167_0p126","t":274,"s":[118,33,0],"e":[118,43,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.845},"o":{"x":0.167,"y":0.155},"n":"0p833_0p845_0p167_0p155","t":304,"s":[118,43,0],"e":[118,33,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.179},"n":"0p833_0p833_0p167_0p179","t":330,"s":[118,33,0],"e":[118,43,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.828},"o":{"x":0.167,"y":0.178},"n":"0p833_0p828_0p167_0p178","t":360,"s":[118,43,0],"e":[118,33,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.161},"n":"0p833_0p833_0p167_0p161","t":392,"s":[118,33,0],"e":[118,43,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.831},"o":{"x":0.167,"y":0.172},"n":"0p833_0p831_0p167_0p172","t":422,"s":[118,43,0],"e":[118,33,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.164},"n":"0p833_0p833_0p167_0p164","t":453,"s":[118,33,0],"e":[118,43,0],"to":[0,0,0],"ti":[0,0,0]},{"t":483.000019672993}],"ix":2},"a":{"a":0,"k":[45.5,50.5,0],"ix":1},"s":{"a":0,"k":[50,50,100],"ix":6}},"ao":0,"ef":[{"ty":25,"nm":"Drop Shadow","np":9,"mn":"ADBE Drop Shadow","ix":1,"en":1,"ef":[{"ty":2,"nm":"Shadow Color","mn":"ADBE Drop Shadow-0001","ix":1,"v":{"a":0,"k":[0,0,0,1],"ix":1}},{"ty":0,"nm":"Opacity","mn":"ADBE Drop Shadow-0002","ix":2,"v":{"a":0,"k":51,"ix":2}},{"ty":0,"nm":"Direction","mn":"ADBE Drop Shadow-0003","ix":3,"v":{"a":0,"k":135,"ix":3}},{"ty":0,"nm":"Distance","mn":"ADBE Drop Shadow-0004","ix":4,"v":{"a":0,"k":6,"ix":4}},{"ty":0,"nm":"Softness","mn":"ADBE Drop Shadow-0005","ix":5,"v":{"a":0,"k":0,"ix":5}},{"ty":7,"nm":"Shadow Only","mn":"ADBE Drop Shadow-0006","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":7,"v":{"a":0,"k":1,"ix":7}}]}],"w":91,"h":101,"ip":0,"op":900.000036657751,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":0,"nm":"may","refId":"comp_2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[118.233,118.5,0],"ix":2},"a":{"a":0,"k":[219.5,200.5,0],"ix":1},"s":{"a":0,"k":[54.504,54.504,100],"ix":6}},"ao":0,"tm":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":0,"s":[0],"e":[14.114]},{"t":423.000017229143}],"ix":2,"x":"var $bm_rt;\n$bm_rt = loopOut('cycle', 0);"},"w":439,"h":401,"ip":0,"op":900.000036657751,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":0,"nm":"loading 2","refId":"comp_3","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[119,221,0],"ix":2},"a":{"a":0,"k":[219.5,200.5,0],"ix":1},"s":{"a":0,"k":[78,78,100],"ix":6}},"ao":0,"w":439,"h":401,"ip":0,"op":900.000036657751,"st":0,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":"Shape Layer 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[118.5,118.5,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[237,237],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":2,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":true},{"ty":"fl","c":{"a":0,"k":[0.780392169952,0.898039221764,0.941176474094,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":900.000036657751,"st":0,"bm":0}]},{"id":"comp_1","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"flight Outlines","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[45.5,50.5,0],"ix":2},"a":{"a":0,"k":[45.5,50.5,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.198,-0.314],[6.473,-9.04],[-0.216,0.302],[-5.936,9.402]],"o":[[-5.936,9.401],[-0.215,0.301],[6.472,-9.04],[0.195,-0.31]],"v":[[9.09,-14.003],[-9.523,13.66],[-9.07,14.016],[9.544,-13.648]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.808000033509,0.808000033509,0.808000033509,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[44.956,79.611],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.205,-0.309],[-5.842,-8.82],[0.205,0.308],[5.843,8.821]],"o":[[5.842,8.821],[0.204,0.309],[-5.841,-8.822],[-0.204,-0.309]],"v":[[-8.993,-13.058],[8.533,13.405],[8.993,13.059],[-8.534,-13.404]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.808000033509,0.808000033509,0.808000033509,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[44.114,19.044],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 2","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.369,0.039],[0.49,-2.332],[-0.076,0.362],[-1.761,-0.183]],"o":[[-2.103,-0.219],[-0.077,0.364],[0.422,-2.007],[0.368,0.039]],"v":[[2.336,-1.493],[-2.628,1.262],[-2.059,1.35],[2.249,-0.924]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.808000033509,0.808000033509,0.808000033509,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[4.746,46.668],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 3","np":2,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.37,0.025],[13.095,0.205],[-0.366,-0.005],[-13.016,-0.89]],"o":[[-13.065,-0.895],[-0.37,-0.005],[13.044,0.203],[0.368,0.025]],"v":[[19.622,0.529],[-19.622,-1.118],[-19.559,-0.544],[19.535,1.098]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.808000033509,0.808000033509,0.808000033509,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[42.202,55.706],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 4","np":2,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.165,0.168],[0,0],[4.254,-5.523]],"o":[[4.098,-5.319],[0,0],[1.888,1.922],[0,0]],"v":[[-3.046,4.854],[-2.941,-4.643],[-1.288,-6.268],[-1.208,6.269]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.067000003889,0.513999968884,0.819999964097,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[84.149,50.261],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 5","np":2,"cix":2,"ix":5,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.005,3.843],[0,0],[-3.843,-0.005],[0,0],[0.005,-3.844],[0,0],[2.605,0.003]],"o":[[-3.843,-0.005],[0,0],[0.004,-3.843],[0,0],[2.605,0.003],[0,0],[-0.005,3.844],[0,0]],"v":[[-38.359,6.178],[-45.216,0.139],[-45.216,-0.324],[-38.345,-6.346],[35.679,-8.583],[45.217,-0.223],[45.217,0.241],[35.66,8.579]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[45.217,50.14],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 6","np":4,"cix":2,"ix":6,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[4.985,6.836],[-2.241,-6.833],[-4.654,-6.836],[-4.985,6.722]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.067000003889,0.513999968884,0.819999964097,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[9.21,41.265],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 7","np":2,"cix":2,"ix":7,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[4.985,-6.447],[-2.27,6.639],[-4.684,6.635],[-4.985,-6.639]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.067000003889,0.513999968884,0.819999964097,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[9.206,58.417],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 8","np":2,"cix":2,"ix":8,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[19.148,21.952],[-9.561,-21.942],[-19.148,-21.952],[-6.827,21.947]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.929000016755,0.941000007181,0.957000014361,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[43.136,21.953],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 9","np":2,"cix":2,"ix":9,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[19.197,-21.96],[-9.609,21.966],[-19.197,21.955],[-6.778,-21.965]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.929000016755,0.941000007181,0.957000014361,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[43.073,79.006],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 10","np":4,"cix":2,"ix":10,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.002,-1.534],[-1.66,-0.002],[0,0],[-0.001,1.534],[1.659,0.002]],"o":[[-1.659,-0.002],[-0.002,1.534],[0,0],[1.66,0.002],[0.002,-1.534],[0,0]],"v":[[-4.503,-2.876],[-7.511,-0.008],[-4.509,2.865],[4.503,2.876],[7.511,0.008],[4.51,-2.866]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.067000003889,0.513999968884,0.819999964097,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[52.114,70.847],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 11","np":2,"cix":2,"ix":11,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.002,-1.534],[-1.66,-0.002],[0,0],[-0.001,1.533],[1.659,0.002]],"o":[[-1.659,-0.002],[-0.001,1.533],[0,0],[1.659,0.001],[0.002,-1.534],[0,0]],"v":[[-4.503,-2.876],[-7.512,-0.008],[-4.51,2.865],[4.504,2.876],[7.51,0.008],[4.51,-2.866]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.067000003889,0.513999968884,0.819999964097,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[46.54,78.497],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 12","np":2,"cix":2,"ix":12,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.001,-1.534],[-1.66,-0.002],[0,0],[-0.001,1.534],[1.659,0.002]],"o":[[-1.659,-0.002],[-0.002,1.534],[0,0],[1.659,0.002],[0.002,-1.533],[0,0]],"v":[[-4.503,-2.876],[-7.51,-0.009],[-4.51,2.865],[4.504,2.876],[7.51,0.008],[4.51,-2.866]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.067000003889,0.513999968884,0.819999964097,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[41.892,86.626],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 13","np":2,"cix":2,"ix":13,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.002,1.534],[-1.659,-0.002],[0,0],[0.001,-1.533],[1.659,0.002]],"o":[[-1.659,-0.002],[0.001,-1.533],[0,0],[1.659,0.002],[-0.002,1.534],[0,0]],"v":[[-4.51,3.105],[-7.51,-0.009],[-4.503,-3.115],[4.51,-3.105],[7.512,0.008],[4.503,3.115]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.067000003889,0.513999968884,0.819999964097,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[52.16,29.937],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 14","np":2,"cix":2,"ix":14,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.002,1.534],[-1.659,-0.002],[0,0],[0.001,-1.534],[1.659,0.002]],"o":[[-1.659,-0.001],[0.001,-1.534],[0,0],[1.659,0.001],[-0.002,1.534],[0,0]],"v":[[-4.51,2.866],[-7.51,-0.008],[-4.504,-2.876],[4.51,-2.865],[7.512,0.009],[4.503,2.876]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.067000003889,0.513999968884,0.819999964097,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[46.602,22.036],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 15","np":2,"cix":2,"ix":15,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.002,1.533],[-1.659,-0.002],[0,0],[0.001,-1.534],[1.659,0.002]],"o":[[-1.659,-0.002],[0.001,-1.534],[0,0],[1.659,0.002],[-0.002,1.534],[0,0]],"v":[[-4.51,2.626],[-7.51,-0.008],[-4.504,-2.636],[4.51,-2.626],[7.512,0.008],[4.503,2.637]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.067000003889,0.513999968884,0.819999964097,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[41.973,14.136],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 16","np":2,"cix":2,"ix":16,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":900.000036657751,"st":0,"bm":0}]},{"id":"comp_2","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"may Outlines","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":0,"s":[659.5,200.5,0],"e":[219.5,200.5,0],"to":[-73.3333358764648,0,0],"ti":[147.91667175293,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":210,"s":[219.5,200.5,0],"e":[-228,200.5,0],"to":[-147.91667175293,0,0],"ti":[74.5833358764648,0,0]},{"t":422.000017188412}],"ix":2},"a":{"a":0,"k":[219.5,200.5,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[7.095,0],[1.385,-0.513],[7.344,0],[2.766,-3.613],[1.865,0],[0,-4.831],[-0.005,-0.121],[0,-5.671],[-6.637,0],[0,0],[0,7.132]],"o":[[-1.562,0],[-1.373,-6.977],[-4.885,0],[-1.417,-1.005],[-4.806,0],[0,0.123],[-5.243,1.3],[0,6.672],[0,0],[7.095,0],[0,-7.132]],"v":[[20.617,-7.197],[16.18,-6.39],[1.346,-18.63],[-10.637,-12.678],[-15.644,-14.279],[-24.347,-5.531],[-24.328,-5.167],[-33.464,6.549],[-21.446,18.63],[20.617,18.63],[33.464,5.716]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[327.953,358.029],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[18.395,0],[3.59,-1.33],[19.04,0],[7.17,-9.368],[4.838,0],[0,-12.526],[-0.013,-0.316],[0,-14.703],[-17.209,0],[0,0],[0,18.491]],"o":[[-4.049,0],[-3.559,-18.09],[-12.667,0],[-3.674,-2.606],[-12.462,0],[0,0.319],[-13.592,3.37],[0,17.298],[0,0],[18.395,0],[0,-18.49]],"v":[[53.453,-18.66],[41.951,-16.567],[3.492,-48.3],[-27.576,-32.87],[-40.559,-37.02],[-63.123,-14.34],[-63.075,-13.395],[-86.76,16.98],[-55.601,48.3],[53.453,48.3],[86.76,14.82]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":60,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[86.76,129.24],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 2","np":4,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[10.854,0.878],[0,2.671],[16.764,0],[5.258,-3.936],[2.695,0],[2.314,-7.548],[2.282,0],[0.843,-5.282],[0,-11.883],[-14.669,0],[0,0],[0,10.595]],"o":[[0.792,-2.44],[0,-15.106],[-7.37,0],[-2.342,-0.877],[-9.112,0],[-1.821,-0.989],[-6.095,0],[-12.599,1.871],[0,13.217],[0,0],[11.759,0],[0,-10.01]],"v":[[48.09,-1.622],[49.326,-9.308],[18.972,-36.66],[-0.409,-30.355],[-8.011,-31.722],[-27.093,-18.623],[-33.306,-20.215],[-45.236,-10.86],[-67.455,12.727],[-40.894,36.66],[46.164,36.66],[67.455,17.475]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":60,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[356.554,258.559],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 3","np":4,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[2.611,0.849],[0,0.379],[2.987,0],[0.684,-0.314],[5.387,0],[1.96,-3.103],[1.255,0],[0,-3.264],[-0.012,-0.153],[0,-4.09],[-4.849,0],[0,0],[0,3.612]],"o":[[0.073,-0.358],[0,-3.003],[-0.801,0],[-0.98,-5.128],[-3.926,0],[-0.955,-0.674],[-3.247,0],[0,0.156],[-3.756,1],[0,4.874],[0,0],[3.593,0],[0,-2.908]],"v":[[19.483,1.147],[19.595,0.04],[14.186,-5.397],[11.944,-4.903],[1.096,-13.906],[-8.23,-8.737],[-11.6,-9.809],[-17.479,-3.9],[-17.456,-3.439],[-23.984,5.082],[-15.206,13.906],[17.478,13.906],[23.984,7.367]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":28,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[414.784,81.916],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 4","np":4,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[2.3,0.748],[0,0.334],[2.63,0],[0.602,-0.277],[4.743,0],[1.725,-2.733],[1.105,0],[0,-2.874],[-0.011,-0.135],[0,-3.602],[-4.27,0],[0,0],[0,3.179]],"o":[[0.064,-0.314],[0,-2.643],[-0.705,0],[-0.862,-4.515],[-3.458,0],[-0.841,-0.593],[-2.859,0],[0,0.136],[-3.308,0.881],[0,4.291],[0,0],[3.164,0],[0,-2.562]],"v":[[17.155,1.009],[17.254,0.034],[12.492,-4.753],[10.517,-4.318],[0.966,-12.245],[-7.247,-7.694],[-10.215,-8.637],[-15.391,-3.434],[-15.37,-3.027],[-21.119,4.475],[-13.389,12.245],[15.39,12.245],[21.119,6.487]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":28,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[57.252,358.911],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 5","np":4,"cix":2,"ix":5,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[3.302,1.074],[0,0.48],[3.776,0],[0.864,-0.397],[6.809,0],[2.478,-3.923],[1.586,0],[0,-4.125],[-0.015,-0.193],[0,-5.17],[-6.129,0],[0,0],[0,4.566]],"o":[[0.093,-0.452],[0,-3.795],[-1.012,0],[-1.239,-6.482],[-4.965,0],[-1.207,-0.851],[-4.104,0],[0,0.196],[-4.748,1.264],[0,6.161],[0,0],[4.542,0],[0,-3.676]],"v":[[24.627,1.449],[24.77,0.049],[17.933,-6.822],[15.099,-6.198],[1.387,-17.579],[-10.404,-11.045],[-14.664,-12.4],[-22.095,-4.93],[-22.065,-4.347],[-30.318,6.423],[-19.221,17.578],[22.094,17.578],[30.318,9.311]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":28,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[178.451,17.578],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 6","np":4,"cix":2,"ix":6,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[4.038,1.313],[0,0.587],[4.619,0],[1.057,-0.485],[8.328,0],[3.032,-4.798],[1.941,0],[0,-5.045],[-0.019,-0.236],[0,-6.324],[-7.496,0],[0,0],[0,5.584]],"o":[[0.114,-0.553],[0,-4.642],[-1.238,0],[-1.515,-7.927],[-6.072,0],[-1.475,-1.041],[-5.019,0],[0,0.241],[-5.808,1.547],[0,7.535],[0,0],[5.556,0],[0,-4.497]],"v":[[30.121,1.772],[30.296,0.061],[21.933,-8.344],[18.467,-7.581],[1.696,-21.501],[-12.726,-13.51],[-17.936,-15.166],[-27.025,-6.031],[-26.988,-5.318],[-37.082,7.856],[-23.51,21.501],[27.023,21.501],[37.082,11.389]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[387.882,97.702],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 7","np":4,"cix":2,"ix":7,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[4.89,1.231],[0,2.922],[12.448,0],[3.63,-7.622],[3.085,0],[0,-8.534],[-0.029,-0.39],[0.106,0],[0,-7.229],[-7.192,0],[0,0],[0,6.247]],"o":[[1.002,-2.564],[0,-12.512],[-8.968,0],[-2.408,-1.573],[-8.491,0],[0,0.398],[-0.105,-0.002],[-7.192,0],[0,7.229],[0,0],[6.215,0],[0,-5.297]],"v":[[34.89,4.326],[36.461,-3.943],[13.922,-26.6],[-6.397,-13.699],[-14.758,-16.195],[-30.131,-0.743],[-30.072,0.436],[-30.385,0.421],[-43.407,13.51],[-30.385,26.6],[32.153,26.6],[43.407,15.288]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[204.97,46.37],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 8","np":4,"cix":2,"ix":8,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[3.864,0.973],[0,2.308],[9.837,0],[2.868,-6.024],[2.438,0],[0,-6.744],[-0.023,-0.309],[0.084,0],[0,-5.712],[-5.683,0],[0,0],[0,4.937]],"o":[[0.792,-2.026],[0,-9.888],[-7.087,0],[-1.903,-1.244],[-6.709,0],[0,0.315],[-0.083,-0.002],[-5.683,0],[0,5.713],[0,0],[4.911,0],[0,-4.185]],"v":[[27.571,3.418],[28.813,-3.116],[11.002,-21.019],[-5.054,-10.825],[-11.661,-12.799],[-23.809,-0.588],[-23.762,0.344],[-24.01,0.331],[-34.3,10.675],[-24.01,21.019],[25.408,21.019],[34.3,12.08]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[74.011,377.794],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 9","np":4,"cix":2,"ix":9,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":423.000017229143,"st":0,"bm":0}]},{"id":"comp_3","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"loading 2 Outlines","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":0,"s":[0],"e":[-360]},{"t":899.000036617021}],"ix":10},"p":{"a":0,"k":[219.5,200.5,0],"ix":2},"a":{"a":0,"k":[219.5,200.5,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-13.817,-12.686],[-0.161,0.161],[-0.619,-0.249],[-0.372,0.747],[0.557,0.56],[-0.248,0.498],[0,0.499],[0.682,0.686],[1.61,0.872],[0.744,0.747],[0.62,0.872],[1.115,0.498],[0.868,0.872],[0.682,0.685],[0.992,0],[0.455,-0.595]],"o":[[0.366,-0.521],[0.42,-0.423],[0.62,0.249],[0.372,-0.748],[-0.558,-0.561],[0.247,-0.499],[0,-0.498],[-0.682,-0.685],[-1.612,-0.873],[-0.743,-0.748],[-0.62,-0.872],[-1.116,-0.499],[-0.867,-0.872],[-0.681,-0.685],[-0.475,0],[5.873,18.33]],"v":[[11.83,24.201],[12.704,23.046],[16.546,23.017],[18.034,21.024],[16.051,16.788],[16.299,13.798],[18.034,9.436],[15.307,5.077],[8.119,-0.155],[1.797,-4.516],[-2.045,-10.869],[-6.011,-13.112],[-8.738,-18.345],[-13.2,-21.709],[-16.918,-24.2],[-18.406,-23.034]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0.481999984442,0.779999976065,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[134.939,259.809],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.079,-0.079],[-0.246,-0.247],[-0.281,0.282],[-0.351,0.494],[-0.069,0.282],[0.633,0.141],[0.099,0.171],[0.673,-1.216]],"o":[[0.175,0.176],[0.246,0.247],[0.281,-0.283],[0.352,-0.495],[0.071,-0.283],[-0.135,-0.03],[-0.717,1.186],[0.231,0.013]],"v":[[-1.315,1.19],[-0.894,2.249],[-0.051,2.249],[0.862,0.344],[1.775,-1.281],[0.581,-2.199],[0.235,-2.531],[-1.846,1.076]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0.481999984442,0.779999976065,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[126.84,148.991],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 2","np":4,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.22,0],[-0.14,0.283],[-0.14,0.141],[-0.176,0.176],[0.07,0.283],[0.211,0.353],[0.405,0.177],[0.836,-1.85]],"o":[[0.421,0],[0.141,-0.282],[0.141,-0.141],[0.176,-0.176],[-0.071,-0.282],[-0.166,-0.281],[-0.935,1.793],[0.562,0.215]],"v":[[-1.029,2.926],[-0.327,1.938],[-0.257,0.243],[2.272,1.161],[1.992,-0.674],[1.429,-2.015],[0.214,-2.926],[-2.448,2.538]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0.481999984442,0.779999976065,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[123.463,155.445],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 3","np":4,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.479,-0.481],[0,-0.412],[-0.205,0.206],[0,0.344],[0,0.481],[0.342,0],[0,0]],"o":[[0.479,0.481],[0,0.413],[0.205,-0.206],[0,-0.344],[0,-0.481],[0,0],[-0.068,0.206]],"v":[[-0.956,-0.995],[-0.752,1.34],[0.068,2.302],[1.025,1.203],[1.436,-1.82],[0.82,-2.507],[-0.752,-2.507]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0.481999984442,0.779999976065,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[209.388,194.4],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 4","np":4,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.137,0.343],[0.359,-0.328],[0.068,-0.344],[-0.329,0]],"o":[[-0.137,-0.344],[0,0],[-0.068,0.343],[0.329,0]],"v":[[0.786,0.748],[0.102,-1.038],[-0.855,0.061],[-0.227,1.367]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0.481999984442,0.779999976065,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[209.765,189.496],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 5","np":4,"cix":2,"ix":5,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.41,-0.069],[-0.342,0],[0.136,0.137],[0.479,-0.138],[0.41,-0.619],[-0.41,-0.138]],"o":[[0.41,0.068],[0.341,0],[-0.137,-0.138],[0,0],[0,0],[0.41,0.136]],"v":[[-0.307,0.515],[1.606,0.927],[2.154,0.173],[0.512,-0.103],[-1.88,-0.309],[-1.88,0.653]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0.481999984442,0.779999976065,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[235.393,203.88],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 6","np":4,"cix":2,"ix":6,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.479,-0.137],[0,0],[0,0.413],[0.41,0],[0.342,0],[0,0],[-0.342,-0.069]],"o":[[0.479,0.137],[0.957,-0.275],[0,-0.412],[-0.41,0],[-0.341,0],[0,0],[0.341,0.069]],"v":[[0.205,0.549],[1.435,1.443],[2.324,-0.275],[1.435,-1.305],[-0.957,-1.442],[-2.392,-1.03],[-1.572,-0.206]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0.481999984442,0.779999976065,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[217.59,199.587],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 7","np":4,"cix":2,"ix":7,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.544,0.21],[0,0.799],[0.293,0.546],[0.669,-0.042],[0.209,0.294],[0.334,-0.337],[0.502,-0.169],[-0.137,-0.137],[1.004,0.042],[0.167,-0.378],[-0.167,-0.252],[-0.065,-0.252],[0,0],[0,0],[0.23,-0.231],[-0.209,-0.505],[-0.376,0],[-0.419,0.421],[-0.878,0],[-0.418,0.126],[-0.168,0.505],[-0.041,0.421],[0.125,0.463]],"o":[[0.543,-0.21],[0,-0.799],[-0.293,-0.547],[-0.669,0.042],[-0.209,-0.294],[-0.188,0.189],[-0.502,0.168],[0.136,0.137],[-1.004,-0.042],[-0.167,0.378],[0.168,0.252],[0.064,0.252],[0,0],[0,0],[-0.23,0.231],[0.209,0.504],[0.377,0],[0.418,-0.42],[0.879,0],[0.418,-0.126],[0.167,-0.504],[0.042,-0.42],[-0.126,-0.463]],"v":[[2.615,-1.43],[3.576,-2.061],[3.451,-3.532],[2.572,-4.289],[1.317,-3.995],[-0.021,-4.415],[-0.816,-3.49],[-1.276,-2.419],[-1.151,-1.682],[-2.991,-1.598],[-3.033,-0.505],[-3.139,0.168],[-2.531,0.924],[-2.74,1.808],[-3.326,2.691],[-3.535,3.784],[-3.075,4.709],[-1.569,4.33],[-0.482,3.405],[1.401,3.027],[2.238,2.312],[2.53,0.924],[2.405,-0.505]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0.481999984442,0.779999976065,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[183.841,165.018],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 8","np":4,"cix":2,"ix":8,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.14,0.635],[-0.14,0.847],[0.386,0.388],[0,0.212],[-0.14,0.424],[-0.351,0.353],[-0.07,0.353],[0.14,0.706],[-0.176,0.177],[-0.07,-0.283],[-0.141,-0.353],[0,0],[-0.457,0.459],[-0.211,0.353],[0.351,-0.141],[0.562,0.071],[0.211,0.211],[-0.176,0.176],[0.421,0],[0.211,-0.353],[0.211,-0.212],[-0.07,0.423],[-0.141,0.424],[-0.597,0.6],[-0.632,0.283],[-0.421,0.211],[-0.351,0.494],[-0.246,0.247],[0,0.442],[0.211,0.565],[0.731,0.494],[-0.141,0.424],[0,0.283],[0.28,0.282],[0.312,-0.313],[0.352,0.07],[-0.141,0.424],[0.07,0.212],[0.159,-0.015],[0,-15.127],[-0.033,-1.1],[-0.36,0.726]],"o":[[0.139,-0.636],[0.14,-0.847],[-0.387,-0.388],[0,-0.211],[0.14,-0.423],[0.351,-0.354],[0.071,-0.353],[-0.141,-0.707],[0.176,-0.176],[0.071,0.282],[0.14,0.353],[0,0],[0.456,-0.459],[0.21,-0.353],[-0.351,0.141],[-0.562,-0.07],[-0.21,-0.212],[0.175,-0.177],[-0.421,0],[-0.211,0.353],[-0.21,0.212],[0.071,-0.424],[0.141,-0.424],[0.597,-0.6],[0.632,-0.282],[0.422,-0.212],[0.352,-0.494],[0.246,-0.247],[0,-0.443],[-0.21,-0.565],[-0.731,-0.494],[0.14,-0.424],[0,-0.282],[-0.281,-0.282],[-0.312,0.314],[-0.351,-0.071],[0.14,-0.423],[-0.025,-0.073],[-5.521,13.103],[0,1.107],[0.262,-0.377],[0.632,-1.27]],"v":[[-7.011,19.531],[-6.378,16.989],[-6.869,15.506],[-6.729,14.235],[-5.816,12.823],[-5.465,10.776],[-3.709,9.152],[-3.568,6.822],[-2.023,4.915],[-0.899,4.421],[-0.828,5.974],[0.085,5.339],[1.63,3.503],[2.965,2.514],[2.403,2.02],[0.787,1.949],[-0.197,0.114],[0.717,-2.075],[-0.056,-2.923],[-1.531,-1.299],[-2.655,0.961],[-2.936,-0.451],[-2.093,-3.064],[-0.688,-4.688],[1.068,-5.465],[3.807,-5.888],[5.282,-8.077],[7.671,-9.419],[8.233,-10.991],[7.6,-13.373],[4.762,-15.844],[4.44,-17.609],[4.931,-20.01],[3.878,-21.916],[2.543,-20.937],[1.208,-19.515],[0.647,-20.716],[0.647,-22.905],[0.343,-22.967],[-8.233,19.673],[-8.179,22.982],[-7.221,21.366]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0.481999984442,0.779999976065,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[119.54,183.536],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 9","np":4,"cix":2,"ix":9,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.374,-0.15],[0,-0.376],[0.149,-0.528],[-0.599,0],[-0.525,0.15],[-0.3,0.602],[-0.299,0.452],[0,0.602],[0.899,-0.452],[1.198,-0.828],[0.674,-0.301],[0,-0.376],[-0.149,-0.301]],"o":[[-0.375,0.15],[0,0.377],[-0.151,0.526],[0.599,0],[0.523,-0.151],[0.299,-0.602],[0.3,-0.452],[0,-0.602],[0,0],[-1.198,0.827],[-0.674,0.301],[0,0.376],[0.149,0.302]],"v":[[-4.004,3.273],[-5.277,4.552],[-4.902,6.585],[-3.78,7.788],[-1.234,7.036],[2.358,1.844],[4.229,-3.122],[5.277,-5.003],[4.229,-7.335],[2.358,-4.401],[-1.16,-2.595],[-3.481,-0.714],[-3.256,1.317]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0.481999984442,0.779999976065,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[262.589,286.337],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 10","np":4,"cix":2,"ix":10,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.219,-0.514],[0.145,-0.146],[-0.584,-0.22],[-0.072,-0.806],[0,-0.513],[0.658,-0.147],[0.657,0.294],[0,0.367],[-0.145,0.293],[0.219,0.586],[0.438,0.953],[0.146,0.733],[0.364,0.366],[-0.511,0.514],[-0.548,0.55],[-1.167,0],[-1.022,0.366],[-0.366,-0.66],[-0.147,-0.807],[-0.729,-0.147],[0.219,-0.514],[0,0],[0.292,0.66],[0.511,0.073],[0.218,-0.367],[-0.146,-0.44],[0,-0.514],[-0.73,-0.22],[-0.219,-0.366],[-0.219,-0.367],[-0.328,0.33],[-0.219,-0.44]],"o":[[-0.219,0.513],[-0.147,0.147],[0.584,0.22],[0.073,0.807],[0,0.513],[-0.656,0.146],[-0.657,-0.293],[0,-0.367],[0.146,-0.293],[-0.219,-0.587],[-0.438,-0.953],[-0.146,-0.733],[-0.365,-0.367],[0.51,-0.513],[0.547,-0.55],[1.167,0],[1.021,-0.367],[0.364,0.66],[0.145,0.806],[0.73,0.147],[-0.219,0.513],[-0.073,-1.027],[-0.292,-0.659],[-0.51,-0.073],[-0.219,0.367],[0.146,0.44],[0,0.513],[0.729,0.22],[0.219,0.367],[0.219,0.366],[0.328,-0.33],[0.219,0.44]],"v":[[31.062,-18.783],[28.655,-18.856],[29.311,-17.902],[30.478,-15.336],[30.406,-11.082],[28.508,-10.495],[24.204,-11.889],[23.329,-13.429],[23.839,-16.802],[24.569,-19.076],[21.286,-23.329],[21.067,-26.262],[19.681,-27.142],[21.578,-29.416],[23.183,-30.882],[25.298,-31.469],[27.706,-32.642],[28.874,-31.762],[29.166,-29.562],[30.478,-29.049],[30.77,-28.095],[29.457,-26.63],[28.363,-28.316],[26.684,-28.462],[26.247,-27.362],[25.736,-26.555],[26.174,-25.455],[27.195,-23.77],[28.363,-22.229],[28.363,-20.542],[29.603,-21.716],[30.916,-20.322]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[17.287,19.368],[0.068,0.023],[0.236,-0.238],[-0.052,-0.476],[-0.183,-0.185],[0.132,0.132],[0.236,0.237],[0.262,-0.106],[0.211,0],[0,0.529],[0.052,-0.158],[0,0],[-0.132,-0.132],[-0.316,-0.159],[-0.052,-0.369],[0.105,-0.211],[0.157,0.159],[-0.105,0.317],[0.053,0.158],[0,0],[-0.106,0.317],[0.159,0.158],[0.368,0],[0.211,-0.211],[0,-0.528],[0.21,-0.211],[-0.21,-0.211],[0.236,-0.237],[-0.342,-0.343],[0,0],[2.863,1.466],[0.918,0.434],[2.647,0.326],[0.055,0.327],[0.055,0.435],[0.918,0.271],[1.08,0.272],[0.378,0.76],[-0.216,0.869],[-0.432,0.435],[-1.135,0.434],[-1.135,0],[-0.324,0.109],[0.054,0.326],[0.432,0],[1.188,0.109],[0.703,-0.109],[1.026,0.109],[0.486,-0.217],[0.135,-0.136],[0.162,-0.543],[0.189,-0.19],[0.378,-0.598],[0.324,-0.815],[-0.756,-0.325],[0.595,-0.109],[-0.378,-0.706],[-0.27,-1.249],[0.35,-0.353],[0.378,0.815],[-0.055,-0.38],[0.216,-0.217],[0.27,0.271],[0.433,-0.217],[0.053,-0.217],[0.109,-0.108],[0.379,0.108],[0.162,-0.272],[-0.431,-0.163],[0.189,-0.189],[0.595,0.163],[0.757,0.435],[0,0.434],[-0.162,0.814],[0.216,0.434],[-0.432,0],[-0.648,-0.163],[-0.919,-0.326],[-0.486,0],[-0.325,0.435],[-0.107,0.489],[0.243,0.244],[0.649,0.38],[0.27,0.108],[0.27,0],[0.135,0.136],[0.81,-0.108],[0.324,0.054],[-0.324,0.162],[-0.298,0.298],[0.324,0.326],[0.702,0],[0.324,0.163],[0.405,-0.408],[0.216,-0.054],[0.27,0.055],[0.325,0],[0.379,-0.217],[0.864,-0.488],[1.08,-0.163],[1.188,-0.435],[0.622,-0.624],[0.676,-0.679],[0.433,-0.76],[0.405,-0.407],[0.54,-0.326],[0.27,-0.651],[-0.054,-0.76],[-0.595,-0.109],[-0.919,0.217],[-0.243,0.244],[-0.648,-0.163],[-0.054,-0.597],[-0.487,-0.489],[-0.27,-0.706],[-0.54,0],[-0.162,0.326],[-0.756,0.163],[-0.486,0.489],[-0.054,1.25],[-0.109,0.761],[-0.487,0.326],[-0.108,0.488],[0,0.272],[0.162,0.163],[0.378,0.108],[0.298,0.299],[0,0.489],[-0.54,0.923],[-0.595,0.381],[-0.486,0.109],[0.216,0.326],[-0.324,0.543],[-0.866,0.271],[-0.54,-0.325],[-0.108,-0.434],[0.323,-0.327],[0.459,-0.462],[0.648,-0.651],[0.188,-0.19],[-0.216,-0.434],[-0.324,-0.163],[-0.702,-0.435],[-0.81,0.054],[-0.81,0.163],[-0.378,0.163],[-0.324,-0.325],[0,-0.434],[0.323,0],[0.648,0],[0.648,0],[0.135,-0.136],[-0.217,-0.325],[-0.593,-0.109],[0.109,-0.489],[0.324,-0.163],[0.136,0.135],[0.19,-0.19],[0.108,-0.597],[-0.054,-0.217],[0.433,0],[0.162,-0.38],[0.378,0],[0.136,0.136],[0.163,-0.162],[0.27,-0.271],[0.54,-0.163],[-0.054,-0.435],[0.216,0.217],[0.109,0.109],[0.324,0],[0.27,-0.109],[0.107,0.489],[0.216,0.217],[0.054,0.434],[-0.243,0.245],[-0.107,0.272],[-0.055,0.325],[0.136,-0.136],[0.54,-0.109],[0.378,-0.489],[0.053,-0.652],[-0.297,-0.298],[-0.108,-0.326],[0.27,-0.543],[0.486,0.108],[0.325,0],[0.593,-0.163],[0.325,-0.435],[0.216,-0.543],[0.756,-0.271],[0.217,-0.326],[0.162,-0.272],[0.271,0],[0.108,-0.271],[0.163,0.163],[0.27,-0.054],[-0.162,-0.327],[0.122,-0.122],[0.324,0.109],[0.324,-0.108],[0.216,-0.326],[0,-0.434],[-0.594,-0.434],[-0.54,0],[-0.215,-0.652],[-0.297,-0.298],[0.054,-0.652],[0.487,-0.325],[1.08,0],[0.649,0.217],[0.378,-0.109],[0.216,-0.217],[0,0],[-0.27,-0.924],[0,-1.086],[0.162,-0.434],[-0.594,-0.706],[-0.108,-0.271],[-0.324,-0.326],[-0.487,-0.108],[-0.189,0.19],[-0.432,-0.055],[0,0.434],[-0.756,0.435],[-0.216,0.434],[0.108,0.489],[-0.27,0.815],[-0.648,0.272],[-0.324,0.543],[0,1.086],[-0.27,0.271],[-0.54,0],[-0.756,0.597],[-0.486,0],[-0.432,-0.651],[-0.297,-0.299],[-0.594,-0.434],[-0.324,-0.326],[-0.405,-0.407],[-0.053,-0.543],[0,-0.163],[-0.378,0],[-0.216,0.543],[-0.162,0.49],[0,0.271],[0.459,0.461],[-0.163,0.38],[-0.431,-0.054],[-0.162,-0.271],[0,0],[0.297,0.299],[0.594,0.327],[0.513,0.516],[0.594,0.598],[0.27,0.652],[0.702,0.543],[-0.054,1.032],[-0.811,0.163],[-0.108,-0.272],[-0.324,0.326],[-0.27,-0.597],[-0.216,-0.488],[-0.972,-0.217],[-0.433,-0.434],[-0.108,-0.977],[-0.432,-0.108],[-0.054,-0.598],[-0.486,-0.272],[0.054,-0.543],[-0.702,-0.163],[-0.216,-0.217],[-0.162,0.272],[-0.109,0.651],[-0.217,0.218],[0.379,0.101],[-0.216,0.326],[0.379,0.489],[-0.108,0.217],[-0.431,-0.055],[-0.054,0.38],[-1.027,0],[-0.379,-0.38],[-0.703,0.49],[-0.541,0],[0.431,0.434],[0.325,0.489],[-0.595,0.598],[-0.162,0.325],[-0.648,0.163],[0.162,0.706],[-0.595,0.38],[-0.702,-0.217],[-0.405,-0.407],[-0.217,-0.434],[-0.055,-0.381],[-0.432,-0.272],[-0.217,0.217],[-0.271,0.272],[0.594,0.38],[-0.162,0.38],[-1.297,0.218],[-0.595,-0.217],[0.271,-0.272],[0.378,0],[0,-0.488],[0.055,-0.217],[-0.486,-0.163],[-0.485,-0.326],[-0.161,-1.574],[0.648,-0.218],[1.189,0.271],[0.716,0.239],[0.299,-0.3],[0.477,0],[0.716,-0.119],[0.478,-0.479],[-0.477,0],[-0.238,-0.839],[-0.835,0],[-0.954,-0.599],[-1.669,0.719],[-0.477,0],[0,-1.079],[0.477,-1.438],[0.954,-0.6],[1.074,0.24],[0.596,-0.6],[1.192,0.24],[0.657,0.659],[1.075,-0.599],[0,-0.6],[1.193,0.359],[0.716,0.719],[1.551,0.36],[0.358,1.439],[-0.357,0.6],[0.716,0],[1.192,-0.36],[1.074,0],[0.835,-0.479],[1.073,0],[0.358,-0.36],[1.312,-1.318],[0.239,-0.48],[0.358,-1.799],[1.073,-1.078],[0.239,-1.079],[0,-1.078],[-0.358,-2.279],[0,-0.96],[-1.074,-1.439],[-0.835,-0.839],[-0.477,0],[-1.312,0],[-1.192,0],[-1.193,-0.359],[-1.67,0.24],[-0.656,-0.66],[-1.431,0],[-1.431,-1.678],[0,-0.959],[-1.55,-1.798],[-0.358,-0.959],[0.239,-1.319],[0,-0.6],[-0.835,-1.799],[-0.358,-1.559],[-1.313,-0.36],[-0.596,-1.079],[-0.476,-0.48],[-1.073,0],[-1.67,0.72],[-0.955,0.959],[0,0],[-0.656,0.659],[0,0.839],[-0.775,0.779],[-1.133,1.14],[0,0.839],[0,0.839],[0,0.481],[-0.835,1.319],[-1.073,1.079],[-1.312,1.559],[-0.238,0.839],[0,0],[0.597,0],[0.596,-0.6],[0.418,0.42],[0.417,0.42],[0.477,0],[0.358,0.72],[0.239,0.72],[0.716,0.72],[0,0.839],[0.536,0.539],[0.238,0.599],[0.477,0.72],[-0.358,0],[0,0],[0,0],[-0.476,-0.479],[-0.597,-0.839],[0,-0.36],[-0.537,-0.539],[-0.477,-1.318],[0,-1.199],[0,0],[-0.357,0.359],[-0.597,0],[-1.073,0.599],[-0.835,0.479],[0,0],[0.418,0.419],[0.716,0.359],[0,0],[0.835,-0.241],[0,0],[0.299,-0.299],[0.536,0.539],[0,0.838],[-1.193,0],[-0.298,-0.3],[-0.715,-0.719],[-1.194,0],[0,0],[-0.716,-0.24],[-1.075,0],[0,0],[-0.537,-0.539],[0.358,-0.36],[0,-0.839],[-0.716,0],[0,0],[0.238,-1.079],[-1.073,-1.798],[0,0],[-0.298,0.3],[0,-0.239],[-0.596,0.6],[0,0],[0,0.48],[0,0.359],[-1.074,0.72],[-0.656,0.66],[0,0],[-0.239,-0.6],[0.358,-0.6],[-0.478,0],[0,0],[0,0],[0,-0.599],[-0.358,-1.079],[-0.002,-0.007],[-0.176,0.457],[0,0.152],[0,0],[0,0],[-0.835,-0.36],[-0.088,-0.109],[0,11.336]],"o":[[-0.124,-0.059],[-0.314,-0.105],[-0.237,0.238],[0.052,0.475],[0.185,0.185],[-0.131,-0.133],[-0.238,-0.238],[-0.263,0.106],[-0.21,0],[0,-0.528],[-0.053,0.159],[0,0],[0.131,0.132],[0.315,0.158],[0.053,0.371],[-0.105,0.212],[-0.158,-0.158],[0.106,-0.317],[-0.052,-0.159],[0,0],[0.104,-0.317],[-0.157,-0.159],[-0.368,0],[-0.21,0.212],[0,0.528],[-0.211,0.212],[0.211,0.211],[-0.237,0.238],[0.341,0.343],[-0.108,0.271],[-2.864,-1.466],[-0.919,-0.435],[-2.648,-0.325],[-0.053,-0.325],[-0.053,-0.434],[-0.919,-0.272],[-1.081,-0.271],[-0.378,-0.761],[0.216,-0.869],[0.433,-0.434],[1.135,-0.435],[1.134,0],[0.324,-0.108],[-0.054,-0.326],[-0.432,0],[-1.189,-0.108],[-0.703,0.109],[-1.027,-0.109],[-0.485,0.217],[-0.135,0.136],[-0.162,0.543],[-0.188,0.19],[-0.378,0.597],[-0.324,0.814],[0.756,0.326],[-0.594,0.108],[0.378,0.706],[0.271,1.249],[-0.352,0.353],[-0.378,-0.815],[0.053,0.38],[-0.216,0.217],[-0.27,-0.272],[-0.432,0.218],[-0.054,0.217],[-0.108,0.109],[-0.378,-0.109],[-0.162,0.271],[0.433,0.163],[-0.189,0.19],[-0.595,-0.162],[-0.756,-0.434],[0,-0.435],[0.162,-0.815],[-0.216,-0.435],[0.433,0],[0.649,0.163],[0.918,0.326],[0.486,0],[0.324,-0.434],[0.108,-0.489],[-0.243,-0.245],[-0.648,-0.38],[-0.27,-0.109],[-0.27,0],[-0.135,-0.136],[-0.811,0.109],[-0.324,-0.055],[0.324,-0.163],[0.297,-0.299],[-0.324,-0.325],[-0.703,0],[-0.324,-0.164],[-0.405,0.407],[-0.215,0.055],[-0.271,-0.054],[-0.323,0],[-0.378,0.217],[-0.864,0.489],[-1.081,0.163],[-1.189,0.434],[-0.621,0.625],[-0.675,0.679],[-0.432,0.76],[-0.405,0.408],[-0.541,0.326],[-0.27,0.652],[0.054,0.76],[0.594,0.108],[0.918,-0.218],[0.243,-0.245],[0.648,0.163],[0.054,0.598],[0.485,0.489],[0.271,0.706],[0.54,0],[0.162,-0.326],[0.757,-0.162],[0.486,-0.489],[0.055,-1.249],[0.107,-0.76],[0.486,-0.325],[0.108,-0.489],[0,-0.271],[-0.162,-0.163],[-0.379,-0.109],[-0.297,-0.299],[0,-0.489],[0.54,-0.923],[0.595,-0.38],[0.486,-0.108],[-0.216,-0.326],[0.324,-0.543],[0.864,-0.272],[0.54,0.327],[0.108,0.435],[-0.324,0.325],[-0.459,0.461],[-0.649,0.652],[-0.19,0.19],[0.216,0.435],[0.324,0.163],[0.702,0.434],[0.811,-0.054],[0.811,-0.163],[0.378,-0.163],[0.324,0.326],[0,0.435],[-0.324,0],[-0.649,0],[-0.648,0],[-0.136,0.136],[0.216,0.326],[0.595,0.108],[-0.107,0.488],[-0.324,0.162],[-0.135,-0.136],[-0.189,0.19],[-0.108,0.597],[0.053,0.217],[-0.432,0],[-0.162,0.38],[-0.378,0],[-0.135,-0.136],[-0.162,0.163],[-0.27,0.272],[-0.54,0.163],[0.054,0.434],[-0.216,-0.218],[-0.107,-0.109],[-0.324,0],[-0.27,0.108],[-0.108,-0.489],[-0.216,-0.217],[-0.054,-0.434],[0.243,-0.244],[0.109,-0.271],[0.053,-0.326],[-0.135,0.136],[-0.541,0.109],[-0.378,0.488],[-0.054,0.651],[0.297,0.299],[0.108,0.326],[-0.27,0.543],[-0.486,-0.109],[-0.324,0],[-0.595,0.163],[-0.323,0.435],[-0.216,0.543],[-0.757,0.272],[-0.216,0.326],[-0.162,0.271],[-0.27,0],[-0.108,0.272],[-0.162,-0.163],[-0.27,0.055],[0.162,0.325],[-0.121,0.122],[-0.324,-0.108],[-0.324,0.109],[-0.216,0.325],[0,0.435],[0.595,0.435],[0.54,0],[0.217,0.651],[0.298,0.299],[-0.054,0.651],[-0.486,0.326],[-1.08,0],[-0.648,-0.217],[-0.378,0.109],[-0.216,0.217],[0,0],[0.27,0.923],[0,1.086],[-0.163,0.434],[0.594,0.706],[0.108,0.272],[0.324,0.326],[0.486,0.108],[0.189,-0.19],[0.433,0.054],[0,-0.435],[0.756,-0.435],[0.216,-0.435],[-0.108,-0.489],[0.27,-0.814],[0.649,-0.271],[0.325,-0.543],[0,-1.086],[0.27,-0.272],[0.541,0],[0.757,-0.598],[0.486,0],[0.432,0.652],[0.297,0.298],[0.594,0.435],[0.324,0.326],[0.405,0.407],[0.055,0.543],[0,0.164],[0.378,0],[0.217,-0.543],[0.162,-0.488],[0,-0.272],[-0.459,-0.462],[0.162,-0.38],[0.433,0.055],[0.163,0.272],[0,0],[-0.298,-0.299],[-0.595,-0.325],[-0.513,-0.515],[-0.595,-0.597],[-0.27,-0.651],[-0.702,-0.543],[0.054,-1.032],[0.81,-0.163],[0.108,0.271],[0.325,-0.326],[0.27,0.597],[0.217,0.489],[0.973,0.217],[0.431,0.435],[0.107,0.978],[0.432,0.109],[0.053,0.597],[0.486,0.272],[-0.054,0.543],[0.703,0.163],[0.217,0.217],[0.162,-0.272],[0.108,-0.652],[0.215,-0.217],[-0.378,-0.101],[0.215,-0.326],[-0.378,-0.488],[0.108,-0.217],[0.433,0.054],[0.054,-0.38],[1.026,0],[0.377,0.38],[0.703,-0.488],[0.54,0],[-0.433,-0.435],[-0.324,-0.489],[0.593,-0.597],[0.162,-0.326],[0.649,-0.163],[-0.162,-0.706],[0.593,-0.38],[0.702,0.217],[0.406,0.407],[0.216,0.435],[0.054,0.38],[0.432,0.271],[0.216,-0.218],[0.27,-0.271],[-0.595,-0.38],[0.162,-0.38],[1.297,-0.217],[0.593,0.218],[-0.269,0.271],[-0.379,0],[0,0.489],[-0.053,0.217],[0.487,0.163],[0.486,0.326],[0.162,1.576],[-0.648,0.217],[-1.188,-0.272],[-0.715,-0.24],[-0.298,0.299],[-0.477,0],[-0.716,0.12],[-0.477,0.48],[0.478,0],[0.24,0.839],[0.835,0],[0.954,0.6],[1.67,-0.72],[0.477,0],[0,1.079],[-0.477,1.44],[-0.954,0.598],[-1.073,-0.24],[-0.597,0.6],[-1.193,-0.24],[-0.655,-0.659],[-1.073,0.6],[0,0.6],[-1.192,-0.361],[-0.715,-0.719],[-1.551,-0.359],[-0.358,-1.439],[0.358,-0.599],[-0.716,0],[-1.193,0.36],[-1.073,0],[-0.834,0.48],[-1.074,0],[-0.357,0.359],[-1.312,1.32],[-0.238,0.48],[-0.358,1.798],[-1.073,1.08],[-0.238,1.078],[0,1.08],[0.357,2.278],[0,0.959],[1.073,1.439],[0.835,0.84],[0.477,0],[1.312,0],[1.193,0],[1.193,0.361],[1.67,-0.24],[0.656,0.659],[1.431,0],[1.431,1.679],[0,0.959],[1.551,1.799],[0.358,0.959],[-0.239,1.318],[0,0.6],[0.835,1.798],[0.358,1.558],[1.311,0.36],[0.596,1.079],[0.478,0.479],[1.073,0],[1.669,-0.719],[0.954,-0.96],[0,0],[0.656,-0.659],[0,-0.839],[0.776,-0.779],[1.133,-1.139],[0,-0.84],[0,-0.839],[0,-0.479],[0.835,-1.319],[1.074,-1.079],[1.312,-1.559],[0.239,-0.84],[0,0],[-0.596,0],[-0.596,0.599],[-0.417,-0.42],[-0.418,-0.42],[-0.477,0],[-0.358,-0.72],[-0.238,-0.72],[-0.716,-0.72],[0,-0.84],[-0.537,-0.54],[-0.239,-0.599],[-0.477,-0.719],[0.358,0],[0,0],[0,0],[0.478,0.48],[0.596,0.839],[0,0.359],[0.536,0.54],[0.478,1.319],[0,1.199],[0,0],[0.358,-0.36],[0.596,0],[1.074,-0.599],[0.835,-0.48],[0,0],[-0.417,-0.42],[-0.716,-0.36],[0,0],[-0.835,0.239],[0,0],[-0.298,0.3],[-0.537,-0.54],[0,-0.84],[1.193,0],[0.298,0.299],[0.716,0.719],[1.192,0],[0,0],[0.716,0.239],[1.073,0],[0,0],[0.537,0.54],[-0.358,0.36],[0,0.84],[0.714,0],[0,0],[-0.238,1.08],[1.073,1.799],[0,0],[0.298,-0.299],[0,0.24],[0.597,-0.6],[0,0],[0,-0.48],[0,-0.36],[1.073,-0.72],[0.656,-0.659],[0,0],[0.239,0.6],[-0.357,0.599],[0.476,0],[0,0],[0,1.079],[0,0.6],[0.002,0.007],[0.181,-0.455],[-0.098,-0.522],[0,0],[0,-0.838],[0,0],[0.13,0.056],[3.184,-10.283],[0,-28.068]],"v":[[51.736,-81.983],[51.435,-82.115],[50.49,-82.062],[50.542,-81.111],[51.382,-80.319],[50.647,-79.896],[49.702,-80.477],[48.283,-80.319],[48.387,-79.051],[46.968,-80.425],[46.496,-81.534],[45.498,-81.111],[45.445,-80.214],[46.443,-79.262],[46.758,-77.467],[46.338,-75.671],[45.235,-75.988],[45.129,-77.942],[44.551,-79.685],[43.658,-80.583],[43.816,-82.485],[43.132,-83.488],[41.556,-84.016],[40.294,-84.546],[40.084,-82.643],[38.824,-82.168],[39.191,-80.847],[39.402,-79.844],[40.663,-77.889],[41.251,-76.796],[37.74,-78.153],[35.525,-79.402],[32.121,-79.837],[31.634,-81.033],[31.256,-82.335],[29.204,-83.312],[27.205,-84.073],[26.07,-85.81],[26.232,-87.711],[26.772,-89.178],[28.555,-90.318],[35.579,-91.404],[38.226,-91.676],[37.902,-92.436],[36.119,-92.925],[33.04,-93.251],[30.338,-93.142],[27.313,-92.979],[25.313,-92.654],[24.233,-91.947],[23.531,-90.861],[22.936,-90.102],[22.18,-88.797],[20.559,-86.516],[22.504,-84.943],[20.559,-84.344],[18.668,-83.149],[19.046,-80.651],[16.832,-78.589],[13.86,-78.153],[12.996,-77.61],[14.4,-75.492],[12.455,-76.253],[9.267,-75.927],[7.539,-74.623],[7.376,-72.615],[3.756,-74.514],[2.676,-73.754],[3.918,-72.559],[4.567,-71.365],[2.352,-71.528],[-0.133,-72.777],[-0.673,-73.809],[-0.62,-75.709],[-1.376,-77.012],[-1.268,-77.882],[0.461,-77.61],[2.623,-76.741],[5.972,-76.198],[8.079,-76.633],[8.727,-78.099],[7.863,-79.999],[4.135,-81.466],[-1.268,-83.909],[-3.591,-84.073],[-3.321,-85.159],[-5.806,-85.159],[-8.183,-85.43],[-8.237,-86.353],[-6.724,-86.68],[-7.697,-87.44],[-10.074,-87.386],[-10.615,-88.471],[-12.181,-87.766],[-13.208,-87.82],[-14.342,-87.386],[-14.451,-88.526],[-15.801,-88.201],[-17.53,-87.06],[-19.907,-86.734],[-22.878,-85.81],[-27.039,-83.421],[-31.199,-79.783],[-33.414,-76.253],[-35.899,-73.483],[-42.76,-68.812],[-44.597,-67.346],[-44.597,-60.123],[-42.922,-58.439],[-40.491,-58.439],[-37.79,-61.643],[-36.277,-61.915],[-35.737,-59.906],[-35.358,-57.679],[-33.198,-54.095],[-32.441,-52.574],[-31.469,-52.954],[-29.686,-54.421],[-27.633,-55.344],[-27.309,-57.572],[-27.092,-59.526],[-25.417,-61.318],[-23.959,-62.512],[-24.175,-63.219],[-24.769,-63.653],[-25.742,-64.141],[-26.823,-65.229],[-27.254,-66.531],[-26.174,-68.975],[-23.689,-71.528],[-20.285,-72.94],[-20.393,-73.754],[-19.961,-75.655],[-17.421,-76.958],[-15.044,-76.633],[-13.964,-74.895],[-14.774,-74.352],[-16.017,-73.048],[-18.34,-71.039],[-20.393,-69.681],[-20.177,-68.921],[-19.637,-64.686],[-18.178,-63.598],[-15.369,-63.49],[-11.911,-64.25],[-8.994,-64.74],[-8.021,-63.816],[-6.67,-62.567],[-9.263,-62.35],[-11.046,-61.806],[-14.126,-61.97],[-16.395,-61.535],[-16.233,-60.069],[-14.991,-59.199],[-14.991,-57.408],[-15.855,-55.995],[-17.476,-57.354],[-19.205,-57.679],[-19.961,-55.725],[-20.177,-52.031],[-21.528,-51.434],[-22.987,-50.565],[-24.067,-50.186],[-25.148,-50.945],[-26.499,-50.729],[-28.119,-49.859],[-30.172,-49.37],[-30.496,-48.229],[-31.523,-48.501],[-32.604,-49.859],[-34.116,-50.076],[-35.845,-48.936],[-36.709,-50.24],[-38.06,-50.783],[-38.222,-52.194],[-37.304,-53.552],[-36.602,-54.638],[-37.195,-56.158],[-37.574,-57.299],[-38.924,-56.757],[-40.545,-55.615],[-41.031,-53.824],[-40.275,-52.466],[-39.681,-51.162],[-40.113,-48.827],[-41.788,-48.393],[-42.977,-47.632],[-45.299,-47.199],[-46.813,-45.677],[-47.569,-43.342],[-50.216,-42.311],[-51.513,-41.604],[-51.891,-39.594],[-53.404,-39.486],[-53.728,-38.4],[-55.187,-38.237],[-56.429,-39.052],[-56.699,-38.182],[-56.916,-36.689],[-58.266,-36.608],[-59.887,-36.608],[-61.021,-36.337],[-61.129,-35.359],[-59.887,-34.327],[-57.942,-34.11],[-57.078,-32.48],[-55.781,-31.177],[-55.781,-28.408],[-57.078,-25.149],[-59.725,-24.931],[-63.345,-25.529],[-65.56,-25.04],[-66.856,-25.203],[-68.423,-24.443],[-68.153,-23.085],[-68.207,-18.306],[-68.963,-16.188],[-68.369,-14.667],[-68.045,-11.844],[-64.371,-11.41],[-63.128,-10.16],[-61.994,-10.867],[-58.645,-10.811],[-57.564,-11.464],[-56.375,-12.821],[-54.484,-14.776],[-54.484,-16.405],[-53.782,-18.904],[-51.513,-20.75],[-49.082,-22.108],[-49.514,-24.117],[-47.947,-25.583],[-45.354,-24.714],[-43.841,-25.094],[-39.627,-27.375],[-37.844,-25.529],[-35.575,-22.596],[-31.793,-20.153],[-30.658,-18.306],[-29.146,-17.22],[-28.66,-15.591],[-28.984,-13.636],[-28.227,-13.311],[-27.471,-13.908],[-27.147,-15.211],[-26.552,-16.405],[-27.201,-17.274],[-27.254,-18.74],[-25.959,-18.632],[-25.04,-17.546],[-24.284,-18.089],[-24.769,-19.066],[-26.876,-20.153],[-28.713,-21.565],[-31.09,-23.303],[-32.063,-25.258],[-34.224,-26.669],[-34.386,-29.059],[-32.711,-30.688],[-32.063,-29.493],[-31.037,-29.602],[-29.848,-28.354],[-28.984,-25.692],[-26.661,-24.66],[-22.932,-21.945],[-22.608,-19.555],[-21.96,-16.949],[-20.879,-16.079],[-19.475,-14.233],[-19.961,-12.658],[-18.665,-11.3],[-17.476,-10.594],[-16.935,-11.083],[-16.503,-12.929],[-15.422,-13.636],[-16.288,-14.551],[-16.881,-15.862],[-17.314,-17.383],[-17.692,-18.849],[-16.666,-18.36],[-16.017,-19.339],[-13.045,-19.772],[-11.586,-18.632],[-10.128,-19.61],[-8.399,-20.098],[-7.588,-20.858],[-9.534,-22.759],[-9.209,-24.823],[-8.021,-26.832],[-6.617,-28.354],[-6.508,-29.711],[-5.049,-32.046],[-2.186,-32.372],[-1.7,-31.177],[-0.241,-30.634],[-0.889,-29.167],[0.137,-28.19],[1.272,-27.701],[3.271,-29.059],[1.974,-29.928],[1.866,-31.829],[5.053,-32.752],[8.62,-33.404],[7.214,-31.938],[6.783,-30.852],[6.404,-29.548],[5.593,-28.733],[6.512,-28.027],[11.104,-24.497],[12.779,-22.108],[10.564,-19.936],[5.972,-19.882],[2.043,-22.579],[-1.774,-21.62],[-4.994,-20.421],[-6.425,-19.104],[-10.481,-17.904],[-10.481,-16.945],[-10.243,-12.868],[-6.187,-9.751],[-2.966,-10.59],[0.85,-10.35],[3.713,-11.189],[4.071,-8.552],[3.117,-3.277],[0.135,-0.158],[-4.279,-0.279],[-7.26,0.201],[-11.554,-0.039],[-15.372,-1.598],[-20.501,-2.438],[-22.05,1.28],[-25.152,0.921],[-29.208,-1.358],[-33.024,-3.158],[-37.795,-5.554],[-36.603,-8.552],[-38.153,-11.91],[-43.043,-11.549],[-49.723,-10.83],[-54.375,-9.751],[-58.549,-8.192],[-63.917,-8.791],[-65.706,-5.436],[-69.165,-2.798],[-70.119,2.359],[-73.22,4.635],[-76.202,9.913],[-79.542,16.266],[-78.11,24.42],[-79.065,28.976],[-74.651,34.37],[-71.073,40.725],[-66.183,44.922],[-63.678,45.882],[-60.1,44.802],[-56.402,45.521],[-51.631,43.603],[-45.906,44.323],[-42.805,46.841],[-38.511,48.159],[-38.988,55.953],[-34.933,59.909],[-32.189,67.582],[-32.547,70.699],[-34.694,75.616],[-32.905,79.332],[-30.4,85.327],[-27.895,87.844],[-25.629,90.962],[-23.244,92.88],[-17.637,92.16],[-11.912,89.763],[-7.379,86.286],[-5.829,83.409],[-2.37,81.729],[-3.205,78.612],[-0.581,75.854],[4.667,72.617],[6.099,67.703],[5.263,63.385],[5.383,60.388],[7.649,56.792],[13.732,50.557],[19.458,44.323],[24.109,36.769],[24.467,34.01],[20.054,35.57],[16.595,36.41],[14.329,35.689],[13.255,33.532],[10.273,29.814],[8.484,28.736],[7.172,23.939],[5.025,22.861],[4.548,17.226],[2.64,14.948],[0.97,10.392],[-1.416,5.236],[-1.416,3.558],[0.97,5.956],[1.924,4.038],[4.309,9.193],[6.099,12.79],[8.842,17.586],[8.842,19.624],[12.42,24.898],[13.852,28.976],[14.209,32.691],[15.879,31.614],[19.816,30.415],[22.797,28.495],[27.21,26.458],[36.157,16.027],[36.633,13.989],[33.89,11.711],[32.458,10.392],[29.119,12.551],[26.853,12.43],[25.779,10.991],[24.229,10.392],[21.843,2.839],[24.109,1.519],[25.541,2.839],[27.449,5.836],[30.074,7.394],[33.89,6.915],[35.56,9.312],[39.616,10.152],[46.175,9.312],[47.249,12.189],[49.754,13.629],[48.442,14.708],[49.874,16.385],[52.378,14.468],[51.901,21.301],[52.974,27.176],[54.763,34.491],[56.791,32.092],[56.791,35.57],[58.103,35.57],[57.268,30.535],[57.865,28.495],[58.938,23.461],[62.159,19.743],[65.737,13.148],[69.434,11.111],[70.508,14.948],[70.269,18.545],[70.747,19.984],[72.178,18.185],[72.178,21.782],[70.747,27.057],[71.701,31.853],[71.706,31.872],[72.243,30.505],[72.058,29.336],[72.058,26.098],[73.251,22.141],[74.325,23.34],[74.643,23.601],[79.542,-8.951]],"c":true},"ix":2},"nm":"Path 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"mm","mm":1,"nm":"Merge Paths 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0.481999984442,0.779999976065,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[249.445,212.16],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 11","np":6,"cix":2,"ix":11,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.076,-0.152],[-0.566,0.228],[-0.792,-0.455],[-0.792,0.796],[-1.132,0.683],[-1.019,0.683],[0,0.569],[0.679,0.341],[0,0],[0.202,-0.05],[0.378,-0.077],[0.152,-0.711],[0.48,0.025],[0.151,-0.356],[0.177,0],[0,0.127],[-0.101,0.305],[0.202,0.076],[0.227,-0.102],[0.303,0.076],[0.151,-0.077],[0.051,-0.432],[0,-0.254],[-0.303,-0.076],[-0.253,0.153],[-0.177,-0.076],[0,-0.102],[0.127,0],[0.05,-0.127],[-0.278,0.076],[-0.202,-0.255]],"o":[[0.076,0.152],[0.566,-0.227],[0.792,0.455],[0.793,-0.797],[1.132,-0.682],[1.019,-0.682],[0,-0.569],[-0.679,-0.341],[0,0],[-0.203,0.051],[-0.379,0.076],[-0.151,0.711],[-0.48,-0.026],[-0.152,0.355],[-0.176,0],[0,-0.127],[0.101,-0.304],[-0.202,-0.076],[-0.227,0.102],[-0.303,-0.076],[-0.152,0.076],[-0.05,0.432],[0,0.254],[0.303,0.076],[0.252,-0.152],[0.177,0.076],[0,0.102],[-0.126,0],[-0.051,0.127],[0.278,-0.076],[0.202,0.254]],"v":[[-4.595,2.448],[-3.507,2.389],[-2.149,3.413],[-0.112,2.617],[2.718,1.365],[5.321,-0.228],[6.793,-2.503],[5.208,-3.527],[3.51,-3.755],[2.049,-3.317],[0.887,-3.189],[0.179,-2.174],[-1.437,-1.818],[-2.574,-1.386],[-3.282,-0.777],[-3.559,-1.285],[-3.155,-2.377],[-3.787,-2.834],[-4.671,-2.834],[-5.328,-2.351],[-6.035,-2.554],[-6.187,-1.488],[-6.793,-1.006],[-6.035,-0.574],[-5.075,-0.879],[-4.368,-0.625],[-4.57,0.01],[-5.606,0.365],[-6.136,0.645],[-5.353,0.848],[-4.671,1.331]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0.481999984442,0.779999976065,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[170.849,140.674],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 12","np":4,"cix":2,"ix":12,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.251,0.378],[0.335,0],[0.125,0.379],[0.126,0.337],[0.376,0.378],[-0.052,0.505],[0.292,0.042],[0.084,0.084],[-0.146,0.147],[-0.167,0.169],[-0.188,0.189],[0.083,0.168],[0.168,0.042],[0.251,0.126],[-0.272,0.273],[-0.085,0.178],[0,0],[0.167,0],[0.168,-0.042],[0.083,-0.63],[0.229,-0.231],[-0.125,-0.253],[-0.041,-0.253],[-0.083,-0.336],[-0.167,-0.252],[-0.376,-0.21],[0.042,-0.673],[0,-0.504],[-0.418,-0.042],[-0.251,0],[0.125,-0.379],[-0.293,-0.294],[0.167,-0.421],[0.126,0],[0.083,-0.252],[-0.377,-0.378],[0.293,-0.378],[0,-0.211],[-0.46,-0.085],[0.104,-0.105],[0.168,0.042],[0.126,-0.21],[0.084,-0.21],[-0.251,-0.252],[-0.67,0.168],[-0.083,0.21],[-0.377,-0.085],[-0.168,0.252],[-0.334,-0.043],[-0.377,0],[-0.419,-0.084],[0,0.168],[0.334,0.126],[-0.189,0.189]],"o":[[-0.251,-0.378],[-0.334,0],[-0.126,-0.378],[-0.125,-0.336],[-0.377,-0.378],[0.051,-0.504],[-0.293,-0.042],[-0.083,-0.084],[0.147,-0.147],[0.168,-0.168],[0.188,-0.19],[-0.084,-0.168],[-0.287,-0.072],[-0.251,-0.127],[0.209,-0.211],[0.025,-0.052],[0.413,-0.729],[-0.167,0],[-0.167,0.042],[-0.084,0.631],[-0.23,0.232],[0.126,0.252],[0.042,0.252],[0.084,0.337],[0.168,0.253],[0.377,0.21],[-0.042,0.673],[0,0.505],[0.419,0.042],[0.251,0],[-0.126,0.378],[0.293,0.294],[-0.167,0.42],[-0.125,0],[-0.084,0.253],[0.376,0.379],[-0.293,0.379],[0,0.21],[0.46,0.084],[-0.105,0.106],[-0.167,-0.042],[-0.125,0.211],[-0.083,0.21],[0.251,0.253],[0.669,-0.169],[0.084,-0.21],[0.376,0.084],[0.167,-0.252],[0.335,0.042],[0.376,0],[0.418,0.084],[0,-0.169],[-0.335,-0.126],[0.188,-0.189]],"v":[[5.459,3.581],[4.161,3.329],[3.326,2.782],[2.949,1.268],[1.568,-0.708],[0.784,-2.39],[-0.062,-3.189],[-1.527,-3.525],[-1.192,-4.24],[-0.23,-4.871],[0.188,-5.879],[0.773,-6.931],[-0.021,-7.141],[-2.908,-7.351],[-1.904,-8.57],[-1.399,-9.369],[-1.359,-9.454],[-2.699,-9.748],[-3.786,-9.664],[-4.329,-8.613],[-5.249,-7.604],[-5.585,-6.594],[-5.208,-5.879],[-5.041,-5.039],[-4.999,-4.114],[-3.995,-3.735],[-3.911,-2.642],[-4.078,-1.549],[-3.535,-0.918],[-2.154,-1.086],[-2.322,-0.077],[-1.652,1.058],[-1.694,2.446],[-3.242,2.488],[-3.827,2.908],[-3.326,3.959],[-3.702,5.431],[-4.664,6.23],[-2.656,6.861],[-2.113,7.491],[-3.535,7.66],[-3.953,8.584],[-5.041,9.173],[-4.873,9.93],[-3.326,9.636],[-2.531,8.963],[-1.317,8.753],[-0.355,8.206],[0.857,7.618],[2.029,8.122],[4.372,7.744],[5.417,6.987],[4.12,6.692],[5.124,5.137]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0.481999984442,0.779999976065,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[192.416,162.531],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 13","np":4,"cix":2,"ix":13,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.042,0.476],[10.285,-12.495],[-0.05,-0.5],[0.227,-0.797],[-0.565,-0.113],[-0.453,-0.113],[0.792,-0.455],[0.453,-0.455],[-0.113,-1.365],[-0.114,-1.024],[-0.906,-0.342],[-0.566,0],[-0.34,1.252],[0,0],[-1.019,0.228],[-0.566,0.228],[-0.567,0.797],[-0.68,0.683],[-0.679,0.682],[-0.679,0.683],[0,0.91],[-0.114,1.252],[0,0],[-0.34,0.57],[0.679,0.341],[-0.34,0.342],[-0.397,0.398],[0.226,0.227],[-0.736,0.74],[-0.679,0.227],[-0.566,0],[0.905,0],[0.906,-0.626],[0.679,0],[0,0],[-0.509,0.512]],"o":[[-14.8,6.914],[0.118,0.526],[0.113,1.138],[-0.226,0.796],[0.566,0.114],[0.452,0.114],[-0.793,0.455],[-0.452,0.455],[0.113,1.365],[0.113,1.024],[0.905,0.341],[0.566,0],[0.339,-1.251],[0,0],[1.019,-0.227],[0.566,-0.227],[0.566,-0.796],[0.679,-0.683],[0.679,-0.683],[0.679,-0.682],[0,-0.91],[0.113,-1.251],[0,0],[0.34,-0.568],[-0.679,-0.341],[0.339,-0.341],[0.396,-0.398],[-0.226,-0.228],[0.736,-0.739],[0.679,-0.228],[0.566,0],[-0.906,0],[-0.905,0.626],[-0.679,0],[0,0],[0.28,-0.282]],"v":[[14.18,-26.157],[-23.904,3.405],[-23.6,4.995],[-24.165,7.271],[-24.279,9.432],[-21.674,8.977],[-23.939,11.48],[-25.523,13.87],[-25.863,17.852],[-25.184,22.403],[-22.807,25.816],[-20.09,26.157],[-18.506,22.971],[-14.658,13.983],[-12.281,12.504],[-7.188,9.546],[-4.471,6.474],[-0.057,4.654],[5.262,0.9],[8.658,-1.49],[8.884,-4.106],[9.904,-6.837],[12.281,-8.999],[13.751,-11.047],[13.298,-13.208],[13.072,-14.915],[15.337,-16.621],[13.751,-17.645],[15.109,-19.466],[19.751,-22.651],[25.41,-25.211],[24.164,-25.95],[19.41,-25.211],[16.354,-24.358],[13.979,-23.561],[13.751,-24.813]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0.481999984442,0.779999976065,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[160.155,130.103],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 14","np":4,"cix":2,"ix":14,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-60.423],[60.112,0],[0,60.423],[-60.11,0]],"o":[[0,60.423],[-60.11,0],[0,-60.423],[60.112,0]],"v":[[108.84,0],[-0.001,109.406],[-108.84,0],[-0.001,-109.406]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.051000000449,0.340999977261,0.670999983245,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[220.147,203.209],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 15","np":4,"cix":2,"ix":15,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[9.496,10.504],[-2.392,-10.504],[-9.495,-6.484],[-2.823,-2.401],[-4.845,-1.258],[1.825,2.824],[0.518,3.563],[5.262,6.466],[4.033,7.161]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.141000007181,0.670999983245,0.081999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[282.776,302.485],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 16","np":4,"cix":2,"ix":16,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-9.496,-4.475],[-2.824,-0.392],[-4.846,0.753],[1.824,4.834],[0.518,5.572],[5.261,8.475],[4.032,9.171],[9.495,12.513],[9.441,6.109],[8.214,6.805],[8.167,1.244],[6.861,1.983],[6.796,-5.836],[4.775,-4.693],[4.71,-12.514]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.090000002992,0.788000009574,0.008000000785,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[282.776,300.475],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 17","np":4,"cix":2,"ix":17,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-3.833,11.759],[4.551,-8.924],[-2.442,-11.759],[-1.566,-4.58],[-3.555,-5.387],[-2.679,1.79],[-3.965,1.269],[-3.342,6.372],[-4.551,5.882]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.141000007181,0.670999983245,0.081999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[176.517,311.743],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 18","np":4,"cix":2,"ix":18,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-5.939,-11.759],[-5.064,-4.58],[-7.053,-5.387],[-6.176,1.79],[-7.462,1.268],[-6.839,6.372],[-8.048,5.882],[-7.331,11.759],[-2.723,8.04],[-3.932,7.55],[0.069,4.321],[-1.217,3.8],[4.41,-0.74],[2.419,-1.547],[8.048,-6.089]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.090000002992,0.788000009574,0.008000000785,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[180.014,311.743],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 19","np":4,"cix":2,"ix":19,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-6.057,14.554],[6.378,-10.349],[-2.042,-14.554],[-1.65,-5.543],[-4.045,-6.739],[-3.653,2.269],[-5.202,1.496],[-4.922,7.903],[-6.378,7.176]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.141000007181,0.670999983245,0.081999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[166.017,309.236],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 20","np":4,"cix":2,"ix":20,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-6.252,-14.554],[-5.859,-5.542],[-8.255,-6.739],[-7.863,2.269],[-9.411,1.497],[-9.132,7.903],[-10.589,7.176],[-10.268,14.554],[-4.176,10.378],[-5.632,9.651],[-0.343,6.025],[-1.891,5.252],[5.545,0.153],[3.15,-1.043],[10.589,-6.145]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.090000002992,0.788000009574,0.008000000785,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[170.228,309.236],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 21","np":4,"cix":2,"ix":21,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[13.814,8.682],[-7.943,-8.681],[-13.814,-1.325],[-4.918,0.174],[-6.589,2.267],[2.302,3.765],[1.223,5.118],[7.546,6.183],[6.531,7.454]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.141000007181,0.670999983245,0.081999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[311.184,278.988],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 22","np":4,"cix":2,"ix":22,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-13.814,2.353],[-4.918,3.852],[-6.589,5.945],[2.302,7.443],[1.223,8.795],[7.546,9.861],[6.531,11.132],[13.814,12.36],[11.001,5.531],[9.987,6.802],[7.545,0.873],[6.465,2.226],[3.033,-6.112],[1.363,-4.019],[-2.072,-12.36]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.090000002992,0.788000009574,0.008000000785,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[311.184,275.31],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 23","np":4,"cix":2,"ix":23,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-13.418,-9.441],[7.033,9.442],[13.418,2.527],[4.654,0.392],[6.47,-1.575],[-2.29,-3.709],[-1.116,-4.981],[-7.347,-6.498],[-6.243,-7.693]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.141000007181,0.670999983245,0.081999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[129.631,128.631],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 24","np":4,"cix":2,"ix":24,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[13.418,-0.931],[4.654,-3.066],[6.47,-5.033],[-2.29,-7.166],[-1.116,-8.438],[-7.347,-9.955],[-6.243,-11.151],[-13.418,-12.899],[-11.104,-5.885],[-10,-7.081],[-7.992,-0.991],[-6.818,-2.263],[-3.994,6.3],[-2.177,4.333],[0.648,12.899]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.090000002992,0.788000009574,0.008000000785,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[129.631,132.088],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 25","np":4,"cix":2,"ix":25,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-18.781,-14.691],[8.846,14.691],[18.781,5.35],[6.333,1.368],[9.16,-1.289],[-3.285,-5.269],[-1.458,-6.986],[-10.307,-9.816],[-8.59,-11.432]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.141000007181,0.670999983245,0.081999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[140.776,111.29],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 26","np":4,"cix":2,"ix":26,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[18.782,0.678],[6.333,-3.303],[9.16,-5.96],[-3.285,-9.939],[-1.458,-11.658],[-10.307,-14.488],[-8.589,-16.102],[-18.781,-19.363],[-16.156,-8.989],[-14.438,-10.605],[-12.156,-1.597],[-10.329,-3.314],[-7.124,9.35],[-4.296,6.692],[-1.089,19.363]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.090000002992,0.788000009574,0.008000000785,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[140.776,115.962],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 27","np":4,"cix":2,"ix":27,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-1.473,2.159],[0.281,-0.053],[2.266,3.786],[-0.345,-1.85],[-4.577,0.852]],"o":[[-0.274,0.065],[-5.764,1.072],[-1.427,1.317],[0.574,3.086],[3.234,-0.602]],"v":[[7.973,-0.129],[7.141,0.051],[-6.302,-4.736],[-7.866,0.217],[-0.062,4.545]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.470999983245,0.689999988032,0.081999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[339.28,193.918],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 28","np":4,"cix":2,"ix":28,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[4.577,-0.853],[0.575,3.086],[-4.578,0.852],[-0.574,-3.086]],"o":[[-4.577,0.852],[-0.575,-3.086],[4.577,-0.852],[0.576,3.085]],"v":[[-0.484,5.587],[-8.288,1.259],[-2.564,-5.587],[8.288,-1.827]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.54900004069,0.8,0.097999999102,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[339.702,192.875],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 29","np":4,"cix":2,"ix":29,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-3.663,1.391],[-3.919,0.021],[3.664,-1.391],[3.919,-0.02]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.54900004069,0.344999994016,0.246999987434,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[331.293,194.007],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 30","np":4,"cix":2,"ix":30,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[2.207,1.606],[-0.046,-0.295],[4.024,-2.245],[-1.942,0.301],[0.744,4.805]],"o":[[0.06,0.288],[0.937,6.051],[1.33,1.531],[3.239,-0.502],[-0.526,-3.395]],"v":[[0.249,-8.311],[0.41,-7.437],[-5.014,6.443],[0.106,8.233],[4.872,0.225]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.470999983245,0.689999988032,0.081999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[215.704,83.975],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 31","np":4,"cix":2,"ix":31,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.744,-4.805],[3.24,-0.502],[0.743,4.805],[-3.24,0.501]],"o":[[0.744,4.805],[-3.238,0.501],[-0.745,-4.805],[3.239,-0.502]],"v":[[5.865,0.693],[1.099,8.701],[-5.864,2.509],[-1.594,-8.7]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.54900004069,0.8,0.097999999102,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[214.711,83.507],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 32","np":4,"cix":2,"ix":32,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[1.336,3.868],[-0.103,4.092],[-1.336,-3.869],[0.104,-4.092]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.54900004069,0.344999994016,0.246999987434,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[215.673,92.329],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 33","np":4,"cix":2,"ix":33,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[2.26,3.274],[0.08,-0.428],[6.617,-1.146],[-2.815,-0.524],[-1.296,6.967]],"o":[[-0.058,0.425],[-1.632,8.773],[1.089,2.748],[4.697,0.873],[0.915,-4.923]],"v":[[5.882,-11.423],[5.681,-10.143],[-8.476,6.328],[-2.299,11.261],[8.12,2.547]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.470999983245,0.689999988032,0.081999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[232.538,81.807],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 34","np":4,"cix":2,"ix":34,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[1.296,-6.967],[4.696,0.874],[-1.295,6.967],[-4.696,-0.873]],"o":[[-1.296,6.967],[-4.696,-0.873],[1.296,-6.967],[4.697,0.873]],"v":[[8.504,3.902],[-1.915,12.615],[-8.505,0.739],[2.777,-12.616]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.54900004069,0.8,0.097999999102,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[232.155,80.452],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 35","np":4,"cix":2,"ix":35,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.029,5.965],[-2.117,5.578],[0.03,-5.965],[2.117,-5.576]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.54900004069,0.344999994016,0.246999987434,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[229.993,93.169],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 36","np":4,"cix":2,"ix":36,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.029,-3.263],[-0.256,0.25],[-4.982,-2.353],[1.642,1.679],[4.158,-4.063]],"o":[[0.239,-0.259],[5.235,-5.117],[0.565,-2.357],[-2.739,-2.803],[-2.938,2.872]],"v":[[-9.1,6.738],[-8.361,5.974],[8.912,1.602],[7.094,-4.622],[-4.009,-3.693]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.470999983245,0.689999988032,0.081999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[137.579,291.88],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 37","np":4,"cix":2,"ix":37,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-4.157,4.064],[-2.739,-2.802],[4.158,-4.063],[2.739,2.803]],"o":[[4.158,-4.063],[2.739,2.802],[-4.157,4.065],[-2.739,-2.803]],"v":[[-3.693,-6.263],[7.41,-7.193],[6.227,3.885],[-7.646,7.523]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.54900004069,0.8,0.097999999102,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[137.264,294.45],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 38","np":4,"cix":2,"ix":38,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[2.835,-3.989],[4.053,-2.743],[-2.834,3.989],[-4.052,2.743]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.54900004069,0.344999994016,0.246999987434,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[144.887,287.306],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 39","np":4,"cix":2,"ix":39,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[2.32,-1.556],[-0.3,-0.06],[-0.744,-4.659],[-0.394,1.972],[4.881,0.974]],"o":[[0.298,0.044],[6.146,1.228],[1.939,-0.741],[0.657,-3.29],[-3.449,-0.689]],"v":[[-7.992,-4.259],[-7.095,-4.106],[4.341,5.99],[7.862,1.697],[1.84,-5.7]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.470999983245,0.689999988032,0.081999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[109.648,153.918],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 40","np":4,"cix":2,"ix":40,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-4.881,-0.975],[0.657,-3.29],[4.88,0.974],[-0.657,3.29]],"o":[[4.881,0.975],[-0.657,3.291],[-4.881,-0.975],[0.657,-3.29]],"v":[[2.816,-5.957],[8.838,1.44],[0.437,5.958],[-8.837,-2.089]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.54900004069,0.8,0.097999999102,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[108.672,154.174],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 41","np":4,"cix":2,"ix":41,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[4.189,0.076],[3.896,1.538],[-4.189,-0.076],[-3.897,-1.538]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.54900004069,0.344999994016,0.246999987434,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[117.579,155.789],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 42","np":4,"cix":2,"ix":42,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[1.785,-1.197],[-0.231,-0.046],[-0.572,-3.583],[-0.303,1.517],[3.755,0.75]],"o":[[0.229,0.034],[4.728,0.945],[1.492,-0.57],[0.506,-2.531],[-2.652,-0.53]],"v":[[-6.148,-3.276],[-5.458,-3.159],[3.339,4.607],[6.047,1.305],[1.414,-4.385]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.470999983245,0.689999988032,0.081999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[111.808,163.788],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 43","np":4,"cix":2,"ix":43,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-3.754,-0.75],[0.505,-2.53],[3.754,0.75],[-0.506,2.531]],"o":[[3.755,0.75],[-0.506,2.531],[-3.754,-0.75],[0.505,-2.531]],"v":[[2.166,-4.583],[6.799,1.107],[0.336,4.583],[-6.798,-1.607]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.54900004069,0.8,0.097999999102,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[111.057,163.985],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 44","np":4,"cix":2,"ix":44,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[3.222,0.058],[2.997,1.183],[-3.222,-0.059],[-2.998,-1.184]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.54900004069,0.344999994016,0.246999987434,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[117.908,165.227],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 45","np":4,"cix":2,"ix":45,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.864,-2.582],[-0.134,0.267],[-4.569,-0.504],[1.752,0.88],[2.176,-4.335]],"o":[[0.118,-0.269],[2.74,-5.46],[-0.195,-2.014],[-2.922,-1.467],[-1.537,3.063]],"v":[[-6.198,7.009],[-5.823,6.206],[6.617,-1.934],[3.492,-6.352],[-5.015,-2.602]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.470999983245,0.689999988032,0.081999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[152.53,299.31],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 46","np":4,"cix":2,"ix":46,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-2.176,4.335],[-2.923,-1.467],[2.176,-4.335],[2.922,1.467]],"o":[[2.176,-4.335],[2.922,1.467],[-2.176,4.335],[-2.922,-1.468]],"v":[[-5.231,-4.1],[3.275,-7.85],[5.352,1.212],[-4.605,7.85]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.54900004069,0.8,0.097999999102,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[152.747,300.807],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 47","np":4,"cix":2,"ix":47,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[1.153,-3.917],[2.452,-3.265],[-1.153,3.917],[-2.452,3.266]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.54900004069,0.344999994016,0.246999987434,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[156.204,292.938],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 48","np":4,"cix":2,"ix":48,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-4.045,-0.438],[0.278,0.348],[-3.536,5.89],[2.287,-1.83],[-4.529,-5.659]],"o":[[-0.291,-0.328],[-5.703,-7.127],[-2.856,-0.993],[-3.814,3.053],[3.201,4]],"v":[[7.674,11.722],[6.817,10.711],[3.526,-11.258],[-4.423,-9.771],[-4.639,4.118]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.470999983245,0.689999988032,0.081999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[301.735,296.291],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 49","np":4,"cix":2,"ix":49,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[4.528,5.659],[-3.815,3.053],[-4.529,-5.659],[3.816,-3.052]],"o":[[-4.529,-5.659],[3.815,-3.052],[4.529,5.659],[-3.814,3.053]],"v":[[-7.951,3.642],[-7.735,-10.248],[5.864,-7.413],[8.664,10.247]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.54900004069,0.8,0.097999999102,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[305.048,296.768],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 50","np":4,"cix":2,"ix":50,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-4.599,-4.01],[-2.904,-5.366],[4.599,4.009],[2.903,5.366]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.54900004069,0.344999994016,0.246999987434,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[297.4,286.261],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 51","np":4,"cix":2,"ix":51,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[5.372,-7.247],[4.985,3.736],[-5.373,7.247],[-4.986,-3.735]],"o":[[-5.372,7.246],[-4.985,-3.734],[5.372,-7.246],[4.986,3.735]],"v":[[9.027,6.762],[-9.728,13.12],[-9.028,-6.762],[9.727,-13.121]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.375999989229,0.702000038297,0.195999998205,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[321.291,233.272],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 52","np":4,"cix":2,"ix":52,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[1.181,-8.96],[6.164,0.821],[-1.18,8.96],[-6.165,-0.821]],"o":[[-1.18,8.959],[-6.164,-0.82],[1.18,-8.959],[6.164,0.82]],"v":[[11.16,1.486],[-2.138,16.222],[-11.162,-1.486],[2.137,-16.222]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.375999989229,0.702000038297,0.195999998205,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[323.532,212.715],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 53","np":4,"cix":2,"ix":53,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[7.648,-4.751],[3.269,5.316],[-7.648,4.751],[-3.269,-5.318]],"o":[[-7.648,4.751],[-3.268,-5.318],[7.649,-4.751],[3.268,5.316]],"v":[[5.918,9.627],[-13.849,8.603],[-5.919,-9.627],[13.848,-8.602]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.375999989229,0.702000038297,0.195999998205,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[312.889,252.882],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 54","np":4,"cix":2,"ix":54,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[1.176,0.066],[-0.063,1.147],[0,0]],"o":[[0,0],[-0.062,1.149],[-1.175,-0.064],[0,0],[0,0]],"v":[[2.284,-3.182],[2.035,1.389],[-0.206,3.35],[-2.221,1.156],[-1.971,-3.417]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.760999971278,0.4,0.136999990426,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[209.543,357.135],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 55","np":4,"cix":2,"ix":55,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-17.278,-1.892],[17.382,0.013],[17.28,1.892],[-17.382,-0.013]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.760999971278,0.4,0.136999990426,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[210.392,341.086],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 56","np":4,"cix":2,"ix":56,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-17.278,-1.892],[17.382,0.014],[17.28,1.893],[-17.382,-0.012]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.760999971278,0.4,0.136999990426,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[211.327,323.889],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 57","np":4,"cix":2,"ix":57,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[1.641,0.091],[-0.087,1.601],[0,0]],"o":[[0,0],[-0.088,1.601],[-1.64,-0.09],[0,0],[0,0]],"v":[[3.187,-4.442],[2.84,1.941],[-0.288,4.677],[-3.1,1.615],[-2.752,-4.768]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.588000009574,0.310000011968,0.105999995213,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[201.052,331.91],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 58","np":4,"cix":2,"ix":58,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[1.64,0.09],[-0.087,1.601],[0,0]],"o":[[0,0],[-0.087,1.601],[-1.64,-0.091],[0,0],[0,0]],"v":[[3.187,-4.442],[2.839,1.941],[-0.288,4.678],[-3.1,1.615],[-2.753,-4.768]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.588000009574,0.310000011968,0.105999995213,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[210.896,332.451],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 59","np":4,"cix":2,"ix":59,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[1.641,0.09],[-0.088,1.601],[0,0]],"o":[[0,0],[-0.087,1.601],[-1.64,-0.091],[0,0],[0,0]],"v":[[3.188,-4.441],[2.839,1.941],[-0.289,4.678],[-3.1,1.615],[-2.753,-4.768]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.588000009574,0.310000011968,0.105999995213,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[220.738,332.992],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 60","np":4,"cix":2,"ix":60,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-16.199,-21.743],[18.461,-19.838],[16.199,21.743],[-18.461,19.838]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.877999997606,0.532999973671,0.141000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[211.274,324.872],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 61","np":4,"cix":2,"ix":61,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.637,0.035],[-0.034,0.622],[0,0]],"o":[[0,0],[-0.034,0.622],[-0.637,-0.035],[0,0],[0,0]],"v":[[1.238,-1.725],[1.102,0.754],[-0.112,1.816],[-1.204,0.627],[-1.069,-1.851]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.760999971278,0.4,0.136999990426,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[190.908,320.988],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 62","np":4,"cix":2,"ix":62,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.637,0.035],[-0.034,0.622],[0,0]],"o":[[0,0],[-0.033,0.622],[-0.637,-0.035],[0,0],[0,0]],"v":[[1.238,-1.724],[1.102,0.754],[-0.112,1.816],[-1.204,0.627],[-1.069,-1.851]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.760999971278,0.4,0.136999990426,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[185.605,320.696],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 63","np":4,"cix":2,"ix":63,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.638,0.035],[-0.034,0.622],[0,0]],"o":[[0,0],[-0.034,0.622],[-0.636,-0.035],[0,0],[0,0]],"v":[[1.238,-1.725],[1.102,0.754],[-0.113,1.816],[-1.204,0.628],[-1.069,-1.852]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.760999971278,0.4,0.136999990426,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[180.302,320.405],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 64","np":4,"cix":2,"ix":64,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.637,0.035],[-0.034,0.622],[0,0]],"o":[[0,0],[-0.034,0.622],[-0.637,-0.034],[0,0],[0,0]],"v":[[1.238,-1.724],[1.102,0.754],[-0.112,1.816],[-1.204,0.627],[-1.069,-1.851]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.760999971278,0.4,0.136999990426,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[175,320.113],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 65","np":4,"cix":2,"ix":65,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[1.579,-2.785],[-1.269,-2.941],[-1.58,2.783],[1.267,2.94]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.642999985639,0.238999998803,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[192.604,326.537],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 66","np":4,"cix":2,"ix":66,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[1.58,-2.785],[-1.268,-2.941],[-1.579,2.784],[1.268,2.941]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.642999985639,0.238999998803,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[187.763,326.271],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 67","np":4,"cix":2,"ix":67,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[1.579,-2.784],[-1.269,-2.941],[-1.58,2.784],[1.267,2.941]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.642999985639,0.238999998803,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[182.922,326.004],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 68","np":4,"cix":2,"ix":68,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[1.579,-2.785],[-1.269,-2.941],[-1.58,2.783],[1.268,2.941]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.642999985639,0.238999998803,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[178.08,325.738],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 69","np":4,"cix":2,"ix":69,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[1.58,-2.784],[-1.268,-2.941],[-1.58,2.784],[1.268,2.941]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.642999985639,0.238999998803,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[173.239,325.472],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 70","np":4,"cix":2,"ix":70,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[15.477,-10.777],[-14.215,-12.41],[-15.477,10.778],[14.214,12.41]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.642999985639,0.238999998803,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[187.307,314.33],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 71","np":4,"cix":2,"ix":71,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.637,-0.035],[-0.033,0.623],[0,0]],"o":[[0,0],[-0.034,0.622],[0.637,0.035],[0,0],[0,0]],"v":[[-1.068,-1.851],[-1.204,0.627],[-0.112,1.816],[1.102,0.753],[1.238,-1.724]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.760999971278,0.4,0.136999990426,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[231.967,323.245],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 72","np":4,"cix":2,"ix":72,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.638,-0.035],[-0.034,0.623],[0,0]],"o":[[0,0],[-0.034,0.622],[0.637,0.035],[0,0],[0,0]],"v":[[-1.068,-1.852],[-1.204,0.628],[-0.112,1.816],[1.102,0.753],[1.238,-1.724]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.760999971278,0.4,0.136999990426,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[237.27,323.536],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 73","np":4,"cix":2,"ix":73,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.637,-0.034],[-0.034,0.623],[0,0]],"o":[[0,0],[-0.033,0.622],[0.637,0.035],[0,0],[0,0]],"v":[[-1.069,-1.851],[-1.204,0.627],[-0.113,1.816],[1.103,0.753],[1.238,-1.724]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.760999971278,0.4,0.136999990426,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[242.572,323.828],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 74","np":4,"cix":2,"ix":74,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.637,-0.035],[-0.034,0.623],[0,0]],"o":[[0,0],[-0.033,0.622],[0.637,0.035],[0,0],[0,0]],"v":[[-1.069,-1.851],[-1.204,0.627],[-0.113,1.816],[1.103,0.753],[1.238,-1.725]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.760999971278,0.4,0.136999990426,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[247.875,324.12],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 75","np":4,"cix":2,"ix":75,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-1.268,-2.941],[1.58,-2.784],[1.268,2.941],[-1.58,2.785]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.642999985639,0.238999998803,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[229.653,328.573],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 76","np":4,"cix":2,"ix":76,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-1.268,-2.941],[1.58,-2.785],[1.268,2.941],[-1.58,2.784]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.642999985639,0.238999998803,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[234.494,328.84],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 77","np":4,"cix":2,"ix":77,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-1.268,-2.941],[1.58,-2.784],[1.268,2.941],[-1.58,2.785]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.642999985639,0.238999998803,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[239.335,329.105],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 78","np":4,"cix":2,"ix":78,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-1.268,-2.941],[1.58,-2.785],[1.268,2.941],[-1.58,2.784]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.642999985639,0.238999998803,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[244.176,329.372],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 79","np":4,"cix":2,"ix":79,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-1.268,-2.941],[1.58,-2.784],[1.268,2.941],[-1.58,2.785]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.642999985639,0.238999998803,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[249.018,329.638],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 80","np":4,"cix":2,"ix":80,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-14.214,-12.41],[15.477,-10.777],[14.215,12.41],[-15.477,10.777]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.642999985639,0.238999998803,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[236.242,317.02],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 81","np":4,"cix":2,"ix":81,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-2.223,-3.981],[2.643,-3.713],[2.225,3.981],[-2.643,3.713]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.877999997606,0.532999973671,0.141000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[195.246,344.844],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 82","np":4,"cix":2,"ix":82,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-2.224,-3.982],[2.643,-3.714],[2.224,3.982],[-2.643,3.714]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.877999997606,0.532999973671,0.141000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[202.695,345.253],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 83","np":4,"cix":2,"ix":83,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-2.223,-3.982],[2.643,-3.712],[2.225,3.982],[-2.643,3.714]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.877999997606,0.532999973671,0.141000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[210.143,345.663],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 84","np":4,"cix":2,"ix":84,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-2.224,-3.981],[2.643,-3.713],[2.224,3.981],[-2.643,3.713]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.877999997606,0.532999973671,0.141000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[217.592,346.072],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 85","np":4,"cix":2,"ix":85,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-2.223,-3.981],[2.643,-3.713],[2.223,3.982],[-2.643,3.714]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.877999997606,0.532999973671,0.141000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[225.04,346.482],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 86","np":4,"cix":2,"ix":86,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-0.518,4.388],[-14.252,-7.465],[-14.42,-4.386],[-0.685,7.465],[14.253,-2.81],[14.42,-5.888]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.760999971278,0.4,0.136999990426,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[209.559,361.528],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 87","np":4,"cix":2,"ix":87,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-0.979,14.031],[10.549,6.1],[11.579,-12.815],[0.515,-13.423],[-10.549,-14.031],[-11.579,4.885]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.642999985639,0.238999998803,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[210.003,352.197],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 88","np":4,"cix":2,"ix":88,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-0.418,3.544],[-11.511,-6.029],[-11.647,-3.544],[-0.553,6.029],[11.513,-2.27],[11.647,-4.756]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.877999997606,0.532999973671,0.141000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[209.355,364.277],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 89","np":4,"cix":2,"ix":89,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-0.394,3.329],[-10.817,-5.665],[-10.944,-3.33],[-0.521,5.665],[10.816,-2.134],[10.944,-4.469]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.760999971278,0.4,0.136999990426,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[209.257,365.852],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 90","np":4,"cix":2,"ix":90,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.722,0.457],[0.441,0.705],[0,0]],"o":[[0,0],[0.442,0.704],[0.722,-0.457],[0,0],[0,0]],"v":[[-2.622,-1.371],[-0.433,2.122],[1.674,2.57],[2.181,0.466],[-0.01,-3.027]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.356999984442,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[293.365,335.847],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 91","np":4,"cix":2,"ix":91,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.722,0.457],[0.441,0.705],[0,0]],"o":[[0,0],[0.442,0.704],[0.722,-0.457],[0,0],[0,0]],"v":[[-2.622,-1.371],[-0.433,2.122],[1.674,2.57],[2.181,0.466],[-0.01,-3.027]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.356999984442,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[297.604,333.161],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 92","np":4,"cix":2,"ix":92,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.722,0.457],[0.441,0.705],[0,0]],"o":[[0,0],[0.442,0.704],[0.722,-0.458],[0,0],[0,0]],"v":[[-2.622,-1.371],[-0.433,2.122],[1.674,2.57],[2.181,0.466],[-0.009,-3.027]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.356999984442,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[301.843,330.476],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 93","np":4,"cix":2,"ix":93,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.722,0.457],[0.442,0.705],[0,0]],"o":[[0,0],[0.442,0.704],[0.722,-0.458],[0,0],[0,0]],"v":[[-2.623,-1.371],[-0.433,2.122],[1.674,2.57],[2.181,0.466],[-0.01,-3.027]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.356999984442,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[306.083,327.79],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 94","np":4,"cix":2,"ix":94,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.722,0.457],[0.442,0.705],[0,0]],"o":[[0,0],[0.442,0.704],[0.722,-0.458],[0,0],[0,0]],"v":[[-2.623,-1.371],[-0.433,2.122],[1.674,2.57],[2.181,0.466],[-0.009,-3.027]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.356999984442,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[310.322,325.105],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 95","np":4,"cix":2,"ix":95,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-12.56,5.379],[9.664,-8.7],[12.56,-7.09],[-12.365,8.7]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.477999997606,0.250999989229,0.122000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[299.853,326.553],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 96","np":4,"cix":2,"ix":96,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-3.406,-2.865],[-1.101,-4.324],[3.406,2.865],[1.101,4.325]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.477999997606,0.250999989229,0.122000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[289.759,319.834],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 97","np":4,"cix":2,"ix":97,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-3.406,-2.865],[-1.101,-4.324],[3.406,2.865],[1.101,4.324]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.477999997606,0.250999989229,0.122000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[297.596,314.869],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 98","np":4,"cix":2,"ix":98,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[3.457,6.447],[4.294,5.917],[-3.457,-6.447],[-4.294,-5.915]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.356999984442,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[285.166,322.52],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 99","np":4,"cix":2,"ix":99,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[3.457,6.447],[4.294,5.917],[-3.457,-6.447],[-4.294,-5.915]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.356999984442,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[287.096,321.297],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 100","np":4,"cix":2,"ix":100,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-2.137,1.884],[2.613,-1.126],[2.138,-1.884],[-2.613,1.126]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.356999984442,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[290.75,329.277],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 101","np":4,"cix":2,"ix":101,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-2.343,0.919],[1.838,-1.728],[2.344,-0.921],[-1.836,1.728]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.477999997606,0.250999989229,0.122000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[290.259,328.495],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 102","np":4,"cix":2,"ix":102,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-2.823,-0.197],[1.041,-2.645],[2.823,0.197],[-1.042,2.645]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.477999997606,0.250999989229,0.122000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[281.365,314.307],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 103","np":4,"cix":2,"ix":103,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[3.457,6.446],[4.294,5.917],[-3.457,-6.447],[-4.294,-5.916]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.356999984442,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[292.612,317.802],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 104","np":4,"cix":2,"ix":104,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[3.457,6.446],[4.294,5.916],[-3.457,-6.446],[-4.294,-5.916]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.356999984442,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[294.542,316.58],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 105","np":4,"cix":2,"ix":105,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-2.138,1.884],[2.613,-1.126],[2.138,-1.884],[-2.613,1.126]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.356999984442,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[298.197,324.559],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 106","np":4,"cix":2,"ix":106,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-2.344,0.92],[1.837,-1.728],[2.343,-0.921],[-1.837,1.728]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.477999997606,0.250999989229,0.122000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[297.706,323.777],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 107","np":4,"cix":2,"ix":107,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-2.823,-0.197],[1.042,-2.645],[2.823,0.196],[-1.042,2.645]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.477999997606,0.250999989229,0.122000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[288.811,309.59],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 108","np":4,"cix":2,"ix":108,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[3.457,6.446],[4.293,5.917],[-3.457,-6.447],[-4.293,-5.916]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.356999984442,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[300.059,313.085],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 109","np":4,"cix":2,"ix":109,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[3.457,6.447],[4.293,5.917],[-3.457,-6.447],[-4.293,-5.915]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.356999984442,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[301.989,311.862],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 110","np":4,"cix":2,"ix":110,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-2.137,1.884],[2.613,-1.126],[2.138,-1.884],[-2.613,1.126]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.356999984442,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[305.643,319.842],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 111","np":4,"cix":2,"ix":111,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-2.344,0.919],[1.837,-1.728],[2.343,-0.921],[-1.837,1.729]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.477999997606,0.250999989229,0.122000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[305.152,319.059],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 112","np":4,"cix":2,"ix":112,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-2.823,-0.196],[1.042,-2.645],[2.823,0.197],[-1.042,2.645]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.477999997606,0.250999989229,0.122000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[296.258,304.872],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 113","np":4,"cix":2,"ix":113,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.272,0.435],[-0.433,0.274],[0,0],[-0.273,-0.435],[0.431,-0.274],[0,0]],"o":[[-0.272,-0.435],[0,0],[0.433,-0.275],[0.272,0.434],[0,0],[-0.432,0.274]],"v":[[-10.149,6.43],[-9.859,5.147],[8.872,-6.719],[10.149,-6.428],[9.86,-5.146],[-8.873,6.72]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.356999984442,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[309.021,341.823],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 114","np":4,"cix":2,"ix":114,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.272,0.435],[-0.433,0.273],[0,0],[-0.273,-0.435],[0.431,-0.274],[0,0]],"o":[[-0.272,-0.435],[0,0],[0.432,-0.274],[0.272,0.434],[0,0],[-0.432,0.273]],"v":[[-11.794,7.472],[-11.505,6.19],[10.518,-7.762],[11.794,-7.471],[11.505,-6.189],[-10.519,7.763]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.356999984442,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[287.427,307.382],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 115","np":4,"cix":2,"ix":115,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-1.347,0.854],[0.824,1.316],[0,0]],"o":[[0,0],[0.826,1.316],[1.348,-0.853],[0,0],[0,0]],"v":[[-4.219,-1.482],[-1.483,2.882],[2.449,3.719],[3.396,-0.208],[0.66,-4.573]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.356999984442,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[273.306,300.204],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 116","np":4,"cix":2,"ix":116,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-1.348,0.854],[0.825,1.317],[0,0]],"o":[[0,0],[0.825,1.316],[1.347,-0.853],[0,0],[0,0]],"v":[[-4.22,-1.482],[-1.484,2.882],[2.449,3.719],[3.394,-0.209],[0.658,-4.573]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.356999984442,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[280.108,295.896],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 117","np":4,"cix":2,"ix":117,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-1.347,0.854],[0.824,1.317],[0,0]],"o":[[0,0],[0.826,1.316],[1.348,-0.853],[0,0],[0,0]],"v":[[-4.219,-1.482],[-1.483,2.882],[2.449,3.719],[3.396,-0.209],[0.66,-4.573]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.356999984442,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[286.909,291.587],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 118","np":4,"cix":2,"ix":118,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-6.616,9.517],[11.396,-1.893],[6.616,-9.517],[-11.396,1.893]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.638999968884,0.430999995213,0.246999987434,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[306.833,338.333],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 119","np":4,"cix":2,"ix":119,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-13.298,3.002],[8.431,-10.764],[13.298,-3.003],[-8.432,10.764]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.702000038297,0.510000011968,0.337000020345,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[302.01,330.642],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 120","np":4,"cix":2,"ix":120,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-16.378,-1.911],[5.352,-15.677],[16.379,1.911],[-5.352,15.678]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.702000038297,0.510000011968,0.337000020345,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[292.941,316.177],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 121","np":4,"cix":2,"ix":121,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-15.818,-0.149],[6.69,-14.409],[15.817,0.149],[-6.691,14.409]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.702000038297,0.510000011968,0.337000020345,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[282.95,300.241],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 122","np":4,"cix":2,"ix":122,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-2.942,1.863],[1.801,2.873],[0,0]],"o":[[0,0],[1.8,2.872],[2.942,-1.865],[0,0],[0,0]],"v":[[-7.277,-0.146],[-5.177,3.205],[3.41,5.032],[5.477,-3.544],[3.375,-6.895]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.702000038297,0.510000011968,0.337000020345,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[310.038,343.854],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 123","np":4,"cix":2,"ix":123,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-4.478,2.836],[2.741,4.372],[0,0]],"o":[[0,0],[2.741,4.372],[4.476,-2.836],[0,0],[0,0]],"v":[[-11.074,-0.221],[-7.879,4.876],[5.191,7.656],[8.333,-5.395],[5.137,-10.492]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.477999997606,0.250999989229,0.122000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[310.924,345.482],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 124","np":4,"cix":2,"ix":124,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-4.196,0.047],[1.853,-3.785],[4.197,-0.047],[-1.853,3.785]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.702000038297,0.510000011968,0.337000020345,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[315.836,352.693],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 125","np":4,"cix":2,"ix":125,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-1.28,0.81],[0.784,1.251],[0,0]],"o":[[0,0],[0.784,1.251],[1.282,-0.812],[0,0],[0,0]],"v":[[-3.168,-0.063],[-2.254,1.395],[1.484,2.191],[2.384,-1.543],[1.47,-3.001]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.356999984442,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[316.958,354.662],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 126","np":4,"cix":2,"ix":126,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.021,0.658],[0.533,-0.017],[-0.02,-0.659],[-0.533,0.017]],"o":[[-0.021,-0.657],[-0.534,0.016],[0.021,0.658],[0.533,-0.017]],"v":[[0.966,-0.031],[-0.038,-1.191],[-0.966,0.031],[0.036,1.191]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.702000038297,0.510000011968,0.337000020345,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[319.313,360.217],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 127","np":4,"cix":2,"ix":127,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.732,0.381],[-0.308,0.599],[-0.732,-0.381],[0.308,-0.6]],"o":[[-0.732,-0.381],[0.31,-0.6],[0.733,0.381],[-0.309,0.6]],"v":[[-0.559,1.086],[-1.327,-0.69],[0.56,-1.087],[1.327,0.69]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.702000038297,0.510000011968,0.337000020345,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[321.627,358.875],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 128","np":4,"cix":2,"ix":128,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.339,0.216],[-0.214,-0.341],[0,0],[0.339,-0.214],[0.214,0.341]],"o":[[-0.215,-0.341],[0.339,-0.215],[0,0],[0.213,0.341],[-0.34,0.215],[0,0]],"v":[[-1.634,-1.238],[-1.408,-2.247],[-0.406,-2.018],[1.637,1.24],[1.409,2.246],[0.406,2.018]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.702000038297,0.510000011968,0.337000020345,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[319.795,358.93],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 129","np":4,"cix":2,"ix":129,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-6.069,4.668],[3.245,-6.955],[6.069,-4.669],[-3.246,6.955]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.102000000898,0.39199999641,0.451000019148,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[350.065,306.346],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 130","np":4,"cix":2,"ix":130,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-8.401,-6.124],[-7.742,-6.947],[8.401,6.125],[7.742,6.947]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.128999986836,0.486000001197,0.560999971278,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[365.958,314.296],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 131","np":4,"cix":2,"ix":131,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-28.177,-21.734],[-27.124,-23.047],[28.177,21.733],[27.124,23.046]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.294000004787,0.564999988032,0.620000023935,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[338.879,290.608],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 132","np":4,"cix":2,"ix":132,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-1.558,1.943],[0,0],[2.022,1.638],[0,0]],"o":[[0,0],[1.557,-1.943],[0,0],[2.021,1.637]],"v":[[-7.211,14.216],[12.134,-9.924],[11.293,-16.407],[-13.691,14.77]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.102000000898,0.39199999641,0.451000019148,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[300.702,276.136],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 133","np":4,"cix":2,"ix":133,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-7.965,8.484],[6.551,-9.629],[7.966,-8.483],[-6.549,9.63]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.128999986836,0.486000001197,0.560999971278,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[306.679,285.872],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 134","np":4,"cix":2,"ix":134,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-7.966,8.483],[6.55,-9.629],[7.965,-8.483],[-6.55,9.629]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.128999986836,0.486000001197,0.560999971278,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[311.184,289.52],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 135","np":4,"cix":2,"ix":135,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-7.965,8.484],[6.551,-9.629],[7.966,-8.483],[-6.551,9.63]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.128999986836,0.486000001197,0.560999971278,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[315.689,293.168],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 136","np":4,"cix":2,"ix":136,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-7.966,8.484],[6.55,-9.629],[7.966,-8.483],[-6.55,9.63]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.128999986836,0.486000001197,0.560999971278,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[320.193,296.816],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 137","np":4,"cix":2,"ix":137,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-7.966,8.483],[6.55,-9.629],[7.966,-8.483],[-6.55,9.629]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.128999986836,0.486000001197,0.560999971278,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[324.698,300.464],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 138","np":4,"cix":2,"ix":138,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-7.759,8.224],[6.342,-9.371],[7.758,-8.224],[-6.343,9.37]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.128999986836,0.486000001197,0.560999971278,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[329.411,303.852],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 139","np":4,"cix":2,"ix":139,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-7.344,7.707],[5.927,-8.854],[7.344,-7.707],[-5.928,8.853]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.128999986836,0.486000001197,0.560999971278,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[334.33,306.982],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 140","np":4,"cix":2,"ix":140,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-6.462,6.608],[5.046,-7.753],[6.462,-6.607],[-5.047,7.754]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.128999986836,0.486000001197,0.560999971278,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[339.716,309.531],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 141","np":4,"cix":2,"ix":141,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-5.639,5.581],[4.223,-6.727],[5.639,-5.58],[-4.224,6.727]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.128999986836,0.486000001197,0.560999971278,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[345.044,312.152],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 142","np":4,"cix":2,"ix":142,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-4.388,4.02],[2.973,-5.166],[4.388,-4.019],[-2.974,5.166]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.128999986836,0.486000001197,0.560999971278,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[350.8,314.238],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 143","np":4,"cix":2,"ix":143,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-16.192,5.918],[0,0],[0,0]],"o":[[0,0],[0,0],[19.978,24.842]],"v":[[31.623,17.799],[-19.648,-23.718],[-31.622,-8.777]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.294000004787,0.564999988032,0.620000023935,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[328.395,297.61],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 144","np":4,"cix":2,"ix":144,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-19.335,8.236],[0,0],[0,0]],"o":[[0,0],[0,0],[21.613,28.38]],"v":[[36.026,18.967],[-20.992,-27.203],[-36.026,-8.443]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.128999986836,0.486000001197,0.560999971278,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[328.586,298.031],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 145","np":4,"cix":2,"ix":145,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-3.261,0.536],[-0.172,-3.318],[3.261,-0.537],[0.173,3.318]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.102000000898,0.39199999641,0.451000019148,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[359.816,310.907],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 146","np":4,"cix":2,"ix":146,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[-4.62,2.13],[4.62,-0.918],[4.133,-2.13]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.811999990426,0.435000011968,0.187999994615,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[49.677,258.559],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 147","np":4,"cix":2,"ix":147,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.73,-1.817],[-1.755,0.713],[0,0]],"o":[[0,0],[-1.755,0.713],[0.73,1.816],[0,0],[0,0]],"v":[[3.631,-5.132],[-3.688,-2.158],[-5.544,2.421],[-1.045,4.419],[6.274,1.446]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.322000002394,0.128999986836,0.105999995213,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[114.128,232.659],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 148","np":4,"cix":2,"ix":148,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[5.668,-6.721],[8.398,0.072],[-7.976,6.721],[-8.398,-1.008]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.8,0.216000007181,0.216000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[107.627,223.141],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 149","np":4,"cix":2,"ix":149,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[9.552,0.54],[6.822,-6.253],[-9.551,0.396],[-4.514,6.253]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.8,0.216000007181,0.216000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[115.071,244.064],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 150","np":4,"cix":2,"ix":150,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[5.253,-10.624],[11.12,3.975],[-5.253,10.624],[-11.12,-3.975]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.184000007779,0.184000007779,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[110.772,233.837],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 151","np":4,"cix":2,"ix":151,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.39,-0.97],[-0.389,-0.97],[0,0],[-0.39,-0.969],[-0.39,-0.97],[0,0],[0.634,1.577],[0,0],[0.634,1.577],[0,0]],"o":[[0.39,0.971],[0.391,0.97],[0,0],[0.39,0.971],[0.39,0.971],[0,0],[-0.633,-1.577],[0,0],[-0.634,-1.576],[0,0]],"v":[[-7.078,-15.726],[-6.952,-7.03],[-3.653,1.175],[-0.355,9.381],[5.563,15.725],[6.733,18.636],[7.614,14.892],[1.294,-0.833],[-5.027,-16.559],[-8.248,-18.636]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.2,0.322000002394,0.560999971278,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[104.392,236.736],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 152","np":4,"cix":2,"ix":152,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.529,-1.318],[-1.274,0.517],[0,0]],"o":[[0,0],[-1.274,0.518],[0.53,1.319],[0,0],[0,0]],"v":[[2.635,-3.725],[-2.678,-1.567],[-4.026,1.757],[-0.759,3.208],[4.555,1.049]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.322000002394,0.128999986836,0.105999995213,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[99.08,238.777],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 153","np":4,"cix":2,"ix":153,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[3.236,-5.234],[5.657,0.79],[-5.282,5.234],[-5.657,-1.622]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.8,0.216000007181,0.216000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[95.152,229.563],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 154","np":4,"cix":2,"ix":154,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[6.68,1.206],[4.259,-4.817],[-6.68,-0.375],[-2.213,4.818]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.8,0.216000007181,0.216000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[101.755,248.118],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 155","np":4,"cix":2,"ix":155,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[2.868,-8.695],[8.072,4.252],[-2.867,8.695],[-8.072,-4.252]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.184000007779,0.184000007779,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[97.942,239.048],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 156","np":4,"cix":2,"ix":156,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.346,-0.86],[-0.345,-0.86],[0,0],[-0.345,-0.861],[-0.346,-0.861],[0,0],[0.562,1.399],[0,0],[0.562,1.398],[0,0]],"o":[[0.346,0.86],[0.346,0.861],[0,0],[0.346,0.86],[0.346,0.86],[0,0],[-0.562,-1.398],[0,0],[-0.562,-1.399],[0,0]],"v":[[-6.277,-13.946],[-6.165,-6.234],[-3.239,1.042],[-0.315,8.32],[4.934,13.947],[5.972,16.527],[6.753,13.207],[1.147,-0.739],[-4.458,-14.685],[-7.315,-16.527]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.2,0.322000002394,0.560999971278,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[94.074,240.891],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 157","np":4,"cix":2,"ix":157,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.475,-1.184],[-1.143,0.464],[0,0]],"o":[[0,0],[-1.143,0.464],[0.476,1.183],[0,0],[0,0]],"v":[[2.365,-3.342],[-2.403,-1.406],[-3.612,1.577],[-0.681,2.878],[4.087,0.941]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.322000002394,0.128999986836,0.105999995213,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[89.263,242.744],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 158","np":4,"cix":2,"ix":158,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[2.903,-4.696],[5.076,0.709],[-4.74,4.696],[-5.076,-1.456]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.8,0.216000007181,0.216000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[85.74,234.477],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 159","np":4,"cix":2,"ix":159,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[5.994,1.081],[3.822,-4.323],[-5.993,-0.338],[-1.986,4.322]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.8,0.216000007181,0.216000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[91.663,251.126],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 160","np":4,"cix":2,"ix":160,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[2.573,-7.801],[7.242,3.816],[-2.573,7.802],[-7.242,-3.815]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.184000007779,0.184000007779,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[88.242,242.987],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 161","np":4,"cix":2,"ix":161,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.311,-0.772],[-0.31,-0.772],[0,0],[-0.31,-0.773],[-0.31,-0.772],[0,0],[0.504,1.255],[0,0],[0.504,1.255],[0,0]],"o":[[0.31,0.771],[0.31,0.772],[0,0],[0.31,0.772],[0.31,0.772],[0,0],[-0.504,-1.255],[0,0],[-0.504,-1.255],[0,0]],"v":[[-5.632,-12.514],[-5.531,-5.595],[-2.907,0.934],[-0.282,7.465],[4.427,12.512],[5.358,14.829],[6.059,11.849],[1.03,-0.663],[-4,-13.177],[-6.563,-14.83]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.2,0.322000002394,0.560999971278,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[84.772,244.642],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 162","np":4,"cix":2,"ix":162,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.414,-1.031],[-0.996,0.405],[0,0]],"o":[[0,0],[-0.996,0.405],[0.415,1.031],[0,0],[0,0]],"v":[[2.062,-2.914],[-2.094,-1.226],[-3.148,1.374],[-0.593,2.508],[3.562,0.82]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.322000002394,0.128999986836,0.105999995213,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[80.445,246.303],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 163","np":4,"cix":2,"ix":163,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[2.531,-4.093],[4.425,0.618],[-4.131,4.093],[-4.425,-1.269]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.8,0.216000007181,0.216000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[77.374,239.096],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 164","np":4,"cix":2,"ix":164,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[5.225,0.943],[3.331,-3.768],[-5.225,-0.293],[-1.73,3.768]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.8,0.216000007181,0.216000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[82.537,253.609],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 165","np":4,"cix":2,"ix":165,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[2.243,-6.801],[6.313,3.326],[-2.243,6.801],[-6.313,-3.326]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.184000007779,0.184000007779,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[79.555,246.515],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 166","np":4,"cix":2,"ix":166,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.271,-0.673],[-0.27,-0.673],[0,0],[-0.27,-0.673],[-0.27,-0.672],[0,0],[0.439,1.094],[0,0],[0.44,1.094],[0,0]],"o":[[0.271,0.673],[0.271,0.673],[0,0],[0.271,0.673],[0,0],[0,0],[-0.44,-1.093],[0,0],[-0.439,-1.094],[0,0]],"v":[[-4.909,-10.907],[-4.822,-4.876],[-2.534,0.817],[-0.246,6.508],[3.859,10.908],[4.671,12.927],[5.282,10.33],[0.898,-0.577],[-3.487,-11.485],[-5.721,-12.927]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.2,0.322000002394,0.560999971278,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[76.531,247.956],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 167","np":4,"cix":2,"ix":167,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.364,-0.905],[-0.874,0.355],[0,0]],"o":[[0,0],[-0.874,0.355],[0.363,0.905],[0,0],[0,0]],"v":[[1.809,-2.556],[-1.837,-1.075],[-2.762,1.206],[-0.52,2.201],[3.126,0.72]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.322000002394,0.128999986836,0.105999995213,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[72.684,249.436],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 168","np":4,"cix":2,"ix":168,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[2.22,-3.591],[3.882,0.543],[-3.625,3.591],[-3.882,-1.112]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.8,0.216000007181,0.216000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[69.99,243.114],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 169","np":4,"cix":2,"ix":169,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[4.584,0.827],[2.922,-3.307],[-4.584,-0.258],[-1.519,3.306]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.8,0.216000007181,0.216000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[74.52,255.847],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 170","np":4,"cix":2,"ix":170,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[1.968,-5.967],[5.539,2.917],[-1.969,5.967],[-5.538,-2.919]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.184000007779,0.184000007779,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[71.904,249.623],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 171","np":4,"cix":2,"ix":171,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.237,-0.59],[-0.237,-0.591],[0,0],[-0.237,-0.591],[-0.237,-0.591],[0,0],[0.386,0.96],[0,0],[0.386,0.96],[0,0]],"o":[[0.237,0.591],[0.237,0.591],[0,0],[0.238,0.591],[0.237,0.59],[0,0],[-0.386,-0.959],[0,0],[-0.386,-0.959],[0,0]],"v":[[-4.307,-9.57],[-4.23,-4.278],[-2.223,0.716],[-0.217,5.709],[3.385,9.57],[4.098,11.341],[4.633,9.063],[0.788,-0.507],[-3.06,-10.077],[-5.02,-11.341]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.2,0.322000002394,0.560999971278,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[69.25,250.888],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 172","np":4,"cix":2,"ix":172,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.331,-0.823],[-0.795,0.323],[0,0]],"o":[[0,0],[-0.796,0.323],[0.33,0.823],[0,0],[0,0]],"v":[[1.645,-2.325],[-1.671,-0.978],[-2.512,1.097],[-0.474,2.002],[2.843,0.655]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.322000002394,0.128999986836,0.105999995213,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[65.806,252.218],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 173","np":4,"cix":2,"ix":173,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[2.02,-3.266],[3.531,0.495],[-3.297,3.267],[-3.531,-1.011]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.8,0.216000007181,0.216000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[63.354,246.466],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 174","np":4,"cix":2,"ix":174,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[4.17,0.753],[2.658,-3.007],[-4.17,-0.234],[-1.381,3.008]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.8,0.216000007181,0.216000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[67.476,258.049],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 175","np":4,"cix":2,"ix":175,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[1.79,-5.427],[5.038,2.654],[-1.79,5.427],[-5.038,-2.655]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.184000007779,0.184000007779,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[65.096,252.387],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 176","np":4,"cix":2,"ix":176,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.216,-0.537],[0,0],[-0.216,-0.537],[-0.216,-0.537],[0,0],[0.351,0.872],[0,0],[0.35,0.873],[0,0]],"o":[[0.216,0.537],[0.216,0.538],[0,0],[0.216,0.538],[0,0],[0,0],[-0.351,-0.873],[0,0],[-0.351,-0.872],[0,0]],"v":[[-3.919,-8.705],[-3.848,-3.892],[-2.023,0.65],[-0.197,5.193],[3.079,8.705],[3.728,10.316],[4.215,8.244],[0.715,-0.462],[-2.783,-9.167],[-4.566,-10.316]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.2,0.322000002394,0.560999971278,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[62.682,253.538],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 177","np":4,"cix":2,"ix":177,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.276,-0.686],[-0.663,0.27],[0,0]],"o":[[0,0],[-0.663,0.27],[0.276,0.687],[0,0],[0,0]],"v":[[1.373,-1.939],[-1.394,-0.816],[-2.096,0.915],[-0.395,1.669],[2.372,0.547]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.322000002394,0.128999986836,0.105999995213,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[59.426,254.789],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 178","np":4,"cix":2,"ix":178,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[1.685,-2.725],[2.946,0.412],[-2.751,2.725],[-2.946,-0.844]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.8,0.216000007181,0.216000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[57.381,249.991],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 179","np":4,"cix":2,"ix":179,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[3.479,0.628],[2.217,-2.509],[-3.479,-0.195],[-1.152,2.509]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.8,0.216000007181,0.216000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[60.819,259.654],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 180","np":4,"cix":2,"ix":180,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[1.493,-4.528],[4.203,2.214],[-1.493,4.528],[-4.203,-2.215]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.184000007779,0.184000007779,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[58.834,254.931],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 181","np":4,"cix":2,"ix":181,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.18,-0.448],[-0.181,-0.449],[0,0],[-0.18,-0.449],[-0.179,-0.448],[0,0],[0.293,0.728],[0,0],[0.293,0.729],[0,0]],"o":[[0.18,0.448],[0.179,0.448],[0,0],[0.181,0.448],[0.181,0.449],[0,0],[-0.293,-0.729],[0,0],[-0.293,-0.727],[0,0]],"v":[[-3.269,-7.262],[-3.21,-3.246],[-1.687,0.544],[-0.165,4.333],[2.568,7.262],[3.109,8.606],[3.516,6.878],[0.598,-0.384],[-2.322,-7.647],[-3.81,-8.606]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.2,0.322000002394,0.560999971278,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[56.82,255.89],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 182","np":4,"cix":2,"ix":182,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.475,-1.179],[-1.141,0.463],[0,0]],"o":[[0,0],[-1.14,0.463],[0.474,1.181],[0,0],[0,0]],"v":[[1.027,-2.793],[-1.063,-1.943],[-2.269,1.031],[0.655,2.329],[2.744,1.48]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.811999990426,0.435000011968,0.187999994615,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[54.389,256.789],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 183","np":4,"cix":2,"ix":183,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-1.2,-1.533],[-1.482,1.172],[0,0]],"o":[[0,0],[-1.482,1.172],[1.201,1.533],[0,0],[0,0]],"v":[[0.871,-5.095],[-3.51,-1.628],[-4.018,3.27],[0.839,3.923],[5.219,0.456]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.322000002394,0.128999986836,0.105999995213,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[109.612,267.586],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 184","np":4,"cix":2,"ix":184,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-1.2,-1.533],[-1.482,1.172],[0,0]],"o":[[0,0],[-1.481,1.172],[1.201,1.533],[0,0],[0,0]],"v":[[0.87,-5.095],[-3.51,-1.628],[-4.019,3.27],[0.838,3.923],[5.218,0.456]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.322000002394,0.128999986836,0.105999995213,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[134.953,299.937],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 185","np":4,"cix":2,"ix":185,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.779,-0.994],[-0.961,0.761],[0,0]],"o":[[0,0],[-0.96,0.761],[0.779,0.994],[0,0],[0,0]],"v":[[1.059,-3.696],[-2.771,-0.666],[-3.1,2.511],[0.049,2.934],[3.879,-0.095]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.322000002394,0.128999986836,0.105999995213,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[119.347,286.117],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 186","np":4,"cix":2,"ix":186,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-1.197,-1.528],[-1.477,1.169],[0,0]],"o":[[0,0],[-1.477,1.169],[1.197,1.529],[0,0],[0,0]],"v":[[1.628,-5.681],[-4.258,-1.023],[-4.765,3.861],[0.077,4.512],[5.963,-0.147]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.322000002394,0.128999986836,0.105999995213,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[137.758,271.513],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 187","np":4,"cix":2,"ix":187,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-1.95,-2.49],[-2.406,1.905],[0,0]],"o":[[0,0],[-2.406,1.904],[1.95,2.489],[0,0],[0,0]],"v":[[2.968,-9.505],[-7.254,-1.415],[-8.08,6.542],[-0.192,7.601],[10.03,-0.488]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.588000009574,0.224000010771,0.184000007779,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[135.055,273.597],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 188","np":4,"cix":2,"ix":188,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-1.95,-2.489],[-2.407,1.904],[0,0]],"o":[[0,0],[-2.406,1.904],[1.951,2.49],[0,0],[0,0]],"v":[[7.253,-12.897],[-11.539,1.976],[-12.365,9.932],[-4.476,10.993],[14.315,-3.88]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.870999983245,0.380000005984,0.270999983245,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[120.956,284.755],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 189","np":4,"cix":2,"ix":189,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-3.993,-5.098],[-4.927,3.9],[0,0]],"o":[[0,0],[-4.927,3.9],[3.994,5.099],[0,0],[0,0]],"v":[[6.078,-19.465],[-14.855,-2.898],[-16.546,13.395],[-0.392,15.565],[20.54,-1.001]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.842999985639,0.560999971278,0.411999990426,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[128.245,278.833],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 190","np":4,"cix":2,"ix":190,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-16.867,-24.393],[19.632,22.206],[16.868,24.393],[-19.632,-22.204]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.322000002394,0.128999986836,0.105999995213,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[126.349,280.632],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 191","np":4,"cix":2,"ix":191,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-16.712,-25.623],[20.858,22.341],[16.711,25.623],[-20.858,-22.342]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.588000009574,0.224000010771,0.184000007779,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[139.481,270.241],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 192","np":4,"cix":2,"ix":192,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-3.994,-5.099],[-4.927,3.9],[0,0]],"o":[[0,0],[-4.928,3.9],[3.994,5.1],[0,0],[0,0]],"v":[[-2.232,-12.889],[-6.546,-9.475],[-8.237,6.818],[7.917,8.989],[12.23,5.576]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.769000004787,0.298000021542,0.19199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[112.771,291.08],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 193","np":4,"cix":2,"ix":193,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-4.153,-33.883],[31.792,12.008],[4.153,33.883],[-31.792,-12.008]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.769000004787,0.298000021542,0.19199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[124.555,282.053],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 194","np":4,"cix":2,"ix":194,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-5.499,-7.02],[-6.784,5.369],[0,0]],"o":[[0,0],[-6.784,5.369],[5.498,7.019],[0,0],[0,0]],"v":[[-2.41,-18.27],[-9.674,-12.52],[-12.002,9.913],[10.237,12.901],[17.501,7.152]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.842999985639,0.560999971278,0.411999990426,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[112.506,291.176],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 195","np":4,"cix":2,"ix":195,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-16.003,-24.654],[19.942,21.237],[17.235,24.654],[-19.942,-22.81]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.842999985639,0.560999971278,0.411999990426,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[108.766,294.699],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 196","np":4,"cix":2,"ix":196,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.29,0.229],[-0.228,-0.29],[0,0],[0.289,-0.228],[0.228,0.29],[0,0]],"o":[[0.289,-0.229],[0,0],[0.228,0.291],[-0.289,0.23],[0,0],[-0.227,-0.291]],"v":[[-4.372,-5.582],[-3.436,-5.471],[4.483,4.64],[4.372,5.581],[3.436,5.47],[-4.484,-4.641]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.588000009574,0.224000010771,0.184000007779,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[79.584,291.558],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 197","np":4,"cix":2,"ix":197,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.853,-0.532],[-0.316,-0.958],[0.852,0.533],[0.314,0.958]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.769000004787,0.298000021542,0.19199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[70.542,298.713],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 198","np":4,"cix":2,"ix":198,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[1.036,-1.258],[1.458,-0.717],[-1.036,1.258],[-1.459,0.717]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.769000004787,0.298000021542,0.19199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[70.811,298.501],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 199","np":4,"cix":2,"ix":199,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.002,-1.714],[1.657,0.404],[0.002,1.714],[-1.657,-0.404]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.842999985639,0.560999971278,0.411999990426,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[73.47,296.396],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 200","np":4,"cix":2,"ix":200,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.677,-1.469],[1.262,1.007],[0.677,1.469],[-1.262,-1.006]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.588000009574,0.224000010771,0.184000007779,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[72.351,297.282],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 201","np":4,"cix":2,"ix":201,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.475,-1.816],[1.646,0.891],[0.475,1.816],[-1.646,-0.889]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.588000009574,0.224000010771,0.184000007779,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[74.883,295.278],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 202","np":4,"cix":2,"ix":202,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.871,-1.111],[-2.291,1.813],[0,0]],"o":[[0,0],[-2.291,1.812],[0.871,1.112],[0,0],[0,0]],"v":[[-0.055,-3.003],[-0.236,-2.86],[-2.807,2.434],[2.918,1.164],[3.098,1.022]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.722000002394,0.451000019148,0.310000011968,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[78.098,292.52],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 203","np":4,"cix":2,"ix":203,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-2.22,-2.835],[-2.291,1.813],[0,0]],"o":[[0,0],[-2.291,1.812],[2.221,2.835],[0,0],[0,0]],"v":[[-2.758,-6.111],[-2.938,-5.968],[-3.065,2.448],[5.105,4.298],[5.285,4.156]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.842999985639,0.560999971278,0.411999990426,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[78.356,292.507],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 204","np":4,"cix":2,"ix":204,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-1.004,-1.282],[-1.239,0.981],[0,0]],"o":[[0,0],[-1.239,0.981],[1.004,1.281],[0,0],[0,0]],"v":[[0.728,-4.26],[-2.934,-1.362],[-3.359,2.734],[0.701,3.279],[4.363,0.381]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.588000009574,0.224000010771,0.184000007779,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[92.219,281.482],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 205","np":4,"cix":2,"ix":205,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-5.68,-5.34],[3.736,6.681],[5.68,4.3],[-2.921,-6.681]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.842999985639,0.560999971278,0.411999990426,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[84.168,288.028],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 206","np":4,"cix":2,"ix":206,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-1.286,-7.29],[6.749,2.966],[1.285,7.29],[-6.749,-2.967]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.769000004787,0.298000021542,0.19199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[82.352,289.368],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 207","np":4,"cix":2,"ix":207,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[0.611,-9.378],[9.212,1.603],[-0.611,9.378],[-9.212,-1.604]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.769000004787,0.298000021542,0.19199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[90.459,282.95],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 208","np":4,"cix":2,"ix":208,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.289,0.229],[-0.229,-0.291],[0,0],[0.289,-0.229],[0.228,0.291],[0,0]],"o":[[0.29,-0.229],[0,0],[0.227,0.291],[-0.29,0.229],[0,0],[-0.228,-0.291]],"v":[[-4.372,-5.582],[-3.435,-5.47],[4.484,4.641],[4.373,5.582],[3.436,5.47],[-4.483,-4.641]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.588000009574,0.224000010771,0.184000007779,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[104.812,323.766],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 209","np":4,"cix":2,"ix":209,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.852,-0.533],[-0.316,-0.958],[0.853,0.533],[0.316,0.958]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.769000004787,0.298000021542,0.19199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[95.77,330.922],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 210","np":4,"cix":2,"ix":210,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[1.036,-1.257],[1.459,-0.717],[-1.035,1.257],[-1.459,0.718]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.769000004787,0.298000021542,0.19199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[96.039,330.71],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 211","np":4,"cix":2,"ix":211,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.002,-1.714],[1.657,0.405],[0.002,1.714],[-1.657,-0.404]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.842999985639,0.560999971278,0.411999990426,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[98.699,328.604],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 212","np":4,"cix":2,"ix":212,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.677,-1.469],[1.262,1.006],[0.677,1.469],[-1.262,-1.006]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.588000009574,0.224000010771,0.184000007779,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[97.579,329.491],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 213","np":4,"cix":2,"ix":213,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.475,-1.816],[1.645,0.889],[0.474,1.816],[-1.645,-0.89]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.588000009574,0.224000010771,0.184000007779,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[100.112,327.487],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 214","np":4,"cix":2,"ix":214,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.871,-1.111],[-2.291,1.812],[0,0]],"o":[[0,0],[-2.291,1.812],[0.871,1.113],[0,0],[0,0]],"v":[[-0.056,-3.003],[-0.236,-2.86],[-2.807,2.434],[2.917,1.165],[3.098,1.022]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.722000002394,0.451000019148,0.310000011968,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[103.327,324.728],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 215","np":4,"cix":2,"ix":215,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-2.22,-2.835],[-2.291,1.813],[0,0]],"o":[[0,0],[-2.29,1.813],[2.221,2.835],[0,0],[0,0]],"v":[[-2.758,-6.111],[-2.938,-5.969],[-3.065,2.447],[5.105,4.298],[5.285,4.156]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.842999985639,0.560999971278,0.411999990426,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[103.584,324.716],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 216","np":4,"cix":2,"ix":216,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-1.004,-1.281],[-1.239,0.981],[0,0]],"o":[[0,0],[-1.238,0.981],[1.004,1.281],[0,0],[0,0]],"v":[[0.727,-4.26],[-2.935,-1.363],[-3.36,2.733],[0.702,3.279],[4.363,0.381]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.588000009574,0.224000010771,0.184000007779,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[117.448,313.691],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 217","np":4,"cix":2,"ix":217,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-5.68,-5.34],[3.736,6.681],[5.68,4.3],[-2.921,-6.681]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.842999985639,0.560999971278,0.411999990426,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[109.397,320.236],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 218","np":4,"cix":2,"ix":218,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-1.285,-7.29],[6.749,2.966],[1.286,7.29],[-6.749,-2.966]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.769000004787,0.298000021542,0.19199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[107.58,321.576],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 219","np":4,"cix":2,"ix":219,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[0.611,-9.377],[9.212,1.603],[-0.611,9.377],[-9.212,-1.604]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.769000004787,0.298000021542,0.19199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[115.688,315.159],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 220","np":4,"cix":2,"ix":220,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[-8.038,-2.556],[-1.698,21.509],[8.038,-21.509]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.783999992819,0.722000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[64.603,173.777],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 221","np":4,"cix":2,"ix":221,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[-12.322,-3.919],[-2.603,32.971],[12.323,-32.971]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.541000007181,0.569000004787,0.522000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[65.901,174.458],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 222","np":4,"cix":2,"ix":222,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[2.863,-1.797],[1.809,2.861],[-2.863,1.796],[-1.808,-2.861]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.541000007181,0.569000004787,0.522000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[110.337,159.752],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 223","np":4,"cix":2,"ix":223,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[1.923,-2.01],[0.869,2.648],[-1.923,2.011],[-0.869,-2.647]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.541000007181,0.569000004787,0.522000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[79.989,152.831],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 224","np":4,"cix":2,"ix":224,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[15.31,1.459],[14.492,5.074],[-15.31,-2.014],[-14.617,-5.074]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.783999992819,0.722000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[95.401,156.478],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 225","np":4,"cix":2,"ix":225,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[2.863,-1.797],[1.809,2.861],[-2.863,1.796],[-1.809,-2.861]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.541000007181,0.569000004787,0.522000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[108.294,168.779],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 226","np":4,"cix":2,"ix":226,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[1.924,-2.011],[0.868,2.647],[-1.924,2.01],[-0.869,-2.648]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.541000007181,0.569000004787,0.522000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[77.946,161.858],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 227","np":4,"cix":2,"ix":227,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[15.31,1.459],[14.492,5.074],[-15.31,-2.014],[-14.617,-5.074]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.783999992819,0.722000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[93.358,165.504],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 228","np":4,"cix":2,"ix":228,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[2.863,-1.797],[1.809,2.861],[-2.863,1.796],[-1.809,-2.861]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.541000007181,0.569000004787,0.522000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[106.251,177.805],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 229","np":4,"cix":2,"ix":229,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[1.923,-2.01],[0.869,2.648],[-1.923,2.011],[-0.869,-2.647]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.541000007181,0.569000004787,0.522000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[75.903,170.884],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 230","np":4,"cix":2,"ix":230,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[15.31,1.459],[14.492,5.074],[-15.31,-2.014],[-14.617,-5.074]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.783999992819,0.722000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[91.316,174.531],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 231","np":4,"cix":2,"ix":231,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[2.863,-1.797],[1.809,2.861],[-2.863,1.796],[-1.809,-2.861]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.541000007181,0.569000004787,0.522000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[104.208,186.832],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 232","np":4,"cix":2,"ix":232,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[1.924,-2.01],[0.87,2.648],[-1.924,2.011],[-0.869,-2.647]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.541000007181,0.569000004787,0.522000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[73.86,179.911],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 233","np":4,"cix":2,"ix":233,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[15.31,1.459],[14.492,5.074],[-15.31,-2.014],[-14.617,-5.074]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.783999992819,0.722000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[89.272,183.557],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 234","np":4,"cix":2,"ix":234,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[2.863,-1.797],[1.809,2.861],[-2.863,1.796],[-1.808,-2.861]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.541000007181,0.569000004787,0.522000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[102.165,195.858],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 235","np":4,"cix":2,"ix":235,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[1.924,-2.011],[0.87,2.647],[-1.924,2.01],[-0.869,-2.648]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.541000007181,0.569000004787,0.522000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[71.817,188.938],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 236","np":4,"cix":2,"ix":236,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[15.31,1.459],[14.492,5.074],[-15.31,-2.014],[-14.617,-5.074]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.783999992819,0.722000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[87.23,192.584],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 237","np":4,"cix":2,"ix":237,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[2.863,-1.797],[1.808,2.861],[-2.863,1.796],[-1.808,-2.861]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.541000007181,0.569000004787,0.522000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[100.122,204.885],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 238","np":4,"cix":2,"ix":238,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[1.924,-2.01],[0.87,2.648],[-1.924,2.011],[-0.869,-2.647]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.541000007181,0.569000004787,0.522000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[69.774,197.964],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 239","np":4,"cix":2,"ix":239,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[15.31,1.46],[14.492,5.074],[-15.31,-2.013],[-14.617,-5.074]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.783999992819,0.722000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[85.187,201.61],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 240","np":4,"cix":2,"ix":240,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[9.137,-29.077],[-4.276,30.186],[-9.138,29.077],[4.275,-30.186]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.783999992819,0.722000002394,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[114.023,184.324],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 241","np":4,"cix":2,"ix":241,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[7.367,-26.217],[-4.642,26.84],[-7.367,26.219],[4.641,-26.839]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.62400004069,0.658999992819,0.603999956916,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[72.123,174.768],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 242","np":4,"cix":2,"ix":242,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[9.033,-27.251],[-3.583,28.494],[-9.033,27.25],[3.583,-28.494]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.62400004069,0.658999992819,0.603999956916,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[110.29,183.473],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 243","np":4,"cix":2,"ix":243,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.529,-0.369],[0.367,-0.531],[0.529,0.369],[-0.367,0.532]],"o":[[0.529,0.369],[-0.367,0.532],[-0.529,-0.369],[0.367,-0.531]],"v":[[0.665,-0.963],[0.958,0.668],[-0.665,0.963],[-0.958,-0.669]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.689999988032,0.113999998803,0.023999999551,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[89.582,110.001],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 244","np":4,"cix":2,"ix":244,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[15.573,-5.379],[16.13,3.332],[-15.573,5.379],[-16.13,-3.332]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.889999988032,0.654999976065,0.337000020345,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[111.641,103.762],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 245","np":4,"cix":2,"ix":245,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[15.573,-5.379],[16.13,3.332],[-15.573,5.379],[-16.13,-3.332]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.889999988032,0.654999976065,0.337000020345,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[67.523,116.24],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 246","np":4,"cix":2,"ix":246,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.015,-0.243],[0.242,-0.015],[0,0],[0.015,0.242],[-0.241,0.015]],"o":[[0.242,-0.016],[0.016,0.242],[0,0],[-0.242,0.016],[-0.015,-0.243],[0,0]],"v":[[38.929,-2.955],[39.394,-2.542],[38.985,-2.075],[-38.929,2.955],[-39.395,2.544],[-38.986,2.076]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.54900004069,0.298000021542,0.078000005086,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[89.582,110.001],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 247","np":4,"cix":2,"ix":247,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[5.351,15.654],[-3.315,16.214],[-5.351,-15.654],[3.315,-16.214]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.889999988032,0.654999976065,0.337000020345,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[95.788,132.175],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 248","np":4,"cix":2,"ix":248,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[5.351,15.654],[-3.314,16.214],[-5.351,-15.654],[3.314,-16.214]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.889999988032,0.654999976065,0.337000020345,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[83.376,87.827],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 249","np":4,"cix":2,"ix":249,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.242,-0.015],[0.016,0.242],[0,0],[-0.241,0.016],[-0.016,-0.243]],"o":[[0.016,0.243],[-0.242,0.016],[0,0],[-0.016,-0.243],[0.241,-0.016],[0,0]],"v":[[2.939,39.131],[2.53,39.599],[2.064,39.188],[-2.939,-39.132],[-2.53,-39.6],[-2.064,-39.188]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.54900004069,0.298000021542,0.078000005086,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[89.582,110.001],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 250","np":4,"cix":2,"ix":250,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.912,-0.636],[0.633,-0.916],[0.912,0.636],[-0.633,0.916]],"o":[[0.911,0.636],[-0.633,0.916],[-0.912,-0.636],[0.633,-0.916]],"v":[[1.146,-1.659],[1.65,1.152],[-1.146,1.659],[-1.651,-1.151]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.093999997307,0.019999999626,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[89.582,110.001],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 251","np":4,"cix":2,"ix":251,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[2.29,-0.251],[0.566,2.244],[-2.29,0.251],[-0.567,-2.244]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.093999997307,0.019999999626,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[115.794,125.908],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 252","np":4,"cix":2,"ix":252,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[2.29,-0.251],[0.566,2.244],[-2.29,0.251],[-0.567,-2.244]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.093999997307,0.019999999626,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[113.576,129.12],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 253","np":4,"cix":2,"ix":253,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[2.29,-0.252],[0.567,2.244],[-2.29,0.251],[-0.566,-2.244]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.093999997307,0.019999999626,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[112.221,123.416],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 254","np":4,"cix":2,"ix":254,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[2.29,-0.251],[0.566,2.244],[-2.29,0.251],[-0.566,-2.244]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.093999997307,0.019999999626,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[110.003,126.628],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 255","np":4,"cix":2,"ix":255,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[6.314,-0.868],[1.4,6.25],[-6.314,0.868],[-1.4,-6.25]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.630999995213,0.141000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[112.899,126.268],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 256","np":4,"cix":2,"ix":256,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[2.29,-0.251],[0.566,2.244],[-2.29,0.251],[-0.566,-2.244]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.093999997307,0.019999999626,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[104.289,117.882],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 257","np":4,"cix":2,"ix":257,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[2.29,-0.251],[0.566,2.244],[-2.29,0.251],[-0.567,-2.244]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.093999997307,0.019999999626,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[102.071,121.094],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 258","np":4,"cix":2,"ix":258,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[2.29,-0.251],[0.566,2.244],[-2.29,0.251],[-0.567,-2.244]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.093999997307,0.019999999626,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[100.716,115.389],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 259","np":4,"cix":2,"ix":259,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[2.29,-0.251],[0.566,2.244],[-2.29,0.251],[-0.566,-2.244]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.093999997307,0.019999999626,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[98.499,118.601],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 260","np":4,"cix":2,"ix":260,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[6.314,-0.868],[1.399,6.25],[-6.314,0.868],[-1.4,-6.25]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.630999995213,0.141000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[101.394,118.242],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 261","np":4,"cix":2,"ix":261,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.396,-0.276],[0.275,-0.398],[0,0],[0.396,0.277],[-0.275,0.398],[0,0]],"o":[[0.396,0.276],[0,0],[-0.275,0.398],[-0.396,-0.276],[0,0],[0.275,-0.398]],"v":[[8.087,-11.714],[8.307,-10.493],[-6.873,11.493],[-8.088,11.713],[-8.307,10.492],[6.873,-11.494]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.638999968884,0.344999994016,0.090000002992,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[93.23,112.546],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 262","np":4,"cix":2,"ix":262,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[2.078,-3.009],[-4.613,-3.35]],"o":[[-4.736,-3.172],[-2.078,3.01],[0,0]],"v":[[7.165,-3.878],[-5.087,-4.207],[-0.495,7.216]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.830999995213,0.352999997606,0.102000000898,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[89.998,110.948],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 263","np":4,"cix":2,"ix":263,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[4.037,-5.847],[-5.656,-4.202]],"o":[[-5.895,-3.856],[-4.037,5.847],[0,0]],"v":[[10.942,-8.849],[-6.904,-5.331],[-3.941,12.705]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.870999983245,0.470999983245,0.125,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[89.832,110.689],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 264","np":4,"cix":2,"ix":264,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[19.542,13.634],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[19.542,13.633],[0,0],[0,0],[0,0]],"v":[[-14.505,-19.931],[-18.518,-14.118],[-22.531,-8.306],[8.119,19.931],[15.325,9.493],[22.531,-0.944]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.122000002394,0.027000000898,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[111.244,126.312],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 265","np":4,"cix":2,"ix":265,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[19.542,13.634],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[19.542,13.634],[0,0],[0,0],[0,0]],"v":[[-12.749,-25.833],[-19.678,-15.798],[-26.607,-5.764],[1.725,25.833],[14.166,7.814],[26.607,-10.206]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.093999997307,0.019999999626,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[112.403,127.992],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 266","np":4,"cix":2,"ix":266,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.214,-0.15],[0.149,-0.216],[0,0],[0.214,0.149],[-0.149,0.216],[0,0]],"o":[[0.214,0.149],[0,0],[-0.149,0.215],[-0.215,-0.15],[0,0],[0.148,-0.215]],"v":[[3.087,-4.471],[3.206,-3.809],[-2.43,4.353],[-3.087,4.471],[-3.206,3.811],[2.43,-4.351]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.638999968884,0.344999994016,0.090000002992,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[136.061,142.427],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 267","np":4,"cix":2,"ix":267,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[6.169,0.076],[2.228,5.783],[-6.17,-0.076],[-2.23,-5.783]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.579999976065,0.093999997307,0.019999999626,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[132.25,139.769],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 268","np":4,"cix":2,"ix":268,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[-5.569,8.065],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[5.569,-8.065],[0,0]],"v":[[4.473,-18.39],[-4.437,-3.484],[-15.213,10.12],[-6.546,18.39],[6.147,3.9],[15.212,-13.121]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.870999983245,0.470999983245,0.125,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[129.891,138.511],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 269","np":4,"cix":2,"ix":269,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[1.164,-1.685],[-1.629,-1.211]],"o":[[-1.699,-1.111],[-1.163,1.686],[0,0]],"v":[[3.154,-2.551],[-1.991,-1.537],[-1.137,3.662]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.630999995213,0.141000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[82.974,105.539],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 270","np":4,"cix":2,"ix":270,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.058,-0.129],[0.128,0.058],[0,0],[-0.057,0.129],[-0.128,-0.058],[0,0]],"o":[[-0.058,0.129],[0,0],[-0.128,-0.057],[0.058,-0.13],[0,0],[0.128,0.058]],"v":[[7.781,3.51],[7.444,3.64],[-7.654,-3.173],[-7.781,-3.511],[-7.444,-3.64],[7.652,3.171]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.779999976065,0.556999954523,0.39199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[288.09,18.685],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 271","np":4,"cix":2,"ix":271,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.115,0.908],[-0.598,0.69],[0.115,-0.908],[0.599,-0.69]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.779999976065,0.556999954523,0.39199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[294.732,22.661],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 272","np":4,"cix":2,"ix":272,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.116,0.908],[-0.598,0.69],[0.114,-0.908],[0.598,-0.69]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.779999976065,0.556999954523,0.39199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[293.331,22.028],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 273","np":4,"cix":2,"ix":273,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.116,0.908],[-0.598,0.69],[0.115,-0.908],[0.598,-0.69]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.779999976065,0.556999954523,0.39199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[291.93,21.396],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 274","np":4,"cix":2,"ix":274,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.115,0.908],[-0.598,0.69],[0.115,-0.908],[0.598,-0.69]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.779999976065,0.556999954523,0.39199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[290.528,20.764],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 275","np":4,"cix":2,"ix":275,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.115,0.908],[-0.598,0.69],[0.115,-0.908],[0.598,-0.69]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.779999976065,0.556999954523,0.39199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[289.127,20.132],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 276","np":4,"cix":2,"ix":276,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.115,0.908],[-0.598,0.69],[0.115,-0.908],[0.599,-0.69]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.779999976065,0.556999954523,0.39199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[287.726,19.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 277","np":4,"cix":2,"ix":277,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.116,0.908],[-0.599,0.69],[0.114,-0.908],[0.598,-0.69]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.779999976065,0.556999954523,0.39199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[286.325,18.867],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 278","np":4,"cix":2,"ix":278,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.116,0.908],[-0.599,0.69],[0.114,-0.908],[0.598,-0.69]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.779999976065,0.556999954523,0.39199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[284.923,18.235],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 279","np":4,"cix":2,"ix":279,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.116,0.908],[-0.598,0.69],[0.114,-0.908],[0.598,-0.69]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.779999976065,0.556999954523,0.39199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[283.522,17.603],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 280","np":4,"cix":2,"ix":280,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.116,0.908],[-0.598,0.69],[0.115,-0.908],[0.598,-0.69]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.779999976065,0.556999954523,0.39199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[282.121,16.97],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 281","np":4,"cix":2,"ix":281,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.115,0.908],[-0.598,0.69],[0.115,-0.908],[0.598,-0.69]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.779999976065,0.556999954523,0.39199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[280.719,16.338],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 282","np":4,"cix":2,"ix":282,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[8.275,4.328],[-8.716,-3.339],[-8.275,-4.328],[8.716,3.339]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.779999976065,0.556999954523,0.39199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[283.362,29.271],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 283","np":4,"cix":2,"ix":283,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.586,0.265],[0.262,-0.589],[0,0]],"o":[[0,0],[0.264,-0.59],[-0.587,-0.264],[0,0],[0,0]],"v":[[-0.116,3.245],[1.974,-1.435],[1.39,-2.981],[-0.148,-2.393],[-2.238,2.287]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[290.316,29.062],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 284","np":4,"cix":2,"ix":284,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.586,0.264],[0.262,-0.59],[0,0]],"o":[[0,0],[0.264,-0.589],[-0.586,-0.265],[0,0],[0,0]],"v":[[-0.115,3.245],[1.975,-1.436],[1.389,-2.98],[-0.147,-2.392],[-2.238,2.288]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[286.477,27.329],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 285","np":4,"cix":2,"ix":285,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.586,0.265],[0.263,-0.589],[0,0]],"o":[[0,0],[0.263,-0.59],[-0.586,-0.264],[0,0],[0,0]],"v":[[-0.115,3.245],[1.975,-1.435],[1.39,-2.981],[-0.148,-2.393],[-2.238,2.287]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[282.637,25.597],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 286","np":4,"cix":2,"ix":286,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.586,0.265],[0.263,-0.589],[0,0]],"o":[[0,0],[0.263,-0.59],[-0.586,-0.264],[0,0],[0,0]],"v":[[-0.116,3.245],[1.975,-1.435],[1.39,-2.981],[-0.148,-2.393],[-2.238,2.287]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[278.799,23.865],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 287","np":4,"cix":2,"ix":287,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[11.154,5.673],[-11.63,-4.608],[-11.155,-5.673],[11.63,4.608]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.779999976065,0.556999954523,0.39199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[279.016,39.004],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 288","np":4,"cix":2,"ix":288,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.631,0.286],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.631,-0.284],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.211],[-0.159,-2.577],[-2.41,2.463]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[288.655,39.749],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 289","np":4,"cix":2,"ix":289,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.631,0.286],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.631,-0.284],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.211],[-0.159,-2.577],[-2.41,2.463]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[284.521,37.883],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 290","np":4,"cix":2,"ix":290,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.632,0.286],[0.284,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.631,-0.284],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.211],[-0.159,-2.577],[-2.41,2.463]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[280.386,36.018],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 291","np":4,"cix":2,"ix":291,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.632,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.631,-0.285],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.21],[-0.158,-2.577],[-2.41,2.464]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[276.251,34.152],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 292","np":4,"cix":2,"ix":292,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.632,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.631,-0.285],[0,0],[0,0]],"v":[[-0.125,3.495],[2.126,-1.546],[1.496,-3.21],[-0.159,-2.577],[-2.41,2.464]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[272.117,32.286],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 293","np":4,"cix":2,"ix":293,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[11.154,5.673],[-11.63,-4.608],[-11.155,-5.673],[11.63,4.608]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.779999976065,0.556999954523,0.39199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[275.12,47.726],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 294","np":4,"cix":2,"ix":294,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.632,0.286],[0.284,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.631,-0.284],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.211],[-0.159,-2.577],[-2.41,2.463]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[284.76,48.472],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 295","np":4,"cix":2,"ix":295,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.632,0.286],[0.284,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.631,-0.284],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.211],[-0.159,-2.577],[-2.41,2.463]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[280.625,46.606],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 296","np":4,"cix":2,"ix":296,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.632,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.284,-0.634],[-0.631,-0.285],[0,0],[0,0]],"v":[[-0.125,3.495],[2.126,-1.546],[1.496,-3.21],[-0.159,-2.577],[-2.41,2.464]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[276.491,44.74],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 297","np":4,"cix":2,"ix":297,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.632,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.284,-0.634],[-0.631,-0.285],[0,0],[0,0]],"v":[[-0.125,3.495],[2.126,-1.546],[1.496,-3.21],[-0.159,-2.577],[-2.41,2.464]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[272.356,42.875],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 298","np":4,"cix":2,"ix":298,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.631,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.632,-0.285],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.21],[-0.159,-2.577],[-2.41,2.464]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[268.222,41.009],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 299","np":4,"cix":2,"ix":299,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[11.154,5.673],[-11.631,-4.608],[-11.156,-5.673],[11.63,4.608]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.779999976065,0.556999954523,0.39199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[271.225,56.449],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 300","np":4,"cix":2,"ix":300,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.632,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.284,-0.634],[-0.631,-0.285],[0,0],[0,0]],"v":[[-0.125,3.495],[2.126,-1.546],[1.496,-3.21],[-0.159,-2.577],[-2.41,2.463]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[280.865,57.194],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 301","np":4,"cix":2,"ix":301,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.632,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.284,-0.634],[-0.631,-0.285],[0,0],[0,0]],"v":[[-0.124,3.495],[2.126,-1.546],[1.496,-3.21],[-0.159,-2.577],[-2.41,2.464]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[276.73,55.329],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 302","np":4,"cix":2,"ix":302,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.631,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.632,-0.285],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.21],[-0.159,-2.577],[-2.41,2.464]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[272.596,53.463],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 303","np":4,"cix":2,"ix":303,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.631,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.632,-0.285],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.21],[-0.159,-2.577],[-2.41,2.464]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[268.461,51.597],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 304","np":4,"cix":2,"ix":304,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.631,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.632,-0.284],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.211],[-0.159,-2.577],[-2.41,2.463]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[264.326,49.732],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 305","np":4,"cix":2,"ix":305,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[11.155,5.673],[-11.63,-4.608],[-11.156,-5.673],[11.63,4.608]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.779999976065,0.556999954523,0.39199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[267.33,65.172],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 306","np":4,"cix":2,"ix":306,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.631,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.632,-0.285],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.21],[-0.159,-2.577],[-2.41,2.464]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[276.97,65.917],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 307","np":4,"cix":2,"ix":307,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.631,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.632,-0.285],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.21],[-0.159,-2.577],[-2.41,2.464]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[272.835,64.051],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 308","np":4,"cix":2,"ix":308,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.631,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.632,-0.285],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.21],[-0.159,-2.577],[-2.41,2.464]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[268.7,62.186],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 309","np":4,"cix":2,"ix":309,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.631,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.631,-0.284],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.211],[-0.159,-2.577],[-2.41,2.463]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[264.565,60.32],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 310","np":4,"cix":2,"ix":310,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.631,0.286],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.631,-0.284],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.211],[-0.159,-2.577],[-2.41,2.463]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[260.431,58.455],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 311","np":4,"cix":2,"ix":311,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[11.154,5.673],[-11.63,-4.608],[-11.155,-5.673],[11.63,4.608]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.779999976065,0.556999954523,0.39199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[263.435,73.895],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 312","np":4,"cix":2,"ix":312,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.631,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.632,-0.285],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.21],[-0.159,-2.577],[-2.41,2.464]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[273.074,74.64],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 313","np":4,"cix":2,"ix":313,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.631,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.631,-0.285],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.21],[-0.159,-2.577],[-2.41,2.464]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[268.939,72.774],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 314","np":4,"cix":2,"ix":314,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.631,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.631,-0.285],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.21],[-0.159,-2.577],[-2.41,2.464]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[264.805,70.908],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 315","np":4,"cix":2,"ix":315,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.632,0.286],[0.284,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.631,-0.284],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.211],[-0.159,-2.577],[-2.41,2.463]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[260.67,69.043],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 316","np":4,"cix":2,"ix":316,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.632,0.286],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.631,-0.284],[0,0],[0,0]],"v":[[-0.124,3.495],[2.126,-1.546],[1.496,-3.211],[-0.159,-2.577],[-2.409,2.463]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[256.536,67.177],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 317","np":4,"cix":2,"ix":317,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[11.154,5.673],[-11.63,-4.608],[-11.155,-5.673],[11.63,4.608]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.779999976065,0.556999954523,0.39199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[259.539,82.617],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 318","np":4,"cix":2,"ix":318,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.631,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.631,-0.285],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.21],[-0.159,-2.577],[-2.41,2.464]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[269.179,83.362],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 319","np":4,"cix":2,"ix":319,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.632,0.285],[0.284,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.631,-0.285],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.21],[-0.159,-2.577],[-2.41,2.464]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[265.044,81.497],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 320","np":4,"cix":2,"ix":320,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.632,0.286],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.631,-0.284],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.211],[-0.158,-2.577],[-2.41,2.463]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[260.909,79.631],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 321","np":4,"cix":2,"ix":321,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.632,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.284,-0.634],[-0.631,-0.285],[0,0],[0,0]],"v":[[-0.125,3.495],[2.126,-1.546],[1.496,-3.21],[-0.159,-2.577],[-2.41,2.463]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[256.775,77.766],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 322","np":4,"cix":2,"ix":322,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.632,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.631,-0.285],[0,0],[0,0]],"v":[[-0.125,3.495],[2.127,-1.546],[1.496,-3.21],[-0.159,-2.577],[-2.41,2.464]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[252.641,75.9],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 323","np":4,"cix":2,"ix":323,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[11.154,5.673],[-11.63,-4.608],[-11.155,-5.673],[11.63,4.608]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.779999976065,0.556999954523,0.39199999641,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[255.644,91.34],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 324","np":4,"cix":2,"ix":324,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.632,0.286],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.631,-0.284],[0,0],[0,0]],"v":[[-0.124,3.495],[2.126,-1.546],[1.496,-3.211],[-0.159,-2.577],[-2.409,2.463]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[265.284,92.086],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 325","np":4,"cix":2,"ix":325,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.632,0.286],[0.283,-0.635],[0,0]],"o":[[0,0],[0.284,-0.634],[-0.631,-0.284],[0,0],[0,0]],"v":[[-0.125,3.495],[2.126,-1.546],[1.496,-3.211],[-0.159,-2.577],[-2.41,2.463]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[261.149,90.22],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 326","np":4,"cix":2,"ix":326,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.632,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.284,-0.634],[-0.631,-0.285],[0,0],[0,0]],"v":[[-0.125,3.495],[2.126,-1.546],[1.496,-3.21],[-0.159,-2.577],[-2.41,2.464]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[257.015,88.354],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 327","np":4,"cix":2,"ix":327,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.631,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.632,-0.285],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.21],[-0.159,-2.577],[-2.41,2.464]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[252.88,86.488],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 328","np":4,"cix":2,"ix":328,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.631,0.285],[0.283,-0.635],[0,0]],"o":[[0,0],[0.283,-0.634],[-0.632,-0.285],[0,0],[0,0]],"v":[[-0.124,3.495],[2.127,-1.546],[1.497,-3.21],[-0.159,-2.577],[-2.41,2.464]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.741000007181,0.505999995213,0.33300000359,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[248.745,84.623],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 329","np":4,"cix":2,"ix":329,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.677,0.305],[0.305,-0.681],[0,0]],"o":[[0,0],[0.304,-0.681],[-0.677,-0.306],[0,0],[0,0]],"v":[[-0.133,3.75],[2.282,-1.658],[1.606,-3.444],[-0.171,-2.765],[-2.586,2.643]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.689999988032,0.470999983245,0.310000011968,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[262.242,103.539],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 330","np":4,"cix":2,"ix":330,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.678,0.306],[0.304,-0.68],[0,0]],"o":[[0,0],[0.305,-0.681],[-0.677,-0.306],[0,0],[0,0]],"v":[[-0.134,3.75],[2.281,-1.658],[1.605,-3.444],[-0.171,-2.765],[-2.586,2.644]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.689999988032,0.470999983245,0.310000011968,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[257.201,101.265],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 331","np":4,"cix":2,"ix":331,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.678,0.306],[0.304,-0.68],[0,0]],"o":[[0,0],[0.304,-0.68],[-0.677,-0.306],[0,0],[0,0]],"v":[[-0.133,3.75],[2.282,-1.658],[1.606,-3.444],[-0.17,-2.765],[-2.585,2.644]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.689999988032,0.470999983245,0.310000011968,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[252.16,98.99],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 332","np":4,"cix":2,"ix":332,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.677,0.305],[0.305,-0.681],[0,0]],"o":[[0,0],[0.304,-0.681],[-0.677,-0.306],[0,0],[0,0]],"v":[[-0.133,3.75],[2.282,-1.658],[1.606,-3.444],[-0.171,-2.765],[-2.586,2.643]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.689999988032,0.470999983245,0.310000011968,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[247.118,96.715],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 333","np":4,"cix":2,"ix":333,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.677,0.306],[0.305,-0.68],[0,0]],"o":[[0,0],[0.304,-0.681],[-0.677,-0.306],[0,0],[0,0]],"v":[[-0.133,3.75],[2.282,-1.658],[1.606,-3.444],[-0.171,-2.765],[-2.586,2.644]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.689999988032,0.470999983245,0.310000011968,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[242.077,94.44],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 334","np":4,"cix":2,"ix":334,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-0.927,-0.418],[0.156,-0.961],[0,0],[0,0],[-0.926,-0.418],[0.156,-0.962],[0,0],[0,0],[-0.927,-0.418],[-0.031,-0.015],[-0.031,-0.015],[0.156,-0.962],[0,0],[0,0],[-0.927,-0.418],[0.157,-0.962],[0,0],[0,0],[-0.927,-0.418],[0.156,-0.963],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0.612,-0.757],[0.927,0.419],[0,0],[0,0],[0.611,-0.757],[0.927,0.418],[0,0],[0,0],[0.611,-0.757],[0.031,0.014],[0.032,0.013],[0.927,0.418],[0,0],[0,0],[0.611,-0.758],[0.926,0.418],[0,0],[0,0],[0.612,-0.756],[0.927,0.418],[0,0],[0,0],[0,0]],"v":[[8.541,2.335],[3.223,-0.064],[0.564,-1.264],[-2.094,-2.463],[-7.411,-4.863],[-12.729,-7.262],[-13.857,-4.734],[-13.222,-4.447],[-10.623,-5.07],[-9.358,-2.705],[-8.54,-2.335],[-7.904,-2.048],[-5.306,-2.67],[-4.041,-0.305],[-3.223,0.064],[-2.587,0.351],[0.012,-0.271],[0.1,-0.222],[0.195,-0.188],[1.459,2.177],[2.094,2.464],[2.913,2.834],[5.512,2.211],[6.775,4.576],[7.411,4.863],[8.23,5.232],[10.829,4.61],[12.093,6.976],[12.729,7.262],[13.857,4.734]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.689999988032,0.470999983245,0.310000011968,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[254.841,93.137],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 335","np":4,"cix":2,"ix":335,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-0.589,-0.266],[0.1,-0.611],[0,0],[0,0],[-0.589,-0.266],[0.1,-0.612],[0,0],[0,0],[-0.589,-0.265],[-0.02,-0.01],[-0.02,-0.009],[0.1,-0.611],[0,0],[0,0],[-0.59,-0.266],[0.1,-0.611],[0,0],[0,0],[-0.589,-0.266],[0.099,-0.612],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0.389,-0.48],[0.589,0.266],[0,0],[0,0],[0.389,-0.482],[0.589,0.266],[0,0],[0,0],[0.388,-0.481],[0.021,0.009],[0.019,0.007],[0.589,0.266],[0,0],[0,0],[0.389,-0.481],[0.589,0.266],[0,0],[0,0],[0.388,-0.482],[0.589,0.266],[0,0],[0,0],[0,0]],"v":[[5.429,1.484],[2.049,-0.041],[0.36,-0.804],[-1.331,-1.566],[-4.711,-3.092],[-8.091,-4.617],[-8.809,-3.01],[-8.404,-2.827],[-6.753,-3.222],[-5.949,-1.719],[-5.428,-1.485],[-5.024,-1.301],[-3.373,-1.697],[-2.569,-0.193],[-2.049,0.041],[-1.645,0.223],[0.007,-0.173],[0.064,-0.141],[0.124,-0.119],[0.927,1.383],[1.331,1.566],[1.852,1.8],[3.504,1.406],[4.307,2.908],[4.711,3.092],[5.232,3.326],[6.884,2.93],[7.688,4.434],[8.092,4.617],[8.809,3.01]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.689999988032,0.470999983245,0.310000011968,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[287.01,21.102],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 336","np":4,"cix":2,"ix":336,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[10.876,5.852],[-11.578,-4.28],[-10.876,-5.852],[11.578,4.28]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.689999988032,0.470999983245,0.310000011968,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[282.79,30.551],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 337","np":4,"cix":2,"ix":337,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-2.789,35.576],[-24.593,25.739],[2.789,-35.576],[24.593,-25.738]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.830999995213,0.651000019148,0.481999984442,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[268.816,61.843],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 338","np":4,"cix":2,"ix":338,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[10.659,10.784],[-15.1,-0.839],[-10.658,-10.784],[15.099,0.838]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.830999995213,0.651000019148,0.481999984442,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[253.02,97.214],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 339","np":4,"cix":2,"ix":339,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[5.339,9.721],[-10.774,2.452],[-5.338,-9.721],[10.775,-2.451]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.830999995213,0.651000019148,0.481999984442,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[284.613,26.47],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 340","np":4,"cix":2,"ix":340,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-2.14,14.106],[0,0],[0.352,-1.079],[2.671,-17.61],[-0.014,-1.135],[0,0]],"o":[[2.14,-14.106],[0,0],[-0.351,1.078],[-2.671,17.611],[0.017,1.135],[0,0]],"v":[[-0.242,-0.126],[5.604,-33.1],[4.004,-31.835],[-1.159,-0.267],[-5.59,31.414],[-4.437,33.1]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.969000004787,0.216000007181,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[361.935,234.045],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 341","np":4,"cix":2,"ix":341,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-4.213,2.202],[-3.368,-3.364],[4.213,-2.202],[3.369,3.364]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.380000005984,0.216000007181,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[366.562,234.665],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 342","np":4,"cix":2,"ix":342,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-2.008,6.288],[-0.053,-6.604],[2.007,-6.288],[0.052,6.604]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.380000005984,0.216000007181,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[370.166,235.216],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 343","np":4,"cix":2,"ix":343,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-4.738,31.241],[0,0],[0.747,-1.137],[3.297,-21.738],[-1.122,-3.907],[0,0]],"o":[[4.738,-31.241],[0,0],[-2.23,3.393],[-3.296,21.737],[0.376,1.31],[0,0]],"v":[[-2.773,-0.646],[8.13,-40.957],[5.202,-39.961],[-4.833,-0.961],[-6.816,39.271],[-4.315,41.098]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.564999988032,0.670999983245,0.62400004069,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[376.684,236.437],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 344","np":4,"cix":2,"ix":344,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-5.124,12.31],[0.689,-0.76],[2.484,-16.374],[-0.434,-0.933],[0,0]],"o":[[0,0],[0,0],[-0.691,0.762],[-2.483,16.373],[0.434,0.932],[-1.241,-13.285]],"v":[[-1.989,-0.544],[7.506,-39.145],[4.405,-38.273],[-4.423,-0.917],[-7.071,37.385],[-4.369,39.146]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.380000005984,0.216000007181,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[374.776,236.163],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 345","np":4,"cix":2,"ix":345,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-4.76,12.173],[0.623,-0.675],[2.041,-13.457],[-0.393,-0.831],[0,0]],"o":[[0,0],[0,0],[-0.622,0.676],[-2.041,13.456],[0.395,0.831],[-0.935,-13.046]],"v":[[-1.123,-0.437],[6.991,-34.723],[3.536,-33.905],[-4.173,-0.904],[-6.598,32.907],[-3.542,34.723]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.969000004787,0.216000007181,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[372.092,235.776],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 346","np":4,"cix":2,"ix":346,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-4.584,11.015],[0.613,-0.605],[1.854,-12.221],[-0.404,-0.761],[0,0]],"o":[[0,0],[0,0],[-0.611,0.606],[-1.853,12.221],[0.406,0.761],[-1.109,-11.889]],"v":[[-0.69,-0.419],[6.94,-31.518],[2.667,-30.949],[-3.741,-0.886],[-6.536,29.73],[-2.627,31.554]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.830999995213,0.172999991623,0.176000004189,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[369.039,235.357],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 347","np":4,"cix":2,"ix":347,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.2,0.03],[0.012,-0.075],[0,0],[-0.201,-0.03],[-0.011,0.075],[0,0]],"o":[[-0.201,-0.031],[0,0],[-0.011,0.075],[0.201,0.031],[0,0],[0.011,-0.075]],"v":[[0.281,-1.853],[-0.104,-1.772],[-0.624,1.661],[-0.281,1.853],[0.103,1.772],[0.624,-1.661]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.380000005984,0.216000007181,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[349.386,251.729],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 348","np":4,"cix":2,"ix":348,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.243,0.038],[0.024,-0.159],[0,0],[-0.243,-0.038],[-0.024,0.159],[0,0]],"o":[[-0.243,-0.037],[0,0],[-0.025,0.159],[0.243,0.037],[0,0],[0.025,-0.159]],"v":[[0.589,-3.885],[0.106,-3.664],[-0.985,3.529],[-0.589,3.885],[-0.105,3.664],[0.985,-3.53]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.380000005984,0.216000007181,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[348.809,251.641],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 349","np":4,"cix":2,"ix":349,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[1.001,0.153],[0.764,0.117],[0,0],[0,0],[0,0],[-0.762,-0.118],[-1.002,-0.154],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-1.002,-0.153],[-0.763,-0.117],[0,0],[0,0],[0,0],[0.764,0.117],[1.002,0.154],[0,0]],"v":[[14.155,-0.799],[15.576,-0.581],[15.138,2.296],[14.702,5.174],[13.281,4.956],[12.681,4.079],[-8.835,0.781],[-11.091,1.173],[-15.576,0.484],[-15.147,-2.344],[-14.717,-5.174],[-10.233,-4.486],[-8.195,-3.439],[13.323,-0.141]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.969000004787,0.216000007181,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[333.302,249.288],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 350","np":4,"cix":2,"ix":350,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.757,-2.967],[-1.602,2.605],[0.757,2.967],[1.601,-2.605]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.969000004787,0.216000007181,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[362.83,250.742],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 351","np":4,"cix":2,"ix":351,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-21.609,-4.707],[-22.023,-1.98],[21.609,4.706],[22.023,1.98]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.830999995213,0.172999991623,0.176000004189,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[340.424,247.309],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 352","np":4,"cix":2,"ix":352,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.2,0.031],[-0.011,0.075],[0,0],[-0.201,-0.031],[0.012,-0.075],[0,0]],"o":[[-0.201,-0.03],[0,0],[0.011,-0.075],[0.201,0.03],[0,0],[-0.012,0.075]],"v":[[-0.281,1.853],[-0.624,1.661],[-0.103,-1.772],[0.281,-1.853],[0.623,-1.661],[0.103,1.772]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.380000005984,0.216000007181,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[355.225,213.229],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 353","np":4,"cix":2,"ix":353,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.243,0.037],[-0.024,0.159],[0,0],[-0.243,-0.037],[0.025,-0.159],[0,0]],"o":[[-0.243,-0.037],[0,0],[0.024,-0.159],[0.243,0.038],[0,0],[-0.024,0.159]],"v":[[-0.59,3.885],[-0.986,3.53],[0.105,-3.664],[0.589,-3.885],[0.985,-3.529],[-0.106,3.664]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.380000005984,0.216000007181,0.156999999402,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[354.65,213.141],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 354","np":4,"cix":2,"ix":354,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[1.002,0.155],[0.764,0.117],[0,0],[0,0],[0,0],[-0.764,-0.117],[-1.002,-0.153],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-1.002,-0.153],[-0.763,-0.118],[0,0],[0,0],[0,0],[0.764,0.116],[1.002,0.154],[0,0]],"v":[[13.281,4.956],[14.702,5.174],[15.138,2.297],[15.575,-0.58],[14.154,-0.798],[13.322,-0.141],[-8.195,-3.439],[-10.233,-4.486],[-14.717,-5.174],[-15.147,-2.345],[-15.575,0.484],[-11.091,1.173],[-8.835,0.782],[12.682,4.079]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.969000004787,0.216000007181,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[339.142,210.788],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 355","np":4,"cix":2,"ix":355,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-1.602,2.605],[-0.757,-2.966],[1.602,-2.605],[0.756,2.966]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.969000004787,0.216000007181,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[367.766,218.199],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 356","np":4,"cix":2,"ix":356,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-22.023,-1.98],[-21.61,-4.707],[22.023,1.981],[21.61,4.707]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.830999995213,0.172999991623,0.176000004189,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[345.36,214.765],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 357","np":4,"cix":2,"ix":357,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-2.944,31.167],[6.43,-30.633],[2.943,-31.167],[-6.43,30.633]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.902000038297,0.2,0.204000001795,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[359.584,233.595],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 358","np":4,"cix":2,"ix":358,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-1.163,0.311],[-1.017,-0.645],[1.164,-0.311],[1.018,0.645]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.788000009574,0.626999978458,0.313999998803,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[362.181,235.895],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 359","np":4,"cix":2,"ix":359,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-1.163,0.311],[-1.018,-0.645],[1.163,-0.311],[1.019,0.645]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.788000009574,0.626999978458,0.313999998803,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[362.745,232.178],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 360","np":4,"cix":2,"ix":360,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.146,-0.117],[-0.092,-0.117],[0,0],[-0.145,0.116],[0.093,0.117],[0,0]],"o":[[-0.146,0.117],[0,0],[0.093,0.117],[0.147,-0.117],[0,0],[-0.093,-0.117]],"v":[[-6.637,-8.401],[-6.734,-7.977],[6.204,8.401],[6.637,8.402],[6.733,7.978],[-6.204,-8.4]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.838999968884,0.616000007181,0.294000004787,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[283.964,119.033],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 361","np":4,"cix":2,"ix":361,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.073,-0.058],[0.047,0.058],[0,0],[-0.073,0.059],[-0.046,-0.058],[0,0]],"o":[[-0.073,0.059],[0,0],[-0.046,-0.059],[0.073,-0.059],[0,0],[0.047,0.059]],"v":[[5.209,6.593],[4.992,6.593],[-5.258,-6.382],[-5.209,-6.594],[-4.993,-6.594],[5.257,6.382]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.838999968884,0.616000007181,0.294000004787,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[291.843,124.362],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 362","np":4,"cix":2,"ix":362,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.073,0.059],[0.046,0.059],[0,0],[0.074,-0.058],[-0.047,-0.058],[0,0]],"o":[[0.073,-0.058],[0,0],[-0.047,-0.059],[-0.073,0.059],[0,0],[0.047,0.058]],"v":[[3.613,4.572],[3.661,4.361],[-3.396,-4.573],[-3.613,-4.574],[-3.66,-4.362],[3.396,4.572]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.838999968884,0.616000007181,0.294000004787,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[288.573,114.486],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 363","np":4,"cix":2,"ix":363,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.11,0.087],[0.07,0.088],[0,0],[0.11,-0.088],[-0.07,-0.087],[0,0]],"o":[[0.109,-0.087],[0,0],[-0.069,-0.088],[-0.109,0.087],[0,0],[0.069,0.088]],"v":[[5.251,6.647],[5.323,6.329],[-4.927,-6.645],[-5.252,-6.646],[-5.324,-6.329],[4.926,6.646]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.838999968884,0.616000007181,0.294000004787,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[293.466,113.44],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 364","np":4,"cix":2,"ix":364,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.109,0.087],[-0.069,-0.088],[0,0],[0.11,-0.087],[0.07,0.088],[0,0]],"o":[[0.109,-0.087],[0,0],[0.07,0.087],[-0.11,0.088],[0,0],[-0.07,-0.088]],"v":[[-2.1,-2.659],[-1.776,-2.658],[2.173,2.341],[2.101,2.658],[1.776,2.657],[-2.172,-2.341]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.838999968884,0.616000007181,0.294000004787,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[302.492,119.675],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 365","np":4,"cix":2,"ix":365,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.109,-0.087],[0.07,0.088],[0,0],[-0.11,0.088],[-0.069,-0.088],[0,0]],"o":[[-0.11,0.088],[0,0],[-0.069,-0.089],[0.109,-0.087],[0,0],[0.07,0.089]],"v":[[5.419,6.859],[5.094,6.858],[-5.492,-6.541],[-5.419,-6.86],[-5.095,-6.859],[5.491,6.541]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.838999968884,0.616000007181,0.294000004787,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[300.296,111.976],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 366","np":4,"cix":2,"ix":366,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.109,-0.087],[-0.07,-0.088],[0,0],[-0.11,0.087],[0.069,0.088],[0,0]],"o":[[-0.109,0.087],[0,0],[0.07,0.088],[0.109,-0.087],[0,0],[-0.069,-0.088]],"v":[[-3.654,-4.626],[-3.727,-4.308],[3.331,4.625],[3.656,4.626],[3.728,4.308],[-3.331,-4.625]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.838999968884,0.616000007181,0.294000004787,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[306.496,113.269],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 367","np":4,"cix":2,"ix":367,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.073,-0.059],[0.047,0.059],[0,0],[-0.073,0.058],[-0.046,-0.059],[0,0]],"o":[[-0.073,0.058],[0,0],[-0.046,-0.059],[0.073,-0.058],[0,0],[0.047,0.059]],"v":[[2.899,3.669],[2.682,3.668],[-2.947,-3.457],[-2.898,-3.669],[-2.682,-3.668],[2.947,3.457]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.838999968884,0.616000007181,0.294000004787,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[306.605,107.805],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 368","np":4,"cix":2,"ix":368,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.109,-0.087],[0.069,0.088],[0,0],[-0.109,0.087],[-0.069,-0.089],[0,0]],"o":[[-0.109,0.087],[0,0],[-0.07,-0.088],[0.11,-0.088],[0,0],[0.07,0.088]],"v":[[2.94,3.722],[2.616,3.722],[-3.013,-3.403],[-2.941,-3.721],[-2.617,-3.721],[3.013,3.404]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.838999968884,0.616000007181,0.294000004787,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[312.688,107.718],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 369","np":4,"cix":2,"ix":369,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[16.782,-28.377],[-16.781,10.519],[-2.672,28.377]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.838999968884,0.616000007181,0.294000004787,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[309.207,129.334],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 370","np":4,"cix":2,"ix":370,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[30.833,-28.377],[-30.833,-25.055],[11.379,28.377]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.957000014361,0.713999968884,0.365000017952,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[295.155,129.334],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 371","np":4,"cix":2,"ix":371,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.12,-0.096],[-0.076,-0.097],[0,0],[-0.12,0.096],[0.076,0.097],[0,0]],"o":[[-0.12,0.095],[0,0],[0.076,0.096],[0.119,-0.095],[0,0],[-0.076,-0.096]],"v":[[-5.456,-6.907],[-5.534,-6.559],[5.103,6.905],[5.457,6.906],[5.535,6.559],[-5.103,-6.906]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.838999968884,0.616000007181,0.294000004787,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[304.841,147.293],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 372","np":4,"cix":2,"ix":372,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.061,-0.048],[0.038,0.048],[0,0],[-0.06,0.048],[-0.038,-0.049],[0,0]],"o":[[-0.06,0.047],[0,0],[-0.038,-0.048],[0.06,-0.048],[0,0],[0.038,0.048]],"v":[[4.282,5.421],[4.105,5.42],[-4.322,-5.246],[-4.282,-5.42],[-4.105,-5.419],[4.322,5.247]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.838999968884,0.616000007181,0.294000004787,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[311.311,151.68],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 373","np":4,"cix":2,"ix":373,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.06,0.048],[0.038,0.049],[0,0],[0.059,-0.048],[-0.038,-0.048],[0,0]],"o":[[0.061,-0.048],[0,0],[-0.038,-0.048],[-0.06,0.048],[0,0],[0.038,0.048]],"v":[[2.97,3.759],[3.01,3.585],[-2.792,-3.759],[-2.969,-3.76],[-3.009,-3.586],[2.793,3.758]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.838999968884,0.616000007181,0.294000004787,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[308.613,143.568],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 374","np":4,"cix":2,"ix":374,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.09,0.072],[0.057,0.073],[0,0],[0.09,-0.072],[-0.058,-0.073],[0,0]],"o":[[0.09,-0.071],[0,0],[-0.058,-0.073],[-0.09,0.071],[0,0],[0.058,0.072]],"v":[[4.317,5.464],[4.376,5.203],[-4.05,-5.463],[-4.317,-5.464],[-4.375,-5.203],[4.05,5.463]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.838999968884,0.616000007181,0.294000004787,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[312.624,142.718],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 375","np":4,"cix":2,"ix":375,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.09,0.072],[-0.057,-0.072],[0,0],[0.09,-0.072],[0.056,0.072],[0,0]],"o":[[0.09,-0.072],[0,0],[0.056,0.073],[-0.09,0.071],[0,0],[-0.056,-0.073]],"v":[[-1.726,-2.186],[-1.46,-2.184],[1.786,1.924],[1.727,2.187],[1.462,2.185],[-1.786,-1.924]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.838999968884,0.616000007181,0.294000004787,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[320.036,147.849],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 376","np":4,"cix":2,"ix":376,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.09,-0.071],[0.058,0.072],[0,0],[-0.09,0.072],[-0.056,-0.073],[0,0]],"o":[[-0.09,0.072],[0,0],[-0.056,-0.072],[0.09,-0.072],[0,0],[0.056,0.073]],"v":[[4.454,5.639],[4.188,5.638],[-4.515,-5.378],[-4.455,-5.639],[-4.19,-5.637],[4.514,5.378]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.838999968884,0.616000007181,0.294000004787,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[318.222,141.527],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 377","np":4,"cix":2,"ix":377,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.09,-0.071],[-0.057,-0.073],[0,0],[-0.09,0.072],[0.057,0.073],[0,0]],"o":[[-0.09,0.072],[0,0],[0.057,0.072],[0.09,-0.071],[0,0],[-0.058,-0.072]],"v":[[-3.004,-3.804],[-3.064,-3.542],[2.738,3.801],[3.004,3.802],[3.064,3.541],[-2.737,-3.803]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.838999968884,0.616000007181,0.294000004787,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[323.309,142.599],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 378","np":4,"cix":2,"ix":378,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.06,-0.048],[0.038,0.047],[0,0],[-0.06,0.048],[-0.038,-0.049],[0,0]],"o":[[-0.061,0.048],[0,0],[-0.039,-0.049],[0.06,-0.048],[0,0],[0.038,0.049]],"v":[[2.384,3.016],[2.206,3.016],[-2.422,-2.842],[-2.383,-3.016],[-2.206,-3.015],[2.422,2.842]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.838999968884,0.616000007181,0.294000004787,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[323.389,138.115],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 379","np":4,"cix":2,"ix":379,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.09,-0.072],[0.058,0.072],[0,0],[-0.09,0.072],[-0.057,-0.072],[0,0]],"o":[[-0.089,0.072],[0,0],[-0.056,-0.073],[0.09,-0.071],[0,0],[0.056,0.073]],"v":[[2.417,3.059],[2.151,3.059],[-2.477,-2.799],[-2.417,-3.061],[-2.151,-3.06],[2.477,2.798]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.838999968884,0.616000007181,0.294000004787,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[328.377,138.054],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 380","np":4,"cix":2,"ix":380,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[13.729,-23.276],[-13.729,8.593],[-2.13,23.275]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.838999968884,0.616000007181,0.294000004787,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[325.543,155.801],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 381","np":4,"cix":2,"ix":381,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[25.281,-23.276],[-25.281,-20.651],[9.422,23.275]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.957000014361,0.713999968884,0.365000017952,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[313.991,155.801],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 382","np":4,"cix":2,"ix":382,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.216,0.812],[0.807,-0.216],[0,0]],"o":[[0,0],[0.807,-0.217],[-0.217,-0.812],[0,0],[0,0]],"v":[[-0.587,1.668],[0.085,1.488],[1.155,-0.375],[-0.699,-1.452],[-1.371,-1.271]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.435000011968,0.603999956916,0.620000023935,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[403.621,156.959],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 383","np":4,"cix":2,"ix":383,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.347,6.395],[-3.484,-5.365],[0.347,-6.394],[3.484,5.366]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.365000017952,0.552999997606,0.569000004787,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[351.999,170.762],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 384","np":4,"cix":2,"ix":384,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.465,2.385],[-1.59,-1.833],[0.465,-2.385],[1.59,1.834]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.325,0.493999974868,0.510000011968,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[401.614,157.434],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 385","np":4,"cix":2,"ix":385,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[0.44,5.775],[-2.495,-5.223],[-0.439,-5.775],[2.495,5.223]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.325,0.493999974868,0.510000011968,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[354.942,169.971],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 386","np":4,"cix":2,"ix":386,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[1.713,10.552],[-3.768,-10],[-1.714,-10.552],[3.768,10]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.325,0.493999974868,0.510000011968,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[338.772,174.315],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 387","np":4,"cix":2,"ix":387,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-53.848,15.365],[0,0],[0,0],[0,0],[0,0],[0,0],[8.542,-5.382],[0,0]],"o":[[0,0],[0,0],[-54.296,13.685],[0,0],[10.078,0.379],[0,0],[0,0],[0,0]],"v":[[32.053,-10.041],[31.604,-11.721],[31.156,-13.4],[-32.052,-3.88],[-30.35,1.063],[2.001,-3.77],[-28.43,8.264],[-27.443,13.4]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.435000011968,0.603999956916,0.620000023935,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[368.983,169.431],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 388","np":4,"cix":2,"ix":388,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.087,0.328],[0,0],[0.326,-0.088],[0,0]],"o":[[0,0],[0.327,-0.087],[0,0],[-0.087,-0.328],[0,0],[0,0]],"v":[[0.283,3.88],[1.179,3.639],[1.612,2.886],[-0.054,-3.357],[-0.803,-3.792],[-1.699,-3.552]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.325,0.493999974868,0.510000011968,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[325.957,191.789],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 389","np":4,"cix":2,"ix":389,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0.087,0.328],[0,0],[0.326,-0.088],[0,0]],"o":[[0,0],[0.327,-0.087],[0,0],[-0.087,-0.328],[0,0],[0,0]],"v":[[0.283,3.88],[1.179,3.639],[1.612,2.886],[-0.054,-3.357],[-0.803,-3.792],[-1.699,-3.552]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.325,0.493999974868,0.510000011968,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[318.986,165.65],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 390","np":4,"cix":2,"ix":390,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[8.104,2.135],[0,0],[-2.291,-8.591],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[2.291,8.59],[0,0],[5.957,-5.913]],"v":[[10.713,6.111],[8.044,-3.893],[5.376,-13.898],[-10.713,-15.985],[-9.118,-10.004],[2.42,-2.382],[-3.781,10.005],[-2.185,15.986]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.435000011968,0.603999956916,0.620000023935,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[329.7,178.485],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 391","np":4,"cix":2,"ix":391,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.037,0.137],[-0.137,0.037],[0,0],[-0.037,-0.137],[0.135,-0.036]],"o":[[-0.136,0.037],[-0.037,-0.136],[0,0],[0.135,-0.037],[0.036,0.137],[0,0]],"v":[[-4.193,1.391],[-4.505,1.21],[-4.325,0.896],[4.194,-1.391],[4.506,-1.21],[4.326,-0.897]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.325,0.493999974868,0.510000011968,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[405.537,156.38],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 392","np":4,"cix":2,"ix":392,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[0.716,0.496],[-0.456,0.745],[-0.715,-0.496],[0.457,-0.745]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[194.855,50.699],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 393","np":4,"cix":2,"ix":393,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[0.715,0.496],[-0.457,0.745],[-0.716,-0.496],[0.456,-0.745]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[192.387,51.221],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 394","np":4,"cix":2,"ix":394,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[0.715,0.496],[-0.457,0.745],[-0.716,-0.496],[0.456,-0.745]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[189.919,51.742],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 395","np":4,"cix":2,"ix":395,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[0.715,0.496],[-0.457,0.745],[-0.716,-0.497],[0.456,-0.745]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[187.451,52.263],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 396","np":4,"cix":2,"ix":396,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[0.715,0.496],[-0.457,0.745],[-0.716,-0.496],[0.456,-0.745]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[184.982,52.784],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 397","np":4,"cix":2,"ix":397,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[0.716,0.496],[-0.456,0.745],[-0.716,-0.497],[0.457,-0.745]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[182.514,53.306],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 398","np":4,"cix":2,"ix":398,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[0.716,0.496],[-0.456,0.745],[-0.715,-0.496],[0.457,-0.745]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[180.046,53.827],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 399","np":4,"cix":2,"ix":399,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[8.268,-1.287],[-8.084,2.166],[-8.268,1.287],[8.084,-2.166]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[187.85,54.178],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 400","np":4,"cix":2,"ix":400,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[8.261,-0.393],[-7.721,2.982],[-8.261,0.393],[7.72,-2.982]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.630999995213,0.528999956916,0.455000005984,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[187.851,54.178],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 401","np":4,"cix":2,"ix":401,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[3.869,3.23],[-2.248,4.523],[-3.868,-3.231],[2.248,-4.523]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.322000002394,0.26699999641,0.231000010173,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[188.814,58.788],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 402","np":4,"cix":2,"ix":402,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[7.581,-0.292],[-7.057,2.799],[-7.581,0.291],[7.057,-2.799]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.722000002394,0.62400004069,0.54900004069,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[188.847,58.946],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 403","np":4,"cix":2,"ix":403,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[8.272,3.015],[-6.366,6.106],[-8.272,-3.015],[6.365,-6.106]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[188.671,58.103],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 404","np":4,"cix":2,"ix":404,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-6.038,0.608],[-6.04,1.838],[6.039,-0.712],[5.546,-1.838]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[192.11,73.996],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 405","np":4,"cix":2,"ix":405,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-7.317,0.878],[-7.318,2.108],[7.318,-0.982],[6.825,-2.108]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[193.382,80.083],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 406","np":4,"cix":2,"ix":406,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-6.678,0.743],[-6.679,1.973],[6.679,-0.847],[6.185,-1.973]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[192.746,77.04],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 407","np":4,"cix":2,"ix":407,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-4.12,0.203],[-4.121,1.433],[4.121,-0.307],[3.628,-1.433]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[190.202,64.866],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 408","np":4,"cix":2,"ix":408,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-5.399,0.473],[-5.4,1.703],[5.4,-0.577],[4.906,-1.703]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[191.474,70.953],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 409","np":4,"cix":2,"ix":409,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-4.759,0.338],[-4.76,1.568],[4.76,-0.442],[4.266,-1.568]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[190.838,67.91],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 410","np":4,"cix":2,"ix":410,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-7.957,1.013],[-7.958,2.243],[7.958,-1.117],[7.464,-2.243]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[194.018,83.127],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 411","np":4,"cix":2,"ix":411,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[12.434,-2.063],[11.94,-3.188],[-12.434,1.959],[-12.435,3.188]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[198.47,104.43],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 412","np":4,"cix":2,"ix":412,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-11.794,1.823],[-11.795,3.053],[11.794,-1.927],[11.3,-3.053]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[197.835,101.387],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 413","np":4,"cix":2,"ix":413,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-11.154,1.688],[-11.155,2.919],[11.155,-1.792],[10.661,-2.919]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[197.198,98.343],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 414","np":4,"cix":2,"ix":414,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-8.596,1.148],[-8.597,2.378],[8.597,-1.252],[8.104,-2.378]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[194.654,86.17],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 415","np":4,"cix":2,"ix":415,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-10.515,1.553],[-10.516,2.783],[10.516,-1.658],[10.022,-2.783]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[196.562,95.3],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 416","np":4,"cix":2,"ix":416,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-9.236,1.283],[-9.237,2.513],[9.237,-1.388],[8.743,-2.513]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[195.291,89.214],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 417","np":4,"cix":2,"ix":417,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-9.875,1.418],[-9.876,2.648],[9.876,-1.522],[9.383,-2.648]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[195.926,92.257],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 418","np":4,"cix":2,"ix":418,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-5.638,-23.681],[-9.178,-22.932],[-12.719,-22.185],[-12.768,23.681],[0,20.984],[12.768,18.289]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.630999995213,0.528999956916,0.455000005984,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[198.802,85.596],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 419","np":4,"cix":2,"ix":419,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-4.355,-24.304],[-9.178,-23.286],[-14.001,-22.267],[-17.392,24.304],[0,20.631],[17.393,16.959]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.722000002394,0.62400004069,0.54900004069,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[198.802,85.949],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 420","np":4,"cix":2,"ix":420,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[14.949,-1.88],[-14.438,4.326],[-14.949,1.88],[14.438,-4.326]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.630999995213,0.528999956916,0.455000005984,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[189.88,63.886],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 421","np":4,"cix":2,"ix":421,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[15.349,0.034],[-14.038,6.24],[-15.349,-0.034],[14.038,-6.24]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[190.279,65.801],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 422","np":4,"cix":2,"ix":422,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[19.908,-2.927],[-19.396,5.373],[-19.908,2.927],[19.396,-5.373]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.630999995213,0.528999956916,0.455000005984,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[191.191,70.16],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 423","np":4,"cix":2,"ix":423,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[20.266,-1.215],[-19.038,7.085],[-20.266,1.215],[19.038,-7.085]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[191.633,72.276],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 424","np":4,"cix":2,"ix":424,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[23.637,-3.715],[-23.127,6.16],[-23.637,3.715],[23.126,-6.16]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.630999995213,0.528999956916,0.455000005984,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[192.502,76.434],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 425","np":4,"cix":2,"ix":425,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[23.995,-2.003],[-22.768,7.872],[-23.995,2.003],[22.768,-7.872]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[192.944,78.55],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 426","np":4,"cix":2,"ix":426,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[27.52,-4.534],[-27.009,6.98],[-27.52,4.535],[27.008,-6.98]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.630999995213,0.528999956916,0.455000005984,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[193.813,82.708],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 427","np":4,"cix":2,"ix":427,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[27.878,-2.823],[-26.65,8.693],[-27.878,2.823],[26.65,-8.693]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[194.255,84.824],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 428","np":4,"cix":2,"ix":428,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[31.832,-5.445],[-31.321,7.891],[-31.832,5.445],[31.321,-7.891]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.630999995213,0.528999956916,0.455000005984,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[195.124,88.982],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 429","np":4,"cix":2,"ix":429,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[32.189,-3.733],[-30.963,9.603],[-32.189,3.733],[30.962,-9.603]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[195.566,91.098],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 430","np":4,"cix":2,"ix":430,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[35.752,-6.273],[-35.241,8.718],[-35.752,6.272],[35.24,-8.718]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.630999995213,0.528999956916,0.455000005984,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[196.436,95.256],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 431","np":4,"cix":2,"ix":431,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[36.109,-4.561],[-34.883,10.431],[-36.11,4.561],[34.882,-10.431]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[196.878,97.372],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 432","np":4,"cix":2,"ix":432,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[40.16,-7.204],[-39.65,9.65],[-40.161,7.203],[39.648,-9.65]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.630999995213,0.528999956916,0.455000005984,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[197.747,101.53],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 433","np":4,"cix":2,"ix":433,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[40.518,-5.492],[-39.292,11.362],[-40.519,5.491],[39.291,-11.362]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.490000017952,0.411999990426,0.352999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[198.189,103.646],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 434","np":4,"cix":2,"ix":434,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.113,0.029],[-0.028,-0.114],[0,0],[0.114,-0.027],[0.027,0.114]],"o":[[-0.027,-0.114],[0.115,-0.027],[0,0],[0.028,0.114],[-0.114,0.028],[0,0]],"v":[[-0.977,-3.079],[-0.822,-3.339],[-0.564,-3.182],[0.975,3.079],[0.82,3.337],[0.563,3.182]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.569000004787,0.470999983245,0.317999985639,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[272.868,377.794],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 435","np":4,"cix":2,"ix":435,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.114,0.029],[-0.028,-0.114],[0,0],[0.113,-0.028],[0.028,0.114]],"o":[[-0.028,-0.114],[0.115,-0.028],[0,0],[0.028,0.115],[-0.114,0.028],[0,0]],"v":[[-0.976,-3.079],[-0.821,-3.338],[-0.563,-3.182],[0.976,3.079],[0.821,3.338],[0.563,3.182]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.569000004787,0.470999983245,0.317999985639,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[274.348,377.426],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 436","np":4,"cix":2,"ix":436,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.114,0.029],[-0.027,-0.114],[0,0],[0.113,-0.028],[0.028,0.114]],"o":[[-0.028,-0.114],[0.115,-0.028],[0,0],[0.027,0.114],[-0.114,0.028],[0,0]],"v":[[-0.975,-3.079],[-0.82,-3.338],[-0.564,-3.182],[0.977,3.08],[0.822,3.338],[0.563,3.183]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.569000004787,0.470999983245,0.317999985639,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[275.828,377.058],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 437","np":4,"cix":2,"ix":437,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.114,0.029],[-0.028,-0.114],[0,0],[0.114,-0.028],[0.028,0.114]],"o":[[-0.028,-0.115],[0.114,-0.028],[0,0],[0.028,0.114],[-0.113,0.028],[0,0]],"v":[[-0.975,-3.079],[-0.82,-3.338],[-0.563,-3.182],[0.976,3.079],[0.821,3.338],[0.564,3.182]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.569000004787,0.470999983245,0.317999985639,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[277.308,376.691],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 438","np":4,"cix":2,"ix":438,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.114,0.029],[-0.028,-0.114],[0,0],[0.114,-0.028],[0.028,0.114]],"o":[[-0.028,-0.114],[0.114,-0.028],[0,0],[0.028,0.114],[-0.114,0.028],[0,0]],"v":[[-0.975,-3.079],[-0.82,-3.338],[-0.564,-3.182],[0.975,3.08],[0.82,3.338],[0.563,3.183]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.569000004787,0.470999983245,0.317999985639,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[278.789,376.323],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 439","np":4,"cix":2,"ix":439,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.113,0.029],[-0.028,-0.115],[0,0],[0.114,-0.028],[0.028,0.114]],"o":[[-0.028,-0.115],[0.115,-0.028],[0,0],[0.028,0.114],[-0.114,0.028],[0,0]],"v":[[-0.976,-3.079],[-0.821,-3.338],[-0.563,-3.182],[0.976,3.079],[0.821,3.338],[0.563,3.182]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.569000004787,0.470999983245,0.317999985639,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[280.269,375.955],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 440","np":4,"cix":2,"ix":440,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.084,0.343],[-0.34,0.084],[0,0],[-0.084,-0.343],[0.339,-0.084],[0,0]],"o":[[-0.085,-0.342],[0,0],[0.341,-0.084],[0.084,0.341],[0,0],[-0.34,0.084]],"v":[[-0.97,0.241],[-0.507,-0.531],[0.203,-0.707],[0.971,-0.241],[0.508,0.53],[-0.202,0.707]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.752999997606,0.62400004069,0.416000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[281.451,396.734],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 441","np":4,"cix":2,"ix":441,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[-2.801,8.642],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[6.483,6.337]],"v":[[3.407,8.54],[3.849,8.43],[4.292,8.319],[5.288,-8.54],[0.001,-7.227],[-5.287,-5.913]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[277.615,388.357],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 442","np":4,"cix":2,"ix":442,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[-2.655,4.555],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[4.46,2.788]],"v":[[-3.119,5.734],[1.911,4.486],[2.02,4.458],[7.05,3.21],[8.905,-5.734],[0.055,-3.536],[-0.055,-3.508],[-8.905,-1.31]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[273.524,368.015],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 443","np":4,"cix":2,"ix":443,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-8.516,1.53],[8.245,-2.633],[8.515,-1.53],[-8.245,2.634]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.811999990426,0.709999952129,0.552999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[273.388,363.942],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 444","np":4,"cix":2,"ix":444,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.149,0.037],[-0.037,-0.149],[0,0],[0.149,-0.037],[0.037,0.15]],"o":[[-0.037,-0.15],[0.15,-0.037],[0,0],[0.037,0.151],[-0.151,0.037],[0,0]],"v":[[-0.859,-2.327],[-0.656,-2.666],[-0.318,-2.462],[0.859,2.328],[0.656,2.667],[0.318,2.463]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.569000004787,0.470999983245,0.317999985639,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[265.898,361.511],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 445","np":4,"cix":2,"ix":445,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.149,0.037],[-0.037,-0.15],[0,0],[0.149,-0.037],[0.037,0.15]],"o":[[-0.036,-0.15],[0.15,-0.037],[0,0],[0.036,0.151],[-0.15,0.037],[0,0]],"v":[[-0.86,-2.328],[-0.656,-2.667],[-0.318,-2.463],[0.86,2.327],[0.656,2.666],[0.318,2.461]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.569000004787,0.470999983245,0.317999985639,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[267.522,361.108],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 446","np":4,"cix":2,"ix":446,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.149,0.037],[-0.037,-0.15],[0,0],[0.149,-0.037],[0.037,0.15]],"o":[[-0.037,-0.15],[0.151,-0.037],[0,0],[0.037,0.15],[-0.15,0.037],[0,0]],"v":[[-0.859,-2.327],[-0.657,-2.667],[-0.319,-2.462],[0.859,2.328],[0.655,2.667],[0.317,2.462]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.569000004787,0.470999983245,0.317999985639,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[269.147,360.704],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 447","np":4,"cix":2,"ix":447,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.149,0.037],[-0.036,-0.15],[0,0],[0.15,-0.037],[0.037,0.15]],"o":[[-0.037,-0.15],[0.15,-0.037],[0,0],[0.037,0.151],[-0.15,0.037],[0,0]],"v":[[-0.859,-2.327],[-0.655,-2.667],[-0.318,-2.462],[0.86,2.327],[0.656,2.667],[0.319,2.462]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.569000004787,0.470999983245,0.317999985639,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[270.771,360.301],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 448","np":4,"cix":2,"ix":448,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.149,0.037],[-0.037,-0.15],[0,0],[0.149,-0.037],[0.037,0.15]],"o":[[-0.037,-0.15],[0.15,-0.037],[0,0],[0.037,0.151],[-0.15,0.037],[0,0]],"v":[[-0.859,-2.327],[-0.655,-2.667],[-0.317,-2.462],[0.86,2.327],[0.657,2.667],[0.319,2.462]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.569000004787,0.470999983245,0.317999985639,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[272.395,359.898],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 449","np":4,"cix":2,"ix":449,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.149,0.037],[-0.037,-0.15],[0,0],[0.149,-0.037],[0.037,0.15]],"o":[[-0.037,-0.149],[0.15,-0.037],[0,0],[0.037,0.151],[-0.15,0.037],[0,0]],"v":[[-0.859,-2.328],[-0.656,-2.667],[-0.318,-2.462],[0.86,2.327],[0.656,2.667],[0.318,2.462]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.569000004787,0.470999983245,0.317999985639,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[274.02,359.494],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 450","np":4,"cix":2,"ix":450,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.15,0.037],[-0.037,-0.15],[0,0],[0.149,-0.037],[0.036,0.15]],"o":[[-0.037,-0.15],[0.15,-0.037],[0,0],[0.037,0.151],[-0.15,0.037],[0,0]],"v":[[-0.859,-2.327],[-0.655,-2.666],[-0.318,-2.461],[0.86,2.328],[0.656,2.667],[0.319,2.463]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.569000004787,0.470999983245,0.317999985639,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[275.644,359.091],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 451","np":4,"cix":2,"ix":451,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.149,0.037],[-0.036,-0.15],[0,0],[0.149,-0.037],[0.037,0.15]],"o":[[-0.037,-0.15],[0.15,-0.037],[0,0],[0.037,0.151],[-0.151,0.037],[0,0]],"v":[[-0.859,-2.328],[-0.656,-2.667],[-0.319,-2.463],[0.859,2.327],[0.656,2.666],[0.318,2.461]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.569000004787,0.470999983245,0.317999985639,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[277.268,358.687],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 452","np":4,"cix":2,"ix":452,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.149,0.037],[-0.037,-0.15],[0,0],[0.149,-0.037],[0.037,0.15]],"o":[[-0.036,-0.15],[0.15,-0.037],[0,0],[0.036,0.15],[-0.15,0.037],[0,0]],"v":[[-0.86,-2.327],[-0.656,-2.667],[-0.318,-2.462],[0.86,2.328],[0.656,2.667],[0.318,2.462]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.569000004787,0.470999983245,0.317999985639,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[278.892,358.284],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 453","np":4,"cix":2,"ix":453,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.06,-0.103],[0.102,-0.06],[0,0],[0.059,0.103],[-0.103,0.06]],"o":[[0.103,-0.06],[0.059,0.104],[0,0],[-0.103,0.06],[-0.06,-0.103],[0,0]],"v":[[0.706,-0.659],[0.999,-0.58],[0.921,-0.285],[-0.706,0.659],[-0.999,0.581],[-0.921,0.286]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[269.049,349.477],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 454","np":4,"cix":2,"ix":454,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.097,0.069],[-0.068,-0.098],[0,0],[0.097,-0.069],[0.067,0.098]],"o":[[-0.067,-0.098],[0.097,-0.068],[0,0],[0.067,0.098],[-0.098,0.068],[0,0]],"v":[[-0.715,-0.649],[-0.663,-0.95],[-0.363,-0.897],[0.716,0.649],[0.663,0.95],[0.363,0.897]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[270.401,349.776],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 455","np":4,"cix":2,"ix":455,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.041,0.026],[-0.026,0.041],[0,0],[-0.041,-0.024],[0.025,-0.042]],"o":[[-0.025,0.041],[-0.041,-0.024],[0,0],[0.026,-0.042],[0.041,0.025],[0,0]],"v":[[-0.226,0.547],[-0.346,0.576],[-0.375,0.456],[0.227,-0.548],[0.347,-0.578],[0.377,-0.457]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[268.029,351.99],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 456","np":4,"cix":2,"ix":456,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.042,0.026],[-0.026,0.041],[0,0],[-0.041,-0.025],[0.024,-0.042]],"o":[[-0.024,0.041],[-0.041,-0.025],[0,0],[0.026,-0.042],[0.042,0.025],[0,0]],"v":[[-0.227,0.548],[-0.347,0.577],[-0.376,0.457],[0.226,-0.547],[0.346,-0.577],[0.377,-0.456]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[271.593,346.055],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 457","np":4,"cix":2,"ix":457,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.025,0.042],[-0.041,-0.026],[0,0],[0.026,-0.042],[0.042,0.026]],"o":[[-0.042,-0.025],[0.025,-0.041],[0,0],[0.041,0.025],[-0.024,0.042],[0,0]],"v":[[-0.544,-0.227],[-0.574,-0.348],[-0.454,-0.377],[0.545,0.228],[0.574,0.349],[0.454,0.378]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[266.86,347.231],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 458","np":4,"cix":2,"ix":458,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.025,0.042],[-0.041,-0.026],[0,0],[0.026,-0.041],[0.042,0.025]],"o":[[-0.041,-0.025],[0.025,-0.041],[0,0],[0.041,0.024],[-0.024,0.042],[0,0]],"v":[[-0.546,-0.228],[-0.575,-0.349],[-0.455,-0.378],[0.544,0.228],[0.573,0.348],[0.453,0.379]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[272.763,350.813],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 459","np":4,"cix":2,"ix":459,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.01,0.046],[-0.047,0.012],[0,0],[-0.011,-0.047],[0.047,-0.012]],"o":[[-0.047,0.012],[-0.012,-0.047],[0,0],[0.047,-0.012],[0.012,0.047],[0,0]],"v":[[-0.546,0.226],[-0.651,0.162],[-0.588,0.055],[0.545,-0.226],[0.65,-0.162],[0.587,-0.055]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[266.464,349.854],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 460","np":4,"cix":2,"ix":460,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.011,0.047],[-0.047,0.011],[0,0],[-0.011,-0.047],[0.047,-0.012]],"o":[[-0.047,0.012],[-0.012,-0.047],[0,0],[0.048,-0.011],[0.012,0.047],[0,0]],"v":[[-0.545,0.225],[-0.651,0.161],[-0.587,0.055],[0.545,-0.227],[0.651,-0.163],[0.587,-0.056]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[273.158,348.191],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 461","np":4,"cix":2,"ix":461,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.046,0.011],[-0.011,-0.048],[0,0],[0.047,-0.012],[0.012,0.047]],"o":[[-0.012,-0.047],[0.047,-0.012],[0,0],[0.012,0.048],[-0.046,0.012],[0,0]],"v":[[-0.224,-0.548],[-0.161,-0.654],[-0.056,-0.59],[0.224,0.548],[0.16,0.654],[0.055,0.591]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[268.984,345.658],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 462","np":4,"cix":2,"ix":462,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.046,0.011],[-0.012,-0.047],[0,0],[0.047,-0.012],[0.012,0.047]],"o":[[-0.011,-0.047],[0.047,-0.012],[0,0],[0.012,0.047],[-0.047,0.012],[0,0]],"v":[[-0.225,-0.548],[-0.161,-0.654],[-0.055,-0.59],[0.225,0.549],[0.161,0.655],[0.055,0.591]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[270.639,352.387],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 463","np":4,"cix":2,"ix":463,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.609,2.478],[-2.463,0.613],[-0.61,-2.477],[2.464,-0.612]],"o":[[-0.608,-2.477],[2.464,-0.612],[0.608,2.477],[-2.463,0.612]],"v":[[-4.462,1.108],[-1.103,-4.485],[4.462,-1.108],[1.102,4.485]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.969000004787,0.933000033509,0.882000014361,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[269.73,349.055],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 464","np":4,"cix":2,"ix":464,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.691,2.813],[-2.797,0.696],[-0.692,-2.812],[2.798,-0.695]],"o":[[-0.691,-2.813],[2.798,-0.695],[0.691,2.813],[-2.797,0.695]],"v":[[-5.066,1.259],[-1.252,-5.092],[5.066,-1.258],[1.252,5.092]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[269.729,349.055],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 465","np":4,"cix":2,"ix":465,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-4.06,8.892],[7.714,5.967],[4.06,-8.892],[-7.714,-5.967]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.811999990426,0.709999952129,0.552999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[269.729,349.056],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 466","np":4,"cix":2,"ix":466,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-5.18,9.171],[8.833,5.691],[5.179,-9.17],[-8.833,-5.689]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.752999997606,0.62400004069,0.416000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[269.73,349.055],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 467","np":4,"cix":2,"ix":467,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-6.22,9.428],[9.873,5.431],[6.219,-9.428],[-9.873,-5.431]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.811999990426,0.709999952129,0.552999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[269.73,349.055],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 468","np":4,"cix":2,"ix":468,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-4.715,2.687],[5.417,0.17],[4.715,-2.687],[-5.417,-0.17]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.811999990426,0.709999952129,0.552999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[277.264,379.702],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 469","np":4,"cix":2,"ix":469,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-3.914,5.941],[6.217,3.424],[3.914,-5.941],[-6.217,-3.424]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.752999997606,0.62400004069,0.416000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[276.463,376.448],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 470","np":4,"cix":2,"ix":470,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-6.924,6.565],[9.169,2.568],[6.925,-6.564],[-9.168,-2.566]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.752999997606,0.62400004069,0.416000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[272.165,358.96],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 471","np":4,"cix":2,"ix":471,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-7.003,9.623],[10.655,5.236],[7.002,-9.624],[-10.655,-5.237]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.752999997606,0.62400004069,0.416000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[269.73,349.056],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 472","np":4,"cix":2,"ix":472,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-9.001,1.492],[8.657,-2.893],[9.001,-1.492],[-8.656,2.893]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.630999995213,0.510000011968,0.313999998803,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[267.73,340.925],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 473","np":4,"cix":2,"ix":473,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-8.598,1.876],[8.478,-2.366],[8.598,-1.875],[-8.478,2.366]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.477999997606,0.40800000359,0.344999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[265.541,332.02],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 474","np":4,"cix":2,"ix":474,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-8.598,1.876],[8.478,-2.366],[8.598,-1.875],[-8.477,2.366]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.477999997606,0.40800000359,0.344999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[262.068,317.892],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 475","np":4,"cix":2,"ix":475,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-4.693,-18.09],[-4.229,-18.205],[4.694,18.089],[4.229,18.205]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[258.47,323.303],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 476","np":4,"cix":2,"ix":476,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-4.694,-18.09],[-4.229,-18.205],[4.694,18.09],[4.229,18.205]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[260.328,322.841],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 477","np":4,"cix":2,"ix":477,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-4.693,-18.089],[-4.228,-18.204],[4.694,18.09],[4.23,18.204]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[262.186,322.38],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 478","np":4,"cix":2,"ix":478,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-4.694,-18.09],[-4.229,-18.205],[4.694,18.09],[4.229,18.205]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[264.044,321.918],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 479","np":4,"cix":2,"ix":479,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-4.693,-18.089],[-4.228,-18.205],[4.694,18.09],[4.229,18.205]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[265.901,321.457],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 480","np":4,"cix":2,"ix":480,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-4.693,-18.09],[-4.228,-18.205],[4.694,18.089],[4.23,18.205]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[267.76,320.995],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 481","np":4,"cix":2,"ix":481,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-5.493,0.953],[5.302,-1.729],[5.493,-0.951],[-5.302,1.73]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[258.275,302.464],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 482","np":4,"cix":2,"ix":482,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-10.802,-18.167],[1.14,-21.134],[10.802,18.167],[-1.141,21.134]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.811999990426,0.709999952129,0.552999997606,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[262.9,321.275],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 483","np":4,"cix":2,"ix":483,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-10.049,0.893],[9.305,-3.915],[10.048,-0.894],[-9.307,3.914]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[258.287,302.509],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 484","np":4,"cix":2,"ix":484,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-13.133,-16.569],[3.943,-20.811],[13.133,16.569],[-3.944,20.811]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.752999997606,0.62400004069,0.416000007181,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[263.136,322.235],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 485","np":4,"cix":2,"ix":485,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.017,0.073],[-0.072,0.018],[0,0],[-0.019,-0.072],[0.072,-0.018]],"o":[[-0.071,0.018],[-0.018,-0.072],[0,0],[0.072,-0.017],[0.017,0.072],[0,0]],"v":[[-0.716,0.316],[-0.878,0.217],[-0.78,0.055],[0.717,-0.318],[0.88,-0.219],[0.781,-0.056]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[281.947,398.753],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 486","np":4,"cix":2,"ix":486,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.073,0.018],[-0.018,-0.073],[0,0],[0.072,-0.018],[0.018,0.072]],"o":[[-0.018,-0.072],[0.071,-0.018],[0,0],[0.019,0.072],[-0.073,0.017],[0,0]],"v":[[-0.867,-2.958],[-0.768,-3.122],[-0.607,-3.023],[0.866,2.973],[0.77,3.136],[0.607,3.037]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.255000005984,0.234999997008,0.219999994016,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[281.5,396.928],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 487","np":4,"cix":2,"ix":487,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-10.651,3.533],[1.644,9.921],[10.651,-0.57],[-7.347,-9.921]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[165.606,301.3],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 488","np":4,"cix":2,"ix":488,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-11.465,2.06],[4.32,10.259],[11.465,-0.909],[-6.533,-10.26]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.458999992819,0.328999986836,0.161000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[164.793,301.639],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 489","np":4,"cix":2,"ix":489,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.253,0.198],[-0.389,-0.126],[-0.526,-0.35],[1.083,-0.046],[0.665,0.473],[0.23,-0.006],[-0.022,0.191]],"o":[[0.253,-0.198],[0.389,0.126],[0.527,0.349],[0,0],[0,0],[-0.231,0.007],[0.023,-0.19]],"v":[[-1.934,-0.974],[-0.74,-1.089],[0.986,-0.421],[1.204,1.215],[-1.285,-0.029],[-1.872,0.427],[-2.266,-0.182]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[111.566,344.783],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 490","np":4,"cix":2,"ix":490,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-2.374,0.814],[0,0],[0,0],[-2.154,0.469],[-0.197,-0.101],[0,0],[0,0],[0,0],[0.995,-0.357],[0.045,0.023],[0.413,0.215],[0,0]],"o":[[0,0],[0,0],[0,0],[2.155,-0.47],[0.197,0.103],[0,0],[0,0],[0,0],[-0.181,-0.091],[-0.149,-0.077],[-0.23,-0.12],[0,0]],"v":[[-2.229,-3.073],[1.021,-1.386],[-3.163,0.037],[1.442,-0.748],[4.695,-1.25],[6.673,-0.163],[-2.276,1.71],[4.044,0.825],[-1.896,3.073],[-2.259,2.89],[-3.569,2.042],[-6.673,0.555]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[120.398,346.308],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 491","np":4,"cix":2,"ix":491,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-2.804,0.641],[-0.068,0.132],[-0.221,0.428],[0,0],[0,0],[0,0],[-0.136,0.263],[0,0],[0,0],[0,0],[0.127,0.4],[0.063,0.2],[0.064,0.201],[-0.374,0.12],[0,0],[0.234,-0.129],[0,0],[0,0],[0.196,0.102],[0,0],[-0.672,0.216],[-0.068,0.132],[0.055,0.175],[0.699,-0.389],[0,0],[0.098,0.051],[0.638,0.321],[0,0]],"o":[[2.404,-0.549],[0.068,-0.132],[0.221,-0.43],[0,0],[0,0],[0,0],[0.135,-0.265],[0,0],[0,0],[0,0],[-0.127,-0.401],[-0.064,-0.2],[-0.063,-0.2],[0.373,-0.119],[0,0],[-0.232,0.13],[0,0],[0,0],[-0.198,-0.102],[0,0],[0.672,-0.214],[0.068,-0.132],[-0.056,-0.175],[-0.7,0.389],[0,0],[-0.069,-0.036],[0.256,-0.019],[6.179,-1.304]],"v":[[-3.785,5.051],[-0.005,4.171],[0.521,3.15],[9.954,-16.41],[10.873,-15.932],[-2.68,12.691],[-2.349,12.697],[11.128,-15.216],[13.298,-14.256],[-1.396,16.41],[-3.98,14.734],[-4.968,13.258],[-6.189,11.913],[-5.521,11.34],[-2.832,10.48],[-2.678,10.016],[-5.948,11.118],[-6.794,11.146],[-7.454,10.085],[-8.11,9.66],[-3.115,8.116],[-1.854,7.768],[-1.244,6.663],[-5.876,8.229],[-8.29,9.526],[-11.639,7.869],[-13.298,7.039],[-12.768,6.99]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[131.994,342.438],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 492","np":4,"cix":2,"ix":492,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.851,0.088],[0.002,-0.186],[0,0],[0.27,0.077],[-0.027,0.111]],"o":[[0.851,-0.088],[-0.002,0.186],[-0.175,0.159],[-0.27,-0.078],[0.026,-0.111]],"v":[[-0.483,-1.315],[1.894,-1.358],[0.577,1.384],[-1.062,1.438],[-1.869,-0.789]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[145.428,325.224],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 493","np":4,"cix":2,"ix":493,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.428,-1.157],[1.013,-0.221]],"o":[[0,0],[0,0],[0,0]],"v":[[-0.002,-1.388],[1.554,1.072],[-1.554,1.389]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[146.014,321.895],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 494","np":4,"cix":2,"ix":494,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[3.212,-7.204],[3.989,-6.8],[-3.211,7.204],[-3.989,6.8]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[150.583,313.526],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 495","np":4,"cix":2,"ix":495,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[3.372,-7.514],[4.149,-7.111],[-3.371,7.514],[-4.149,7.111]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[151.485,314.389],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 496","np":4,"cix":2,"ix":496,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[3.473,-7.711],[4.249,-7.307],[-3.473,7.711],[-4.249,7.308]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[152.568,315.2],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 497","np":4,"cix":2,"ix":497,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[3.738,-7.987],[4.32,-7.685],[-3.739,7.987],[-4.32,7.685]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[153.46,316.078],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 498","np":4,"cix":2,"ix":498,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-2.238,-3.904],[0,0],[2.561,3.698],[0.096,-4.467],[0.267,0.263],[0.027,-0.173],[0,0],[3.749,7.255],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[-0.268,-0.264],[-0.027,0.173],[0,0],[0,0],[0,0]],"v":[[3.639,-0.208],[2.236,2.458],[-0.561,-3.917],[0.488,6.16],[-0.529,5.727],[-1.075,6.004],[-2.708,9.361],[-3.639,-8.6],[-3.185,-9.361]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[151.564,333.341],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 499","np":4,"cix":2,"ix":499,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[3.756,-8.517],[4.74,-8.006],[-3.756,8.517],[-4.74,8.006]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[157.471,319.074],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 500","np":4,"cix":2,"ix":500,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[4.079,-8.784],[4.77,-8.426],[-4.079,8.785],[-4.77,8.426]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[158.714,320.155],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 501","np":4,"cix":2,"ix":501,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[4.393,-9.161],[4.895,-8.9],[-4.392,9.161],[-4.895,8.901]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[159.546,321.126],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 502","np":4,"cix":2,"ix":502,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[-0.312,0.289],[0,0],[0.957,0.99]],"v":[[4.152,-5.349],[-3.169,7.303],[-3.202,7.368],[-4.152,6.999],[3.018,-7.658]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[147.536,348.199],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 503","np":4,"cix":2,"ix":503,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.083,-0.162],[0.18,-0.192],[0,0]],"o":[[0,0],[-0.083,0.162],[-0.181,0.192],[0,0]],"v":[[3.159,-6.43],[3.993,-5.914],[-3.028,6.238],[-4.076,5.898]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[148.625,350.599],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 504","np":4,"cix":2,"ix":504,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.435,-0.989],[0,0],[0,0],[-0.095,-0.3],[0,0],[0,0],[-0.867,-1.372],[0,0],[0.08,0.387],[-0.004,-0.001],[-0.005,-0.023],[0,0],[0,0],[-0.035,-0.111],[0,0],[0,0],[-0.246,-0.286],[0,0],[0.662,0.345],[0.229,0.013],[0.966,0.212],[0.03,0.095],[0.057,0.346],[0.09,0.284],[0.165,0.139],[0,0],[-0.281,-0.014],[-1.035,-1.249]],"o":[[0.435,0.99],[0,0],[0,0],[0.095,0.3],[0,0],[0,0],[0.867,1.373],[0,0],[-0.011,-0.027],[0.004,0.002],[0.17,0.396],[0,0],[0,0],[0.036,0.11],[0,0],[0,0],[0.247,0.286],[0,0],[-0.662,-0.344],[-0.229,-0.014],[-0.965,-0.212],[-0.03,-0.094],[-0.058,-0.347],[-0.09,-0.283],[-0.165,-0.138],[0,0],[0.281,0.014],[1.036,1.25]],"v":[[-1.037,0.488],[-0.18,2.646],[0.193,0.389],[1.105,2.287],[1.546,2.858],[0.654,-0.61],[2.266,1.15],[3.941,4.523],[3.616,0.883],[3.604,0.843],[3.616,0.883],[5.512,4.576],[4.314,-0.131],[6.152,2.669],[7.292,3.92],[5.096,-2.518],[8.378,-0.997],[9.223,7.506],[3.447,4.82],[0.217,3.249],[-1.919,3.272],[-3.654,2.264],[-3.982,1.119],[-6.036,-2.689],[-7.69,-5.182],[-9.223,-7.506],[-6.374,-7.08],[-4.18,-5.282]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[149.103,363.486],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 505","np":4,"cix":2,"ix":505,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.222,0.108],[0,0],[0,0]],"o":[[-0.702,-0.343],[2.719,2.639],[-0.309,0.116]],"v":[[0.227,3.168],[-2.071,-3.796],[2.071,3.68]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[142.854,361.943],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 506","np":4,"cix":2,"ix":506,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.257,0.368],[0,0],[0,0],[-0.149,-0.291],[0,0]],"o":[[-0.257,-0.369],[0,0],[0,0],[0.148,0.291],[-0.881,0.099]],"v":[[-1.391,1.44],[-1.559,-3.118],[0.012,-2.366],[0.356,-1.545],[1.648,3.019]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[140.613,361.923],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 507","np":4,"cix":2,"ix":507,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.067,0.212],[-0.078,0.151],[-0.171,-0.089],[0,0]],"o":[[-0.067,-0.212],[0.077,-0.15],[0.171,0.089],[-0.309,0.098]],"v":[[-0.616,1.818],[-0.376,-2.442],[0.512,-2.062],[0.527,2.493]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[138.25,360.775],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 508","np":4,"cix":2,"ix":508,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.333,-0.456],[0.137,-0.045],[0.129,0.408],[0,0],[0.276,-0.153],[0,0],[0.13,0.129],[0,0],[-0.158,0.117],[-0.183,0.103],[-0.104,-0.054],[0,0],[0,0]],"o":[[-0.333,0.456],[0,0],[-0.13,-0.409],[0,0],[-0.275,0.154],[0,0],[-0.129,-0.131],[0,0],[0.158,-0.115],[0.184,-0.102],[0.103,0.053],[0,0],[0,0]],"v":[[1.495,1.628],[0.243,3.617],[0.149,2.25],[-0.201,0.809],[-1.443,1.027],[-2.818,1.599],[-1.921,-0.146],[-2.497,-1.003],[-2.279,-1.682],[-0.288,-3.514],[0.363,-3.439],[2.818,-1.966],[2.713,2]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[134.657,360.349],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 509","np":4,"cix":2,"ix":509,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.354,0.102],[-0.23,0.343],[-0.129,-0.013],[0,0],[0.177,-0.345]],"o":[[0,0],[0.231,-0.343],[0.129,0.012],[0,0],[-0.176,0.344]],"v":[[-1.434,1.799],[0.253,-1.272],[1.058,-1.888],[1.434,-1.776],[0.149,0.88]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[135.508,364.608],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 510","np":4,"cix":2,"ix":510,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.183,0.014],[0.235,0.176],[-0.045,0.086],[-0.159,-0.218]],"o":[[0,0],[-0.183,-0.014],[-0.234,-0.176],[0.044,-0.086],[0.158,0.218]],"v":[[0.447,0.416],[0.026,0.497],[-0.485,0.068],[-0.23,-0.426],[0.561,-0.014]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[132.671,366.638],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 511","np":4,"cix":2,"ix":511,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.036,0.114],[-0.007,0.188],[0.149,0.132],[-0.055,0.107],[-0.329,-0.416],[0,0]],"o":[[-0.036,-0.114],[0.007,-0.186],[-0.149,-0.132],[0.055,-0.108],[0.328,0.415],[-0.082,0.148]],"v":[[-0.034,0.636],[-0.184,0.122],[-0.665,-0.454],[-0.378,-1.013],[0.486,-0.374],[0.248,0.973]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[133.881,364.21],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 512","np":4,"cix":2,"ix":512,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[1.689,0.878],[0,0],[-0.128,-0.013],[-0.033,0.064],[-0.055,0.107],[0.159,0.11],[0,0],[-0.142,0.118],[-0.146,0.047],[-0.236,-0.068],[0.056,-0.108],[0.13,-0.041],[0.122,-0.291],[0.089,-0.172],[-0.171,-0.089],[-0.037,-0.114],[0.122,-0.236],[-0.138,-0.153],[-0.211,0.068],[-0.107,-0.055],[0,0]],"o":[[-1.689,-0.877],[0,0],[0.13,0.012],[0.033,-0.065],[0.056,-0.108],[-0.16,-0.11],[0,0],[0.141,-0.117],[0.146,-0.047],[0.236,0.069],[-0.055,0.107],[-0.13,0.042],[-0.122,0.29],[-0.088,0.171],[0.171,0.088],[0.036,0.114],[-0.121,0.236],[0.137,0.153],[0.21,-0.067],[0.107,0.055],[0,0]],"v":[[-0.748,2.811],[-1.826,0.481],[-0.498,0.954],[-0.139,0.731],[-0.069,0.278],[-0.386,-0.105],[-1.377,-0.865],[-0.491,-2.747],[1.187,-3.481],[2.071,-3.621],[2.381,-2.643],[1.84,-2.434],[0.966,-2.261],[0.704,-1.172],[0.569,-0.698],[1.372,-0.363],[1.342,0.221],[0.645,1.683],[1.522,2.084],[1.901,1.873],[2.253,2.137]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[130.604,365.952],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 513","np":4,"cix":2,"ix":513,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.253,-0.44],[0,0],[-0.166,0.322],[-0.208,-0.018],[0.111,-0.214],[0.11,-0.161]],"o":[[-0.253,0.439],[0,0],[0.166,-0.322],[0.207,0.018],[-0.11,0.215],[-0.11,0.161]],"v":[[-0.025,0.177],[-1.835,2.695],[0.31,-2.372],[0.922,-2.455],[1.725,-1.964],[0.927,-0.2]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[130.303,361.971],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 514","np":4,"cix":2,"ix":514,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[-1.14,0.656],[-0.465,-0.656],[1.14,0.125]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[135.298,351.525],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 515","np":4,"cix":2,"ix":515,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0]],"o":[[1.336,0.826],[0,0],[0,0]],"v":[[-0.283,-1.236],[1.02,1.237],[-1.053,0.16]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[136.059,350.27],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 516","np":4,"cix":2,"ix":516,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.053,-0.103],[0,0],[-0.159,0.308],[0,0]],"o":[[-0.053,0.103],[0,0],[0.157,-0.306],[0,0]],"v":[[2.512,-4.471],[-2.239,4.768],[-2.406,4.176],[2.107,-4.768]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[143.378,333.834],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 517","np":4,"cix":2,"ix":517,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.305,0.029],[0,0],[-0.105,3.974],[-0.02,0.123],[-0.125,0.245],[0,0],[0.497,-5.277],[0.172,-0.646]],"o":[[-0.264,-0.025],[0,0],[0.105,-3.973],[0.019,-0.123],[0.126,-0.245],[0,0],[-0.497,5.275],[-0.164,0.617]],"v":[[-1.201,11.206],[-1.367,10.667],[-0.539,1.943],[-0.659,-7.416],[-0.271,-9.029],[0.511,-11.234],[0.968,-1.701],[-0.617,10.403]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[147.094,336.948],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 518","np":4,"cix":2,"ix":518,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.131,0.414],[2.724,2.152],[-0.141,0.273],[0,0],[0.296,-5.513],[0.208,-0.237],[0.936,1.611],[0,0],[-0.406,-1.638],[0.074,-0.394],[0.225,-0.072]],"o":[[-0.131,-0.415],[0,0],[0.14,-0.273],[0,0],[-0.296,5.514],[-0.208,0.239],[-0.936,-1.611],[0,0],[0.406,1.639],[-0.073,0.395],[-0.226,0.072]],"v":[[0.849,8.787],[-3.764,2.021],[-0.022,-5.421],[2.212,-10.1],[3.467,-1.748],[2.827,6.527],[1.211,3.395],[-0.065,1.607],[1.253,5.406],[1.977,8.767],[1.406,10.027]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[141.458,344.537],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 519","np":4,"cix":2,"ix":519,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.861,-2.886],[1.674,2.308]],"o":[[0,0],[0,0],[0,0]],"v":[[0.629,-4.361],[0.497,4.362],[-1.358,-0.457]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[145.361,334.167],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 520","np":4,"cix":2,"ix":520,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.845,1.575],[0.113,0.138],[0,0]],"o":[[-0.926,0.522],[-0.845,-1.575],[-0.113,-0.137],[2.095,1.088]],"v":[[2.163,2.525],[-0.141,-0.151],[-2.049,-2.569],[-1.751,-3.047]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[138.958,349.708],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 521","np":4,"cix":2,"ix":521,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.303,0.027],[0,0]],"o":[[0,0],[0,0],[0.304,-0.027],[0,0]],"v":[[-2.438,1.053],[-1.699,-0.385],[0.883,-1.025],[2.439,-0.013]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[135.844,353.115],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 522","np":4,"cix":2,"ix":522,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.124,-0.115],[0.2,-0.196],[0,0],[-0.146,0.323],[0,0],[-0.093,-0.128]],"o":[[-0.124,0.115],[-0.199,0.195],[0,0],[0.147,-0.323],[0,0],[0.093,0.128]],"v":[[1.099,-0.741],[-0.639,0.892],[-1.294,1.509],[-1.468,0.92],[-0.43,-0.866],[1.521,-1.38]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[132.719,357.486],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 523","np":4,"cix":2,"ix":523,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[1.458,0.758],[0,0],[-0.213,0.068],[-0.434,-0.332]],"o":[[0,0],[-1.459,-0.758],[0,0],[0.213,-0.068],[0.433,0.333]],"v":[[2.58,1.761],[-0.228,0.587],[-2.58,-0.921],[0.127,-1.693],[1.546,-1.135]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[137.617,357.154],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 524","np":4,"cix":2,"ix":524,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.207,0.16],[0.188,-0.007],[0,0],[0,0],[-0.142,0.045],[-0.734,-0.461],[0,0],[0.094,-0.03]],"o":[[-0.207,-0.16],[-0.188,0.008],[0,0],[0,0],[0.141,-0.046],[0.735,0.461],[0,0],[-0.095,0.03]],"v":[[1.386,0.774],[-0.69,0.672],[-4.874,1.298],[-4.051,-0.097],[1.194,-1.253],[4.139,0.171],[4.816,1.103],[2.154,1.12]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[137.426,354.669],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 525","np":4,"cix":2,"ix":525,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[2.496,1.481],[-0.623,0.6],[-0.312,-1.642],[0,0]],"v":[[-1.267,-2.428],[1.589,1.828],[0.162,1.589],[-1.589,-1.751]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[137.668,349.991],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 526","np":4,"cix":2,"ix":526,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.336,-0.102],[-0.325,-0.218],[0.025,-0.426],[0.117,-0.086],[0.115,0.06],[0.026,0.233],[0.096,0.05],[0,0],[-0.041,0.222]],"o":[[0.335,0.102],[0.325,0.217],[-0.025,0.424],[-0.116,0.085],[-0.115,-0.059],[-0.026,-0.232],[-0.095,-0.05],[-0.345,-0.179],[0.042,-0.221]],"v":[[-1.183,-1.476],[0.817,-0.558],[1.748,0.413],[1.599,1.456],[1.203,1.518],[0.949,1.069],[0.466,0.453],[-0.232,0.163],[-1.732,-0.787]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[162.128,372.124],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 527","np":4,"cix":2,"ix":527,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-2.516,-1.062],[-1.227,-0.525],[-1.339,-0.417],[-2.011,-1.158],[-0.832,-0.431],[-0.064,-0.2],[-0.569,-0.296],[-0.569,-0.296],[0,0],[0.708,-1.917],[-2.32,-1.205],[-0.627,0.789],[0,0],[-1.119,-0.304],[-0.525,-0.273],[-0.459,-0.294],[-0.308,-0.049],[-0.242,-0.069],[-0.219,-0.114],[0,0],[-0.846,-0.357],[-0.256,0.119],[0,0],[-0.497,-0.063],[-0.15,0.51],[0.406,0.238],[0,0],[0.07,0.568],[0.251,0.213],[0,0],[0.656,0.713],[0,0],[-0.003,0.217],[0,0],[0.041,0.13],[0,0],[-0.004,0.261],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0.158,-0.308],[1.089,-2.333],[0,0],[0.597,-0.191],[0,0],[0,0],[1.087,-0.494],[0.429,-0.725],[1.03,0.369],[0.294,-0.572]],"o":[[0,0],[1.227,0.526],[1.338,0.417],[0,0],[0.831,0.433],[0.063,0.201],[0.569,0.295],[0.569,0.296],[0,0],[-0.709,1.918],[2.32,1.205],[0.628,-0.789],[0,0],[1.12,0.303],[0.525,0.273],[0.459,0.294],[0.308,0.048],[0.241,0.071],[0.219,0.113],[0,0],[0.847,0.355],[0.255,-0.118],[0,0],[0.496,0.061],[0.15,-0.508],[-0.406,-0.239],[0,0],[-0.069,-0.568],[-0.252,-0.215],[0,0],[-0.656,-0.713],[0,0],[0.002,-0.218],[0,0],[-0.042,-0.131],[0,0],[0.003,-0.261],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-0.159,0.309],[-1.089,2.333],[0,0],[-0.598,0.192],[0,0],[0,0],[-1.086,0.495],[0,0],[-1.031,-0.368],[-0.294,0.572]],"v":[[-29.099,4.568],[-28.263,5.733],[-23.456,7.172],[-13.888,11.753],[-12.913,13.094],[-11.827,14.216],[-9.57,16.839],[-8.023,18.144],[-6.36,19.008],[-8.724,24.469],[-7.206,29.607],[-2.743,28.692],[0.885,22.716],[4.89,24.742],[7.592,25.42],[8.998,25.705],[10.77,26.681],[11.961,26.63],[13.041,26.579],[22.478,31.732],[24.091,33.41],[26.835,34.89],[27.207,34.329],[29.283,35.324],[30.19,34.424],[28.766,31.784],[22.577,28.4],[23.131,26.619],[21.677,21.334],[15.246,17.881],[13.906,15.558],[11.769,13.748],[17.484,3.31],[16.815,2.875],[17.713,1.045],[17.251,0.63],[19.81,-4.515],[19.698,-5.186],[31.615,-27.882],[30.346,-28.541],[19.985,-8.392],[19.591,-8.596],[29.641,-28.574],[29.071,-28.758],[19.114,-9.178],[18.856,-9.647],[28.657,-29.14],[24.695,-31.143],[15.986,-14.204],[14.892,-14.773],[23.447,-31.736],[22.835,-32.054],[14.464,-15.776],[13.72,-16.162],[22.068,-32.397],[18.48,-34.371],[17.87,-34.912],[17.282,-35.385],[9.788,-20.379],[9.396,-20.695],[9.612,-22.087],[9.063,-22.205],[5.58,-15.43],[5.094,-15.348],[-1.439,-1.348],[-4.387,4.925],[-5.816,4.684],[-8.195,4.564],[-16.756,0.506],[-18.857,1.031],[-23.08,3.743],[-28.268,1.214],[-31.161,1.663]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.458999992819,0.328999986836,0.161000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[136.592,340.403],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 528","np":4,"cix":2,"ix":528,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-0.747,-15.272],[12.825,-8.22],[0.747,15.271],[-12.825,8.219]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.677999997606,0.545000023935,0.361000001197,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[155.195,319.305],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 529","np":4,"cix":2,"ix":529,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-1.224,-2.305],[0,0]],"o":[[0,0],[-0.384,2.093],[1.223,2.306],[-2.306,-4.925]],"v":[[-3.009,-7.531],[-3.075,-7.628],[0.382,2.305],[3.459,7.628]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.144999994016,0.493999974868,0.510000011968,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[137.317,103.786],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 530","np":4,"cix":2,"ix":530,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.455,-0.975],[0,0],[0.052,0.18],[0.258,0.897],[0,0]],"o":[[0.455,0.976],[0,0],[-0.051,-0.179],[-0.258,-0.896],[0,0]],"v":[[-0.247,0.887],[1.085,2.831],[0.942,1.999],[-0.358,-1.042],[-1.085,-2.831]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.144999994016,0.493999974868,0.510000011968,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[126.849,94.111],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 531","np":4,"cix":2,"ix":531,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-1.01,-3.242],[-0.392,-2.237],[0,0],[-0.081,1.131],[2.573,8.539]],"o":[[0,0],[1.011,3.243],[0.335,1.911],[0,0],[0.08,-1.131],[-2.572,-8.538]],"v":[[-4.982,-16.176],[-0.083,-1.796],[3.755,12.747],[4.393,16.176],[4.902,14.318],[1.665,1.794]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.144999994016,0.493999974868,0.510000011968,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[128.301,86.358],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 532","np":4,"cix":2,"ix":532,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.144,-0.544],[-0.299,-0.437],[-0.432,-0.297],[0,0],[0.122,1.111],[-0.245,2.377],[-0.157,-0.029],[-0.175,-0.522],[0,0],[0,0],[0.175,-1.546],[0.183,0.034],[-0.286,4.521],[0,0],[0.206,-3.637],[-0.187,-0.606],[-0.185,-0.47],[0,0],[0,0]],"o":[[0.144,0.544],[0.299,0.436],[0.433,0.298],[0,0],[-0.121,-1.112],[0.246,-2.377],[0.158,0.029],[0.176,0.522],[-0.667,-3.308],[0,0],[-0.175,1.547],[-0.183,-0.034],[0.287,-4.52],[-0.668,1.427],[-0.205,3.637],[0.187,0.606],[0.185,0.469],[-0.628,-0.116],[0,0]],"v":[[-1.935,7.67],[-1.132,9.643],[-0.256,10.92],[1.141,11.424],[0.396,9.136],[0.176,0.874],[1.129,-2.407],[1.711,-0.557],[2.238,0.412],[1.256,-9.896],[-0.342,0.451],[-0.907,3.831],[-1.255,-2.549],[0.209,-11.424],[-1.806,-2.351],[-1.436,4.06],[-0.835,5.805],[-0.406,8.633],[-2.238,5.627]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.144999994016,0.493999974868,0.510000011968,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[119.965,77.019],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 533","np":4,"cix":2,"ix":533,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-0.131,-0.191],[-0.295,-0.055],[-0.089,-0.267],[0.065,0.096],[0,0],[-0.088,-0.128],[-0.241,-0.045],[-0.112,-0.299],[0.064,-0.35],[-0.112,-0.299],[0,0],[0,0],[0,0],[0,0],[0.288,-0.058],[0.484,0.229],[0.393,0.573],[0.365,0.123],[0.319,-0.08],[0.365,0.123],[0.194,0.148],[0.066,0.095],[-0.127,0.088],[0.109,0.159],[0,0],[0,0],[-0.03,0.162],[0,0],[0.107,0.02],[0,0],[0,0],[0.19,-0.132],[0,0],[0,0],[0,0],[0,0],[0,0],[-0.133,-0.025],[0,0],[0,0],[0.034,-0.188],[0,0],[0,0],[-0.19,0.132],[0,0],[0,0],[0.134,0.025],[0.134,0.025],[0.175,0.256],[0.35,0.51],[0.151,0.084],[0.216,0.179],[0.087,0.128],[0.153,0.223],[0.248,0.157],[0.161,0.03],[0,0],[0,0],[0.109,0.159],[-0.105,0.119],[0.109,0.159],[-0.389,0.458],[0.08,0.321],[0.377,0.209],[0.096,-0.066],[0.111,0.299],[0.128,0.664],[0,0],[0.137,-0.142],[0,0],[0.516,-0.545],[0,0],[-0.627,0.245],[-0.095,0.066],[0.049,-0.269],[-0.424,0.2],[-0.214,-0.04],[0.027,-0.149],[0.7,-0.344],[0.168,-0.028],[0,0],[0,0],[-0.585,0.922],[-0.107,-0.02],[0.286,-0.197],[0.178,-0.218],[0.025,-0.135],[-0.204,-0.094],[-0.285,0.197],[-0.283,0.337],[-0.175,-0.254],[0.096,-0.066],[0,0],[-0.321,-0.059],[-0.294,-0.054],[-0.133,-0.331],[-0.307,0.165],[-0.173,-0.115],[-0.068,-0.235],[0.254,-0.175],[-0.222,0.154],[-0.292,-0.222],[-0.109,-0.159],[-0.431,-0.219],[-0.509,-0.4],[-0.284,-0.414],[-0.065,-0.095],[0.006,0.419],[-0.256,0.036],[-0.136,-0.471],[-0.087,-1.491],[0.431,0.22],[0.058,0.289],[-0.054,0.296],[0.109,0.16],[0,0],[-0.026,-0.311],[-0.132,-0.191],[0,0],[-0.457,-0.53],[-0.222,1.212],[0.014,0.225],[0,0],[-0.18,-0.534],[0.177,-1.721],[0,0],[-0.134,-0.025],[0.049,-0.269],[-0.257,-0.103],[-0.244,0.121],[0.109,0.16],[0,0],[-0.131,-0.191],[-0.131,-0.191],[-0.13,-0.191],[0,0],[0.014,0.226],[-0.03,0.162],[0.109,0.159],[0.014,0.226],[-0.105,0.12],[0,0],[0.06,0.429],[0,0],[-0.059,-0.289],[-0.197,-0.287],[0,0],[0.101,0.353],[-0.05,0.269],[-0.307,0.165],[0,0],[0.066,0.095],[0,0],[-0.044,0.242],[0.095,-0.066],[0.066,0.096],[-0.049,0.27],[0,0],[-0.066,-0.095],[0.095,-0.066],[0,0],[0,0],[0,0],[-0.087,-0.128],[-0.241,-0.044],[-0.087,-0.128],[-0.244,0.121],[-0.058,-0.289],[0.346,-0.381],[0,0],[-0.309,0.026],[-0.428,-0.079],[-0.248,-0.157],[-0.284,0.337],[0,0],[-0.28,-0.135],[-0.554,0.148],[-0.788,-0.536],[0,0],[0.333,0.146],[0,0],[0.04,-0.215],[0.476,-1.693],[-1.357,-0.001],[0.455,-0.973],[0.309,-0.778],[-0.218,-0.318],[-0.312,-0.113],[-0.928,-1.285],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0.132,0.191],[0.196,0.287],[0,0],[0,0],[0,0],[0,0],[0,0],[1.029,1.638],[-0.005,0.333],[-0.081,-0.015],[-0.455,-0.391],[0,0],[0.261,0.382],[0,0],[0.281,0.887],[0,0],[-0.049,0.27],[0.132,0.192],[0,0],[0,0],[-0.223,0.154],[-0.196,0.465],[0.094,0.546],[0.286,0.554],[0,0],[-0.145,0.335],[0.175,0.255],[0.194,0.148],[-0.125,0.227],[0.109,0.159],[0,0]],"o":[[0,0],[0,0],[0.131,0.192],[0.294,0.054],[0.09,0.267],[-0.066,-0.095],[0,0],[0.087,0.127],[0.241,0.045],[0.111,0.299],[-0.064,0.351],[0.111,0.299],[0,0],[0,0],[0,0],[0,0],[-0.287,0.058],[-0.484,-0.228],[-0.393,-0.574],[-0.365,-0.124],[-0.32,0.08],[-0.365,-0.124],[-0.195,-0.147],[-0.065,-0.096],[0.127,-0.087],[-0.11,-0.159],[0,0],[0,0],[0.03,-0.161],[0,0],[-0.107,-0.02],[0,0],[0,0],[-0.191,0.132],[0,0],[0,0],[0,0],[0,0],[0,0],[0.135,0.025],[0,0],[0,0],[-0.035,0.189],[0,0],[0,0],[0.19,-0.131],[0,0],[0,0],[-0.134,-0.024],[-0.134,-0.024],[-0.175,-0.255],[-0.349,-0.51],[-0.151,-0.083],[-0.216,-0.179],[-0.088,-0.127],[-0.153,-0.223],[-0.248,-0.157],[-0.161,-0.03],[0,0],[0,0],[-0.109,-0.16],[0.105,-0.12],[-0.109,-0.16],[0.388,-0.457],[-0.08,-0.321],[-0.377,-0.209],[-0.094,0.066],[-0.111,-0.299],[-0.127,-0.663],[0,0],[-0.137,0.141],[0.247,0.769],[-0.515,0.545],[0.243,1.241],[0.627,-0.246],[0.095,-0.066],[-0.049,0.269],[0.425,-0.2],[0.215,0.04],[-0.027,0.148],[-0.7,0.343],[-0.168,0.028],[0,0],[0,0],[0.584,-0.921],[0.107,0.019],[-0.285,0.198],[-0.178,0.217],[-0.024,0.135],[0.205,0.093],[0.285,-0.198],[0.284,-0.338],[0.174,0.256],[-0.095,0.066],[0,0],[0.322,0.06],[0.295,0.055],[0.134,0.331],[0.307,-0.166],[0.173,0.115],[0.067,0.235],[-0.254,0.176],[0.222,-0.154],[0.292,0.221],[0.11,0.16],[0.43,0.219],[0.508,0.401],[0.284,0.415],[0.066,0.096],[-0.007,-0.419],[0.256,-0.036],[0.135,0.47],[0.087,1.492],[-0.431,-0.218],[-0.058,-0.289],[0.054,-0.297],[-0.11,-0.159],[0,0],[0.027,0.311],[0.131,0.191],[0,0],[0.457,0.53],[0.222,-1.212],[-0.014,-0.225],[0,0],[0.179,0.534],[-0.176,1.721],[0.523,0.014],[0.134,0.025],[-0.05,0.269],[0.259,0.103],[0.244,-0.122],[-0.109,-0.159],[0,0],[0.131,0.192],[0.132,0.192],[0.132,0.192],[0,0],[-0.014,-0.225],[0.029,-0.162],[-0.109,-0.16],[-0.014,-0.225],[0.105,-0.12],[0,0],[-0.06,-0.428],[0,0],[0.057,0.289],[0.196,0.286],[0,0],[-0.102,-0.352],[0.049,-0.269],[0.308,-0.166],[0,0],[-0.065,-0.096],[0,0],[0.045,-0.242],[-0.095,0.066],[-0.066,-0.096],[0.049,-0.269],[0,0],[0.066,0.096],[-0.095,0.066],[0,0],[0,0],[0,0],[0.088,0.127],[0.241,0.045],[0.088,0.128],[0.244,-0.122],[0.057,0.289],[-0.347,0.381],[0,0],[0.31,-0.026],[0.429,0.08],[0.248,0.157],[0.283,-0.338],[0,0],[0.28,0.135],[0.553,-0.148],[0.788,0.535],[0,0],[-0.333,-0.145],[0,0],[-0.039,0.215],[-0.477,1.694],[1.357,0.001],[-0.456,0.974],[-0.308,0.778],[0.219,0.319],[0.312,0.114],[0.928,1.286],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-0.13,-0.192],[-0.197,-0.287],[0,0],[0,0],[0,0],[0,0],[0,0],[-1.029,-1.638],[0.006,-0.333],[0.08,0.015],[0.455,0.39],[0,0],[-0.263,-0.383],[0,0],[-0.281,-0.887],[0,0],[0.05,-0.269],[-0.131,-0.191],[0,0],[0,0],[0.222,-0.154],[0.196,-0.465],[-0.094,-0.547],[-0.286,-0.554],[0,0],[0.145,-0.335],[-0.174,-0.255],[-0.195,-0.147],[0.125,-0.228],[-0.11,-0.16],[0,0]],"v":[[15.677,-19.352],[14.888,-19.275],[15.115,-16.283],[16.213,-15.773],[16.868,-14.816],[16.067,-14.826],[15.281,-15.222],[15.061,-14.928],[15.966,-14.427],[16.467,-13.833],[16.198,-12.519],[16.481,-11.492],[15.822,-11.224],[15.642,-10.394],[16.119,-3.624],[9.311,-14.99],[8.559,-15.269],[6.821,-15.758],[4.976,-17.63],[2.123,-19.745],[0.437,-19.612],[-1.246,-19.951],[-3.129,-20.857],[-4.343,-21.944],[-4.171,-22.581],[-4.546,-23.402],[-5.569,-23.87],[-6.711,-25.194],[-8.036,-27.333],[-4.027,-31.379],[-8.827,-28.76],[-9.281,-29.15],[-7.266,-33.649],[-10.859,-29.609],[-11.782,-29.864],[-12.259,-34.518],[-13.222,-29.713],[-14.045,-29.002],[-18.198,-32.332],[-15.3,-27.898],[-16.196,-27.089],[-21.744,-27.337],[-16.89,-25.715],[-16.556,-24.817],[-19.607,-22.375],[-16.156,-23.825],[-15.539,-23.265],[-17.096,-21.716],[-17.753,-21.309],[-19.394,-21.724],[-20.383,-22.826],[-21.863,-24.575],[-24.333,-26.814],[-26.225,-28.278],[-27.138,-29.338],[-30.164,-33.684],[-31.03,-34.401],[-32.619,-34.194],[-32.956,-34.619],[-32.814,-35.093],[-33.263,-35.816],[-33.111,-36.345],[-33.641,-36.777],[-33.013,-37.636],[-32.594,-38.866],[-34.127,-40.625],[-36.212,-39.981],[-36.595,-40.609],[-36.635,-42.51],[-37.574,-43.881],[-37.517,-42.227],[-39.516,-45.075],[-39.427,-41.328],[-40.599,-41.127],[-38.496,-39.151],[-37.146,-40.321],[-37.08,-39.474],[-36.342,-39.421],[-34.821,-39.863],[-34.589,-39.388],[-37.116,-37.615],[-38.483,-36.334],[-39.153,-35.264],[-38.575,-35.241],[-38.237,-36.181],[-35.66,-38.153],[-35.696,-37.659],[-37.487,-36.041],[-38.086,-35.345],[-37.875,-34.832],[-36.914,-35.069],[-35.912,-35.722],[-34.868,-35.975],[-35.794,-35.004],[-36.289,-34.567],[-35.879,-34.241],[-35.363,-34.034],[-34.648,-33.4],[-33.832,-33.165],[-32.83,-33.342],[-32.428,-32.21],[-33.239,-31.414],[-32.693,-31.368],[-31.045,-31.146],[-28.664,-27.059],[-27.04,-26.396],[-23.473,-24.4],[-21.398,-22.123],[-18.295,-17.595],[-18.176,-18.241],[-17.746,-20.138],[-16.889,-18.615],[-17.032,-14.661],[-17.757,-11.761],[-18.656,-13.959],[-18.681,-14.882],[-19.126,-16.079],[-20.163,-16.771],[-19.754,-14.469],[-19.417,-13.432],[-18.839,-14.021],[-17.891,-10.727],[-16.633,-12.304],[-16.786,-16.759],[-16.637,-18.179],[-16.183,-17.176],[-16.194,-11.527],[-16.848,-9.616],[-15.883,-10.049],[-15.661,-8.839],[-14.945,-8.066],[-14.05,-8.262],[-13.975,-8.973],[-14.801,-11.269],[-14.111,-10.195],[-12.959,-8.172],[-12.589,-7.018],[-11.951,-6.565],[-11.898,-7.308],[-12.032,-8.39],[-13.151,-10.295],[-13.728,-11.683],[-13.743,-12.66],[-12.511,-11.068],[-12.411,-12.219],[-12.193,-14.016],[-10.805,-5.713],[-10.454,-3.699],[-8.75,-3.328],[-11.771,-15.107],[-11.745,-16.912],[-10.498,-17.07],[-9.863,-17.51],[-12.77,-21.75],[-12.676,-22.568],[-12.085,-23.071],[-12.617,-23.643],[-13.25,-23.816],[-12.985,-24.658],[-12.595,-25.727],[-10.403,-25.6],[-11.255,-24.727],[-11.439,-24.177],[-10.424,-22.764],[-10.983,-22.283],[-10.935,-21.939],[-10.27,-21.789],[-9.865,-21.129],[-9.046,-21.367],[-8.547,-20.913],[-9.349,-19.558],[-10.815,-18.966],[-9.855,-19.067],[-8.462,-18.81],[-6.164,-18.05],[-4.949,-17.574],[-2.877,-18.305],[-1.357,-18.134],[0.276,-18.278],[3.024,-17.407],[5.457,-14.813],[0.801,-16.761],[0.559,-16.499],[22.375,12.873],[19.103,19.7],[21.114,21.27],[22.36,23.087],[18.995,29.508],[18.848,31.067],[19.864,31.116],[21.899,32.857],[23.512,37.053],[20.265,39.208],[18.656,43.002],[20.076,45.075],[20.14,45.031],[40.599,30.862],[40.074,30.097],[38.969,29.029],[37.182,28.197],[36.548,27.273],[35.724,27.844],[36.165,28.761],[34.198,30.123],[29.491,22.709],[28.085,19.498],[28.649,19.296],[34.002,26.356],[35.205,27.497],[34.169,26.053],[32.695,23.97],[32.563,21.663],[28.121,15.523],[28.727,14.633],[26.891,11.955],[27.004,10.89],[18.979,1.025],[19.443,0.61],[19.959,-0.547],[20.395,-3.529],[19.855,-6.023],[17.862,-9.204],[18.468,-10.094],[18.47,-11.318],[17.962,-12.471],[17.818,-13.499],[17.634,-15.064],[16.202,-16.471]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.144999994016,0.493999974868,0.510000011968,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[123.667,81.505],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 534","np":4,"cix":2,"ix":534,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[2.646,6.982],[-3.286,-5.465],[0,0],[0.699,1.02]],"o":[[0,0],[3.285,5.465],[0,0],[-0.699,-1.021]],"v":[[-7.863,-13.761],[-0.826,-1.148],[7.863,13.761],[6.77,12.583]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.144999994016,0.493999974868,0.510000011968,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[133.511,85.627],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 535","np":4,"cix":2,"ix":535,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0.141,0.577],[-0.225,-0.443],[0,0],[0.35,0.916],[0.041,-1.187],[-0.029,-0.101],[-0.108,0.075],[-0.091,-0.017],[-0.012,-0.192],[0.114,-0.239],[-0.057,-0.2],[0,0],[-0.335,0.032],[-0.175,-0.197],[0,0],[-0.083,-0.063],[-0.12,-0.117],[0,0],[-0.029,-0.1],[0,0],[0,0],[-0.029,0.16],[0,0],[0,0],[-0.047,-0.127],[-0.085,-0.181],[-0.167,-0.243],[0,0],[-0.205,-0.038],[-0.165,-0.125],[-0.093,-0.135],[0,0],[0,0],[0.112,0.162],[0,0],[0,0],[0,0],[0,0],[-0.056,-0.081],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-0.148,-0.215],[0,0],[-0.123,-0.179],[-0.074,-0.107],[0,0],[-0.025,-0.036],[-0.097,-0.143],[-0.041,-0.059],[-0.028,-0.067],[-0.033,-0.048],[0,0],[0,0],[0,0],[0.036,-0.024],[0,0],[0,0],[0,0],[0,0],[0.141,0.026],[0.072,0.055],[0,0],[0.851,1.243],[0.277,0.301],[0.49,0.613],[0.279,0.406],[0.113,0.062],[1.144,1.67],[0,0],[0.643,0.119],[0.618,0.594],[0.488,0.917],[0,0],[0.569,0.523],[0.318,1.436],[0,0],[0.328,0.478],[0,0],[0.195,0.182],[0,0],[0.366,0.169],[-0.04,0.556],[0,0],[0.415,-0.111],[0.636,0.723],[0.296,0.994],[0.036,0.257],[0.25,0.108],[0.551,0.394],[1.485,1.756],[0.275,0.197],[0.254,0.142],[0.482,0.653],[0.389,0.26],[0.132,0.295],[0.065,0.095],[0.272,-0.013],[0,0],[0.422,0.307],[0.375,-0.118],[0.115,0.167],[-0.305,0.987],[0,0],[0.179,0.158],[0.062,0.091],[0.002,0.668],[0,0],[-0.24,-0.045]],"o":[[0,0],[0.224,0.444],[0,0],[0,0],[-0.041,1.186],[0.029,0.099],[0.108,-0.074],[0.091,0.017],[0.013,0.191],[-0.114,0.239],[0.058,0.199],[0,0],[0.335,-0.033],[0.176,0.198],[0,0],[0.083,0.062],[0.12,0.116],[0,0],[0.028,0.1],[0,0],[0,0],[0.03,-0.16],[0,0],[0,0],[0.047,0.127],[0.084,0.181],[0.167,0.244],[0,0],[0.204,0.037],[0.165,0.125],[0,0],[0,0],[0,0],[-0.111,-0.163],[0,0],[0,0],[0,0],[0,0],[0.056,0.081],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0.147,0.215],[0,0],[0.122,0.179],[0.074,0.108],[0,0],[0.024,0.035],[0.097,0.142],[0.04,0.06],[0.029,0.067],[0.032,0.047],[0,0],[0,0],[0,0],[-0.035,0.025],[0,0],[0,0],[0,0],[0,0],[-0.14,-0.026],[-0.073,-0.055],[0,0],[-0.852,-1.242],[-0.277,-0.302],[-0.49,-0.612],[-0.278,-0.406],[-0.113,-0.063],[-1.145,-1.67],[0,0],[-0.642,-0.119],[-0.617,-0.594],[-0.488,-0.917],[0,0],[-0.569,-0.522],[-0.319,-1.437],[0,0],[-0.327,-0.478],[0,0],[-0.195,-0.182],[0,0],[-0.367,-0.169],[0.039,-0.556],[0,0],[-0.415,0.111],[-0.635,-0.723],[-0.295,-0.993],[-0.036,-0.257],[-0.25,-0.109],[-0.55,-0.394],[-1.484,-1.757],[-0.275,-0.197],[-0.255,-0.141],[-0.482,-0.652],[-0.388,-0.259],[-0.133,-0.296],[-0.066,-0.096],[-0.272,0.012],[0,0],[-0.42,-0.308],[-0.374,0.118],[-0.114,-0.168],[0.306,-0.986],[0,0],[-0.178,-0.158],[-0.063,-0.09],[-0.002,-0.668],[0,0],[0.242,0.044]],"v":[[-37.618,-43.177],[-36.311,-41.966],[-35.938,-41.306],[-35.918,-42.957],[-34.346,-39.533],[-34.273,-37.427],[-33.958,-36.968],[-32.196,-37.469],[-31.222,-36.626],[-31.299,-35.175],[-31.556,-33.52],[-30.703,-32.393],[-29.748,-32.216],[-28.673,-31.923],[-27.885,-30.831],[-23.579,-24.549],[-21.421,-22.849],[-18.625,-20.393],[-17.14,-18.227],[-15.295,-18.028],[-13.039,-18.792],[-11.985,-21.079],[-10.985,-23.329],[-9.981,-24.183],[-5.956,-22.02],[-4.686,-19.704],[-2.889,-17.835],[2.489,-16.248],[3.933,-16.17],[6.311,-14.903],[8.396,-12.673],[10.684,-11.942],[12.109,-12.529],[12.57,-12.609],[12.102,-15.958],[17.295,-16.501],[18.038,-15.238],[18.05,-13.888],[18.586,-13.221],[19.534,-12.361],[19.866,-10.833],[19.933,-9.402],[19.263,-5.802],[20.124,-2.858],[20.214,-0.118],[19.534,2.573],[20.083,4.677],[27.556,15.504],[28.679,18.6],[30.791,20.838],[32.104,21.832],[33.18,23.095],[34.227,25.065],[34.544,26.313],[35.121,27.206],[35.624,27.888],[36.133,28.531],[36.477,28.905],[36.848,29.346],[38.424,31.189],[38.828,31.626],[38.496,32.257],[37.553,32.91],[31.344,37.476],[29.578,40.321],[26.504,42.485],[24.015,43.151],[23.19,42.56],[22.749,42.019],[21.889,39.69],[19.688,36.633],[18.158,35.014],[15.92,32.159],[15.237,31.469],[12.463,27.677],[6.676,18.262],[5.533,17.926],[3.157,16.505],[0.567,11.907],[-0.027,10.887],[-2.376,9.659],[-4.277,5.761],[-6.082,-0.249],[-8.269,-0.779],[-9.136,-3.068],[-10.021,-3.336],[-11.288,-5.031],[-12.526,-5.055],[-13.186,-6.113],[-13.34,-7.769],[-14.39,-6.795],[-16.485,-7.6],[-18.047,-11.311],[-18.544,-14.032],[-18.556,-14.764],[-20.923,-16.684],[-23.195,-19.128],[-26.604,-23.745],[-27.962,-24.32],[-30.139,-27.112],[-31.679,-28.336],[-32.853,-29.742],[-32.979,-30.642],[-33.628,-31.179],[-34.264,-31.902],[-35.22,-31.557],[-36.239,-32.226],[-36.965,-32.569],[-37.008,-34.372],[-36.16,-36.051],[-36.989,-37.31],[-38.164,-38.23],[-38.826,-40.196],[-38.608,-41.616],[-37.803,-40.799]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.33300000359,0.773000021542,0.819999964097,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[121.261,78.73],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 536","np":4,"cix":2,"ix":536,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[1.038,30.58],[23.2,21.794],[-10.607,-16.366],[-23.2,-30.58],[-23.199,-30.556]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0,0,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[170.409,92.42],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 537","np":4,"cix":2,"ix":537,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-2.249,10.088],[-1.253,5.833],[2.492,7.914],[2.826,4.155],[5.567,6.197],[6.296,4.126],[-6.297,-10.088],[-5.745,8.367],[-4.088,6.205]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[153.505,71.928],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 538","np":2,"cix":2,"ix":538,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[22.924,10.297],[-10.883,-27.863],[-11.611,-25.791],[-14.354,-27.833],[-14.687,-24.074],[-18.432,-26.156],[-19.429,-21.9],[-21.266,-25.783],[-22.924,-23.621],[-21.385,27.863]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.352999997606,0.556999954523,0.607999973671,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[170.684,103.917],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 539","np":2,"cix":2,"ix":539,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[9.091,-19.047],[-7.888,-25.911],[-8.765,11.847],[-9.092,25.912],[-9.079,25.898]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0,0,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[173.428,318.32],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 540","np":4,"cix":2,"ix":540,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[3.574,-5.388],[0.804,-3.655],[-0.212,-6.701],[-2.351,-4.885],[-2.827,-7.391],[-4.311,-6.673],[-4.638,7.392],[4.637,-2.661],[2.586,-2.379]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[168.974,336.84],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 541","np":2,"cix":2,"ix":541,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-16.535,-21.026],[-17.412,16.732],[-15.928,16.014],[-15.452,18.52],[-13.313,16.703],[-12.296,19.75],[-9.528,18.017],[-10.514,21.026],[-8.463,20.744],[17.412,-7.302]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.352999997606,0.556999954523,0.607999973671,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[182.075,313.435],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 542","np":2,"cix":2,"ix":542,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-13.727,20.469],[4.822,30.464],[11.31,-13.927],[13.726,-30.464],[13.71,-30.449]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0,0,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[278.67,98.383],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 543","np":4,"cix":2,"ix":543,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-5.238,5.529],[-1.8,3.798],[-1.071,7.502],[1.655,5.603],[1.839,8.607],[3.652,7.929],[6.068,-8.607],[-6.068,2.198],[-3.666,2.094]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[286.329,76.527],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 544","np":2,"cix":2,"ix":544,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[15.299,25.113],[21.786,-19.279],[19.975,-18.6],[19.79,-21.605],[17.065,-19.706],[16.336,-23.41],[12.898,-21.678],[14.47,-25.113],[12.068,-25.01],[-21.786,5.13]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.352999997606,0.556999954523,0.607999973671,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[268.194,103.735],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 545","np":2,"cix":2,"ix":545,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[6.665,-29.901],[-13.451,-27.618],[6.146,14.29],[13.447,29.901],[13.451,29.88]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0,0,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[233.759,340.562],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 546","np":4,"cix":2,"ix":546,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[2.903,-9.378],[1.169,-5.878],[-1.463,-8.632],[-2.546,-5.404],[-4.363,-7.876],[-5.408,-6.232],[1.893,9.379],[5.408,-7.004],[3.58,-5.508]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[245.313,361.084],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 547","np":2,"cix":2,"ix":547,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-20.109,-19.086],[-0.511,22.823],[0.534,21.178],[2.35,23.651],[3.433,20.423],[6.065,23.177],[7.799,19.677],[8.476,23.547],[10.304,22.051],[20.109,-23.651]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.352999997606,0.556999954523,0.607999973671,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[240.417,332.029],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 548","np":2,"cix":2,"ix":548,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-27.04,-4.975],[-25.066,11.466],[12.898,-5.24],[27.04,-11.462],[27.022,-11.466]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0,0,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[349.024,204.557],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 549","np":4,"cix":2,"ix":549,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-8.474,-2.335],[-5.318,-0.969],[-7.818,1.23],[-4.906,2.067],[-7.148,3.593],[-5.667,4.423],[8.474,-1.8],[-6.316,-4.423],[-4.974,-2.949]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[367.59,194.894],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 550","np":2,"cix":2,"ix":550,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-17.39,16.436],[20.576,-0.27],[19.094,-1.1],[21.337,-2.626],[18.424,-3.463],[20.924,-5.662],[17.768,-7.028],[21.269,-7.642],[19.926,-9.116],[-21.336,-16.436]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.352999997606,0.556999954523,0.607999973671,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[341.347,199.587],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 551","np":2,"cix":2,"ix":551,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[39.939,4.311],[36.251,-17.694],[-19.262,8.086],[-39.939,17.69],[-39.911,17.693]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0,0,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[80.966,207.006],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 552","np":4,"cix":2,"ix":552,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[12.577,2.936],[7.833,1.364],[11.439,-1.816],[7.083,-2.695],[10.337,-4.945],[8.102,-5.938],[-12.577,3.665],[9.475,5.938],[7.415,4.065]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[53.603,221.031],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 553","np":2,"cix":2,"ix":553,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[24.579,-21.997],[-30.934,3.783],[-28.699,4.776],[-31.953,7.026],[-27.597,7.905],[-31.202,11.085],[-26.459,12.657],[-31.621,13.786],[-29.561,15.659],[31.953,21.997]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.352999997606,0.556999954523,0.607999973671,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[92.639,211.31],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 554","np":2,"cix":2,"ix":554,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":900.000036657751,"st":0,"bm":0}]}],"layers":[{"ddd":0,"ind":1,"ty":0,"nm":"Comp 1","refId":"comp_0","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[118.5,118.5,0],"ix":2},"a":{"a":0,"k":[118.5,118.5,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":0,"k":{"i":[[64.805,0],[0,-64.805],[-64.805,0],[0,64.805]],"o":[[-64.805,0],[0,64.805],[64.805,0],[0,-64.805]],"v":[[118.34,1],[1,118.34],[118.34,235.68],[235.68,118.34]],"c":true},"ix":1},"o":{"a":0,"k":100,"ix":3},"x":{"a":0,"k":0,"ix":4},"nm":"Mask 2"}],"w":237,"h":237,"ip":0,"op":900.000036657751,"st":0,"bm":0}],"markers":[]}
\ No newline at end of file
diff --git a/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/maps.json b/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/res/maps.json
deleted file mode 100644 (file)
index 7bb4d8d..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"v":"5.1.16","fr":30,"ip":0,"op":132,"w":200,"h":85,"nm":"city 200x85","ddd":0,"assets":[{"id":"comp_0","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Shape Layer 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":0,"s":[8.25,92.375,0],"e":[9,73.375,0],"to":[0.125,-3.16666674613953,0],"ti":[-1.29166662693024,5.75,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":5,"s":[9,73.375,0],"e":[16,57.875,0],"to":[1.29166662693024,-5.75,0],"ti":[-2.22916674613953,0.60416668653488,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":12.5,"s":[16,57.875,0],"e":[22.375,69.75,0],"to":[2.22916674613953,-0.60416668653488,0],"ti":[-2.75,-2.9375,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":13.75,"s":[22.375,69.75,0],"e":[32.5,75.5,0],"to":[2.75,2.9375,0],"ti":[-3.20833325386047,-1.41666662693024,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":15,"s":[32.5,75.5,0],"e":[41.625,78.25,0],"to":[3.20833325386047,1.41666662693024,0],"ti":[-2.39583325386047,0.60416668653488,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":16.25,"s":[41.625,78.25,0],"e":[46.875,71.875,0],"to":[2.39583325386047,-0.60416668653488,0],"ti":[-2.3125,0.10416666418314,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":17.5,"s":[46.875,71.875,0],"e":[55.5,77.625,0],"to":[2.3125,-0.10416666418314,0],"ti":[-1.64583337306976,1.89583337306976,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":18.75,"s":[55.5,77.625,0],"e":[56.75,60.5,0],"to":[1.64583337306976,-1.89583337306976,0],"ti":[-0.20833332836628,5.29166650772095,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":20,"s":[56.75,60.5,0],"e":[56.75,45.875,0],"to":[0.20833332836628,-5.29166650772095,0],"ti":[-0.20833332836628,4.41666650772095,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":21.25,"s":[56.75,45.875,0],"e":[58,34,0],"to":[0.20833332836628,-4.41666650772095,0],"ti":[-0.95833331346512,3.02083325386047,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":22.5,"s":[58,34,0],"e":[62.5,27.75,0],"to":[0.95833331346512,-3.02083325386047,0],"ti":[-1.66666662693024,1.52083337306976,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":23.75,"s":[62.5,27.75,0],"e":[68,24.875,0],"to":[1.66666662693024,-1.52083337306976,0],"ti":[-0.9375,2.79166674613953,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":27.5,"s":[68,24.875,0],"e":[68.125,11,0],"to":[0.9375,-2.79166674613953,0],"ti":[-0.33333334326744,3.14583325386047,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":28.75,"s":[68.125,11,0],"e":[70,6,0],"to":[0.33333334326744,-3.14583325386047,0],"ti":[-0.70833331346512,-2.25,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":30,"s":[70,6,0],"e":[72.375,24.5,0],"to":[0.70833331346512,2.25,0],"ti":[-0.39583334326744,-3.08333325386047,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":31.25,"s":[72.375,24.5,0],"e":[72.375,24.5,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":35,"s":[72.375,24.5,0],"e":[78.125,27,0],"to":[0.95833331346512,0.41666665673256,0],"ti":[-1.64583337306976,-1.60416662693024,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":36.25,"s":[78.125,27,0],"e":[82.25,34.125,0],"to":[1.64583337306976,1.60416662693024,0],"ti":[-0.6875,-4.79166650772095,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":37.5,"s":[82.25,34.125,0],"e":[82.25,55.75,0],"to":[0.6875,4.79166650772095,0],"ti":[-1.27083337306976,-3.60416674613953,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":38.75,"s":[82.25,55.75,0],"e":[89.875,55.75,0],"to":[1.27083337306976,3.60416674613953,0],"ti":[-1.27083337306976,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":40,"s":[89.875,55.75,0],"e":[89.875,55.75,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":43.75,"s":[89.875,55.75,0],"e":[93.875,73,0],"to":[0.66666668653488,2.875,0],"ti":[-0.875,-4.39583349227905,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":45,"s":[93.875,73,0],"e":[95.125,82.125,0],"to":[0.875,4.39583349227905,0],"ti":[-0.20833332836628,2.89583325386047,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":46.25,"s":[95.125,82.125,0],"e":[95.162,83.291,0],"to":[0.08235409110785,-1.14472186565399,0],"ti":[0.03311010077596,4.17439985275269,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":47.5,"s":[95.162,83.291,0],"e":[95.125,55.625,0],"to":[-0.05064940080047,-6.38569068908691,0],"ti":[-0.113381318748,3.3510479927063,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":50,"s":[95.125,55.625,0],"e":[96.25,48.875,0],"to":[0.1875,-5.54166650772095,0],"ti":[-2.8125,1.10416662693024,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":56.25,"s":[96.25,48.875,0],"e":[112,49,0],"to":[2.8125,-1.10416662693024,0],"ti":[-2.625,-3.1875,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":62.5,"s":[112,49,0],"e":[112,68,0],"to":[2.625,3.1875,0],"ti":[0,-4.64583349227905,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":65,"s":[112,68,0],"e":[112,76.875,0],"to":[0,4.64583349227905,0],"ti":[-2.5625,-1.47916662693024,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":67.5,"s":[112,76.875,0],"e":[127.375,76.875,0],"to":[2.5625,1.47916662693024,0],"ti":[-2.5625,6.52083349227905,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":75,"s":[127.375,76.875,0],"e":[127.375,37.75,0],"to":[2.5625,-6.52083349227905,0],"ti":[-2.20833325386047,7.75,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":80,"s":[127.375,37.75,0],"e":[140.625,30.375,0],"to":[2.20833325386047,-7.75,0],"ti":[-2.4375,4,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":82.5,"s":[140.625,30.375,0],"e":[142,13.75,0],"to":[2.4375,-4,0],"ti":[-2.77083325386047,-3.08333325386047,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":83.75,"s":[142,13.75,0],"e":[157.25,48.875,0],"to":[2.77083325386047,3.08333325386047,0],"ti":[-8.125,-6.14583349227905,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":85,"s":[157.25,48.875,0],"e":[190.75,50.625,0],"to":[8.125,6.14583349227905,0],"ti":[-5.58333349227905,-7.95833349227905,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":92.5,"s":[190.75,50.625,0],"e":[190.75,96.625,0],"to":[5.58333349227905,7.95833349227905,0],"ti":[0,-7.66666650772095,0]},{"t":97.5}],"ix":2},"a":{"a":0,"k":[-12,-6.5,0],"ix":1},"s":{"a":0,"k":[39.083,39.083,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[26.875,26.875],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.941176530427,0.466666696586,0.18431372549,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-12.393,-6.871],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":132,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"melbourne_orange Outlines","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":80,"s":[100.25,42.75,0],"e":[100,42.5,0],"to":[-0.04166666790843,-0.04166666790843,0],"ti":[0.04166666790843,0.04166666790843,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":97.5,"s":[100,42.5,0],"e":[100,42.5,0],"to":[0,0,0],"ti":[0,0,0]},{"t":195}],"ix":2},"a":{"a":0,"k":[92.5,42.5,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":0,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[6,86],[-11,86],[-8,102],[6,102.5],[6,96.899],[6,96.152],[6,95.43],[6,95.335],[6,95.291],[6,95.253],[6,95.253],[6,95.253],[6,95.253],[6,95.243],[6,95.241],[6,95.189],[6,95.107],[6,94.9],[6,94.729],[6,93.699]],"c":true}],"e":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[6,73.656],[-11,73.656],[-8,89.656],[6,90.156],[6,84.556],[6,83.808],[6,83.086],[6,82.991],[6,82.947],[6,82.909],[6,82.909],[6,82.909],[6,82.909],[6,82.899],[6,82.897],[6,82.845],[6,82.763],[6,82.556],[6,82.385],[6,81.355]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":5,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[6,73.656],[-11,73.656],[-8,89.656],[6,90.156],[6,84.556],[6,83.808],[6,83.086],[6,82.991],[6,82.947],[6,82.909],[6,82.909],[6,82.909],[6,82.909],[6,82.899],[6,82.897],[6,82.845],[6,82.763],[6,82.556],[6,82.385],[6,81.355]],"c":true}],"e":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[3.5,41.5],[-13.5,41.5],[-8,89.5],[6,90],[5.151,73.537],[5.038,71.339],[4.929,69.217],[4.914,68.939],[4.908,68.809],[4.902,68.698],[4.902,68.698],[4.902,68.698],[4.902,68.697],[4.9,68.668],[4.9,68.663],[4.892,68.509],[4.88,68.269],[4.848,67.661],[4.823,67.158],[4.667,64.131]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":12.5,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[3.5,41.5],[-13.5,41.5],[-8,89.5],[6,90],[5.151,73.537],[5.038,71.339],[4.929,69.217],[4.914,68.939],[4.908,68.809],[4.902,68.698],[4.902,68.698],[4.902,68.698],[4.902,68.697],[4.9,68.668],[4.9,68.663],[4.892,68.509],[4.88,68.269],[4.848,67.661],[4.823,67.158],[4.667,64.131]],"c":true}],"e":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[46,51],[-13.5,41.5],[-8,89.5],[6,90],[46.522,85.525],[46.486,83.156],[46.452,80.869],[46.447,80.569],[46.445,80.429],[46.443,80.309],[46.443,80.309],[46.443,80.309],[46.443,80.309],[46.443,80.278],[46.442,80.272],[46.44,80.106],[46.436,79.847],[46.426,79.192],[46.418,78.65],[46.369,75.388]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":18.75,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[46,51],[-13.5,41.5],[-8,89.5],[6,90],[46.522,85.525],[46.486,83.156],[46.452,80.869],[46.447,80.569],[46.445,80.429],[46.443,80.309],[46.443,80.309],[46.443,80.309],[46.443,80.309],[46.443,80.278],[46.442,80.272],[46.44,80.106],[46.436,79.847],[46.426,79.192],[46.418,78.65],[46.369,75.388]],"c":true}],"e":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[31,-15.5],[-13.5,41.5],[-8,89.5],[6,90],[46.522,85.525],[61.438,75.001],[59.396,48.603],[59.127,45.134],[59.002,43.519],[58.895,42.138],[58.895,42.135],[58.895,42.135],[58.895,42.13],[58.867,41.77],[58.862,41.702],[58.714,39.791],[58.483,36.802],[57.897,29.236],[57.413,22.983],[54.499,-14.678]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":26.25,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[31,-15.5],[-13.5,41.5],[-8,89.5],[6,90],[46.522,85.525],[61.438,75.001],[59.396,48.603],[59.127,45.134],[59.002,43.519],[58.895,42.138],[58.895,42.135],[58.895,42.135],[58.895,42.13],[58.867,41.77],[58.862,41.702],[58.714,39.791],[58.483,36.802],[57.897,29.236],[57.413,22.983],[54.499,-14.678]],"c":true}],"e":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[31,-15.5],[-13.5,41.5],[-8,89.5],[6,90],[46.522,85.525],[61.438,75.001],[63.736,48.78],[64.038,45.335],[64.178,43.731],[64.298,42.359],[64.299,42.357],[64.299,42.356],[64.299,42.352],[64.33,41.994],[64.336,41.926],[64.503,40.028],[64.763,37.059],[65.421,29.545],[64.827,-14.457],[54.499,-14.678]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":35,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[31,-15.5],[-13.5,41.5],[-8,89.5],[6,90],[46.522,85.525],[61.438,75.001],[63.736,48.78],[64.038,45.335],[64.178,43.731],[64.298,42.359],[64.299,42.357],[64.299,42.356],[64.299,42.352],[64.33,41.994],[64.336,41.926],[64.503,40.028],[64.763,37.059],[65.421,29.545],[64.827,-14.457],[54.499,-14.678]],"c":true}],"e":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[31,-15.5],[-13.5,41.5],[-8,89.5],[6,90],[46.522,85.525],[61.438,75.001],[81.251,58.077],[81.371,51.622],[81.427,48.619],[81.475,46.048],[81.475,46.044],[81.475,46.043],[81.475,46.035],[81.488,45.365],[81.49,45.237],[81.556,41.682],[81.659,36.12],[81.921,22.045],[64.827,-14.457],[54.499,-14.678]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":41.25,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[31,-15.5],[-13.5,41.5],[-8,89.5],[6,90],[46.522,85.525],[61.438,75.001],[81.251,58.077],[81.371,51.622],[81.427,48.619],[81.475,46.048],[81.475,46.044],[81.475,46.043],[81.475,46.035],[81.488,45.365],[81.49,45.237],[81.556,41.682],[81.659,36.12],[81.921,22.045],[64.827,-14.457],[54.499,-14.678]],"c":true}],"e":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0.336,2.318],[0.38,2.831],[0,0],[0.002,0.016],[0.01,0.074],[0.147,1.172],[0.048,0.39],[-0.398,0.146],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-0.303,-2.09],[-0.005,-0.04],[0,0],[-0.01,-0.074],[-0.158,-1.185],[-0.05,-0.398],[-0.617,-5.064],[0.985,-0.361],[0,0],[0,0],[0,0],[0,0]],"v":[[31,-15.5],[-13.5,41.5],[-8,89.5],[6,90],[46.522,85.525],[61.438,75.001],[71.251,96.577],[91.432,85.489],[90.865,81.643],[89.794,73.991],[89.778,73.87],[89.772,73.822],[89.742,73.599],[89.281,70.045],[89.135,68.862],[88.515,59.361],[79.814,42.439],[81.921,22.045],[64.827,-14.457],[54.499,-14.678]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":50,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0.336,2.318],[0.38,2.831],[0,0],[0.002,0.016],[0.01,0.074],[0.147,1.172],[0.048,0.39],[-0.398,0.146],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-0.303,-2.09],[-0.005,-0.04],[0,0],[-0.01,-0.074],[-0.158,-1.185],[-0.05,-0.398],[-0.617,-5.064],[0.985,-0.361],[0,0],[0,0],[0,0],[0,0]],"v":[[31,-15.5],[-13.5,41.5],[-8,89.5],[6,90],[46.522,85.525],[61.438,75.001],[71.251,96.577],[91.432,85.489],[90.865,81.643],[89.794,73.991],[89.778,73.87],[89.772,73.822],[89.742,73.599],[89.281,70.045],[89.135,68.862],[88.515,59.361],[79.814,42.439],[81.921,22.045],[64.827,-14.457],[54.499,-14.678]],"c":true}],"e":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0.605,4.652],[0.707,5.67],[0.01,0.081],[0.004,0.032],[0.019,0.149],[0.282,2.343],[0.093,0.78],[-0.398,0.146],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-0.546,-4.194],[-0.01,-0.081],[-0.004,-0.032],[-0.019,-0.149],[-0.295,-2.373],[-0.096,-0.796],[-1.201,-10.121],[0.985,-0.361],[0,0],[0,0],[0,0],[0,0]],"v":[[31,-15.5],[-13.5,41.5],[-8,89.5],[6,90],[46.522,85.525],[61.438,75.001],[71.251,96.577],[91.432,85.489],[90.417,77.766],[88.46,62.424],[88.43,62.183],[88.418,62.088],[88.362,61.641],[87.491,54.526],[87.208,52.161],[85.515,33.361],[79.814,42.439],[81.921,22.045],[64.827,-14.457],[54.499,-14.678]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":55,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0.605,4.652],[0.707,5.67],[0.01,0.081],[0.004,0.032],[0.019,0.149],[0.282,2.343],[0.093,0.78],[-0.398,0.146],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-0.546,-4.194],[-0.01,-0.081],[-0.004,-0.032],[-0.019,-0.149],[-0.295,-2.373],[-0.096,-0.796],[-1.201,-10.121],[0.985,-0.361],[0,0],[0,0],[0,0],[0,0]],"v":[[31,-15.5],[-13.5,41.5],[-8,89.5],[6,90],[46.522,85.525],[61.438,75.001],[71.251,96.577],[91.432,85.489],[90.417,77.766],[88.46,62.424],[88.43,62.183],[88.418,62.088],[88.362,61.641],[87.491,54.526],[87.208,52.161],[85.515,33.361],[79.814,42.439],[81.921,22.045],[64.827,-14.457],[54.499,-14.678]],"c":true}],"e":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-4.677,11.764],[-1.163,5.562],[-0.02,0.137],[-0.007,0.052],[0.001,0.218],[1.949,-0.257],[0.001,0.004],[-0.427,0.157],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[3.026,-7.611],[0.031,-0.146],[0.008,-0.054],[0.031,-0.246],[-0.016,-3.466],[-0.662,0.087],[0.935,-0.532],[0.985,-0.361],[0,0],[0,0],[0,0],[0,0]],"v":[[41,-15.5],[-3.5,41.5],[-6,90.5],[16,90],[56.522,85.525],[71.438,75.001],[81.251,96.577],[101.432,85.489],[105.72,51.786],[109.753,42.158],[111.33,42.983],[112.602,41.824],[109.895,40.878],[112.587,37.251],[111.48,37.442],[95.515,33.361],[89.814,42.439],[91.921,22.045],[74.827,-14.457],[64.499,-14.678]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":63.75,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-4.677,11.764],[-1.163,5.562],[-0.02,0.137],[-0.007,0.052],[0.001,0.218],[1.949,-0.257],[0.001,0.004],[-0.427,0.157],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[3.026,-7.611],[0.031,-0.146],[0.008,-0.054],[0.031,-0.246],[-0.016,-3.466],[-0.662,0.087],[0.935,-0.532],[0.985,-0.361],[0,0],[0,0],[0,0],[0,0]],"v":[[41,-15.5],[-3.5,41.5],[-6,90.5],[16,90],[56.522,85.525],[71.438,75.001],[81.251,96.577],[101.432,85.489],[105.72,51.786],[109.753,42.158],[111.33,42.983],[112.602,41.824],[109.895,40.878],[112.587,37.251],[111.48,37.442],[95.515,33.361],[89.814,42.439],[91.921,22.045],[74.827,-14.457],[64.499,-14.678]],"c":true}],"e":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-4.677,11.764],[-1.163,5.562],[2.392,3.689],[1.083,1.699],[0.034,3.46],[0.009,12.741],[0.001,0.004],[-0.427,0.157],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[3.026,-7.611],[0.049,-0.233],[-0.939,-1.449],[-5.086,-7.973],[-0.045,-4.534],[-0.003,-4.327],[0.935,-0.532],[0.985,-0.361],[0,0],[0,0],[0,0],[0,0]],"v":[[31,-15.5],[-13.5,41.5],[-8,89.5],[6,90],[46.522,85.525],[61.438,75.001],[71.251,96.577],[91.432,85.489],[97.72,111.786],[122.753,116.658],[118.697,110.115],[115.63,105.354],[108.31,84.18],[108.237,41.212],[108.23,34.048],[85.515,33.361],[79.814,42.439],[81.921,22.045],[64.827,-14.457],[54.499,-14.678]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":68.75,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-4.677,11.764],[-1.163,5.562],[2.392,3.689],[1.083,1.699],[0.034,3.46],[0.009,12.741],[0.001,0.004],[-0.427,0.157],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[3.026,-7.611],[0.049,-0.233],[-0.939,-1.449],[-5.086,-7.973],[-0.045,-4.534],[-0.003,-4.327],[0.935,-0.532],[0.985,-0.361],[0,0],[0,0],[0,0],[0,0]],"v":[[31,-15.5],[-13.5,41.5],[-8,89.5],[6,90],[46.522,85.525],[61.438,75.001],[71.251,96.577],[91.432,85.489],[97.72,111.786],[122.753,116.658],[118.697,110.115],[115.63,105.354],[108.31,84.18],[108.237,41.212],[108.23,34.048],[85.515,33.361],[79.814,42.439],[81.921,22.045],[64.827,-14.457],[54.499,-14.678]],"c":true}],"e":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-4.677,11.764],[-1.163,5.562],[0.347,3.557],[0.161,1.639],[0.034,3.46],[4.388,13.024],[0.001,0.004],[-0.427,0.157],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[3.026,-7.611],[0.049,-0.233],[-0.136,-1.397],[-0.757,-7.694],[-0.045,-4.534],[-1.49,-4.423],[0.935,-0.532],[0.985,-0.361],[0,0],[0,0],[0,0],[0,0]],"v":[[31,-35.5],[-13.5,21.5],[-7.818,96.275],[6.182,96.775],[46.704,92.299],[60.87,81.751],[70.683,103.327],[90.864,92.239],[97.095,91.786],[122.753,96.658],[122.222,90.342],[121.771,85.75],[120.06,65.074],[106.97,21.266],[104.48,13.942],[85.515,13.361],[79.814,22.439],[81.921,2.045],[64.827,-34.457],[54.499,-34.678]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":75,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-4.677,11.764],[-1.163,5.562],[0.347,3.557],[0.161,1.639],[0.034,3.46],[4.388,13.024],[0.001,0.004],[-0.427,0.157],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[3.026,-7.611],[0.049,-0.233],[-0.136,-1.397],[-0.757,-7.694],[-0.045,-4.534],[-1.49,-4.423],[0.935,-0.532],[0.985,-0.361],[0,0],[0,0],[0,0],[0,0]],"v":[[31,-35.5],[-13.5,21.5],[-7.818,96.275],[6.182,96.775],[46.704,92.299],[60.87,81.751],[70.683,103.327],[90.864,92.239],[97.095,91.786],[122.753,96.658],[122.222,90.342],[121.771,85.75],[120.06,65.074],[106.97,21.266],[104.48,13.942],[85.515,13.361],[79.814,22.439],[81.921,2.045],[64.827,-34.457],[54.499,-34.678]],"c":true}],"e":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-4.677,11.764],[-1.163,5.562],[0.545,11.145],[0.25,5.06],[0.034,3.46],[3.965,-3.222],[0.001,0.004],[-0.427,0.157],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[3.026,-7.611],[0.049,-0.233],[-0.214,-4.377],[-1.176,-23.754],[-0.045,-4.534],[-1.346,1.094],[0.935,-0.532],[0.985,-0.361],[0,0],[0,0],[0,0],[0,0]],"v":[[31,-25.5],[-13.5,31.5],[-8,89.5],[6,90],[47.522,84.275],[62.438,73.751],[71.183,100.327],[91.364,89.239],[97.72,101.786],[122.753,106.658],[121.881,87.265],[121.177,72.969],[118.56,17.574],[106.73,22.054],[104.48,23.942],[85.515,23.361],[79.814,32.439],[81.921,12.045],[64.827,-24.457],[54.499,-24.678]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":80,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-4.677,11.764],[-1.163,5.562],[0.545,11.145],[0.25,5.06],[0.034,3.46],[3.965,-3.222],[0.001,0.004],[-0.427,0.157],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[3.026,-7.611],[0.049,-0.233],[-0.214,-4.377],[-1.176,-23.754],[-0.045,-4.534],[-1.346,1.094],[0.935,-0.532],[0.985,-0.361],[0,0],[0,0],[0,0],[0,0]],"v":[[31,-25.5],[-13.5,31.5],[-8,89.5],[6,90],[47.522,84.275],[62.438,73.751],[71.183,100.327],[91.364,89.239],[97.72,101.786],[122.753,106.658],[121.881,87.265],[121.177,72.969],[118.56,17.574],[106.73,22.054],[104.48,23.942],[85.515,23.361],[79.814,32.439],[81.921,12.045],[64.827,-24.457],[54.499,-24.678]],"c":true}],"e":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-4.677,11.764],[-1.163,5.562],[-19.442,26.716],[-2.668,8.81],[0.032,3.273],[-0.42,-3.904],[0.002,0.005],[-0.427,0.157],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[3.026,-7.611],[0.052,-0.25],[7.635,-10.492],[11.052,-36.494],[-0.04,-4.114],[0.42,3.904],[0.935,-0.532],[0.985,-0.361],[0,0],[0,0],[0,0],[0,0]],"v":[[31,-15.5],[-13.5,41.5],[-8,89.5],[6,90],[46.522,85.525],[61.438,75.001],[71.251,96.577],[91.432,85.489],[97.72,111.786],[122.753,116.658],[170.518,62.793],[187.094,33.028],[164.06,-23.426],[106.08,-11.904],[104.48,33.942],[85.515,33.361],[79.814,42.439],[81.921,22.045],[64.827,-14.457],[54.499,-14.678]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":92.5,"s":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-4.677,11.764],[-1.163,5.562],[-19.442,26.716],[-2.668,8.81],[0.032,3.273],[-0.42,-3.904],[0.002,0.005],[-0.427,0.157],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[3.026,-7.611],[0.052,-0.25],[7.635,-10.492],[11.052,-36.494],[-0.04,-4.114],[0.42,3.904],[0.935,-0.532],[0.985,-0.361],[0,0],[0,0],[0,0],[0,0]],"v":[[31,-15.5],[-13.5,41.5],[-8,89.5],[6,90],[46.522,85.525],[61.438,75.001],[71.251,96.577],[91.432,85.489],[97.72,111.786],[122.753,116.658],[170.518,62.793],[187.094,33.028],[164.06,-23.426],[106.08,-11.904],[104.48,33.942],[85.515,33.361],[79.814,42.439],[81.921,22.045],[64.827,-14.457],[54.499,-14.678]],"c":true}],"e":[{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-4.677,11.764],[-1.163,5.562],[-19.414,27.8],[-2.375,7.842],[0.032,3.273],[-0.42,-3.904],[0.002,0.005],[-0.427,0.157],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[3.026,-7.611],[0.054,-0.261],[6.505,-9.315],[11.052,-36.494],[-0.04,-4.114],[0.42,3.904],[0.935,-0.532],[0.985,-0.361],[0,0],[0,0],[0,0],[0,0]],"v":[[31,-15.5],[-13.5,41.5],[-8,89.5],[6,90],[46.522,85.525],[61.438,75.001],[71.251,96.577],[91.432,85.489],[97.72,111.786],[122.753,116.658],[219.983,107.837],[187.094,33.028],[164.06,-23.426],[106.08,-11.904],[104.48,33.942],[85.515,33.361],[79.814,42.439],[81.921,22.045],[64.827,-14.457],[54.499,-14.678]],"c":true}]},{"t":103.75}],"ix":1},"o":{"a":0,"k":100,"ix":3},"x":{"a":0,"k":0,"ix":4},"nm":"Mask 1"}],"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-92.43,41.943],[-92.43,29.503],[-89.412,29.503],[-89.412,19.37],[-86.393,19.37],[-86.393,16.331],[-85.89,16.331],[-85.265,9.743],[-82.75,9.743],[-83.375,16.331],[-82.369,16.331],[-82.369,15.824],[-80.86,15.824],[-80.86,16.331],[-79.854,16.331],[-79.854,24.943],[-72.811,24.943],[-72.811,30.01],[-70.296,30.01],[-70.296,31.023],[-69.793,31.023],[-69.793,30.516],[-64.763,30.516],[-64.763,33.049],[-56.211,33.049],[-56.211,27.984],[-54.199,27.984],[-54.199,25.958],[-50.678,25.958],[-50.678,25.451],[-48.665,25.451],[-48.665,25.958],[-47.156,25.958],[-47.156,28.49],[-45.647,28.49],[-45.647,35.077],[-43.635,35.077],[-43.01,-12.549],[-39.489,-12.549],[-39.489,-18.122],[-34.458,-18.122],[-34.458,-21.163],[-30.938,-21.163],[-30.938,-42.443],[-27.919,-42.443],[-27.919,-21.163],[-23.895,-21.163],[-23.895,-18.122],[-19.367,-18.122],[-19.367,-12.044],[-16.852,-12.044],[-16.852,10.251],[-6.288,10.251],[-6.913,40.65],[-5.908,40.65],[-5.908,23.93],[-5.404,23.93],[-4.779,3.663],[0.755,3.663],[0.755,-0.389],[3.774,-0.389],[3.774,2.144],[7.798,2.144],[7.798,3.663],[13.834,3.663],[13.834,33.049],[16.349,33.049],[16.349,31.023],[26.913,31.023],[26.913,-8.497],[31.441,-8.497],[31.441,-10.016],[34.458,-10.016],[34.458,-13.564],[39.489,-13.564],[39.489,-15.589],[40.997,-15.589],[40.997,-34.337],[44.017,-34.337],[44.017,-15.589],[45.525,-15.589],[45.525,-13.564],[50.557,-13.564],[50.557,-10.016],[53.574,-10.016],[53.574,-7.99],[57.599,-7.99],[57.599,3.663],[62.629,3.663],[62.629,0.118],[72.188,0.118],[72.188,1.131],[76.212,1.131],[76.212,4.171],[82.247,4.171],[82.247,3.157],[88.788,3.157],[88.788,5.691],[91.805,5.691],[91.805,42.443]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.941176474094,0.466666668653,0.184313729405,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":1.5,"ix":5},"lc":1,"lj":1,"ml":10,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[92.187,43.056],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":165,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":0,"nm":"melbourne_purple Outlines Comp 1","refId":"comp_1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[100,42.5,0],"ix":2},"a":{"a":0,"k":[100,42.5,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":200,"h":85,"ip":0,"op":165,"st":0,"bm":0}]},{"id":"comp_1","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"melbourne_purple Outlines","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[100,42.5,0],"ix":2},"a":{"a":0,"k":[92.5,42.5,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-91.805,41.943],[-91.805,29.503],[-88.787,29.503],[-88.787,19.37],[-85.768,19.37],[-85.768,16.331],[-85.265,16.331],[-85.265,9.743],[-82.75,9.743],[-82.75,16.331],[-81.744,16.331],[-81.744,15.824],[-80.235,15.824],[-80.235,16.331],[-79.229,16.331],[-79.229,24.943],[-72.186,24.943],[-72.186,30.01],[-69.671,30.01],[-69.671,31.023],[-69.168,31.023],[-69.168,30.516],[-64.138,30.516],[-64.138,33.049],[-55.586,33.049],[-55.586,27.984],[-53.574,27.984],[-53.574,25.958],[-50.053,25.958],[-50.053,25.451],[-48.04,25.451],[-48.04,25.958],[-46.531,25.958],[-46.531,28.49],[-45.022,28.49],[-45.022,35.077],[-43.01,35.077],[-43.01,-12.549],[-39.489,-12.549],[-39.489,-18.122],[-34.458,-18.122],[-34.458,-21.163],[-30.938,-21.163],[-30.938,-42.443],[-27.919,-42.443],[-27.919,-21.163],[-23.895,-21.163],[-23.895,-18.122],[-19.367,-18.122],[-19.367,-12.044],[-16.852,-12.044],[-16.852,10.251],[-6.288,10.251],[-6.288,40.65],[-5.283,40.65],[-5.283,23.93],[-4.779,23.93],[-4.779,3.663],[0.755,3.663],[0.755,-0.389],[3.774,-0.389],[3.774,2.144],[7.798,2.144],[7.798,3.663],[13.834,3.663],[13.834,33.049],[16.35,33.049],[16.35,31.023],[26.913,31.023],[26.913,-8.497],[31.441,-8.497],[31.441,-10.016],[34.459,-10.016],[34.459,-13.564],[39.489,-13.564],[39.489,-15.589],[40.997,-15.589],[40.997,-34.337],[44.017,-34.337],[44.017,-15.589],[45.525,-15.589],[45.525,-13.564],[50.557,-13.564],[50.557,-10.016],[53.574,-10.016],[53.574,-7.99],[57.599,-7.99],[57.599,3.663],[62.629,3.663],[62.629,0.118],[72.188,0.118],[72.188,1.131],[76.212,1.131],[76.212,4.171],[82.247,4.171],[82.247,3.157],[88.788,3.157],[88.788,5.691],[91.805,5.691],[91.805,42.443]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.458999992819,0.372999991623,0.638999968884,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":1.5,"ix":5},"lc":1,"lj":1,"ml":10,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[92.187,43.056],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":165,"st":0,"bm":0}]}],"layers":[{"ddd":0,"ind":1,"ty":0,"nm":"melbourne","refId":"comp_0","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[100,42.5,0],"ix":2},"a":{"a":0,"k":[100,42.5,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":200,"h":85,"ip":0,"op":165,"st":0,"bm":0}],"markers":[]}
\ No newline at end of file
diff --git a/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/shared/res/ElottieFormsGallery.Tizen.png b/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/shared/res/ElottieFormsGallery.Tizen.png
deleted file mode 100644 (file)
index 9f3cb98..0000000
Binary files a/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/shared/res/ElottieFormsGallery.Tizen.png and /dev/null differ
diff --git a/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/tizen-manifest.xml b/test/ElottieFormsGallery/ElottieFormsGallery.Tizen/tizen-manifest.xml
deleted file mode 100644 (file)
index 901a1e0..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<manifest xmlns="http://tizen.org/ns/packages" api-version="4" package="org.tizen.example.ElottieFormsGallery.Tizen" version="1.0.0">
-       <profile name="common" />
-       <ui-application appid="org.tizen.example.ElottieFormsGallery.Tizen"
-                                       exec="ElottieFormsGallery.Tizen.dll"
-                                       type="dotnet"
-                                       multiple="false"
-                                       taskmanage="true"
-                                       nodisplay="false"
-                                       launch_mode="single">
-  <label>ElottieFormsGallery.Tizen</label>
-       <icon>ElottieFormsGallery.Tizen.png</icon>
-        <metadata key="http://tizen.org/metadata/prefer_dotnet_aot" value="true" />
-       </ui-application>
-</manifest>
diff --git a/test/ElottieFormsGallery/ElottieFormsGallery/App.cs b/test/ElottieFormsGallery/ElottieFormsGallery/App.cs
deleted file mode 100644 (file)
index af462bc..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-using Xamarin.Forms;
-
-namespace ElottieFormsGallery
-{
-    public class App : Application
-    {
-        public App()
-        {
-            //XAML
-            MainPage = new MainPage();
-            //C#
-            //MainPage = new MainPageCS();
-
-
-        }
-
-        protected override void OnStart()
-        {
-            // Handle when your app starts
-        }
-
-        protected override void OnSleep()
-        {
-            // Handle when your app sleeps
-        }
-
-        protected override void OnResume()
-        {
-            // Handle when your app resumes
-        }
-    }
-}
diff --git a/test/ElottieFormsGallery/ElottieFormsGallery/ElottieFormsGallery.csproj b/test/ElottieFormsGallery/ElottieFormsGallery/ElottieFormsGallery.csproj
deleted file mode 100644 (file)
index 5a32956..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-<Project Sdk="Microsoft.NET.Sdk">
-
-  <PropertyGroup>
-    <TargetFramework>netstandard2.0</TargetFramework>
-  </PropertyGroup>
-
-  <ItemGroup>
-    <ProjectReference Include="..\..\..\src\XSF\XSF.csproj" />
-  </ItemGroup>
-
-</Project>
diff --git a/test/ElottieFormsGallery/ElottieFormsGallery/LottieDataModel.cs b/test/ElottieFormsGallery/ElottieFormsGallery/LottieDataModel.cs
deleted file mode 100644 (file)
index 15cfb20..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-using System.Collections.ObjectModel;
-using System.Collections.Generic;
-
-namespace ElottieFormsGallery
-{
-    public class LottieDataModel
-    {
-        public string AnimationFile { get; set; }
-
-        public static IList<LottieDataModel> All { set; get; }
-
-        static LottieDataModel()
-        {
-            All = new ObservableCollection<LottieDataModel> {
-                new LottieDataModel
-                {
-                    AnimationFile = "a_mountain.json"
-                },
-                new LottieDataModel
-                {
-                    AnimationFile = "cooking.json"
-                },
-                new LottieDataModel
-                {
-                    AnimationFile = "done.json"
-                },
-                new LottieDataModel
-                {
-                    AnimationFile = "emoji_wink.json"
-                },
-                new LottieDataModel
-                {
-                    AnimationFile = "fingerprint_success.json"
-                },
-                new LottieDataModel
-                {
-                    AnimationFile = "heart.json"
-                },
-                new LottieDataModel
-                {
-                    AnimationFile = "icon_animation.json"
-                },
-                new LottieDataModel
-                {
-                    AnimationFile = "like.json"
-                },
-                new LottieDataModel
-                {
-                    AnimationFile = "loading.json"
-                },
-                new LottieDataModel
-                {
-                    AnimationFile = "maps.json"
-                }
-            };
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/ElottieFormsGallery/ElottieFormsGallery/MainPage.xaml b/test/ElottieFormsGallery/ElottieFormsGallery/MainPage.xaml
deleted file mode 100644 (file)
index 06b2471..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<w:IndexPage
-       x:Class="ElottieFormsGallery.MainPage"
-       xmlns="http://xamarin.com/schemas/2014/forms"
-       xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-       xmlns:w="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"
-    xmlns:e="clr-namespace:ElottieSharp.Forms;assembly=XSF">
-    <w:IndexPage.Children>
-        <ContentPage></ContentPage>
-    </w:IndexPage.Children>
-    <w:IndexPage.ItemTemplate>
-        <DataTemplate>
-            <ContentPage Appearing="OnPageAppearing" Disappearing="OnPageDisappearing">
-                <StackLayout>
-                    <e:ElottieAnimationView
-                        AnimationFile="{Binding AnimationFile}"
-                        AutoRepeat="False"
-                        HorizontalOptions="FillAndExpand"
-                        VerticalOptions="FillAndExpand"/>
-                </StackLayout>
-            </ContentPage>
-        </DataTemplate>
-    </w:IndexPage.ItemTemplate>
-</w:IndexPage>
\ No newline at end of file
diff --git a/test/ElottieFormsGallery/ElottieFormsGallery/MainPage.xaml.cs b/test/ElottieFormsGallery/ElottieFormsGallery/MainPage.xaml.cs
deleted file mode 100644 (file)
index 6501634..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-using System;
-using Xamarin.Forms;
-using Tizen.Wearable.CircularUI.Forms;
-using Xamarin.Forms.Xaml;
-using ElottieSharp.Forms;
-
-namespace ElottieFormsGallery
-{
-    [XamlCompilation(XamlCompilationOptions.Compile)]
-    public partial class MainPage : IndexPage
-    {
-        public MainPage()
-        {
-            InitializeComponent();
-            ItemsSource = LottieDataModel.All;
-        }
-
-        void OnPageAppearing(object sender, EventArgs args)
-        {
-            ContentPage page = (ContentPage)sender;
-            StackLayout layout = (StackLayout)page.Content;
-            ElottieAnimationView animationView = (ElottieAnimationView)layout.Children[0];
-            animationView.Play();
-        }
-
-        void OnPageDisappearing(object sender, EventArgs args)
-        {
-            ContentPage page = (ContentPage)sender;
-            StackLayout layout = (StackLayout)page.Content;
-            ElottieAnimationView animationView = (ElottieAnimationView)layout.Children[0];
-            if (animationView.IsPlaying)
-                animationView.Stop();
-
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/ElottieFormsGallery/ElottieFormsGallery/MainPageCS.cs b/test/ElottieFormsGallery/ElottieFormsGallery/MainPageCS.cs
deleted file mode 100644 (file)
index e81bef3..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-using Xamarin.Forms;
-using ElottieSharp.Forms;
-using Tizen.Wearable.CircularUI.Forms;
-
-namespace ElottieFormsGallery
-{
-    public class MainPageCS : IndexPage
-    {
-        public MainPageCS()
-        {
-            ItemTemplate = new DataTemplate(() =>
-            {
-                var animationView = new ElottieAnimationView
-                {
-                    AutoRepeat = true,
-                    HorizontalOptions = LayoutOptions.FillAndExpand,
-                    VerticalOptions = LayoutOptions.FillAndExpand
-                };
-                animationView.SetBinding(ElottieAnimationView.AnimationFileProperty, "AnimationFile");
-
-                var contentPage = new ContentPage
-                {
-                    Content = new StackLayout
-                    {
-                        Children = { animationView }
-                    }
-                };
-
-                contentPage.Appearing += (s, e) =>
-                {
-                    animationView.Play();
-                };
-
-                contentPage.Disappearing += (s, e) =>
-                {
-                    if (animationView.IsPlaying)
-                        animationView.Stop();
-                };
-
-                return contentPage;
-            });
-            ItemsSource = LottieDataModel.All;
-        }
-    }
-}
diff --git a/test/HeartRateMonitor/App.cs b/test/HeartRateMonitor/App.cs
deleted file mode 100644 (file)
index b5e4c5b..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using Xamarin.Forms;
-using HeartRateMonitor.ViewModels;
-using HeartRateMonitor.Views;
-
-namespace HeartRateMonitor
-{
-    public class App : Application
-    {
-
-        /// <summary>
-        /// An instance of the MainViewModel class.
-        /// </summary>
-        public MainViewModel AppMainViewModel { private set; get; }
-        
-        public App()
-        {
-            AppMainViewModel = new MainViewModel();
-
-            MainPage = new NavigationPage(new MeasurementPage());
-        }
-
-        protected override async void OnStart()
-        {
-            base.OnStart();
-
-            await AppMainViewModel.Init(Properties, MainPage.Navigation);
-        }
-    }
-}
diff --git a/test/HeartRateMonitor/Controls/DialogOK.cs b/test/HeartRateMonitor/Controls/DialogOK.cs
deleted file mode 100644 (file)
index ac204e1..0000000
+++ /dev/null
@@ -1,115 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System.Windows.Input;
-using Tizen;
-using Xamarin.Forms;
-
-namespace HeartRateMonitor.Controls
-{
-    /// <summary>
-    /// Dialog control with OK button.
-    /// </summary>
-    public class DialogOK : BindableObject
-    {
-        #region properties
-
-        /// <summary>
-        /// Execute command property definition.
-        /// </summary>
-        public static readonly BindableProperty ExecuteCommandProperty = BindableProperty.Create(
-            nameof(ExecuteCommand), typeof(ICommand), typeof(DialogOK), null, BindingMode.OneWayToSource);
-
-        /// <summary>
-        /// Confirm command property definition.
-        /// </summary>
-        public static readonly BindableProperty ConfirmCommandProperty = BindableProperty.Create(
-            nameof(ConfirmCommand), typeof(ICommand), typeof(DialogOK));
-
-        /// <summary>
-        /// Dialog title bindable property definition.
-        /// </summary>
-        public static readonly BindableProperty TitleProperty = BindableProperty.Create(
-            nameof(Title), typeof(string), typeof(DialogOK), "");
-
-        /// <summary>
-        /// Dialog message bindable property definition.
-        /// </summary>
-        public static readonly BindableProperty MessageProperty = BindableProperty.Create(
-            nameof(Message), typeof(string), typeof(DialogOK), "");
-
-        /// <summary>
-        /// Command which shows the dialog.
-        /// </summary>
-        public ICommand ExecuteCommand
-        {
-            get => (ICommand)GetValue(ExecuteCommandProperty);
-            set => SetValue(ExecuteCommandProperty, value);
-        }
-
-        /// <summary>
-        /// Command which is executed when user confirms the message (taps OK button).
-        /// </summary>
-        public ICommand ConfirmCommand
-        {
-            get => (ICommand)GetValue(ConfirmCommandProperty);
-            set => SetValue(ConfirmCommandProperty, value);
-        }
-
-        /// <summary>
-        /// Dialog title.
-        /// </summary>
-        public string Title
-        {
-            get => (string)GetValue(TitleProperty);
-            set => SetValue(TitleProperty, value);
-        }
-
-        /// <summary>
-        /// Dialog message.
-        /// </summary>
-        public string Message
-        {
-            get => (string)GetValue(MessageProperty);
-            set => SetValue(MessageProperty, value);
-        }
-
-        #endregion
-
-        #region methods
-
-        /// <summary>
-        /// The control constructor.
-        /// </summary>
-        public DialogOK()
-        {
-            ExecuteCommand = new Command(Display);
-        }
-
-        /// <summary>
-        /// Displays OK dialog with title from the Title property and message text from the Message property.
-        /// </summary>
-        public async void Display()
-        {
-            Log.Debug("HRM", "oh boy");
-            await Application.Current.MainPage.DisplayAlert(Title, Message, "OK");
-
-            Log.Debug("HRM", "sure");
-            ConfirmCommand?.Execute(null);
-        }
-
-        #endregion
-    }
-}
diff --git a/test/HeartRateMonitor/HeartRateMonitor.cs b/test/HeartRateMonitor/HeartRateMonitor.cs
deleted file mode 100644 (file)
index 2d7d7db..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using HeartRateMonitor.Controls;
-using System;
-using System.Collections.Generic;
-using Tizen.Wearable.CircularUI.Forms;
-using Tizen.Wearable.CircularUI.Forms.Renderer;
-using Xamarin.Forms;
-
-namespace HeartRateMonitor
-{
-    class Program : global::Xamarin.Forms.Platform.Tizen.ApplicationLifecycle
-    {
-        protected override void OnCreate()
-        {
-            base.OnCreate();
-
-            FormsApplication.LoadApplication(new App());
-        }
-
-        static void Main(string[] args)
-        {
-            var app = new Program();
-            var customRenderers = new Dictionary<Type, Func<IRegisterable>>()
-            {
-                { typeof(CirclePage), ()=> new CirclePageRenderer() },
-                { typeof(CircleStepper), () => new CircleStepperRenderer() }
-            };
-
-            var option = new InitializationOptions(app)
-            {
-                UseMessagingCenter = false,
-                StaticRegistarStrategy = StaticRegistrarStrategy.StaticRegistrarOnly,
-                CustomHandlers = customRenderers
-            };
-            Forms.Init(option);
-            
-            Tizen.Wearable.CircularUI.Forms.Renderer.FormsCircularUI.Init();
-            app.FormsApplication.Run(args);
-        }
-    }
-}
diff --git a/test/HeartRateMonitor/HeartRateMonitor.csproj b/test/HeartRateMonitor/HeartRateMonitor.csproj
deleted file mode 100755 (executable)
index d3af257..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-<Project Sdk="Tizen.NET.Sdk/1.0.8">
-
-  <PropertyGroup>
-    <OutputType>Exe</OutputType>
-    <TargetFramework>tizen40</TargetFramework>
-  </PropertyGroup>
-
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugType>portable</DebugType>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>None</DebugType>
-  </PropertyGroup>
-
-  <ItemGroup>
-    <Folder Include="Controls\" />
-    <Folder Include="ViewModels\" />
-    <Folder Include="res\" />
-  </ItemGroup>
-
-  <ItemGroup>
-    <ProjectReference Include="..\..\src\XSF\XSF.csproj" />
-  </ItemGroup>
-
-</Project>
diff --git a/test/HeartRateMonitor/Model/HeartRateMonitorModel.cs b/test/HeartRateMonitor/Model/HeartRateMonitorModel.cs
deleted file mode 100644 (file)
index 91d4a09..0000000
+++ /dev/null
@@ -1,193 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-
-using System;
-using Tizen.Sensor;
-using HRM = Tizen.Sensor.HeartRateMonitor;
-using System.Threading.Tasks;
-using Tizen.Security;
-using Tizen;
-
-namespace HeartRateMonitor.Model
-{
-    /// <summary>
-    /// HeartRateMonitorModel class.
-    /// Provides methods that allow the application to use the Tizen Sensor API.
-    /// Implements IHeartRateMonitorModel interface to be available
-    /// from portable part of the application source code.
-    /// </summary>
-    public class HeartRateMonitorModel
-    {
-        #region fields
-
-        /// <summary>
-        /// An instance of the HeartRateMonitor class provided by the Tizen Sensor API.
-        /// </summary>
-        private HRM heartRateMonitor;
-
-        /// <summary>
-        /// Number representing value of the current heart rate.
-        /// </summary>
-        private int currentHeartRate;
-
-        /// <summary>
-        /// The check privileges task.
-        /// </summary>
-        private TaskCompletionSource<bool> checkPrivilegesTask;
-
-        #endregion
-
-        #region properties
-
-        /// <summary>
-        /// HeartRateMonitorDataChanged event.
-        /// Notifies UI about heart rate value update.
-        /// </summary>
-        public event EventHandler HeartRateMonitorDataChanged;
-
-        /// <summary>
-        /// HeartRateSensorNotSupported event.
-        /// Notifies application about lack of heart rate sensor.
-        /// </summary>
-        public event EventHandler HeartRateSensorNotSupported;
-
-        /// <summary>
-        /// Healthinfo privilege key.
-        /// </summary>
-        private const string HEALTHINFO_PRIVILEGE = "http://tizen.org/privilege/healthinfo";
-
-        #endregion
-
-        #region methods
-
-        /// <summary>
-        /// Initializes HeartRateMonitorModel class.
-        /// Invokes HeartRateSensorNotSupported event if heart rate sensor is not supported.
-        /// </summary>
-        public void Init()
-        {
-            try
-            {
-                heartRateMonitor = new HRM
-                {
-                    Interval = 1000
-                };
-
-                heartRateMonitor.DataUpdated += OnDataUpdated;
-            }
-            catch (Exception)
-            {
-                HeartRateSensorNotSupported?.Invoke(this, new EventArgs());
-            }
-        }
-
-        /// <summary>
-        /// Returns current heart rate value provided by the Tizen Sensor API.
-        /// </summary>
-        /// <returns>Current heart rate value provided by the Tizen Sensor API.</returns>
-        public int GetHeartRate()
-        {
-            return currentHeartRate;
-        }
-
-        /// <summary>
-        /// Starts notification about changes of heart rate value.
-        /// </summary>
-        public void StartHeartRateMonitor()
-        {
-            heartRateMonitor.Start();
-        }
-
-        /// <summary>
-        /// Stops notification about changes of heart rate value.
-        /// </summary>
-        public void StopHeartRateMonitor()
-        {
-            heartRateMonitor.Stop();
-        }
-
-        /// <summary>
-        /// Handles "DataUpdated" event of the HeartRateMonitor object provided by the Tizen Sensor API.
-        /// Saves current heart rate value in the _currentHeartRate field.
-        /// Invokes "HeartRateMonitorDataChanged" event.
-        /// </summary>
-        /// <param name="sender">Object firing the event.</param>
-        /// <param name="e">An instance of the HeartRateMonitorDataUpdatedEventArgs class providing detailed information about the event.</param>
-        private void OnDataUpdated(object sender, HeartRateMonitorDataUpdatedEventArgs e)
-        {
-            Log.Debug("HRM", $"Rate:{e.HeartRate}");
-            currentHeartRate = e.HeartRate;
-            HeartRateMonitorDataChanged?.Invoke(this, new EventArgs());
-        }
-
-        /// <summary>
-        /// Handles privilege request response from the privacy privilege manager.
-        /// </summary>
-        /// <param name="sender">Event sender.</param>
-        /// <param name="requestResponseEventArgs">Event arguments.</param>
-        private void PrivilegeManagerOnResponseFetched(object sender,
-            RequestResponseEventArgs requestResponseEventArgs)
-        {
-            if (requestResponseEventArgs.cause == CallCause.Answer)
-            {
-                checkPrivilegesTask.SetResult(requestResponseEventArgs.result == RequestResult.AllowForever);
-            }
-            else
-            {
-                Log.Error("HeartRateMonitor", "Error occurred during requesting permission");
-                checkPrivilegesTask.SetResult(false);
-            }
-        }
-
-        /// <summary>
-        /// Returns true if all required privileges are granted, false otherwise.
-        /// </summary>
-        /// <returns>Task with check result.</returns>
-        public async Task<bool> CheckPrivileges()
-        {
-            CheckResult result = PrivacyPrivilegeManager.CheckPermission(HEALTHINFO_PRIVILEGE);
-
-            switch (result)
-            {
-                case CheckResult.Allow:
-                    return true;
-                case CheckResult.Deny:
-                    return false;
-                case CheckResult.Ask:
-                    PrivacyPrivilegeManager.ResponseContext context = null;
-                    PrivacyPrivilegeManager.GetResponseContext(HEALTHINFO_PRIVILEGE)
-                        .TryGetTarget(out context);
-
-                    if (context == null)
-                    {
-                        Log.Error("HeartRateMonitor", "Unable to get privilege response context");
-                        return false;
-                    }
-
-                    checkPrivilegesTask = new TaskCompletionSource<bool>();
-
-                    context.ResponseFetched += PrivilegeManagerOnResponseFetched;
-
-                    PrivacyPrivilegeManager.RequestPermission(HEALTHINFO_PRIVILEGE);
-                    return await checkPrivilegesTask.Task;
-                default:
-                    return false;
-            }
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/HeartRateMonitor/ViewModels/MainViewModel.cs b/test/HeartRateMonitor/ViewModels/MainViewModel.cs
deleted file mode 100644 (file)
index 2f9884e..0000000
+++ /dev/null
@@ -1,578 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Windows.Input;
-using Xamarin.Forms;
-using System.Threading.Tasks;
-using HeartRateMonitor.Model;
-using Tizen;
-using HeartRateMonitor.Views;
-
-namespace HeartRateMonitor.ViewModels
-{
-    /// <summary>
-    /// MainViewModel class.
-    /// Provides commands and methods responsible for application view model state.
-    /// </summary>
-    public class MainViewModel : ViewModelBase
-    {
-        #region fields
-
-        /// <summary>
-        /// Flag indicating whether measurement process is in progress.
-        /// </summary>
-        private bool isMeasuring = false;
-
-        /// <summary>
-        /// Flag indicating whether measurement process is finished.
-        /// </summary>
-        private bool isFinished = false;
-
-        /// <summary>
-        /// Flag indicating whether measurements should be included in result.
-        /// </summary>
-        private bool isMeasurementCounted = false;
-
-        /// <summary>
-        /// Number indicating whether measurement process can be stopped automatically or not.
-        /// If the value is equal to zero, the measurement process can be stopped automatically.
-        /// Otherwise not.
-        /// </summary>
-        private int measurementLock = 0;
-
-        /// <summary>
-        /// Number representing the range to which the heart rate value is classified,
-        /// when the measurement is finished.
-        /// If the value is equal to 1, the heart rate value is above the defined heart rate limit.
-        /// If the value is equal to 0, the heart rate value is within the defined heart rate limit.
-        /// If the value is equal to -1, the heart rate value is within the average resting rate.
-        /// </summary>
-        private int measurementResultRange;
-
-        /// <summary>
-        /// String representing value of measurement countdown.
-        /// </summary>
-        private int measurementCountdown;
-
-        /// <summary>
-        /// DateTime object representing starting time point of the measurement process.
-        /// </summary>
-        private DateTime measurementStartTimestamp;
-
-        /// <summary>
-        /// Flag indicating whether heart rate limit is exceeded.
-        /// </summary>
-        private bool isMeasurementResultAlert = false;
-
-        /// <summary>
-        /// Number representing current heart rate value.
-        /// </summary>
-        private int currentHeartRate = 0;
-
-        /// <summary>
-        /// Number representing heart rate limit value.
-        /// </summary>
-        private int heartRateLimitValue;
-
-        /// <summary>
-        /// Number representing temporary buffered heart rate limit value.
-        /// </summary>
-        private int heartRateLimitBufferValue;
-
-        /// <summary>
-        /// Number representing lower limit of the average resting rate.
-        /// </summary>
-        private const int AVERAGE_HEART_RATE_VALUE_LOWER_LIMIT = 61;
-
-        /// <summary>
-        /// Number representing upper limit of the average resting rate.
-        /// </summary>
-        private const int AVERAGE_HEART_RATE_VALUE_UPPER_LIMIT = 76;
-
-        /// <summary>
-        /// Number representing default value of the heart rate limit.
-        /// </summary>
-        private const int HEART_RATE_DEFAULT_LIMIT_VALUE = 180;
-
-        /// <summary>
-        /// Number representing measurement time.
-        /// </summary>
-        private const int MEASUREMENT_TIME = 20;
-
-        /// <summary>
-        /// Number representing measurement time from which heartRateMonitor values are used to determine heart rate.
-        /// </summary>
-        private const int COUNTED_MEASUREMENT_TIME = 5;
-
-        /// <summary>
-        /// String representing key that is used by application's properties dictionary
-        /// to save current heart rate limit value.
-        /// </summary>
-        private const string HEART_RATE_LIMIT_KEY = "heartRateLimit";
-
-        /// <summary>
-        /// Reference to the object of the HeartRateMonitorModel class.
-        /// </summary>
-        private HeartRateMonitorModel heartRateMonitorModel;
-
-        /// <summary>
-        /// Reference to the IDictionary object that is used to store some data,
-        /// so that they are available next time the applications runs.
-        /// </summary>
-        private IDictionary<string, object> properties;
-
-        /// <summary>
-        /// List of numbers storing measurement values.
-        /// It is used to calculate average value of the heart rate (at the end of the measurement process).
-        /// </summary>
-        private List<int> measurementValues;
-
-
-        #endregion
-
-        #region properties
-
-        /// <summary>
-        /// An instance of PageNavigation class.
-        /// </summary>
-        public INavigation AppPageNavigation { private set; get; }
-
-        /// <summary>
-        /// Starts and stops measurement process.
-        /// </summary>
-        public ICommand ToggleMeasurementCommand { private set; get; }
-
-        /// <summary>
-        /// Prepares view model state before displaying SettingsPage.
-        /// </summary>
-        public ICommand ShowSettingsCommand { private set; get; }
-
-        /// <summary>
-        /// Updates view model properties responsible for UI representation of heart rate limit.
-        /// </summary>
-        public ICommand UpdateHeartRateLimitCommand { private set; get; }
-
-        /// <summary>
-        /// Command which shows message about denied privilege (application close).
-        /// The command is injected into view model.
-        /// </summary>
-        public ICommand PrivilegeDeniedInfoCommand { set; get; }
-
-        /// <summary>
-        /// Command which shows message about lack of heart rate sensor (application close).
-        /// The command is injected into view model.
-        /// </summary>
-        public ICommand NotSupportedInfoCommand { set; get; }
-
-        /// <summary>
-        /// Command which handles confirmation of privilege denied dialog.
-        /// </summary>
-        public ICommand AppUnusableConfirmedCommand { set; get; }
-
-        /// <summary>
-        /// MeasurementStarted event.
-        /// It is fired when the measurement process starts.
-        /// </summary>
-        public event EventHandler MeasurementStarted;
-
-        /// <summary>
-        /// MeasurementFinished event.
-        /// It is fired when the measurement finishes.
-        /// </summary>
-        public event EventHandler MeasurementFinished;
-
-        /// <summary>
-        /// Property indicating whether measurement process is in progress.
-        /// </summary>
-        public bool IsMeasuring
-        {
-            set { SetProperty(ref isMeasuring, value); }
-            get { return isMeasuring; }
-        }
-
-        /// <summary>
-        /// Property indicating whether measurement process is finished.
-        /// </summary>
-        public bool IsFinished
-        {
-            set { SetProperty(ref isFinished, value); }
-            get { return isFinished; }
-        }
-
-        public bool IsMeasurementCounted
-        {
-            set { SetProperty(ref isMeasurementCounted, value); }
-            get { return isMeasurementCounted; }
-        }
-
-        /// <summary>
-        /// Property indicating whether heart rate limit is exceeded.
-        /// </summary>
-        public bool IsMeasurementResultAlert
-        {
-            set { SetProperty(ref isMeasurementResultAlert, value); }
-            get { return isMeasurementResultAlert; }
-        }
-
-        /// <summary>
-        /// Property with value representing measurement countdown.
-        /// </summary>
-        public int MeasurementCountdown
-        {
-            set {
-                SetProperty(ref measurementCountdown, value);
-                if (value <= COUNTED_MEASUREMENT_TIME)
-                    IsMeasurementCounted = true;
-            }
-            get { return measurementCountdown; }
-        }
-
-        /// <summary>
-        /// Property with value representing current heart rate.
-        /// </summary>
-        public int CurrentHeartRate
-        {
-            set
-            {
-                SetProperty(ref currentHeartRate, value);
-                UpdateMeasurementResultRange();
-                UpdateMeasurementResultAlert();
-            }
-
-            get { return currentHeartRate; }
-        }
-
-        /// <summary>
-        /// Property with value representing heart rate limit value.
-        /// </summary>
-        public int HeartRateLimitValue
-        {
-            set
-            {
-                SetProperty(ref heartRateLimitValue, value);
-                properties[HEART_RATE_LIMIT_KEY] = value;
-                UpdateMeasurementResultRange();
-                UpdateMeasurementResultAlert();
-            }
-            get { return heartRateLimitValue; }
-        }
-
-        /// <summary>
-        /// Property with value representing temporary buffered heart rate limit value.
-        /// </summary>
-        public int HeartRateLimitBufferValue
-        {
-            set { SetProperty(ref heartRateLimitBufferValue, value); }
-            get { return heartRateLimitBufferValue; }
-        }
-
-        /// <summary>
-        /// Property representing the range to which the heart rate value is classified,
-        /// when the measurement is finished.
-        /// </summary>
-        public int MeasurementResultRange
-        {
-            set { SetProperty(ref measurementResultRange, value); }
-            get { return measurementResultRange; }
-        }
-        #endregion
-
-        #region methods
-
-        /// <summary>
-        /// MainViewModel class constructor.
-        /// </summary>
-        public MainViewModel()
-        {
-            ToggleMeasurementCommand = new Command(ExecuteToggleMeasurementCommand);
-            ShowSettingsCommand = new Command(ExecuteShowSettingsCommand, CanExecuteShowSettingsCommand);
-            UpdateHeartRateLimitCommand = new Command(ExecuteUpdateHeartRateLimitCommand);
-            AppUnusableConfirmedCommand = new Command(ExecuteAppUnusableConfirmed);
-        }
-
-        /// <summary>
-        /// Initializes the view model.
-        /// </summary>
-        /// <param name="properties">View model instance properties.</param>
-        /// <param name="pageNavigation">Page navigation object.</param>
-        /// <returns>The initialization task.</returns>
-        public async Task Init(IDictionary<string, object> properties, INavigation pageMavigation)
-        {
-            this.properties = properties;
-            AppPageNavigation = pageMavigation;
-
-            heartRateMonitorModel = new HeartRateMonitorModel();
-
-            heartRateMonitorModel.HeartRateMonitorDataChanged += ModelOnHeartRateMonitorDataChanged;
-            heartRateMonitorModel.HeartRateSensorNotSupported += ModelOnHeartRateSensorNotSupported;
-
-            if (!await heartRateMonitorModel.CheckPrivileges())
-            {
-                PrivilegeDeniedInfoCommand?.Execute(null);
-
-                return;
-            }
-
-            heartRateMonitorModel.Init();
-
-            RestoreHeartRateLimitSliderValue();
-        }
-
-        /// <summary>
-        /// Handles "HeartRateMonitorDataChanged" event of the HeartRateMonitorModel object.
-        /// Updates value of the MeasurementCountdown property.
-        /// Updates value of the CurrentHeartRate property.
-        /// Adds new value to the list of measurement values.
-        /// </summary>
-        /// <param name="sender">Object firing the event.</param>
-        /// <param name="e">Arguments passed to the event.</param>
-        private void ModelOnHeartRateMonitorDataChanged(object sender, EventArgs e)
-        {
-            int heartRateValue = heartRateMonitorModel.GetHeartRate();
-
-            CurrentHeartRate = heartRateValue;
-
-            if(IsMeasurementCounted)
-                measurementValues.Add(heartRateValue);
-        }
-
-        /// <summary>
-        /// Handles "HeartRateSensorNotSupported" event of the HeartRateMonitorModel object.
-        /// Executes NotSupportedInfoCommand command.
-        /// </summary>
-        /// <param name="sender">Object firing the event.</param>
-        /// <param name="e">Arguments passed to the event.</param>
-        private void ModelOnHeartRateSensorNotSupported(object sender, EventArgs e)
-        {
-            NotSupportedInfoCommand?.Execute(null);
-        }
-
-        /// <summary>
-        /// Handles execution of command which occurs when user confirms apps unability to use heart rate sensor.
-        /// Closes the application.
-        /// </summary>
-        private void ExecuteAppUnusableConfirmed()
-        {
-            try
-            {
-                Tizen.Applications.Application.Current.Exit();
-            }
-            catch (Exception)
-            {
-                Log.Error("HeartRateMonitor", "Unable to close the application");
-            }
-        }
-
-        /// <summary>
-        /// Executes UpdateHeartRateLimitCommand command.
-        /// Updates value of the HeartRateLimitSliderValue property.
-        /// Navigates back to the measurement page by executing NavigateBackCommand command
-        /// of the PageNavigation class.
-        /// </summary>
-        private void ExecuteUpdateHeartRateLimitCommand()
-        {
-            HeartRateLimitValue = HeartRateLimitBufferValue;
-            AppPageNavigation.PopAsync();
-        }
-
-        /// <summary>
-        /// Checks whether the ShowSettingsCommand command can be executed.
-        /// </summary>
-        /// <param name="arg">Command parameter.</param>
-        /// <returns>Returns true if the ShowSettingsCommand can be executed, false otherwise.</returns>
-        private bool CanExecuteShowSettingsCommand(object arg)
-        {
-            return !IsMeasuring;
-        }
-
-        /// <summary>
-        /// Executes the ShowSettingsCommand command.
-        /// Updates value of the HeartRateLimitSliderBufferValue property.
-        /// Navigates to the settings page by executing NavigateToCommand command
-        /// of the PageNavigation class.
-        /// </summary>
-        /// <param name="obj">Command parameter.</param>
-        private void ExecuteShowSettingsCommand(object obj)
-        {
-            HeartRateLimitBufferValue = HeartRateLimitValue;
-            AppPageNavigation.PushAsync(new SettingsPage(), false);
-        }
-
-        /// <summary>
-        /// Executes the ToggleMeasurementCommand command.
-        /// Depending on the IsMeasuring property state it starts or stops measurement process.
-        /// Additionally it calls ChangeCanExecute method
-        /// to update execution state of the ShowSettingsCommand command.
-        /// </summary>
-        private void ExecuteToggleMeasurementCommand()
-        {
-            if (IsMeasuring)
-            {
-                StopMeasurement(true);
-                measurementLock += 1;
-            }
-            else
-            {
-                StartMeasurement();
-            }
-
-            ((Command)ShowSettingsCommand).ChangeCanExecute();
-        }
-
-        /// <summary>
-        /// Starts measurement process.
-        /// Sets values of fields and properties
-        /// responsible for the correct flow of the measurement process.
-        /// Invokes "MeasurementStarted" event.
-        /// Sets timer to let the application know
-        /// when the measurement process should be stopped automatically.
-        /// Executes the StartHeartRateMonitor method of the HeartRateMonitorModel object.
-        /// </summary>
-        private void StartMeasurement()
-        {
-            IsFinished = false;
-            IsMeasuring = true;
-            MeasurementCountdown = MEASUREMENT_TIME;
-            measurementStartTimestamp = DateTime.Now;
-            measurementValues = new List<int>();
-            MeasurementStarted?.Invoke(this, new EventArgs());
-
-            Device.StartTimer(TimeSpan.FromSeconds(MEASUREMENT_TIME), () =>
-            {
-                if (IsMeasuring && measurementLock == 0)
-                {
-                    StopMeasurement();
-                    ((Command)ShowSettingsCommand).ChangeCanExecute();
-                }
-
-                if (measurementLock > 0)
-                {
-                    measurementLock -= 1;
-                }
-
-                return false;
-            });
-
-            Device.StartTimer(TimeSpan.FromSeconds(1), () =>
-            {
-                if (!IsMeasuring)
-                {
-                    return false;
-                }
-
-                TimeSpan measurementElapsedTime = DateTime.Now - measurementStartTimestamp;
-                MeasurementCountdown = MEASUREMENT_TIME - measurementElapsedTime.Seconds;
-                return true;
-            });
-
-            heartRateMonitorModel.StartHeartRateMonitor();
-        }
-
-        /// <summary>
-        /// Stops measurement process.
-        /// Sets values of properties responsible for indicating that the measurement process is finished.
-        /// Invokes "MeasurementFinished" event.
-        /// Executes the StopHeartRateMonitor method of the HeartRateMonitorModel object.
-        /// Updates value of the CurrentHeartRate property by using GetAverageHeartRateValue method.
-        /// </summary>
-        /// <param name="canceled">Flag indicating if current heart rate value should be reset.</param>
-        private void StopMeasurement(bool canceled = false)
-        {
-            IsMeasuring = false;
-            IsMeasurementCounted = false;
-            MeasurementFinished?.Invoke(this, new EventArgs());
-            heartRateMonitorModel.StopHeartRateMonitor();
-
-            if (canceled)
-            {
-                CurrentHeartRate = 0;
-                return;
-            }
-
-            CurrentHeartRate = GetAverageHeartRateValue();
-            IsFinished = true;
-        }
-
-        /// <summary>
-        /// Calculates average value of the heart rate based on values stored in the _measurementValues list.
-        /// </summary>
-        /// <returns>Average value of the heart rate.</returns>
-        private int GetAverageHeartRateValue()
-        {
-            int total = 0,
-                count = measurementValues.Count;
-
-            if (count == 0)
-            {
-                return total;
-            }
-
-            total = measurementValues.Sum();
-
-            return total / count;
-        }
-
-        /// <summary>
-        /// Updates value of the MeasurementResultRange property.
-        /// </summary>
-        private void UpdateMeasurementResultRange()
-        {
-            if (CurrentHeartRate > HeartRateLimitValue)
-            {
-                MeasurementResultRange = 1;
-            }
-            else if (CurrentHeartRate >= AVERAGE_HEART_RATE_VALUE_LOWER_LIMIT &&
-                     CurrentHeartRate <= AVERAGE_HEART_RATE_VALUE_UPPER_LIMIT)
-            {
-                MeasurementResultRange = -1;
-            }
-            else
-            {
-                MeasurementResultRange = 0;
-            }
-        }
-
-        /// <summary>
-        /// Updates value of the IsMeasurementResultAlert property.
-        /// </summary>
-        private void UpdateMeasurementResultAlert()
-        {
-            IsMeasurementResultAlert = MeasurementResultRange == 1;
-        }
-
-        /// <summary>
-        /// Restores heart rate limit slider value.
-        /// It tries to obtain this value from application properties dictionary.
-        /// If it is not available in the dictionary, the value is set to app defined constant.
-        /// </summary>
-        private void RestoreHeartRateLimitSliderValue()
-        {
-            if (properties.ContainsKey(HEART_RATE_LIMIT_KEY))
-            {
-                HeartRateLimitValue = (int)properties[HEART_RATE_LIMIT_KEY];
-            }
-            else
-            {
-                HeartRateLimitValue = HEART_RATE_DEFAULT_LIMIT_VALUE;
-            }
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/HeartRateMonitor/ViewModels/ViewModelBase.cs b/test/HeartRateMonitor/ViewModels/ViewModelBase.cs
deleted file mode 100644 (file)
index 41cae14..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-
-using System;
-using System.ComponentModel;
-using System.Runtime.CompilerServices;
-
-namespace HeartRateMonitor.ViewModels
-{
-    /// <summary>
-    /// ViewModelBase class.
-    /// It implements INotifyPropertyChanged interface
-    /// so that supports notifying about properties changes.
-    /// </summary>
-    public class ViewModelBase : INotifyPropertyChanged
-    {
-        #region properties
-
-        /// <summary>
-        /// PropertyChanged event handler.
-        /// </summary>
-        public event PropertyChangedEventHandler PropertyChanged;
-
-        #endregion
-
-        #region methods
-
-        /// <summary>
-        /// Updates value of the "storage" argument with value given by the second argument.
-        /// Notifies the application about update of the property which has executed this method.
-        /// </summary>
-        /// <param name="storage">Value storage object</param>
-        /// <param name="value">Value to set</param>
-        /// <param name="propertyName">Automatically obtained property name</param>
-        /// <typeparam name="T">Property value type</typeparam>
-        /// <returns>Returns true if storage is successfully updated, false otherwise.</returns>
-        protected bool SetProperty<T>(ref T storage, T value,
-            [CallerMemberName] string propertyName = null)
-        {
-            if (Object.Equals(storage, value))
-            {
-                return false;
-            }
-
-            storage = value;
-            OnPropertyChanged(propertyName);
-            return true;
-        }
-
-        /// <summary>
-        /// Notifies the application about update of the property with name given as a parameter.
-        /// </summary>
-        /// <param name="propertyName">Name of the changed property.</param>
-        private void OnPropertyChanged([CallerMemberName] string propertyName = null)
-        {
-            PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/HeartRateMonitor/Views/MeasurementPage.xaml b/test/HeartRateMonitor/Views/MeasurementPage.xaml
deleted file mode 100755 (executable)
index a870c93..0000000
+++ /dev/null
@@ -1,125 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<forms:CirclePage xmlns:forms="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"
-                  xmlns="http://xamarin.com/schemas/2014/forms"
-                  xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-                  xmlns:controls="clr-namespace:HeartRateMonitor.Controls"
-                  x:Class="HeartRateMonitor.Views.MeasurementPage"
-                  BindingContext="{Binding Source={x:Static Application.Current}, Path=AppMainViewModel}"
-                  NavigationPage.HasNavigationBar="False">
-
-    <forms:CirclePage.Resources>
-        <ResourceDictionary>
-            <Style x:Key="BaseLabel"
-                   TargetType="Label">
-                <Setter Property="HorizontalTextAlignment"  Value="Center" />
-                <Setter Property="FontSize" Value="7"/>
-            </Style>
-            <Style x:Key="BpmLabel" BasedOn="{StaticResource BaseLabel}"
-                   TargetType="Label">
-                <Setter Property="HorizontalTextAlignment"  Value="Center" />
-                <Setter Property="FontSize" Value="10"/>
-            </Style>
-
-            <controls:DialogOK x:Key="PrivilegeDeniedDialog"
-                               Title="Privilege denied"
-                               Message="Application will be closed due to required privilege denied."
-                               ExecuteCommand="{Binding PrivilegeDeniedInfoCommand}"
-                               ConfirmCommand="{Binding AppUnusableConfirmedCommand}" />
-            <controls:DialogOK x:Key="NotSupportedDialog"
-                               Title="Sensor not supported"
-                               Message="Heart rate sensor is not supported. Application will be closed."
-                               ExecuteCommand="{Binding NotSupportedInfoCommand}"
-                               ConfirmCommand="{Binding AppUnusableConfirmedCommand}" />
-        </ResourceDictionary>
-    </forms:CirclePage.Resources>
-
-    <forms:CirclePage.Content>
-        <StackLayout HorizontalOptions="CenterAndExpand" VerticalOptions="EndAndExpand" Padding="35,25,35,80">
-
-            <Label Style="{StaticResource BaseLabel}" Text="Ready">
-                <Label.Triggers>
-                    <DataTrigger Binding="{Binding IsMeasuring}" TargetType="Label" Value="True">
-                        <Setter Property="Text" Value="{Binding MeasurementCountdown, StringFormat='Measuring... ({0} sec.)'}"/>
-                    </DataTrigger>
-                    
-                    <DataTrigger Binding="{Binding IsFinished}" TargetType="Label" Value="True">
-                        <Setter Property="Text" Value="Finished." />
-                    </DataTrigger>
-                </Label.Triggers>
-            </Label>
-
-            <Label Style="{StaticResource BaseLabel}" Text="Tap start to proceed.">
-                <Label.Triggers>
-                    <DataTrigger Binding="{Binding IsMeasuring}" TargetType="Label" Value="True">
-                        <Setter Property="Text" Value="Try to keep still and quiet." />
-                    </DataTrigger>
-                    
-                    <MultiTrigger TargetType="Label">
-                        <MultiTrigger.Conditions>
-                            <BindingCondition Binding="{Binding IsFinished}"
-                                                  Value="True" />
-                            <BindingCondition Binding="{Binding MeasurementResultRange}"
-                                                  Value="-1" />
-                        </MultiTrigger.Conditions>
-                        <Setter Property="Text"  Value="Your result is within the average resting rate (61-76 bpm)." />
-                    </MultiTrigger>
-                    
-                    <MultiTrigger TargetType="Label">
-                        <MultiTrigger.Conditions>
-                            <BindingCondition Binding="{Binding IsFinished}"
-                                                  Value="True" />
-                            <BindingCondition Binding="{Binding MeasurementResultRange}"
-                                                  Value="0" />
-                        </MultiTrigger.Conditions>
-                        <Setter Property="Text" Value="Your result is within the defined heart rate limit."/>
-                    </MultiTrigger>
-                    
-                    <MultiTrigger TargetType="Label">
-                        <MultiTrigger.Conditions>
-                            <BindingCondition Binding="{Binding IsFinished}" Value="True" />
-                            <BindingCondition Binding="{Binding MeasurementResultRange}" Value="1" />
-                        </MultiTrigger.Conditions>
-                        <Setter Property="Text" Value="Caution! Your result is above the defined heart rate limit." />
-                        <Setter Property="TextColor" Value="Red" />
-                    </MultiTrigger>
-                </Label.Triggers>
-            </Label>
-
-            <AbsoluteLayout>
-                <Image x:Name="heart" Source="heart.png" 
-                   AbsoluteLayout.LayoutBounds=".5, .5, 100, 100"
-                   AbsoluteLayout.LayoutFlags="PositionProportional"/>
-
-                <Label Text="Start" Style="{StaticResource BaseLabel}" VerticalOptions="Center"
-                   AbsoluteLayout.LayoutBounds=".5, .5, 100, 100"
-                   AbsoluteLayout.LayoutFlags="PositionProportional">
-                    <Label.Triggers>
-                        <DataTrigger Binding="{Binding IsMeasuring}" TargetType="Label" Value="True">
-                            <Setter Property="Text" Value="Cancel" />
-                        </DataTrigger>
-                    </Label.Triggers>
-                </Label>
-
-                <Button Command="{Binding ToggleMeasurementCommand}" Opacity="0"
-                   AbsoluteLayout.LayoutBounds=".5, .5, 100, 100"
-                   AbsoluteLayout.LayoutFlags="PositionProportional"/>
-            </AbsoluteLayout>
-
-            <Label Opacity="0" Text="{Binding CurrentHeartRate, StringFormat='{0} bpm'}" Style="{StaticResource BpmLabel}">
-                <Label.Triggers>
-                    <DataTrigger Binding="{Binding IsMeasurementCounted}" TargetType="Label" Value="True">
-                        <Setter Property="Opacity" Value="1"/>
-                    </DataTrigger>
-                    <DataTrigger Binding="{Binding IsFinished}" TargetType="Label" Value="True">
-                        <Setter Property="Opacity" Value="1"/>
-                    </DataTrigger>
-                </Label.Triggers>
-            </Label>
-
-        </StackLayout>
-    </forms:CirclePage.Content>
-
-    <forms:CirclePage.ActionButton>
-        <forms:ActionButtonItem Icon="settings.png" Command="{Binding ShowSettingsCommand}"/>
-    </forms:CirclePage.ActionButton>
-</forms:CirclePage>
\ No newline at end of file
diff --git a/test/HeartRateMonitor/Views/MeasurementPage.xaml.cs b/test/HeartRateMonitor/Views/MeasurementPage.xaml.cs
deleted file mode 100644 (file)
index 0a1c285..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using HeartRateMonitor.ViewModels;
-using System;
-using System.Linq;
-using Tizen.Wearable.CircularUI.Forms;
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace HeartRateMonitor.Views
-{
-       [XamlCompilation(XamlCompilationOptions.Compile)]
-       public partial class MeasurementPage : CirclePage
-    {
-        /// <summary>
-        /// An instance of the MainViewModel class.
-        /// </summary>
-        private MainViewModel _viewModel;
-
-        /// <summary>
-        /// Number representing duration value (in milliseconds) of heart animation.
-        /// </summary>
-        private const int HEART_ANIMATION_DURATION = 500;
-
-        /// <summary>
-        /// MeasurementPage class constructor.
-        /// </summary>
-        public MeasurementPage()
-        {
-            InitializeComponent();
-
-            _viewModel = ((App)Application.Current).AppMainViewModel;
-            _viewModel.MeasurementStarted += OnMeasurementStarted;
-            _viewModel.MeasurementFinished += OnMeasurementFinished;
-        }
-
-        /// <summary>
-        /// Handles "MeasurementStarted" event of the MainViewModel class.
-        /// </summary>
-        /// <param name="sender">Object firing the event.</param>
-        /// <param name="e">Arguments passed to the event.</param>
-        private void OnMeasurementStarted(object sender, EventArgs e)
-        {
-            StartHeartAnimation();
-        }
-
-        /// <summary>
-        /// Starts animation of heart
-        /// </summary>
-        private async void StartHeartAnimation()
-        {
-            while (_viewModel.IsMeasuring)
-            {
-                if (!await heart.ScaleTo(1.15, HEART_ANIMATION_DURATION))
-                {
-                    await heart.ScaleTo(1, HEART_ANIMATION_DURATION);
-                }
-            }
-        }
-
-        /// <summary>
-        /// Stops animation of heart
-        /// </summary>
-        /// <param name="sender">Object firing the event.</param>
-        /// <param name="e">Arguments passed to the event.</param>
-        private void OnMeasurementFinished(object sender, EventArgs e)
-        {
-            ViewExtensions.CancelAnimations(heart);
-            heart.ScaleTo(1, HEART_ANIMATION_DURATION, Easing.SinOut);
-        }
-
-
-        /// <summary>
-        /// Handles binding context change.
-        /// Updates context in all found resources (bindable type).
-        /// </summary>
-        protected override void OnBindingContextChanged()
-        {
-            base.OnBindingContextChanged();
-
-            if (this.Resources != null)
-            {
-                foreach (var resource in this.Resources.Values.OfType<BindableObject>())
-                {
-                    resource.BindingContext = this.BindingContext;
-                }
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/HeartRateMonitor/Views/SettingsPage.xaml b/test/HeartRateMonitor/Views/SettingsPage.xaml
deleted file mode 100755 (executable)
index f99fb9e..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<forms:CirclePage xmlns:forms="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"
-                  xmlns="http://xamarin.com/schemas/2014/forms"
-                  xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-                  x:Class="HeartRateMonitor.Views.SettingsPage"
-                  BindingContext="{Binding Source={x:Static Application.Current}, Path=AppMainViewModel}"
-                  NavigationPage.HasNavigationBar="False"
-                  RotaryFocusObject="{x:Reference stepper}">
-    
-    <forms:CirclePage.Content>
-        <StackLayout Orientation="Vertical" VerticalOptions="Center" HorizontalOptions="Center">
-            <Label
-                FontSize="10"
-                HorizontalTextAlignment="Center"
-                Text="Set heart rate limit:"/>
-            <forms:CircleStepper
-                x:Name="stepper"
-                HorizontalOptions="Center"
-                Increment="5"
-                MarkerColor="Crimson"
-                LabelFormat="%d bpm"
-                Maximum="220"
-                Minimum="0"
-                Value="{Binding HeartRateLimitBufferValue}" />
-        </StackLayout>
-    </forms:CirclePage.Content>
-    
-    <forms:CirclePage.ActionButton>
-        <forms:ActionButtonItem Command="{Binding UpdateHeartRateLimitCommand}" Text="SET" />
-    </forms:CirclePage.ActionButton>
-</forms:CirclePage>
\ No newline at end of file
diff --git a/test/HeartRateMonitor/Views/SettingsPage.xaml.cs b/test/HeartRateMonitor/Views/SettingsPage.xaml.cs
deleted file mode 100644 (file)
index cd494ee..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using Tizen.Wearable.CircularUI.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace HeartRateMonitor.Views
-{  
-     /// <summary>
-     /// SettingsPage class.
-     /// Provides logic for UI SettingsPage.
-     /// </summary>
-    [XamlCompilation(XamlCompilationOptions.Compile)]
-       public partial class SettingsPage : CirclePage
-    {
-        /// <summary>
-        /// SettingsPage class constructor.
-        /// </summary>
-               public SettingsPage ()
-               {
-                       InitializeComponent ();
-               }
-       }
-}
\ No newline at end of file
diff --git a/test/HeartRateMonitor/res/heart.png b/test/HeartRateMonitor/res/heart.png
deleted file mode 100644 (file)
index 0fa7e75..0000000
Binary files a/test/HeartRateMonitor/res/heart.png and /dev/null differ
diff --git a/test/HeartRateMonitor/res/settings.png b/test/HeartRateMonitor/res/settings.png
deleted file mode 100644 (file)
index 2b1076b..0000000
Binary files a/test/HeartRateMonitor/res/settings.png and /dev/null differ
diff --git a/test/HeartRateMonitor/shared/res/HeartRateMonitor.png b/test/HeartRateMonitor/shared/res/HeartRateMonitor.png
deleted file mode 100644 (file)
index 9f3cb98..0000000
Binary files a/test/HeartRateMonitor/shared/res/HeartRateMonitor.png and /dev/null differ
diff --git a/test/HeartRateMonitor/tizen-manifest.xml b/test/HeartRateMonitor/tizen-manifest.xml
deleted file mode 100644 (file)
index ec8251e..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<manifest package="org.tizen.example.HeartRateMonitor" version="1.0.0" api-version="4" xmlns="http://tizen.org/ns/packages">
-    <profile name="wearable" />
-    <ui-application appid="org.tizen.example.HeartRateMonitor" exec="HeartRateMonitor.dll" multiple="false" nodisplay="false" taskmanage="true" splash-screen-display="true" type="dotnet" launch_mode="single">
-        <label>HeartRateMonitor</label>
-        <icon>HeartRateMonitor.png</icon>
-        <metadata key="http://tizen.org/metadata/prefer_dotnet_aot" value="true" />
-        <splash-screens />
-    </ui-application>
-    <shortcut-list />
-    <privileges>
-        <privilege>http://tizen.org/privilege/healthinfo</privilege>
-    </privileges>
-    <provides-appdefined-privileges />
-</manifest>
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tests/DispatcherTest.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tests/DispatcherTest.cs
deleted file mode 100755 (executable)
index 9887739..0000000
+++ /dev/null
@@ -1,177 +0,0 @@
-using System;
-using NUnit.Framework;
-using Moq;
-using MapMyRun.Models;
-using System.Collections.Generic;
-
-namespace MapMyRun.Tests
-{
-    [TestFixture]
-    class DispatcherTest
-    {
-        Mock<IMessagePortHandler> mockMessagePortHandler = null;
-
-        [SetUp]
-        public void Setup()
-        {
-            mockMessagePortHandler = new Mock<IMessagePortHandler>();
-        }
-
-        [Test]
-        public void Initialize_Called_CallMessagePortHandlerConnect()
-        {
-            mockMessagePortHandler.Setup(x => x.Connect(It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>(), It.IsAny<bool>()));
-
-            var dispatcher = Dispatcher.Instance;
-            dispatcher.Initialize(mockMessagePortHandler.Object);
-
-            mockMessagePortHandler.Verify(x => x.Connect(It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>(), It.IsAny<bool>()), Times.Once());
-        }
-
-        [Test]
-        public void Initialize_Called_AddOnReceiveMessage()
-        {
-            var dispatcher = Dispatcher.Instance;
-
-            mockMessagePortHandler.SetupAdd(m => m.MessageReceived += dispatcher.OnReceiveMessage);
-
-            dispatcher.Initialize(mockMessagePortHandler.Object);
-            mockMessagePortHandler.VerifyAdd(m => m.MessageReceived += dispatcher.OnReceiveMessage, Times.Once());
-        }
-
-        [Test]
-        public void SendRequest_FirstCalled_CallMessagePortHandlerSend()
-        {
-            var requestData = "banana";
-            var request = new Mock<Request>(OperationType.PrepareWKO, requestData);
-            Dictionary<string, string> requestDataSet = null;
-
-            mockMessagePortHandler.Setup(x => x.Send(It.IsAny<Dictionary<string, string>>()))
-                .Callback<Dictionary<string, string>>(arg => {
-                    requestDataSet = arg;
-                }
-            );
-
-            var dispatcher = Dispatcher.Instance;
-            dispatcher.Initialize(mockMessagePortHandler.Object);
-
-            dispatcher.SendRequest(request.Object);
-            requestDataSet.TryGetValue(Dispatcher.OperationKey, out string operation);
-            requestDataSet.TryGetValue(Dispatcher.DataKey, out string data);
-
-            mockMessagePortHandler.Verify(x => x.Send(It.IsAny<Dictionary<string, string>>()), Times.Once());
-            Assert.AreEqual(((int)OperationType.PrepareWKO).ToString(), operation);
-            Assert.AreEqual(requestData, data);
-        }
-
-        [Test]
-        public void OnReceiveMessage_Called_CallCorrectRequestOnReceiveResponse()
-        {
-            string requestData = "orange";
-            var request = new Request(OperationType.PrepareWKO, requestData);
-            bool isCalled = false;
-            request.ResponseReceived += (Response data) =>
-            {
-                isCalled = true;
-            };
-
-            var dispatcher = Dispatcher.Instance;
-            dispatcher.Initialize(mockMessagePortHandler.Object);
-            var tid = dispatcher.SendRequest(request);
-
-            var responseData = new Dictionary<string, string>
-            {
-                { Dispatcher.TransIdKey, tid}
-            };
-
-            dispatcher.OnReceiveMessage(responseData);
-            Assert.IsTrue(isCalled);
-        }
-
-        [Test]
-        public void OnReceiveMessage_Called_DontCallIncorrectRequestOnReceiveResponse()
-        {
-            string requestData = "orange";
-            var request = new Request(OperationType.PrepareWKO, requestData);
-            var isCalled = false;
-            request.ResponseReceived += (Response data) =>
-            {
-                isCalled = true;
-            };
-
-            var dispatcher = Dispatcher.Instance;
-            dispatcher.Initialize(mockMessagePortHandler.Object);
-            var tid = dispatcher.SendRequest(request);
-
-            var responseData = new Dictionary<string, string>
-            {
-                { Dispatcher.TransIdKey, tid + "Never"}
-            };
-
-            dispatcher.OnReceiveMessage(responseData);
-            Assert.IsFalse(isCalled);
-        }
-
-        [Test]
-        public void OnReceiveMessage_WithOperation_DontCallRequestOnReceiveResponse()
-        {
-            string requestData = "orange";
-            var request = new Request(OperationType.PrepareWKO, requestData);
-            var isCalled = false;
-            request.ResponseReceived += (Response data) =>
-            {
-                isCalled = true;
-            };
-
-            var dispatcher = Dispatcher.Instance;
-            dispatcher.Initialize(mockMessagePortHandler.Object);
-            var tid = dispatcher.SendRequest(request);
-
-            var responseData = new Dictionary<string, string>
-            {
-                { Dispatcher.OperationKey, "kiwi" },
-                { Dispatcher.TransIdKey, tid}
-            };
-
-            dispatcher.OnReceiveMessage(responseData);
-            Assert.IsFalse(isCalled);
-        }
-
-        [Test]
-        public void OnReceiveMessage_WithoutOperation_ProvideCorrectNotification()
-        {
-            var isCalled = false;
-            var mockObserver = new NotificationObserver(OperationType.ApplicationInitialized);
-            mockObserver.NotificationReceived += (string data) =>
-            {
-                isCalled = true;
-            };
-
-            var dispatcher = Dispatcher.Instance;
-            dispatcher.Initialize(mockMessagePortHandler.Object);
-
-            var monitor = dispatcher.Listen(OperationType.ApplicationInitialized);
-            mockObserver.Subscribe(monitor);
-
-            Dictionary<string, string> responseData = new Dictionary<string, string>
-            {
-                { Dispatcher.TransIdKey, "orange"},
-                { Dispatcher.DataKey, "apple"},
-                { Dispatcher.OperationKey, "46"}
-            };
-            dispatcher.OnReceiveMessage(responseData);
-
-            Assert.IsTrue(isCalled);
-        }
-
-        [Test]
-        public void Listen_Called_ReturnCorrectNotificationProvider()
-        {
-            var dispatcher = Dispatcher.Instance;
-            dispatcher.Initialize(mockMessagePortHandler.Object);
-            var notificationMonitor = dispatcher.Listen(OperationType.ApplicationInitialized);
-            Assert.AreEqual(notificationMonitor.Type, OperationType.ApplicationInitialized);
-        }
-
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tests/LoadingTest.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tests/LoadingTest.cs
deleted file mode 100755 (executable)
index 7a121ad..0000000
+++ /dev/null
@@ -1,282 +0,0 @@
-using System;
-using NUnit.Framework;
-using Moq;
-using MapMyRun.Models;
-using MapMyRun.Models.Settings;
-
-namespace MapMyRun.Tests
-{
-    [TestFixture]
-    public class LoadingTests
-    {
-        Mock<IAppLauncher> mockAppLauncher = null;
-        Mock<IDispatcher> mockDispatcher = null;
-        Mock<IPhoneService> mockPhoneService = null;
-        Mock<IMessagePortHandler> mockMessagePortHandler = null;
-        Mock<ISettingManager> mockSettingManager = null;
-
-        [SetUp]
-        public void Setup()
-        {
-            mockAppLauncher = new Mock<IAppLauncher>();
-            mockDispatcher = new Mock<IDispatcher>();
-            mockPhoneService = new Mock<IPhoneService>();
-            mockMessagePortHandler = new Mock<IMessagePortHandler>();
-            mockSettingManager = new Mock<ISettingManager>();
-        }
-
-        [TearDown]
-        public void Cleanup()
-        {
-        }
-
-        [Test]
-        public void StartLoading_Called_CallIsPlatformSwVersionSupported()
-        {
-            mockPhoneService.Setup(x => x.IsPlatformSwVersionSupported());
-
-            var loading = new Loading(mockAppLauncher.Object, mockMessagePortHandler.Object,
-                mockDispatcher.Object, mockPhoneService.Object, mockSettingManager.Object, "orange");
-
-            Assert.AreEqual(LoadingState.Not_Started, loading.State);
-            loading.StartLoading();
-            mockPhoneService.Verify(x => x.IsPlatformSwVersionSupported(), Times.Once());
-        }
-
-        [Test]
-        public void StartLoading_Called_CallKeepScreenOn()
-        {
-            mockPhoneService.Setup(x => x.KeepScreenOn());
-            mockPhoneService.Setup(x => x.IsPlatformSwVersionSupported()).Returns(true);
-
-            var loading = new Loading(mockAppLauncher.Object, mockMessagePortHandler.Object,
-                mockDispatcher.Object, mockPhoneService.Object, mockSettingManager.Object, "orange");
-
-            Assert.AreEqual(LoadingState.Not_Started, loading.State);
-            loading.StartLoading();
-            mockPhoneService.Verify(x => x.KeepScreenOn(), Times.Once());
-        }
-
-        [Test]
-        public void StartLoading_Called_IsAuthenticated()
-        {
-            mockPhoneService.Setup(x => x.IsAuthenticated(It.IsAny<Action<PhoneApplicationState>>()));
-            mockPhoneService.Setup(x => x.IsPlatformSwVersionSupported()).Returns(true);
-
-            var loading = new Loading(mockAppLauncher.Object, mockMessagePortHandler.Object,
-                mockDispatcher.Object, mockPhoneService.Object, mockSettingManager.Object, "orange");
-
-            Assert.AreEqual(LoadingState.Not_Started, loading.State);
-            loading.StartLoading();
-            mockPhoneService.Verify(x => x.IsAuthenticated(It.IsAny<Action<PhoneApplicationState>>()), Times.Once());
-        }
-
-        [Test]
-        public void StartLoading_Called_CallLaunchServiceApp()
-        {
-            mockAppLauncher.Setup(x => x.Launch("banana"));
-            mockPhoneService.Setup(x => x.IsPlatformSwVersionSupported()).Returns(true);
-
-            var loading = new Loading(mockAppLauncher.Object, mockMessagePortHandler.Object,
-                mockDispatcher.Object, mockPhoneService.Object, mockSettingManager.Object, "banana");
-
-            Assert.AreEqual(LoadingState.Not_Started, loading.State);
-            loading.StartLoading();
-            mockAppLauncher.Verify(x => x.Launch("banana"), Times.Once());
-        }
-
-        [Test]
-        public void StartLoading_NotSupportedPlatform_NotStartedState()
-        {
-            mockAppLauncher.Setup(x => x.Launch("banana")).Throws(new Exception());
-            mockPhoneService.Setup(x => x.IsPlatformSwVersionSupported()).Returns(false);
-
-            var loading = new Loading(mockAppLauncher.Object, mockMessagePortHandler.Object,
-                mockDispatcher.Object, mockPhoneService.Object, mockSettingManager.Object, "banana");
-
-            Assert.AreEqual(LoadingState.Not_Started, loading.State);
-            loading.StartLoading();
-            Assert.AreEqual(LoadingState.Not_Started, loading.State);
-        }
-
-        [Test]
-        public void StartLoading_LaunchThrowException_ConnectState()
-        {
-            mockAppLauncher.Setup(x => x.Launch("banana")).Throws(new Exception());
-            mockPhoneService.Setup(x => x.IsPlatformSwVersionSupported()).Returns(true);
-
-            var loading = new Loading(mockAppLauncher.Object, mockMessagePortHandler.Object,
-                mockDispatcher.Object, mockPhoneService.Object, mockSettingManager.Object, "banana");
-
-            Assert.AreEqual(LoadingState.Not_Started, loading.State);
-            loading.StartLoading();
-            Assert.AreEqual(LoadingState.Connect, loading.State);
-        }
-
-        [Test]
-        public void StartLoading_Called_CallDispatcherInitialize()
-        {
-            mockAppLauncher.Setup(x => x.Launch("banana"));
-            mockDispatcher.Setup(x => x.Initialize(It.IsAny<IMessagePortHandler>()));
-            mockPhoneService.Setup(x => x.IsPlatformSwVersionSupported()).Returns(true);
-
-            var loading = new Loading(mockAppLauncher.Object, mockMessagePortHandler.Object,
-                mockDispatcher.Object, mockPhoneService.Object, mockSettingManager.Object, "banana");
-
-            Assert.AreEqual(LoadingState.Not_Started, loading.State);
-            loading.StartLoading();
-            mockDispatcher.Verify(x => x.Initialize(It.IsAny<IMessagePortHandler>()), Times.Once());
-        }
-
-        [Test]
-        public void StartLoading_AuthFail_AuthState()
-        {
-            mockPhoneService.Setup(x => x.IsPlatformSwVersionSupported()).Returns(true);
-            mockPhoneService.Setup(x => x.IsAuthenticated(It.IsAny<Action<PhoneApplicationState>>()))
-                .Callback<Action<PhoneApplicationState>>(callback => callback(PhoneApplicationState.NotLoggedIn));
-
-            var loading = new Loading(mockAppLauncher.Object, mockMessagePortHandler.Object,
-                mockDispatcher.Object, mockPhoneService.Object, mockSettingManager.Object, "banana");
-
-            Assert.AreEqual(LoadingState.Not_Started, loading.State);
-            loading.StartLoading();
-            Assert.AreEqual(LoadingState.Auth, loading.State);
-        }
-
-        [Test]
-        public void StartLoading_AuthSuccess_FinishedState()
-        {
-            mockDispatcher.Setup(x => x.Listen(OperationType.Logout)).Returns(new NotificationProvider(OperationType.Logout));
-            mockPhoneService.Setup(x => x.IsPlatformSwVersionSupported()).Returns(true);
-            mockPhoneService.Setup(x => x.IsAuthenticated(It.IsAny<Action<PhoneApplicationState>>()))
-                .Callback<Action<PhoneApplicationState>>(callback => callback(PhoneApplicationState.LoggedIn));
-
-            var loading = new Loading(mockAppLauncher.Object, mockMessagePortHandler.Object,
-                mockDispatcher.Object, mockPhoneService.Object, mockSettingManager.Object, "banana");
-
-            Assert.AreEqual(LoadingState.Not_Started, loading.State);
-            loading.StartLoading();
-            Assert.AreEqual(LoadingState.Finished, loading.State);
-        }
-
-        [Test]
-        public void StartLoading_AuthSuccess_PhoneStateLoggedIn()
-        {
-            mockDispatcher.Setup(x => x.Listen(OperationType.Logout)).Returns(new NotificationProvider(OperationType.Logout));
-            mockPhoneService.Setup(x => x.IsPlatformSwVersionSupported()).Returns(true);
-            mockPhoneService.Setup(x => x.IsAuthenticated(It.IsAny<Action<PhoneApplicationState>>()))
-                .Callback<Action<PhoneApplicationState>>(callback => callback(PhoneApplicationState.LoggedIn));
-
-            var loading = new Loading(mockAppLauncher.Object, mockMessagePortHandler.Object,
-                mockDispatcher.Object, mockPhoneService.Object, mockSettingManager.Object, "banana");
-
-            Assert.AreEqual(PhoneApplicationState.NotSupportedTizenVersion, loading.phoneState);
-            loading.StartLoading();
-            Assert.AreEqual(PhoneApplicationState.LoggedIn, loading.phoneState);
-        }
-
-        [Test]
-        public void StartLoading_AuthSuccess_CallInitializeApp()
-        {
-            mockDispatcher.Setup(x => x.Listen(OperationType.Logout)).Returns(new NotificationProvider(OperationType.Logout));
-            mockPhoneService.Setup(x => x.IsPlatformSwVersionSupported()).Returns(true);
-            mockPhoneService.Setup(x => x.InitializeApp());
-            mockPhoneService.Setup(x => x.IsAuthenticated(It.IsAny<Action<PhoneApplicationState>>()))
-                .Callback<Action<PhoneApplicationState>>(callback => callback(PhoneApplicationState.LoggedIn));
-
-            var loading = new Loading(mockAppLauncher.Object, mockMessagePortHandler.Object,
-                mockDispatcher.Object, mockPhoneService.Object, mockSettingManager.Object, "banana");
-
-            Assert.AreEqual(PhoneApplicationState.NotSupportedTizenVersion, loading.phoneState);
-            loading.StartLoading();
-            mockPhoneService.Verify(x => x.InitializeApp(), Times.Once());
-        }
-
-        [Test]
-        public void InitializeLogoutEventHandler_Called_CallDispatcherListenWithLogoutType()
-        {
-            var loading = new Loading(mockAppLauncher.Object, mockMessagePortHandler.Object,
-                mockDispatcher.Object, mockPhoneService.Object, mockSettingManager.Object, "banana");
-            mockDispatcher.Setup(x => x.Listen(OperationType.Logout)).Returns(new NotificationProvider(OperationType.Logout));
-            loading.InitializeLogoutEventHandler();
-
-            mockDispatcher.Verify(x => x.Listen(OperationType.Logout), Times.Once());
-        }
-
-        [Test]
-        public void InitializeAfterLoading_Called_CallPhoneServiceOnAppStart()
-        {
-            mockDispatcher.Setup(x => x.Listen(OperationType.Logout)).Returns(new NotificationProvider(OperationType.Logout));
-            mockPhoneService.Setup(x => x.OnAppStart());
-
-            var loading = new Loading(mockAppLauncher.Object, mockMessagePortHandler.Object,
-                mockDispatcher.Object, mockPhoneService.Object, mockSettingManager.Object, "banana");
-            loading.InitializeAfterLoading();
-
-            mockPhoneService.Verify(x => x.OnAppStart(), Times.Once());
-        }
-
-        [Test]
-        public void InitializeAfterLoading_Called_CallSendRequestWithScontext()
-        {
-            mockDispatcher.Setup(x => x.Listen(OperationType.Logout)).Returns(new NotificationProvider(OperationType.Logout));
-            Request request = null;
-            mockDispatcher.Setup(x => x.SendRequest(It.IsAny<Request>())).Callback<Request>(arg => {
-                if (arg.Operation == OperationType.CheckSContext)
-                    request = arg;
-                }
-            );
-            mockPhoneService.Setup(x => x.OnAppStart());
-
-            var loading = new Loading(mockAppLauncher.Object, mockMessagePortHandler.Object,
-                mockDispatcher.Object, mockPhoneService.Object, mockSettingManager.Object, "banana");
-            loading.InitializeAfterLoading();
-
-            mockDispatcher.Verify(x => x.SendRequest(It.IsAny<Request>()), Times.AtLeastOnce());
-            Assert.AreEqual(request.Operation, OperationType.CheckSContext);
-            Assert.IsTrue(request.Data.Equals(""));
-        }
-
-        [Test]
-        public void InitializeAfterLoading_Called_CallSendRequestWithGpsAcquire()
-        {
-            mockDispatcher.Setup(x => x.Listen(OperationType.Logout)).Returns(new NotificationProvider(OperationType.Logout));
-            Request request = null;
-            mockDispatcher.Setup(x => x.SendRequest(It.IsAny<Request>())).Callback<Request>(arg => {
-                if (arg.Operation == OperationType.StartGpsAcquire)
-                    request = arg;
-            }
-            );
-            mockPhoneService.Setup(x => x.OnAppStart());
-
-            var loading = new Loading(mockAppLauncher.Object, mockMessagePortHandler.Object,
-                mockDispatcher.Object, mockPhoneService.Object, mockSettingManager.Object, "banana");
-            loading.InitializeAfterLoading();
-
-            mockDispatcher.Verify(x => x.SendRequest(It.IsAny<Request>()), Times.AtLeastOnce());
-            Assert.AreEqual(request.Operation, OperationType.StartGpsAcquire);
-            Assert.IsTrue(request.Data.Equals(""));
-        }
-
-        [Test]
-        public void InitializeAfterLoading_Called_CallSendRequestWithTrainingPlan()
-        {
-            mockDispatcher.Setup(x => x.Listen(OperationType.Logout)).Returns(new NotificationProvider(OperationType.Logout));
-            Request request = null;
-            mockDispatcher.Setup(x => x.SendRequest(It.IsAny<Request>())).Callback<Request>(arg => {
-                if (arg.Operation == OperationType.GetTodayTrainingPlans)
-                    request = arg;
-            }
-            );
-            mockPhoneService.Setup(x => x.OnAppStart());
-
-            var loading = new Loading(mockAppLauncher.Object, mockMessagePortHandler.Object,
-                mockDispatcher.Object, mockPhoneService.Object, mockSettingManager.Object, "banana");
-            loading.InitializeAfterLoading();
-
-            mockDispatcher.Verify(x => x.SendRequest(It.IsAny<Request>()), Times.AtLeastOnce());
-            Assert.AreEqual(request.Operation, OperationType.GetTodayTrainingPlans);
-            Assert.IsTrue(request.Data.Equals(""));
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tests/MapMyRun.Tests.csproj b/test/UnderArmour/MapMyRun/MapMyRun.Tests/MapMyRun.Tests.csproj
deleted file mode 100755 (executable)
index 14d6ec3..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-<Project Sdk="Microsoft.NET.Sdk">
-
-  <PropertyGroup>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
-
-    <IsPackable>false</IsPackable>
-  </PropertyGroup>
-
-  <ItemGroup>
-    <PackageReference Include="Moq" Version="4.13.1" />
-    <PackageReference Include="nunit" Version="3.12.0" />
-    <PackageReference Include="NUnit3TestAdapter" Version="3.15.1" />
-    <PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.2.0" />
-  </ItemGroup>
-
-  <Import Project="..\MapMyRun\MapMyRun.projitems" Label="Shared" />
-
-</Project>
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tests/PermissionManagerTest.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tests/PermissionManagerTest.cs
deleted file mode 100755 (executable)
index e777abf..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-using System;
-using NUnit.Framework;
-using Moq;
-using MapMyRun.Models;
-
-namespace MapMyRun.Tests
-{
-    [TestFixture]
-    class PermissionManagerTest
-    {
-        Mock<IDispatcher> mockDispatcher;
-
-        [SetUp]
-        public void Setup()
-        {
-            mockDispatcher = new Mock<IDispatcher>();
-        }
-
-        [Test]
-        public void RequestPermission_Called_CallSendRequest()
-        {
-            Request request = null;
-            mockDispatcher.Setup(x => x.SendRequest(It.IsAny<Request>()))
-                .Callback<Request>(arg =>
-                {
-                    request = arg;
-                }
-            );
-
-            var permissionManager = new PermissionManager(mockDispatcher.Object);
-            permissionManager.RequestPermission(PermissionType.Location, null);
-
-            mockDispatcher.Verify(x => x.SendRequest(It.IsAny<Request>()), Times.AtLeastOnce());
-            Assert.AreEqual(request.Operation, OperationType.RequestPermission);
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tests/PhoneServiceTest.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tests/PhoneServiceTest.cs
deleted file mode 100755 (executable)
index 3af6c97..0000000
+++ /dev/null
@@ -1,129 +0,0 @@
-using System;
-using NUnit.Framework;
-using Moq;
-using MapMyRun.Models;
-
-namespace MapMyRun.Tests
-{
-    [TestFixture]
-    class PhoneServiceTest
-    {
-        [SetUp]
-        public void Setup()
-        {
-        }
-
-        [Test]
-        public void IsPlatformSwVersionSupported_SupportVersion_ReturnTrue()
-        {
-            var mockPlatformService = new Mock<IPlatformService>();
-            var mockDispatcher = new Mock<IDispatcher>();
-            var supportVersionA = "R360BPK5";
-            var supportVersionB = "R360BPK6";
-            var supportVersionC = "R360CPK5";
-            var supportVersionD = "R380BPK3";
-
-            var phoneService = new PhoneService(mockDispatcher.Object, mockPlatformService.Object);
-
-            mockPlatformService.Setup(x => x.GetSwVersion(out supportVersionA));
-            Assert.AreEqual(true, phoneService.IsPlatformSwVersionSupported());
-
-            mockPlatformService.Setup(x => x.GetSwVersion(out supportVersionB));
-            Assert.AreEqual(true, phoneService.IsPlatformSwVersionSupported());
-
-            mockPlatformService.Setup(x => x.GetSwVersion(out supportVersionC));
-            Assert.AreEqual(true, phoneService.IsPlatformSwVersionSupported());
-
-            mockPlatformService.Setup(x => x.GetSwVersion(out supportVersionD));
-            Assert.AreEqual(true, phoneService.IsPlatformSwVersionSupported());
-        }
-
-        [Test]
-        public void IsPlatformSwVersionSupported_NotSupportVersion_ReturnFalse()
-        {
-            var mockPlatformService = new Mock<IPlatformService>();
-            var mockDispatcher = new Mock<IDispatcher>();
-            var notSupportVersionA = "R360BPK4";
-            var notSupportVersionB = "R360APK5";
-            var notSupportVersionC = "R3601PK5";
-            var notSupportVersionD = "R360BOK5";
-
-            var phoneService = new PhoneService(mockDispatcher.Object, mockPlatformService.Object);
-
-            mockPlatformService.Setup(x => x.GetSwVersion(out notSupportVersionA));
-            Assert.AreEqual(false, phoneService.IsPlatformSwVersionSupported());
-
-            mockPlatformService.Setup(x => x.GetSwVersion(out notSupportVersionB));
-            Assert.AreEqual(false, phoneService.IsPlatformSwVersionSupported());
-
-            mockPlatformService.Setup(x => x.GetSwVersion(out notSupportVersionC));
-            Assert.AreEqual(false, phoneService.IsPlatformSwVersionSupported());
-
-            mockPlatformService.Setup(x => x.GetSwVersion(out notSupportVersionD));
-            Assert.AreEqual(false, phoneService.IsPlatformSwVersionSupported());
-        }
-
-        [Test]
-        public void KeepScreenOn_Called_CallKeepScreenOn()
-        {
-            var mockPlatformService = new Mock<IPlatformService>();
-            var mockDispatcher = new Mock<IDispatcher>();
-            mockPlatformService.Setup(x => x.KeepScreenOn());
-
-            var phoneService = new PhoneService(mockDispatcher.Object, mockPlatformService.Object);
-
-            phoneService.KeepScreenOn();
-            mockPlatformService.Verify(x => x.KeepScreenOn(), Times.Once());
-        }
-
-        [Test]
-        public void IsAuthenticated_Called_CallSendRequest()
-        {
-            var mockPlatformService = new Mock<IPlatformService>();
-            var mockDispatcher = new Mock<IDispatcher>();
-            Request request = null;
-            mockDispatcher.Setup(x => x.SendRequest(It.IsAny<Request>())).Callback<Request>(arg => request = arg);
-
-            var phoneService = new PhoneService(mockDispatcher.Object, mockPlatformService.Object);
-
-            phoneService.IsAuthenticated(It.IsAny<Action<PhoneApplicationState>>());
-            mockDispatcher.Verify(x => x.SendRequest(It.IsAny<Request>()), Times.Once());
-            Assert.AreEqual(request.Operation, OperationType.CheckIsAuthenticated);
-            Assert.IsTrue(request.Data.Equals("{ \"authenticate\": false }"));
-        }
-
-        [Test]
-        public void InitializeApp_Called_CallSendRequest()
-        {
-            var mockPlatformService = new Mock<IPlatformService>();
-            var mockDispatcher = new Mock<IDispatcher>();
-            mockPlatformService.Setup(x => x.KeepScreenOn());
-            Request request = null;
-            mockDispatcher.Setup(x => x.SendRequest(It.IsAny<Request>())).Callback<Request>(arg => request = arg);
-
-            var phoneService = new PhoneService(mockDispatcher.Object, mockPlatformService.Object);
-
-            phoneService.InitializeApp();
-            mockDispatcher.Verify(x => x.SendRequest(It.IsAny<Request>()), Times.Once());
-            Assert.AreEqual(request.Operation, OperationType.ApplicationInitialized);
-            Assert.IsTrue(request.Data.Equals(""));
-        }
-
-        [Test]
-        public void OnAppStart_Called_CallSendRequest()
-        {
-            var mockPlatformService = new Mock<IPlatformService>();
-            var mockDispatcher = new Mock<IDispatcher>();
-            Request request = null;
-            mockDispatcher.Setup(x => x.SendRequest(It.IsAny<Request>())).Callback<Request>(arg => request = arg);
-
-            var phoneService = new PhoneService(mockDispatcher.Object, mockPlatformService.Object);
-
-            phoneService.OnAppStart();
-            mockDispatcher.Verify(x => x.SendRequest(It.IsAny<Request>()), Times.Once());
-            Assert.AreEqual(request.Operation, OperationType.ApplicationStarted);
-            Assert.IsTrue(request.Data.Equals(""));
-        }
-
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tests/SettingManagerTest.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tests/SettingManagerTest.cs
deleted file mode 100755 (executable)
index d0cbe47..0000000
+++ /dev/null
@@ -1,105 +0,0 @@
-using System;
-using NUnit.Framework;
-using Moq;
-using MapMyRun.Models.Workout;
-using System.Collections.Generic;
-using MapMyRun.Models;
-using MapMyRun.Models.Settings;
-
-namespace MapMyRun.Tests
-{
-    [TestFixture]
-    class SettingManagerTest
-    {
-        Mock<IDispatcher> mockDispatcher = null;
-
-        [SetUp]
-        public void Setup()
-        {
-            mockDispatcher = new Mock<IDispatcher>();
-        }
-
-        [Test]
-        public void Initialize_Called_CallSendRequestWithGetSettings()
-        {
-            mockDispatcher.Setup(x => x.Listen(OperationType.GpsStateChanged)).Returns(new NotificationProvider(OperationType.GpsStateChanged));
-            Request request = null;
-            mockDispatcher.Setup(x => x.SendRequest(It.IsAny<Request>())).Callback<Request>(arg => {
-                if (arg.Operation == OperationType.GetSettings)
-                    request = arg;
-            }
-            );
-
-            var settingManager = new SettingManager(mockDispatcher.Object);
-            settingManager.Initialize(null);
-
-            mockDispatcher.Verify(x => x.SendRequest(It.IsAny<Request>()), Times.AtLeastOnce());
-            Assert.AreEqual(request.Operation, OperationType.GetSettings);
-            Assert.IsTrue(request.Data.Equals(""));
-        }
-
-        [Test]
-        public void Initialize_Called_DontCallNullDelegate()
-        {
-            mockDispatcher.Setup(x => x.Listen(OperationType.GpsStateChanged)).Returns(new NotificationProvider(OperationType.GpsStateChanged));
-            Request request = null;
-            mockDispatcher.Setup(x => x.SendRequest(It.IsAny<Request>())).Callback<Request>(arg => {
-                if (arg.Operation == OperationType.GetSettings)
-                    request = arg;
-            }
-            );
-
-            var settingManager = new SettingManager(mockDispatcher.Object);
-            settingManager.Initialize(null);
-            Assert.IsNotNull(request);
-            request.OnReceiveResponse(new Response("0", "", ResponseStatus.Success));
-        }
-
-        [Test]
-        public void Initialize_Called_CallDelegate()
-        {
-            mockDispatcher.Setup(x => x.Listen(OperationType.GpsStateChanged)).Returns(new NotificationProvider(OperationType.GpsStateChanged));
-            Request request = null;
-            var isCalled = false;
-            mockDispatcher.Setup(x => x.SendRequest(It.IsAny<Request>())).Callback<Request>(arg => {
-                if (arg.Operation == OperationType.GetSettings)
-                    request = arg;
-            }
-            );
-
-            var settingManager = new SettingManager(mockDispatcher.Object);
-            settingManager.Initialize(() =>
-            {
-                isCalled = true;
-            });
-            Assert.IsNotNull(request);
-            request.OnReceiveResponse(new Response("0", "", ResponseStatus.Success));
-            Assert.IsTrue(isCalled);
-        }
-
-        [Test]
-        public void Initialize_CalledObserver_SetCorrectState()
-        {
-            var notificationProvider = new NotificationProvider(OperationType.GpsStateChanged);
-            mockDispatcher.Setup(x => x.Listen(OperationType.GpsStateChanged)).Returns(notificationProvider);
-            Request request = null;
-            mockDispatcher.Setup(x => x.SendRequest(It.IsAny<Request>())).Callback<Request>(arg => {
-                if (arg.Operation == OperationType.GetSettings)
-                    request = arg;
-            }
-            );
-
-            var settingManager = new SettingManager(mockDispatcher.Object);
-            settingManager.Initialize(null);
-            Assert.IsTrue(settingManager.GpsState == GPSState.Off);
-            request.OnReceiveResponse(new Response("0", 
-                "{\"gps\":{\"isEnabled\":true,\"isSupported\":true,\"systemValue\":true}}", ResponseStatus.Success));
-            Assert.IsTrue(settingManager.GpsState == GPSState.Ready);
-            notificationProvider.PostNotification("1");
-            Assert.IsTrue(settingManager.GpsState == GPSState.Acquired);
-            notificationProvider.PostNotification("0");
-            Assert.IsTrue(settingManager.GpsState == GPSState.Acquiring);
-        }
-
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tests/WorkoutTest.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tests/WorkoutTest.cs
deleted file mode 100755 (executable)
index b3ff9e0..0000000
+++ /dev/null
@@ -1,294 +0,0 @@
-using System;
-using NUnit.Framework;
-using Moq;
-using MapMyRun.Models.Workout;
-using System.Collections.Generic;
-using MapMyRun.Models;
-using MapMyRun.Models.Workout.Items;
-
-namespace MapMyRun.Tests
-{
-    [TestFixture]
-    class WorkoutTest
-    {
-        Mock<IDispatcher> mockDispatcher = null;
-        Mock<IPermissionManager> mockPermissionManager = null;
-
-        const string CaloriesKey = "calories";
-        const string WillpowerKey = "willpower";
-        const string HrZoneKey = "hrZone";
-        const string IntensityKey = "intensity";
-        const string AggregatesKey = "aggregates";
-        const string CadenceKey = "cadence";
-        const string HrKey = "hrData";
-        const string SpeedKey = "speed";
-        const string StrideLengthKey = "strideLength";
-        const string FormCoachKey = "formCoach";
-        const string GoalCoachKey = "speedCoach";
-        const string SpeedCoachKey = "goalCoach";
-
-        [SetUp]
-        public void Setup()
-        {
-            mockDispatcher = new Mock<IDispatcher>();
-            mockPermissionManager = new Mock<IPermissionManager>();
-        }
-
-        [Test]
-        public void PrepareWorkout_Called_CallRequestPermissionWithSensor()
-        {
-            var workout = new Workout(mockDispatcher.Object, mockPermissionManager.Object);
-            mockPermissionManager.Setup(x => x.RequestPermission(PermissionType.Sensor, It.IsAny<OnPermissionResponse>()));
-
-            workout.PrepareWorkout(50, true, true, true);
-
-            mockPermissionManager.Verify(x => x.RequestPermission(PermissionType.Sensor, It.IsAny<OnPermissionResponse>()), Times.Once());
-        }
-
-        [Test]
-        public void PrepareWorkout_CalledWithGpsNeededTrue_CallRequestPermissionWithLocation()
-        {
-            var workout = new Workout(mockDispatcher.Object, mockPermissionManager.Object);
-            OnPermissionResponse onResponse = null;
-            mockPermissionManager.Setup(x => x.RequestPermission(PermissionType.Sensor, It.IsAny<OnPermissionResponse>()))
-                .Callback<PermissionType ,OnPermissionResponse>((type, cb) =>
-                {
-                    onResponse = cb;
-                }
-            );
-            mockPermissionManager.Setup(x => x.RequestPermission(PermissionType.Location, It.IsAny<OnPermissionResponse>()));
-
-            workout.PrepareWorkout(50, true, true, true);
-            onResponse(true, true);
-
-            mockPermissionManager.Verify(x => x.RequestPermission(PermissionType.Sensor, It.IsAny<OnPermissionResponse>()), Times.Once());
-            mockPermissionManager.Verify(x => x.RequestPermission(PermissionType.Location, It.IsAny<OnPermissionResponse>()), Times.Once());
-        }
-
-        [Test]
-        public void PrepareWorkout_CalledWithGpsNeededFalse_DontCallRequestPermissionWithLocation()
-        {
-            var workout = new Workout(mockDispatcher.Object, mockPermissionManager.Object);
-            OnPermissionResponse onResponse = null;
-            mockPermissionManager.Setup(x => x.RequestPermission(PermissionType.Sensor, It.IsAny<OnPermissionResponse>()))
-                .Callback<PermissionType, OnPermissionResponse>((type, cb) =>
-                {
-                    onResponse = cb;
-                }
-            );
-            mockPermissionManager.Setup(x => x.RequestPermission(PermissionType.Location, It.IsAny<OnPermissionResponse>()));
-
-            workout.PrepareWorkout(50, false, true, true);
-            onResponse(true, true);
-
-            mockPermissionManager.Verify(x => x.RequestPermission(PermissionType.Sensor, It.IsAny<OnPermissionResponse>()), Times.Once());
-            mockPermissionManager.Verify(x => x.RequestPermission(PermissionType.Location, It.IsAny<OnPermissionResponse>()), Times.Never());
-        }
-
-        [Test]
-        public void PrepareWorkout_Called_CallDispatcherSendRequest()
-        {
-            var workout = new Workout(mockDispatcher.Object, mockPermissionManager.Object);
-            OnPermissionResponse onResponse = null;
-            mockPermissionManager.Setup(x => x.RequestPermission(PermissionType.Sensor, It.IsAny<OnPermissionResponse>()))
-                .Callback<PermissionType, OnPermissionResponse>((type, cb) =>
-                {
-                    onResponse = cb;
-                }
-            );
-            Request request = null;
-            mockDispatcher.Setup(x => x.SendRequest(It.IsAny<Request>())).Callback<Request>(arg =>
-                {
-                    request = arg;
-                }
-            );
-
-            workout.PrepareWorkout(50, false, true, true);
-            onResponse(false, false);
-
-            mockDispatcher.Verify(x => x.SendRequest(It.IsAny<Request>()), Times.Once());
-            Assert.AreEqual(OperationType.PrepareWKO, request.Operation);
-        }
-
-        [Test]
-        public void StartWorkout_Called_CallDispatcherSendRequest()
-        {
-            var workout = new Workout(mockDispatcher.Object, mockPermissionManager.Object);
-            OnPermissionResponse onResponse = null;
-            mockPermissionManager.Setup(x => x.RequestPermission(PermissionType.Sensor, It.IsAny<OnPermissionResponse>()))
-                .Callback<PermissionType, OnPermissionResponse>((type, cb) =>
-                {
-                    onResponse = cb;
-                }
-            );
-            Request request = null;
-            mockDispatcher.Setup(x => x.SendRequest(It.IsAny<Request>())).Callback<Request>(arg =>
-                {
-                    request = arg;
-                }
-            );
-
-            workout.PrepareWorkout(50, false, true, true);
-            onResponse(false, false);
-            request.OnReceiveResponse(new Response("0", "banana", ResponseStatus.Success));
-            workout.StartWorkout();
-
-            mockDispatcher.Verify(x => x.SendRequest(It.IsAny<Request>()), Times.Exactly(2));
-            Assert.AreEqual(OperationType.StartWKO, request.Operation);
-        }
-
-        [Test]
-        public void StartListenWorkoutData_Called_CallDispatcherListen()
-        {
-            var workout = new Workout(mockDispatcher.Object, mockPermissionManager.Object);
-            mockDispatcher.Setup(x => x.Listen(OperationType.WkoDataChanged)).Returns(new NotificationProvider(OperationType.WkoDataChanged));
-
-            workout.StartListenWorkoutData();
-
-            mockDispatcher.Verify(x => x.Listen(OperationType.WkoDataChanged), Times.Once());
-        }
-
-        [Test]
-        public void PropagateWorkoutData_Called_CallCorrectEvent()
-        {
-            var workout = new Workout(mockDispatcher.Object, mockPermissionManager.Object);
-            mockDispatcher.Setup(x => x.Listen(OperationType.WkoDataChanged)).Returns(new NotificationProvider(OperationType.WkoDataChanged));
-
-            var calledEvents = new List<string>();
-            workout.CaloriesDataReceived += (x) => { calledEvents.Add(CaloriesKey); };
-            workout.WillpowerDataReceived += (x) => { calledEvents.Add(WillpowerKey); };
-            workout.HrZoneDataReceived += (x) => { calledEvents.Add(HrZoneKey); };
-            workout.IntensityDataReceived += (x) => { calledEvents.Add(IntensityKey); };
-            workout.AggregatesDataReceived += (x) => { calledEvents.Add(AggregatesKey); };
-            workout.CadenceDataReceived += (x) => { calledEvents.Add(CadenceKey); };
-            workout.HrDataReceived += (x) => { calledEvents.Add(HrKey); };
-            workout.SpeedDataReceived += (x) => { calledEvents.Add(SpeedKey); };
-            workout.StrideLengthDataReceived += (x) => { calledEvents.Add(StrideLengthKey); };
-            workout.FormCoachDataReceived += (x) => { calledEvents.Add(FormCoachKey); };
-            workout.GoalCoachDataReceived += (x) => { calledEvents.Add(GoalCoachKey); };
-            workout.SpeedCoachDataReceived += (x) => { calledEvents.Add(SpeedCoachKey); };
-
-            Dictionary<string, string> workEventTestData = new Dictionary<string, string>()
-            {
-                { CaloriesKey, "{\"calories\":198}" },
-                { WillpowerKey, "{\"willpower\": \"willpower\"}" },
-                { HrZoneKey, "{\"hrZone\": \"banana\"}" },
-                { IntensityKey, "{\"intensity\": \"orange\"}" },
-                { AggregatesKey, "{\"aggregates\": { \"distance_total\":0,\"metabolic_energy_total\":0 } }" },
-                { CadenceKey, "{\"cadence\": { \"min\":0,\"max\":0 } }" },
-                { HrKey, "{\"hrData\": { \"min\":0,\"max\":0 } }" },
-                { SpeedKey, "{\"speed\": { \"min\":0,\"max\":0 } }" },
-                { StrideLengthKey, "{\"strideLength\": { \"min\":0,\"max\":0 } }" },
-                { FormCoachKey, "{\"formCoach\": { \"targetMin\":0,\"targetMax\":0 } }" },
-                { GoalCoachKey, "{\"goalCoach\": { \"targetMin\":0,\"targetMax\":0 } }" },
-                { SpeedCoachKey, "{\"speedCoach\": { \"current\":0,\"target\":0 } }" }
-            };
-
-            foreach (var entry in workEventTestData)
-            {
-                Console.WriteLine($"Key {entry.Key}");
-                calledEvents.Clear();
-                WorkoutData workoutData = workout.ParseWorkoutDataJson(entry.Value);
-                workout.PropagateWorkoutData(workoutData);
-                Assert.AreEqual(1, calledEvents.Count);
-                Assert.AreEqual(entry.Key, calledEvents[0]);
-            }
-        }
-
-        [Test]
-        public void PropagateWorkoutData_Called_CallMultiCorrectEvent()
-        {
-            var workout = new Workout(mockDispatcher.Object, mockPermissionManager.Object);
-            mockDispatcher.Setup(x => x.Listen(OperationType.WkoDataChanged)).Returns(new NotificationProvider(OperationType.WkoDataChanged));
-
-            var calledEvents = new List<string>();
-            workout.CaloriesDataReceived += (x) => { calledEvents.Add(CaloriesKey); };
-            workout.WillpowerDataReceived += (x) => { calledEvents.Add(WillpowerKey); };
-            workout.HrZoneDataReceived += (x) => { calledEvents.Add(HrZoneKey); };
-            workout.IntensityDataReceived += (x) => { calledEvents.Add(IntensityKey); };
-            workout.AggregatesDataReceived += (x) => { calledEvents.Add(AggregatesKey); };
-            workout.CadenceDataReceived += (x) => { calledEvents.Add(CadenceKey); };
-            workout.HrDataReceived += (x) => { calledEvents.Add(HrKey); };
-            workout.SpeedDataReceived += (x) => { calledEvents.Add(SpeedKey); };
-            workout.StrideLengthDataReceived += (x) => { calledEvents.Add(StrideLengthKey); };
-            workout.FormCoachDataReceived += (x) => { calledEvents.Add(FormCoachKey); };
-            workout.GoalCoachDataReceived += (x) => { calledEvents.Add(GoalCoachKey); };
-            workout.SpeedCoachDataReceived += (x) => { calledEvents.Add(SpeedCoachKey); };
-
-            var calorieWillpowerIntensity = "{\"calories\":198, \"willpower\": \"willpower\", \"intensity\": \"orange\"}";
-            var cadenceSpeedcoachGoal = "{\"cadence\": { \"min\":0,\"max\":0 }, \"speedCoach\": { \"current\":0,\"target\":0 }, \"goalCoach\": { \"targetMin\":0,\"targetMax\":0 } }";
-            var aggregateSpeedHr = "{\"aggregates\": { \"distance_total\":0,\"metabolic_energy_total\":0 }, \"hrData\": { \"min\":0,\"max\":0 }, \"speed\": { \"min\":0,\"max\":0 } }";
-            var hrZoneStrideForm = "{\"hrZone\": \"banana\", \"strideLength\": { \"min\":0,\"max\":0 }, \"formCoach\": { \"targetMin\":0,\"targetMax\":0 } }";
-
-            calledEvents.Clear();
-            WorkoutData workoutData = workout.ParseWorkoutDataJson(calorieWillpowerIntensity);
-            workout.PropagateWorkoutData(workoutData);
-            Assert.AreEqual(3, calledEvents.Count);
-            Assert.AreEqual(CaloriesKey, calledEvents[0]);
-            Assert.AreEqual(WillpowerKey, calledEvents[1]);
-            Assert.AreEqual(IntensityKey, calledEvents[2]);
-
-            calledEvents.Clear();
-            workoutData = workout.ParseWorkoutDataJson(cadenceSpeedcoachGoal);
-            workout.PropagateWorkoutData(workoutData);
-            Assert.AreEqual(3, calledEvents.Count);
-            Assert.AreEqual(CadenceKey, calledEvents[0]);
-            Assert.AreEqual(GoalCoachKey, calledEvents[1]);
-            Assert.AreEqual(SpeedCoachKey, calledEvents[2]);
-
-            calledEvents.Clear();
-            workoutData = workout.ParseWorkoutDataJson(aggregateSpeedHr);
-            workout.PropagateWorkoutData(workoutData);
-            Assert.AreEqual(3, calledEvents.Count);
-            Assert.AreEqual(HrKey, calledEvents[0]);
-            Assert.AreEqual(AggregatesKey, calledEvents[1]);
-            Assert.AreEqual(SpeedKey, calledEvents[2]);
-
-            calledEvents.Clear();
-            workoutData = workout.ParseWorkoutDataJson(hrZoneStrideForm);
-            workout.PropagateWorkoutData(workoutData);
-            Assert.AreEqual(3, calledEvents.Count);
-            Assert.AreEqual(HrZoneKey, calledEvents[0]);
-            Assert.AreEqual(StrideLengthKey, calledEvents[1]);
-            Assert.AreEqual(FormCoachKey, calledEvents[2]);
-        }
-
-        [Test]
-        public void AddItem_Called_AddedCorrectItem()
-        {
-            var workout = new Workout(mockDispatcher.Object, mockPermissionManager.Object);
-
-            workout.AddItem(WorkoutItemType.Calories);
-            var result = workout.GetItem(WorkoutItemType.Calories);
-
-            Assert.IsNotNull(result);
-        }
-
-        [Test]
-        public void GetItem_Called_ReturnNull()
-        {
-            var workout = new Workout(mockDispatcher.Object, mockPermissionManager.Object);
-
-            var result = workout.GetItem(WorkoutItemType.Calories);
-
-            Assert.IsNull(result);
-        }
-
-        [Test]
-        public void ClearAllWorkoutItem_Called_ClearAllItems()
-        {
-            var workout = new Workout(mockDispatcher.Object, mockPermissionManager.Object);
-
-            workout.AddItem(WorkoutItemType.Calories);
-            workout.AddItem(WorkoutItemType.PeakHR);
-            Assert.IsNotNull(workout.GetItem(WorkoutItemType.Calories));
-            Assert.IsNotNull(workout.GetItem(WorkoutItemType.PeakHR));
-
-            workout.ClearAllWorkoutItem();
-
-            Assert.IsNull(workout.GetItem(WorkoutItemType.Calories));
-            Assert.IsNull(workout.GetItem(WorkoutItemType.PeakHR));
-        }
-
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/App.xaml b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/App.xaml
deleted file mode 100755 (executable)
index a9d222b..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<Application xmlns="http://xamarin.com/schemas/2014/forms"
-             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-             x:Class="MapMyRun.Tizen.App">
-    <Application.Resources>
-
-        <!-- Application resource dictionary -->
-        <ResourceDictionary>
-            <Color x:Key="PrimaryHeaderColor">#F8F8F9</Color>
-            <Color x:Key="PrimaryTextColor">#F8F8F9</Color>
-
-            <Color x:Key="PrimaryCellLabelColor">#F8F8F9</Color>
-            <Color x:Key="DetailCellLabelColor">#008DFF</Color>
-
-            <!--List Styling-->
-            <Style x:Key="PrimaryHeaderStyle" TargetType="Label">
-                <Setter Property="HorizontalTextAlignment" Value="Center" />
-                <Setter Property="VerticalTextAlignment" Value="Center" />
-                <Setter Property="TextColor" Value="{StaticResource PrimaryHeaderColor}" />
-                <Setter Property="FontSize" Value="Small" />
-            </Style>
-            <Style x:Key="PrimaryCellLabelStyle" TargetType="Label">
-                <Setter Property="Margin" Value="0, 20, 0, 0" />
-                <Setter Property="HorizontalTextAlignment" Value="Center" />
-                <Setter Property="VerticalTextAlignment" Value="Center" />
-                <Setter Property="TextColor" Value="{StaticResource PrimaryCellLabelColor}" />
-                <Setter Property="FontSize" Value="Small" />
-            </Style>
-            <Style x:Key="DetailCellLabelStyle" TargetType="Label">
-                <Setter Property="Margin" Value="0, 0, 0, 20" />
-                <Setter Property="HorizontalTextAlignment" Value="Center" />
-                <Setter Property="VerticalTextAlignment" Value="Center" />
-                <Setter Property="TextColor" Value="{StaticResource DetailCellLabelColor}" />
-                <Setter Property="FontSize" Value="Micro" />
-            </Style>
-
-            <Style x:Key="DetailCellLabelStyleCloserMargin" TargetType="Label">
-                <Setter Property="Margin" Value="0, -15, 0, 20" />
-                <Setter Property="HorizontalTextAlignment" Value="Center" />
-                <Setter Property="VerticalTextAlignment" Value="Center" />
-                <Setter Property="TextColor" Value="{StaticResource DetailCellLabelColor}" />
-                <Setter Property="FontSize" Value="Micro" />
-            </Style>
-        </ResourceDictionary>
-    </Application.Resources>
-</Application>
\ No newline at end of file
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/App.xaml.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/App.xaml.cs
deleted file mode 100755 (executable)
index cd3f480..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-using MapMyRun.Models;
-using MapMyRun.Tizen.Models;
-using MapMyRun.Tizen.Views;
-using MapMyRun.Models.Workout;
-using MapMyRun.Models.Settings;
-
-namespace MapMyRun.Tizen
-{
-    [XamlCompilation(XamlCompilationOptions.Compile)]
-    public partial class App : Application
-    {
-        public Workout workout;
-        public SettingManager settingManager;
-        public App()
-        {
-            InitializeComponent();
-            MainPage = new LoadingPage();
-        }
-
-               protected override void OnStart()
-        {
-            //Console.WriteLine("OnStart!========================");
-        }
-
-        protected override void OnSleep()
-        {
-            //Console.WriteLine("OnSleep!========================");
-            // Handle when your app sleeps
-        }
-
-        protected override void OnResume()
-        {
-            //Console.WriteLine("OnResume!========================");
-            // Handle when your app resumes
-        }
-    }
-}
-
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/MapMyRun.Tizen.csproj b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/MapMyRun.Tizen.csproj
deleted file mode 100755 (executable)
index 89b3a9d..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-<Project Sdk="Tizen.NET.Sdk/1.0.9">
-
-  <PropertyGroup>
-    <OutputType>Exe</OutputType>
-    <TargetFramework>tizen40</TargetFramework>
-  </PropertyGroup>
-
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugType>portable</DebugType>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>None</DebugType>
-  </PropertyGroup>
-
-  <ItemGroup>
-    <PackageReference Include="Newtonsoft.Json" Version="12.0.3" />
-  </ItemGroup>
-
-  <Import Project="..\MapMyRun\MapMyRun.projitems" Label="Shared" />
-  
-  <ItemGroup>
-    <ProjectReference Include="..\..\..\..\src\XSF\XSF.csproj" />
-  </ItemGroup>
-  
-</Project>
-
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/MapMyRun.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/MapMyRun.cs
deleted file mode 100644 (file)
index 98c6ee9..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-using System;
-using System.Collections.Generic;
-using Tizen.Wearable.CircularUI.Forms;
-using Tizen.Wearable.CircularUI.Forms.Renderer;
-using Xamarin.Forms;
-
-namespace MapMyRun.Tizen
-{
-    class Program : global::Xamarin.Forms.Platform.Tizen.ApplicationLifecycle
-    {
-        protected override void OnCreate()
-        {
-            base.OnCreate();
-
-            FormsApplication.LoadApplication(new App());
-        }
-
-        static void Main(string[] args)
-        {
-            var app = new Program();
-           var customRenderers = new Dictionary<Type, Func<IRegisterable>>()
-           {
-                   { typeof(CirclePage), ()=> new CirclePageRenderer() },
-                    { typeof(global:: Tizen.Wearable.CircularUI.Forms.CircleListView), () => new CircleListViewRenderer() },
-                    { typeof(global:: Tizen.Wearable.CircularUI.Forms.CircleScrollView), () => new global::Tizen.Wearable.CircularUI.Forms.Renderer.CircleScrollViewRenderer() }
-            };
-           
-           var option = new InitializationOptions(app)
-           {
-                   UseMessagingCenter = false,
-                   UseStyle = true,
-            UseShell = false,
-                   UseVisual = false,
-                   StaticRegistarStrategy = StaticRegistrarStrategy.StaticRegistrarOnly,
-                   CustomHandlers = customRenderers,
-                   Flags = InitializationFlags.DisableCss
-           };
-            Forms.Init(option);
-            global::Tizen.Wearable.CircularUI.Forms.Renderer.FormsCircularUI.Init();
-            app.FormsApplication.Run(args);
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/Models/AppLauncher.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/Models/AppLauncher.cs
deleted file mode 100755 (executable)
index 2fd9e0e..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-using Xamarin.Forms;
-using Tizen.Applications;
-using MapMyRun.Models;
-using MapMyRun.Tizen.Models;
-
-namespace MapMyRun.Tizen.Models
-{
-    public class AppLauncher : IAppLauncher
-    {
-        public void Launch(string appId)
-        {
-            var control = new AppControl()
-            {
-                ApplicationId = appId
-            };
-
-            AppControl.SendLaunchRequest(control);
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/Models/MessagePortHandler.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/Models/MessagePortHandler.cs
deleted file mode 100755 (executable)
index cffd002..0000000
+++ /dev/null
@@ -1,155 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-using Tizen.Applications;
-using Tizen.Applications.Messages;
-using MapMyRun.Models;
-using Xamarin.Forms;
-
-namespace MapMyRun.Tizen.Models
-{
-    public class MessagePortHandler : IMessagePortHandler
-    {
-        private string _localPortName = "";
-        private string _remotePortName = "";
-        private string _remoteAppId = "";
-        private bool _isSecureMode = false;
-
-        private bool _isInit = false;
-        private bool _isPendingMessageSending = false;
-        private List<Dictionary<string, string>> _pendingMessages = new List<Dictionary<string, string>>();
-
-        private MessagePort messagePort;
-
-        public event Action<Dictionary<string, string>> MessageReceived = delegate { };
-
-        public void Connect(string localPort, string remoteAppId, string remotePort, bool secureMode)
-        {
-            _localPortName = localPort;
-            _remotePortName = remotePort;
-            _remoteAppId = remoteAppId;
-            _isSecureMode = secureMode;
-
-            messagePort = new MessagePort(_localPortName, _isSecureMode);
-            messagePort.MessageReceived += OnReceive;
-            messagePort.Listen();
-        }
-
-        public void Disconnect()
-        {
-            _localPortName = "";
-            _remotePortName = "";
-            _remoteAppId = "";
-            _isSecureMode = false;
-            messagePort.StopListening();
-            messagePort.Dispose();
-            messagePort = null;
-        }
-
-        public void Send(Dictionary<string, string> data)
-        {
-            if (!_isInit)
-            {
-                _pendingMessages.Add(data);
-
-                if (!_isPendingMessageSending)
-                {
-                    _isPendingMessageSending = true;
-                    TrySendFirstMessage();
-                }
-                return;
-            }
-
-            SendMessage(data);
-        }
-
-        private void TrySendFirstMessage()
-        {
-            try
-            {
-                var remotePort = new RemotePort(_remoteAppId, _remotePortName, false);
-                bool isRunning = remotePort.IsRunning();
-                //Console.WriteLine($"Remote Port: {_remoteAppId}, {_remotePortName}, {isRunning}");
-
-                if (!isRunning)
-                {
-                    StartRetrySendFirstMessage();
-                    return;
-                }
-
-                foreach (Dictionary<string, string> pendingMessage in _pendingMessages)
-                {
-                    //TODO : Fail case, Exit? or Recovery?
-                    SendMessage(pendingMessage);
-                }
-
-                _isPendingMessageSending = false;
-                _isInit = true;
-            }
-            catch (Exception ex)
-            {
-                Console.WriteLine("Exception - Message: " + ex.Message + ", source: " + ex.Source + ", " + ex.StackTrace);
-                StartRetrySendFirstMessage();
-            }
-        }
-
-        void SendMessage(Dictionary<string, string> data)
-        {
-            var bundle = new Bundle();
-            //Console.WriteLine($"________________________________");
-            //Console.WriteLine($">>>>> [UI] Send Data: ");
-            foreach (var pair in data)
-            {
-                bundle.AddItem(pair.Key, pair.Value);
-                //Console.WriteLine($"{{ Key: {pair.Key}, Value: {pair.Value} }}");
-            }
-
-            try
-            {
-                messagePort.Send(bundle, _remoteAppId, _remotePortName, _isSecureMode);
-                //Console.WriteLine($"Message sent: {_remoteAppId}, {_remotePortName}, {_isSecureMode}");
-            }
-            catch (Exception ex)
-            {
-                Console.WriteLine("Exception - Message: " + ex.Message + ", source: " + ex.Source + ", " + ex.StackTrace);
-            }
-        }
-
-        private void StartRetrySendFirstMessage()
-        {
-            Device.StartTimer(TimeSpan.FromSeconds(0.3), () =>
-            {
-                TrySendFirstMessage();
-                return false;
-            });
-        }
-
-        private void OnReceive(object sender, MessageReceivedEventArgs e)
-        {
-            StringBuilder messageLog = new StringBuilder();
-
-            //Console.WriteLine($"________________________________");
-            //Console.WriteLine("UI application received a message");
-            //Console.WriteLine($"App ID: {e.Remote.AppId}");
-            //Console.WriteLine($"PortName: {e.Remote.PortName}");
-            //Console.WriteLine($"Trusted: {e.Remote.Trusted}");
-            Bundle responseBundle = e.Message;
-
-            //Console.WriteLine($"[UI] Response Data <<<<< : ");
-            var reponse = new Dictionary<string, string>();
-
-            foreach (string key in responseBundle.Keys)
-            {
-                if (responseBundle.TryGetItem(key, out string value))
-                {
-                    //Console.WriteLine($"{{ Key: {key}, Value: {value} }}");
-                    reponse.Add(key, value);
-                }
-            }
-
-            MessageReceived(reponse);
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/Models/TizenPlatformService.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/Models/TizenPlatformService.cs
deleted file mode 100755 (executable)
index 831aa16..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using MapMyRun.Models;
-
-namespace MapMyRun.Tizen.Models
-{
-    class TizenPlatformService : IPlatformService
-    {
-        public void GetSwVersion(out string version)
-        {
-            global::Tizen.System.Information.TryGetValue("http://tizen.org/system/build.string", out version);
-            //Console.WriteLine($"SW Version {version}");
-        }
-
-        public void KeepScreenOn()
-        {
-            // TODO : Check it API Version 5
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/BasePageModel.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/BasePageModel.cs
deleted file mode 100755 (executable)
index 7cc2e50..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Runtime.CompilerServices;
-
-namespace MapMyRun.Tizen.ViewModels
-{
-    public class BasePageModel : INotifyPropertyChanged
-    {
-        protected bool SetProperty<T>(ref T backingStore, T value,
-            [CallerMemberName]string propertyName = "",
-            Action onChanged = null)
-        {
-            if (EqualityComparer<T>.Default.Equals(backingStore, value))
-            {
-                return false;
-            }
-
-            backingStore = value;
-            onChanged?.Invoke();
-            OnPropertyChanged(propertyName);
-            return true;
-        }
-
-        public event PropertyChangedEventHandler PropertyChanged;
-
-        protected void OnPropertyChanged([CallerMemberName] string propertyName = "")
-        {
-            PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/LoadingPageModel.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/LoadingPageModel.cs
deleted file mode 100755 (executable)
index d26cf4d..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-using MapMyRun.Models;
-namespace MapMyRun.Tizen.ViewModels
-{
-    class LoadingPageModel : BasePageModel
-    {
-        private double _progress;
-        private Loading _loadingModel;
-
-        public double Progress
-        {
-            get
-            {
-                return _progress;
-            }
-
-            set
-            {
-                if (_progress >= 1)
-                    return;
-
-                double changedValue = value;
-                if (value >= 1)
-                {
-                    changedValue = 1;
-                }
-                SetProperty(ref _progress, changedValue, "Progress");
-            }
-        }
-
-        public LoadingPageModel(Loading model)
-        {
-            _loadingModel = model;
-            _loadingModel.LoadingStateChanged += (state) =>
-            {
-                Progress = (double)state / Enum.GetValues(typeof(LoadingState)).Length;
-            };
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/MainPageModel.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/MainPageModel.cs
deleted file mode 100755 (executable)
index d66ef55..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.ComponentModel;
-using MapMyRun.Models.Settings;
-using Xamarin.Forms;
-using MapMyRun.Models;
-
-namespace MapMyRun.Tizen.ViewModels
-{
-    public class MainPageModel : BasePageModel
-    {
-        private SettingManager settingManager;
-
-        private GPSState _gpsState;
-        public GPSState GpsState
-        {
-            get
-            {
-                return _gpsState;
-            }
-            set
-            {
-                SetProperty(ref _gpsState, value, "GpsState");
-
-                switch (value)
-                {
-                    case GPSState.Acquired:
-                        GpsStatusImg = ImageSource.FromFile("icon-gps--connected.png");
-                        break;
-                    case GPSState.Ready:
-                    case GPSState.Acquiring:
-                        GpsStatusImg = ImageSource.FromFile("icon-gps--connecting.png");
-                        break;
-                    case GPSState.DisabledForActivity:
-                        GpsStatusImg = ImageSource.FromFile("icon-gps--not-connected.png");
-                        break;
-                    case GPSState.Off:
-                        GpsStatusImg = ImageSource.FromFile("icon-gps--not-connected.png");
-                        break;
-                    default:
-                        GpsStatusImg = ImageSource.FromFile("icon-gps--error.png");
-                        break;
-                }
-            }
-        }
-
-        private ImageSource _gpsStatusImg;
-        public ImageSource GpsStatusImg
-        {
-            get
-            {
-                return _gpsStatusImg;
-            }
-            set
-            {
-                SetProperty(ref _gpsStatusImg, value, "GpsStatusImg");
-            }
-        }
-
-        public MainPageModel()
-        {
-            settingManager = ((App)Application.Current).settingManager;
-            settingManager.GpsStateChanged += (GPSState nextGpsState) =>
-            {
-                GpsState = nextGpsState;
-            };
-            GpsState = settingManager.GpsState;
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/SettingsPageModel.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/SettingsPageModel.cs
deleted file mode 100755 (executable)
index 37df409..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.ComponentModel;
-using Xamarin.Forms;
-using MapMyRun.Models.Settings;
-
-namespace MapMyRun.Tizen.ViewModels
-{
-    public class SettingsPageModel : BasePageModel
-    {
-        private SettingManager settingManager;
-        private DisplayTimeType _displayTime { get; set; }
-        
-        public int DisplayTime {
-            get {
-                return (int) _displayTime;
-            }
-            set {
-                if (Enum.IsDefined(typeof(DisplayTimeType), value))
-                {
-                    _displayTime = (DisplayTimeType)value;
-                }
-            }
-        }
-
-
-        private bool gpsStatus;
-        public bool GPSStatus 
-        { 
-            get
-            {
-                return gpsStatus;
-            }
-            set
-            {
-                gpsStatus = value;
-                settingManager.ToggleGPS(gpsStatus);
-            } 
-        }
-
-        private static SettingsPageModel _instance;
-
-        public static SettingsPageModel GetInstance()
-        {
-            if (_instance == null)
-            {
-                _instance = new SettingsPageModel();
-            }
-            return _instance;
-        }
-
-        private SettingsPageModel()
-        {
-            // Insert loading of settings here.
-            settingManager = ((App)Application.Current).settingManager;
-            _displayTime = DisplayTimeType.longDisplayTime;
-            GPSStatus = false;
-        }
-    }
-
-    public enum DisplayTimeType
-    {
-        longDisplayTime = 16,
-        midDisplayTime = 12,
-        shortDisplayTime = 6
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/AverageHrViewModel.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/AverageHrViewModel.cs
deleted file mode 100755 (executable)
index 23bf14b..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-using MapMyRun.Models.Workout.Items;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Timers;
-
-namespace MapMyRun.Tizen.ViewModels.WorkoutMain
-{
-    class AverageHrViewModel : BasePageModel, IWorkoutItemViewModel
-    {
-        private string _val;
-        private string _valWithUnit;
-        public string Value
-        {
-            get { return _val; }
-            set
-            {
-                string nextValue = String.Equals(value, "0", StringComparison.OrdinalIgnoreCase) ? Item.GetEmptyValue() : value;
-
-                SetProperty(ref _val, nextValue);
-                ValueWithUnit = nextValue;
-            }
-        }
-
-        public string ValueWithUnit
-        {
-            get { return _valWithUnit; }
-            set
-            {
-                SetProperty(ref _valWithUnit, value + Item.GetUnit());
-            }
-        }
-
-        public string LongLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.LongLabel); }
-        }
-
-        public string MediumLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.MediumLabel); }
-        }
-
-        public string ShortLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.ShortLabel); }
-        }
-
-        public WorkoutItemType ItemType { get; set; }
-        public IWorkoutItem Item { get; set; }
-
-        public AverageHrViewModel(IWorkoutItem item)
-        {
-            ItemType = WorkoutItemType.AvgHR;
-            Item = item;
-            Value = item.GetEmptyValue();
-        }
-
-        public void Initialize()
-        {
-            Console.WriteLine("AverageHr Initialize!");
-
-            var item = (AverageHr)Item;
-            item.ValueChanged += (x) =>
-            {
-                Console.WriteLine($"AverageHr Changed : {x}");
-                Value = x;
-            };
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/CadenceViewModel.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/CadenceViewModel.cs
deleted file mode 100755 (executable)
index 251cc56..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-using MapMyRun.Models.Workout.Items;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Timers;
-
-namespace MapMyRun.Tizen.ViewModels.WorkoutMain
-{
-    class CadenceViewModel : BasePageModel, IWorkoutItemViewModel
-    {
-        private string _val;
-        private string _valWithUnit;
-        public string Value
-        {
-            get { return _val; }
-            set
-            {
-                SetProperty(ref _val, value);
-                ValueWithUnit = value;
-            }
-        }
-
-        public string ValueWithUnit
-        {
-            get { return _valWithUnit; }
-            set
-            {
-                SetProperty(ref _valWithUnit, value + Item.GetUnit());
-            }
-        }
-
-        public string LongLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.LongLabel); }
-        }
-
-        public string MediumLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.MediumLabel); }
-        }
-
-        public string ShortLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.ShortLabel); }
-        }
-
-        public WorkoutItemType ItemType { get; set; }
-        public IWorkoutItem Item { get; set; }
-
-        public CadenceViewModel(IWorkoutItem item)
-        {
-            ItemType = WorkoutItemType.Cadence;
-            Item = item;
-            Value = item.GetEmptyValue();
-        }
-
-        public void Initialize()
-        {
-            Console.WriteLine("CurrentCadence Initialize!");
-
-            var item = (CurrentCadence)Item;
-            item.ValueChanged += (x) =>
-            {
-                Console.WriteLine($"CurrentCadence Changed : {x}");
-                Value = x;
-            };
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/CaloriesViewModel.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/CaloriesViewModel.cs
deleted file mode 100755 (executable)
index a2450bc..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-using MapMyRun.Models.Workout.Items;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Timers;
-
-namespace MapMyRun.Tizen.ViewModels.WorkoutMain
-{
-    class CaloriesViewModel : BasePageModel, IWorkoutItemViewModel
-    {
-        private string _val;
-        private string _valWithUnit;
-        public string Value
-        {
-            get { return _val; }
-            set
-            {
-                SetProperty(ref _val, value);
-                ValueWithUnit = value;
-            }
-        }
-
-        public string ValueWithUnit
-        {
-            get { return _valWithUnit; }
-            set
-            {
-                SetProperty(ref _valWithUnit, value + Item.GetUnit());
-            }
-        }
-
-        public string LongLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.LongLabel); }
-        }
-
-        public string MediumLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.MediumLabel); }
-        }
-
-        public string ShortLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.ShortLabel); }
-        }
-
-        public WorkoutItemType ItemType { get; set; }
-        public IWorkoutItem Item { get; set; }
-
-        public CaloriesViewModel(IWorkoutItem item)
-        {
-            ItemType = WorkoutItemType.Calories;
-            Item = item;
-            Value = item.GetEmptyValue();
-        }
-
-        public void Initialize()
-        {
-            Console.WriteLine("Calorie Initialize!");
-
-            var item = (Calories)Item;
-            item.ValueChanged += (x) =>
-            {
-                Console.WriteLine($"Calories Changed : {x}");
-                Value = x;
-            };
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/CurrentHrViewModel.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/CurrentHrViewModel.cs
deleted file mode 100755 (executable)
index 48c9e52..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-using MapMyRun.Models.Workout.Items;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Timers;
-
-namespace MapMyRun.Tizen.ViewModels.WorkoutMain
-{
-    class CurrentHrViewModel : BasePageModel, IWorkoutItemViewModel
-    {
-        private string _val;
-        private string _valWithUnit;
-        public string Value
-        {
-            get { return _val; }
-            set
-            {
-                string nextValue = String.Equals(value, "0", StringComparison.OrdinalIgnoreCase) ? Item.GetEmptyValue() : value;
-
-                SetProperty(ref _val, nextValue);
-                ValueWithUnit = nextValue;
-            }
-        }
-
-        public string ValueWithUnit
-        {
-            get { return _valWithUnit; }
-            set
-            {
-                SetProperty(ref _valWithUnit, value + Item.GetUnit());
-            }
-        }
-
-        public string LongLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.LongLabel); }
-        }
-
-        public string MediumLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.MediumLabel); }
-        }
-
-        public string ShortLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.ShortLabel); }
-        }
-
-        public WorkoutItemType ItemType { get; set; }
-        public IWorkoutItem Item { get; set; }
-
-        public CurrentHrViewModel(IWorkoutItem item)
-        {
-            ItemType = WorkoutItemType.CurrentHR;
-            Item = item;
-            Value = item.GetEmptyValue();
-        }
-
-        public void Initialize()
-        {
-            Console.WriteLine("CurrentHr Initialize!");
-
-            var item = (CurrentHr)Item;
-            item.ValueChanged += (x) =>
-            {
-                Console.WriteLine($"CurrentHr Changed : {x}");
-                Value = x;
-            };
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/CurrentPaceViewModel.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/CurrentPaceViewModel.cs
deleted file mode 100755 (executable)
index 8648739..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-using MapMyRun.Models.Workout.Items;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Timers;
-
-namespace MapMyRun.Tizen.ViewModels.WorkoutMain
-{
-    class CurrentPaceViewModel : BasePageModel, IWorkoutItemViewModel
-    {
-        private string _val;
-        private string _valWithUnit;
-        public string Value
-        {
-            get { return _val; }
-            set
-            {
-                SetProperty(ref _val, value);
-                ValueWithUnit = value;
-            }
-        }
-
-        public string ValueWithUnit
-        {
-            get { return _valWithUnit; }
-            set
-            {
-                SetProperty(ref _valWithUnit, value + Item.GetUnit());
-            }
-        }
-
-        public string LongLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.LongLabel); }
-        }
-
-        public string MediumLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.MediumLabel); }
-        }
-
-        public string ShortLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.ShortLabel); }
-        }
-
-        public WorkoutItemType ItemType { get; set; }
-        public IWorkoutItem Item { get; set; }
-
-        public CurrentPaceViewModel(IWorkoutItem item)
-        {
-            ItemType = WorkoutItemType.Pace;
-            Item = item;
-            Value = item.GetEmptyValue();
-        }
-
-        public void Initialize()
-        {
-            Console.WriteLine("CurrentPace Initialize!");
-
-            var item = (CurrentPace)Item;
-            item.ValueChanged += (x) =>
-            {
-                Console.WriteLine($"CurrentPace Changed : {x}");
-                Value = x;
-            };
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/DistanceViewModel.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/DistanceViewModel.cs
deleted file mode 100755 (executable)
index 76921f9..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-using MapMyRun.Models.Workout.Items;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Timers;
-
-namespace MapMyRun.Tizen.ViewModels.WorkoutMain
-{
-    class DistanceViewModel : BasePageModel, IWorkoutItemViewModel
-    {
-        private string _val;
-        private string _valWithUnit;
-        public string Value
-        {
-            get { return _val; }
-            set
-            {
-                SetProperty(ref _val, value);
-                ValueWithUnit = value;
-            }
-        }
-
-        public string ValueWithUnit
-        {
-            get { return _valWithUnit; }
-            set
-            {
-                SetProperty(ref _valWithUnit, value + Item.GetUnit());
-            }
-        }
-
-        public string LongLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.LongLabel); }
-        }
-
-        public string MediumLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.MediumLabel); }
-        }
-
-        public string ShortLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.ShortLabel); }
-        }
-
-        public WorkoutItemType ItemType { get; set; }
-        public IWorkoutItem Item { get; set; }
-
-        public DistanceViewModel(IWorkoutItem item)
-        {
-            ItemType = WorkoutItemType.Distance;
-            Item = item;
-            Value = item.GetEmptyValue();
-        }
-
-        public void Initialize()
-        {
-            Console.WriteLine("Distance Initialize!");
-
-            var item = (Distance)Item;
-            item.ValueChanged += (x) =>
-            {
-                Console.WriteLine($"Distance Changed : {x}");
-                Value = x;
-            };
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/DurationViewModel.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/DurationViewModel.cs
deleted file mode 100755 (executable)
index 02367e1..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-using MapMyRun.Models.Workout.Items;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Timers;
-
-namespace MapMyRun.Tizen.ViewModels.WorkoutMain
-{
-    class DurationViewModel : BasePageModel, IWorkoutItemViewModel
-    {
-
-        private string _val;
-        private string _valWithUnit;
-        private int _seconds;
-        private Timer secondsTimer;
-
-        public string Value
-        {
-            get { return _val; }
-            set
-            {
-                SetProperty(ref _val, value);
-                ValueWithUnit = value;
-            }
-        }
-
-        public string ValueWithUnit
-        {
-            get { return _valWithUnit; }
-            set
-            {
-                SetProperty(ref _valWithUnit, value + Item.GetUnit());
-            }
-        }
-
-        public string LongLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.LongLabel); }
-        }
-
-        public string MediumLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.MediumLabel); }
-        }
-
-        public string ShortLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.ShortLabel); }
-        }
-
-        public WorkoutItemType ItemType { get; set; }
-        public IWorkoutItem Item { get; set; }
-
-        public DurationViewModel(IWorkoutItem item)
-        {
-            ItemType = WorkoutItemType.Duration;
-            Item = item;
-            Value = item.GetEmptyValue();
-        }
-
-        public int Seconds
-        {
-            get { return _seconds; }
-            set
-            {
-                _seconds = value;
-                int h = _seconds / 3600;
-                int m = (_seconds - h * 3600) / 60;
-                int s = _seconds - h * 3600 - m * 60;
-                Value = (h == 0 ? "" : $"{h}:") + (h > 0 && m < 10 ? "0" : "") + $"{m}:" + (s < 10 ? "0" : "") + $"{s}";
-                }
-        }
-
-        public void Initialize()
-        {
-            Console.WriteLine("Duration Initialize!");
-
-            secondsTimer = new System.Timers.Timer(1000);
-            secondsTimer.Elapsed += (s, e) =>
-            {
-                Seconds++;
-            };
-            secondsTimer.AutoReset = true;
-            secondsTimer.Enabled = true;
-        }
-
-        public void StopTimer()
-        {
-            secondsTimer.Enabled = false;
-        }
-
-        public void ResumeTimer()
-        {
-            secondsTimer.Enabled = true;
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/IWorkoutItemViewModel.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/IWorkoutItemViewModel.cs
deleted file mode 100755 (executable)
index 3de9653..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-using MapMyRun.Models.Workout.Items;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace MapMyRun.Tizen.ViewModels.WorkoutMain
-{
-    public interface IWorkoutItemViewModel
-    {
-        string Value { get; set; }
-        string ValueWithUnit { get; }
-        string LongLabel { get; }
-        string MediumLabel { get; }
-        string ShortLabel { get; }
-        WorkoutItemType ItemType { get; set; }
-        IWorkoutItem Item { get; set; }
-        void Initialize();
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/PeakHrViewModel.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/PeakHrViewModel.cs
deleted file mode 100755 (executable)
index 5ffe5b0..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-using MapMyRun.Models.Workout.Items;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Timers;
-
-namespace MapMyRun.Tizen.ViewModels.WorkoutMain
-{
-    class PeakHrViewModel : BasePageModel, IWorkoutItemViewModel
-    {
-        private string _val;
-        private string _valWithUnit;
-        public string Value
-        {
-            get { return _val; }
-            set
-            {
-                string nextValue = String.Equals(value, "0", StringComparison.OrdinalIgnoreCase) ? Item.GetEmptyValue() : value;
-
-                SetProperty(ref _val, nextValue);
-                ValueWithUnit = nextValue;
-            }
-        }
-
-        public string ValueWithUnit
-        {
-            get { return _valWithUnit; }
-            set
-            {
-                SetProperty(ref _valWithUnit, value + Item.GetUnit());
-            }
-        }
-
-        public string LongLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.LongLabel); }
-        }
-
-        public string MediumLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.MediumLabel); }
-        }
-
-        public string ShortLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.ShortLabel); }
-        }
-
-        public WorkoutItemType ItemType { get; set; }
-        public IWorkoutItem Item { get; set; }
-
-        public PeakHrViewModel(IWorkoutItem item)
-        {
-            ItemType = WorkoutItemType.PeakHR;
-            Item = item;
-            Value = item.GetEmptyValue();
-        }
-
-        public void Initialize()
-        {
-            Console.WriteLine("PeakHR Initialize!");
-
-            var item = (PeakHr)Item;
-            item.ValueChanged += (x) =>
-            {
-                Console.WriteLine($"PeakHR Changed : {x}");
-                Value = x;
-            };
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/PeakPaceViewModel.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/PeakPaceViewModel.cs
deleted file mode 100755 (executable)
index b7ecb74..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-using MapMyRun.Models.Workout.Items;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Timers;
-
-namespace MapMyRun.Tizen.ViewModels.WorkoutMain
-{
-    class PeakPaceViewModel : BasePageModel, IWorkoutItemViewModel
-    {
-        private string _val;
-        private string _valWithUnit;
-        public string Value
-        {
-            get { return _val; }
-            set
-            {
-                SetProperty(ref _val, value);
-                ValueWithUnit = value;
-            }
-        }
-
-        public string ValueWithUnit
-        {
-            get { return _valWithUnit; }
-            set
-            {
-                SetProperty(ref _valWithUnit, value + Item.GetUnit());
-            }
-        }
-
-        public string LongLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.LongLabel); }
-        }
-
-        public string MediumLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.MediumLabel); }
-        }
-
-        public string ShortLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.ShortLabel); }
-        }
-
-        public WorkoutItemType ItemType { get; set; }
-        public IWorkoutItem Item { get; set; }
-
-        public PeakPaceViewModel(IWorkoutItem item)
-        {
-            ItemType = WorkoutItemType.MaxPace;
-            Item = item;
-            Value = item.GetEmptyValue();
-        }
-
-        public void Initialize()
-        {
-            Console.WriteLine("MaxPace Initialize!");
-
-            var item = (MaxPace)Item;
-            item.ValueChanged += (x) =>
-            {
-                Console.WriteLine($"MaxPace Changed : {x}");
-                Value = x;
-            };
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/WorkoutMainPageModel.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/WorkoutMainPageModel.cs
deleted file mode 100755 (executable)
index dd2866c..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-using MapMyRun.Models.Workout;
-using MapMyRun.Models.Workout.Items;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace MapMyRun.Tizen.ViewModels.WorkoutMain
-{
-    class WorkoutMainPageModel : BasePageModel
-    {
-        private readonly Workout _workout;
-        Dictionary<int, IWorkoutItemViewModel> _workoutItemViewModels = new Dictionary<int, IWorkoutItemViewModel>();
-
-        public WorkoutMainPageModel(Workout workout)
-        {
-            _workout = workout;
-        }
-
-        public IWorkoutItemViewModel GetWorkoutViewModel(int page, int number)
-        {
-            //TODO : Model should provide valid workitem list per each activity and check here.
-            WorkoutItemType[,] workoutItemSet = new WorkoutItemType[,] {
-                {WorkoutItemType.Duration, WorkoutItemType.Distance, WorkoutItemType.Calories, WorkoutItemType.CurrentHR },
-                {WorkoutItemType.Pace, WorkoutItemType.MaxPace, WorkoutItemType.Cadence, WorkoutItemType.CurrentHR},
-                {WorkoutItemType.PeakHR, WorkoutItemType.AvgHR, WorkoutItemType.CurrentHR, WorkoutItemType.HRZone }
-            };
-
-            if (page > workoutItemSet.GetUpperBound(0))
-                return null;
-
-            if (number > workoutItemSet.GetUpperBound(1))
-                return null;
-
-            var type = workoutItemSet[page, number];
-            var itemViewModel = GetItemViewModel(type);
-
-            return itemViewModel;
-        }
-
-        IWorkoutItemViewModel GetItemViewModel(WorkoutItemType type)
-        {
-            if (_workoutItemViewModels.TryGetValue((int)type, out IWorkoutItemViewModel item))
-                return item;
-
-            var itemViewModel = CreateViewModel(_workout.GetItem(type));
-            if (itemViewModel == null)
-                return null;
-
-            itemViewModel.Initialize();
-            _workoutItemViewModels.Add((int)type, itemViewModel);
-            return itemViewModel;
-        }
-
-        IWorkoutItemViewModel CreateViewModel(IWorkoutItem item)
-        {
-            IWorkoutItemViewModel ret = null;
-
-            switch (item.GetWorkoutItemType())
-            {
-                case WorkoutItemType.Duration:
-                    ret = new DurationViewModel(item);
-                    break;
-                case WorkoutItemType.Calories:
-                    ret = new CaloriesViewModel(item);
-                    break;
-                case WorkoutItemType.Distance:
-                    ret = new DistanceViewModel(item);
-                    break;
-                case WorkoutItemType.CurrentHR:
-                    ret = new CurrentHrViewModel(item);
-                    break;
-                case WorkoutItemType.PeakHR:
-                    ret = new PeakHrViewModel(item);
-                    break;
-                case WorkoutItemType.AvgHR:
-                    ret = new AverageHrViewModel(item);
-                    break;
-                case WorkoutItemType.HRZone:
-                    ret = new ZoneHrViewModel(item);
-                    break;
-                case WorkoutItemType.Pace:
-                    ret = new CurrentPaceViewModel(item);
-                    break;
-                case WorkoutItemType.MaxPace:
-                    ret = new PeakPaceViewModel(item);
-                    break;
-                case WorkoutItemType.Cadence:
-                    ret = new CadenceViewModel(item);
-                    break;
-                default:
-                    break;
-            }
-            return ret;
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/ZoneHrViewModel.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutMain/ZoneHrViewModel.cs
deleted file mode 100755 (executable)
index 02082e1..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-using MapMyRun.Models.Workout.Items;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Timers;
-
-namespace MapMyRun.Tizen.ViewModels.WorkoutMain
-{
-    class ZoneHrViewModel : BasePageModel, IWorkoutItemViewModel
-    {
-        private string _val;
-        private string _valWithUnit;
-        public string Value
-        {
-            get { return _val; }
-            set
-            {
-                SetProperty(ref _val, value);
-                ValueWithUnit = value;
-            }
-        }
-
-        public string ValueWithUnit
-        {
-            get { return _valWithUnit; }
-            set
-            {
-                SetProperty(ref _valWithUnit, value + Item.GetUnit());
-            }
-        }
-
-        public string LongLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.LongLabel); }
-        }
-
-        public string MediumLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.MediumLabel); }
-        }
-
-        public string ShortLabel
-        {
-            get { return Item.GetLabel(WorkoutItemLabelType.ShortLabel); }
-        }
-
-        public WorkoutItemType ItemType { get; set; }
-        public IWorkoutItem Item { get; set; }
-
-        public ZoneHrViewModel(IWorkoutItem item)
-        {
-            ItemType = WorkoutItemType.HRZone;
-            Item = item;
-            Value = item.GetEmptyValue();
-        }
-
-        public void Initialize()
-        {
-            Console.WriteLine("ZoneHr Initialize!");
-
-            var item = (ZoneHr)Item;
-            item.ValueChanged += (x) =>
-            {
-                Console.WriteLine($"ZoneHr Changed : {x}");
-                Value = x;
-            };
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutSetupPageModel.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/ViewModels/WorkoutSetupPageModel.cs
deleted file mode 100755 (executable)
index 60f1c37..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-using MapMyRun.Models;
-using MapMyRun.Tizen.Models;
-using System;
-using System.Collections.Generic;
-using System.IO;
-using System.Linq;
-using System.Text;
-using Tizen.Applications;
-
-namespace MapMyRun.Tizen.ViewModels
-{
-    public class WorkoutSetupPageModel : BasePageModel
-    {
-        private ActivityRepository activityRepository;
-
-        public List<Activity> defaultList { get; set; }
-
-        private string _currentActivity;
-        public string currentActivity {
-            get
-            {
-                return _currentActivity;
-            }
-        
-            set
-            {
-                SetProperty(ref _currentActivity, value, "currentActivity");
-            }
-        }
-
-        public WorkoutSetupPageModel()
-        {
-            string fileLocation = Application.Current.DirectoryInfo.Resource + $"localization/en.json";
-            string json;
-
-            using (StreamReader reader = new StreamReader(fileLocation))
-            {
-                json = reader.ReadToEnd();
-            }
-
-            activityRepository = new ActivityRepository(json);
-
-            GetPopularList();
-            
-            currentActivity = activityRepository.popularActivityList.Find((Activity activity) =>
-            {
-                return activity.id == 16; // Default set to Run for now
-            })?.name;
-        }
-
-        public void GetPopularList()
-        {
-            defaultList = activityRepository.popularActivityList;
-            defaultList.Add(new Activity() { name = "All Activities", group_id = -1 });
-        }
-
-        public List<Activity> GetGroupActivities()
-        {
-            return activityRepository.activityGroupings;
-        }
-
-        public List<Activity> GetActivitiesByGroup(int group_id)
-        {
-            return activityRepository.GetActivitiesByGroupId(group_id);
-        }
-
-        public void updateCurrentActivity(Activity activity)
-        {
-            currentActivity = activity.name;
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/BPMIcon.png b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/BPMIcon.png
deleted file mode 100755 (executable)
index 8c87d9a..0000000
Binary files a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/BPMIcon.png and /dev/null differ
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/GPSIcon.png b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/GPSIcon.png
deleted file mode 100755 (executable)
index 753df41..0000000
Binary files a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/GPSIcon.png and /dev/null differ
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/UAIcon.png b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/UAIcon.png
deleted file mode 100755 (executable)
index 57d7e20..0000000
Binary files a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/UAIcon.png and /dev/null differ
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/backgroundBottomLight.png b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/backgroundBottomLight.png
deleted file mode 100755 (executable)
index c7e2e15..0000000
Binary files a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/backgroundBottomLight.png and /dev/null differ
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/backgroundWholeLight.png b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/backgroundWholeLight.png
deleted file mode 100755 (executable)
index 375e0f0..0000000
Binary files a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/backgroundWholeLight.png and /dev/null differ
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/finish-btn-pressed.png b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/finish-btn-pressed.png
deleted file mode 100755 (executable)
index ae99f27..0000000
Binary files a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/finish-btn-pressed.png and /dev/null differ
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/finish-btn.png b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/finish-btn.png
deleted file mode 100755 (executable)
index 6259e4a..0000000
Binary files a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/finish-btn.png and /dev/null differ
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/hero-bg.png b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/hero-bg.png
deleted file mode 100755 (executable)
index 8d8a2cd..0000000
Binary files a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/hero-bg.png and /dev/null differ
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-gps--connected.png b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-gps--connected.png
deleted file mode 100755 (executable)
index 0955f5d..0000000
Binary files a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-gps--connected.png and /dev/null differ
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-gps--connecting.png b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-gps--connecting.png
deleted file mode 100755 (executable)
index 622ee6d..0000000
Binary files a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-gps--connecting.png and /dev/null differ
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-gps--error.png b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-gps--error.png
deleted file mode 100755 (executable)
index 91493b9..0000000
Binary files a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-gps--error.png and /dev/null differ
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-gps--not-connected.png b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-gps--not-connected.png
deleted file mode 100755 (executable)
index 21fd50f..0000000
Binary files a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-gps--not-connected.png and /dev/null differ
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-shoes--connected.png b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-shoes--connected.png
deleted file mode 100755 (executable)
index acb028d..0000000
Binary files a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-shoes--connected.png and /dev/null differ
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-shoes--connecting.png b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-shoes--connecting.png
deleted file mode 100755 (executable)
index a7f3d63..0000000
Binary files a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-shoes--connecting.png and /dev/null differ
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-shoes--error.png b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-shoes--error.png
deleted file mode 100755 (executable)
index 48b07d4..0000000
Binary files a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-shoes--error.png and /dev/null differ
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-shoes--not-connected.png b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-shoes--not-connected.png
deleted file mode 100755 (executable)
index 9ef6eda..0000000
Binary files a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/icon-shoes--not-connected.png and /dev/null differ
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/localization/en.json b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/localization/en.json
deleted file mode 100755 (executable)
index 32f2bcb..0000000
+++ /dev/null
@@ -1,401 +0,0 @@
-{
-  "GPS": "GPS",
-  "start_workout": "START WORKOUT",
-  "my_workouts": "My Workouts",
-  "all_activities_title": "All Activities",
-  "all_activities_list_item": "All Activities",
-  "activity_history_name_on": "on",
-  "select_exercise_menu_item": "Select Activity",
-  "my_challenges": "My Challenges",
-  "select_exercise_list_title": "Select Activity",
-  "workout_finish": "Finish",
-  "mi_header": "mi",
-  "m_per_s": "(m/s)",
-  "workout_save": "Save",
-  "workout_discard": "Discard",
-  "workout_discard_confirmation": "Are you sure you\nwant to discard\nthis workout?\n\nAll data will\nbe lost.",
-  "workout_cancel_discard": "Cancel",
-  "workout_pause": "Pause",
-  "workout_resume": "Resume",
-  "workout_with_another_app": "A workout is already active in another app.",
-  "workout_save_confirmation_title": "Your workout has been saved.",
-  "workout_save_confirmation_subtitle": "Allow a few minutes for workout to sync across all devices.",
-  "workout_summary": "Workout\nSummary",
-  "workout_no_network_connection_title": "No network\nconnection.",
-  "workout_no_network_connection_subtitle": "Workout will sync when connection is restored.",
-  "login_request": "Please log in to MapMyRun on your phone.",
-  "login": "LOG IN",
-  "install_request": "Please install MapMyRun on your phone.",
-  "install": "INSTALL",
-  "network_request": "No Network Connection",
-  "bluetooth_request": "No Bluetooth Connection",
-  "try_again": "TRY AGAIN",
-  "km_header": "km",
-  "button_ok": "OK",
-  "profile_data_description": "We need a few more stats from you to calculate calorie burn.",
-  "profile_data_description_standalone": "To estimate\ncalorie burn,\nplease enter your\nheight and weight\nin the MapMyRun\napp on your\nphone.",
-  "profile_data_complete_on_phone": "COMPLETE ON PHONE",
-  "profile_data_skip": "SKIP",
-  "profile_data_redirected_description": "It may take several minutes for Gear to reflect these changes.",
-  "profile_data_skipped_description": "To edit these stats later, open MapMyRun on your phone and go to Edit Profile.",
-  "workout_didnt_sync": "Workout didn't sync. No network connection.",
-  "workout_has_synced": "Your MapMyRun workout has synced.",
-  "workout_hrs": "hrs",
-  "workout_min": "min",
-  "workout_min_per_mi": "min/mi",
-  "workout_min_per_km": "min/km",
-  "workout_mi": "mi",
-  "workout_km": "km",
-  "workout_mi_per_hr": "mph",
-  "workout_km_per_hr": "km/h",
-  "workout_save_or_discard": "Save or Discard this workout.",
-  "workout_paused": "Paused",
-  "settings": "Settings",
-  "feedback": "Feedback",
-  "haptic_feedback": "Vibration",
-  "voice_feedback": "Voice",
-  "voice_feedback_on": "On",
-  "voice_feedback_off": "Off",
-  "voice_feedback_distance": "Distance",
-  "voice_feedback_duration": "Duration",
-  "voice_feedback_avg_pace_speed": "Avg. Pace/Speed",
-  "voice_feedback_current_pace_speed": "Current Pace/Speed",
-  "voice_feedback_split_pace_speed": "Split Pace/Speed",
-  "voice_feedback_cadence": "Cadence",
-  "voice_feedback_stride_length": "Stride Length",
-  "voice_feedback_current_hr": "Current HR",
-  "settings_min": "min",
-  "settings_mi": "mi",
-  "settings_km": "km",
-  "settings_interval": "Interval",
-  "done": "done",
-  "gps_off_notification": "Maps unavailable.\nEnsure GPS is\nactive on your\nphone and\nyour Gear.",
-  "map_acquiring_gps": "Attempting\nto acquire\nGPS signal.",
-  "pairing_error": "To complete\npairing, tap\n¡°Accept¡± on your phone.",
-  "update_fw": "Please update\nyour Gear\nfirmware then\nre-install the app.",
-  "wko_resume_error": "Unable to resume\nworkout.\n\nYour workout\nhas been saved.",
-  "awards": "Awards",
-  "top": "Top #%",
-  "zero_day_left": "# days left",
-  "one_day_left": "# day left",
-  "two_day_left": "# days left",
-  "few_day_left": "# days left",
-  "many_day_left": "# days left",
-  "other_day_left": "# days left",
-  "network_offline": "Network offline.\n\nTry again when\nnetwork connection\nis restored.",
-  "challenges_list_empty": "No challenges\nyet.\n\nUse your\nphone to find\na challenge.",
-  "map_unable_to_acquire_gps": "Unable\nto acquire\nGPS signal.\n\nPlease move\nto open space.",
-  "rate_app_question": "Do you like using\nMapMyRun for\nSamsung Gear?",
-  "post_review_question": "Great! Would you\ntake a moment\nto post a review?",
-  "yes": "YES",
-  "no": "NO",
-  "no_workout_stats": "This workout\ndoes not have\nany stats.",
-  "workouts_list_empty": "No workouts yet.",
-  "this_week": "This week",
-  "last_week": "Last week",
-  "last_thirty_days": "Last 30 days",
-  "older": "Older",
-  "group_class": "Class",
-  "group_cycling": "Cycling",
-  "group_dance": "Dance",
-  "group_gym": "Gym",
-  "group_martial_arts": "Martial Arts",
-  "group_other": "Other",
-  "group_run": "Run",
-  "group_sport": "Sport",
-  "group_swim": "Swim",
-  "group_walk": "Walk",
-  "group_winter": "Winter",
-  "group_yoga": "Yoga",
-  "activity_id_1": "Generic Workout",
-  "activity_id_7": "Fartleks",
-  "activity_id_9": "Walk",
-  "activity_id_10": "Winter Sport / Activity",
-  "activity_id_16": "Run",
-  "activity_id_19": "Indoor Bike Ride",
-  "activity_id_20": "Swim",
-  "activity_id_21": "Other Sport",
-  "activity_id_22": "Rock Climbing",
-  "activity_id_23": "Class Workout",
-  "activity_id_24": "Hike",
-  "activity_id_26": "Total Body",
-  "activity_id_28": "Circuit Training",
-  "activity_id_29": "Sailing",
-  "activity_id_31": "Pilates",
-  "activity_id_33": "Fixed Gear (Fixie)",
-  "activity_id_34": "Aerobics",
-  "activity_id_36": "Road Cycling",
-  "activity_id_41": "Mountain Biking",
-  "activity_id_43": "Yard Work",
-  "activity_id_44": "Track",
-  "activity_id_45": "Triathlon",
-  "activity_id_47": "Unicycling",
-  "activity_id_54": "Volleyball",
-  "activity_id_56": "BMX",
-  "activity_id_57": "Canoeing",
-  "activity_id_59": "Class / Aerobics",
-  "activity_id_60": "CycloCross",
-  "activity_id_65": "Boxing",
-  "activity_id_68": "Softball",
-  "activity_id_71": "Brick",
-  "activity_id_72": "Other Martial Arts",
-  "activity_id_73": "Tennis",
-  "activity_id_74": "Snow Skiing",
-  "activity_id_75": "Lap",
-  "activity_id_77": "House Work",
-  "activity_id_80": "Snorkeling",
-  "activity_id_82": "Ballet",
-  "activity_id_84": "Wakeboarding",
-  "activity_id_85": "Fishing",
-  "activity_id_86": "Ice Skating",
-  "activity_id_94": "Wind Surfing",
-  "activity_id_95": "Skateboarding",
-  "activity_id_96": "Nordic Track",
-  "activity_id_99": "Rowing Machine",
-  "activity_id_101": "Roller Skating",
-  "activity_id_102": "Commute",
-  "activity_id_103": "Sprints",
-  "activity_id_104": "Curling",
-  "activity_id_105": "Power",
-  "activity_id_107": "Snowboarding",
-  "activity_id_108": "Track",
-  "activity_id_111": "Water",
-  "activity_id_115": "Time Trial",
-  "activity_id_116": "Bowling",
-  "activity_id_119": "Snowshoeing",
-  "activity_id_120": "Spin Class",
-  "activity_id_121": "Water Polo",
-  "activity_id_123": "Bootcamp",
-  "activity_id_124": "Group",
-  "activity_id_127": "Surfing",
-  "activity_id_128": "Rowing",
-  "activity_id_131": "Wrestling",
-  "activity_id_133": "Stairs",
-  "activity_id_134": "Baseball",
-  "activity_id_135": "Hockey",
-  "activity_id_137": "Horseback Riding",
-  "activity_id_138": "Whitewater Rafting",
-  "activity_id_141": "Ice Hockey",
-  "activity_id_142": "Badminton",
-  "activity_id_148": "Cheerleading",
-  "activity_id_153": "Ultimate",
-  "activity_id_154": "Golf",
-  "activity_id_155": "Fencing",
-  "activity_id_156": "Water Skiing",
-  "activity_id_161": "Field Hockey",
-  "activity_id_163": "Squash",
-  "activity_id_164": "Yolates",
-  "activity_id_169": "Inline Skating",
-  "activity_id_171": "Skydiving",
-  "activity_id_172": "Race/Event",
-  "activity_id_176": "Football / Soccer",
-  "activity_id_178": "Lacrosse",
-  "activity_id_180": "Open Water",
-  "activity_id_182": "Rollerskiing",
-  "activity_id_184": "Scuba Diving",
-  "activity_id_192": "Water Aerobics",
-  "activity_id_193": "Group",
-  "activity_id_197": "Intervals",
-  "activity_id_199": "Calisthenics",
-  "activity_id_200": "Gardening",
-  "activity_id_201": "Adventure Race / Event",
-  "activity_id_204": "Dog Walk",
-  "activity_id_205": "Kitesurfing",
-  "activity_id_208": "Treadmill",
-  "activity_id_214": "Physical Therapy",
-  "activity_id_216": "Soccer, Indoor",
-  "activity_id_221": "Bouldering",
-  "activity_id_222": "Floorball",
-  "activity_id_224": "Farming",
-  "activity_id_227": "Hill Workout",
-  "activity_id_228": "Racquetball",
-  "activity_id_230": "Workout Video",
-  "activity_id_235": "Rugby",
-  "activity_id_250": "Elliptical",
-  "activity_id_251": "Kickball",
-  "activity_id_254": "Gymnastics",
-  "activity_id_257": "Kayak",
-  "activity_id_258": "Netball",
-  "activity_id_259": "Basketball",
-  "activity_id_263": "Jump Rope",
-  "activity_id_264": "Hunting",
-  "activity_id_266": "Trail",
-  "activity_id_267": "Wood Chopping",
-  "activity_id_271": "Cricket",
-  "activity_id_275": "Nordic, Walk",
-  "activity_id_279": "Indoor",
-  "activity_id_284": "Diving, Board",
-  "activity_id_336": "Beach Volleyball",
-  "activity_id_468": "Tai Chi",
-  "activity_id_469": "Judo",
-  "activity_id_471": "Karate",
-  "activity_id_472": "Kickboxing",
-  "activity_id_473": "Aikido",
-  "activity_id_498": "Bikram",
-  "activity_id_499": "Vinyasa",
-  "activity_id_500": "Yoga",
-  "activity_id_546": "Indoor Trainer",
-  "activity_id_548": "Stationary Bike",
-  "activity_id_564": "Sparring",
-  "activity_id_598": "Upper Body",
-  "activity_id_622": "Dance Class",
-  "activity_id_627": "Step Aerobics Class",
-  "activity_id_633": "Race",
-  "activity_id_637": "Commute",
-  "activity_id_704": "CrossFit Class",
-  "activity_id_708": "Motocross",
-  "activity_id_710": "ElliptiGo",
-  "activity_id_714": "Longboarding",
-  "activity_id_722": "Hot",
-  "activity_id_724": "Power",
-  "activity_id_726": "Ashtanga",
-  "activity_id_728": "Ergometer",
-  "activity_id_730": "Stair Machine",
-  "activity_id_732": "Basic Training",
-  "activity_id_740": "Tae Bo",
-  "activity_id_742": "Ballroom",
-  "activity_id_746": "Hip Hop",
-  "activity_id_748": "Hula",
-  "activity_id_750": "Latin",
-  "activity_id_752": "Salsa",
-  "activity_id_754": "Zumba",
-  "activity_id_756": "Indoor Track",
-  "activity_id_758": "Handball",
-  "activity_id_760": "Jujitsu",
-  "activity_id_762": "Kung Fu",
-  "activity_id_764": "Tae Kwon Do",
-  "activity_id_768": "American Football",
-  "activity_id_813": "Mixed Martial Arts",
-  "activity_id_819": "Table Tennis",
-  "activity_id_825": "Stroller - Single",
-  "activity_id_827": "Stroller - Double",
-  "activity_id_829": "Stroller - Single",
-  "activity_id_831": "Stroller - Double",
-  "activity_id_845": "Trampoline",
-  "activity_id_855": "Dog Run",
-  "activity_id_861": "Jacobs Ladder",
-  "activity_id_863": "Stand Up Paddling",
-  "activity_id_880": "Muay Thai",
-  "activity_id_882": "Barre Workout",
-  "activity_id_890": "Legs",
-  "select_stat": "Select Stat",
-  "label_distance": "Distance",
-  "label_pace": "Pace, Current",
-  "label_pace_avg": "Pace, Average",
-  "label_pace_max": "Pace, Max",
-  "label_speed": "Speed, Current",
-  "label_speed_avg": "Speed, Average",
-  "label_speed_max": "Speed, Max",
-  "label_calories": "Calories",
-  "label_hr": "Heart Rate, Current",
-  "label_hr_avg": "Heart Rate, Average",
-  "label_hr_max": "Heart Rate, Max",
-  "label_intensity": "Intensity",
-  "label_willpower": "WILLPOWER¢â",
-  "label_duration": "Duration",
-  "label_distance_medium": "DISTANCE",
-  "label_pace_medium": "PACE",
-  "label_pace_avg_medium": "AVG PACE",
-  "label_pace_max_medium": "MAX PACE",
-  "label_speed_medium": "SPEED",
-  "label_speed_avg_medium": "AVG SPEED",
-  "label_speed_max_medium": "MAX SPEED",
-  "label_calories_medium": "CALORIES",
-  "label_hr_medium": "HR",
-  "label_hr_avg_medium": "AVG HR",
-  "label_hr_max_medium": "MAX HR",
-  "label_intensity_medium": "INTENSITY",
-  "label_willpower_medium": "WILLPOWER",
-  "label_duration_medium": "DURATION",
-  "label_hr_zone_medium": "ZONE",
-  "label_distance_short": "DIST",
-  "label_pace_short": "PACE",
-  "label_pace_avg_short": "AVG PACE",
-  "label_pace_max_short": "MAX PACE",
-  "label_speed_short": "SPEED",
-  "label_speed_avg_short": "AVG SPEED",
-  "label_speed_max_short": "MAX SPEED",
-  "label_calories_short": "CAL",
-  "label_hr_short": "HR",
-  "label_hr_avg_short": "AVG HR",
-  "label_hr_max_short": "MAX HR",
-  "label_intensity_short": "INT",
-  "label_willpower_short": "WILLPWR",
-  "label_duration_short": "DUR",
-  "cal": "cal",
-  "bpm": "bpm",
-  "stat_ux_tip": "Tap on screen to rotate stats.\nLong-press on a stat to swap.",
-  "map_ux_tip": "Tap on screen to show stats.",
-  "consent_error": "Please open\nMapMyRun on\nyour phone to\naccept updated\nterms and privacy\npolicy.",
-  "consent_waiting": "Open MapMyRun\non your phone to\ncontinue.",
-  "workout_steps_per_min": "spm",
-  "workout_meter": "m",
-  "workout_inch": "in",
-  "workout_centimeter": "cm",
-  "label_cadence": "Cadence, Current",
-  "label_cadence_avg": "Cadence, Average",
-  "label_stride_length": "Stride length, Current",
-  "label_stride_length_avg": "Stride length, Average",
-  "label_steps": "Total Steps",
-  "label_cadence_medium": "CADENCE",
-  "label_cadence_avg_medium": "AVG CADENCE",
-  "label_stride_length_medium": "STRIDE",
-  "label_stride_length_avg_medium": "AVG STRIDE",
-  "label_steps_medium": "STEPS",
-  "label_cadence_short": "CAD",
-  "label_cadence_avg_short": "AVG CAD",
-  "label_stride_length_short": "STRIDE",
-  "label_stride_length_avg_short": "AVG STRIDE",
-  "label_steps_short": "STEPS",
-  "select": "SELECT",
-  "wko_details_cardio": "Heart Rate",
-  "wko_details_form": "Form",
-  "goal_complete": "GOAL COMPLETE",
-  "target_goal": "Target: {{goal}}",
-  "form_coaching_edu_header_form": "Find Your\nForm",
-  "form_coaching_edu_header_cadence": "Find Your\nCadence",
-  "form_coaching_edu_screen_text_form": "Achieving your optimal\nrunning form can make\nrunning feel easier, better\nmanage your risk of injury,\nand improve your\nperformance.\n\nThe Form Coaching\nfeature will monitor your\nCadence during your run,\nalerting you if you\nfall outside your\n ideal range.Your\nrange varies and is\ncalculated by your\nrunning stats, which can\nchange throughout your run.\n\nIf you fall outside of\nyour target range, try\nincreasing or decreasing\nyour step rate while\nmaintaining the same pace.",
-  "form_coaching_edu_screen_text_cadence": "Understanding your\nrunning form helps\nimprove your overall run.\nOne factor that can\naffect your workout\nis Cadence, measured\nby the total number of\nsteps you take per minute.\nYour target range\nis based on a\nvariety of factors\nincluding age, height,\nweight, gender, and pace.\n\nWe¡¯ll let you know\nwhen you¡¯re below\nor above your target\nrange during your workout.\n\nTo get a deeper\nrunning form breakdown,\nincluding personalized\nform coaching tips,\nview this workout\nin the MapMyRun app\non your mobile phone.",
-  "form_coaching_edu_do_not_show": "Don't show again",
-  "goal_finished": "GOAL!",
-  "workout_setup": "Workout Setup",
-  "goal_item": "Goal",
-  "goal_setup": "What's your\ngoal today?",
-  "goal_basic_workout": "Basic Workout",
-  "goal_distance": "Distance",
-  "goal_duration": "Duration",
-  "goal_pace": "Pace",
-  "split_updates": "Split Updates",
-  "goal_coaching": "Goal Feedback",
-  "form_coaching": "Form Coaching",
-  "split_updates_no_feedback": "No Feedback",
-  "split_updates_audio_frequency": "Frequency",
-  "split_updates_audio": "Audio",
-  "split_updates_audio_desc": "Audio update of\nworkout stats",
-  "split_updates_haptic": "Vibration",
-  "split_updates_haptic_desc": "Vibrate at set frequency",
-  "form_coaching_no_feedback": "No Feedback",
-  "form_coaching_audio": "Audio",
-  "form_coaching_audio_desc": "Receive audio alerts about your running form",
-  "form_coaching_haptic": "Vibration",
-  "form_coaching_haptic_desc": "Vibrate when Cadence is\nout-of-range",
-  "form_coaching_display": "Display",
-  "form_coaching_display_desc": "Auto-transition to the\nForm Coach screen",
-  "goal_coaching_no_feedback": "No Feedback",
-  "goal_coaching_audio": "Audio",
-  "goal_coaching_audio_progress_desc": "Alert at 25% intervals",
-  "goal_coaching_audio_range_desc": "Receive audio guidance when out-of-range",
-  "goal_coaching_haptic": "Vibration",
-  "goal_coaching_haptic_progress_desc": "Vibrate at 25% intervals",
-  "goal_coaching_haptic_range_desc": "Vibrate when out-of-range",
-  "voice_feedback_avg_speed": "Avg. Speed",
-  "voice_feedback_current_speed": "Current Speed",
-  "voice_feedback_split_speed": "Split Speed",
-  "voice_feedback_avg_pace": "Avg. Pace",
-  "voice_feedback_current_pace": "Current Pace",
-  "voice_feedback_split_pace": "Split Pace",
-  "today_workout": "Today's  Workout",
-  "coaching_warm_up": "Warm Up",
-  "debug_settings": "Debug Settings",
-  "debug_logging": "Debug Log"
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/logo--tray.png b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/logo--tray.png
deleted file mode 100755 (executable)
index 4882ffc..0000000
Binary files a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/logo--tray.png and /dev/null differ
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/select-btn-empty.png b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/select-btn-empty.png
deleted file mode 100755 (executable)
index a9be99a..0000000
Binary files a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/select-btn-empty.png and /dev/null differ
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/splash.circle.png b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/splash.circle.png
deleted file mode 100755 (executable)
index f5880d3..0000000
Binary files a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/splash.circle.png and /dev/null differ
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/start-btn-empty.png b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/start-btn-empty.png
deleted file mode 100755 (executable)
index 98cfbec..0000000
Binary files a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/res/start-btn-empty.png and /dev/null differ
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/shared/res/MapMyRun.png b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/shared/res/MapMyRun.png
deleted file mode 100755 (executable)
index f5880d3..0000000
Binary files a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/shared/res/MapMyRun.png and /dev/null differ
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/tizen-manifest.xml b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/tizen-manifest.xml
deleted file mode 100755 (executable)
index 408a177..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<manifest package="org.tizen.example.MapMyRun" version="1.0.0" api-version="4" xmlns="http://tizen.org/ns/packages">
-    <profile name="wearable" />
-    <ui-application appid="org.tizen.example.MapMyRun" exec="MapMyRun.Tizen.dll" multiple="false" nodisplay="false" taskmanage="true" type="dotnet" launch_mode="single">
-      <label>MapMyRun</label>
-      <icon>MapMyRun.png</icon>
-      <metadata key="http://tizen.org/metadata/prefer_dotnet_aot" value="true" />
-      <splash-screens>
-        <splash-screen indicator-display="false" orientation="portrait" src="MapMyRun.png" type="img" />
-      </splash-screens>
-    </ui-application>
-    <shortcut-list />
-    <privileges>
-        <privilege>http://tizen.org/privilege/appmanager.launch</privilege>
-    </privileges>
-    <dependencies />
-    <provides-appdefined-privileges />
-</manifest>
\ No newline at end of file
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/CircleProgressBarSurfaceItemExtension.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/CircleProgressBarSurfaceItemExtension.cs
deleted file mode 100755 (executable)
index c4c873c..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Tizen.Wearable.CircularUI.Forms;
-using Xamarin.Forms;
-
-namespace MapMyRun.Tizen.Views
-{
-    static class CircleProgressBarSurfaceItemExtension
-    {
-        const string CircleProgressBarAnimationName = "CircleProgressBarProgressTo";
-
-        public static void ProgressTo(this CircleProgressBarSurfaceItem item, double toValue, uint duration)
-        {
-            var tcs = new TaskCompletionSource<bool>();
-            var circlePage = item.Parent as CirclePage;
-            var weakRef = new WeakReference<CircleProgressBarSurfaceItem>(item);
-
-            new Animation(v => {
-                if (weakRef.TryGetTarget(out var pg))
-                {
-                    pg.Value = v;
-                }
-            }, item.Value, toValue, Easing.SinOut).Commit(circlePage, CircleProgressBarAnimationName, 16, duration, finished: (f, a) => tcs.SetResult(a));
-        }
-
-        public static void ProgressTo(this CircleProgressBarSurfaceItem item, double fromValue, double toValue, uint duration)
-        {
-            item.Value = fromValue;
-            item.ProgressTo(toValue, duration);
-        }
-
-        public static void CancelAnimation(this CircleProgressBarSurfaceItem item)
-        {
-            var circlePage = item.Parent as CirclePage;
-            circlePage.AbortAnimation(CircleProgressBarAnimationName);
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/LoadingPage.xaml b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/LoadingPage.xaml
deleted file mode 100644 (file)
index 492cad8..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<c:CirclePage
-    xmlns="http://xamarin.com/schemas/2014/forms"
-    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-    xmlns:c="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"
-    xmlns:tizen="clr-namespace:Xamarin.Forms.PlatformConfiguration.TizenSpecific;assembly=XSF"
-    x:Class="MapMyRun.Tizen.Views.LoadingPage"
-    NavigationPage.HasNavigationBar="False" >
-    <c:CirclePage.Content>
-        <StackLayout
-            HorizontalOptions="Center"
-            Orientation="Vertical"
-            VerticalOptions="Center">
-            <Image
-                Aspect="AspectFill"
-                tizen:Image.File="splash.circle.png" />
-        </StackLayout>
-    </c:CirclePage.Content>
-    <c:CirclePage.CircleSurfaceItems>
-        <c:CircleProgressBarSurfaceItem
-            x:Name="ProgressBar"
-            BarLineWidth="11"
-            BackgroundLineWidth="0"
-            BarColor="#FFFFFF"
-            BackgroundColor="#00FFFFFF"
-            BarRadius="175"
-            IsVisible="True"
-            Value="0"/>
-    </c:CirclePage.CircleSurfaceItems>
-</c:CirclePage>
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/LoadingPage.xaml.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/LoadingPage.xaml.cs
deleted file mode 100755 (executable)
index 1f9278b..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-using Tizen.Wearable.CircularUI.Forms;
-using MapMyRun.Tizen.ViewModels;
-using MapMyRun.Tizen.Models;
-using MapMyRun.Models;
-using MapMyRun.Models.Workout;
-using MapMyRun.Models.Settings;
-
-namespace MapMyRun.Tizen.Views
-{
-    [XamlCompilation(XamlCompilationOptions.Compile)]
-    public partial class LoadingPage : CirclePage
-    {
-        private Loading _loading;
-               //private const string ServiceAppId = "org.tizen.example.MapMyRunService";
-               private const string ServiceAppId = "org.tizen.mapmyrunservice";
-        public static readonly BindableProperty ProgressProperty =
-            BindableProperty.Create("Progress",
-                                    typeof(double),
-                                    typeof(CircleProgressBarSurfaceItem),
-                                    propertyChanged: (b, o, n) =>
-                                    ProgressBarProgressChanged((CircleProgressBarSurfaceItem)b, (double)n));
-        public LoadingPage()
-        {
-            InitializeComponent();
-            ProgressBar.SetBinding(ProgressProperty, "Progress");
-
-            Appearing += (s, e) =>
-            {
-                var dispatcher = MapMyRun.Models.Dispatcher.Instance;
-
-                ((App)Application.Current).settingManager = new SettingManager(dispatcher);
-                ((App)Application.Current).workout = new Workout(dispatcher, new PermissionManager(dispatcher));
-
-                _loading = new Loading(new AppLauncher(), new MessagePortHandler(),
-                    dispatcher, new PhoneService(dispatcher, new TizenPlatformService()), ((App)Application.Current).settingManager, ServiceAppId);
-                BindingContext = new LoadingPageModel(_loading);
-                _loading.StartLoading();
-                (Application.Current as App).workout.StartListenWorkoutData();
-            };
-        }
-
-               private static void ProgressBarProgressChanged(CircleProgressBarSurfaceItem progressBar, double progress)
-        {
-            progressBar.CancelAnimation();
-            progressBar.ProgressTo(progress, 200);
-            if (progress >= 1)
-            {
-                               Device.BeginInvokeOnMainThread(() =>
-                               {
-                                       ((App)Application.Current).MainPage = new NavigationPage(new MainPage());
-                               });
-            }
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/MainPage.xaml b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/MainPage.xaml
deleted file mode 100755 (executable)
index 401ceb6..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<c:CirclePage xmlns="http://xamarin.com/schemas/2014/forms"
-             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-             xmlns:c="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"
-              xmlns:tizen="clr-namespace:Xamarin.Forms.PlatformConfiguration.TizenSpecific;assembly=XSF"
-             x:Class="MapMyRun.Tizen.Views.MainPage"
-             RotaryFocusObject="{x:Reference scroller}"
-             NavigationPage.HasNavigationBar="False" >
-    <c:CirclePage.Content>
-        <AbsoluteLayout>
-            <Image x:Name="bg" tizen:Image.File="hero-bg.png" HeightRequest="360" WidthRequest="360" Aspect="Fill" AbsoluteLayout.LayoutBounds="0, 0, 1, 1" AbsoluteLayout.LayoutFlags="All" />
-            <BoxView x:Name="listBg" BackgroundColor="Black" AbsoluteLayout.LayoutBounds="0, 230, 1, 2" AbsoluteLayout.LayoutFlags="SizeProportional"/>
-            <c:CircleScrollView x:Name="scroller" AbsoluteLayout.LayoutBounds="0, 0, 1, 1.2" AbsoluteLayout.LayoutFlags="XProportional,SizeProportional">
-                <StackLayout Padding="0, 80, 0, 160" x:Name="fETarget">
-                    <StackLayout x:Name="modifyBtn" Padding="0, 10, 0, 0" HeightRequest="100">
-                        <Label x:Name="exerType" Text="{Binding currentActivity}" FontAttributes="Bold" FontSize="14" HorizontalOptions="CenterAndExpand" VerticalOptions="StartAndExpand"/>
-                        <Label x:Name="exerGoal" Text="Goal: Basic >" FontAttributes="Bold" FontSize="9" HorizontalOptions="CenterAndExpand" VerticalOptions="StartAndExpand"/>
-                    </StackLayout>
-                    <RelativeLayout HeightRequest="100" x:Name="startBtn">
-                        <Image tizen:Image.File="start-btn-empty.png" 
-                               Aspect="AspectFill"
-                               RelativeLayout.XConstraint=
-                               "{ConstraintExpression
-                                    Type=RelativeToParent,
-                                    Property=Width,
-                                    Factor=0.20
-                                    }"
-                               RelativeLayout.YConstraint=
-                               "{ConstraintExpression
-                                    Type=RelativeToParent,
-                                    Property=Height,
-                                    Factor=0,
-                                    Constant=-5
-                                    }"
-                               />
-                        <Label
-                               x:Name="startLabel" 
-                               Text="START" 
-                               FontAttributes="Bold"
-                               FontSize="8"
-                               RelativeLayout.XConstraint=
-                               "{ConstraintExpression
-                                    Type=RelativeToParent,
-                                    Property=Width,
-                                    Factor=0.4,
-                                    Constant=5
-                                    }"
-                               RelativeLayout.YConstraint=
-                               "{ConstraintExpression
-                                    Type=RelativeToParent,
-                                    Property=Height,
-                                    Factor=0.2,
-                                    Constant=-2
-                                    }"
-                               />
-                    </RelativeLayout>
-                    <Label HeightRequest="110" x:Name="myWorkoutsBtn" Text="My Workouts" VerticalOptions="Start" HorizontalOptions="CenterAndExpand"/>
-                    <Label HeightRequest="110" x:Name="settingsBtn" Text="Settings" VerticalOptions="Start" HorizontalOptions="CenterAndExpand"/>
-                </StackLayout>
-            </c:CircleScrollView>
-            <AbsoluteLayout AbsoluteLayout.LayoutBounds="45, 0, 270, 75" AbsoluteLayout.LayoutFlags="None" x:Name="statusTray">
-                <BoxView Color="#0b141a" Opacity="0.6" CornerRadius="20" AbsoluteLayout.LayoutBounds="0, 0, 1, 1" AbsoluteLayout.LayoutFlags="All"/>
-                <Image x:Name="gpsStatus" tizen:Image.File="{Binding GpsStatusImg}" AbsoluteLayout.LayoutBounds="45, 30, AutoSize, AutoSize" AbsoluteLayout.LayoutFlags="None"/>
-                <Image tizen:Image.File="logo--tray.png" AbsoluteLayout.LayoutBounds="113, 15, 40, 40" AbsoluteLayout.LayoutFlags="None"/>
-                <Image tizen:Image.File="icon-shoes--connecting.png" AbsoluteLayout.LayoutBounds="185, 30, AutoSize, AutoSize" AbsoluteLayout.LayoutFlags="None"/>
-            </AbsoluteLayout>
-        </AbsoluteLayout>
-    </c:CirclePage.Content>
-</c:CirclePage>
\ No newline at end of file
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/MainPage.xaml.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/MainPage.xaml.cs
deleted file mode 100755 (executable)
index f283200..0000000
+++ /dev/null
@@ -1,168 +0,0 @@
-using System;
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-using Tizen.Wearable.CircularUI.Forms;
-using MapMyRun.Tizen.ViewModels;
-using System.Timers;
-using MapMyRun.Models;
-using MapMyRun.Models.Workout;
-using MapMyRun.Models.Settings;
-
-namespace MapMyRun.Tizen.Views
-{
-    [XamlCompilation(XamlCompilationOptions.Compile)]
-    public partial class MainPage : CirclePage
-    {
-        private WorkoutSetupPageModel setupPageModel;
-        private Timer gpsAnimation;
-        private MainPageModel mainPageModel;
-
-        private double MIN_SCALE = 0.7;
-        private double MAX_SCALE = 1.0;
-        private bool Initialized = false;
-
-        public MainPage()
-        {
-            mainPageModel = new MainPageModel();
-            setupPageModel = new WorkoutSetupPageModel();
-
-            InitializeComponent();
-
-            modifyBtn.BindingContext = setupPageModel;
-            statusTray.BindingContext = mainPageModel;
-
-            scroller.Scrolled += OnScrolled;
-            scroller.VerticalScrollBarVisibility = ScrollBarVisibility.Never;
-            AbsoluteLayout.SetLayoutFlags(listBg, AbsoluteLayoutFlags.SizeProportional);
-
-            Appearing += (s, e) =>
-            {
-                               // Only initialize black background on first draw
-                               //if (!Initialized)
-                               //{
-                               //      Initialized = true;
-                               //      Moved(0);
-                               //}
-                               ToggleGpsAnimation(true);
-            };
-
-            Disappearing += (s, e) => 
-            {
-                ToggleGpsAnimation(false);
-            };
-
-            TapGestureRecognizer modifyTapGesture = new TapGestureRecognizer();
-            modifyTapGesture.Tapped += OnModifyTapped;
-            modifyBtn.GestureRecognizers.Add(modifyTapGesture);
-
-            TapGestureRecognizer startTapGesture = new TapGestureRecognizer();
-            startTapGesture.Tapped += OnStartTapped;
-            startBtn.GestureRecognizers.Add(startTapGesture);
-
-            TapGestureRecognizer historyTapRecognizer = new TapGestureRecognizer();
-            historyTapRecognizer.Tapped += OnHistoryTapped;
-            myWorkoutsBtn.GestureRecognizers.Add(historyTapRecognizer);
-
-            TapGestureRecognizer settingsTapRecognizer = new TapGestureRecognizer();
-            settingsTapRecognizer.Tapped += OnSettingsTapped;
-            settingsBtn.GestureRecognizers.Add(settingsTapRecognizer);
-        }
-
-        async void OnModifyTapped(object sender, EventArgs args)
-        {
-            await Navigation.PushAsync(new WorkoutSetupPage(setupPageModel));
-        }
-
-        async void OnStartTapped(object sender, EventArgs args)
-        {
-            // TODO : Move proper position
-            Workout workout = (Application.Current as App).workout;
-            workout.PrepareWorkout(16, true, true, false);
-            await Navigation.PushAsync(new WorkoutMainLoadingPage());
-        }
-
-        async void OnHistoryTapped(object sender, EventArgs args)
-        {
-            await Navigation.PushAsync(new WorkoutHistoryPage());
-        }
-
-        async void OnSettingsTapped(object sender, EventArgs args)
-        {
-            await Navigation.PushAsync(new SettingsPage());
-        }
-
-        private void ToggleGpsAnimation(bool enabled)
-        {
-            if (enabled)
-            {
-                gpsAnimation = new Timer(1000);
-                gpsAnimation.AutoReset = true;
-                int nextGpsState = 1;
-                gpsAnimation.Elapsed += (se, ev) =>
-                {
-                    if (mainPageModel.GpsState == GPSState.Acquiring)
-                    {
-                        gpsStatus.FadeTo(nextGpsState, 1000);
-                        nextGpsState = nextGpsState == 1 ? 0 : 1;
-                    } else
-                    {
-                        gpsStatus.Opacity = 1;
-                    }
-                };
-
-                gpsAnimation.Start();
-            } 
-            else
-            {
-                gpsAnimation?.Stop();
-                gpsStatus.Opacity = 1;
-            }
-        }
-
-        void OnScrolled(object sender, ScrolledEventArgs e) => Moved(e.ScrollY);
-
-        protected override bool OnBackButtonPressed()
-        {
-            var request = new Request(OperationType.ExitApp, "");
-            var dispatcher = MapMyRun.Models.Dispatcher.Instance;
-
-            request.ResponseReceived += (Response response) =>
-            {
-                Console.WriteLine($"Receive Exit App Signal Response");
-            };
-            dispatcher.SendRequest(request);
-            Console.WriteLine("Sent Exit App Signal");
-
-            return false;
-        }
-
-        void Moved(double y)
-        {
-            double SCREEN_SCROLLER_OFFSET = 16;
-            AbsoluteLayout.SetLayoutBounds(listBg, new Rectangle(0, scroller.Y + startBtn.Y + startBtn.Height / 2 - y - SCREEN_SCROLLER_OFFSET, 1.0, 2));
-            for (int i = 1; i < fETarget.Children.Count; i++)
-            {
-                var view = fETarget.Children[i];
-
-                double distanceFromCenter = y;
-                switch (i)
-                {
-                    case 1: // Start button
-                        distanceFromCenter = y;
-                        break;
-                    case 2: // My Workouts
-                        distanceFromCenter = Math.Abs(y - 150);
-                        break;
-                    case 3: // Settings
-                        distanceFromCenter = Math.Abs(y - 250);
-                        break;
-                }
-                double scale = MAX_SCALE - (distanceFromCenter / 750);
-
-                view.Scale = scale < MIN_SCALE ? MIN_SCALE
-                        : scale > MAX_SCALE ? MAX_SCALE
-                        : scale;
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/SelectWorkoutPage.xaml b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/SelectWorkoutPage.xaml
deleted file mode 100755 (executable)
index 9ada330..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<c:CirclePage 
-    xmlns="http://xamarin.com/schemas/2014/forms"            
-    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"             
-    xmlns:c="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"      
-    x:Class="MapMyRun.Tizen.Views.SelectWorkoutPage"
-    NavigationPage.HasNavigationBar="False"
-    RotaryFocusObject="{x:Reference scroller}">
-    <c:CirclePage.Content>
-        <AbsoluteLayout>
-            <c:CircleScrollView x:Name="scroller" AbsoluteLayout.LayoutFlags="All" AbsoluteLayout.LayoutBounds="0, 0, 1, 1">
-                <StackLayout>
-                    <Label 
-                        HeightRequest="65"
-                        Margin="0, 0, 0, 0"
-                        Text="Select"
-                        Style="{StaticResource PrimaryHeaderStyle}"/>
-                    <Label 
-                        HeightRequest="65"
-                        Margin="0, -30, 0, 50"
-                        Text="Activity"
-                        Style="{StaticResource PrimaryHeaderStyle}"/>
-                    <StackLayout x:Name="activityStack">
-                    </StackLayout>
-                </StackLayout>
-            </c:CircleScrollView>
-            <AbsoluteLayout x:Name="selectBtn" IsVisible="False" AbsoluteLayout.LayoutFlags="None" AbsoluteLayout.LayoutBounds="75, 270, 200, 100">
-                <Image Source="select-btn-empty.png" Aspect="AspectFill" Opacity="0.9" />
-                <Label Text="SELECT" FontAttributes="Bold" FontSize="9" AbsoluteLayout.LayoutFlags="SizeProportional" AbsoluteLayout.LayoutBounds="60, 20, 1, 1"/>
-            </AbsoluteLayout>
-        </AbsoluteLayout>
-    </c:CirclePage.Content>
-</c:CirclePage>
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/SelectWorkoutPage.xaml.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/SelectWorkoutPage.xaml.cs
deleted file mode 100755 (executable)
index ea62f88..0000000
+++ /dev/null
@@ -1,216 +0,0 @@
-using MapMyRun.Models;
-using MapMyRun.Tizen.Models;
-using MapMyRun.Tizen.ViewModels;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Tizen.Wearable.CircularUI.Forms;
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace MapMyRun.Tizen.Views
-{
-    [XamlCompilation(XamlCompilationOptions.Compile)]
-    public partial class SelectWorkoutPage : CirclePage
-    {
-        private double MIN_SCALE = 0.6;
-        private double MAX_SCALE = 1.1;
-        private int SCROLL_INTERVAL = 144;
-
-        private WorkoutSetupPageModel setupPageModel;
-        private bool Initialized = false;
-        private double lastScrollPos = 0;
-        private int focusedIndex = 0;
-        private bool isTimerRunning = false;
-        private bool isScrolling = false;
-
-        private void Initialize(WorkoutSetupPageModel _setupPageModel)
-        {
-            InitializeComponent();
-
-            setupPageModel = _setupPageModel;
-            BindingContext = setupPageModel;
-            scroller.Scrolled += OnScrolled;
-            scroller.VerticalScrollBarVisibility = ScrollBarVisibility.Never;
-
-            Appearing += (s, e) =>
-            {
-                if (!Initialized)
-                {
-                    Initialized = true;
-                    Scroller(0);
-                }
-            };
-
-            TapGestureRecognizer selectTapGesture = new TapGestureRecognizer();
-            selectTapGesture.Tapped += OnSelectTapped;
-            selectBtn.GestureRecognizers.Add(selectTapGesture);
-        }
-
-        public SelectWorkoutPage(WorkoutSetupPageModel _setupPageModel)
-        {
-            Initialize(_setupPageModel);
-            UpdateActivityList(setupPageModel.defaultList);
-        }
-
-        public SelectWorkoutPage(WorkoutSetupPageModel _setupPageModel, int group_id)
-        {
-            Initialize(_setupPageModel);
-
-            if (group_id == -1) // Others
-            {
-                UpdateActivityList(setupPageModel.GetGroupActivities());
-            }
-            else
-            {
-                UpdateActivityList(setupPageModel.GetActivitiesByGroup(group_id));
-            }
-        }
-
-        private Label LabelFactory(Activity activity)
-        {
-
-            ActivityLabel label = new ActivityLabel(activity);
-            label.Text = activity.name;
-            label.HeightRequest = 137;
-            label.VerticalOptions = LayoutOptions.Start;
-            label.HorizontalOptions = LayoutOptions.CenterAndExpand;
-
-            TapGestureRecognizer activityTapGesture = new TapGestureRecognizer();
-            activityTapGesture.Tapped += Activity_Selected;
-            label.GestureRecognizers.Add(activityTapGesture);
-
-            return label;
-        }
-
-        private void UpdateActivityList(List<Activity> activityList)
-        {
-            activityStack.Children.Clear();
-            activityStack.HeightRequest = activityList.Count * 148;
-
-            activityList.ForEach((Activity activity) => 
-                {
-                    activityStack.Children.Add(LabelFactory(activity));
-                }
-            );
-        }
-
-        void OnSelectTapped(object sender, EventArgs args)
-        {
-            Activity focusedActivity = (activityStack.Children[focusedIndex] as ActivityLabel).LabelActivity;
-
-            setupPageModel.updateCurrentActivity(focusedActivity);
-            PopSelectPages();
-        }
-
-        async private void Activity_Selected(object sender, EventArgs e)
-        {
-            Activity tappedActivity = ((ActivityLabel)sender).LabelActivity;
-
-            if (tappedActivity.id == -1) // Not an activity but a holder
-            {
-                await Navigation.PushAsync(new SelectWorkoutPage(setupPageModel, tappedActivity.group_id));
-            }
-            else
-            {
-                setupPageModel.updateCurrentActivity(tappedActivity);
-                PopSelectPages();
-            }
-        }
-
-        async private void PopSelectPages()
-        {
-            int pageIndex = Navigation.NavigationStack.Count - 2;
-
-            while (Navigation.NavigationStack[pageIndex].GetType().Equals(this.GetType()))
-            {
-                if (pageIndex <= 0) break; // do not remove root page
-
-                Navigation.RemovePage(Navigation.NavigationStack[pageIndex]);
-                pageIndex--;
-            }
-
-            await Navigation.PopAsync();
-        }
-
-        void OnScrolled(object sender, ScrolledEventArgs e) => Scroller(e.ScrollY);
-
-        void Scroller(double y)
-        {
-            lastScrollPos = y;
-            focusedIndex = 0;
-            double focusedDistance = 100;       
-            
-            for (int i = 0; i < activityStack.Children.Count; i++)
-            {
-                Label activityLabel = activityStack.Children[i] as Label;
-
-                double distanceFromCenter = i == 0 ? y : Math.Abs(y - ((i * SCROLL_INTERVAL)));
-
-                double scale = MAX_SCALE - (distanceFromCenter / 750);
-
-                activityLabel.Scale = scale < MIN_SCALE ? MIN_SCALE
-                        : scale > MAX_SCALE ? MAX_SCALE
-                        : scale;
-
-                if (distanceFromCenter < focusedDistance)
-                {
-                    focusedDistance = distanceFromCenter;
-                    focusedIndex = i;
-                }
-                activityLabel.TextColor = Color.White;
-            }
-
-            isScrolling = true;
-            DetectEndOfScrolling();
-        }
-
-        /// <summary>
-        /// Determines that scrolling has ended (and stops polling) if isScrolling flag stays false at the end of timer, 
-        /// and afterwards triggers focusing of current item to center of screen.
-        /// </summary>
-        private void DetectEndOfScrolling()
-        {
-            if (isTimerRunning)
-                return;
-            
-            isTimerRunning = true;
-            Device.StartTimer(TimeSpan.FromMilliseconds(100), () => {
-                if (!isScrolling)
-                {
-                    ActivityLabel focusedLabel = activityStack.Children[focusedIndex] as ActivityLabel;
-                    double finalPos = focusedIndex * SCROLL_INTERVAL;
-
-                    scroller.ScrollToAsync(0, finalPos, true);
-
-                    if (lastScrollPos == finalPos || focusedIndex == activityStack.Children.Count - 1)
-                    {
-                        focusedLabel.TextColor = Color.FromHex($"0CAEFF");
-                    }
-
-                    selectBtn.IsVisible = focusedLabel.LabelActivity.id != -1;
-                    isTimerRunning = false;
-                    return false;
-                }
-                else
-                {
-                    isScrolling = false;
-                    return true;
-                }
-            });
-        }
-    }
-
-    // Class to attach Activity Object to label. Workaround to identify Activity clicked by user.
-    class ActivityLabel : Label
-    {
-        public Activity LabelActivity { get; set; }
-
-        public ActivityLabel(Activity activity) : base()
-        {
-            LabelActivity = activity;
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/SetDurationPage.xaml b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/SetDurationPage.xaml
deleted file mode 100755 (executable)
index a6cc686..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<c:CirclePage xmlns="http://xamarin.com/schemas/2014/forms"
-             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-             xmlns:c="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"
-             x:Class="MapMyRun.Tizen.Views.SetDurationPage"
-             xmlns:local="clr-namespace:MapMyRun.Tizen.Views.Templates;assembly=MapMyRun.Tizen" 
-             RotaryFocusObject="{x:Reference durationMenu}"
-             NavigationPage.HasNavigationBar="False">
-    <c:CirclePage.Resources>
-        <ResourceDictionary>
-            <DataTemplate x:Key="textCellTemplate">
-                <ViewCell>
-                    <StackLayout>
-                        <Label Text="{Binding Name}"
-                               Style="{StaticResource PrimaryCellLabelStyle}"
-                                    />
-                        <Label Text="{Binding SubText}"                                
-                               IsVisible="{Binding HasSubText}"
-                               Style="{StaticResource DetailCellLabelStyle}"
-                                    />
-                    </StackLayout>
-                </ViewCell>
-            </DataTemplate>
-            <DataTemplate x:Key="switchCellTemplate">
-                <ViewCell>
-                    <StackLayout HeightRequest="120" WidthRequest="200" Orientation="Horizontal">
-                        <Label Text="{Binding Name}"
-                               VerticalTextAlignment="Center"
-                               HorizontalOptions="CenterAndExpand"/>
-                        <c:Radio GroupName="DurationGroup"
-                                 IsSelected="{Binding RadioSelected}"
-                                 Selected="OnDurationChanged"
-                                 Value="{Binding RadioValue}"/>
-                    </StackLayout>
-                </ViewCell>
-            </DataTemplate>
-            <local:SettingCellTemplateSelector x:Key="settingCellTemplateSelector"
-                TextCellTemplate="{StaticResource textCellTemplate}"
-                SwitchCellTemplate="{StaticResource switchCellTemplate}"
-                />
-        </ResourceDictionary>
-    </c:CirclePage.Resources>
-    <c:CirclePage.Content>
-        <c:CircleListView x:Name="durationMenu"
-            HasUnevenRows="True"
-            ItemTapped="OnItemTapped"
-            ItemTemplate="{StaticResource settingCellTemplateSelector}">
-            <c:CircleListView.Header>
-                <x:String>Display Time</x:String>
-            </c:CircleListView.Header>
-            <c:CircleListView.HeaderTemplate>
-                <DataTemplate>
-                    <Label
-                        c:CircleListView.CancelEffect="True"
-                        HeightRequest="120"
-                        Text="{Binding .}"
-                        Style="{StaticResource PrimaryHeaderStyle}" />
-                </DataTemplate>
-            </c:CircleListView.HeaderTemplate>
-        </c:CircleListView>
-    </c:CirclePage.Content>
-</c:CirclePage>
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/SetDurationPage.xaml.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/SetDurationPage.xaml.cs
deleted file mode 100755 (executable)
index f811c7f..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-using Tizen.Wearable.CircularUI.Forms;
-using MapMyRun.Tizen.Views.Templates;
-using MapMyRun.Tizen.ViewModels;
-
-namespace MapMyRun.Tizen.Views
-{
-    [XamlCompilation(XamlCompilationOptions.Compile)]
-    public partial class SetDurationPage : CirclePage
-    {
-        public SettingCell longDurationCell;
-
-        public SettingCell midDurationCell;
-
-        public SettingCell shortDurationCell;
-
-        public ObservableCollection<SettingCell> settingsList;
-
-        private SettingsPageModel pageViewModel;
-
-        public SetDurationPage()
-        {
-            InitializeComponent();
-            pageViewModel = SettingsPageModel.GetInstance();
-            BindingContext = pageViewModel;
-            settingsList = new ObservableCollection<SettingCell>();
-            durationMenu.ItemsSource = settingsList;
-
-            CreateSettingCells();
-            UpdateSettingsCells();
-            PopulateSettingsList();
-        }
-
-        protected override void OnAppearing()
-        {
-            UpdateSettingsCells();
-        }
-
-        private void CreateSettingCells()
-        {
-            longDurationCell = new SettingCell("16 seconds", "", true);
-            longDurationCell.RadioValue = "16 seconds";
-
-            midDurationCell = new SettingCell("12 seconds", "", true);
-            midDurationCell.RadioValue = "12 seconds";
-
-            shortDurationCell = new SettingCell("6 seconds", "", true);
-            shortDurationCell.RadioValue = "6 seconds";
-        }
-
-        private void UpdateSettingsCells()
-        {
-            longDurationCell.RadioSelected = (pageViewModel.DisplayTime == 16);
-            midDurationCell.RadioSelected = (pageViewModel.DisplayTime == 12);
-            shortDurationCell.RadioSelected = (pageViewModel.DisplayTime == 6);
-        }
-
-        private void PopulateSettingsList()
-        {
-            settingsList.Add(longDurationCell);
-            settingsList.Add(midDurationCell);
-            settingsList.Add(shortDurationCell);
-        }
-
-        public void OnItemTapped(object sender, ItemTappedEventArgs args)
-        {
-            SettingCell clickedCell = (SettingCell) args.Item;
-
-            Console.WriteLine($"OnItemTapped Item:{clickedCell.Name}");
-        }
-
-        public void OnDurationChanged(object sender, CheckedChangedEventArgs args)
-        {
-            try
-            {
-                Radio radioItem = sender as Radio;
-
-                if (radioItem.Value == null) return;
-
-                switch (radioItem.Value)
-                {
-                    case "6 seconds":
-                        pageViewModel.DisplayTime = 6;
-                        break;
-                    case "12 seconds":
-                        pageViewModel.DisplayTime = 12;
-                        break;
-                    case "16 seconds":
-                    default:
-                        pageViewModel.DisplayTime = 16;
-                        break;
-
-                }
-            }
-            catch (NullReferenceException e)
-            {
-                Console.WriteLine($"Empty sender. Will not update Display Time.");
-            }
-
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/SettingsPage.xaml b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/SettingsPage.xaml
deleted file mode 100755 (executable)
index 339bd99..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<c:CirclePage xmlns="http://xamarin.com/schemas/2014/forms"
-             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-             xmlns:c="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"
-             x:Class="MapMyRun.Tizen.Views.SettingsPage"
-             xmlns:local="clr-namespace:MapMyRun.Tizen.Views.Templates;assembly=MapMyRun.Tizen" 
-             RotaryFocusObject="{x:Reference SettingsList}"
-             NavigationPage.HasNavigationBar="False">
-    <c:CirclePage.Resources>
-        <ResourceDictionary>
-            <DataTemplate x:Key="textCellTemplate">
-                <ViewCell>
-                    <StackLayout>
-                        <Label Text="{Binding Name}"
-                                Style="{StaticResource PrimaryCellLabelStyle}"
-                                    />
-                        <Label Text="{Binding SubText}"                                
-                                IsVisible="{Binding HasSubText}"
-                                Style="{StaticResource DetailCellLabelStyle}"
-                                    />
-                    </StackLayout>
-                </ViewCell>
-            </DataTemplate>
-            <DataTemplate x:Key="switchCellTemplate">
-                <SwitchCell 
-                    Text="{Binding Name}"
-                    On="{Binding RadioSelected}"
-                    OnChanged="OnGPSToggled"
-                    />
-            </DataTemplate>
-            <local:SettingCellTemplateSelector x:Key="settingCellTemplateSelector"
-                TextCellTemplate="{StaticResource textCellTemplate}"
-                SwitchCellTemplate="{StaticResource switchCellTemplate}"
-                />
-        </ResourceDictionary>
-    </c:CirclePage.Resources>
-    <c:CirclePage.Content>
-        <c:CircleListView x:Name="SettingsList"
-            ItemTapped="OnItemTapped"
-            ItemTemplate="{StaticResource settingCellTemplateSelector}">
-            <c:CircleListView.Header>
-                <x:String>Settings</x:String>
-            </c:CircleListView.Header>
-            <c:CircleListView.HeaderTemplate>
-                <DataTemplate>
-                    <Label
-                        c:CircleListView.CancelEffect="True"
-                        HeightRequest="120"
-                        Text="{Binding .}"
-                        Style="{StaticResource PrimaryHeaderStyle}" />
-                </DataTemplate>
-            </c:CircleListView.HeaderTemplate>
-        </c:CircleListView>
-    </c:CirclePage.Content>
-</c:CirclePage>
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/SettingsPage.xaml.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/SettingsPage.xaml.cs
deleted file mode 100755 (executable)
index ccc9ee3..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-using Tizen.Wearable.CircularUI.Forms;
-using MapMyRun.Tizen.Views.Templates;
-using MapMyRun.Tizen.ViewModels;
-
-namespace MapMyRun.Tizen.Views
-{
-    [XamlCompilation(XamlCompilationOptions.Compile)]
-    public partial class SettingsPage : CirclePage
-    {
-        public SettingCell displayTimeCell;
-
-        public SettingCell gpsCell;
-
-        public SettingCell versionCell;
-
-        public ObservableCollection<SettingCell> settingsList;
-
-        private SettingsPageModel settingsPageModel;
-
-        public SettingsPage()
-        {
-            Console.WriteLine($"Settings Page constructor");
-            InitializeComponent();
-            settingsList = new ObservableCollection<SettingCell>();
-            settingsPageModel = SettingsPageModel.GetInstance();
-            BindingContext = settingsPageModel;
-            SettingsList.ItemsSource = settingsList;
-
-            CreateSettingCells();
-            UpdateSettingsCells();
-            PopulateSettingsList();
-        }
-
-        protected override void OnAppearing()
-        {
-            UpdateSettingsCells();
-        }
-
-        private void CreateSettingCells()
-        {
-            displayTimeCell = new SettingCell("Display Time");
-            gpsCell = new SettingCell("GPS", "", true);
-            versionCell = new SettingCell("v2.4.4");
-        }
-
-        private void UpdateSettingsCells()
-        {
-            displayTimeCell.SubText = $"{settingsPageModel.DisplayTime} seconds";
-            gpsCell.RadioSelected = settingsPageModel.GPSStatus;
-        }
-
-        private void PopulateSettingsList()
-        {
-            settingsList.Add(displayTimeCell);
-            settingsList.Add(gpsCell);
-            settingsList.Add(versionCell);
-        }
-
-        async public void OnItemTapped(object sender, ItemTappedEventArgs args)
-        {
-            SettingCell clickedCell = (SettingCell) args.Item;
-
-            Console.WriteLine($"OnItemTapped Item:{clickedCell.Name}");
-
-            if (clickedCell.Name.Equals("Display Time"))
-            {
-                await Navigation.PushAsync(new SetDurationPage());
-            }
-        }
-
-        public void OnGPSToggled(object sender, CheckedChangedEventArgs args)
-        {
-            SwitchCell switchCell = sender as SwitchCell;
-            try
-            {
-                if (switchCell.Text.Equals("GPS"))
-                {
-                    settingsPageModel.GPSStatus = switchCell.On;
-                }
-            } catch (NullReferenceException e)
-            {
-                Console.WriteLine($"Empty sender. Will not update GPS status.");
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/Templates/SettingCell.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/Templates/SettingCell.cs
deleted file mode 100755 (executable)
index 0d5b539..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.ComponentModel;
-using System.Runtime.CompilerServices;
-
-namespace MapMyRun.Tizen.Views.Templates
-{
-    public class SettingCell : INotifyPropertyChanged
-    {
-        public string Name { get; set; }
-
-        private string _subText;
-
-        public string SubText {
-            get
-            {
-                return _subText;
-            }
-            set
-            {
-                _subText = value;
-                OnPropertyChanged();
-            }
-        }
-
-        private bool _radioSelected;
-
-        public bool RadioSelected
-        {
-            get
-            {
-                return _radioSelected;
-            }
-            set
-            {
-                _radioSelected = value;
-                OnPropertyChanged();
-            }
-        }
-
-        public string RadioValue { get; set; }
-
-        public bool HasRadio { get; set; }
-
-        public SettingCell(string name, string subText = "", bool addRadio = false)
-        {
-            Name = name;
-            SubText = subText;
-            HasRadio = addRadio;
-        }
-
-        public event PropertyChangedEventHandler PropertyChanged;
-
-        protected void OnPropertyChanged([CallerMemberName] string propertyName = "")
-        {
-            PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/Templates/SettingCellTemplateSelector.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/Templates/SettingCellTemplateSelector.cs
deleted file mode 100755 (executable)
index afcd8fd..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using Xamarin.Forms;
-
-namespace MapMyRun.Tizen.Views.Templates
-{
-    public class SettingCellTemplateSelector : DataTemplateSelector
-    {
-        public DataTemplate TextCellTemplate { get; set; }
-        public DataTemplate SwitchCellTemplate { get; set; }
-
-        protected override DataTemplate OnSelectTemplate(object item, BindableObject container)
-        {
-            return ((SettingCell)item).HasRadio ? SwitchCellTemplate : TextCellTemplate;
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutHistoryPage.xaml b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutHistoryPage.xaml
deleted file mode 100755 (executable)
index fa8cb70..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<c:CirclePage 
-    xmlns="http://xamarin.com/schemas/2014/forms"            
-    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"             
-    xmlns:c="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"  
-    x:Class="MapMyRun.Tizen.Views.WorkoutHistoryPage"
-    NavigationPage.HasNavigationBar="False"
-    RotaryFocusObject="{Reference myWorkouts}">
-    <c:CirclePage.Content>
-        <c:CircleListView
-            x:Name="myWorkouts"
-            GroupDisplayBinding="{Binding Name}"
-            IsGroupingEnabled="True"
-            ItemsSource="{Binding .}"
-            Header="My Workouts">
-            <c:CircleListView.ItemTemplate>
-                <DataTemplate>
-                    <ViewCell>
-                        <StackLayout>
-                            <Label 
-                                Text="{Binding Category}"
-                                Style="{StaticResource PrimaryCellLabelStyle}"/>
-                            <Label  
-                                Text="{Binding Selected}" 
-                                Style="{StaticResource DetailCellLabelStyleCloserMargin}"/>
-                        </StackLayout>
-                    </ViewCell>
-                </DataTemplate>
-            </c:CircleListView.ItemTemplate>
-            <c:CircleListView.HeaderTemplate>
-                <DataTemplate>
-                    <Label
-                        c:CircleListView.CancelEffect="True"
-                        HeightRequest="120"
-                        Text="{Binding .}"
-                        Style="{StaticResource PrimaryHeaderStyle}"/>
-                </DataTemplate>
-            </c:CircleListView.HeaderTemplate>
-        </c:CircleListView>
-    </c:CirclePage.Content>
-</c:CirclePage>
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutHistoryPage.xaml.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutHistoryPage.xaml.cs
deleted file mode 100755 (executable)
index d98e8df..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Tizen.Wearable.CircularUI.Forms;
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace MapMyRun.Tizen.Views
-{
-    [XamlCompilation(XamlCompilationOptions.Compile)]
-    public partial class WorkoutHistoryPage : CirclePage
-    {
-        // dummy data class
-        public class GroupModel : List<NamedList<WorkoutSetupEntry>>
-        {
-            public GroupModel()
-            {
-                Add(new NamedList<WorkoutSetupEntry>("THIS WEEK") { new WorkoutSetupEntry() { Category="Intervals", Selected="11/27/2019 0:01 min" } });
-                Add(new NamedList<WorkoutSetupEntry>("OLDER") { new WorkoutSetupEntry() { Category="Run, on 11/13/2019", Selected="11/13/2019 0:04 min" } });
-            }
-        }
-
-        public class NamedList<T> : List<T>
-        {
-            public NamedList(string name) => Name = name;
-            public string Name { get; set; }
-        }
-
-        public class WorkoutSetupEntry
-        {
-            public string Category
-            {
-                set; get;
-            }
-
-            public string Selected
-            {
-                set; get;
-            }
-        }
-
-        public WorkoutHistoryPage()
-        {
-            InitializeComponent();
-            BindingContext = new GroupModel();
-
-        }
-    } 
-}
\ No newline at end of file
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainIndexPage.xaml b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainIndexPage.xaml
deleted file mode 100755 (executable)
index c3885e3..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<c:IndexPage xmlns="http://xamarin.com/schemas/2014/forms" 
-             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-             xmlns:c="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"
-             x:Class="MapMyRun.Tizen.Views.WorkoutMainIndexPage"
-             NavigationPage.HasNavigationBar="False">
-</c:IndexPage>
\ No newline at end of file
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainIndexPage.xaml.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainIndexPage.xaml.cs
deleted file mode 100755 (executable)
index b6f2d0a..0000000
+++ /dev/null
@@ -1,126 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-using Tizen.Wearable.CircularUI.Forms;
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace MapMyRun.Tizen.Views
-{
-    [XamlCompilation(XamlCompilationOptions.Compile)]
-    public partial class WorkoutMainIndexPage : IndexPage
-    {
-        const int LEFT = 1;
-        const int RIGHT = -1;
-
-        WorkoutMainPage _workoutIndexEntry1;
-        WorkoutMainPage _workoutIndexEntry2;
-        WorkoutMainPage _workoutIndexEntry3;
-        WorkoutMainPageGPS _workoutIndexEntry4;
-
-        public WorkoutMainIndexPage()
-        {
-            InitializeComponent();
-            _workoutIndexEntry1 = new WorkoutMainPage(0);
-            _workoutIndexEntry2 = new WorkoutMainPage(1);
-            _workoutIndexEntry3 = new WorkoutMainPage(2);
-            _workoutIndexEntry4 = new WorkoutMainPageGPS();
-
-            // workoutIndexEntry2.TranslationX = 400;
-            // workoutIndexEntry3.TranslationX = 400;
-            // workoutIndexEntry4.TranslationX = 400;
-
-            _workoutIndexEntry1.RaiseRotaryEvent += RotateIndex;
-            _workoutIndexEntry2.RaiseRotaryEvent += RotateIndex;
-            _workoutIndexEntry3.RaiseRotaryEvent += RotateIndex;
-            _workoutIndexEntry4.RaiseRotaryEvent += RotateIndex;
-
-            //_workoutIndexEntry1.RaiseBackButtonPressed += EnableSwitchPage;
-            //_workoutIndexEntry2.RaiseBackButtonPressed += EnableSwitchPage;
-            //_workoutIndexEntry3.RaiseBackButtonPressed += EnableSwitchPage;
-            //_workoutIndexEntry4.RaiseBackButtonPressed += EnableSwitchPage;
-
-            _workoutIndexEntry1.RaiseBackButtonPressed += ToggleTimer;
-            _workoutIndexEntry2.RaiseBackButtonPressed += ToggleTimer;
-            _workoutIndexEntry3.RaiseBackButtonPressed += ToggleTimer;
-            _workoutIndexEntry4.RaiseBackButtonPressed += ToggleTimer;
-
-            Children.Add(_workoutIndexEntry1);
-            Children.Add(_workoutIndexEntry2);
-            Children.Add(_workoutIndexEntry3);
-            Children.Add(_workoutIndexEntry4);
-
-            CurrentPageChanged += BackgroundOpacityChange;
-        }
-
-        public /*async*/ void RotateIndex(object sender, RotaryEventArgs args)
-        {
-            int direction = args.IsClockwise ? LEFT: RIGHT;
-            int index = Children.IndexOf(CurrentPage);
-            if (index + direction < 0 || index + direction > 3) return;
-            //CurrentPage.TranslateTo(400*-direction, CurrentPage.TranslationY, 300);
-            //Task.Delay(100);
-            CurrentPage = Children.ElementAt(index + direction);
-            //await Children.ElementAt(index + direction).TranslateTo(0, Children.ElementAt(index + direction).TranslationY, 200);
-        }
-
-        //void EnableSwitchPage(bool buttonOn)
-        //{
-        //    if (buttonOn) this.InputTransparent = true;
-        //    else this.InputTransparent = false;
-        //}
-
-        void ToggleTimer(bool buttonOn)
-        {
-            _workoutIndexEntry1.TimerON(buttonOn);
-        }
-
-        void BackgroundOpacityChange(object sender, EventArgs args)
-        {
-            int pageNumber = Children.IndexOf(CurrentPage) + 1;
-            foreach (var page in Children)
-            {
-                if(page is WorkoutMainPage p1)
-                {
-                    if(pageNumber == 2)
-                    {
-                        p1.BackgroundBottomFade(on:true);
-                        p1.BackgroundWholeFade(on:false);
-                    }
-                    else if(pageNumber == 3)
-                    {
-                        p1.BackgroundBottomFade(on:false);
-                        p1.BackgroundWholeFade(on:true);
-                    }
-                    else if(pageNumber == 4)
-                    {
-                        p1.BackgroundBottomFade(on:false);
-                        p1.BackgroundWholeFade(on:false);
-                    }
-                }
-                else if (page is WorkoutMainPageGPS p2)
-                {
-                    if (pageNumber == 2)
-                    {
-                        p2.BackgroundBottomFade(on: true);
-                        p2.BackgroundWholeFade(on: false);
-                    }
-                    else if (pageNumber == 3)
-                    {
-                        p2.BackgroundBottomFade(on: false);
-                        p2.BackgroundWholeFade(on: true);
-                    }
-                    else if (pageNumber == 4)
-                    {
-                        p2.BackgroundBottomFade(on: false);
-                        p2.BackgroundWholeFade(on: false);
-                    }
-                }
-            }
-        }
-    }
-    
-}
\ No newline at end of file
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainLoadingPage.xaml b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainLoadingPage.xaml
deleted file mode 100755 (executable)
index 24ed03f..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<c:CirclePage xmlns="http://xamarin.com/schemas/2014/forms" 
-             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-             xmlns:c="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"
-             x:Class="MapMyRun.Tizen.Views.WorkoutMainLoadingPage"
-             NavigationPage.HasNavigationBar="False">
-    <c:CirclePage.CircleSurfaceItems>
-        <c:CircleProgressBarSurfaceItem
-            x:Name="progress"
-            IsVisible="True"
-            />
-    </c:CirclePage.CircleSurfaceItems>
-
-    <c:CirclePage.Content>
-        <Label
-            x:Name="label"
-            Text="{Binding .}"
-            HorizontalTextAlignment="Center"
-            VerticalTextAlignment="Center"
-            />
-    </c:CirclePage.Content>
-</c:CirclePage>
\ No newline at end of file
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainLoadingPage.xaml.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainLoadingPage.xaml.cs
deleted file mode 100755 (executable)
index 32d59c8..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-using MapMyRun.Models.Workout;
-using MapMyRun.Models.Workout.Items;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Tizen.Wearable.CircularUI.Forms;
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace MapMyRun.Tizen.Views
-{
-    [XamlCompilation(XamlCompilationOptions.Compile)]
-    public partial class WorkoutMainLoadingPage : CirclePage
-    {
-        const int COUNT_THREE_SECONDS = 3;
-        const int COUNT_UA_ICON_MOMENT = 0;
-        const double ZERO_PROGRESS_BAR = 0.0;
-        const double HALF_PROGRESS_BAR = 0.5;
-        const double FULL_PROGRESS_BAR = 1.0;
-        const double ZERO_OPACITY = 0.0;
-        const double FULL_OPACITY = 1.0;
-        const double PROGRESS_INCREASE_STEP = 0.05;
-        const double OPACITY_INCREASE_STEP = 0.1;
-        const int FONT_SIZE_INCREASE_STEP = 2;
-        const int INIT_FONTSIZE = 50;
-
-        Image image = new Image()
-        {
-            Source = "UAIcon.png",
-            HorizontalOptions = LayoutOptions.Center,
-            VerticalOptions = LayoutOptions.Center,
-            Opacity = ZERO_OPACITY
-        };
-
-        public WorkoutMainLoadingPage()
-        {
-            InitializeComponent();
-
-            int counter = COUNT_THREE_SECONDS;
-            label.Opacity = ZERO_OPACITY;
-            label.FontSize = INIT_FONTSIZE;
-            label.Text = counter.ToString();
-
-            // animation moves every 50ms, counter decreases every second
-            // hence, 20 loops for each second
-            // 3 -> 2 -> 1 -> UnderArmor Icon -> UnderArmor Icon gets bigger and fades out 
-            Device.StartTimer(TimeSpan.FromMilliseconds(50), () =>
-            {
-                if(progress.Value == FULL_PROGRESS_BAR)
-                {
-                    --counter;
-                    if(counter != COUNT_UA_ICON_MOMENT)
-                    {
-                        label.Text = counter.ToString();
-                        label.FontSize = INIT_FONTSIZE;
-                        label.Opacity = ZERO_OPACITY;
-                        progress.Value = ZERO_PROGRESS_BAR;
-                    }
-                    else
-                    {
-                        this.Content = image;
-                        UAIcon();
-                        return false;
-                    }                  
-                }
-                if(progress.Value <= HALF_PROGRESS_BAR)
-                {
-                    label.FontSize += FONT_SIZE_INCREASE_STEP;
-                    label.Opacity += OPACITY_INCREASE_STEP;
-                }
-                progress.Value += PROGRESS_INCREASE_STEP;
-                return true;
-            });
-
-        }
-
-        async void UAIcon()
-        {
-            image.FadeTo(FULL_OPACITY, 500);
-            await image.ScaleTo(1.5, 500);
-            await Task.Delay(500);
-            image.FadeTo(ZERO_OPACITY, 300);
-            await image.ScaleTo(10, 300);
-                       ((App)Application.Current).MainPage = new WorkoutMainIndexPage();
-
-            // TODO : Move proper position
-            Workout workout = (Application.Current as App).workout;
-            workout.StartWorkout();
-            return;
-        }
-
-    }
-}
\ No newline at end of file
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainPage.xaml b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainPage.xaml
deleted file mode 100755 (executable)
index bf51d72..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<c:CirclePage 
-    xmlns="http://xamarin.com/schemas/2014/forms"            
-    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"             
-    xmlns:c="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"  
-    x:Class="MapMyRun.Tizen.Views.WorkoutMainPage"
-    NavigationPage.HasNavigationBar="False"
-    x:Name="WorkoutIndexEntry"
-    RotaryFocusObject="{x:Reference WorkoutIndexEntry}">
-    <c:CirclePage.Content>
-        <RelativeLayout x:Name="layout">
-        </RelativeLayout>
-    </c:CirclePage.Content>
-</c:CirclePage>
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainPage.xaml.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainPage.xaml.cs
deleted file mode 100755 (executable)
index bb77deb..0000000
+++ /dev/null
@@ -1,297 +0,0 @@
-using MapMyRun.Models.Workout;
-using MapMyRun.Tizen.ViewModels.WorkoutMain;
-using System;
-using Tizen.Wearable.CircularUI.Forms;
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace MapMyRun.Tizen.Views
-{
-    [XamlCompilation(XamlCompilationOptions.Compile)]
-    public partial class WorkoutMainPage : CirclePage, IRotaryEventReceiver
-    {
-        const int MAINCELL_SIZE = 22;
-        const int SPACING = 5;
-        const int TOP_SPACING = 60;
-        const int HEART_SIZE = 20;
-        const double UNPRESSED_OPACITY = 1.0;
-        const double PRESSED_OPACITY = 0.5;
-        Color TRANSPARENT_BACKGROUND = new Color(0, 0, 0, 0);
-        const double BUTTON_WIDTH_COEFFICIENT = 0.8;
-        const double BUTTON_HEIGHT_COEFFICIENT = 0.27;
-        const double BUTTON_XPOSITION_COEFFICIENT = 0.1;
-        const double BUTTON_YPOSITION_COEFFICIENT = 0.65;
-        const int BACKGROUND_FADE_TIME = 300;
-        const double FULL_OPACITY = 1.0;
-        const double ZERO_OPACITY = 0.0;
-        const double SUBCELL_WIDTH_COEFFICIENT = 0.45;
-        const double RIGHTSUBCELL_XPOSITION_COEFFICIENT = 0.55;
-        const double BOTTOMCELL_WIDTH_COEFFICIENT = 0.2;
-        const double BOTTOMCELL_XPOSITION_COEFFICIENT = 0.4;
-
-        bool buttonON;        
-
-        public TapGestureRecognizer recognizer = new TapGestureRecognizer();
-
-        public event EventHandler<RotaryEventArgs> RaiseRotaryEvent;
-        public Action<bool> RaiseBackButtonPressed;
-
-        // Controls
-        Label MainCell, SubCellLeft, SubCellRight, MainLabel, SubLabelLeft, SubLabelRight, BottomLabel;
-        Image BottomCell, BackgroundBottomLight, BackgroundWholeLight;
-        ImageButton FinishButton;
-
-        WorkoutMainPageModel _workoutMainPageModel;
-        int _pageNumber;
-
-        public WorkoutMainPage(int pageNumber)
-        {
-            InitializeComponent();
-
-            _pageNumber = pageNumber;
-            _workoutMainPageModel = new WorkoutMainPageModel((Application.Current as App).workout);
-
-            // Controls
-            BackgroundBottomLight = new Image()
-            {
-                Source = "backgroundBottomLight.png",
-                Opacity = FULL_OPACITY
-            };
-
-            BackgroundWholeLight = new Image()
-            {
-                Source = "backgroundWholeLight.png",
-                Opacity = ZERO_OPACITY
-            };
-
-            MainCell = new Label()
-            {
-                HorizontalTextAlignment = TextAlignment.Center,
-                VerticalTextAlignment = TextAlignment.Center,
-                FontSize = MAINCELL_SIZE,
-                BackgroundColor = TRANSPARENT_BACKGROUND,
-                TextColor = Color.White
-            };
-            MainCell.SetBinding(Label.TextProperty, nameof(IWorkoutItemViewModel.Value));
-
-            MainLabel = new Label()
-            {
-                HorizontalTextAlignment = TextAlignment.Center,
-                VerticalTextAlignment = TextAlignment.Center,
-                FontSize = Device.GetNamedSize(NamedSize.Micro, typeof(Label)),
-                BackgroundColor = TRANSPARENT_BACKGROUND,
-                TextColor = Color.White
-            };
-            MainLabel.SetBinding(Label.TextProperty, nameof(IWorkoutItemViewModel.LongLabel));
-
-            SubCellLeft = new Label()
-            {
-                HorizontalTextAlignment = TextAlignment.End,
-                VerticalTextAlignment = TextAlignment.Center,
-                FontSize = Device.GetNamedSize(NamedSize.Small, typeof(Label)),
-                BackgroundColor = TRANSPARENT_BACKGROUND,
-                TextColor = Color.White
-            };
-            SubCellLeft.SetBinding(Label.TextProperty, nameof(IWorkoutItemViewModel.Value));
-
-            SubLabelLeft = new Label()
-            {
-                HorizontalTextAlignment = TextAlignment.End,
-                VerticalTextAlignment = TextAlignment.Center,
-                FontSize = Device.GetNamedSize(NamedSize.Micro, typeof(Label)),
-                BackgroundColor = TRANSPARENT_BACKGROUND,
-                TextColor = Color.White
-            };
-            SubLabelLeft.SetBinding(Label.TextProperty, nameof(IWorkoutItemViewModel.MediumLabel));
-
-            SubCellRight = new Label()
-            {
-                HorizontalTextAlignment = TextAlignment.Start,
-                VerticalTextAlignment = TextAlignment.Center,
-                FontSize = Device.GetNamedSize(NamedSize.Small, typeof(Label)),
-                BackgroundColor = TRANSPARENT_BACKGROUND,
-                TextColor = Color.White
-            };
-            SubCellRight.SetBinding(Label.TextProperty, nameof(IWorkoutItemViewModel.Value));
-
-            SubLabelRight = new Label()
-            {
-                HorizontalTextAlignment = TextAlignment.Start,
-                VerticalTextAlignment = TextAlignment.Center,
-                FontSize = Device.GetNamedSize(NamedSize.Micro, typeof(Label)),
-                BackgroundColor = TRANSPARENT_BACKGROUND,
-                TextColor = Color.White
-            };
-            SubLabelRight.SetBinding(Label.TextProperty, nameof(IWorkoutItemViewModel.MediumLabel));
-
-            BottomCell = new Image()
-            {
-                Source = "BPMIcon.png",
-                HeightRequest = HEART_SIZE,
-                WidthRequest = HEART_SIZE,
-                BackgroundColor = TRANSPARENT_BACKGROUND
-            };
-
-            BottomLabel = new Label()
-            {
-                HorizontalTextAlignment = TextAlignment.Center,
-                VerticalTextAlignment = TextAlignment.Center,
-                FontSize = Device.GetNamedSize(NamedSize.Micro, typeof(Label)),
-                BackgroundColor = TRANSPARENT_BACKGROUND,
-                TextColor = Color.White
-            };
-            BottomLabel.SetBinding(Label.TextProperty, nameof(IWorkoutItemViewModel.ValueWithUnit));
-
-            FinishButton = new ImageButton()
-            {
-                Source = ImageSource.FromFile("finish-btn.png")
-            };
-            FinishButton.Pressed += (s, e) => {
-                FinishButton.Opacity = PRESSED_OPACITY;
-            };
-            FinishButton.Released += (s, e) =>
-            {
-                FinishButton.Opacity = UNPRESSED_OPACITY;
-            };
-
-            buttonON = false;
-            MainCell.BindingContext = _workoutMainPageModel.GetWorkoutViewModel(pageNumber, 0);
-            MainLabel.BindingContext = _workoutMainPageModel.GetWorkoutViewModel(pageNumber, 0);
-            SubCellLeft.BindingContext = _workoutMainPageModel.GetWorkoutViewModel(pageNumber, 1);
-            SubLabelLeft.BindingContext = _workoutMainPageModel.GetWorkoutViewModel(pageNumber, 1);
-            SubCellRight.BindingContext = _workoutMainPageModel.GetWorkoutViewModel(pageNumber, 2);
-            SubLabelRight.BindingContext = _workoutMainPageModel.GetWorkoutViewModel(pageNumber, 2);
-            BottomCell.BindingContext = _workoutMainPageModel.GetWorkoutViewModel(pageNumber, 3);
-            BottomLabel.BindingContext = _workoutMainPageModel.GetWorkoutViewModel(pageNumber, 3);
-
-            layout.Children.Add(BackgroundBottomLight,
-                heightConstraint: Constraint.RelativeToParent((parent) => { return parent.Height;}),
-                widthConstraint: Constraint.RelativeToParent((parent) => { return parent.Width; }));
-
-            layout.Children.Add(BackgroundWholeLight,
-                heightConstraint: Constraint.RelativeToParent((parent) => { return parent.Height; }),
-                widthConstraint: Constraint.RelativeToParent((parent) => { return parent.Width; }));
-
-            layout.Children.Add(MainCell,
-                yConstraint: Constraint.RelativeToParent((parent) => { return parent.Y + TOP_SPACING; }),
-                widthConstraint: Constraint.RelativeToParent((parent) => { return parent.Width; }));
-
-            layout.Children.Add(MainLabel,
-                yConstraint: Constraint.RelativeToView(MainCell, (parent, sibling) => { return sibling.Y + sibling.Height + SPACING; }),
-                widthConstraint: Constraint.RelativeToParent((parent) => { return parent.Width; }));
-
-            layout.Children.Add(SubCellLeft,
-               yConstraint: Constraint.RelativeToView(MainLabel, (parent, sibling) => { return sibling.Y + sibling.Height + 2*SPACING; }),
-               widthConstraint: Constraint.RelativeToParent((parent) => { return parent.Width * SUBCELL_WIDTH_COEFFICIENT; }));
-
-            layout.Children.Add(SubLabelLeft,
-                yConstraint: Constraint.RelativeToView(SubCellLeft, (parent, sibling) => { return sibling.Y + sibling.Height + SPACING; }),
-                widthConstraint: Constraint.RelativeToParent((parent) => { return parent.Width * SUBCELL_WIDTH_COEFFICIENT; }));
-
-            layout.Children.Add(SubCellRight,
-                xConstraint: Constraint.RelativeToParent((parent) => { return parent.Width * RIGHTSUBCELL_XPOSITION_COEFFICIENT; }),
-               yConstraint: Constraint.RelativeToView(MainLabel, (parent, sibling) => { return sibling.Y + sibling.Height + 2*SPACING; }),
-               widthConstraint: Constraint.RelativeToParent((parent) => { return parent.Width * SUBCELL_WIDTH_COEFFICIENT; }));
-
-            layout.Children.Add(SubLabelRight,
-                xConstraint: Constraint.RelativeToParent((parent) => { return parent.Width * RIGHTSUBCELL_XPOSITION_COEFFICIENT; }),
-                yConstraint: Constraint.RelativeToView(SubCellRight, (parent, sibling) => { return sibling.Y + sibling.Height + SPACING; }),
-                widthConstraint: Constraint.RelativeToParent((parent) => { return parent.Width * SUBCELL_WIDTH_COEFFICIENT; }));
-
-            layout.Children.Add(BottomCell,
-                xConstraint: Constraint.RelativeToParent((parent) => { return parent.Width * BOTTOMCELL_XPOSITION_COEFFICIENT; }),
-               yConstraint: Constraint.RelativeToView(SubLabelLeft, (parent, sibling) => { return sibling.Y + sibling.Height + 2*SPACING; }),
-               widthConstraint: Constraint.RelativeToParent((parent) => { return parent.Width * BOTTOMCELL_WIDTH_COEFFICIENT; }));
-
-            layout.Children.Add(BottomLabel,
-                yConstraint: Constraint.RelativeToView(BottomCell, (parent, sibling) => { return sibling.Y + sibling.Height + SPACING; }),
-                widthConstraint: Constraint.RelativeToParent((parent) => { return parent.Width; }));
-
-            recognizer.Tapped += OnPageClick;
-            this.Content.GestureRecognizers.Add(recognizer);
-
-            FinishButton.Clicked += (s, e) =>
-            {
-                Workout workout = (Application.Current as App).workout;
-                workout.FinishWorkout();
-                               ((App)Application.Current).MainPage = new NavigationPage(new MainPage());
-                       };
-        }
-
-        void OnPageClick(object s, EventArgs e)
-        {
-            var tempName = MainCell.BindingContext;
-            var tempVal = MainLabel.BindingContext;
-
-            MainCell.BindingContext = SubCellLeft.BindingContext;
-            MainLabel.BindingContext = SubLabelLeft.BindingContext;
-            SubCellLeft.BindingContext = SubCellRight.BindingContext;
-            SubLabelLeft.BindingContext = SubLabelRight.BindingContext;
-            SubCellRight.BindingContext = tempName;
-            SubLabelRight.BindingContext = tempVal;
-        }
-
-        public void TimerON(bool on)
-        {
-            // pageNumber 0, item 0 has DurationViewModel
-            IWorkoutItemViewModel itemViewModel = _workoutMainPageModel.GetWorkoutViewModel(0, 0);
-            if(itemViewModel is DurationViewModel _duration)
-            {
-                if (on) _duration.StopTimer();
-                else _duration.ResumeTimer();
-            }
-        }
-
-        protected override bool OnBackButtonPressed()
-        {
-            if (buttonON == false)
-            {
-                MainCell.FontSize = Device.GetNamedSize(NamedSize.Small, typeof(Label));
-                Content.GestureRecognizers.Remove(recognizer);
-                BottomCell.IsVisible = false;
-                BottomLabel.IsVisible = false;
-                layout.Children.Add(FinishButton,
-                 widthConstraint: Constraint.RelativeToParent((parent) => { return parent.Width * BUTTON_WIDTH_COEFFICIENT; }),
-                 heightConstraint: Constraint.RelativeToParent((parent) => { return parent.Height * BUTTON_HEIGHT_COEFFICIENT; }),
-                 xConstraint: Constraint.RelativeToParent((parent) => { return parent.Width * BUTTON_XPOSITION_COEFFICIENT; }),
-                 yConstraint: Constraint.RelativeToParent((parent) => { return parent.Height * BUTTON_YPOSITION_COEFFICIENT; }));
-                buttonON = true;
-                RaiseBackButtonPressed?.Invoke(buttonON);
-            }
-            else
-            {
-                MainCell.FontSize = MAINCELL_SIZE;
-                Content.GestureRecognizers.Add(recognizer);
-                BottomCell.IsVisible = true;
-                BottomLabel.IsVisible = true;
-
-                layout.Children.Remove(FinishButton);
-                buttonON = false;
-                RaiseBackButtonPressed?.Invoke(buttonON);
-            }
-            return true;
-        }
-
-        public void Rotate(RotaryEventArgs args)
-        {
-            EventHandler< RotaryEventArgs> handler = RaiseRotaryEvent;
-            if(handler != null)
-            {
-                handler(this, args);
-            }
-            return;
-        }
-
-        public void BackgroundBottomFade(bool on)
-        {
-            if (on == true) BackgroundBottomLight.FadeTo(1, BACKGROUND_FADE_TIME);
-            else BackgroundBottomLight.FadeTo(FULL_OPACITY, BACKGROUND_FADE_TIME);
-        }
-
-        public void BackgroundWholeFade(bool on)
-        {
-            if (on == true) BackgroundWholeLight.FadeTo(1, BACKGROUND_FADE_TIME);
-            else BackgroundWholeLight.FadeTo(ZERO_OPACITY, BACKGROUND_FADE_TIME);
-        }
-    } 
-}
\ No newline at end of file
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainPageGPS.xaml b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainPageGPS.xaml
deleted file mode 100755 (executable)
index 2913dd8..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<c:CirclePage 
-    xmlns="http://xamarin.com/schemas/2014/forms"            
-    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"             
-    xmlns:c="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"  
-    x:Class="MapMyRun.Tizen.Views.WorkoutMainPageGPS"
-    NavigationPage.HasNavigationBar="False"
-    x:Name="WorkoutIndexEntry"
-    RotaryFocusObject="{x:Reference WorkoutIndexEntry}">
-    <c:CirclePage.Content>
-        <RelativeLayout x:Name="layout">
-        </RelativeLayout>
-    </c:CirclePage.Content>
-</c:CirclePage>
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainPageGPS.xaml.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutMainPageGPS.xaml.cs
deleted file mode 100755 (executable)
index 015d883..0000000
+++ /dev/null
@@ -1,165 +0,0 @@
-using System;
-using Tizen.Wearable.CircularUI.Forms;
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-using MapMyRun.Tizen.ViewModels.WorkoutMain;
-using MapMyRun.Models.Workout;
-
-namespace MapMyRun.Tizen.Views
-{
-    [XamlCompilation(XamlCompilationOptions.Compile)]
-    public partial class WorkoutMainPageGPS : CirclePage, IRotaryEventReceiver
-    {
-        const double ZERO_OPACITY = 0.0;
-        const double FULL_OPACITY = 1.0;
-        const double OPACITY_DECREASE_STEP = -0.1;
-        const double OPACITY_INCREASE_STEP = 0.1;
-        const double UNPRESSED_OPACITY = 1.0;
-        const double PRESSED_OPACITY = 0.5;
-        const double BUTTON_WIDTH_COEFFICIENT = 0.8;
-        const double BUTTON_HEIGHT_COEFFICIENT = 0.27;
-        const double BUTTON_XPOSITION_COEFFICIENT = 0.1;
-        const double BUTTON_YPOSITION_COEFFICIENT = 0.65;
-        const int BACKGROUND_FADE_TIME = 300;
-        const double GPSIMAGE_WIDTH_COEFFICIENT = 0.1;
-        const double GPSIMAGE_HEIGHT_COEFFICIENT = 0.1;
-        const double GPSIMAGE_XPOSITION_COEFFICIENT = 0.45;
-        const double GPSIMAGE_YPOSITION_COEFFICIENT = 0.2;
-        const double TEXT_HEIGHT_COEFFICIENT = 0.8;
-        const double TEXT_YPOSITION_COEFFICIENT = 0.35;
-
-        Label Textlabel;
-        Image GPSImage, BackgroundBottomLight, BackgroundWholeLight;
-        ImageButton FinishButton;
-
-        bool buttonON;
-        double valueChanged;
-
-        public event EventHandler<RotaryEventArgs> RaiseRotaryEvent;
-        public Action<bool> RaiseBackButtonPressed;
-        public WorkoutMainPageGPS()
-        {
-            InitializeComponent();
-
-            buttonON = false;
-            string text = "Unable to\nacquire GPS signal.\n\nPlease move to\nopen space.";
-            string fixedTest = text.Replace("\n", Environment.NewLine);
-
-            BackgroundBottomLight = new Image()
-            {
-                Source = "backgroundBottomLight.png",
-                Opacity = FULL_OPACITY
-            };
-
-            BackgroundWholeLight = new Image()
-            {
-                Source = "backgroundWholeLight.png",
-                Opacity = ZERO_OPACITY
-            };
-
-            GPSImage = new Image()
-            {
-                Source = "GPSIcon.png",
-                BackgroundColor = new Color(0, 0, 0, 0)
-            };
-
-            Textlabel = new Label()
-            {
-                Text = fixedTest,
-                TextColor = Color.White,
-                HorizontalTextAlignment = TextAlignment.Center
-            };
-
-            FinishButton = new ImageButton()
-            {
-                Source = ImageSource.FromFile("finish-btn.png")
-            };
-            FinishButton.Pressed += (s, e) => {
-                FinishButton.Opacity = PRESSED_OPACITY;
-            };
-            FinishButton.Released += (s, e) =>
-            {
-                FinishButton.Opacity = UNPRESSED_OPACITY;
-            };
-
-            layout.Children.Add(BackgroundBottomLight,
-                heightConstraint: Constraint.RelativeToParent((parent) => { return parent.Height; }),
-                widthConstraint: Constraint.RelativeToParent((parent) => { return parent.Width; }));
-
-            layout.Children.Add(BackgroundWholeLight,
-                heightConstraint: Constraint.RelativeToParent((parent) => { return parent.Height; }),
-                widthConstraint: Constraint.RelativeToParent((parent) => { return parent.Width; }));
-
-            layout.Children.Add(GPSImage,
-                heightConstraint: Constraint.RelativeToParent((parent) => { return parent.Height* GPSIMAGE_HEIGHT_COEFFICIENT; }),
-                widthConstraint: Constraint.RelativeToParent((parent) => { return parent.Width* GPSIMAGE_WIDTH_COEFFICIENT; }),
-                xConstraint: Constraint.RelativeToParent((parent) => { return parent.Width* GPSIMAGE_XPOSITION_COEFFICIENT; }),
-                yConstraint: Constraint.RelativeToParent((parent) => { return parent.Height* GPSIMAGE_YPOSITION_COEFFICIENT; }));
-
-            layout.Children.Add(Textlabel,
-                heightConstraint: Constraint.RelativeToParent((parent) => { return parent.Height* TEXT_HEIGHT_COEFFICIENT; }),
-                widthConstraint: Constraint.RelativeToParent((parent) => { return parent.Width; }),
-                yConstraint: Constraint.RelativeToParent((parent) => { return parent.Height * TEXT_YPOSITION_COEFFICIENT; }));
-
-            FinishButton.Clicked += (s, e) =>
-            {
-                Workout workout = (Application.Current as App).workout;
-                workout.FinishWorkout();
-
-                ((App)Application.Current).MainPage = new NavigationPage(new MainPage());
-            };
-
-            Device.StartTimer(TimeSpan.FromMilliseconds(100), () =>
-            {
-                if (GPSImage.Opacity == ZERO_OPACITY) valueChanged = OPACITY_INCREASE_STEP;
-                else if (GPSImage.Opacity == FULL_OPACITY) valueChanged = OPACITY_DECREASE_STEP;
-                GPSImage.Opacity += valueChanged;
-                return true;
-            }
-            );
-        }
-
-        protected override bool OnBackButtonPressed()
-        {
-            if (buttonON == false)
-            {
-                layout.Children.Add(FinishButton,
-                widthConstraint: Constraint.RelativeToParent((parent) => { return parent.Width * BUTTON_WIDTH_COEFFICIENT; }),
-                heightConstraint: Constraint.RelativeToParent((parent) => { return parent.Height* BUTTON_HEIGHT_COEFFICIENT; }),
-                xConstraint: Constraint.RelativeToParent((parent) => { return parent.Width * BUTTON_XPOSITION_COEFFICIENT; }),
-                yConstraint: Constraint.RelativeToParent((parent)=> { return parent.Height* BUTTON_YPOSITION_COEFFICIENT; }));
-                buttonON = true;
-                RaiseBackButtonPressed?.Invoke(buttonON);
-            }
-            else
-            {
-                layout.Children.Remove(FinishButton);
-                buttonON = false;
-                RaiseBackButtonPressed?.Invoke(buttonON);
-            }
-            return true;
-        }
-
-        public void Rotate(RotaryEventArgs args)
-        {
-            EventHandler<RotaryEventArgs> handler = RaiseRotaryEvent;
-            if (handler != null)
-            {
-                handler(this, args);
-            }
-            return;
-        }
-
-        public void BackgroundBottomFade(bool on)
-        {
-            if (on == true) BackgroundBottomLight.FadeTo(FULL_OPACITY, BACKGROUND_FADE_TIME);
-            else BackgroundBottomLight.FadeTo(ZERO_OPACITY, BACKGROUND_FADE_TIME);
-        }
-
-        public void BackgroundWholeFade(bool on)
-        {
-            if (on == true) BackgroundWholeLight.FadeTo(FULL_OPACITY, BACKGROUND_FADE_TIME);
-            else BackgroundWholeLight.FadeTo(ZERO_OPACITY, BACKGROUND_FADE_TIME);
-        }
-    } 
-}
\ No newline at end of file
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutSetupPage.xaml b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutSetupPage.xaml
deleted file mode 100755 (executable)
index 8747683..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<c:CirclePage 
-    xmlns="http://xamarin.com/schemas/2014/forms"            
-    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"             
-    xmlns:c="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"      
-    x:Class="MapMyRun.Tizen.Views.WorkoutSetupPage"
-    NavigationPage.HasNavigationBar="False"
-    RotaryFocusObject="{x:Reference workoutSetupList}">
-    <c:CirclePage.Content>
-        <c:CircleListView x:Name="workoutSetupList" ItemTapped="workoutSetupList_ItemTapped" Header="Workout Setup">
-            <c:CircleListView.ItemTemplate>
-                <DataTemplate>
-                    <ViewCell>
-                        <StackLayout>
-                            <Label 
-                                Text="{Binding Name}"
-                                Style="{StaticResource PrimaryCellLabelStyle}"
-                                    />
-                            <Label 
-                                Text="{Binding SubText}"                                
-                                IsVisible="{Binding HasSubText}"
-                                Style="{StaticResource DetailCellLabelStyle}"
-                                    />
-                        </StackLayout>
-                    </ViewCell>
-                </DataTemplate>
-            </c:CircleListView.ItemTemplate>
-            <c:CircleListView.HeaderTemplate>
-                <DataTemplate>
-                    <Label 
-                        c:CircleListView.CancelEffect="True"
-                        HeightRequest="120"
-                        Text="{Binding .}"
-                        Style="{StaticResource PrimaryHeaderStyle}"/>
-                </DataTemplate>
-            </c:CircleListView.HeaderTemplate>
-        </c:CircleListView>
-    </c:CirclePage.Content>
-</c:CirclePage>
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutSetupPage.xaml.cs b/test/UnderArmour/MapMyRun/MapMyRun.Tizen/views/WorkoutSetupPage.xaml.cs
deleted file mode 100755 (executable)
index 96f83c5..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-using MapMyRun.Tizen.ViewModels;
-using MapMyRun.Tizen.Views.Templates;
-using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Tizen.Wearable.CircularUI.Forms;
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace MapMyRun.Tizen.Views
-{
-    [XamlCompilation(XamlCompilationOptions.Compile)]
-    public partial class WorkoutSetupPage : CirclePage
-    {
-        private WorkoutSetupPageModel setupPageModel;
-
-        private ObservableCollection<SettingCell> workoutSetup;
-
-        private SettingCell currentActivity;
-
-        public WorkoutSetupPage(WorkoutSetupPageModel _setupPageModel)
-        {
-            InitializeComponent();
-
-            setupPageModel = _setupPageModel;
-            BindingContext = setupPageModel;
-
-            workoutSetup = new ObservableCollection<SettingCell>();
-
-            currentActivity = new SettingCell("Select Activity", setupPageModel.currentActivity);
-            workoutSetup.Add(currentActivity);
-            workoutSetup.Add(new SettingCell("Goal", "Basic Workout"));
-
-            workoutSetupList.ItemsSource = workoutSetup;
-        }
-
-        protected override void OnAppearing()
-        {
-            base.OnAppearing();
-
-            currentActivity.SubText = setupPageModel.currentActivity;
-        }
-
-        async private void workoutSetupList_ItemTapped(object sender, ItemTappedEventArgs e)
-        {
-            string tappedItem = workoutSetup[e.ItemIndex].Name;
-            
-            switch (tappedItem)
-            {
-                case "Select Activity":
-                    await Navigation.PushAsync(new SelectWorkoutPage(setupPageModel));
-                    break;
-                case "Goal":
-                    await DisplayAlert($"{tappedItem}", "Not Implemented", "OK");
-                    break;
-                default:
-                    break;
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/UnderArmour/MapMyRun/MapMyRun.sln b/test/UnderArmour/MapMyRun/MapMyRun.sln
deleted file mode 100755 (executable)
index 297db49..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 16
-VisualStudioVersion = 16.0.29609.76
-MinimumVisualStudioVersion = 10.0.40219.1
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MapMyRun.Tizen", "MapMyRun.Tizen\MapMyRun.Tizen.csproj", "{9645B7A1-AFE7-4150-BE16-278AB8C01A93}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MapMyRun.Tests", "MapMyRun.Tests\MapMyRun.Tests.csproj", "{C23F236F-2FFE-437C-85C5-11329CE83834}"
-EndProject
-Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "MapMyRun", "MapMyRun\MapMyRun.shproj", "{3C82C042-F1F4-42E3-B82D-DFED5E06EE19}"
-EndProject
-Global
-       GlobalSection(SharedMSBuildProjectFiles) = preSolution
-               MapMyRun\MapMyRun.projitems*{3c82c042-f1f4-42e3-b82d-dfed5e06ee19}*SharedItemsImports = 13
-       EndGlobalSection
-       GlobalSection(SolutionConfigurationPlatforms) = preSolution
-               Debug|Any CPU = Debug|Any CPU
-               Release|Any CPU = Release|Any CPU
-       EndGlobalSection
-       GlobalSection(ProjectConfigurationPlatforms) = postSolution
-               {9645B7A1-AFE7-4150-BE16-278AB8C01A93}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {9645B7A1-AFE7-4150-BE16-278AB8C01A93}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {9645B7A1-AFE7-4150-BE16-278AB8C01A93}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {9645B7A1-AFE7-4150-BE16-278AB8C01A93}.Release|Any CPU.Build.0 = Release|Any CPU
-               {C23F236F-2FFE-437C-85C5-11329CE83834}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {C23F236F-2FFE-437C-85C5-11329CE83834}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {C23F236F-2FFE-437C-85C5-11329CE83834}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {C23F236F-2FFE-437C-85C5-11329CE83834}.Release|Any CPU.Build.0 = Release|Any CPU
-       EndGlobalSection
-       GlobalSection(SolutionProperties) = preSolution
-               HideSolutionNode = FALSE
-       EndGlobalSection
-       GlobalSection(ExtensibilityGlobals) = postSolution
-               SolutionGuid = {E7AF0B79-CC16-49A2-B49D-119F09B9D5A7}
-       EndGlobalSection
-EndGlobal
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/MapMyRun.projitems b/test/UnderArmour/MapMyRun/MapMyRun/MapMyRun.projitems
deleted file mode 100755 (executable)
index 8622aba..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
-    <HasSharedItems>true</HasSharedItems>
-    <SharedGUID>3c82c042-f1f4-42e3-b82d-dfed5e06ee19</SharedGUID>
-  </PropertyGroup>
-  <PropertyGroup Label="Configuration">
-    <Import_RootNamespace>MapMyRun</Import_RootNamespace>
-  </PropertyGroup>
-  <ItemGroup>
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Activity.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\ActivityRepository.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Dispatcher.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\IAppLauncher.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\IDispatcher.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\IMessagePortHandler.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\IPermissionManager.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\Items\AverageCadence.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\Items\ZoneHr.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\Items\AveragePace.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\Items\CurrentCadence.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\Items\CurrentPace.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\Items\Distance.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\Items\Duration.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\Items\MaxPace.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\Items\MaxSpeed.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\Items\AverageSpeed.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\Items\CurrentSpeed.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Settings\ISettingManager.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Settings\SettingManager.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Settings\SettingsData.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\Items\Calories.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\WorkoutData.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\Items\PeakHr.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\Items\CurrentHr.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\Items\AverageHr.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\Items\IWorkoutItem.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\PermissionManager.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\IPhoneService.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\IPlatformService.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Loading.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\NotificationProvider.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\NotificationObserver.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\PhoneService.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Request.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Response.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\Workout.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\Items\WorkoutItemFactory.cs" />
-  </ItemGroup>
-</Project>
\ No newline at end of file
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/MapMyRun.shproj b/test/UnderArmour/MapMyRun/MapMyRun/MapMyRun.shproj
deleted file mode 100755 (executable)
index 9bfde81..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup Label="Globals">
-    <ProjectGuid>3c82c042-f1f4-42e3-b82d-dfed5e06ee19</ProjectGuid>
-    <MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
-  </PropertyGroup>
-  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
-  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.Common.Default.props" />
-  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.Common.props" />
-  <PropertyGroup />
-  <Import Project="MapMyRun.projitems" Label="Shared" />
-  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.CSharp.targets" />
-</Project>
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Activity.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Activity.cs
deleted file mode 100755 (executable)
index 01b0f19..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models
-{
-    public class Activity
-    {
-        public int id { get; set; } = -1;
-
-        public int group_id { get; set; } = -1;
-
-        public bool useGPS { get; set; } = false;
-
-        public bool useDistance { get; set; } = false;
-
-        public bool usePace { get; set; } = false;
-
-        public bool shoesSupported { get; set; } = false;
-
-        public bool cadenceSupported { get; set; } = false;
-
-        public bool hasSteps { get; set; } = false;
-
-        // 0 - unsupported, 1 - Cadence, 2 - Stride, while yet unable to handle enum
-        public int coachingSupported { get; set; } = 0;
-
-        public string name { get; set; } = "undefined";
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/ActivityRepository.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/ActivityRepository.cs
deleted file mode 100755 (executable)
index 0fcb080..0000000
+++ /dev/null
@@ -1,267 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.IO;
-using System.Linq;
-using System.Text;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
-
-namespace MapMyRun.Models
-{
-    public class ActivityRepository
-    {
-        // Activities data taken from mmr.activities.ts and activity.ts
-        private const string activityListJson = @"[
-            { id: 1, group_id: 3, useGPS: false, useDistance: false, usePace: false },
-            { id: 7, group_id: 6, useGPS: true, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true, coachingSupported: 1 },
-            { id: 9, group_id: 9, useGPS: true, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true, hasSteps: true },
-            { id: 10, group_id: 10, useGPS: true, useDistance: true, usePace: false },
-            { id: 16, group_id: 6, useGPS: true, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true, coachingSupported: 1 },
-            { id: 19, group_id: 1, useGPS: false, useDistance: false, usePace: false },
-            { id: 20, group_id: 8, useGPS: false, useDistance: true, usePace: false },
-            { id: 21, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 22, group_id: 5, useGPS: false, useDistance: false, usePace: false },
-            { id: 23, group_id: 0, useGPS: false, useDistance: false, usePace: false },
-            { id: 24, group_id: 9, useGPS: true, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true, hasSteps: true },
-            { id: 26, group_id: 3, useGPS: false, useDistance: false, usePace: false },
-            { id: 28, group_id: 3, useGPS: false, useDistance: false, usePace: false },
-            { id: 29, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 31, group_id: 0, useGPS: false, useDistance: false, usePace: false },
-            { id: 33, group_id: 1, useGPS: true, useDistance: true, usePace: false },
-            { id: 34, group_id: 0, useGPS: false, useDistance: false, usePace: false },
-            { id: 36, group_id: 1, useGPS: true, useDistance: true, usePace: false },
-            { id: 41, group_id: 1, useGPS: true, useDistance: true, usePace: false },
-            { id: 43, group_id: 5, useGPS: true, useDistance: true, usePace: false },
-            { id: 44, group_id: 1, useGPS: true, useDistance: true, usePace: false },
-            { id: 45, group_id: 6, useGPS: true, useDistance: true, usePace: false, shoesSupported: true, cadenceSupported: true },
-            { id: 45, group_id: 1, useGPS: true, useDistance: true, usePace: false },
-            { id: 45, group_id: 8, useGPS: true, useDistance: true, usePace: false },
-            { id: 47, group_id: 1, useGPS: true, useDistance: true, usePace: false },
-            { id: 54, group_id: 7, useGPS: false, useDistance: false, usePace: false },
-            { id: 56, group_id: 1, useGPS: true, useDistance: true, usePace: false },
-            { id: 57, group_id: 5, useGPS: true, useDistance: true, usePace: false },
-            { id: 59, group_id: 8, useGPS: false, useDistance: false, usePace: false },
-            { id: 60, group_id: 1, useGPS: true, useDistance: true, usePace: false },
-            { id: 65, group_id: 7, useGPS: false, useDistance: false, usePace: false },
-            { id: 68, group_id: 7, useGPS: true, useDistance: false, usePace: false },
-            { id: 71, group_id: 6, useGPS: false, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true, coachingSupported: 1 },
-            { id: 72, group_id: 4, useGPS: false, useDistance: false, usePace: false },
-            { id: 73, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 74, group_id: 10, useGPS: true, useDistance: true, usePace: false },
-            { id: 75, group_id: 8, useGPS: false, useDistance: false, usePace: false },
-            { id: 77, group_id: 5, useGPS: false, useDistance: false, usePace: false },
-            { id: 80, group_id: 5, useGPS: true, useDistance: true, usePace: false },
-            { id: 82, group_id: 2, useGPS: false, useDistance: false, usePace: false },
-            { id: 84, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 85, group_id: 5, useGPS: true, useDistance: true, usePace: false },
-            { id: 86, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 94, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 95, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 96, group_id: 5, useGPS: false, useDistance: false, usePace: false },
-            { id: 99, group_id: 3, useGPS: false, useDistance: false, usePace: false },
-            { id: 101, group_id: 5, useGPS: true, useDistance: true, usePace: false },
-            { id: 102, group_id: 6, useGPS: true, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true, coachingSupported: 1 },
-            { id: 103, group_id: 6, useGPS: true, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true },
-            { id: 104, group_id: 7, useGPS: false, useDistance: false, usePace: false },
-            { id: 105, group_id: 9, useGPS: true, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true, hasSteps: true },
-            { id: 107, group_id: 10, useGPS: true, useDistance: true, usePace: false },
-            { id: 108, group_id: 6, useGPS: true, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true, coachingSupported: 1 },
-            { id: 111, group_id: 6, useGPS: false, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true },
-            { id: 115, group_id: 1, useGPS: true, useDistance: true, usePace: false },
-            { id: 116, group_id: 7, useGPS: false, useDistance: false, usePace: false },
-            { id: 119, group_id: 10, useGPS: true, useDistance: true, usePace: true },
-            { id: 120, group_id: 0, useGPS: false, useDistance: false, usePace: false },
-            { id: 121, group_id: 8, useGPS: false, useDistance: false, usePace: false },
-            { id: 123, group_id: 0, useGPS: false, useDistance: false, usePace: false },
-            { id: 124, group_id: 6, useGPS: true, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true, coachingSupported: 1 },
-            { id: 127, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 128, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 131, group_id: 7, useGPS: false, useDistance: false, usePace: false },
-            { id: 133, group_id: 9, useGPS: true, useDistance: true, usePace: false, shoesSupported: true, cadenceSupported: true, hasSteps: true },
-            { id: 134, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 135, group_id: 7, useGPS: false, useDistance: false, usePace: false },
-            { id: 137, group_id: 5, useGPS: true, useDistance: true, usePace: false },
-            { id: 138, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 141, group_id: 7, useGPS: false, useDistance: false, usePace: false },
-            { id: 142, group_id: 7, useGPS: false, useDistance: false, usePace: false },
-            { id: 148, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 153, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 154, group_id: 7, useGPS: true, useDistance: true, usePace: true },
-            { id: 155, group_id: 7, useGPS: false, useDistance: false, usePace: false },
-            { id: 156, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 161, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 163, group_id: 7, useGPS: false, useDistance: false, usePace: false },
-            { id: 164, group_id: 0, useGPS: false, useDistance: false, usePace: false },
-            { id: 169, group_id: 5, useGPS: true, useDistance: true, usePace: false },
-            { id: 171, group_id: 5, useGPS: true, useDistance: true, usePace: false },
-            { id: 172, group_id: 6, useGPS: true, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true, coachingSupported: 1 },
-            { id: 176, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 178, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 180, group_id: 8, useGPS: true, useDistance: true, usePace: false },
-            { id: 182, group_id: 5, useGPS: true, useDistance: true, usePace: false },
-            { id: 184, group_id: 5, useGPS: true, useDistance: true, usePace: false },
-            { id: 192, group_id: 8, useGPS: false, useDistance: false, usePace: false },
-            { id: 193, group_id: 8, useGPS: false, useDistance: false, usePace: false },
-            { id: 197, group_id: 6, useGPS: true, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true, coachingSupported: 1 },
-            { id: 199, group_id: 3, useGPS: false, useDistance: false, usePace: false },
-            { id: 200, group_id: 5, useGPS: true, useDistance: true, usePace: false },
-            { id: 201, group_id: 6, useGPS: true, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true },
-            { id: 204, group_id: 9, useGPS: true, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true, hasSteps: true },
-            { id: 205, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 208, group_id: 3, useGPS: false, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true, coachingSupported: 1 },
-            { id: 208, group_id: 6, useGPS: false, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true, coachingSupported: 1 },
-            { id: 214, group_id: 5, useGPS: false, useDistance: false, usePace: false },
-            { id: 216, group_id: 7, useGPS: false, useDistance: false, usePace: false },
-            { id: 221, group_id: 5, useGPS: true, useDistance: true, usePace: false },
-            { id: 222, group_id: 7, useGPS: false, useDistance: false, usePace: false },
-            { id: 224, group_id: 5, useGPS: true, useDistance: true, usePace: false },
-            { id: 227, group_id: 6, useGPS: true, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true },
-            { id: 228, group_id: 7, useGPS: false, useDistance: false, usePace: false },
-            { id: 230, group_id: 0, useGPS: false, useDistance: false, usePace: false },
-            { id: 235, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 250, group_id: 6, useGPS: false, useDistance: false, usePace: false, shoesSupported: true, cadenceSupported: true },
-            { id: 251, group_id: 7, useGPS: false, useDistance: false, usePace: false },
-            { id: 254, group_id: 7, useGPS: false, useDistance: false, usePace: false },
-            { id: 257, group_id: 5, useGPS: true, useDistance: true, usePace: false },
-            { id: 258, group_id: 7, useGPS: false, useDistance: false, usePace: false },
-            { id: 259, group_id: 7, useGPS: false, useDistance: false, usePace: false },
-            { id: 263, group_id: 3, useGPS: false, useDistance: false, usePace: false },
-            { id: 264, group_id: 7, useGPS: true, useDistance: true, usePace: true },
-            { id: 266, group_id: 6, useGPS: true, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true },
-            { id: 267, group_id: 5, useGPS: false, useDistance: false, usePace: false },
-            { id: 271, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 275, group_id: 9, useGPS: true, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true, hasSteps: true },
-            { id: 284, group_id: 8, useGPS: false, useDistance: false, usePace: false },
-            { id: 336, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 468, group_id: 4, useGPS: false, useDistance: false, usePace: false },
-            { id: 469, group_id: 4, useGPS: false, useDistance: false, usePace: false },
-            { id: 471, group_id: 4, useGPS: false, useDistance: false, usePace: false },
-            { id: 472, group_id: 7, useGPS: false, useDistance: false, usePace: false },
-            { id: 473, group_id: 4, useGPS: false, useDistance: false, usePace: false },
-            { id: 498, group_id: 11, useGPS: false, useDistance: false, usePace: false },
-            { id: 499, group_id: 11, useGPS: false, useDistance: false, usePace: false },
-            { id: 500, group_id: 11, useGPS: false, useDistance: false, usePace: false },
-            { id: 546, group_id: 1, useGPS: false, useDistance: false, usePace: false },
-            { id: 548, group_id: 3, useGPS: false, useDistance: false, usePace: false },
-            { id: 564, group_id: 4, useGPS: false, useDistance: false, usePace: false },
-            { id: 598, group_id: 3, useGPS: false, useDistance: false, usePace: false },
-            { id: 622, group_id: 2, useGPS: false, useDistance: false, usePace: false },
-            { id: 627, group_id: 0, useGPS: false, useDistance: false, usePace: false },
-            { id: 633, group_id: 1, useGPS: true, useDistance: true, usePace: false },
-            { id: 637, group_id: 1, useGPS: true, useDistance: true, usePace: false },
-            { id: 704, group_id: 0, useGPS: false, useDistance: false, usePace: false },
-            { id: 708, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 710, group_id: 6, useGPS: true, useDistance: true, usePace: false, shoesSupported: true, cadenceSupported: true },
-            { id: 714, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 722, group_id: 11, useGPS: false, useDistance: false, usePace: false },
-            { id: 724, group_id: 11, useGPS: false, useDistance: false, usePace: false },
-            { id: 726, group_id: 11, useGPS: false, useDistance: false, usePace: false },
-            { id: 728, group_id: 3, useGPS: false, useDistance: false, usePace: false },
-            { id: 730, group_id: 3, useGPS: false, useDistance: false, usePace: false },
-            { id: 732, group_id: 5, useGPS: false, useDistance: false, usePace: false },
-            { id: 740, group_id: 4, useGPS: false, useDistance: false, usePace: false },
-            { id: 742, group_id: 2, useGPS: false, useDistance: false, usePace: false },
-            { id: 746, group_id: 2, useGPS: false, useDistance: false, usePace: false },
-            { id: 748, group_id: 2, useGPS: false, useDistance: false, usePace: false },
-            { id: 750, group_id: 2, useGPS: false, useDistance: false, usePace: false },
-            { id: 752, group_id: 2, useGPS: false, useDistance: false, usePace: false },
-            { id: 754, group_id: 0, useGPS: false, useDistance: false, usePace: false },
-            { id: 756, group_id: 6, useGPS: false, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true, coachingSupported: 1 },
-            { id: 758, group_id: 7, useGPS: false, useDistance: false, usePace: false },
-            { id: 760, group_id: 4, useGPS: false, useDistance: false, usePace: false },
-            { id: 762, group_id: 4, useGPS: false, useDistance: false, usePace: false },
-            { id: 764, group_id: 4, useGPS: false, useDistance: false, usePace: false },
-            { id: 768, group_id: 7, useGPS: true, useDistance: true, usePace: false },
-            { id: 813, group_id: 4, useGPS: false, useDistance: false, usePace: false },
-            { id: 819, group_id: 7, useGPS: false, useDistance: false, usePace: false },
-            { id: 825, group_id: 9, useGPS: true, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true, hasSteps: true },
-            { id: 827, group_id: 9, useGPS: true, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true, hasSteps: true },
-            { id: 829, group_id: 6, useGPS: true, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true },
-            { id: 831, group_id: 6, useGPS: true, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true },
-            { id: 845, group_id: 5, useGPS: false, useDistance: false, usePace: false },
-            { id: 855, group_id: 6, useGPS: true, useDistance: true, usePace: true, shoesSupported: true, cadenceSupported: true },
-            { id: 861, group_id: 3, useGPS: false, useDistance: false, usePace: false },
-            { id: 863, group_id: 5, useGPS: true, useDistance: true, usePace: false },
-            { id: 880, group_id: 4, useGPS: false, useDistance: false, usePace: false },
-            { id: 882, group_id: 0, useGPS: false, useDistance: false, usePace: false },
-            { id: 890, group_id: 3, useGPS: false, useDistance: false, usePace: false }
-        ]";
-
-        public List<Activity> activityGroupings { get; private set; }
-
-        public List<Activity> completeActivityList { get; private set; }
-
-        public List<Activity> popularActivityList { get; private set; }
-
-        private List<Activity> activityListByGroup { get; set; }
-
-        public List<Activity> GetActivitiesByGroupId(int group_id)
-        {
-            activityListByGroup = new List<Activity>();
-            activityListByGroup = completeActivityList.FindAll((Activity activity) => { return activity.group_id == group_id; });
-
-            return activityListByGroup;
-        }
-
-        private void GeneratePopularActivityList()
-        {
-            popularActivityList = new List<Activity>();
-
-            List<int> popularActivityIds = new List<int> { 16, 266, 208, 829, 197, 9, 204, 24, 36, 41 };
-            popularActivityIds.ForEach((int id) => { popularActivityList.Add(GetActivityById(id)); });
-        }
-
-        public ActivityRepository(string localizationJson)
-        {
-            completeActivityList = JsonConvert.DeserializeObject<List<Activity>>(activityListJson);
-            UpdateNames(localizationJson);
-            DefineGroups();
-            GeneratePopularActivityList();
-        }
-
-        public Activity GetActivityById(int id)
-        {
-            try
-            {
-                return completeActivityList.First((Activity activity) => activity.id == id);
-            } 
-            catch (Exception e)
-            {
-                Console.WriteLine($"Exception at finding activity with id {id}. Check if activity exists.");
-                Console.WriteLine(e.StackTrace);
-
-                return null;
-            }
-        }
-
-        private void DefineGroups()
-        {
-            activityGroupings = new List<Activity>();
-
-            activityGroupings.Add(new Activity() { group_id = 0, name = "Class" });
-            activityGroupings.Add(new Activity() { group_id = 1, name = "Cycling" });
-            activityGroupings.Add(new Activity() { group_id = 2, name = "Dance" });
-            activityGroupings.Add(new Activity() { group_id = 3, name = "Gym" });
-            activityGroupings.Add(new Activity() { group_id = 4, name = "Martial Arts" });
-            activityGroupings.Add(new Activity() { group_id = 6, name = "Run" });
-            activityGroupings.Add(new Activity() { group_id = 7, name = "Sport" });
-            activityGroupings.Add(new Activity() { group_id = 8, name = "Swim" });
-            activityGroupings.Add(new Activity() { group_id = 9, name = "Walk" });
-            activityGroupings.Add(new Activity() { group_id = 10, name = "Winter" });
-            activityGroupings.Add(new Activity() { group_id = 11, name = "Yoga" });
-            activityGroupings.Add(new Activity() { group_id = 5, name = "Other" });
-        }
-
-        // NOTE: Implementation regarding retrieval of names to be updated when proper localization implementation is done
-        private void UpdateNames(string localizationJson)
-        {
-            JObject localizedStrings = JObject.Parse(localizationJson);
-
-            const string activityKey = "activity_id";
-
-            completeActivityList.ForEach((Activity activity) => {
-                activity.name = localizedStrings[$"{activityKey}_{activity.id}"]?.ToString();
-            });
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Dispatcher.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Dispatcher.cs
deleted file mode 100755 (executable)
index f34ed69..0000000
+++ /dev/null
@@ -1,125 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace MapMyRun.Models
-{
-    public class Dispatcher : IDispatcher
-    {
-        IMessagePortHandler _messagePortHandler = null;
-        //private const string ServiceAppId = "org.tizen.example.MapMyRunService";
-        private const string ServiceAppId = "org.tizen.mapmyrunservice";
-        private const string LocalPort = "APP_PORT";
-        private const string RemotePort = "SERVICE_PORT";
-        public const string OperationKey = "operation";
-        public const string DataKey = "data";
-        public const string TransIdKey = "transID";
-        public const string ResponseStatusKey = "status";
-        private const bool SecureMode = false;
-        private uint TransIdIndex = 0;
-        private readonly Dictionary<string, Request> RequestCache = new Dictionary<string, Request>();
-        private readonly List<NotificationProvider> NotificationProviders = new List<NotificationProvider>();
-
-        public static Dispatcher Instance { get; private set; } = new Dispatcher();
-
-        private Dispatcher()
-        {
-        }
-
-        public void Initialize(IMessagePortHandler messagePortHandler)
-        {
-            _messagePortHandler = messagePortHandler;
-            _messagePortHandler.MessageReceived += OnReceiveMessage;
-            _messagePortHandler.Connect(LocalPort, ServiceAppId, RemotePort, SecureMode);
-        }
-
-        public string SendRequest(Request request)
-        {
-            request.TransID = TransIdIndex.ToString();
-            TransIdIndex++;
-            RequestCache.Add(request.TransID, request);
-            var dataSet = new Dictionary<string, string>
-            {
-                { OperationKey, ((int)request.Operation).ToString() },
-                { DataKey, request.Data },
-                { TransIdKey, request.TransID }
-            };
-
-            _messagePortHandler.Send(dataSet);
-            return request.TransID;
-        }
-
-        public void OnReceiveMessage(Dictionary<string, string> dataSet)
-        {
-            if (dataSet.TryGetValue(OperationKey, out string operation))
-            {
-                Console.WriteLine($"Receive Notification: {operation}");
-
-                try
-                {
-                    OperationType type = (OperationType)Int32.Parse(operation);
-                    if (dataSet.TryGetValue(DataKey, out string data))
-                        PostNotification(data, type);
-                }
-                catch
-                {
-                    Console.WriteLine("Invalid Operation");
-                }
-                return;
-            }
-
-            if (!dataSet.TryGetValue(TransIdKey, out string tid))
-            {
-                Console.WriteLine("Request for operation response is not found");
-                return;
-            }
-
-            if (RequestCache.TryGetValue(tid, out Request cachedRequest))
-            {
-                dataSet.TryGetValue(DataKey, out string data);
-                dataSet.TryGetValue(ResponseStatusKey, out string status);
-
-                if (!Enum.TryParse(status, out ResponseStatus responseStatus))
-                {
-                    responseStatus = ResponseStatus.Fail;
-                }
-
-                var response = new Response(tid, data, responseStatus);
-                cachedRequest.OnReceiveResponse(response);
-            }
-        }
-
-        void PostNotification(string data, OperationType type)
-        {
-            NotificationProvider notificationMonitor;
-            try
-            {
-                notificationMonitor = NotificationProviders.Find(x => x != null && x.Type == type);
-                notificationMonitor.PostNotification(data);
-            }
-            catch
-            {
-                Console.WriteLine($"Notification Monitor none: {type}");
-            }
-        }
-
-        public NotificationProvider Listen(OperationType type)
-        {
-            NotificationProvider notificationMonitor;
-            try
-            {
-                notificationMonitor = NotificationProviders.Find(x => x != null && x.Type == type);
-                Console.WriteLine($"Listen exist Notification Monitor {notificationMonitor.Type}");
-                return notificationMonitor;
-            }
-            catch
-            {
-                notificationMonitor = new NotificationProvider(type);
-                NotificationProviders.Add(notificationMonitor);
-                Console.WriteLine($"Create new Notification Monitor {notificationMonitor.Type}");
-                return notificationMonitor;
-            }
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/IAppLauncher.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/IAppLauncher.cs
deleted file mode 100755 (executable)
index c5096cb..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models
-{
-    public interface IAppLauncher
-    {
-        void Launch(string appId);
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/IDispatcher.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/IDispatcher.cs
deleted file mode 100755 (executable)
index a82bb26..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace MapMyRun.Models
-{
-    public interface IDispatcher
-    {
-        void Initialize(IMessagePortHandler messagePortHandler);
-
-        string SendRequest(Request request);
-
-        void OnReceiveMessage(Dictionary<string, string> data);
-
-        NotificationProvider Listen(OperationType type);
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/IMessagePortHandler.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/IMessagePortHandler.cs
deleted file mode 100755 (executable)
index 3d02121..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace MapMyRun.Models
-{
-    public interface IMessagePortHandler
-    {
-        void Connect(string localPort, string remoteAppId, string remotePort, bool secureMode);
-
-        void Disconnect();
-
-        void Send(Dictionary<string, string> data);
-
-        event Action<Dictionary<string, string>> MessageReceived;
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/IPermissionManager.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/IPermissionManager.cs
deleted file mode 100755 (executable)
index 13d806a..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models
-{
-    public enum PermissionType
-    {
-        Location,
-        Sensor
-    }
-
-    public delegate void OnPermissionResponse(bool isSuccess, bool isGranted);
-
-    public interface IPermissionManager
-    {
-        bool HasPermission(PermissionType permission);
-
-        void RequestPermission(PermissionType permission, OnPermissionResponse onResponse);
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/IPhoneService.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/IPhoneService.cs
deleted file mode 100755 (executable)
index aa9ba73..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models
-{
-    public interface IPhoneService
-    {
-        bool IsPlatformSwVersionSupported();
-
-        bool IsAuthenticated(Action<PhoneApplicationState> authenticatedCb);
-
-        void InitializeApp();
-
-        void KeepScreenOn();
-
-        void SetAppTerminateTimer(int sec);
-
-        void ClearAppTerminateTimer();
-
-        void OnAppStart();
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/IPlatformService.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/IPlatformService.cs
deleted file mode 100755 (executable)
index 817d8a2..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models
-{
-    public interface IPlatformService
-    {
-        void GetSwVersion(out string version);
-
-        void KeepScreenOn();
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Loading.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Loading.cs
deleted file mode 100755 (executable)
index 48ffa8a..0000000
+++ /dev/null
@@ -1,316 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using MapMyRun.Models.Settings;
-
-namespace MapMyRun.Models
-{
-    public enum LoadingState
-    {
-        Not_Started = 1,
-        Connect= 2,
-        Install = 3,
-        Auth = 4,
-        Initializers = 5,
-        Finished = 6,
-    }
-
-    public class Loading
-    {
-        LoadingState _state = LoadingState.Not_Started;
-        readonly string _serviceAppId ;
-        readonly IAppLauncher _appLauncher;
-        readonly IDispatcher _dispatcher;
-        readonly IPhoneService _phoneService;
-        readonly IMessagePortHandler _messagePortHandler;
-        readonly ISettingManager _settingManager;
-        NotificationObserver _logoutObserver;
-        public LoadingState State
-        {
-            get { return _state; }
-            set
-            {
-                _state = value;
-                LoadingStateChanged?.Invoke(_state);
-            }
-        }
-
-        public event Action<LoadingState> LoadingStateChanged;
-        public PhoneApplicationState phoneState = PhoneApplicationState.NotSupportedTizenVersion;
-
-        public Loading(IAppLauncher appLauncher, IMessagePortHandler messagePortHandler,
-            IDispatcher dispatcher, IPhoneService phoneService, ISettingManager settingManager, string serviceAppId)
-        {
-            _appLauncher = appLauncher;
-            _serviceAppId = serviceAppId;
-            _dispatcher = dispatcher;
-            _messagePortHandler = messagePortHandler;
-            _phoneService = phoneService;
-            _settingManager = settingManager;
-        }
-
-        public void StartLoading()
-        {
-            if (!_phoneService.IsPlatformSwVersionSupported())
-                return;
-
-            _phoneService.KeepScreenOn();
-
-            State = LoadingState.Connect;
-            if (!LaunchServiceApp())
-                return;
-
-            ConnectServiceApp();
-
-            //TODO : Move to converter
-            GetUserProfileForDisplayMeasurementSystem();
-
-            State = LoadingState.Auth;
-
-            _phoneService.IsAuthenticated((state) =>
-            {
-                _phoneService.InitializeApp();
-                UpdatePhoneState(state);
-            });
-        }
-
-        private void UpdatePhoneState(PhoneApplicationState state)
-        {
-            phoneState = state;
-            switch (state)
-            {
-                case PhoneApplicationState.NoInternetConnection:
-                case PhoneApplicationState.NoBTE:
-                case PhoneApplicationState.Timeout:
-                case PhoneApplicationState.NotInstalled:
-                case PhoneApplicationState.NotLoggedIn:
-                case PhoneApplicationState.NotSupportedTizenVersion:
-                    //this._isLoadingError = true;
-                    break;
-                case PhoneApplicationState.LoggedIn:
-                case PhoneApplicationState.Authenticated:
-                    StartInitialization();
-                    break;
-            }
-        }
-
-        private void StartInitialization()
-        {
-            State = LoadingState.Initializers;
-
-            InitializeLogoutEventHandler();
-
-            InitializeUserData();
-
-            InitializeConsent();
-
-            InitializeUserGear();
-
-            InitializeSettings();
-
-            State = LoadingState.Finished;
-
-            InitializeAfterLoading();
-        }
-
-        private void GetUserProfileForDisplayMeasurementSystem()
-        {
-            var request = new Request(OperationType.GetData, "{ \"action\":" + (int)DataActionType.GetUserProfile + " }");
-
-            request.ResponseReceived += (Response response) =>
-            {
-                //TODO : Measurement Converter
-                Console.WriteLine($"Get User Profile for Measurement System");
-            };
-            _dispatcher.SendRequest(request);
-        }
-
-        private void SendConsentOkReturn()
-        {
-            var request = new Request(OperationType.GetConsentStatus, "{ \"isUpToDate\": true }");
-
-            request.ResponseReceived += (Response response) =>
-            {
-                Console.WriteLine($"Get Consent Status");
-            };
-            _dispatcher.SendRequest(request);
-        }
-
-        private void SendGearStatusOkReturn()
-        {
-            var request = new Request(OperationType.GetUserGear, "{ \"isUpToDate\": true }");
-
-            request.ResponseReceived += (Response response) =>
-            {
-                Console.WriteLine($"Get Consent Status");
-            };
-            _dispatcher.SendRequest(request);
-        }
-
-        public void SendTestMessage()
-        {
-            var startRequest = new Request(OperationType.ApplicationInitialized, "");
-
-            startRequest.ResponseReceived += (Response response) =>
-            {
-                // TODO : Implement Cache Storage
-                //if (result && result.data)
-                //{
-                //    this.storageService.save(DEVICE_TYPE_STORAGE_KEY, result.data.deviceType);
-                //}
-                Console.WriteLine($"PhoneService: Initialize app request result");
-            };
-            _dispatcher.SendRequest(startRequest);
-        }
-
-        private bool LaunchServiceApp()
-        {
-            //Console.WriteLine($"Launching service app! {_serviceAppId}");
-            try
-            {
-                _appLauncher.Launch(_serviceAppId);
-            }
-            catch (Exception e)
-            {
-                //TODO : Handle Fail Case
-                Console.WriteLine($"Unable to launch app {_serviceAppId }");
-                Console.WriteLine(e.StackTrace);
-                return false;
-            }
-
-            Console.WriteLine($"Launching service app SUCCESS!");
-            return true;
-        }
-
-        private void ConnectServiceApp()
-        {
-            Console.WriteLine($"Connect to service app");
-            try
-            {
-                _dispatcher.Initialize(_messagePortHandler);
-            }
-            catch (Exception e)
-            {
-                //TODO : Handle Fail Case
-                Console.WriteLine(e.StackTrace);
-            }
-            State = LoadingState.Install;
-        }
-
-        public void InitializeLogoutEventHandler()
-        {
-            _logoutObserver = new NotificationObserver(OperationType.Logout);
-            _logoutObserver.NotificationReceived += (string data) =>
-            {
-                //TODO : Logout procedure
-                Console.WriteLine("Logout!");
-            };
-
-            var monitor = _dispatcher.Listen(OperationType.Logout);
-            _logoutObserver.Subscribe(monitor);
-        }
-
-        public void InitializeUserData()
-        {
-            var request = new Request(OperationType.GetData, "{ \"action\":" + (int)DataActionType.GetUpdatedUserProfile + " }");
-
-            request.ResponseReceived += (Response response) =>
-            {
-                //TODO : User Data Service
-                Console.WriteLine($"Get Updated User Profile");
-            };
-            _dispatcher.SendRequest(request);
-        }
-
-        public void InitializeConsent()
-        {
-            var request = new Request(OperationType.GetConsentStatus, "{ \"isUpToDate\": false }");
-
-            request.ResponseReceived += (Response response) =>
-            {
-                //TODO : Consent Fail Case
-                Console.WriteLine($"Get Consent Status");
-
-                SendConsentOkReturn();
-            };
-            _dispatcher.SendRequest(request);
-        }
-
-        public void InitializeUserGear()
-        {
-            var request = new Request(OperationType.GetUserGear, "{ \"isUpToDate\": false }");
-
-            request.ResponseReceived += (Response response) =>
-            {
-                Console.WriteLine($"Get User Gear Status");
-                SendGearStatusOkReturn();
-            };
-            _dispatcher.SendRequest(request);
-        }
-
-        public void InitializeSettings()
-        {
-            _settingManager.Initialize(() =>
-            {
-                GetWorkoutSettings();
-            });
-        }
-
-        private void GetWorkoutSettings()
-        {
-            var request = new Request(OperationType.GetWorkoutSettings, "");
-
-            request.ResponseReceived += (Response response) =>
-            {
-                Console.WriteLine($"Get Workout Settings");
-            };
-            _dispatcher.SendRequest(request);
-        }
-
-        public void InitializeAfterLoading()
-        {
-            _phoneService.OnAppStart();
-
-            InitializeSContext();
-
-            InitializeGpsAcquire();
-
-            InitializeTrainingPlan();
-        }
-
-        void InitializeSContext()
-        {
-            var request = new Request(OperationType.CheckSContext, "");
-
-            request.ResponseReceived += (Response response) =>
-            {
-                Console.WriteLine($"Get SContext Status");
-            };
-            _dispatcher.SendRequest(request);
-        }
-
-        void InitializeGpsAcquire()
-        {
-            var request = new Request(OperationType.StartGpsAcquire, "");
-
-            request.ResponseReceived += (Response response) =>
-            {
-                Console.WriteLine($"Start Gps Acquire");
-            };
-            _dispatcher.SendRequest(request);
-        }
-
-        void InitializeTrainingPlan()
-        {
-            var request = new Request(OperationType.GetTodayTrainingPlans, "");
-
-            request.ResponseReceived += (Response response) =>
-            {
-                Console.WriteLine($"Get Training Plans");
-            };
-            _dispatcher.SendRequest(request);
-        }
-
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/NotificationObserver.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/NotificationObserver.cs
deleted file mode 100755 (executable)
index d5b53a4..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models
-{
-    public class NotificationObserver : IObserver<string>
-    {
-        public OperationType Type { get; }
-        public event Action<string> NotificationReceived;
-        public event Action<Exception> NotificationErrorReceived;
-        IDisposable _cancellation;
-
-        public NotificationObserver(OperationType type)
-        {
-            Type = type;
-        }
-
-        public void Subscribe(NotificationProvider provider)
-        {
-            _cancellation = provider.Subscribe(this);
-        }
-
-        public void Unsubscribe()
-        {
-            _cancellation.Dispose();
-        }
-
-        public void OnCompleted()
-        {
-            Console.WriteLine($"Notification Observer Completed Type: {Type}");
-        }
-
-        public void OnError(Exception error)
-        {
-            NotificationErrorReceived(error);
-        }
-
-        public void OnNext(string value)
-        {
-            NotificationReceived(value);
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/NotificationProvider.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/NotificationProvider.cs
deleted file mode 100755 (executable)
index e3526e9..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models
-{
-    public class NotificationProvider : IObservable<string>
-    {
-        readonly List<IObserver<string>> observers;
-        public OperationType Type { get; }
-        public string Name { get; }
-
-        public NotificationProvider(OperationType type)
-        {
-            Type = type;
-            observers = new List<IObserver<string>>();
-        }
-
-        public void PostNotification(string data)
-        {
-            foreach (var observer in observers)
-                observer.OnNext(data);
-        }
-
-        public IDisposable Subscribe(IObserver<string> observer)
-        {
-            if (!observers.Contains(observer))
-                observers.Add(observer);
-            return new Unsubscriber(observers, observer);
-        }
-
-        private class Unsubscriber : IDisposable
-        {
-            private readonly List<IObserver<string>> _observers;
-            private readonly IObserver<string> _observer;
-
-            public Unsubscriber(List<IObserver<string>> observers, IObserver<string> observer)
-            {
-                _observers = observers;
-                _observer = observer;
-            }
-
-            public void Dispose()
-            {
-                if (_observer != null && _observers.Contains(_observer))
-                    _observers.Remove(_observer);
-            }
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/PermissionManager.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/PermissionManager.cs
deleted file mode 100755 (executable)
index f46adcc..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models
-{
-    public class PermissionManager : IPermissionManager
-    {
-        const string LocationPrivilege = "http://tizen.org/privilege/location";
-        const string SensorPrivilege = "http://tizen.org/privilege/healthinfo";
-
-        bool _isLocationPermitted = false;
-        bool _isSensorPermitted = false;
-        IDispatcher _dispatcher;
-
-        public PermissionManager(IDispatcher dispatcher)
-        {
-            _dispatcher = dispatcher;
-        }
-
-        public bool HasPermission(PermissionType permission)
-        {
-            if (permission == PermissionType.Location)
-                return _isLocationPermitted;
-            else if (permission == PermissionType.Sensor)
-                return _isSensorPermitted;
-            else
-                return false;
-        }
-
-        void StoreCache(PermissionType permission, bool isPermitted)
-        {
-            if (permission == PermissionType.Location)
-                _isLocationPermitted = isPermitted;
-            else if (permission == PermissionType.Sensor)
-                _isSensorPermitted = isPermitted;
-        }
-
-        public void RequestPermission(PermissionType permission, OnPermissionResponse onResponse)
-        {
-            var privilege = "";
-            if (permission == PermissionType.Location)
-            {
-                privilege = LocationPrivilege;
-            }
-            else if (permission == PermissionType.Sensor)
-            {
-                privilege = SensorPrivilege;
-            }
-            else
-            {
-                onResponse(false, false);
-                return;
-            }
-
-            var request = new Request(OperationType.RequestPermission, privilege);
-
-            request.ResponseReceived += (Response response) =>
-            {
-                Console.WriteLine($"Get Request Permission Response {response.Data}");
-                if (response.Status != ResponseStatus.Success)
-                {
-                    onResponse(false, false);
-                    return;
-                }
-
-                if (response.Data.Equals("true"))
-                {
-                    StoreCache(permission, true);
-                    onResponse(true, true);
-                }
-                else
-                {
-                    StoreCache(permission, false);
-                    onResponse(true, false);
-                }
-            };
-            _dispatcher.SendRequest(request);
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/PhoneService.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/PhoneService.cs
deleted file mode 100755 (executable)
index 6773b52..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models
-{
-    public enum PhoneApplicationState
-    {
-        NotSupportedTizenVersion,
-        LoggedIn,
-        Authenticated,
-        NoBTE,
-        NoInternetConnection,
-        Timeout,
-        NotInstalled,
-        NotLoggedIn,
-        NotAuthenticated,
-        NoConsentAgreement,
-        WaitingForConsentAcceptance
-    }
-
-    public class PhoneService : IPhoneService
-    {
-        private const string SwVersionPrefix = "R360";
-        private const string SwVersionSuffix = "BPK5";
-        readonly IPlatformService _platformService;
-        readonly IDispatcher _dispatcher;
-        public PhoneService(IDispatcher dispatcher, IPlatformService platformService)
-        {
-            _platformService = platformService;
-            _dispatcher = dispatcher;
-        }
-
-        public bool IsPlatformSwVersionSupported()
-        {
-            _platformService.GetSwVersion(out string version);
-
-            if (version.StartsWith(SwVersionPrefix))
-            {
-                if (string.Compare(version.Substring(version.Length - 4), SwVersionSuffix) < 0)
-                    return false;
-            }
-
-            return true;
-        }
-
-        public bool IsAuthenticated(Action<PhoneApplicationState> authenticatedCb)
-        {
-            //TODO : Check cache
-            //TODO : Set Timer 120 sec
-
-            SendIsAuthenticatedRequest(authenticatedCb);
-            return true;
-        }
-
-        public void InitializeApp()
-        {
-            var request = new Request(OperationType.ApplicationInitialized, "");
-
-            request.ResponseReceived += (Response response) =>
-            {
-                // TODO : Implement Cache Storage to save watch type
-                //if (result && result.data)
-                //{
-                //    this.storageService.save(DEVICE_TYPE_STORAGE_KEY, result.data.deviceType);
-                //}
-                Console.WriteLine($"Send UI App Initialization signal");
-            };
-            _dispatcher.SendRequest(request);
-        }
-
-        public void KeepScreenOn()
-        {
-            _platformService.KeepScreenOn();
-        }
-
-        public void SetAppTerminateTimer(int sec)
-        {
-        }
-
-        public void ClearAppTerminateTimer()
-        {
-        }
-
-        private void SendIsAuthenticatedRequest(Action<PhoneApplicationState> authenticatedCb)
-        {
-            var request = new Request(OperationType.CheckIsAuthenticated, "{ \"authenticate\": false }");
-
-            request.ResponseReceived += (Response response) =>
-            {
-                //TODO : Cache to keep auth status
-                //TODO : Check response data and Fail case
-                Console.WriteLine($"Get authenticate status");
-
-                authenticatedCb(PhoneApplicationState.LoggedIn);
-            };
-            _dispatcher.SendRequest(request);
-        }
-
-        public void OnAppStart()
-        {
-            var request = new Request(OperationType.ApplicationStarted, "");
-
-            request.ResponseReceived += (Response response) =>
-            {
-                Console.WriteLine("App Start!");
-            };
-            _dispatcher.SendRequest(request);
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Request.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Request.cs
deleted file mode 100755 (executable)
index aed16bd..0000000
+++ /dev/null
@@ -1,129 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace MapMyRun.Models
-{
-    public enum OperationType
-    {
-        PrepareWKO = 1,
-        StartWKO,
-        PauseWKO,
-        ResumeWKO,
-        FinishWKO,
-        SaveWKO,
-        DiscardWKO,
-        CheckSContext,
-        CheckIsLoggedIn,
-        NavigateToLogin,
-        NavigateToProfile,
-        CheckIsAuthenticated,
-        CheckIsInstalled,
-        GetData,
-        UpdateNutritionPreference,
-        GetSleepScore,
-        ExitApp,
-        MFPGetCurrentSteps,
-        MFPAddEnergy,
-        MFPAddWater,
-        GetSettings,
-        SetSettings,
-        GetWorkoutSettings,
-        SetWorkoutSettings,
-        UnfinishedWorkoutRestore,
-        RestoreWKO,
-        StartGpsAcquire,
-        StopGpsAcquire,
-        CheckNetworkConnection,
-        ChangeNutritionSource,
-        GetConsentStatus,
-        GetUserGear,
-        ConnectUserGear,
-        DisconnectUserGear,
-        RequestPermission,
-        GetTodayTrainingPlans,
-        // More operations to be here
-        OperationMax = GetTodayTrainingPlans,
-        // Notification Type Start
-        WkoDataChanged,
-        HRData,
-        AggregatesData,
-        HRZone,
-        IntensityChanged,
-        GetDiarySummary,
-        GetCachedDiarySummary,
-        StepsChanged,
-        SapInitialized,
-        ApplicationInitialized,
-        ApplicationStarted,
-        NoBluetoothConnection,
-        WristUpEvent,
-        MfpDataUpdated,
-        SapRemoteServiceNotFound,
-        WillpowerChanged,
-        EnergyChanged,
-        SpeedChanged,
-        GpsStateChanged,
-        ShoesStateChanged,
-        MeasurementPreferenceChanged,
-        NutritionPreferencesUpdated,
-        SleepScoreReceived,
-        WorkoutSyncSuccess,
-        WorkoutSyncFailed,
-        UserProfileUpdated,
-        LocationChanged,
-        Logout,
-        SettingsChanged,
-        WorkoutSettingsChanged,
-        SapConnectionTimeout,
-        LangChanged,
-        HapticFeedback,
-        NutritionSourceSupportChanged,
-        CadenceChanged,
-        StrideLengthChanged,
-        RTFCUpdate,
-        RTFCNotification,
-        RTSCUpdate,
-        RTSCNotification,
-        GoalUpdate,
-        GoalCompleted,
-        AppStateForeground,
-        AppStateBackground,
-        // More operations to be here
-        NotificationTypeMax = AppStateBackground
-    }
-
-    public enum DataActionType
-    {
-        None = 0,
-        GetUserProfile,
-        GetUpdatedUserProfile,
-        PostWorkout,
-        GetUserGoals,
-        GetUpToDateUserGoals,
-        GetHrZones,
-        GetChallenges,
-        GetChallengeDetails,
-        GetWorkouts
-    }
-
-    public class Request
-    {
-        public OperationType Operation { get; }
-        public string Data { get; }
-        public event Action<Response> ResponseReceived;
-        public string TransID { get; set; }
-
-        public Request (OperationType operation, string data)
-        {
-            Operation = operation;
-            Data = data;
-        }
-
-        public void OnReceiveResponse(Response response)
-        {
-            ResponseReceived?.Invoke(response);
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Response.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Response.cs
deleted file mode 100755 (executable)
index 3050345..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace MapMyRun.Models
-{
-    public enum ResponseStatus
-    {
-        Success = 0,
-        Unsupported,
-        Fail
-    }
-
-    public class Response
-    {
-        public string Data { get; }
-        public string TransID { get; }
-        public ResponseStatus Status { get; }
-
-        public Response(string tid, string data, ResponseStatus status)
-        {
-            TransID = tid;
-            Data = data;
-            Status = status;
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Settings/ISettingManager.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Settings/ISettingManager.cs
deleted file mode 100755 (executable)
index 02c9d39..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models.Settings
-{
-    public interface ISettingManager
-    {
-        void Initialize(Action next);
-
-        event Action<GPSState> GpsStateChanged;
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Settings/SettingManager.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Settings/SettingManager.cs
deleted file mode 100755 (executable)
index b60fb96..0000000
+++ /dev/null
@@ -1,168 +0,0 @@
-using Newtonsoft.Json;
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models.Settings
-{
-    public enum GPSState
-    {
-        Off,
-        Ready,
-        DisabledForActivity,
-        Acquiring,
-        Acquired,
-        Error
-    }
-
-    public class SettingManager : ISettingManager
-    {
-        readonly IDispatcher _dispatcher;
-        public event Action<GPSState> GpsStateChanged;
-        NotificationObserver _gpsStateObserver;
-        bool isGpsEnabled = false;
-
-        private GPSState _gpsState = GPSState.Off;
-        public GPSState GpsState
-        {
-            get
-            {
-                if (!isGpsEnabled)
-                {
-                    return GPSState.Off;
-                }
-                else
-                {
-                    return _gpsState;
-                }
-            }
-            set
-            {
-                if (_gpsState == value) 
-                    return;
-                if (!isGpsEnabled)
-                {
-                    _gpsState = GPSState.Off;
-                } else
-                {
-                    _gpsState = value;
-                }
-
-                GpsStateChanged?.Invoke(_gpsState);
-            }
-        }
-
-        public SettingManager(IDispatcher dispatcher)
-        {
-            _dispatcher = dispatcher;
-        }
-
-        public void Initialize(Action next)
-        {
-            _gpsStateObserver = new NotificationObserver(OperationType.GpsStateChanged);
-            _gpsStateObserver.NotificationReceived += (string data) =>
-            {
-                Console.WriteLine("Gps Changed Received");
-                try
-                {
-                    if (Int32.Parse(data) == 0)
-                        GpsState = GPSState.Acquiring;
-                    else
-                        GpsState = GPSState.Acquired;
-                }
-                catch
-                {
-                    Console.WriteLine("Fail to parse notification");
-                }
-            };
-
-            var monitor = _dispatcher.Listen(OperationType.GpsStateChanged);
-            _gpsStateObserver.Subscribe(monitor);
-
-            var request = new Request(OperationType.GetSettings, "");
-            request.ResponseReceived += (Response response) =>
-            {
-                Console.WriteLine($"Receive Get Settings");
-                if (response.Status == ResponseStatus.Success)
-                    OnReceiveSettingsDataString(response.Data);
-
-                next?.Invoke();
-            };
-            _dispatcher.SendRequest(request);
-        }
-
-        void OnReceiveSettingsDataString(string jsonString)
-        {
-            SettingsData settingsData = ParseSettingsDataJson(jsonString);
-            if (settingsData == null)
-                return;
-
-            if (settingsData.gps != null)
-            {
-                if (settingsData.gps.isEnabled && settingsData.gps.systemValue)
-                {
-                    isGpsEnabled = true;
-                    GpsState = GPSState.Ready;
-                }
-                else
-                {
-                    isGpsEnabled = false;
-                    GpsState = GPSState.Off;
-                }
-            }
-        }
-
-        public SettingsData ParseSettingsDataJson(string jsonString)
-        {
-            SettingsData settingsData= null;
-            try
-            {
-                settingsData = JsonConvert.DeserializeObject<SettingsData>(jsonString);
-            }
-            catch
-            {
-                Console.WriteLine($"Settings DATA JSON Parse Fail: {jsonString}");
-            }
-            return settingsData;
-        }
-
-        private void StartGpsAcquire()
-        {
-            var request = new Request(OperationType.StartGpsAcquire, "");
-            request.ResponseReceived += (Response response) =>
-            {
-                if (response.Status == ResponseStatus.Success)
-                {
-                    GpsState = GPSState.Acquiring;
-                }
-            };
-            _dispatcher.SendRequest(request);
-        }
-
-        private void StopGpsAcquire()
-        {
-            var request = new Request(OperationType.StopGpsAcquire, "");
-            request.ResponseReceived += (Response response) =>
-            {
-                if (response.Status == ResponseStatus.Success)
-                {
-                    GpsState = GPSState.Off;
-                }
-            };
-            _dispatcher.SendRequest(request);
-        }
-
-        public void ToggleGPS(bool gps)
-        {
-            isGpsEnabled = gps;
-
-            if (!isGpsEnabled)
-            {
-                StopGpsAcquire();
-            } else
-            {
-                StartGpsAcquire();
-            }
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Settings/SettingsData.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Settings/SettingsData.cs
deleted file mode 100755 (executable)
index 222d728..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models.Settings
-{
-    public class SettingsData
-    {
-        public GpsSettingData gps { get; set; }
-        public DebugSettingData debug { get; set; }
-        public ScreenSettingData screenTimeout { get; set; }
-    }
-
-    public class GpsSettingData
-    {
-        public bool systemValue { get; set; }
-        public bool isEnabled { get; set; }
-        public bool isSupported { get; set; }
-    }
-
-    public class DebugSettingData
-    {
-        public FileLogger fileLogger { get; set; }
-        public bool isEnabled { get; set; }
-        public bool isSupported { get; set; }
-    }
-
-    public class ScreenSettingData
-    {
-        public int value { get; set; }
-        public bool isEnabled { get; set; }
-        public bool isSupported { get; set; }
-    }
-
-    public class FileLogger
-    {
-        public bool isEnabled { get; set; }
-        public bool isSupported { get; set; }
-    }
-}
\ No newline at end of file
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/AverageCadence.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/AverageCadence.cs
deleted file mode 100755 (executable)
index 82d2c46..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models.Workout.Items
-{
-    class AverageCadence : IWorkoutItem
-    {
-        string _value = "--";
-        public event Action<string> ValueChanged;
-        public string Value
-        {
-            get
-            {
-                return _value;
-            }
-        }
-
-        public WorkoutItemType GetWorkoutItemType()
-        {
-            return WorkoutItemType.AvgCadence;
-        }
-
-        public string GetEmptyValue()
-        {
-            return "--";
-        }
-
-        public string GetImage()
-        {
-            return "/assets/workout.cadence.png";
-        }
-
-        public string GetLabel(WorkoutItemLabelType type)
-        {
-            switch (type)
-            {
-                case WorkoutItemLabelType.GeneralLabel:
-                default:
-                    return "label_cadence_avg";
-                case WorkoutItemLabelType.ShortLabel:
-                    return "label_cadence_avg_short";
-                case WorkoutItemLabelType.MediumLabel:
-                    return "label_cadence_avg_medium";
-                case WorkoutItemLabelType.LongLabel:
-                    return "label_cadence_avg_long";
-            }
-        }
-
-        public string GetLabelStyle()
-        {
-            return "";
-        }
-
-        public string GetStatsStyle()
-        {
-            return "";
-        }
-
-        public string GetUnit()
-        {
-            return "workout_steps_per_min";
-        }
-
-        public void OnDataReceived(WorkoutData data)
-        {
-            if (data.aggregates == null || data.aggregates.cadence_avg <= 0)
-                return;
-
-            var newValue = ConvertValue(data.aggregates.cadence_avg);
-            if (_value.Equals(newValue))
-                return;
-
-            _value = newValue;
-            ValueChanged?.Invoke(_value);
-            Console.WriteLine($"AverageCadence Data Changed: {_value}");
-        }
-
-        string ConvertValue(float value)
-        {
-            var convertedCadence = value;
-            var readableValue = convertedCadence > 0 ? convertedCadence.ToString() : "--";
-            return readableValue;
-        }
-
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/AverageHr.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/AverageHr.cs
deleted file mode 100755 (executable)
index a77cfb2..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models.Workout.Items
-{
-    class AverageHr : IWorkoutItem
-    {
-        string _value = "--";
-        public event Action<string> ValueChanged;
-        public string Value
-        {
-            get
-            {
-                return _value;
-            }
-        }
-
-        public WorkoutItemType GetWorkoutItemType()
-        {
-            return WorkoutItemType.AvgHR;
-        }
-
-        public string GetEmptyValue()
-        {
-            return "--";
-        }
-
-        public string GetImage()
-        {
-            return "/assets/workout.hr.png";
-        }
-
-        public string GetLabel(WorkoutItemLabelType type)
-        {
-            switch (type)
-            {
-                case WorkoutItemLabelType.GeneralLabel:
-                default:
-                    return "AVG HR";
-                case WorkoutItemLabelType.ShortLabel:
-                    return "AVG HR";
-                case WorkoutItemLabelType.MediumLabel:
-                    return "AVG HR";
-                case WorkoutItemLabelType.LongLabel:
-                    return "AVG HEART RATE(BPM)";
-            }
-        }
-
-        public string GetLabelStyle()
-        {
-            return "";
-        }
-
-        public string GetStatsStyle()
-        {
-            return "";
-        }
-
-        public string GetUnit()
-        {
-            return "bpm";
-        }
-
-        public void OnDataReceived(WorkoutData data)
-        {
-            var newValue = data.hrData.avg.ToString();
-            if (_value.Equals(newValue))
-                return;
-
-            _value = newValue;
-            ValueChanged?.Invoke(_value);
-            Console.WriteLine($"AverageHr Data Changed: {_value}");
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/AveragePace.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/AveragePace.cs
deleted file mode 100755 (executable)
index 7be76ee..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models.Workout.Items
-{
-    class AveragePace : IWorkoutItem
-    {
-        string _value = "--";
-        const int MAX_PACE = 3600;
-        public event Action<string> ValueChanged;
-        public string Value
-        {
-            get
-            {
-                return _value;
-            }
-        }
-
-        public WorkoutItemType GetWorkoutItemType()
-        {
-            return WorkoutItemType.AvgPace;
-        }
-
-        public string GetEmptyValue()
-        {
-            return "--";
-        }
-
-        public string GetImage()
-        {
-            return "/assets/workout.pace.png";
-        }
-
-        public string GetLabel(WorkoutItemLabelType type)
-        {
-            switch (type)
-            {
-                case WorkoutItemLabelType.GeneralLabel:
-                default:
-                    return "label_pace_avg";
-                case WorkoutItemLabelType.ShortLabel:
-                    return "label_pace_avg_short";
-                case WorkoutItemLabelType.MediumLabel:
-                    return "label_pace_avg_medium";
-                case WorkoutItemLabelType.LongLabel:
-                    return "label_pace_avg_long";
-            }
-        }
-
-        public string GetLabelStyle()
-        {
-            return "";
-        }
-
-        public string GetStatsStyle()
-        {
-            return "";
-        }
-
-        public string GetUnit()
-        {
-            return "workout_min_per_km";
-        }
-
-        public void OnDataReceived(WorkoutData data)
-        {
-            if (data.aggregates == null || data.aggregates.active_time_total < 0 || data.aggregates.distance_total < 0)
-                return;
-
-            var newValue = ConvertValue(data.aggregates.active_time_total / data.aggregates.distance_total);
-            if (_value.Equals(newValue))
-                return;
-
-            _value = newValue;
-            ValueChanged?.Invoke(_value);
-            Console.WriteLine($"AveragePace Data Changed: {_value}");
-        }
-
-        string ConvertValue(float value)
-        {
-            var convertedPace = Math.Round(value);
-            var readableValue = convertedPace > 0 && convertedPace <= MAX_PACE ? convertedPace.ToString() : "--";
-            return readableValue;
-        }
-
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/AverageSpeed.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/AverageSpeed.cs
deleted file mode 100755 (executable)
index e8767ec..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models.Workout.Items
-{
-    class AverageSpeed : IWorkoutItem
-    {
-        string _value = "--";
-        public event Action<string> ValueChanged;
-        public string Value
-        {
-            get
-            {
-                return _value;
-            }
-        }
-
-        public WorkoutItemType GetWorkoutItemType()
-        {
-            return WorkoutItemType.AvgSpeed;
-        }
-
-        public string GetEmptyValue()
-        {
-            return "--";
-        }
-
-        public string GetImage()
-        {
-            return "/assets/workout.pace.png";
-        }
-
-        public string GetLabel(WorkoutItemLabelType type)
-        {
-            switch (type)
-            {
-                case WorkoutItemLabelType.GeneralLabel:
-                default:
-                    return "label_speed_avg";
-                case WorkoutItemLabelType.ShortLabel:
-                    return "label_speed_avg_short";
-                case WorkoutItemLabelType.MediumLabel:
-                    return "label_speed_avg_medium";
-                case WorkoutItemLabelType.LongLabel:
-                    return "label_speed_avg_long";
-            }
-        }
-
-        public string GetLabelStyle()
-        {
-            return "";
-        }
-
-        public string GetStatsStyle()
-        {
-            return "";
-        }
-
-        public string GetUnit()
-        {
-            return "workout_km_per_hr";
-        }
-
-        public void OnDataReceived(WorkoutData data)
-        {
-            if (data.aggregates == null || data.aggregates.active_time_total < 0 || data.aggregates.distance_total < 0)
-                return;
-
-            var newValue = ConvertValue(data.aggregates.distance_total / data.aggregates.active_time_total);
-            if (_value.Equals(newValue))
-                return;
-
-            _value = newValue;
-            ValueChanged?.Invoke(_value);
-            Console.WriteLine($"AverageSpeed Data Changed: {_value}");
-        }
-
-        string ConvertValue(float value)
-        {
-            var convertedSpeed = Math.Round(value * 100) / 100;
-            var readableValue = convertedSpeed > 0 ? convertedSpeed.ToString() : "--";
-            return readableValue;
-        }
-
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/Calories.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/Calories.cs
deleted file mode 100755 (executable)
index 37b5dab..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models.Workout.Items
-{
-    class Calories : IWorkoutItem
-    {
-        string _value = "--";
-        public event Action<string> ValueChanged;
-
-        public WorkoutItemType GetWorkoutItemType()
-        {
-            return WorkoutItemType.Calories;
-        }
-
-        public string GetEmptyValue()
-        {
-            return "--";
-        }
-
-        public string GetImage()
-        {
-            return "/assets/workout.calories.png";
-        }
-
-        public string GetLabel(WorkoutItemLabelType type)
-        {
-            switch (type)
-            {
-                case WorkoutItemLabelType.GeneralLabel:
-                default:
-                    return "Calories";
-                case WorkoutItemLabelType.ShortLabel:
-                    return "Calories";
-                case WorkoutItemLabelType.MediumLabel:
-                    return "Calories";
-                case WorkoutItemLabelType.LongLabel:
-                    return "Calories";
-            }
-        }
-
-        public string GetLabelStyle()
-        {
-            return "";
-        }
-
-        public string GetStatsStyle()
-        {
-            return "";
-        }
-
-        public string GetUnit()
-        {
-            return "";
-        }
-
-        public string GetValue()
-        {
-            return _value;
-        }
-
-        public void OnDataReceived(WorkoutData data)
-        {
-            if (_value.Equals(data.calories))
-                return;
-
-            _value = data.calories;
-            ValueChanged?.Invoke(_value);
-            Console.WriteLine($"Calories Data Changed: {_value}");
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/CurrentCadence.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/CurrentCadence.cs
deleted file mode 100755 (executable)
index 8a8d848..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models.Workout.Items
-{
-    class CurrentCadence : IWorkoutItem
-    {
-        string _value = "--";
-        public event Action<string> ValueChanged;
-        public string Value
-        {
-            get
-            {
-                return _value;
-            }
-        }
-
-        public WorkoutItemType GetWorkoutItemType()
-        {
-            return WorkoutItemType.Cadence;
-        }
-
-        public string GetEmptyValue()
-        {
-            return "--";
-        }
-
-        public string GetImage()
-        {
-            return "/assets/workout.cadence.png";
-        }
-
-        public string GetLabel(WorkoutItemLabelType type)
-        {
-            switch (type)
-            {
-                case WorkoutItemLabelType.GeneralLabel:
-                default:
-                    return "CADENCE";
-                case WorkoutItemLabelType.ShortLabel:
-                    return "CADENCE";
-                case WorkoutItemLabelType.MediumLabel:
-                    return "CADENCE";
-                case WorkoutItemLabelType.LongLabel:
-                    return "CADENCE(SPM)";
-            }
-        }
-
-        public string GetLabelStyle()
-        {
-            return "";
-        }
-
-        public string GetStatsStyle()
-        {
-            return "";
-        }
-
-        public string GetUnit()
-        {
-            return "workout_steps_per_min";
-        }
-
-        public void OnDataReceived(WorkoutData data)
-        {
-            if (data.cadence == null || data.cadence.latest < 0)
-                return;
-
-            var newValue = ConvertValue(data.cadence.latest);
-            if (_value.Equals(newValue))
-                return;
-
-            _value = newValue;
-            ValueChanged?.Invoke(_value);
-            Console.WriteLine($"CurrentCadence Data Changed: {_value}");
-        }
-
-        string ConvertValue(float value)
-        {
-            var convertedCadence = value;
-            var readableValue = convertedCadence > 0 ? convertedCadence.ToString() : "--";
-            return readableValue;
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/CurrentHr.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/CurrentHr.cs
deleted file mode 100755 (executable)
index eae0b9c..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models.Workout.Items
-{
-    class CurrentHr : IWorkoutItem
-    {
-        string _value = "--";
-        public event Action<string> ValueChanged;
-        public string Value
-        {
-            get
-            {
-                return _value;
-            }
-        }
-
-        public WorkoutItemType GetWorkoutItemType()
-        {
-            return WorkoutItemType.CurrentHR;
-        }
-
-        public string GetEmptyValue()
-        {
-            return "--";
-        }
-
-        public string GetImage()
-        {
-            return "/assets/workout.hr.png";
-        }
-
-        public string GetLabel(WorkoutItemLabelType type)
-        {
-            //TODO : i18n
-            switch (type)
-            {
-                case WorkoutItemLabelType.GeneralLabel:
-                default:
-                    return "HR";
-                case WorkoutItemLabelType.ShortLabel:
-                    return "HR";
-                case WorkoutItemLabelType.MediumLabel:
-                    return "HR";
-                case WorkoutItemLabelType.LongLabel:
-                    return "HEART RATE(BPM)";
-            }
-        }
-
-        public string GetLabelStyle()
-        {
-            return "";
-        }
-
-        public string GetStatsStyle()
-        {
-            return "";
-        }
-
-        public string GetUnit()
-        {
-            return "bpm";
-        }
-
-        public void OnDataReceived(WorkoutData data)
-        {
-            var newValue = data.hrData.latest.ToString();
-            if (_value.Equals(newValue))
-                return;
-
-            _value = newValue;
-            ValueChanged?.Invoke(_value);
-            Console.WriteLine($"CurrentHr Data Changed: {_value}");
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/CurrentPace.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/CurrentPace.cs
deleted file mode 100755 (executable)
index 0f96530..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models.Workout.Items
-{
-    class CurrentPace : IWorkoutItem
-    {
-        string _value = "--";
-        const int MAX_PACE = 3600;
-        public event Action<string> ValueChanged;
-        public string Value
-        {
-            get
-            {
-                return _value;
-            }
-        }
-
-        public WorkoutItemType GetWorkoutItemType()
-        {
-            return WorkoutItemType.Pace;
-        }
-
-        public string GetEmptyValue()
-        {
-            return "--";
-        }
-
-        public string GetImage()
-        {
-            return "/assets/workout.pace.png";
-        }
-
-        public string GetLabel(WorkoutItemLabelType type)
-        {
-            switch (type)
-            {
-                case WorkoutItemLabelType.GeneralLabel:
-                default:
-                    return "PACE";
-                case WorkoutItemLabelType.ShortLabel:
-                    return "PACE";
-                case WorkoutItemLabelType.MediumLabel:
-                    return "PACE";
-                case WorkoutItemLabelType.LongLabel:
-                    return "PACE(MIN/KM)";
-            }
-        }
-
-        public string GetLabelStyle()
-        {
-            return "";
-        }
-
-        public string GetStatsStyle()
-        {
-            return "";
-        }
-
-        public string GetUnit()
-        {
-            return "workout_min_per_km";
-        }
-
-        public void OnDataReceived(WorkoutData data)
-        {
-            if (data.speed == null || data.speed.latest < 0)
-                return;
-
-            var newValue = ConvertValue(data.speed.latest);
-            if (_value.Equals(newValue))
-                return;
-
-            _value = newValue;
-            ValueChanged?.Invoke(_value);
-            Console.WriteLine($"CurrentPace Data Changed: {_value}");
-        }
-
-        string ConvertValue(float value)
-        {
-            var convertedPace = Math.Round(value);
-            var readableValue = convertedPace > 0 && convertedPace <= MAX_PACE ? convertedPace.ToString() : "--";
-            return readableValue;
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/CurrentSpeed.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/CurrentSpeed.cs
deleted file mode 100755 (executable)
index f8a4014..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models.Workout.Items
-{
-    class CurrentSpeed : IWorkoutItem
-    {
-        string _value = "--";
-        public event Action<string> ValueChanged;
-        public string Value
-        {
-            get
-            {
-                return _value;
-            }
-        }
-
-        public WorkoutItemType GetWorkoutItemType()
-        {
-            return WorkoutItemType.Speed;
-        }
-
-        public string GetEmptyValue()
-        {
-            return "--";
-        }
-
-        public string GetImage()
-        {
-            return "/assets/workout.pace.png";
-        }
-
-        public string GetLabel(WorkoutItemLabelType type)
-        {
-            switch (type)
-            {
-                case WorkoutItemLabelType.GeneralLabel:
-                default:
-                    return "label_speed";
-                case WorkoutItemLabelType.ShortLabel:
-                    return "label_speed_short";
-                case WorkoutItemLabelType.MediumLabel:
-                    return "label_speed_medium";
-                case WorkoutItemLabelType.LongLabel:
-                    return "label_speed_long";
-            }
-        }
-
-        public string GetLabelStyle()
-        {
-            return "";
-        }
-
-        public string GetStatsStyle()
-        {
-            return "";
-        }
-
-        public string GetUnit()
-        {
-            return "workout_km_per_hr";
-        }
-
-        public void OnDataReceived(WorkoutData data)
-        {
-            if (data.speed.latest < 0)
-                return;
-
-            var newValue = ConvertValue(data.speed.latest);
-            if (_value.Equals(newValue))
-                return;
-
-            _value = newValue;
-            ValueChanged?.Invoke(_value);
-            Console.WriteLine($"CurrentSpeed Data Changed: {_value}");
-        }
-
-        string ConvertValue(float value)
-        {
-            var convertedSpeed = Math.Round(value * 100) / 100;
-            var readableValue = convertedSpeed > 0 ? convertedSpeed.ToString() : "--";
-            return readableValue;
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/Distance.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/Distance.cs
deleted file mode 100755 (executable)
index 0e42071..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models.Workout.Items
-{
-    class Distance : IWorkoutItem
-    {
-        string _value = "--";
-        public event Action<string> ValueChanged;
-        public string Value
-        {
-            get
-            {
-                return _value;
-            }
-        }
-
-        public WorkoutItemType GetWorkoutItemType()
-        {
-            return WorkoutItemType.Distance;
-        }
-
-        public string GetEmptyValue()
-        {
-            return "--";
-        }
-
-        public string GetImage()
-        {
-            return "/assets/workout.distance.png";
-        }
-
-        public string GetLabel(WorkoutItemLabelType type)
-        {
-            switch (type)
-            {
-                case WorkoutItemLabelType.GeneralLabel:
-                default:
-                    return "DISTANCE";
-                case WorkoutItemLabelType.ShortLabel:
-                    return "DISTANCE";
-                case WorkoutItemLabelType.MediumLabel:
-                    return "DISTANCE";
-                case WorkoutItemLabelType.LongLabel:
-                    return "DISTANCE(KM)";
-            }
-        }
-
-        public string GetLabelStyle()
-        {
-            return "";
-        }
-
-        public string GetStatsStyle()
-        {
-            return "";
-        }
-
-        public string GetUnit()
-        {
-            return "workout_km";
-        }
-
-        public void OnDataReceived(WorkoutData data)
-        {
-            if (data == null || data.aggregates == null)
-                return;
-
-            var newValue = data.aggregates.distance_total.ToString();
-
-            if (_value.Equals(newValue))
-                return;
-
-            _value = newValue;
-            ValueChanged?.Invoke(_value);
-            Console.WriteLine($"Distance Data Changed: {_value}");
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/Duration.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/Duration.cs
deleted file mode 100755 (executable)
index 7e20838..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models.Workout.Items
-{
-    class Duration : IWorkoutItem
-    {
-        string _value = "--";
-        public event Action<string> ValueChanged;
-        public string Value
-        {
-            get
-            {
-                return _value;
-            }
-        }
-
-        public WorkoutItemType GetWorkoutItemType()
-        {
-            return WorkoutItemType.Duration;
-        }
-
-        public string GetEmptyValue()
-        {
-            return "--";
-        }
-
-        public string GetImage()
-        {
-            return "/assets/workout.duration.png";
-        }
-
-        public string GetLabel(WorkoutItemLabelType type)
-        {
-            switch (type)
-            {
-                case WorkoutItemLabelType.GeneralLabel:
-                default:
-                    return "DURATION";
-                case WorkoutItemLabelType.ShortLabel:
-                    return "DURATION";
-                case WorkoutItemLabelType.MediumLabel:
-                    return "DURATION";
-                case WorkoutItemLabelType.LongLabel:
-                    return "DURATION";
-            }
-        }
-
-        public string GetLabelStyle()
-        {
-            return "";
-        }
-
-        public string GetStatsStyle()
-        {
-            return "";
-        }
-
-        public string GetUnit()
-        {
-            return null;
-        }
-
-        public void OnDataReceived(WorkoutData data)
-        {
-            if (data == null || data.aggregates == null)
-                return;
-
-            var newValue = data.aggregates.active_time_total.ToString();
-
-            if (_value.Equals(newValue))
-                return;
-
-            _value = newValue;
-            ValueChanged?.Invoke(_value);
-            Console.WriteLine($"Duration Data Changed: {_value}");
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/IWorkoutItem.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/IWorkoutItem.cs
deleted file mode 100755 (executable)
index 2392867..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models.Workout.Items
-{
-    public enum WorkoutItemType
-    {
-        Duration,
-        Distance,
-        Pace,
-        AvgPace,
-        MaxPace,
-        Speed,
-        AvgSpeed,
-        MaxSpeed,
-        Cadence,
-        AvgCadence,
-        StrideLength,
-        AvgStrideLength,
-        Steps,
-        Calories,
-        CurrentHR,
-        HRZone,
-        AvgHR,
-        PeakHR,
-        Intensity,
-        WillPower,
-        CadenceTargetRange,
-        StrideTargetRange,
-        CadenceRangeRate,
-        DistanceTargetRange,
-        DurationTargetRange,
-        PaceTargetRange,
-        PaceRangeRate,
-        SpeedTargetRange,
-        SpeedRangeRate
-    }
-
-    public enum WorkoutItemLabelType
-    {
-        GeneralLabel,
-        ShortLabel,
-        MediumLabel,
-        LongLabel
-    }
-
-    public interface IWorkoutItem
-    {
-        WorkoutItemType GetWorkoutItemType();
-
-        string GetImage();
-
-        string GetLabel(WorkoutItemLabelType type);
-
-        string GetEmptyValue();
-
-        string GetUnit();
-
-        string GetStatsStyle();
-
-        string GetLabelStyle();
-
-        void OnDataReceived(WorkoutData data);
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/MaxPace.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/MaxPace.cs
deleted file mode 100755 (executable)
index 57d1813..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models.Workout.Items
-{
-    class MaxPace : IWorkoutItem
-    {
-        string _value = "--";
-        const int MAX_PACE = 3600;
-        public event Action<string> ValueChanged;
-        public string Value
-        {
-            get
-            {
-                return _value;
-            }
-        }
-
-        public WorkoutItemType GetWorkoutItemType()
-        {
-            return WorkoutItemType.MaxPace;
-        }
-
-        public string GetEmptyValue()
-        {
-            return "--";
-        }
-
-        public string GetImage()
-        {
-            return "/assets/workout.pace.png";
-        }
-
-        public string GetLabel(WorkoutItemLabelType type)
-        {
-            switch (type)
-            {
-                case WorkoutItemLabelType.GeneralLabel:
-                default:
-                    return "MAX PACE";
-                case WorkoutItemLabelType.ShortLabel:
-                    return "MAX PACE";
-                case WorkoutItemLabelType.MediumLabel:
-                    return "MAX PACE";
-                case WorkoutItemLabelType.LongLabel:
-                    return "MAX PACE(MIN/KM)";
-            }
-        }
-
-        public string GetLabelStyle()
-        {
-            return "";
-        }
-
-        public string GetStatsStyle()
-        {
-            return "";
-        }
-
-        public string GetUnit()
-        {
-            return "workout_min_per_km";
-        }
-
-        public void OnDataReceived(WorkoutData data)
-        {
-            if (data.aggregates.speed_max <= 0)
-                return;
-
-            var newValue = ConvertValue(1 / data.aggregates.speed_max);
-            if (_value.Equals(newValue))
-                return;
-
-            _value = newValue;
-            ValueChanged?.Invoke(_value);
-            Console.WriteLine($"MaxPace Data Changed: {_value}");
-        }
-
-        string ConvertValue(float value)
-        {
-            var convertedPace = Math.Round(value);
-            var readableValue = convertedPace > 0 && convertedPace <= MAX_PACE ? convertedPace.ToString() : "--";
-            return readableValue;
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/MaxSpeed.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/MaxSpeed.cs
deleted file mode 100755 (executable)
index db9b6fa..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models.Workout.Items
-{
-    class MaxSpeed : IWorkoutItem
-    {
-        string _value = "--";
-        public event Action<string> ValueChanged;
-        public string Value
-        {
-            get
-            {
-                return _value;
-            }
-        }
-
-        public WorkoutItemType GetWorkoutItemType()
-        {
-            return WorkoutItemType.MaxSpeed;
-        }
-
-        public string GetEmptyValue()
-        {
-            return "--";
-        }
-
-        public string GetImage()
-        {
-            return "/assets/workout.pace.png";
-        }
-
-        public string GetLabel(WorkoutItemLabelType type)
-        {
-            switch (type)
-            {
-                case WorkoutItemLabelType.GeneralLabel:
-                default:
-                    return "label_speed_max";
-                case WorkoutItemLabelType.ShortLabel:
-                    return "label_speed_max_short";
-                case WorkoutItemLabelType.MediumLabel:
-                    return "label_speed_max_medium";
-                case WorkoutItemLabelType.LongLabel:
-                    return "label_speed_max_long";
-            }
-        }
-
-        public string GetLabelStyle()
-        {
-            return "";
-        }
-
-        public string GetStatsStyle()
-        {
-            return "";
-        }
-
-        public string GetUnit()
-        {
-            return "workout_km_per_hr";
-        }
-
-        public void OnDataReceived(WorkoutData data)
-        {
-            if (data.aggregates ==null || data.aggregates.speed_max < 0)
-                return;
-
-            var newValue = ConvertValue(data.aggregates.speed_max);
-            if (_value.Equals(newValue))
-                return;
-
-            _value = newValue;
-            ValueChanged?.Invoke(_value);
-            Console.WriteLine($"MaxSpeed Data Changed: {_value}");
-        }
-
-        string ConvertValue(float value)
-        {
-            var convertedSpeed = Math.Round(value * 100) / 100;
-            var readableValue = convertedSpeed > 0 ? convertedSpeed.ToString() : "--";
-            return readableValue;
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/PeakHr.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/PeakHr.cs
deleted file mode 100755 (executable)
index 183c335..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models.Workout.Items
-{
-    class PeakHr : IWorkoutItem
-    {
-        string _value = "--";
-        public event Action<string> ValueChanged;
-        public string Value
-        {
-            get
-            {
-                return _value;
-            }
-        }
-
-        public WorkoutItemType GetWorkoutItemType()
-        {
-            return WorkoutItemType.PeakHR;
-        }
-
-        public string GetEmptyValue()
-        {
-            return "--";
-        }
-
-        public string GetImage()
-        {
-            return "/assets/workout.hr.png";
-        }
-
-        public string GetLabel(WorkoutItemLabelType type)
-        {
-            switch (type)
-            {
-                case WorkoutItemLabelType.GeneralLabel:
-                default:
-                    return "MAX HR";
-                case WorkoutItemLabelType.ShortLabel:
-                    return "MAX HR";
-                case WorkoutItemLabelType.MediumLabel:
-                    return "MAX HR";
-                case WorkoutItemLabelType.LongLabel:
-                    return "MAX HEART RATE(BPM)";
-            }
-        }
-
-        public string GetLabelStyle()
-        {
-            return "";
-        }
-
-        public string GetStatsStyle()
-        {
-            return "";
-        }
-
-        public string GetUnit()
-        {
-            return "bpm";
-        }
-
-        public void OnDataReceived(WorkoutData data)
-        {
-            var newValue = data.hrData.max.ToString();
-            if (_value.Equals(newValue))
-                return;
-
-            _value = newValue;
-            ValueChanged?.Invoke(_value);
-            Console.WriteLine($"PeakHr Data Changed: {_value}");
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/WorkoutItemFactory.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/WorkoutItemFactory.cs
deleted file mode 100755 (executable)
index c37d957..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models.Workout.Items
-{
-    public class WorkoutItemFactory
-    {
-        public static IWorkoutItem CreateWorkoutItem(WorkoutItemType type)
-        {
-            Console.WriteLine($"Create WorkoutItem {type}");
-            switch (type)
-            {
-                case WorkoutItemType.Cadence:
-                    return new CurrentCadence();
-                case WorkoutItemType.AvgCadence:
-                    return new AverageCadence();
-                case WorkoutItemType.Pace:
-                    return new CurrentPace();
-                case WorkoutItemType.AvgPace:
-                    return new AveragePace();
-                case WorkoutItemType.MaxPace:
-                    return new MaxPace();
-                case WorkoutItemType.Distance:
-                    return new Distance();
-                case WorkoutItemType.Speed:
-                    return new CurrentSpeed();
-                case WorkoutItemType.AvgSpeed:
-                    return new AverageSpeed();
-                case WorkoutItemType.MaxSpeed:
-                    return new MaxSpeed();
-                case WorkoutItemType.AvgHR:
-                    return new AverageHr();
-                case WorkoutItemType.CurrentHR:
-                    return new CurrentHr();
-                case WorkoutItemType.PeakHR:
-                    return new PeakHr();
-                case WorkoutItemType.Calories:
-                    return new Calories();
-                case WorkoutItemType.Duration:
-                    return new Duration();
-                case WorkoutItemType.HRZone:
-                    return new ZoneHr();
-                default:
-                    return null;
-            }
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/ZoneHr.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Items/ZoneHr.cs
deleted file mode 100755 (executable)
index 48b7c06..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models.Workout.Items
-{
-    class ZoneHr : IWorkoutItem
-    {
-        string _value = "--";
-        public event Action<string> ValueChanged;
-        public string Value
-        {
-            get
-            {
-                return _value;
-            }
-        }
-
-        public WorkoutItemType GetWorkoutItemType()
-        {
-            return WorkoutItemType.HRZone;
-        }
-
-        public string GetEmptyValue()
-        {
-            return "--";
-        }
-
-        public string GetImage()
-        {
-            return "/assets/workout.hr.png";
-        }
-
-        public string GetLabel(WorkoutItemLabelType type)
-        {
-            switch (type)
-            {
-                case WorkoutItemLabelType.GeneralLabel:
-                default:
-                    return "ZONE";
-                case WorkoutItemLabelType.ShortLabel:
-                    return "ZONE";
-                case WorkoutItemLabelType.MediumLabel:
-                    return "ZONE";
-                case WorkoutItemLabelType.LongLabel:
-                    return "ZONE HEART RATE(BPM)";
-            }
-        }
-
-        public string GetLabelStyle()
-        {
-            return "";
-        }
-
-        public string GetStatsStyle()
-        {
-            return "";
-        }
-
-        public string GetUnit()
-        {
-            return "bpm";
-        }
-
-        public void OnDataReceived(WorkoutData data)
-        {
-            if (_value.Equals(data.hrZone))
-                return;
-
-            _value = data.hrZone;
-            ValueChanged?.Invoke(_value);
-            Console.WriteLine($"hrZone Data Changed: {_value}");
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Workout.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/Workout.cs
deleted file mode 100755 (executable)
index e4f022b..0000000
+++ /dev/null
@@ -1,329 +0,0 @@
-using MapMyRun.Models.Workout.Items;
-using Newtonsoft.Json;
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models.Workout
-{
-    public class Workout
-    {
-        bool _isProgressing = false;
-        bool _isListening = false;
-        WorkoutStatus _status = WorkoutStatus.NotStarted;
-        IDispatcher _dispatcher;
-        IPermissionManager _permissionManager;
-        NotificationObserver _workingDataObserver;
-        Dictionary<int, IWorkoutItem> _workoutItems = new Dictionary<int, IWorkoutItem>();
-
-        public event Action<WorkoutData> CaloriesDataReceived;
-        public event Action<WorkoutData> WillpowerDataReceived;
-        public event Action<WorkoutData> HrZoneDataReceived;
-        public event Action<WorkoutData> IntensityDataReceived;
-        public event Action<WorkoutData> AggregatesDataReceived;
-        public event Action<WorkoutData> CadenceDataReceived;
-        public event Action<WorkoutData> HrDataReceived;
-        public event Action<WorkoutData> SpeedDataReceived;
-        public event Action<WorkoutData> StrideLengthDataReceived;
-        public event Action<WorkoutData> FormCoachDataReceived;
-        public event Action<WorkoutData> GoalCoachDataReceived;
-        public event Action<WorkoutData> SpeedCoachDataReceived;
-
-        enum WorkoutStatus
-        {
-            NotStarted,
-            Preparing,
-            InProgress,
-            Paused,
-            Finished,
-            Saved
-        }
-
-        public Workout(IDispatcher dispatcher, IPermissionManager permissionManager)
-        {
-            _dispatcher = dispatcher;
-            _permissionManager = permissionManager;
-        }
-
-        public void PrepareWorkout(int activity, bool gpsNeeded, bool shoesNeeded, bool cadenceNeeded)
-        {
-            if (_isProgressing || _status != WorkoutStatus.NotStarted)
-                return;
-
-            _isProgressing = true;
-
-            //TODO : Create items
-            //TEST CODE
-            ClearAllWorkoutItem();
-            AddItem(WorkoutItemType.AvgHR);
-            AddItem(WorkoutItemType.PeakHR);
-            AddItem(WorkoutItemType.CurrentHR);
-            AddItem(WorkoutItemType.AvgPace);
-            AddItem(WorkoutItemType.MaxPace);
-            AddItem(WorkoutItemType.Pace);
-            AddItem(WorkoutItemType.AvgSpeed);
-            AddItem(WorkoutItemType.MaxSpeed);
-            AddItem(WorkoutItemType.Speed);
-            AddItem(WorkoutItemType.Cadence);
-            AddItem(WorkoutItemType.AvgCadence);
-            AddItem(WorkoutItemType.Distance);
-            AddItem(WorkoutItemType.Duration);
-            AddItem(WorkoutItemType.Calories);
-            AddItem(WorkoutItemType.HRZone);
-
-            _permissionManager.RequestPermission(PermissionType.Sensor, (isSensorSuccess, isSensorGranted) =>
-            {
-                if (!isSensorSuccess)
-                {
-                    PrepareWorkout(false, false);
-                    return;
-                }
-
-                if (!gpsNeeded)
-                {
-                    PrepareWorkout(isSensorGranted, false);
-                    return;
-                }
-
-                _permissionManager.RequestPermission(PermissionType.Location, (isGpsSuccess, isGpsGranted) =>
-                {
-                    if (!isGpsSuccess)
-                    {
-                        PrepareWorkout(isSensorGranted, false);
-                        return;
-                    }
-
-                    PrepareWorkout(isSensorGranted, isGpsGranted);
-                });
-            });
-        }
-
-        void PrepareWorkout(bool isSensorsGranted, bool isLocationGranted)
-        {
-            var prepareData = CreatDummyPrepareWorkoutData(isSensorsGranted, isLocationGranted);
-
-            var request = new Request(OperationType.PrepareWKO, prepareData);
-
-            request.ResponseReceived += (Response response) =>
-            {
-                Console.WriteLine($"Get PrepareWKO Response");
-                _status = WorkoutStatus.Preparing;
-                _isProgressing = false;
-            };
-            _dispatcher.SendRequest(request);
-        }
-
-        public void StartWorkout()
-        {
-            if (_isProgressing || _status != WorkoutStatus.Preparing)
-                return;
-
-            _isProgressing = true;
-
-            Console.WriteLine("Start Workout!");
-
-            var request = new Request(OperationType.StartWKO, "{\"activity_type\": 16}");
-            request.ResponseReceived += (Response response) =>
-            {
-                Console.WriteLine($"Get StartWKO Response");
-                _status = WorkoutStatus.InProgress;
-                _isProgressing = false;
-            };
-            _dispatcher.SendRequest(request);
-        }
-
-        public void FinishWorkout()
-        {
-            var request = new Request(OperationType.FinishWKO, "{\"activity_type\": 16}");
-            request.ResponseReceived += (Response response) =>
-            {
-                Console.WriteLine($"Get FinishWKO Response");
-                _status = WorkoutStatus.NotStarted;
-                _isListening = false;
-                _isProgressing = false;
-            };
-
-            _dispatcher.SendRequest(request);
-        }
-
-        public void StartListenWorkoutData()
-        {
-            if (_isListening)
-                return;
-
-            _isListening = true;
-
-            _workingDataObserver = new NotificationObserver(OperationType.WkoDataChanged);
-            _workingDataObserver.NotificationReceived += (string data) =>
-            {
-                WorkoutData workoutData = ParseWorkoutDataJson(data);
-
-                if (workoutData != null)
-                    PropagateWorkoutData(workoutData);
-            };
-
-            var monitor = _dispatcher.Listen(OperationType.WkoDataChanged);
-            _workingDataObserver.Subscribe(monitor);
-        }
-
-        public WorkoutData ParseWorkoutDataJson(string jsonString)
-        {
-            WorkoutData workoutData = null;
-            try
-            {
-                workoutData = JsonConvert.DeserializeObject<WorkoutData>(jsonString);
-            }
-            catch
-            {
-                Console.WriteLine($"W.O DATA JSON Parse Fail: {jsonString}");
-            }
-            return workoutData;
-        }
-
-        public void PropagateWorkoutData(WorkoutData workoutData)
-        {
-            if (workoutData.calories != null)
-            {
-                CaloriesDataReceived?.Invoke(workoutData);
-            }
-            if (workoutData.willpower != null)
-            {
-                WillpowerDataReceived?.Invoke(workoutData);
-            }
-            if (workoutData.hrData != null)
-            {
-                HrDataReceived?.Invoke(workoutData);
-            }
-            if (workoutData.hrZone != null)
-            {
-                HrZoneDataReceived?.Invoke(workoutData);
-            }
-            if (workoutData.intensity != null)
-            {
-                IntensityDataReceived?.Invoke(workoutData);
-            }
-            if (workoutData.aggregates != null)
-            {
-                AggregatesDataReceived?.Invoke(workoutData);
-            }
-            if (workoutData.cadence != null)
-            {
-                CadenceDataReceived?.Invoke(workoutData);
-            }
-            if (workoutData.speed != null)
-            {
-                SpeedDataReceived?.Invoke(workoutData);
-            }
-            if (workoutData.strideLength != null)
-            {
-                StrideLengthDataReceived?.Invoke(workoutData);
-            }
-            if (workoutData.formCoach != null)
-            {
-                FormCoachDataReceived?.Invoke(workoutData);
-            }
-            if (workoutData.goalCoach != null)
-            {
-                GoalCoachDataReceived?.Invoke(workoutData);
-            }
-            if (workoutData.speedCoach != null)
-            {
-                SpeedCoachDataReceived?.Invoke(workoutData);
-            }
-        }
-
-        public void AddItem(WorkoutItemType type)
-        {
-            if (_workoutItems.ContainsKey((int)type))
-                return;
-
-            var item = WorkoutItemFactory.CreateWorkoutItem(type);
-
-            if (item == null)
-                return;
-
-            _workoutItems.Add((int)type, item);
-
-            SetWorkoutItemEvent(item, true);
-        }
-
-        void SetWorkoutItemEvent(IWorkoutItem item, bool on)
-        {
-            var type = item.GetWorkoutItemType();
-
-            switch (type)
-            {
-                case WorkoutItemType.Cadence:
-                    if (on)
-                        CadenceDataReceived += item.OnDataReceived;
-                    else
-                        CadenceDataReceived -= item.OnDataReceived;
-                    break;
-                case WorkoutItemType.Speed:
-                case WorkoutItemType.Pace:
-                    if (on)
-                        SpeedDataReceived += item.OnDataReceived;
-                    else
-                        SpeedDataReceived -= item.OnDataReceived;
-                    break;
-                case WorkoutItemType.Duration:
-                case WorkoutItemType.AvgCadence:
-                case WorkoutItemType.AvgPace:
-                case WorkoutItemType.MaxPace:
-                case WorkoutItemType.Distance:
-                case WorkoutItemType.AvgSpeed:
-                case WorkoutItemType.MaxSpeed:
-                    if (on)
-                        AggregatesDataReceived += item.OnDataReceived;
-                    else
-                        AggregatesDataReceived -= item.OnDataReceived;
-                    break;
-                case WorkoutItemType.AvgHR:
-                case WorkoutItemType.CurrentHR:
-                case WorkoutItemType.PeakHR:
-                    if (on)
-                        HrDataReceived += item.OnDataReceived;
-                    else
-                        HrDataReceived -= item.OnDataReceived;
-                    break;
-                case WorkoutItemType.Calories:
-                    if (on)
-                        CaloriesDataReceived += item.OnDataReceived;
-                    else
-                        CaloriesDataReceived -= item.OnDataReceived;
-                    break;
-                case WorkoutItemType.HRZone:
-                    if (on)
-                        HrZoneDataReceived += item.OnDataReceived;
-                    else
-                        HrZoneDataReceived -= item.OnDataReceived;
-                    break;
-                default:
-                    break;
-            }
-        }
-
-        public IWorkoutItem GetItem(WorkoutItemType type)
-        {
-            if (_workoutItems.TryGetValue((int)type, out IWorkoutItem item))
-                return item;
-
-            return null;
-        }
-
-        public void ClearAllWorkoutItem()
-        {
-            foreach (var pair in _workoutItems)
-            {
-                SetWorkoutItemEvent(pair.Value, false);
-            }
-            _workoutItems.Clear();
-        }
-
-        string CreatDummyPrepareWorkoutData(bool isSensorsGranted, bool isLocationGranted)
-        {
-            // TODO : Implement with json parser
-            return "{\"id\":208,\"gps_needed\":false,\"shoes_needed\":false,\"cadence_needed\":true,\"distance_needed\":true,\"is_pace\":true,\"is_hr_needed\":true,\"form_coaching_type\":0}";
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/WorkoutData.cs b/test/UnderArmour/MapMyRun/MapMyRun/Models/Workout/WorkoutData.cs
deleted file mode 100755 (executable)
index 3ae1e03..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRun.Models.Workout
-{
-    public class WorkoutData
-    {
-        public string calories { get; set; }
-        public string willpower { get; set; }
-        public string hrZone { get; set; }
-        public string intensity { get; set; }
-        public AggregateData aggregates { get; set; }
-        public ActivityData cadence { get; set; }
-        public ActivityData hrData { get; set; }
-        public ActivityData speed { get; set; }
-        public ActivityData strideLength { get; set; }
-        public RangeCoachingResult formCoach { get; set; }
-        public RangeCoachingResult speedCoach { get; set; }
-        public FitnessCoachingResult goalCoach { get; set; }
-    }
-
-    public class ActivityData
-    {
-        public float min { get; set; }
-        public float max { get; set; }
-        public float avg { get; set; }
-        public float latest { get; set; }
-        public string type { get; set; }
-    }
-
-    public class AggregateData
-    {
-        public float distance_total { get; set; }
-        public float metabolic_energy_total { get; set; }
-        public float intensity_avg { get; set; }
-        public float willpower { get; set; }
-        public int active_time_total { get; set; }
-        public int elapsed_time_total { get; set; }
-        public int steps_total { get; set; }
-        public int heartrate_avg { get; set; }
-        public int heartrate_max { get; set; }
-        public float speed_max { get; set; }
-        public float speed_avg { get; set; }
-        public float cadence_avg { get; set; }
-        public float cadence_max { get; set; }
-        public float stride_length_avg { get; set; }
-    }
-
-    public class RangeCoachingResult
-    {
-        public float targetMax { get; set; }
-        public float targetMin { get; set; }
-        public float currentValue { get; set; }
-        public int status { get; set; }
-        public bool notif { get; set; }
-    }
-
-    public class FitnessCoachingResult
-    {
-        public float current { get; set; }
-        public float target { get; set; }
-        public float percentage { get; set; }
-    }
-
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService.Test/AccountManagerTest.cs b/test/UnderArmour/MapMyRunService/MapMyRunService.Test/AccountManagerTest.cs
deleted file mode 100755 (executable)
index faedd5d..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-using System;
-using NUnit.Framework;
-using Moq;
-using MapMyRunService.Models;
-using System.Collections.Generic;
-using MapMyRunService.Models.Account;
-using SQLite;
-
-namespace MapMyRunService.Tests
-{
-    [TestFixture]
-    class AccountManagerTest
-    {
-        IDB testDb = new DB();
-        Mock<IDispatcher> mockDispatcher = null;
-
-        public interface IDbConnection
-        {
-            int CreateTable();
-        }
-
-        [SetUp]
-        public void Setup()
-        {
-            mockDispatcher = new Mock<IDispatcher>();
-        }
-
-        [Test]
-        public void StartListenGetData_Called_CallDispatcherListen()
-        {
-            var accountManager = new AccountManager(testDb, mockDispatcher.Object);
-            mockDispatcher.Setup(x => x.Listen(OperationType.GetData)).Returns(new NotificationProvider(OperationType.GetData));
-            accountManager.StartListenGetData();
-
-            mockDispatcher.Verify(x => x.Listen(OperationType.GetData), Times.Once());
-        }
-
-        [Test]
-        public void StartListenGetData_ReceivedMessageWithUserProfileAction_CallSendReply()
-        {
-            var accountManager = new AccountManager(testDb, mockDispatcher.Object);
-            var notificationProvider = new NotificationProvider(OperationType.GetData);
-            Response receivedResponse = null;
-            mockDispatcher.Setup(x => x.Listen(OperationType.GetData)).Returns(notificationProvider);
-            mockDispatcher.Setup(x => x.SendReply(It.IsAny<Response>())).Callback<Response>(x => {
-                receivedResponse = x;
-            });
-            accountManager.StartListenGetData();
-
-            Dictionary<string, string> getDataUserProfile = 
-                new Dictionary<string, string> { { "transID", "banana" }, { "data", "{\"action\": 1}" } };
-            notificationProvider.PostNotification(getDataUserProfile);
-            Assert.AreEqual(receivedResponse.Status, ResponseStatus.Success);
-            Assert.AreEqual(receivedResponse.TransID, "banana");
-
-            Dictionary<string, string> getDataUpdatedUserProfile =
-                new Dictionary<string, string> { { "transID", "orange" }, { "data", "{\"action\": 2}" } };
-            notificationProvider.PostNotification(getDataUpdatedUserProfile);
-            Assert.AreEqual(receivedResponse.Status, ResponseStatus.Success);
-            Assert.AreEqual(receivedResponse.TransID, "orange");
-
-            mockDispatcher.Verify(x => x.SendReply(It.IsAny<Response>()), Times.Exactly(2));
-        }
-
-        [Test]
-        public void StartListenGetData_ReceivedMessageWithAnotherAction_CallSendReply()
-        {
-            var accountManager = new AccountManager(testDb, mockDispatcher.Object);
-            var notificationProvider = new NotificationProvider(OperationType.GetData);
-            mockDispatcher.Setup(x => x.Listen(OperationType.GetData)).Returns(notificationProvider);
-            mockDispatcher.Setup(x => x.SendReply(It.IsAny<Response>()));
-            accountManager.StartListenGetData();
-
-            Dictionary<string, string> getDataUpdatedUserProfile =
-                new Dictionary<string, string> { { "transID", "orange" }, { "data", "{\"action\": 3}" } };
-            notificationProvider.PostNotification(getDataUpdatedUserProfile);
-            mockDispatcher.Verify(x => x.SendReply(It.IsAny<Response>()), Times.Never());
-        }
-    }
-}
-
-
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService.Test/DB.cs b/test/UnderArmour/MapMyRunService/MapMyRunService.Test/DB.cs
deleted file mode 100755 (executable)
index 5c3a46b..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.IO;
-using System.Text;
-using MapMyRunService.Models;
-using SQLite;
-using SQLitePCL;
-
-namespace MapMyRunService.Tests
-{
-    public class DB : IDB
-    {
-        private SQLiteConnection dbConnection { get; set; }
-
-        private const string databaseFileName = "MMRServiceTestDB.db3";
-        private string databasePath;
-
-        public DB()
-        {
-            raw.SetProvider(new SQLite3Provider_sqlite3());
-            raw.FreezeProvider(true);
-
-            databasePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), databaseFileName);
-            dbConnection = new SQLiteConnection(databasePath);
-        }
-
-        public SQLiteConnection getConnection()
-        {
-            return dbConnection;
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService.Test/DispatcherTest.cs b/test/UnderArmour/MapMyRunService/MapMyRunService.Test/DispatcherTest.cs
deleted file mode 100755 (executable)
index ec522f8..0000000
+++ /dev/null
@@ -1,177 +0,0 @@
-using System;
-using NUnit.Framework;
-using Moq;
-using MapMyRunService.Models;
-using System.Collections.Generic;
-
-namespace MapMyRunService.Tests
-{
-    [TestFixture]
-    class DispatcherTest
-    {
-        Mock<IMessagePortHandler> mockMessagePortHandler = null;
-
-        [SetUp]
-        public void Setup()
-        {
-            mockMessagePortHandler = new Mock<IMessagePortHandler>();
-        }
-
-        [Test]
-        public void Initialize_Called_CallMessagePortHandlerConnect()
-        {
-            mockMessagePortHandler.Setup(x => x.Connect(It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>(), It.IsAny<bool>()));
-
-            var dispatcher = MapMyRunService.Models.Dispatcher.Instance;
-            dispatcher.Initialize(mockMessagePortHandler.Object);
-
-            mockMessagePortHandler.Verify(x => x.Connect(It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>(), It.IsAny<bool>()), Times.Once());
-        }
-
-        [Test]
-        public void Initialize_Called_AddOnReceiveMessage()
-        {
-            var dispatcher = MapMyRunService.Models.Dispatcher.Instance;
-
-            mockMessagePortHandler.SetupAdd(m => m.MessageReceived += dispatcher.OnReceiveMessage);
-
-            dispatcher.Initialize(mockMessagePortHandler.Object);
-            mockMessagePortHandler.VerifyAdd(m => m.MessageReceived += dispatcher.OnReceiveMessage, Times.Once());
-        }
-
-        [Test]
-        public void SendRequest_FirstCalled_CallMessagePortHandlerSend()
-        {
-            var requestData = "banana";
-            var request = new Mock<Request>(OperationType.PrepareWKO, requestData);
-            Dictionary<string, string> requestDataSet = null;
-
-            mockMessagePortHandler.Setup(x => x.Send(It.IsAny<Dictionary<string, string>>()))
-                .Callback<Dictionary<string, string>>(arg => {
-                    requestDataSet = arg;
-                }
-            );
-
-            var dispatcher = MapMyRunService.Models.Dispatcher.Instance;
-            dispatcher.Initialize(mockMessagePortHandler.Object);
-
-            dispatcher.SendRequest(request.Object);
-            requestDataSet.TryGetValue(Dispatcher.OperationKey, out string operation);
-            requestDataSet.TryGetValue(Dispatcher.DataKey, out string data);
-
-            mockMessagePortHandler.Verify(x => x.Send(It.IsAny<Dictionary<string, string>>()), Times.Once());
-            Assert.AreEqual(((int)OperationType.PrepareWKO).ToString(), operation);
-            Assert.AreEqual(requestData, data);
-        }
-
-        [Test]
-        public void OnReceiveMessage_Called_CallCorrectRequestOnReceiveResponse()
-        {
-            string requestData = "orange";
-            var request = new Request(OperationType.PrepareWKO, requestData);
-            bool isCalled = false;
-            request.ResponseReceived += (Response data) =>
-            {
-                isCalled = true;
-            };
-
-            var dispatcher = MapMyRunService.Models.Dispatcher.Instance;
-            dispatcher.Initialize(mockMessagePortHandler.Object);
-            var tid = dispatcher.SendRequest(request);
-
-            var responseData = new Dictionary<string, string>
-            {
-                { Dispatcher.TransIdKey, tid}
-            };
-
-            dispatcher.OnReceiveMessage(responseData);
-            Assert.IsTrue(isCalled);
-        }
-
-        [Test]
-        public void OnReceiveMessage_Called_DontCallIncorrectRequestOnReceiveResponse()
-        {
-            string requestData = "orange";
-            var request = new Request(OperationType.PrepareWKO, requestData);
-            var isCalled = false;
-            request.ResponseReceived += (Response data) =>
-            {
-                isCalled = true;
-            };
-
-            var dispatcher = MapMyRunService.Models.Dispatcher.Instance;
-            dispatcher.Initialize(mockMessagePortHandler.Object);
-            var tid = dispatcher.SendRequest(request);
-
-            var responseData = new Dictionary<string, string>
-            {
-                { Dispatcher.TransIdKey, tid + "Never"}
-            };
-
-            dispatcher.OnReceiveMessage(responseData);
-            Assert.IsFalse(isCalled);
-        }
-
-        [Test]
-        public void OnReceiveMessage_WithOperation_DontCallRequestOnReceiveResponse()
-        {
-            string requestData = "orange";
-            var request = new Request(OperationType.PrepareWKO, requestData);
-            var isCalled = false;
-            request.ResponseReceived += (Response data) =>
-            {
-                isCalled = true;
-            };
-
-            var dispatcher = MapMyRunService.Models.Dispatcher.Instance;
-            dispatcher.Initialize(mockMessagePortHandler.Object);
-            var tid = dispatcher.SendRequest(request);
-
-            var responseData = new Dictionary<string, string>
-            {
-                { Dispatcher.OperationKey, "kiwi" },
-                { Dispatcher.TransIdKey, tid}
-            };
-
-            dispatcher.OnReceiveMessage(responseData);
-            Assert.IsFalse(isCalled);
-        }
-
-        [Test]
-        public void OnReceiveMessage_WithoutOperation_ProvideCorrectNotification()
-        {
-            var isCalled = false;
-            var mockObserver = new NotificationObserver(OperationType.ApplicationInitialized);
-            mockObserver.NotificationReceived += (Dictionary<string, string> data) =>
-            {
-                isCalled = true;
-            };
-
-            var dispatcher = MapMyRunService.Models.Dispatcher.Instance;
-            dispatcher.Initialize(mockMessagePortHandler.Object);
-
-            var monitor = dispatcher.Listen(OperationType.ApplicationInitialized);
-            mockObserver.Subscribe(monitor);
-
-            Dictionary<string, string> responseData = new Dictionary<string, string>
-            {
-                { Dispatcher.TransIdKey, "orange"},
-                { Dispatcher.DataKey, "apple"},
-                { Dispatcher.OperationKey, "46"}
-            };
-            dispatcher.OnReceiveMessage(responseData);
-
-            Assert.IsTrue(isCalled);
-        }
-
-        [Test]
-        public void Listen_Called_ReturnCorrectNotificationProvider()
-        {
-            var dispatcher = MapMyRunService.Models.Dispatcher.Instance;
-            dispatcher.Initialize(mockMessagePortHandler.Object);
-            var notificationMonitor = dispatcher.Listen(OperationType.ApplicationInitialized);
-            Assert.AreEqual(notificationMonitor.Type, OperationType.ApplicationInitialized);
-        }
-
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService.Test/KeepAliveTest.cs b/test/UnderArmour/MapMyRunService/MapMyRunService.Test/KeepAliveTest.cs
deleted file mode 100755 (executable)
index 49f6f6f..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-using System;
-using NUnit.Framework;
-using Moq;
-using MapMyRunService.Models;
-using MapMyRunService.Models.KeepAlive;
-using System.Collections.Generic;
-
-namespace MapMyRunService.Tests
-{
-    [TestFixture]
-    class KeepAliveTest
-    {
-        Mock<IDispatcher> mockDispatcher = null;
-
-        [SetUp]
-        public void Setup()
-        {
-            mockDispatcher = new Mock<IDispatcher>();
-        }
-
-        [Test]
-        public void ListenExitApp_Called_CallDispatcherListen()
-        {
-            var mockTizenServiceApplication = new Mock<ITizenServiceApplication>();
-            var keepAlive = new KeepAlive(mockDispatcher.Object, mockTizenServiceApplication.Object);
-            mockDispatcher.Setup(x => x.Listen(OperationType.ExitApp)).Returns(new NotificationProvider(OperationType.ExitApp));
-
-            keepAlive.Start();
-
-            mockDispatcher.Verify(x => x.Listen(OperationType.ExitApp), Times.Once());
-        }
-
-        [Test]
-        public void ListenExitApp_ReceivedMessage_CallExitAppication()
-        {
-            var mockTizenServiceApplication = new Mock<ITizenServiceApplication>();
-            mockTizenServiceApplication.Setup(x => x.ExitApplication());
-            var keepAlive = new KeepAlive(mockDispatcher.Object, mockTizenServiceApplication.Object);
-            var notificationProvider = new NotificationProvider(OperationType.ExitApp);
-            mockDispatcher.Setup(x => x.Listen(OperationType.ExitApp)).Returns(notificationProvider);
-            keepAlive.Start();
-            Dictionary<string, string> exit = new Dictionary<string, string> { { "data", "exit" } };
-            notificationProvider.PostNotification(exit);
-            mockTizenServiceApplication.Verify(x => x.ExitApplication(), Times.Once());
-        }
-
-    }
-}
-
-
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService.Test/MapMyRunService.Tests.csproj b/test/UnderArmour/MapMyRunService/MapMyRunService.Test/MapMyRunService.Tests.csproj
deleted file mode 100755 (executable)
index 1a055b0..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-<Project Sdk="Microsoft.NET.Sdk">
-
-  <PropertyGroup>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
-
-    <IsPackable>false</IsPackable>
-  </PropertyGroup>
-
-  <ItemGroup>
-    <PackageReference Include="Moq" Version="4.13.1" />
-    <PackageReference Include="nunit" Version="3.12.0" />
-    <PackageReference Include="NUnit3TestAdapter" Version="3.15.1" />
-    <PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.2.0" />
-    <PackageReference Include="sqlite" Version="3.13.0" />
-    <PackageReference Include="sqlite-net-base" Version="1.5.166-beta" />
-    <PackageReference Include="SQLitePCLRaw.provider.sqlite3.netstandard11" Version="1.1.14" />
-  </ItemGroup>
-
-  <Import Project="..\MapMyRunService\MapMyRunService.projitems" Label="Shared" />
-
-</Project>
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/MapMyRunService.Tizen.csproj b/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/MapMyRunService.Tizen.csproj
deleted file mode 100755 (executable)
index 8a0fac6..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-<Project Sdk="Tizen.NET.Sdk/1.0.9">
-
-  <PropertyGroup>
-    <OutputType>Exe</OutputType>
-    <TargetFramework>tizen40</TargetFramework>
-  </PropertyGroup>
-
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugType>portable</DebugType>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>None</DebugType>
-  </PropertyGroup>
-
-  <ItemGroup>
-    <PackageReference Include="Newtonsoft.Json" Version="12.0.3" />
-    <PackageReference Include="sqlite" Version="3.13.0" />
-    <PackageReference Include="sqlite-net-base" Version="1.5.166-beta" />
-    <PackageReference Include="SQLitePCLRaw.provider.sqlite3.netstandard11" Version="1.1.14" />
-  </ItemGroup>
-
-  <Import Project="..\MapMyRunService\MapMyRunService.projitems" Label="Shared" />
-
-</Project>
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/MapMyRunService_App.cs b/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/MapMyRunService_App.cs
deleted file mode 100755 (executable)
index fdcae29..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-using MapMyRunService.Models;
-using MapMyRunService.Models.Settings;
-using MapMyRunService.Models.KeepAlive;
-using MapMyRunService.Tizen.Models;
-using MapMyRunService.Tizen.Models.Settings;
-using MapMyRunService.Tizen.Models.Database;
-using MapMyRunService.Tizen.Services;
-using System;
-using Tizen.Applications;
-
-namespace MapMyRunService.Tizen
-{
-    class App : ServiceApplication
-    {
-        private string uiAppId = "org.tizen.example.MapMyRun";
-        private IMessagePortHandler messagePortHandler;
-        private Loading loading;
-        private KeepAlive keepAlive;
-        private SettingsManager setting;
-        private DB database;
-
-        protected override void OnCreate()
-        {
-            base.OnCreate();
-
-            WorkoutService.Instance.Initialize();
-            database = new DB();
-            messagePortHandler = new MessagePortHandler();
-            Dispatcher.Instance.Initialize(messagePortHandler);
-
-            setting = new SettingsManager(Dispatcher.Instance);
-            setting.initializeGPS(new GPSManager());
-            setting.Initialize();
-
-            loading = new Loading(messagePortHandler, uiAppId, database, new AuthCache());
-            loading.StartLoading();
-
-            keepAlive = new KeepAlive(Dispatcher.Instance, new TizenServiceApplication(this));
-            keepAlive.Start();
-
-            Console.WriteLine($"MapMyRunService application started.");
-        }
-
-        protected override void OnAppControlReceived(AppControlReceivedEventArgs e)
-        {
-            base.OnAppControlReceived(e);
-        }
-
-        protected override void OnDeviceOrientationChanged(DeviceOrientationEventArgs e)
-        {
-            base.OnDeviceOrientationChanged(e);
-        }
-
-        protected override void OnLocaleChanged(LocaleChangedEventArgs e)
-        {
-            base.OnLocaleChanged(e);
-        }
-
-        protected override void OnLowBattery(LowBatteryEventArgs e)
-        {
-            base.OnLowBattery(e);
-        }
-
-        protected override void OnLowMemory(LowMemoryEventArgs e)
-        {
-            base.OnLowMemory(e);
-        }
-
-        protected override void OnRegionFormatChanged(RegionFormatChangedEventArgs e)
-        {
-            base.OnRegionFormatChanged(e);
-        }
-
-        protected override void OnTerminate()
-        {
-            base.OnTerminate();
-        }
-
-        static void Main(string[] args)
-        {
-            App app = new App();
-            app.Run(args);
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/Models/AuthCache.cs b/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/Models/AuthCache.cs
deleted file mode 100755 (executable)
index 8b757cc..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-using MapMyRunService.Models.Auth;
-using System;
-using Tizen.Applications;
-
-namespace MapMyRunService.Tizen.Models
-{
-    public class AuthCache : IAuthCache
-    {
-        private readonly string CLIENT_ID_KEY = "token_ClientId";
-        private readonly string CLIENT_SECRET_KEY = "token_ClientSecret";
-        private readonly string ACCESS_TOKEN_KEY = "token_AccessToken";
-        private readonly string REFRESH_TOKEN_KEY = "token_RefreshToken";
-
-        public AuthCache()
-        {
-        }
-
-        public bool GetToken(AuthenticationToken authToken)
-        {
-            if (Preference.Contains(CLIENT_ID_KEY) && Preference.Get<string>(CLIENT_ID_KEY) == authToken.ClientId)
-            {
-
-                authToken.ClientSecret = Preference.Get<string>(CLIENT_SECRET_KEY);
-                authToken.AccessToken = Preference.Get<string>(ACCESS_TOKEN_KEY);
-                authToken.RefreshToken = Preference.Get<string>(REFRESH_TOKEN_KEY);
-
-                Console.WriteLine($"[AuthCache] [Get] Using token in cache.");
-                return true;
-            }
-
-            Console.WriteLine($"[AuthCache] No cached token found.");
-
-            return false;
-        }
-
-        public void SaveToken(AuthenticationToken authToken)
-        {
-            Preference.Set(CLIENT_ID_KEY, authToken.ClientId);
-            Preference.Set(CLIENT_SECRET_KEY, authToken.ClientSecret);
-            Preference.Set(ACCESS_TOKEN_KEY, authToken.AccessToken);
-            Preference.Set(REFRESH_TOKEN_KEY, authToken.RefreshToken);
-
-            Console.WriteLine($"[AuthCache] Update token in cache:");
-            logTokenCache();
-        }
-
-        public void RemoveToken()
-        {
-            Console.WriteLine($"[AuthCache] RemoveToken called.");
-            logTokenCache();
-
-            if (Preference.Contains(CLIENT_ID_KEY))
-            {
-                Preference.Remove(CLIENT_ID_KEY);
-                Preference.Remove(CLIENT_SECRET_KEY);
-                Preference.Remove(ACCESS_TOKEN_KEY);
-                Preference.Remove(REFRESH_TOKEN_KEY);
-
-                Console.WriteLine($"[AuthCache] [Remove] Success: {!Preference.Contains(CLIENT_ID_KEY)}");
-            }
-        }
-
-        private void logTokenCache()
-        {
-            if (Preference.Contains(CLIENT_ID_KEY))
-            {
-                Console.WriteLine($"[AuthCache] ClientId: {Preference.Get<string>(CLIENT_ID_KEY)}");
-                Console.WriteLine($"[AuthCache] ClientSecret: {Preference.Get<string>(CLIENT_SECRET_KEY)}");
-                Console.WriteLine($"[AuthCache] AccessToken: {Preference.Get<string>(ACCESS_TOKEN_KEY)}");
-                Console.WriteLine($"[AuthCache] RefreshToken: {Preference.Get<string>(REFRESH_TOKEN_KEY)}");
-            } else
-            {
-                Console.WriteLine($"[AuthCache] No cached token.");
-            }
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/Models/Database/DB.cs b/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/Models/Database/DB.cs
deleted file mode 100755 (executable)
index 2676035..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.IO;
-using System.Text;
-using MapMyRunService.Models;
-using SQLite;
-using SQLitePCL;
-using Tizen.Applications;
-
-namespace MapMyRunService.Tizen.Models.Database
-{
-    public class DB : IDB
-    {
-        private SQLiteConnection dbConnection { get; set; }
-
-        private const string databaseFileName = "MMRServiceDB.db3";
-        private string databasePath;
-
-        public DB()
-        {
-            Console.WriteLine($"[DB] Initialize DB");
-
-            raw.SetProvider(new SQLite3Provider_sqlite3());
-            raw.FreezeProvider(true);
-
-            databasePath = Path.Combine(Application.Current.DirectoryInfo.Data, databaseFileName);
-            dbConnection = new SQLiteConnection(databasePath);
-        }
-
-        public SQLiteConnection getConnection()
-        {
-            return dbConnection;
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/Models/MessagePortHandler.cs b/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/Models/MessagePortHandler.cs
deleted file mode 100755 (executable)
index abe38ef..0000000
+++ /dev/null
@@ -1,171 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-using Tizen.Applications;
-using Tizen.Applications.Messages;
-using MapMyRunService.Models;
-using ElmSharp;
-
-namespace MapMyRunService.Tizen.Models
-{
-    public class MessagePortHandler : IMessagePortHandler
-    {
-        private string _localPortName = "";
-        private string _remotePortName = "";
-        private string _remoteAppId = "";
-        private bool _isSecureMode = false;
-
-        private bool _isInit = false;
-        private bool _isPendingMessageSending = false;
-        private List<Dictionary<string, string>> _pendingMessages = new List<Dictionary<string, string>>();
-
-        private MessagePort messagePort;
-
-        public event Action<Dictionary<string, string>> MessageReceived = delegate { };
-
-        public void Connect(string localPort, string remoteAppId, string remotePort, bool secureMode)
-        {
-            _localPortName = localPort;
-            _remotePortName = remotePort;
-            _remoteAppId = remoteAppId;
-            _isSecureMode = secureMode;
-
-            messagePort = new MessagePort(_localPortName, _isSecureMode);
-            messagePort.MessageReceived += OnReceive;
-            messagePort.Listen();
-        }
-
-        public void Disconnect()
-        {
-            _localPortName = "";
-            _remotePortName = "";
-            _remoteAppId = "";
-            _isSecureMode = false;
-            messagePort.StopListening();
-            messagePort.Dispose();
-            messagePort = null;
-        }
-
-        public void Send(Dictionary<string, string> data)
-        {
-            if (!_isInit)
-            {
-                _pendingMessages.Add(data);
-
-                if (!_isPendingMessageSending)
-                {
-                    _isPendingMessageSending = true;
-                    TrySendFirstMessage();
-                }
-                return;
-            }
-
-            SendMessage(data);
-        }
-
-        public bool IsRemoteRunning(string remoteAppId, string remotePortName, bool secureMode)
-        {
-            try
-            {
-                var remotePort = new RemotePort(remoteAppId, remotePortName, secureMode);
-                bool isRunning = remotePort.IsRunning();
-                Console.WriteLine($"Remote Port: {remoteAppId}, {remotePortName}, {isRunning}");
-
-                return isRunning;
-            }
-            catch (Exception ex)
-            {
-                Console.WriteLine("Exception - Message: " + ex.Message + ", source: " + ex.Source + ", " + ex.StackTrace);
-                return false;
-            }
-        }
-
-        private void TrySendFirstMessage()
-        {
-            try
-            {
-                var remotePort = new RemotePort(_remoteAppId, _remotePortName, false);
-                bool isRunning = remotePort.IsRunning();
-                Console.WriteLine($"Remote Port: {_remoteAppId}, {_remotePortName}, {isRunning}");
-
-                if (!isRunning)
-                {
-                    StartRetrySendFirstMessage();
-                    return;
-                }
-
-                foreach (Dictionary<string, string> pendingMessage in _pendingMessages)
-                {
-                    //TODO : Fail case, Exit? or Recovery?
-                    SendMessage(pendingMessage);
-                }
-
-                _isPendingMessageSending = false;
-                _isInit = true;
-            }
-            catch (Exception ex)
-            {
-                Console.WriteLine("Exception - Message: " + ex.Message + ", source: " + ex.Source + ", " + ex.StackTrace);
-                StartRetrySendFirstMessage();
-            }
-        }
-
-        void SendMessage(Dictionary<string, string> data)
-        {
-            var bundle = new Bundle();
-            Console.WriteLine($"________________________________");
-            Console.WriteLine($"[Service] >>>>> Send Data: ");
-            foreach (var pair in data)
-            {
-                bundle.AddItem(pair.Key, pair.Value);
-                Console.WriteLine($"{{ Key: {pair.Key}, Value: {pair.Value} }}");
-            }
-
-            try
-            {
-                messagePort.Send(bundle, _remoteAppId, _remotePortName, _isSecureMode);
-                Console.WriteLine($"Message sent: {_remoteAppId}, {_remotePortName}, {_isSecureMode}");
-            }
-            catch (Exception ex)
-            {
-                Console.WriteLine("Exception - Message: " + ex.Message + ", source: " + ex.Source + ", " + ex.StackTrace);
-            }
-        }
-
-        private void StartRetrySendFirstMessage()
-        {
-            EcoreMainloop.AddTimer(0.5, () =>
-            {
-                TrySendFirstMessage();
-                return false;
-            });
-        }
-
-        private void OnReceive(object sender, MessageReceivedEventArgs e)
-        {
-            StringBuilder messageLog = new StringBuilder();
-            Console.WriteLine($"________________________________");
-            Console.WriteLine("[Service] Service application received a message");
-            Console.WriteLine($"App ID: {e.Remote.AppId}");
-            Console.WriteLine($"PortName: {e.Remote.PortName}");
-            Console.WriteLine($"Trusted: {e.Remote.Trusted}");
-            Bundle responseBundle = e.Message;
-
-            Console.WriteLine($"[Service] Response Data <<<<< : ");
-            var response = new Dictionary<string, string>();
-
-            foreach (string key in responseBundle.Keys)
-            {
-                if (responseBundle.TryGetItem(key, out string value))
-                {
-                    Console.WriteLine($"{{ Key: {key}, Value: {value} }}");
-                    response.Add(key, value);
-                }
-            }
-
-            MessageReceived(response);
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/Models/Settings/GPSManager.cs b/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/Models/Settings/GPSManager.cs
deleted file mode 100755 (executable)
index 686ed24..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-using MapMyRunService.Models;
-using MapMyRunService.Models.Settings;
-using System;
-using System.Collections.Generic;
-using Tizen.Location;
-
-namespace MapMyRunService.Tizen.Models.Settings
-{
-    public class GPSManager : IGPSManager
-    {
-        public event EventHandler<GPSStateEventArgs> GPSChanged;
-        private Locator _locator;
-
-        public GPSManager()
-        {
-            _locator = new Locator(LocationType.Gps);
-            _locator.ServiceStateChanged += (object s, ServiceStateChangedEventArgs e) =>
-            {
-                GPSStateEventArgs args = new GPSStateEventArgs();
-                if (e.ServiceState == ServiceState.Enabled) args.enabled = true;
-                GPSChanged?.Invoke(this, args);
-            };
-        }
-        ~GPSManager()
-        {
-            _locator.Dispose();
-        }
-        public void DisableGps()
-        {
-            _locator.Stop();
-        }
-
-        public void EnableGps()
-        {
-            _locator.Start();
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/Models/TizenServiceApplication.cs b/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/Models/TizenServiceApplication.cs
deleted file mode 100755 (executable)
index 41af805..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-using MapMyRunService.Models;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using Tizen.Applications;
-
-namespace MapMyRunService.Tizen.Models
-{
-    class TizenServiceApplication : ITizenServiceApplication
-    {
-        readonly ServiceApplication _serviceApp;
-
-        public TizenServiceApplication(ServiceApplication serviceApp)
-        {
-            _serviceApp = serviceApp;
-        }
-
-        public void ExitApplication()
-        {
-            _serviceApp.Exit();
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/Services/SensorService.cs b/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/Services/SensorService.cs
deleted file mode 100755 (executable)
index 5082817..0000000
+++ /dev/null
@@ -1,280 +0,0 @@
-using MapMyRunService.Models;
-using MapMyRunService.Tizen.Models;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using Tizen.Location;
-using Tizen.Security;
-using Tizen.Sensor;
-
-namespace MapMyRunService.Tizen.Services
-{
-    public class SensorService
-    {
-        private readonly string healthSensorPrivilege = "http://tizen.org/privilege/healthinfo";
-        private readonly string gpsPrivilege = "http://tizen.org/privilege/location";
-
-        private HeartRateMonitor heartRateMonitor;
-        private Pedometer pedometerSensor;
-
-        private Locator locator;
-        private bool locatorRunning = false;
-
-        private bool runHealthRequested = false;
-        private bool runGpsRequested = false;
-
-
-        public HeartRateData CurrentHeartRateData { get; private set; }
-        public PedometerData CurrentPedometerData { get; private set; }
-        public LocationData CurrentLocationData { get; private set; }
-
-
-        private static SensorService _instance;
-        public static SensorService Instance
-        {
-            get
-            {
-                if (_instance == null)
-                    _instance = new SensorService();
-
-                return _instance;
-            }
-            set
-            {
-                _instance = value;
-            }
-        }
-
-        private SensorService()
-        {
-            CurrentHeartRateData = new HeartRateData();
-            CurrentPedometerData = new PedometerData();
-            CurrentLocationData = new LocationData();
-
-            CheckPermissionsThenInit(healthSensorPrivilege);
-            CheckPermissionsThenInit(gpsPrivilege);
-        }
-
-        /// <summary>
-        /// Check sensor status
-        /// </summary>
-        /// <param name="sensor"></param>
-        /// <returns></returns>
-        public bool IsSensorRunning(SupportedSensor sensor)
-        {
-            switch (sensor)
-            {
-                case SupportedSensor.GPS:
-                    return locator != null && locatorRunning;
-                case SupportedSensor.HeartRate:
-                    return heartRateMonitor != null && heartRateMonitor.IsSensing;
-                case SupportedSensor.Pedometer:
-                    return pedometerSensor != null && pedometerSensor.IsSensing;
-            }
-
-            return false;
-        }
-
-        private void InitializeHealthSensors()
-        {
-            Console.WriteLine($"Initialize Health Sensors (HR, Pedometer).");
-
-            if (heartRateMonitor == null && HeartRateMonitor.IsSupported)
-            {
-                heartRateMonitor = new HeartRateMonitor();
-                heartRateMonitor.DataUpdated += new EventHandler<HeartRateMonitorDataUpdatedEventArgs>(UpdateHeartRateData);
-            }
-
-            if (pedometerSensor == null && Pedometer.IsSupported)
-            {
-                pedometerSensor = new Pedometer();
-                pedometerSensor.DataUpdated += new EventHandler<PedometerDataUpdatedEventArgs>(UpdatePedometerData);
-            }
-
-            if (runHealthRequested)
-            {
-                RunHealthSensors();
-            }
-        }
-
-        private void InitializeGPS()
-        {
-            Console.WriteLine($"Initialize GPS.");
-            if (locator == null)
-            {
-                locator = new Locator(LocationType.Gps);
-                locator.LocationChanged += new EventHandler<LocationChangedEventArgs>(UpdateLocationData);
-
-                if (runGpsRequested) 
-                {
-                    RunGPS();
-                } 
-            }
-        }
-
-        public void RunHealthSensors()
-        {
-            if (heartRateMonitor != null && !heartRateMonitor.IsSensing)
-            {
-                heartRateMonitor.Start();
-                Console.WriteLine($"HR Monitor started.");
-            }
-
-            if (pedometerSensor != null && !pedometerSensor.IsSensing)
-            {
-                pedometerSensor.Start();
-                Console.WriteLine($"Pedometer started.");
-            }
-
-            // Unable to run health sensors since they are not yet initialized
-            if ((heartRateMonitor == null && pedometerSensor == null))
-            {
-                runHealthRequested = true;
-            } else
-            {
-                runHealthRequested = false;
-            }
-        }
-
-        public void RunGPS()
-        {
-            if (locator != null)
-            {
-                locator.Start();
-                locatorRunning = true;
-                runGpsRequested = false;
-
-                Console.WriteLine($"GPS Sensing started.");
-            } else
-            {
-                // unable to run gps despite request
-                runGpsRequested = true;
-            }
-        }
-
-        public void StopSensor(SupportedSensor supportedSensor)
-        {
-            switch (supportedSensor)
-            {
-                case SupportedSensor.HeartRate:
-                    if (HeartRateMonitor.IsSupported && heartRateMonitor.IsSensing)
-                    {
-                        heartRateMonitor.Stop();
-                        Console.WriteLine($"HR Monitor stopped.");
-                    }
-                    break;
-                case SupportedSensor.Pedometer:
-                    if (Pedometer.IsSupported && pedometerSensor.IsSensing)
-                    {
-                        pedometerSensor.Stop();
-                        Console.WriteLine($"Pedometer stopped.");
-                    }
-                    break;
-                case SupportedSensor.GPS:
-                    if (locatorRunning)
-                    {
-                        locatorRunning = false;
-                        locator?.Stop();
-                        locator?.Dispose();
-                        Console.WriteLine($"GPS sensing stopped.");
-                    }
-                    break;
-                case SupportedSensor.All:
-                    if (HeartRateMonitor.IsSupported && heartRateMonitor.IsSensing)
-                    {
-                        heartRateMonitor.Stop();
-                        Console.WriteLine($"HR Monitor stopped.");
-                    }
-                    if (Pedometer.IsSupported && pedometerSensor.IsSensing)
-                    {
-                        pedometerSensor.Stop();
-                        Console.WriteLine($"Pedometer stopped.");
-                    }
-                    if (locatorRunning)
-                    {
-                        locatorRunning = false;
-                        locator?.Stop();
-                        // locator?.Dispose();
-                        Console.WriteLine($"GPS sensing stopped.");
-                    }
-                    break;
-            }
-        }
-
-        private void UpdatePedometerData(object sender, PedometerDataUpdatedEventArgs e)
-        {
-            //if (CurrentPedometerData.StepCount != e.StepCount)
-            //    Console.WriteLine($"Updated step count: {CurrentPedometerData.StepCount}");
-
-            CurrentPedometerData.StepCount = e.StepCount;
-            CurrentPedometerData.Distance = e.MovingDistance;
-            CurrentPedometerData.CaloriesBurned = e.CalorieBurned;
-            CurrentPedometerData.RunStepCount = e.RunStepCount;
-            CurrentPedometerData.WalkStepCount = e.WalkStepCount;
-            CurrentPedometerData.Speed = e.LastSpeed;
-        }
-
-        private void UpdateHeartRateData(object sender, HeartRateMonitorDataUpdatedEventArgs e)
-        {
-            //if (CurrentHeartRateData.LastHeartRate != e.HeartRate)
-            //    Console.WriteLine($"Updated HR: {CurrentHeartRateData.LastHeartRate}, Min: {CurrentHeartRateData.MinHeartRate}, Max: {CurrentHeartRateData.MaxHeartRate}");
-
-            CurrentHeartRateData.LastHeartRate = e.HeartRate;
-        }
-
-        private void UpdateLocationData(object sender, LocationChangedEventArgs e)
-        {
-            //if (CurrentLocationData.Latitude != e.Location.Latitude || CurrentLocationData.Longitude != e.Location.Longitude)
-            //    Console.WriteLine($"Updated location: Lat: {e.Location.Latitude}, Long: {e.Location.Longitude}");
-
-
-            CurrentLocationData.Latitude = e.Location.Latitude;
-            CurrentLocationData.Longitude = e.Location.Longitude;
-        }
-
-        private void CheckPermissionsThenInit(string privilege)
-        {
-            CheckResult result = PrivacyPrivilegeManager.CheckPermission(privilege);
-
-            switch (result)
-            {
-                case CheckResult.Allow:
-                    Console.WriteLine($"{privilege}: Allow");
-                    if (privilege == healthSensorPrivilege)
-                        InitializeHealthSensors();
-                    else
-                        InitializeGPS();
-                    break;
-                case CheckResult.Ask:
-                    Console.WriteLine($"{privilege}: Ask");
-
-                    PrivacyPrivilegeManager.RequestPermission(privilege);
-                    break;
-                case CheckResult.Deny:
-                    Console.WriteLine($"{privilege}: Deny");
-
-                    throw new UnauthorizedAccessException($"Service has no permission to use {privilege}");
-            }
-
-            PrivacyPrivilegeManager.ResponseContext responseContext;
-            PrivacyPrivilegeManager.GetResponseContext(privilege).TryGetTarget(out responseContext);
-            responseContext.ResponseFetched += new EventHandler<RequestResponseEventArgs>(PermissionUpdated);
-        }
-
-
-        void PermissionUpdated(object sender, RequestResponseEventArgs e)
-        {
-            Console.WriteLine($"Privilege {e.privilege} updated to: {e.result}");
-            CheckPermissionsThenInit(e.privilege);
-        }
-    }
-
-    public enum SupportedSensor
-    {
-        HeartRate,
-        Pedometer,
-        GPS,
-        All
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/Services/WorkoutService.cs b/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/Services/WorkoutService.cs
deleted file mode 100755 (executable)
index 123266b..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-using MapMyRunService.Models;
-using MapMyRunService.Models.Workout;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace MapMyRunService.Tizen.Services
-{
-    public class WorkoutService
-    {
-        private WorkoutManager workoutManager;
-
-        private SensorService sensorService;
-
-        public static WorkoutService Instance { get; private set; } = new WorkoutService();
-        private WorkoutService()
-        {
-            sensorService = SensorService.Instance;
-            workoutManager = WorkoutManager.Instance;
-        }
-
-        public void Initialize()
-        {
-            workoutManager.PrepareWKO += PrepareWorkout;
-            workoutManager.StartWKO += StartWorkout;
-            workoutManager.PauseWKO += PauseWorkout;
-            workoutManager.ResumeWKO += ResumeWorkout;
-            workoutManager.FinishWKO += EndWorkout;
-            workoutManager.ReadData += UpdateWorkoutData;
-
-            Console.WriteLine($"Workout service initialized.");
-        }
-
-        public void PrepareWorkout(WorkoutReport workoutReport)
-        {
-            Console.WriteLine($"[WorkoutService] Workout Prepared");
-
-            workoutReport.LocStart.Latitude = sensorService.CurrentLocationData.Latitude;
-            workoutReport.LocStart.Longitude = sensorService.CurrentLocationData.Longitude;
-        }
-
-        public void StartWorkout(WorkoutReport workoutReport)
-        {
-            Console.WriteLine($"[WorkoutService] Workout Started");
-
-            workoutReport.StartTime = DateTime.UtcNow;
-
-            sensorService.RunHealthSensors();
-            sensorService.RunGPS();
-        }
-
-        public void EndWorkout(WorkoutReport workoutReport)
-        {
-            Console.WriteLine($"[WorkoutService] Workout Finished");
-
-            workoutReport.EndTime = DateTime.UtcNow;
-            workoutReport.LocEnd.Latitude = sensorService.CurrentLocationData.Latitude;
-            workoutReport.LocEnd.Longitude = sensorService.CurrentLocationData.Longitude;
-
-            sensorService.StopSensor(SupportedSensor.All);
-        }
-
-        public void PauseWorkout(WorkoutReport workoutReport)
-        {
-            Console.WriteLine($"[WorkoutService] Workout Paused");
-            sensorService.StopSensor(SupportedSensor.All);
-        }
-
-        public void ResumeWorkout(WorkoutReport workoutReport)
-        {
-            Console.WriteLine($"[WorkoutService] Workout Resumed");
-
-            sensorService.RunHealthSensors();
-            sensorService.RunGPS();
-        }
-
-        public void UpdateWorkoutData(WorkoutReport workoutReport)
-        {
-            // Package workout data here
-
-            WorkoutData workoutData = new WorkoutData();
-            workoutData.calories = sensorService.CurrentPedometerData.CaloriesBurned.ToString(); 
-
-            AggregateData aggregateData = new AggregateData();
-            aggregateData.distance_total = sensorService.CurrentPedometerData.Distance;
-            aggregateData.steps_total = (int) sensorService.CurrentPedometerData.StepCount;
-            aggregateData.heartrate_avg = sensorService.CurrentHeartRateData.AvgHeartRate;
-            aggregateData.heartrate_max = sensorService.CurrentHeartRateData.MaxHeartRate;
-
-            workoutData.aggregates = aggregateData;
-
-            ActivityData hrActivity = new ActivityData();
-            hrActivity.min = sensorService.CurrentHeartRateData.MinHeartRate;
-            hrActivity.max = sensorService.CurrentHeartRateData.MaxHeartRate;
-            hrActivity.avg = sensorService.CurrentHeartRateData.AvgHeartRate;
-            hrActivity.latest = sensorService.CurrentHeartRateData.LastHeartRate;
-
-            workoutReport.workoutData = workoutData;
-            workoutReport.workoutData.hrData = hrActivity;
-        }
-
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/shared/res/MapMyRunService.png b/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/shared/res/MapMyRunService.png
deleted file mode 100755 (executable)
index 9f3cb98..0000000
Binary files a/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/shared/res/MapMyRunService.png and /dev/null differ
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/tizen-manifest.xml b/test/UnderArmour/MapMyRunService/MapMyRunService.Tizen/tizen-manifest.xml
deleted file mode 100755 (executable)
index e96c8aa..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<manifest package="org.tizen.example.MapMyRunService" version="1.0.0" api-version="4" xmlns="http://tizen.org/ns/packages">
-    <profile name="wearable" />
-    <service-application appid="org.tizen.example.MapMyRunService" exec="MapMyRunService.Tizen.dll" multiple="false" nodisplay="true" taskmanage="false" type="dotnet">
-        <label>MapMyRunService</label>
-        <icon>MapMyRunService.png</icon>
-        <splash-screens />
-    </service-application>
-    <shortcut-list />
-    <privileges>
-        <privilege>http://tizen.org/privilege/healthinfo</privilege>
-        <privilege>http://tizen.org/privilege/location</privilege>
-    </privileges>
-    <dependencies />
-    <provides-appdefined-privileges />
-    <feature name="http://tizen.org/feature/sensor.pedometer">true</feature>
-    <feature name="http://tizen.org/feature/sensor.heart_rate_monitor">true</feature>
-    <feature name="http://tizen.org/feature/location.gps">true</feature>
-</manifest>
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService.sln b/test/UnderArmour/MapMyRunService/MapMyRunService.sln
deleted file mode 100755 (executable)
index d93b454..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 16
-VisualStudioVersion = 16.0.29519.87
-MinimumVisualStudioVersion = 10.0.40219.1
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MapMyRunService.Tizen", "MapMyRunService.Tizen\MapMyRunService.Tizen.csproj", "{DACD098D-6BEB-491C-A91D-4FABB3D4490A}"
-EndProject
-Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "MapMyRunService", "MapMyRunService\MapMyRunService.shproj", "{7B89FD19-6DCD-4721-9000-FA612161C492}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MapMyRunService.Tests", "MapMyRunService.Test\MapMyRunService.Tests.csproj", "{D8AF456A-10C8-4BFE-BB6B-0120221A071A}"
-EndProject
-Global
-       GlobalSection(SolutionConfigurationPlatforms) = preSolution
-               Debug|Any CPU = Debug|Any CPU
-               Release|Any CPU = Release|Any CPU
-       EndGlobalSection
-       GlobalSection(ProjectConfigurationPlatforms) = postSolution
-               {DACD098D-6BEB-491C-A91D-4FABB3D4490A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {DACD098D-6BEB-491C-A91D-4FABB3D4490A}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {DACD098D-6BEB-491C-A91D-4FABB3D4490A}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {DACD098D-6BEB-491C-A91D-4FABB3D4490A}.Release|Any CPU.Build.0 = Release|Any CPU
-               {D8AF456A-10C8-4BFE-BB6B-0120221A071A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {D8AF456A-10C8-4BFE-BB6B-0120221A071A}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {D8AF456A-10C8-4BFE-BB6B-0120221A071A}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {D8AF456A-10C8-4BFE-BB6B-0120221A071A}.Release|Any CPU.Build.0 = Release|Any CPU
-       EndGlobalSection
-       GlobalSection(SolutionProperties) = preSolution
-               HideSolutionNode = FALSE
-       EndGlobalSection
-       GlobalSection(ExtensibilityGlobals) = postSolution
-               SolutionGuid = {C7B6B376-8277-40AC-83A5-4D7204FE8B38}
-       EndGlobalSection
-EndGlobal
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/MapMyRunService.projitems b/test/UnderArmour/MapMyRunService/MapMyRunService/MapMyRunService.projitems
deleted file mode 100755 (executable)
index e7fee0c..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
-    <HasSharedItems>true</HasSharedItems>
-    <SharedGUID>7b89fd19-6dcd-4721-9000-fa612161c492</SharedGUID>
-  </PropertyGroup>
-  <PropertyGroup Label="Configuration">
-    <Import_RootNamespace>MapMyRunService</Import_RootNamespace>
-  </PropertyGroup>
-  <ItemGroup>
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Account\User.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Account\UserDao.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Auth\IAuthCache.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Auth\IAuthenticationProvider.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Auth\AuthenticationToken.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Auth\Authentication.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Auth\ExampleAuthProvider.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\HttpService.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Dispatcher.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\IDB.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\IDispatcher.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\IMessagePortHandler.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\KeepAlive\KeepAlive.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Loading.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\NotificationObserver.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\NotificationProvider.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Request.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Response.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\ITizenServiceApplication.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Settings\SettingsManager.cs" />
-    <Compile Include="..\MapMyRunService\Models\Settings\IGPSManager.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Settings\SettingsData.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Account\AccountManager.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\WorkoutManager.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\HeartRateData.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\LocationData.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\PedometerData.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Models\Workout\WorkoutData.cs" />
-    <Compile Include="..\MapMyRunService\Models\Workout\WorkoutReport.cs" />
-  </ItemGroup>
-</Project>
\ No newline at end of file
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/MapMyRunService.shproj b/test/UnderArmour/MapMyRunService/MapMyRunService/MapMyRunService.shproj
deleted file mode 100755 (executable)
index c4242e2..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup Label="Globals">
-    <ProjectGuid>7b89fd19-6dcd-4721-9000-fa612161c492</ProjectGuid>
-    <MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
-  </PropertyGroup>
-  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
-  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.Common.Default.props" />
-  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.Common.props" />
-  <PropertyGroup />
-  <Import Project="MapMyRunService.projitems" Label="Shared" />
-  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.CSharp.targets" />
-</Project>
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Account/AccountManager.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Account/AccountManager.cs
deleted file mode 100755 (executable)
index 561db94..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-using Newtonsoft.Json;
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRunService.Models.Account
-{
-    public class AccountManager
-    {
-
-        private readonly IDispatcher _dispatcher;
-        private readonly IDB database;
-        private readonly UserDao userDao;
-        private const string GET_DATA_ACTION_KEY = "action";
-        private User currentUser;
-
-        private class GetDataContent
-        {
-            public int action;
-        }
-
-        public AccountManager(IDB _database, IDispatcher dispatcher)
-        {
-            database = _database;
-            userDao = new UserDao(database);
-            _dispatcher = dispatcher;
-            currentUser = userDao.Get("");
-        }
-
-        public void StartListenGetData()
-        {
-            NotificationObserver getDataObserver = new NotificationObserver(OperationType.GetData);
-            getDataObserver.NotificationReceived += (Dictionary<string, string> data) =>
-            {
-                data.TryGetValue("transID", out string transID);
-                data.TryGetValue("data", out string dataValue);
-
-                Console.WriteLine($"[Service] OperationType.GetData notification");
-                Console.WriteLine($"transID: {transID}, value: {dataValue}");
-
-                GetDataContent getDataContent = null;
-                try
-                {
-                    getDataContent = JsonConvert.DeserializeObject<GetDataContent>(dataValue);
-                }
-                catch
-                {
-                    Console.WriteLine("Get Data JSON Parse Fail");
-                }
-
-                if (DataActionType.GetUserProfile != (DataActionType)getDataContent.action
-                    && DataActionType.GetUpdatedUserProfile != (DataActionType)getDataContent.action)
-                {
-                    return;
-                }
-
-                string dataJson = JsonConvert.SerializeObject(currentUser);
-                var response = new Response(transID, dataJson, ResponseStatus.Success);
-
-                _dispatcher.SendReply(response);
-            };
-
-            var monitor = _dispatcher.Listen(OperationType.GetData);
-            getDataObserver.Subscribe(monitor);
-        }
-
-        public void DeleteCurrentUser()
-        {
-            currentUser = userDao.Get("");
-
-            if (currentUser != null)
-            {
-                Console.WriteLine($"[AccountManager] Deleting user");
-                userDao.Delete(currentUser);
-            }
-            currentUser = null;
-        }
-
-        public void UpdateUser(User user)
-        {
-            currentUser = user;
-            userDao.Update(user);
-        }
-
-        public void ChangeUser(User user)
-        {
-            DeleteCurrentUser();
-            userDao.Insert(user);
-            currentUser = user;
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Account/User.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Account/User.cs
deleted file mode 100755 (executable)
index 655e1f9..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-using SQLite;
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRunService.Models.Account
-{
-    public class User
-    {
-        [PrimaryKey]
-        public int id { get; set; }
-        public string first_name { get; set; }
-        public string last_name { get; set; }
-        public string display_name { get; set; }
-        public double weight { get; set; }
-        public double height { get; set; }
-        public string hobbies { get; set; }
-        public string date_joined { get; set; }
-        public string introduction { get; set; }
-        public string display_measurement_system { get; set; }
-        public string last_login { get; set; }
-        public string email { get; set; }
-        public string username { get; set; }
-        public string last_initial { get; set; }
-        public string preferred_language { get; set; }
-        public string gender { get; set; }
-        public string time_zone { get; set; }
-        public string birthdate { get; set; }
-        public string profile_statement { get; set; }
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Account/UserDao.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Account/UserDao.cs
deleted file mode 100755 (executable)
index 8d078ca..0000000
+++ /dev/null
@@ -1,120 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRunService.Models.Account
-{
-    public class UserDao
-    {
-        private IDB database;
-        private readonly int SAMPLE_ID = 12345678;
-
-        public UserDao(IDB _database)
-        {
-            database = _database;
-            database.getConnection().CreateTable<User>();
-
-            InsertSampleData(); // temporary
-
-            Console.WriteLine($"[UserDao] Test DB Read:");
-            var user = database.getConnection().Table<User>().First();
-            Console.WriteLine($"[UserDao] Username: {user.username}, email: {user.email}");
-        }
-
-        public User Get(string id)
-        {
-            if (id.Equals(""))
-            {
-                try
-                {
-                    var currentUser = database.getConnection().Table<User>().First();
-                    return currentUser;
-                }
-                catch (Exception)
-                {
-                    Console.WriteLine($"[DB] Get Error: no user found");
-                    return null;
-                }
-            }
-
-            try
-            {
-                var currentUser = database.getConnection().Query<User>("select * from User where id = ?", id);
-                Console.WriteLine($"[DB] Get User: user size {currentUser.Count}");
-                return currentUser[0];
-            } 
-            catch (Exception)
-            {
-                Console.WriteLine($"[DB] Get Error: no user found");
-                return null;
-            }
-        }
-
-        public void Insert(User user)
-        {
-            try
-            {
-                database.getConnection().Insert(user);
-            }
-            catch (Exception)
-            {
-                Console.WriteLine($"[DB] Get Error");
-            }
-        }
-
-        public void Update(User user)
-        {
-            try
-            {
-                database.getConnection().Update(user);
-            }
-            catch (Exception)
-            {
-                Console.WriteLine($"[DB] Update Error");
-            }
-        }
-
-        public void Delete(User user)
-        {
-            try
-            {
-                database.getConnection().Delete(user);
-            }
-            catch (Exception)
-            {
-                Console.WriteLine($"[DB] Delete Error: no user found");
-            }
-        }
-
-        public void InsertSampleData()
-        {
-            if (database.getConnection().Table<User>().Count() == 0)
-            {
-                Console.WriteLine($"DB is empty. Adding sample data.");
-
-                // add sample user
-                User sampleUser = new User
-                {
-                    id = SAMPLE_ID,
-                    first_name = "Sample",
-                    last_name = "User",
-                    display_name = "Sample",
-                    weight = 75.55,
-                    height = 1.75,
-                    date_joined = "2019-09-20T04:51:23+00:00",
-                    display_measurement_system = "metric",
-                    last_login = "2019-09-20T04:51:23+00:00",
-                    email = "sample_user@email.org",
-                    username = "sample_user",
-                    last_initial = "U",
-                    preferred_language = "en-US",
-                    gender = "M",
-                    time_zone = "Asia/Seoul",
-                    birthdate = "1940-02-25"
-                };
-
-                Insert(sampleUser);
-            }
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Auth/Authentication.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Auth/Authentication.cs
deleted file mode 100755 (executable)
index 5342d52..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-using System;
-using System.Threading;
-using System.Threading.Tasks;
-
-namespace MapMyRunService.Models.Auth
-{
-    public class Authentication
-    {
-        private static SemaphoreSlim RequestLock = new SemaphoreSlim(1, 1);
-        private const string ClientId = "ExampleClientID123";
-        private const string ClientSecret = "ExampleClientSecret123";
-
-        private readonly IAuthenticationProvider authProvider;
-        private IAuthCache authCache;
-
-        public AuthenticationToken AuthToken { get; set; } = null;
-
-        public Authentication(IAuthenticationProvider authProvider, IAuthCache authCache)
-        {
-            AuthToken = new AuthenticationToken()
-            {
-                ClientId = ClientId,
-                ClientSecret = ClientSecret
-            };
-            this.authProvider = authProvider;
-            this.authCache = authCache;
-        }
-
-        public async Task<bool> RequestAuthentication()
-        {
-            if (AuthToken.AccessToken is null)
-            {
-                await RequestLock.WaitAsync();
-                try
-                {
-                    if (AuthToken.AccessToken is null)
-                    {
-                        Console.WriteLine("[Auth] Request auth tokens");
-
-                        if (!authCache.GetToken(AuthToken))
-                        {
-                            await authProvider.RequestAuthentication(AuthToken);
-                        }
-
-                        if (AuthToken.AccessToken is null)
-                        {
-                            Console.WriteLine("[Auth] Authentication Failed");
-                            return false;
-                        }
-                        else
-                        {
-                            authCache.SaveToken(AuthToken);
-                            Console.WriteLine("[Auth] Authentication Success");
-                            return true;
-                        }
-                    }
-                }
-                finally
-                {
-                    RequestLock.Release();
-                }
-            }
-            return true;
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Auth/AuthenticationToken.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Auth/AuthenticationToken.cs
deleted file mode 100755 (executable)
index 43d3272..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-
-namespace MapMyRunService.Models.Auth
-{
-    public class AuthenticationToken
-    {
-        public string ClientId { get; set; } = null;
-        public string ClientSecret { get; set; } = null;
-        public string AccessToken { get; set; } = null;
-        public string RefreshToken { get; set; } = null;
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Auth/ExampleAuthProvider.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Auth/ExampleAuthProvider.cs
deleted file mode 100755 (executable)
index 7b22816..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-using System;
-using System.Net.Http;
-using System.Threading.Tasks;
-using System.Collections.Generic;
-using Newtonsoft.Json;
-
-namespace MapMyRunService.Models.Auth
-{
-    /// <summary>
-    /// ExampleAuthProvider uses "Type on watch" authentication method.
-    /// Although this authentication method requires a lot of typing on a small screen,
-    /// It provides the most simple model of user authentication.
-    /// Authentication providers should set up a login page that can be fully displayed on a wearable device screen. 
-    /// </summary>
-    public sealed class ExampleAuthProvider : IAuthenticationProvider
-    {
-        private const string AuthServerUri = "http://example.org/authenticate/wearable";
-        private const string AccessTokenKey = "access_token";
-        private const string RefreshTokenKey = "refresh_token";
-
-        private class HttpResponseBody
-        {
-            public Dictionary<string, string> json;
-        }
-
-        public ExampleAuthProvider()
-        {
-        }
-
-        public async Task RequestAuthentication(AuthenticationToken authToken)
-        {
-            try
-            {
-                HttpResponseMessage response = await HttpService.Instance.GetAsync(AuthServerUri);
-
-                if (response.IsSuccessStatusCode)
-                {
-                    Console.WriteLine("Example authentication request authentication success");
-                    string responseBodyString = await response.Content.ReadAsStringAsync();
-                    HttpResponseBody responseBody = JsonConvert.DeserializeObject<HttpResponseBody>(responseBodyString);
-                    if (responseBody.json.ContainsKey(AccessTokenKey))
-                    {
-                        if (responseBody.json.ContainsKey(RefreshTokenKey))
-                        {
-                            authToken.AccessToken = responseBody.json[AccessTokenKey];
-                            authToken.RefreshToken = responseBody.json[RefreshTokenKey];
-                        }
-                        else
-                        {
-                            Console.WriteLine($"HttpResponse does not have access token or access token property key does not match {RefreshTokenKey}");
-                        }
-                    }
-                    else
-                    {
-                        Console.WriteLine($"HttpResponse does not have access token or access token property key does not match {AccessTokenKey}");
-                    }
-                }
-                else
-                {
-                    Console.WriteLine("Example authentication request authentication failed");
-                }
-            }
-            catch (HttpRequestException e)
-            {
-                // Dummy response for testing with test URL
-                Console.WriteLine($"[Auth] Example authentication - using test authToken");
-                authToken.AccessToken = "test";
-                authToken.RefreshToken = "test";
-            }
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Auth/IAuthCache.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Auth/IAuthCache.cs
deleted file mode 100755 (executable)
index 1c5dbf2..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRunService.Models.Auth
-{
-    public interface IAuthCache
-    {
-        bool GetToken(AuthenticationToken authToken);
-
-        void SaveToken(AuthenticationToken authToken);
-
-        void RemoveToken();
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Auth/IAuthenticationProvider.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Auth/IAuthenticationProvider.cs
deleted file mode 100755 (executable)
index 49a0a4e..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-using System.Threading.Tasks;
-
-namespace MapMyRunService.Models.Auth
-{
-    public interface IAuthenticationProvider
-    {
-        Task RequestAuthentication(AuthenticationToken authToken);
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Dispatcher.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Dispatcher.cs
deleted file mode 100755 (executable)
index 35ddc1a..0000000
+++ /dev/null
@@ -1,147 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace MapMyRunService.Models
-{
-    public class Dispatcher : IDispatcher
-    {
-        IMessagePortHandler _messagePortHandler = null;
-        private const string UIAppId = "org.tizen.example.MapMyRun";
-        private const string LocalPort = "SERVICE_PORT";
-        private const string RemotePort = "APP_PORT";
-        public const string OperationKey = "operation";
-        public const string DataKey = "data";
-        public const string TransIdKey = "transID";
-        public const string ResponseStatusKey = "status";
-        private const bool SecureMode = false;
-        private uint TransIdIndex = 0;
-        private readonly Dictionary<string, Request> RequestCache = new Dictionary<string, Request>();
-        private readonly List<NotificationProvider> NotificationProviders = new List<NotificationProvider>();
-
-        public static Dispatcher Instance { get; private set; } = new Dispatcher();
-
-        private Dispatcher()
-        {
-        }
-
-        public void Initialize(IMessagePortHandler messagePortHandler)
-        {
-            _messagePortHandler = messagePortHandler;
-            _messagePortHandler.MessageReceived += OnReceiveMessage;
-            _messagePortHandler.Connect(LocalPort, UIAppId, RemotePort, SecureMode);
-        }
-
-        public string SendRequest(Request request)
-        {
-            request.TransID = TransIdIndex.ToString();
-            TransIdIndex++;
-            RequestCache.Add(request.TransID, request);
-            var dataSet = new Dictionary<string, string>
-            {
-                { OperationKey, ((int)request.Operation).ToString() },
-                { DataKey, request.Data },
-                { TransIdKey, request.TransID }
-            };
-
-            _messagePortHandler.Send(dataSet);
-            return request.TransID;
-        }
-
-        public string SendReply(Response response)
-        {
-            var dataSet = new Dictionary<string, string>
-            {
-                { TransIdKey, response.TransID },
-                { DataKey, response.Data },
-                { ResponseStatusKey, response.Status.ToString()}
-            };
-
-            _messagePortHandler.Send(dataSet);
-            return response.TransID;
-        }
-
-        public void OnReceiveMessage(Dictionary<string, string> dataSet)
-        {
-            if (dataSet.TryGetValue(OperationKey, out string operation))
-            {
-                Console.WriteLine($"[Service] Receive Notification: {operation}");
-
-                try
-                {
-                    OperationType type = (OperationType)Int32.Parse(operation);
-                    //if (dataSet.TryGetValue(DataKey, out string data))
-                    //    PostNotification(data, type);
-                    PostNotification(dataSet, type);
-                }
-                catch
-                {
-                    Console.WriteLine("[Service] Invalid Operation");
-                }
-                return;
-            }
-
-            if (!dataSet.TryGetValue(TransIdKey, out string tid))
-            {
-                Console.WriteLine("[Service] Request for operation response is not found");
-                return;
-            }
-
-            if (RequestCache.TryGetValue(tid, out Request cachedRequest))
-            {
-                dataSet.TryGetValue(DataKey, out string data);
-                dataSet.TryGetValue(ResponseStatusKey, out string status);
-                ResponseStatus responseStatus;
-                try
-                {
-                    responseStatus = (ResponseStatus)Int32.Parse(status);
-                }
-                catch
-                {
-                    responseStatus = ResponseStatus.Fail;
-                }
-
-                var response = new Response(tid, data, responseStatus);
-                cachedRequest.OnReceiveResponse(response);
-            }
-        }
-
-        void PostNotification(Dictionary<string, string> dataSet, OperationType type)
-        {
-            NotificationProvider notificationMonitor;
-            try
-            {
-                notificationMonitor = NotificationProviders.Find(x => x != null && x.Type == type);
-                notificationMonitor.PostNotification(dataSet);
-            }
-            catch
-            {
-                Console.WriteLine($"[Service] Notification Monitor none: {type}");
-            }
-        }
-
-        public bool IsRemoteRunning()
-        {
-            return _messagePortHandler.IsRemoteRunning(UIAppId, RemotePort, SecureMode);
-        }
-
-        public NotificationProvider Listen(OperationType type)
-        {
-            NotificationProvider notificationMonitor;
-            try
-            {
-                notificationMonitor = NotificationProviders.Find(x => x != null && x.Type == type);
-                Console.WriteLine($"[Service] Listen exist Notification Monitor {notificationMonitor.Type}");
-                return notificationMonitor;
-            }
-            catch
-            {
-                notificationMonitor = new NotificationProvider(type);
-                NotificationProviders.Add(notificationMonitor);
-                Console.WriteLine($"[Service] Create new Notification Monitor {notificationMonitor.Type}");
-                return notificationMonitor;
-            }
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/HttpService.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/HttpService.cs
deleted file mode 100755 (executable)
index 88310eb..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-using System.Net.Http;
-
-namespace MapMyRunService.Models
-{
-    public sealed class HttpService : HttpClient
-    {
-        private static HttpService _instance;
-        private static readonly object INSTANCELOCK = new object();
-
-        private HttpService(){
-        }
-
-        public static HttpService Instance
-        {
-            get
-            {
-                if(_instance is null)
-                {
-                    lock (INSTANCELOCK)
-                    {
-                        if(_instance is null)
-                        {
-                            _instance = new HttpService();
-                        }
-                    }
-                }
-                return _instance;
-            }
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/IDB.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/IDB.cs
deleted file mode 100755 (executable)
index 8b51106..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-using SQLite;
-
-namespace MapMyRunService.Models
-{
-    public interface IDB
-    {
-        SQLiteConnection getConnection();
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/IDispatcher.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/IDispatcher.cs
deleted file mode 100755 (executable)
index a20205a..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace MapMyRunService.Models
-{
-    public interface IDispatcher
-    {
-        void Initialize(IMessagePortHandler messagePortHandler);
-
-        string SendRequest(Request request);
-
-        string SendReply(Response response);
-
-        void OnReceiveMessage(Dictionary<string, string> data);
-
-        bool IsRemoteRunning();
-
-        NotificationProvider Listen(OperationType type);
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/IMessagePortHandler.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/IMessagePortHandler.cs
deleted file mode 100755 (executable)
index b69e614..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace MapMyRunService.Models
-{
-    public interface IMessagePortHandler
-    {
-        void Connect(string localPort, string remoteAppId, string remotePort, bool secureMode);
-
-        bool IsRemoteRunning(string remoteAppId, string remotePort, bool secureMode);
-
-        void Disconnect();
-
-        void Send(Dictionary<string, string> data);
-
-        event Action<Dictionary<string, string>> MessageReceived;
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/ITizenServiceApplication.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/ITizenServiceApplication.cs
deleted file mode 100755 (executable)
index afd5d79..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRunService.Models
-{
-    public interface ITizenServiceApplication
-    {
-        void ExitApplication();
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/KeepAlive/KeepAlive.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/KeepAlive/KeepAlive.cs
deleted file mode 100755 (executable)
index d32135f..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-using System.Timers;
-
-namespace MapMyRunService.Models.KeepAlive
-{
-    class KeepAlive
-    {
-        NotificationObserver _exitAppObserver;
-        readonly IDispatcher _dispatcher;
-        readonly ITizenServiceApplication _tizenServiceApp;
-        private Timer periodicUpdateTimer;
-
-        public KeepAlive(IDispatcher dispatcher, ITizenServiceApplication tizenServiceApp)
-        {
-            _dispatcher = dispatcher;
-            _tizenServiceApp = tizenServiceApp;
-        }
-
-        public void Start()
-        {
-            ListenExitApp();
-
-            periodicUpdateTimer = new Timer(5000);
-            periodicUpdateTimer.Elapsed += new ElapsedEventHandler((s, e) => {
-                Console.WriteLine("[Service] Check keep-alive");
-                if (!_dispatcher.IsRemoteRunning())
-                {
-                    Console.WriteLine("UI Applicaions disconnected : ExitApp");
-                    _tizenServiceApp.ExitApplication();
-                }
-            });
-            periodicUpdateTimer.AutoReset = true;
-            periodicUpdateTimer.Enabled = true;
-        }
-
-        void ListenExitApp()
-        {
-            _exitAppObserver = new NotificationObserver(OperationType.ExitApp);
-            _exitAppObserver.NotificationReceived += (Dictionary<string, string> data) =>
-            {
-                Console.WriteLine("Receive ExitApp");
-                _tizenServiceApp.ExitApplication();
-            };
-
-            var monitor = _dispatcher.Listen(OperationType.ExitApp);
-            _exitAppObserver.Subscribe(monitor);
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Loading.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Loading.cs
deleted file mode 100755 (executable)
index ce1d476..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-using MapMyRunService.Models.Auth;
-using System;
-using System.Collections.Generic;
-using System.Text;
-using Newtonsoft.Json;
-using System.Threading.Tasks;
-using MapMyRunService.Models.Workout;
-using MapMyRunService.Models.Account;
-
-namespace MapMyRunService.Models
-{
-    public class Loading
-    {
-        readonly string _uiAppId;
-        readonly IDispatcher _dispatcher;
-        readonly IMessagePortHandler _messagePortHandler;
-        private AccountManager accountManager;
-        private IDB _database;
-        private IAuthCache _authCache;
-
-        public Loading(IMessagePortHandler messagePortHandler, string uiAppId, IDB database, IAuthCache authCache)
-        {
-            _messagePortHandler = messagePortHandler;
-            _dispatcher = Dispatcher.Instance;
-            _uiAppId = uiAppId;
-            _database = database;
-            _authCache = authCache;
-        }
-
-        public void StartLoading()
-        {
-            InitializeMessageListeners();
-            WorkoutManager.Instance.InitalizeWorkoutListeners();
-            accountManager = new AccountManager(_database, _dispatcher);
-            accountManager.StartListenGetData();
-        }
-
-        /// <summary>
-        /// Listeners to UI app
-        /// </summary>
-        private void InitializeMessageListeners()
-        {
-            ListenAuth();
-            ListenRequestPermission();
-        }
-
-        private void ListenAuth()
-        {
-            NotificationObserver checkAuthObserver = new NotificationObserver(OperationType.CheckIsAuthenticated);
-            checkAuthObserver.NotificationReceived += async (Dictionary<string, string> data) =>
-            {
-
-                data.TryGetValue("transID", out string transID);
-                data.TryGetValue("data", out string dataValue);
-
-                Console.WriteLine($"[Service] OperationType.CheckIsAuthenticated notif");
-                Console.WriteLine($"transID: {transID}, value: {dataValue}");
-
-                Authentication auth = new Authentication(new ExampleAuthProvider(), _authCache);
-                bool success = await auth.RequestAuthentication();
-                if (success)
-                {
-                    // Response payload(second parameter) is empty because the UI app doesn't have to know the access token.
-                    // It just needs to know that the request was successful.
-                    var response = new Response(transID, "", ResponseStatus.Success);
-                    _dispatcher.SendReply(response);
-                }
-                else
-                {
-                    Console.WriteLine("[Service] Authentication request was not successful");
-                    var response = new Response(transID, "", ResponseStatus.Fail);
-                    _dispatcher.SendReply(response);
-                }
-            };
-
-            var monitor = _dispatcher.Listen(OperationType.CheckIsAuthenticated);
-            checkAuthObserver.Subscribe(monitor);
-        }
-
-        private void ListenRequestPermission()
-        {
-            NotificationObserver prepareWkoObserver = new NotificationObserver(OperationType.RequestPermission);
-            prepareWkoObserver.NotificationReceived += (Dictionary<string, string> data) =>
-            {
-
-                data.TryGetValue("transID", out string transID);
-                data.TryGetValue("data", out string dataValue);
-
-                Console.WriteLine($"[Service] OperationType.RequestPermission notif");
-                Console.WriteLine($"transID: {transID}, value: {dataValue}");
-
-                // TOOD: Insert proper response here
-                var response = new Response(transID, "{\"data\": true}", ResponseStatus.Success);
-
-                _dispatcher.SendReply(response);
-            };
-
-            var monitor = _dispatcher.Listen(OperationType.RequestPermission);
-            prepareWkoObserver.Subscribe(monitor);
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/NotificationObserver.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/NotificationObserver.cs
deleted file mode 100755 (executable)
index 9be2970..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRunService.Models
-{
-    public class NotificationObserver : IObserver<Dictionary<string, string>>
-    {
-        public OperationType Type { get; }
-        public event Action<Dictionary<string, string>> NotificationReceived;
-        public event Action<Exception> NotificationErrorReceived;
-        IDisposable _cancellation;
-
-        public NotificationObserver(OperationType type)
-        {
-            Type = type;
-        }
-
-        public void Subscribe(NotificationProvider provider)
-        {
-            _cancellation = provider.Subscribe(this);
-        }
-
-        public void Unsubscribe()
-        {
-            _cancellation.Dispose();
-        }
-
-        public void OnCompleted()
-        {
-            Console.WriteLine($"Notification Observer Completed Type: {Type}");
-        }
-
-        public void OnError(Exception error)
-        {
-            NotificationErrorReceived(error);
-        }
-
-        public void OnNext(Dictionary<string, string> value)
-        {
-            NotificationReceived(value);
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/NotificationProvider.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/NotificationProvider.cs
deleted file mode 100755 (executable)
index 37a323b..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRunService.Models
-{
-    public class NotificationProvider : IObservable<Dictionary<string, string>>
-    {
-        readonly List<IObserver<Dictionary<string, string>>> observers;
-        public OperationType Type { get; }
-        public string Name { get; }
-
-        public NotificationProvider(OperationType type)
-        {
-            Type = type;
-            observers = new List<IObserver<Dictionary<string, string>>>();
-        }
-
-        public void PostNotification(Dictionary<string, string> dataSet)
-        {
-            foreach (var observer in observers)
-                observer.OnNext(dataSet);
-        }
-
-        public IDisposable Subscribe(IObserver<Dictionary<string, string>> observer)
-        {
-            if (!observers.Contains(observer))
-                observers.Add(observer);
-            return new Unsubscriber(observers, observer);
-        }
-
-        private class Unsubscriber : IDisposable
-        {
-            private readonly List<IObserver<Dictionary<string, string>>> _observers;
-            private readonly IObserver<Dictionary<string, string>> _observer;
-
-            public Unsubscriber(List<IObserver<Dictionary<string, string>>> observers, IObserver<Dictionary<string, string>> observer)
-            {
-                _observers = observers;
-                _observer = observer;
-            }
-
-            public void Dispose()
-            {
-                if (_observer != null && _observers.Contains(_observer))
-                    _observers.Remove(_observer);
-            }
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Request.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Request.cs
deleted file mode 100755 (executable)
index e079086..0000000
+++ /dev/null
@@ -1,129 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace MapMyRunService.Models
-{
-    public enum OperationType
-    {
-        PrepareWKO = 1,
-        StartWKO,
-        PauseWKO,
-        ResumeWKO,
-        FinishWKO,
-        SaveWKO,
-        DiscardWKO,
-        CheckSContext,
-        CheckIsLoggedIn,
-        NavigateToLogin,
-        NavigateToProfile,
-        CheckIsAuthenticated,
-        CheckIsInstalled,
-        GetData,
-        UpdateNutritionPreference,
-        GetSleepScore,
-        ExitApp,
-        MFPGetCurrentSteps,
-        MFPAddEnergy,
-        MFPAddWater,
-        GetSettings,
-        SetSettings,
-        GetWorkoutSettings,
-        SetWorkoutSettings,
-        UnfinishedWorkoutRestore,
-        RestoreWKO,
-        StartGpsAcquire,
-        StopGpsAcquire,
-        CheckNetworkConnection,
-        ChangeNutritionSource,
-        GetConsentStatus,
-        GetUserGear,
-        ConnectUserGear,
-        DisconnectUserGear,
-        RequestPermission,
-        GetTodayTrainingPlans,
-        // More operations to be here
-        OperationMax = GetTodayTrainingPlans,
-        // Notification Type Start
-        WkoDataChanged,
-        HRData,
-        AggregatesData,
-        HRZone,
-        IntensityChanged,
-        GetDiarySummary,
-        GetCachedDiarySummary,
-        StepsChanged,
-        SapInitialized,
-        ApplicationInitialized,
-        ApplicationStarted,
-        NoBluetoothConnection,
-        WristUpEvent,
-        MfpDataUpdated,
-        SapRemoteServiceNotFound,
-        WillpowerChanged,
-        EnergyChanged,
-        SpeedChanged,
-        GpsStateChanged,
-        ShoesStateChanged,
-        MeasurementPreferenceChanged,
-        NutritionPreferencesUpdated,
-        SleepScoreReceived,
-        WorkoutSyncSuccess,
-        WorkoutSyncFailed,
-        UserProfileUpdated,
-        LocationChanged,
-        Logout,
-        SettingsChanged,
-        WorkoutSettingsChanged,
-        SapConnectionTimeout,
-        LangChanged,
-        HapticFeedback,
-        NutritionSourceSupportChanged,
-        CadenceChanged,
-        StrideLengthChanged,
-        RTFCUpdate,
-        RTFCNotification,
-        RTSCUpdate,
-        RTSCNotification,
-        GoalUpdate,
-        GoalCompleted,
-        AppStateForeground,
-        AppStateBackground,
-        // More operations to be here
-        NotificationTypeMax = AppStateBackground
-    }
-
-    public enum DataActionType
-    {
-        None = 0,
-        GetUserProfile,
-        GetUpdatedUserProfile,
-        PostWorkout,
-        GetUserGoals,
-        GetUpToDateUserGoals,
-        GetHrZones,
-        GetChallenges,
-        GetChallengeDetails,
-        GetWorkouts
-    }
-
-    public class Request
-    {
-        public OperationType Operation { get; }
-        public string Data { get; }
-        public event Action<Response> ResponseReceived;
-        public string TransID { get; set; }
-
-        public Request (OperationType operation, string data)
-        {
-            Operation = operation;
-            Data = data;
-        }
-
-        public void OnReceiveResponse(Response response)
-        {
-            ResponseReceived?.Invoke(response);
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Response.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Response.cs
deleted file mode 100755 (executable)
index 901f351..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace MapMyRunService.Models
-{
-    public enum ResponseStatus
-    {
-        Success = 0,
-        Unsupported,
-        Fail
-    }
-
-    public class Response
-    {
-        public string Data { get; }
-        public string TransID { get; }
-        public ResponseStatus Status { get; }
-
-        public Response(string tid, string data, ResponseStatus status)
-        {
-            TransID = tid;
-            Data = data;
-            Status = status;
-        }
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Settings/IGPSManager.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Settings/IGPSManager.cs
deleted file mode 100755 (executable)
index a5f2fc8..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRunService.Models.Settings
-{
-    public class GPSStateEventArgs : EventArgs
-    {
-        public bool enabled;
-        public GPSStateEventArgs()
-        {
-            enabled = false;
-        }
-    }
-
-    public interface IGPSManager
-    {
-        event EventHandler<GPSStateEventArgs> GPSChanged;
-        void EnableGps();
-        void DisableGps();
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Settings/SettingsData.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Settings/SettingsData.cs
deleted file mode 100755 (executable)
index 2847f91..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRunService.Models.Settings
-{
-    public class SettingsData
-    {
-        public GpsSettingData gps { get; set; }
-        public DebugSettingData debug { get; set; }
-        public ScreenSettingData screenTimeout { get; set; }
-    }
-
-    public class GpsSettingData
-    {
-        public bool systemValue { get; set; }
-        public bool isEnabled { get; set; }
-        public bool isSupported { get; set; }
-    }
-
-    public class DebugSettingData
-    {
-        public FileLogger fileLogger { get; set; }
-        public bool isEnabled { get; set; }
-        public bool isSupported { get; set; }
-    }
-
-    public class ScreenSettingData
-    {
-        public int value { get; set; }
-        public bool isEnabled { get; set; }
-        public bool isSupported { get; set; }
-    }
-
-    public class FileLogger
-    {
-        public bool isEnabled { get; set; }
-        public bool isSupported { get; set; }
-    }
-}
\ No newline at end of file
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Settings/SettingsManager.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Settings/SettingsManager.cs
deleted file mode 100755 (executable)
index f0737b8..0000000
+++ /dev/null
@@ -1,133 +0,0 @@
-using System;
-using System.Collections.Generic;
-using Newtonsoft.Json;
-
-namespace MapMyRunService.Models.Settings
-{
-    public class SettingsManager
-    {
-        private IDispatcher _dispatcher;
-        private IGPSManager _gpsmanager;
-        private SettingsData _settings;
-
-        public SettingsManager(IDispatcher dispatcher)
-        {
-            _dispatcher = dispatcher;
-            _settings = new SettingsData();
-            _gpsmanager = null;
-        }
-
-        public void initializeGPS(IGPSManager gpsmanager)
-        {
-            _gpsmanager = gpsmanager;
-            gpsmanager.GPSChanged += (object s, GPSStateEventArgs e) =>
-            {
-                GpsSettingData gps = new GpsSettingData();
-                gps.isEnabled = e.enabled;
-                _settings.gps = gps;
-            };
-        }
-
-        public void Initialize()
-        {
-            ListenStartGpsAcquire();
-            ListenStopGpsAcquire();
-            
-            ListenGetSettings();
-        }
-
-        public void ListenGetSettings()
-        {
-            NotificationObserver getSettingsObserver = new NotificationObserver(OperationType.GetSettings);
-
-            getSettingsObserver.NotificationReceived += (Dictionary<string, string> data) =>
-            {
-                data.TryGetValue("transID", out string transID);
-                data.TryGetValue("data", out string dataValue);
-
-                Console.WriteLine($"[Service] OperationType.GetSettings notif");
-                Console.WriteLine($"transID: {transID}, value: {dataValue}");
-
-                string settingsDataJsonString = JsonConvert.SerializeObject(_settings);
-                _dispatcher.SendReply(new Response(transID, settingsDataJsonString, ResponseStatus.Success));
-                
-            };
-
-            var monitor = _dispatcher.Listen(OperationType.GetSettings);
-            getSettingsObserver.Subscribe(monitor);
-        }
-
-        public void ListenStartGpsAcquire()
-        {
-            NotificationObserver startGpsAcquire = new NotificationObserver(OperationType.StartGpsAcquire);
-
-            startGpsAcquire.NotificationReceived += (Dictionary<string, string> data) =>
-            {
-                data.TryGetValue("transID", out string transID);
-                data.TryGetValue("data", out string dataValue);
-
-                Console.WriteLine($"[Service] OperationType.StartGpsAcquire notif");
-                Console.WriteLine($"transID: {transID}, value: {dataValue}");
-
-                if(_gpsmanager is null)
-                {
-                    Console.WriteLine("GPS Manager is not set");
-                    _dispatcher.SendReply(new Response(transID, "", ResponseStatus.Fail));
-                }
-                else
-                {
-                    try
-                    {
-                        _gpsmanager.EnableGps();
-                        _dispatcher.SendReply(new Response(transID, "", ResponseStatus.Success));
-                    }
-                    catch
-                    {
-                        Console.WriteLine("Error in gps manager");
-                        _dispatcher.SendReply(new Response(transID, "", ResponseStatus.Fail));
-                    }
-                }
-            };
-
-            var monitor = _dispatcher.Listen(OperationType.StartGpsAcquire);
-            startGpsAcquire.Subscribe(monitor);
-        }
-
-        public void ListenStopGpsAcquire()
-        {
-            NotificationObserver stopGpsAcquire = new NotificationObserver(OperationType.StopGpsAcquire);
-
-            stopGpsAcquire.NotificationReceived += (Dictionary<string, string> data) =>
-            {
-                data.TryGetValue("transID", out string transID);
-                data.TryGetValue("data", out string dataValue);
-
-                Console.WriteLine($"[Service] OperationType.StopGpsAcquire notif");
-                Console.WriteLine($"transID: {transID}, value: {dataValue}");
-
-                if (_gpsmanager is null)
-                {
-                    Console.WriteLine("GPS Manager is not set");
-                    _dispatcher.SendReply(new Response(transID, "", ResponseStatus.Fail));
-                }
-                else
-                {
-                    try
-                    {
-                        _gpsmanager.DisableGps();
-                        _dispatcher.SendReply(new Response(transID, "", ResponseStatus.Success));
-                    }
-                    catch
-                    {
-                        Console.WriteLine("Error in gps manager");
-                        _dispatcher.SendReply(new Response(transID, "", ResponseStatus.Fail));
-                    }
-                }
-            };
-
-            var monitor = _dispatcher.Listen(OperationType.StopGpsAcquire);
-            stopGpsAcquire.Subscribe(monitor);
-        }
-
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Workout/HeartRateData.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Workout/HeartRateData.cs
deleted file mode 100755 (executable)
index 093cf6b..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace MapMyRunService.Models
-{
-    public class HeartRateData
-    {
-        private int _lastHeartRate = -1;
-        public int LastHeartRate
-        {
-            get
-            {
-                return _lastHeartRate;
-            }
-            set
-            {
-                MinHeartRate = value <= 0 ? 0
-                                : value < MinHeartRate ? value : MinHeartRate; 
-                MaxHeartRate = value > MaxHeartRate ? value : MaxHeartRate;
-
-                _lastHeartRate = value <= 0 ? 0 : value;
-                AvgHeartRate = value;
-            }
-        }
-
-        private int hrDataPoints { get; set; } = 0;
-        private int _avgHeartRate { get; set; } = 0;  
-        public int AvgHeartRate
-        {
-            get
-            {
-
-                return _avgHeartRate / (hrDataPoints < 1 ? 1 : hrDataPoints);
-            }
-            set
-            {
-                if (value <= 0) return;
-
-                _avgHeartRate += value;
-                hrDataPoints++;
-            }
-        }
-
-        public int MinHeartRate { get; set; } = 10000;
-        public int MaxHeartRate { get; set; } = -1;
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Workout/LocationData.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Workout/LocationData.cs
deleted file mode 100755 (executable)
index 3a8ac74..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace MapMyRunService.Models
-{
-    public class LocationData
-    {
-        public double Latitude { get; set; } = 0;
-        public double Longitude { get; set; } = 0;
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Workout/PedometerData.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Workout/PedometerData.cs
deleted file mode 100755 (executable)
index 10cb926..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace MapMyRunService.Models
-{
-    public class PedometerData
-    {
-        public uint StepCount { get; set; } = 0;
-        public uint WalkStepCount { get; set; } = 0;
-        public uint RunStepCount { get; set; } = 0;
-        public float CaloriesBurned { get; set; } = 0;
-        public float Distance { get; set; } = 0;
-        public float Speed { get; set; } = 0;
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Workout/WorkoutData.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Workout/WorkoutData.cs
deleted file mode 100755 (executable)
index 0ba852b..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace MapMyRunService.Models.Workout
-{
-    public class WorkoutData
-    {
-        public string calories { get; set; }
-        public string willpower { get; set; }
-        public string hrZone { get; set; }
-        public string intensity { get; set; }
-        public AggregateData aggregates { get; set; }
-        public ActivityData cadence { get; set; }
-        public ActivityData hrData { get; set; }
-        public ActivityData speed { get; set; }
-        public ActivityData strideLength { get; set; }
-        public RangeCoachingResult formCoach { get; set; }
-        public RangeCoachingResult speedCoach { get; set; }
-        public FitnessCoachingResult goalCoach { get; set; }
-    }
-
-    public class ActivityData
-    {
-        public float min { get; set; }
-        public float max { get; set; }
-        public float avg { get; set; }
-        public float latest { get; set; }
-        public string type { get; set; }
-    }
-
-    public class AggregateData
-    {
-        public float distance_total { get; set; }
-        public float metabolic_energy_total { get; set; }
-        public float intensity_avg { get; set; }
-        public float willpower { get; set; }
-        public int active_time_total { get; set; }
-        public int elapsed_time_total { get; set; }
-        public int steps_total { get; set; }
-        public int heartrate_avg { get; set; }
-        public int heartrate_max { get; set; }
-        public float speed_max { get; set; }
-        public float speed_avg { get; set; }
-        public float cadence_avg { get; set; }
-        public float cadence_max { get; set; }
-        public float stride_length_avg { get; set; }
-    }
-
-    public class RangeCoachingResult
-    {
-        public float targetMax { get; set; }
-        public float targetMin { get; set; }
-        public float currentValue { get; set; }
-        public int status { get; set; }
-        public bool notif { get; set; }
-    }
-
-    public class FitnessCoachingResult
-    {
-        public float current { get; set; }
-        public float target { get; set; }
-        public float percentage { get; set; }
-    }
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Workout/WorkoutManager.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Workout/WorkoutManager.cs
deleted file mode 100755 (executable)
index 47c5dcd..0000000
+++ /dev/null
@@ -1,209 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-using System.Timers;
-using Newtonsoft.Json;
-
-
-namespace MapMyRunService.Models.Workout
-{
-    public class WorkoutManager
-    {
-        private IDispatcher _dispatcher;
-   
-        public event Action<WorkoutReport> PrepareWKO = delegate { };
-        public event Action<WorkoutReport> StartWKO = delegate { };
-        public event Action<WorkoutReport> PauseWKO = delegate { };
-        public event Action<WorkoutReport> FinishWKO = delegate { };
-        public event Action<WorkoutReport> ResumeWKO = delegate { };
-        public event Action<WorkoutReport> ReadData = delegate { };
-
-        private Timer periodicUpdateTimer;
-        private bool shouldSendUpdates;
-        private double updateInProgress; // 0 - false, 1 - true
-        private WorkoutReport currentWorkoutReport;
-
-        public static WorkoutManager Instance { get; private set; } = new WorkoutManager();
-        private WorkoutManager()
-        {
-            _dispatcher = Dispatcher.Instance;
-            InitializePeriodicReporter();
-        }
-
-        private void InitializePeriodicReporter()
-        {
-            updateInProgress = 0;
-            shouldSendUpdates = false;
-            periodicUpdateTimer = new Timer(1000);
-            periodicUpdateTimer.Elapsed += new ElapsedEventHandler((s, e) => { UpdateWKOData(); });
-            periodicUpdateTimer.AutoReset = true;
-        }
-
-        private void disablePeriodicReporter()
-        {
-            shouldSendUpdates = false;
-            periodicUpdateTimer.Enabled = false;
-        }
-
-        private void enablePeriodicReporter()
-        {
-            shouldSendUpdates = true;
-            periodicUpdateTimer.Enabled = true;
-        }
-
-        public void InitalizeWorkoutListeners()
-        {
-            ListenPrepareWKO();
-            ListenStartWKO();
-            ListenPauseWKO();
-            ListenFinishWKO();
-            ListenResumeWKO();
-        }
-
-        private void ListenPrepareWKO()
-        {
-            currentWorkoutReport = new WorkoutReport();
-
-            NotificationObserver prepareWkoObserver = new NotificationObserver(OperationType.PrepareWKO);
-            prepareWkoObserver.NotificationReceived += (Dictionary<string, string> data) =>
-            {
-
-                data.TryGetValue("transID", out string transID);
-                data.TryGetValue("data", out string dataValue);
-
-                Console.WriteLine($"[Service] OperationType.PrepareWKO notif");
-                Console.WriteLine($"transID: {transID}, value: {dataValue}");
-
-                // TOOD: Insert proper response here
-                var response = new Response(transID, "{\"data\": 42}", ResponseStatus.Success);
-
-                _dispatcher.SendReply(response);
-
-                PrepareWKO?.Invoke(currentWorkoutReport);
-            };
-
-            var monitor = _dispatcher.Listen(OperationType.PrepareWKO);
-            prepareWkoObserver.Subscribe(monitor);
-        }
-
-        private void ListenStartWKO()
-        {
-            NotificationObserver prepareWkoObserver = new NotificationObserver(OperationType.StartWKO);
-            prepareWkoObserver.NotificationReceived += (Dictionary<string, string> data) =>
-            {
-
-                data.TryGetValue("transID", out string transID);
-                data.TryGetValue("data", out string dataValue);
-
-                Console.WriteLine($"[Service] OperationType.StartWKO notif");
-                Console.WriteLine($"transID: {transID}, value: {dataValue}");
-
-                // TOOD: Insert proper response here
-                var response = new Response(transID, "{\"data\": 42}", ResponseStatus.Success);
-
-                _dispatcher.SendReply(response);
-
-                StartWKO?.Invoke(currentWorkoutReport);
-
-                enablePeriodicReporter();
-            };
-
-            var monitor = _dispatcher.Listen(OperationType.StartWKO);
-            prepareWkoObserver.Subscribe(monitor);
-        }
-
-        private void ListenFinishWKO()
-        {
-            NotificationObserver prepareWkoObserver = new NotificationObserver(OperationType.FinishWKO);
-            prepareWkoObserver.NotificationReceived += (Dictionary<string, string> data) =>
-            {
-
-                data.TryGetValue("transID", out string transID);
-                data.TryGetValue("data", out string dataValue);
-
-                Console.WriteLine($"[Service] OperationType.FinishWKO notif");
-                Console.WriteLine($"transID: {transID}, value: {dataValue}");
-
-                // TOOD: Insert proper response here
-                var response = new Response(transID, "{\"data\": 42}", ResponseStatus.Success);
-
-                disablePeriodicReporter();
-                _dispatcher.SendReply(response);
-                FinishWKO?.Invoke(currentWorkoutReport);
-            };
-
-            var monitor = _dispatcher.Listen(OperationType.FinishWKO);
-            prepareWkoObserver.Subscribe(monitor);
-        }
-
-        private void ListenResumeWKO()
-        {
-            NotificationObserver prepareWkoObserver = new NotificationObserver(OperationType.ResumeWKO);
-            prepareWkoObserver.NotificationReceived += (Dictionary<string, string> data) =>
-            {
-
-                data.TryGetValue("transID", out string transID);
-                data.TryGetValue("data", out string dataValue);
-
-                Console.WriteLine($"[Service] OperationType.ResumeWKO notif");
-                Console.WriteLine($"transID: {transID}, value: {dataValue}");
-
-                // TOOD: Insert proper response here
-                var response = new Response(transID, "{\"data\": 42}", ResponseStatus.Success);
-
-                enablePeriodicReporter();
-                _dispatcher.SendReply(response);
-                ResumeWKO?.Invoke(currentWorkoutReport);
-            };
-
-            var monitor = _dispatcher.Listen(OperationType.ResumeWKO);
-            prepareWkoObserver.Subscribe(monitor);
-        }
-
-        private void ListenPauseWKO()
-        {
-            NotificationObserver prepareWkoObserver = new NotificationObserver(OperationType.PauseWKO);
-            prepareWkoObserver.NotificationReceived += (Dictionary<string, string> data) =>
-            {
-
-                data.TryGetValue("transID", out string transID);
-                data.TryGetValue("data", out string dataValue);
-
-                Console.WriteLine($"[Service] OperationType..PauseWKO notif");
-                Console.WriteLine($"transID: {transID}, value: {dataValue}");
-
-                // TOOD: Insert proper response here
-                var response = new Response(transID, "{\"data\": 42}", ResponseStatus.Success);
-
-                disablePeriodicReporter();
-                _dispatcher.SendReply(response);
-                PauseWKO?.Invoke(currentWorkoutReport);
-            };
-
-            var monitor = _dispatcher.Listen(OperationType.PauseWKO);
-            prepareWkoObserver.Subscribe(monitor);
-        }
-
-        private void UpdateWKOData()
-        {
-            if (shouldSendUpdates &&
-                System.Threading.Interlocked.CompareExchange(ref updateInProgress, 1, 0) == 0)
-            {
-                Console.WriteLine("START Update WKO Data >>>>>");
-                ReadData?.Invoke(currentWorkoutReport);
-
-                string jsonReport = JsonConvert.SerializeObject(currentWorkoutReport.workoutData);
-
-                var request = new Request(OperationType.WkoDataChanged, jsonReport);
-                request.ResponseReceived += (Response response) =>
-                {
-                    Console.WriteLine($"[Service] UpdateWKOData acknowledged.");
-                };
-                _dispatcher.SendRequest(request);
-
-                updateInProgress = 0;
-            }
-        }
-    }
-
-}
diff --git a/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Workout/WorkoutReport.cs b/test/UnderArmour/MapMyRunService/MapMyRunService/Models/Workout/WorkoutReport.cs
deleted file mode 100755 (executable)
index 1e1c952..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-using MapMyRunService.Models.Workout;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace MapMyRunService.Models
-{
-    public class WorkoutReport
-    {
-        public DateTime StartTime { get; set; }
-        public int TimePaused { get; set; }
-        public DateTime EndTime { get; set; }
-        public LocationData LocStart { get; set; }
-        public LocationData LocEnd { get; set; }
-
-        public WorkoutData workoutData { get; set; }
-
-        public WorkoutReport()
-        {
-            LocStart = new LocationData();
-            LocEnd = new LocationData();
-        }
-    }
-}
diff --git a/test/Voicememo2020/README.md b/test/Voicememo2020/README.md
deleted file mode 100755 (executable)
index 7d0db81..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-# Voicememo2020
-
-This is the Voicememo application for Galaxy Watch product in C#. 
diff --git a/test/Voicememo2020/VoiceMemo.sln b/test/Voicememo2020/VoiceMemo.sln
deleted file mode 100755 (executable)
index a463c94..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 16
-VisualStudioVersion = 16.0.29215.179
-MinimumVisualStudioVersion = 10.0.40219.1
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VoiceMemo", "VoiceMemo\VoiceMemo.csproj", "{E85DA711-1972-4A14-B80F-D354415A0F09}"
-EndProject
-Global
-       GlobalSection(SolutionConfigurationPlatforms) = preSolution
-               Debug|Any CPU = Debug|Any CPU
-               Release|Any CPU = Release|Any CPU
-       EndGlobalSection
-       GlobalSection(ProjectConfigurationPlatforms) = postSolution
-               {E85DA711-1972-4A14-B80F-D354415A0F09}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {E85DA711-1972-4A14-B80F-D354415A0F09}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {E85DA711-1972-4A14-B80F-D354415A0F09}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {E85DA711-1972-4A14-B80F-D354415A0F09}.Release|Any CPU.Build.0 = Release|Any CPU
-       EndGlobalSection
-       GlobalSection(SolutionProperties) = preSolution
-               HideSolutionNode = FALSE
-       EndGlobalSection
-       GlobalSection(ExtensibilityGlobals) = postSolution
-               SolutionGuid = {C4DF83AB-49AF-4F12-8BF5-22D1A7A720C8}
-       EndGlobalSection
-EndGlobal
diff --git a/test/Voicememo2020/VoiceMemo/App.xaml b/test/Voicememo2020/VoiceMemo/App.xaml
deleted file mode 100755 (executable)
index 84d1246..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<Application xmlns="http://xamarin.com/schemas/2014/forms"
-             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-             x:Class="VoiceMemo.App">
-       <Application.Resources>
-               <!-- Application resource dictionary -->
-        <ResourceDictionary>
-            <Style x:Key="LabelStyle-Base" TargetType="Label">
-                <Setter Property="HorizontalTextAlignment" Value="Center" />
-                <Setter Property="VerticalTextAlignment" Value="Center" />
-                <Setter Property="TextColor" Value="White" />
-            </Style>
-            <Style x:Key="BaseLabelStyle" TargetType="Label">
-                <Setter Property="HorizontalOptions" Value="Center" />
-                <Setter Property="VerticalOptions" Value="Center" />
-                <Setter Property="VerticalTextAlignment" Value="Center" />
-                <Setter Property="HorizontalTextAlignment" Value="Center" />
-                <Setter Property="TextColor" Value="White" />
-            </Style>
-        </ResourceDictionary>
-    </Application.Resources>
-</Application>
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/App.xaml.cs b/test/Voicememo2020/VoiceMemo/App.xaml.cs
deleted file mode 100755 (executable)
index d48e7ab..0000000
+++ /dev/null
@@ -1,112 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System.Globalization;
-using System.Threading;
-using VoiceMemo.Data;
-using VoiceMemo.Services;
-using VoiceMemo.ViewModels;
-using VoiceMemo.Views;
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-
-[assembly: XamlCompilation(XamlCompilationOptions.Compile)]
-namespace VoiceMemo
-{
-    /// <summary>
-    /// VoiceMemo Application class
-    /// </summary>
-    public partial class App : Application
-    {
-        MainPage firstPage;
-        //MainPageCS firstPageCS;
-        public MainPageModel mainPageModel;
-        public App()
-        {
-            // Get locale information
-            UpdateLocale();
-            InitializeComponent();
-
-            firstPage = (MainPage)PageFactory.GetInstance(Pages.StandBy);
-            MainPage = new NavigationPage(firstPage);
-            mainPageModel = (MainPageModel)firstPage.BindingContext;
-        }
-
-        // database for voice records
-        static RecordDatabase database;
-        public static RecordDatabase Database
-        {
-            get
-            {
-                if (database == null)
-                {
-                    database = new RecordDatabase(DeviceInformationService.Instance.GetLocalDBFilePath("DotnetVoiceMemo.db3"));
-                }
-
-                return database;
-            }
-        }
-
-        protected override void OnStart()
-        {
-
-        }
-
-        protected override void OnSleep()
-        {
-            // Handle when your app sleeps
-        }
-
-        protected override void OnResume()
-        {
-            // Handle when your app resumes
-        }
-
-        /// <summary>
-        /// Get the current locale and apply it.
-        /// </summary>
-        public void UpdateLocale()
-        {
-            // determine the correct, supported .NET culture
-            var ci = LocaleService.Instance.CurrentCultureInfo;
-            SetCultureInfo(ci);
-
-            // Whenever language has been changed, CurrentCulture will be updated.
-            //MessagingCenter.Subscribe<LocaleService, CultureInfo>(this, MessageKeys.LanguageChanged, (obj, culture) =>
-            //{
-            //    SetCultureInfo(culture);
-            //    MessagingCenter.Send<App>(this, MessageKeys.UpdateByLanguageChange);
-            //});
-            //Trace.End();
-        }
-
-        // Set the current culture
-        // It will be used by the Resource Manager
-        void SetCultureInfo(CultureInfo info)
-        {
-            Resx.AppResources.Culture = info; // set the RESX for resource localization
-            Thread.CurrentThread.CurrentCulture = info;
-            Thread.CurrentThread.CurrentUICulture = info;
-        }
-
-        public void Terminate()
-        {
-            MessagingCenter.Unsubscribe<LocaleService, CultureInfo>(this, MessageKeys.LanguageChanged);
-            //((MainPageModel)firstPage?.BindingContext).Dispose();
-            PageFactory.DestoryPage();
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Converters/CountryCodeToNameConverter.cs b/test/Voicememo2020/VoiceMemo/Converters/CountryCodeToNameConverter.cs
deleted file mode 100755 (executable)
index 037f521..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Globalization;
-using Xamarin.Forms;
-
-namespace VoiceMemo.Converters
-{
-    /// <summary>
-    /// NameType enum
-    /// </summary>
-    public enum NameType
-    {
-        /// <summary>
-        /// The name of Cultural Region
-        /// </summary>
-        RegionName,
-        /// <summary>
-        /// English Name
-        /// </summary>
-        EnglishName,
-    }
-
-    /// <summary>
-    /// Class CountryCodeToNameConverter
-    /// It converts country code to name.
-    /// </summary>
-    class CountryCodeToNameConverter : IValueConverter
-    {
-        /// <summary>
-        /// Converting source value to target value
-        /// </summary>
-        /// <param name="value">Source object</param>
-        /// <param name="targetType">The target type to convert</param>
-        /// <param name="parameter">parameter object</param>
-        /// <param name="culture">The culture info</param>
-        /// <returns>Returns converted bool to decide UI widget's visibility</returns>
-        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            string countryCode = (string)value;
-            if (countryCode == null)
-            {
-                return null;
-            }
-
-            var type = (NameType)parameter;
-            
-            switch (type)
-            {
-                case NameType.EnglishName:
-                    CultureInfo cultureInfo = new CultureInfo(countryCode);
-                    return cultureInfo.DisplayName;
-                case NameType.RegionName:
-                    RegionInfo regionInfo = new RegionInfo(countryCode.Replace("_", "-"));
-                    return regionInfo.EnglishName;
-                default:
-                    return null;
-            }
-        }
-
-        /// <summary>
-        /// Converting back source value to target value
-        /// This method is not being used in this app.
-        /// </summary>
-        /// <param name="value">Source object</param>
-        /// <seealso cref="System.object">
-        /// <param name="targetType">The target type to convert</param>
-        /// <seealso cref="Type">
-        /// <param name="CultureInfo">The culture info</param>
-        /// <seealso cref="CultureInfo">
-        /// <returns>Returns null</returns>
-        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            return null;
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Converters/DurationToRemainingTimeConverter.cs b/test/Voicememo2020/VoiceMemo/Converters/DurationToRemainingTimeConverter.cs
deleted file mode 100755 (executable)
index 9efcfcc..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Globalization;
-using Xamarin.Forms;
-
-namespace VoiceMemo.Converters
-{
-    public enum RemainingTimeType
-    {
-        TimeText,
-    }
-
-    /// <summary>
-    /// Class DurationToRemainingTimeConverter
-    /// It converts duration information to remaining time.
-    /// format - minutes:seconds
-    /// </summary>
-    public class DurationToRemainingTimeConverter : IValueConverter
-    {
-        /// <summary>
-        /// Converting source value to target value
-        /// </summary>
-        /// <param name="value">Source object</param>
-        /// <param name="targetType">The target type to convert</param>
-        /// <param name="parameter">parameter object</param>
-        /// <param name="culture">The culture info</param>
-        /// <returns>Returns converted bool to decide UI widget's visibility</returns>
-        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            int remains = System.Convert.ToInt32(value);
-            RemainingTimeType type = (RemainingTimeType)parameter;
-            switch (type)
-            {
-                case RemainingTimeType.TimeText:
-                    int minutes = remains / 60000;
-                    int seconds = (remains - minutes * 60000) / 1000;
-                    return String.Format("{0:00}:{1:00}", minutes, seconds);
-                default:
-                    return null;
-            }
-        }
-
-        /// <summary>
-        /// Converting back source value to target value
-        /// This method is not being used in this app.
-        /// </summary>
-        /// <param name="value">Source object</param>
-        /// <seealso cref="System.object">
-        /// <param name="targetType">The target type to convert</param>
-        /// <seealso cref="Type">
-        /// <param name="CultureInfo">The culture info</param>
-        /// <seealso cref="CultureInfo">
-        /// <returns>Returns null</returns>
-        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            return null;
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Converters/RecordImageSourceColorConverter.cs b/test/Voicememo2020/VoiceMemo/Converters/RecordImageSourceColorConverter.cs
deleted file mode 100755 (executable)
index d8662f1..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Globalization;
-using VoiceMemo.Effects;
-using Xamarin.Forms;
-
-namespace VoiceMemo.Converters
-{
-    class RecordImageSourceColorConverter : IValueConverter
-    {
-        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            string source = (string)value;
-            Image imageOjb = (Image)parameter;
-
-            if (source == "record_stop_icon.png")
-            {
-                ImageAttributes.SetBlendColor(imageOjb, Color.Red);
-            }
-            else if (source == "recording_icon_pause.png")
-            {
-                ImageAttributes.SetBlendColor(imageOjb, Color.FromHex("#FF4F4F4F"));
-            }
-
-            return source;
-        }
-
-        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            throw new NotImplementedException();
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Converters/RecordsCountToViewVisibilityConverter.cs b/test/Voicememo2020/VoiceMemo/Converters/RecordsCountToViewVisibilityConverter.cs
deleted file mode 100755 (executable)
index 484e05d..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Globalization;
-using Xamarin.Forms;
-
-namespace VoiceMemo.Converters
-{
-    /// <summary>
-    /// The type of view
-    /// </summary>
-    public enum ViewType
-    {
-        /// <summary>
-        /// View which is shown when there is no record
-        /// </summary>
-        NoRecordView,
-        /// <summary>
-        /// List view when there are some records
-        /// </summary>
-        RecordListView,
-        RecordCheckView,
-    }
-
-    /// <summary>
-    /// converter class
-    /// Change the visibility of view based on the number of voice records
-    /// </summary>
-    public class RecordsCountToViewVisibilityConverter : IValueConverter
-    {
-        /// <summary>
-        /// Converting source value to target value
-        /// </summary>
-        /// <param name="value">Source object</param>
-        /// <param name="targetType">The target type to convert</param>
-        /// <param name="parameter">parameter object</param>
-        /// <param name="culture">The culture info</param>
-        /// <returns>Returns converted bool to decide UI widget's visibility</returns>
-        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            int RecordsCnt = System.Convert.ToInt32(value);
-            ViewType viewType = (ViewType)parameter;
-
-            switch (viewType)
-            {
-                case ViewType.NoRecordView:
-                    return RecordsCnt == 0 ? true : false;
-                case ViewType.RecordListView:
-                    return RecordsCnt == 0 ? false : true;
-                case ViewType.RecordCheckView:
-                    return RecordsCnt == 0 ? false : true;
-                default:
-                    return true;
-            }
-        }
-
-        /// <summary>
-        /// Converting back source value to target value
-        /// This method is not being used in this app.
-        /// </summary>
-        /// <param name="value">Source object</param>
-        /// <seealso cref="System.object">
-        /// <param name="targetType">The target type to convert</param>
-        /// <seealso cref="Type">
-        /// <param name="CultureInfo">The culture info</param>
-        /// <seealso cref="CultureInfo">
-        /// <returns>Returns null</returns>
-        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            return null;
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Converters/SttToPropertyConverter.cs b/test/Voicememo2020/VoiceMemo/Converters/SttToPropertyConverter.cs
deleted file mode 100755 (executable)
index 48915ee..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Globalization;
-using VoiceMemo.Resx;
-using Xamarin.Forms;
-
-namespace VoiceMemo.Converters
-{
-    public enum SttPropertyType
-    {
-        // Text : "On", "Off"
-        TextString,
-        // Image
-        ImageSource,
-        RecordImageSource,
-    }
-
-    /// <summary>
-    /// Converter class
-    /// According to whether or not STT feature usability is on,
-    /// this converter class will provider the proper text and the path of image file .
-    /// </summary>
-    public class SttToPropertyConverter : IValueConverter
-    {
-        /// <summary>
-        /// Converting source value to target value
-        /// </summary>
-        /// <param name="value">Source object</param>
-        /// <param name="targetType">The target type to convert</param>
-        /// <param name="parameter">parameter object</param>
-        /// <param name="culture">The culture info</param>
-        /// <returns>Returns converted bool to decide UI widget's visibility</returns>
-        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            bool isSttOn = (bool)System.Convert.ToBoolean(value);
-            SttPropertyType type = (SttPropertyType)parameter;
-            switch (type)
-            {
-                case SttPropertyType.TextString:
-                    return isSttOn ? AppResources.SttOn : AppResources.SttOff;
-                case SttPropertyType.ImageSource:
-                    return isSttOn ? "more_option_icon_stt_on.png" : "more_option_icon_stt_off.png";
-                case SttPropertyType.RecordImageSource:
-                    return isSttOn ? "voicerecorder_icon_stt.png" : "voicerecorder_icon_stt_off.png";
-                default:
-                    return null;
-            }
-        }
-
-        /// <summary>
-        /// Converting back source value to target value
-        /// This method is not being used in this app.
-        /// </summary>
-        /// <param name="value">Source object</param>
-        /// <seealso cref="System.object">
-        /// <param name="targetType">The target type to convert</param>
-        /// <seealso cref="Type">
-        /// <param name="CultureInfo">The culture info</param>
-        /// <seealso cref="CultureInfo">
-        /// <returns>Returns null</returns>
-        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            return null;
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Data/RecordDatabase.cs b/test/Voicememo2020/VoiceMemo/Data/RecordDatabase.cs
deleted file mode 100755 (executable)
index 2e3f1e1..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using SQLite;
-using System.Collections.Generic;
-using System.Threading.Tasks;
-using VoiceMemo.Models;
-
-namespace VoiceMemo.Data
-{
-    /// <summary>
-    /// Database class
-    /// It stores collection of records
-    /// </summary>
-    public class RecordDatabase
-    {
-        // SQLite connection
-        readonly SQLiteAsyncConnection database;
-
-        public RecordDatabase(string dbPath)
-        {
-            database = new SQLiteAsyncConnection(dbPath);
-            database.CreateTableAsync<Record>().Wait();
-        }
-
-        /// <summary>
-        /// Get list or records in database
-        /// </summary>
-        /// <returns>Task<List<Record>></returns>
-        public Task<List<Record>> GetItemsAsync()
-        {
-            return database.Table<Record>().ToListAsync();
-        }
-
-        /// <summary>
-        /// Save record in database
-        /// </summary>
-        /// <param name="item">Record</param>
-        /// <returns>Task<int></returns>
-        public Task<int> SaveItemAsync(Record item)
-        {
-            if (item.ID != 0)
-            {
-                // in case that item already exists in database
-                return database.UpdateAsync(item);
-            }
-            else
-            {
-                // for the first time item will be added in database
-                return database.InsertAsync(item);
-            }
-        }
-
-        /// <summary>
-        /// Delete record from database
-        /// </summary>
-        /// <param name="item">Record</param>
-        /// <returns>Task<int></returns>
-        public Task<int> DeleteItemAsync(Record item)
-        {
-            return database.DeleteAsync(item);
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/EffectRenderers/BlendColorEffect.cs b/test/Voicememo2020/VoiceMemo/EffectRenderers/BlendColorEffect.cs
deleted file mode 100755 (executable)
index f1dfb18..0000000
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using EColor = ElmSharp.Color;
-using EImage = ElmSharp.Image;
-using System;
-using System.ComponentModel;
-using VoiceMemo.EffectRenderers;
-using Xamarin.Forms;
-using Xamarin.Forms.Platform.Tizen;
-using VoiceMemo.Effects;
-
-[assembly: ResolutionGroupName("SEC")]
-[assembly: ExportEffect(typeof(BlendColorEffect), "BlendColorEffect")]
-
-namespace VoiceMemo.EffectRenderers
-{
-    internal class BlendColorEffect : PlatformEffect
-    {
-        static readonly EColor DefaultBlendColor = EColor.Default;
-
-        public object ImageAtctributes { get; private set; }
-
-        protected override void OnAttached()
-        {
-            try
-            {
-                if (Control is EImage nativeControl)
-                {
-                    nativeControl.LoadingCompleted += OnNativeImageLoadingCompleted;
-                }
-
-                UpdateBlendColor();
-            }
-            catch (Exception e)
-            {
-                Log.Error("Cannot set property on attached control. Error: ", e.Message);
-            }
-        }
-
-        protected override void OnDetached()
-        {
-            if (Control is EImage nativeControl)
-            {
-                nativeControl.LoadingCompleted -= OnNativeImageLoadingCompleted;
-                nativeControl.Color = DefaultBlendColor;
-            }
-        }
-
-        protected override void OnElementPropertyChanged(PropertyChangedEventArgs args)
-        {
-            try
-            {
-                if (args.PropertyName == ImageAttributes.BlendColorProperty.PropertyName)
-                {
-                    UpdateBlendColor();
-                }
-            }
-            catch (Exception e)
-            {
-                Log.Error("Cannot set property on attached control. Error : ", e.Message);
-            }
-
-            base.OnElementPropertyChanged(args);
-        }
-
-        void OnNativeImageLoadingCompleted(object sender, EventArgs e)
-        {
-            UpdateBlendColor();
-        }
-
-        void UpdateBlendColor()
-        {
-            if ((Element as Image).IsLoading)
-            {
-                Device.StartTimer(TimeSpan.Zero, () =>
-                {
-                    InternalBlendColorUpdate();
-                    return false;
-                });
-            }
-            else
-            {
-                InternalBlendColorUpdate();
-            }
-        }
-
-        void InternalBlendColorUpdate()
-        {
-            if (Control is EImage image)
-            {
-                var blendColor = (Color)Element.GetValue(ImageAttributes.BlendColorProperty);
-                image.Color = blendColor == Color.Default ? DefaultBlendColor : blendColor.ToNative();
-            }
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/EffectRenderers/TizenEventPropagationEffect.cs b/test/Voicememo2020/VoiceMemo/EffectRenderers/TizenEventPropagationEffect.cs
deleted file mode 100755 (executable)
index 7b766d5..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System.ComponentModel;
-using VoiceMemo.EffectRenderers;
-using Xamarin.Forms;
-using Xamarin.Forms.Platform.Tizen;
-
-[assembly: ExportEffect(typeof(TizenEventPropagationEffect), "TizenEventPropagationEffect")]
-
-namespace VoiceMemo.EffectRenderers
-{
-    class TizenEventPropagationEffect : PlatformEffect
-    {
-        protected override void OnAttached()
-        {
-            DoEnable();
-        }
-
-        protected override void OnDetached()
-        {
-            DoEnable(false);
-        }
-
-        protected override void OnElementPropertyChanged(PropertyChangedEventArgs args)
-        {
-            base.OnElementPropertyChanged(args);
-            if (args.PropertyName == VoiceMemo.Effects.TizenEventPropagationEffect.EnablePropagationProperty.PropertyName)
-            {
-                DoEnable();
-            }
-        }
-
-        void DoEnable()
-        {
-            var enablePropagation = VoiceMemo.Effects.TizenEventPropagationEffect.GetEnablePropagation(Element);
-            DoEnable(enablePropagation);
-        }
-
-        void DoEnable(bool enablePropagation)
-        {
-            Control.RepeatEvents = enablePropagation;
-            Control.PropagateEvents = enablePropagation;
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/EffectRenderers/TizenItemLongPressEffect.cs b/test/Voicememo2020/VoiceMemo/EffectRenderers/TizenItemLongPressEffect.cs
deleted file mode 100755 (executable)
index fbeff52..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using VoiceMemo.EffectRenderers;
-using Xamarin.Forms;
-using Xamarin.Forms.Platform.Tizen;
-
-[assembly: ExportEffect(typeof(TizenItemLongPressEffect), "ItemLongPressEffect")]
-
-namespace VoiceMemo.EffectRenderers
-{
-    public class TizenItemLongPressEffect : PlatformEffect
-    {
-        protected override void OnAttached()
-        {
-            var genlist = Control as ElmSharp.GenList;
-            if (genlist != null)
-            {
-                genlist.ItemLongPressed += ItemLongPressed;
-            }
-        }
-
-        protected override void OnDetached()
-        {
-            var genlist = this.Control as ElmSharp.GenList;
-            if (genlist != null)
-            {
-                genlist.ItemLongPressed -= ItemLongPressed;
-            }
-        }
-
-        void ItemLongPressed(object sender, ElmSharp.GenListItemEventArgs e)
-        {
-            var command = VoiceMemo.Effects.ItemLongPressEffect.GetCommand(Element);
-            command?.Execute(VoiceMemo.Effects.ItemLongPressEffect.GetCommandParameter(Element));
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/EffectRenderers/TizenStyleEffect.cs b/test/Voicememo2020/VoiceMemo/EffectRenderers/TizenStyleEffect.cs
deleted file mode 100755 (executable)
index 6ef8c60..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System.ComponentModel;
-using VoiceMemo.EffectRenderers;
-using Xamarin.Forms;
-using Xamarin.Forms.Platform.Tizen;
-
-[assembly: ExportEffect(typeof(TizenStyleEffect), "TizenStyleEffect")]
-
-namespace VoiceMemo.EffectRenderers
-{
-    public class TizenStyleEffect : PlatformEffect
-    {
-        string oldStyle;
-
-        protected override void OnAttached()
-        {
-            DoSetStyle();
-        }
-
-        protected override void OnDetached()
-        {
-            var view = Control as ElmSharp.Widget;
-            if (view != null)
-            {
-                view.Style = oldStyle;
-            }
-        }
-
-        protected override void OnElementPropertyChanged(PropertyChangedEventArgs args)
-        {
-            base.OnElementPropertyChanged(args);
-            if (args.PropertyName == VoiceMemo.Effects.TizenStyleEffect.StyleProperty.PropertyName)
-            {
-                DoSetStyle();
-            }
-        }
-
-        void DoSetStyle()
-        {
-            var view = Control as ElmSharp.Widget;
-            if (view != null)
-            {
-                var style = VoiceMemo.Effects.TizenStyleEffect.GetStyle(Element);
-                oldStyle = view.Style;
-                view.Style = style;
-            }
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Effects/ImageAttributes.cs b/test/Voicememo2020/VoiceMemo/Effects/ImageAttributes.cs
deleted file mode 100755 (executable)
index 0f1ad9f..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Collections.Generic;
-using Xamarin.Forms;
-
-namespace VoiceMemo.Effects
-{
-    public static class ImageAttributes
-    {
-        public static readonly BindableProperty BlendColorProperty = BindableProperty.CreateAttached("BlendColor", typeof(Color), typeof(ImageAttributes), Color.Default, propertyChanged: OnBlendColorPropertyChanged);
-        /// <summary>
-        /// Get blending color
-        /// </summary>
-        /// <param name="element">Image object</param>
-        /// <returns>Color</returns>
-        public static Color GetBlendColor(BindableObject element)
-        {
-            return (Color)element.GetValue(BlendColorProperty);
-        }
-
-        /// <summary>
-        /// Set blending color
-        /// </summary>
-        /// <param name="element">Image object</param>
-        /// <param name="color">Color</param>
-        public static void SetBlendColor(BindableObject element, Color color)
-        {
-            element.SetValue(BlendColorProperty, color);
-        }
-
-        static void OnBlendColorPropertyChanged(BindableObject bindable, object oldValue, object newValue)
-        {
-            InternalExtension.InternalPropertyChanged(bindable, BlendColorProperty, () => (Color)newValue == Color.Default, new List<Type> { typeof(Image) });
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Effects/ImageBlendEffect.cs b/test/Voicememo2020/VoiceMemo/Effects/ImageBlendEffect.cs
deleted file mode 100755 (executable)
index 8a622ec..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Collections.Generic;
-using Xamarin.Forms;
-
-namespace VoiceMemo.Effects
-{
-    public class ImageBlendEffect : RoutingEffect
-    {
-        public static readonly BindableProperty BlendColorProperty =
-            BindableProperty.CreateAttached("Color", typeof(Color), typeof(ImageBlendEffect), Color.Default);
-
-        public static Color GetBlendColor(BindableObject element)
-        {
-            return (Color)element.GetValue(BlendColorProperty);
-        }
-
-        public static void SetBlendColor(BindableObject element, Color color)
-        {
-            element.SetValue(BlendColorProperty, color);
-        }
-
-        static void OnBlendColorPropertyChanged(BindableObject bindable, object oldValue, object newValue)
-        {
-            InternalExtension.InternalPropertyChanged(bindable, BlendColorProperty, () => (Color)newValue == Color.Default, new List<Type> { typeof(Image) });
-        }
-
-        public ImageBlendEffect() : base("SEC.BlendColorEffect")
-        {
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Effects/InternalExtension.cs b/test/Voicememo2020/VoiceMemo/Effects/InternalExtension.cs
deleted file mode 100755 (executable)
index f53b3ae..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Collections.Generic;
-using Xamarin.Forms;
-
-namespace VoiceMemo.Effects
-{
-    internal static class InternalExtension
-    {
-        internal static void InternalPropertyChanged(BindableObject bindable, BindableProperty property, Func<bool> removalConditionFunc, IList<Type> supportedTypes = null)
-        {
-            if (supportedTypes != null && !supportedTypes.Contains(bindable.GetType()))
-            {
-                return;
-            }
-
-            var element = bindable as Element;
-            string effectName = GetEffectName(property.PropertyName);
-            Effect toRemove = null;
-
-            foreach (var effect in element.Effects)
-            {
-                if (effect.ResolveId == effectName)
-                {
-                    toRemove = effect;
-                    break;
-                }
-            }
-
-            if (toRemove == null)
-            {
-                element.Effects.Add(Effect.Resolve(effectName));
-            }
-            else
-            {
-                if (removalConditionFunc())
-                {
-                    element.Effects.Remove(toRemove);
-                }
-            }
-        }
-
-        internal static string GetEffectName(string propertyName)
-        {
-            return string.Format("SEC.{0}Effect", propertyName);
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Effects/ItemLongPressEffect.cs b/test/Voicememo2020/VoiceMemo/Effects/ItemLongPressEffect.cs
deleted file mode 100755 (executable)
index 8d11a1a..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System.Windows.Input;
-using Xamarin.Forms;
-
-namespace VoiceMemo.Effects
-{
-    /// <summary>
-    /// ItemLongPressEffect class
-    /// </summary>
-    public class ItemLongPressEffect : RoutingEffect
-    {
-        public static readonly BindableProperty CommandProperty = BindableProperty.CreateAttached("Command", typeof(ICommand), typeof(ItemLongPressEffect), null);
-        public static readonly BindableProperty CommandParameterProperty = BindableProperty.CreateAttached("CommandParameter", typeof(object), typeof(ItemLongPressEffect), null);
-
-        public static Command GetCommand(BindableObject view) => (Command)view.GetValue(CommandProperty);
-        public static void SetCommand(BindableObject view, ICommand value) => view.SetValue(CommandProperty, value);
-
-        public static object GetCommandParameter(BindableObject view) => view.GetValue(CommandParameterProperty);
-        public static void SetCommandParameter(BindableObject view, object value) => view.SetValue(CommandParameterProperty, value);
-
-        public ItemLongPressEffect() : base("SEC.ItemLongPressEffect")
-        {
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Effects/TizenEventPropagationEffect.cs b/test/Voicememo2020/VoiceMemo/Effects/TizenEventPropagationEffect.cs
deleted file mode 100755 (executable)
index 526551c..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using Xamarin.Forms;
-
-namespace VoiceMemo.Effects
-{
-    public class TizenEventPropagationEffect : RoutingEffect
-    {
-        public static BindableProperty EnablePropagationProperty = BindableProperty.CreateAttached("EnablePropagation", typeof(bool), typeof(TizenEventPropagationEffect), false);
-
-        public static bool GetEnablePropagation(BindableObject view) => (bool)view.GetValue(EnablePropagationProperty);
-        public static void SetEnablePropagation(BindableObject view, bool value) => view.SetValue(EnablePropagationProperty, value);
-
-        public TizenEventPropagationEffect() : base("SEC.TizenEventPropagationEffect")
-        {
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Effects/TizenStyleEffect.cs b/test/Voicememo2020/VoiceMemo/Effects/TizenStyleEffect.cs
deleted file mode 100755 (executable)
index 14c5d5d..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using Xamarin.Forms;
-
-namespace VoiceMemo.Effects
-{
-    public class TizenStyleEffect : RoutingEffect
-    {
-        public static readonly BindableProperty StyleProperty = BindableProperty.CreateAttached("Style", typeof(string), typeof(TizenStyleEffect), null);
-
-        public static string GetStyle(BindableObject velement) => (string)velement.GetValue(StyleProperty);
-        public static void SetStyle(BindableObject velement, string value) => velement.SetValue(StyleProperty, value);
-
-        public TizenStyleEffect() : base("SEC.TizenStyleEffect")
-        {
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Effects/VisualAttributes.cs b/test/Voicememo2020/VoiceMemo/Effects/VisualAttributes.cs
deleted file mode 100755 (executable)
index 298c1b5..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using Xamarin.Forms;
-
-namespace VoiceMemo.Effects
-{
-    public static class VisualAttributes
-    {
-        public static readonly BindableProperty ThemeStyleProperty = BindableProperty.CreateAttached("ThemeStyle", typeof(string), typeof(VisualAttributes), string.Empty, propertyChanged: OnThemeStylePropertyChanged);
-        public static readonly BindableProperty TooltipProperty = BindableProperty.CreateAttached("Tooltip", typeof(string), typeof(VisualAttributes), string.Empty, propertyChanged: OnTooltipPropertyChanged);
-
-        public static string GetThemeStyle(BindableObject element)
-        {
-            return (string)element.GetValue(ThemeStyleProperty);
-        }
-
-        public static void SetThemeStyle(BindableObject element, string themeStyle)
-        {
-            element.SetValue(ThemeStyleProperty, themeStyle);
-        }
-
-        public static string GetTooltip(BindableObject element)
-        {
-            return (string)element.GetValue(TooltipProperty);
-        }
-
-        public static void SetTooltip(BindableObject element, string tooltipText)
-        {
-            element.SetValue(TooltipProperty, tooltipText);
-        }
-
-        static void OnTooltipPropertyChanged(BindableObject bindable, object oldValue, object newValue)
-        {
-            InternalExtension.InternalPropertyChanged(bindable, TooltipProperty, () => (string)newValue == string.Empty);
-        }
-
-        static void OnThemeStylePropertyChanged(BindableObject bindable, object oldValue, object newValue)
-        {
-            InternalExtension.InternalPropertyChanged(bindable, ThemeStyleProperty, () => (string)newValue == string.Empty);
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Interop/Interop.Libraries.cs b/test/Voicememo2020/VoiceMemo/Interop/Interop.Libraries.cs
deleted file mode 100755 (executable)
index 1ea8a02..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-using System;
-using System.Runtime.InteropServices;
-
-namespace VoiceMemo.Interop
-{
-    internal static partial class Interop
-    {
-        internal static partial class Libraries
-        {
-            internal const string Libc = "libc.so.6";
-        }
-    }
-}
-
diff --git a/test/Voicememo2020/VoiceMemo/Interop/Interop.SystemCall.cs b/test/Voicememo2020/VoiceMemo/Interop/Interop.SystemCall.cs
deleted file mode 100755 (executable)
index 60a0778..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Runtime.InteropServices;
-using System.Text;
-
-namespace VoiceMemo.Interop
-{
-    internal static partial class Interop
-    {
-        internal static partial class SystemCall
-        {
-            [DllImport(Libraries.Libc, EntryPoint = "getenv")]
-            internal static extern IntPtr GetEnvInteral(string name);
-
-            internal static string GetEnv(string name)
-            {
-                return Marshal.PtrToStringAnsi(GetEnvInteral(name));
-            }
-
-            [DllImport(Libraries.Libc, EntryPoint = "setenv")]
-            internal static extern int SetEnv(string name, string value, int overwrite);
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Models/LatestRecord.cs b/test/Voicememo2020/VoiceMemo/Models/LatestRecord.cs
deleted file mode 100755 (executable)
index 6059375..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace VoiceMemo.Models
-{
-    public class LatestRecord : Record
-    {
-        public Record Record
-        {
-            get;
-            set;
-        }
-
-        public LatestRecord(Record record) : base()
-        {
-            Record = record;
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Models/Record.cs b/test/Voicememo2020/VoiceMemo/Models/Record.cs
deleted file mode 100755 (executable)
index 8f86f41..0000000
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using SQLite;
-using System;
-using System.ComponentModel;
-using System.Runtime.CompilerServices;
-
-namespace VoiceMemo.Models
-{
-    /// <summary>
-    /// Record class
-    /// It presents information about voice recording file
-    /// </summary>
-    public class Record : INotifyPropertyChanged
-    {
-        [PrimaryKey, AutoIncrement]
-        public int ID { get; set; }
-        public int _id { get; set; }
-        // the title of audio file
-        public string Title { get; set; }
-        // the date of audio file creation
-        public string Date { get; set; }
-        // the duration of recorded file
-        public int Duration { get; set; }
-        // the file path
-        public string Path { get; set; }
-        // indicate that speech-to-text service is enabled or not when recording the audio file
-        public bool SttEnabled { get; set; }
-
-        string _Text;
-        // Text converted by Speech-to-text service
-        public string Text
-        {
-            get
-            {
-                return _Text;
-            }
-
-            set
-            {
-                SetProperty(ref _Text, value, "Text");
-            }
-        }
-
-        bool _Checked;
-        /// <summary>
-        /// Indicate that it's selected or not to delete
-        /// If it's true, it will be deleted.
-        /// It's not stored in database
-        /// </summary>
-        [Ignore]
-        public bool Checked
-        {
-            get { return _Checked; }
-            set
-            {
-                bool changed = SetProperty(ref _Checked, value, "Checked");
-                if (changed)
-                {
-                    ((App)App.Current).mainPageModel.CheckedNamesCount += Checked ? 1 : -1;
-                }
-            }
-        }
-
-        public override string ToString()
-        {
-            return "Record[" + ID + "," + _id + "] " + Title + ", " + Path + ", " + Date + ", Stt(" + SttEnabled + ") " + "(" + Text + ")";
-        }
-
-        public event PropertyChangedEventHandler PropertyChanged;
-
-        protected bool SetProperty<T>(ref T storage, T value,
-                                      [CallerMemberName] string propertyName = null)
-        {
-            if (Object.Equals(storage, value))
-            {
-                return false;
-            }
-
-            storage = value;
-            OnPropertyChanged(propertyName);
-            return true;
-        }
-
-        /// <summary>
-        /// Called to notify that a change of property happened
-        /// </summary>
-        /// <param name="propertyName">The name of the property that changed</param>
-        protected void OnPropertyChanged([CallerMemberName] string propertyName = null)
-        {
-            PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Models/SttLanguage.cs b/test/Voicememo2020/VoiceMemo/Models/SttLanguage.cs
deleted file mode 100755 (executable)
index fcb16f1..0000000
+++ /dev/null
@@ -1,123 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.ComponentModel;
-using System.Runtime.CompilerServices;
-
-namespace VoiceMemo.Models
-{
-    /// <summary>
-    /// Class SttLanguage
-    /// It presents language (locale) information for Speech-to-Text service
-    /// </summary>
-    public class SttLanguage : INotifyPropertyChanged
-    {
-        bool _isOn;
-        string _lang, _combo, _name, _country;
-
-        public SttLanguage(string lang, string name, string country)
-        {
-            Lang = lang;
-            Name = name;
-            Country = country;
-            Combo = name + "----" + country;
-            IsOn = false;
-        }
-
-        /// <summary>
-        /// Language
-        /// </summary>
-        public string Lang
-        {
-            set { SetProperty(ref _lang, value, "Lang"); }
-            get { return _lang; }
-        }
-
-        /// <summary>
-        /// combination of the full localized culture name and the full name of the country/region in English
-        /// It's used to figure out which language is selected for Speech-to-Text service 
-        /// </summary>
-        public string Combo
-        {
-            set { SetProperty(ref _combo, value, "Combo"); }
-            get { return _combo; }
-        }
-
-        /// <summary>
-        /// Name
-        /// It's CultureInfo.DisplayName property and the full localized culture name
-        /// </summary>
-        public string Name
-        {
-            set { SetProperty(ref _name, value, "Name"); }
-            get { return _name; }
-        }
-
-        /// <summary>
-        /// Country name
-        /// It's RegionInfo.EnglishName property and the full name of the country/region in English.
-        /// </summary>
-        public string Country
-        {
-            set
-            {
-                SetProperty(ref _country, value, "Country");
-            }
-
-            get { return _country; }
-        }
-
-        // Indicate that this language is set for Stt service.
-        public bool IsOn
-        {
-            get { return _isOn; }
-            set
-            {
-                SetProperty(ref _isOn, value, "IsOn");
-            }
-        }
-
-        public override string ToString()
-        {
-            return "SttLanguage Name:" + Name + ", Country:" + Country + ", IsOn: " + IsOn;
-        }
-
-        public event PropertyChangedEventHandler PropertyChanged;
-
-        protected bool SetProperty<T>(ref T storage, T value,
-                                      [CallerMemberName] string propertyName = null)
-        {
-            if (Object.Equals(storage, value))
-            {
-                return false;
-            }
-
-            storage = value;
-            OnPropertyChanged(propertyName);
-            return true;
-        }
-
-        /// <summary>
-        /// Called to notify that a change of property happened
-        /// </summary>
-        /// <param name="propertyName">The name of the property that changed</param>
-        protected void OnPropertyChanged([CallerMemberName] string propertyName = null)
-        {
-            PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Renderers/GraphicPopUpRenderer.cs b/test/Voicememo2020/VoiceMemo/Renderers/GraphicPopUpRenderer.cs
deleted file mode 100755 (executable)
index edc8511..0000000
+++ /dev/null
@@ -1,139 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using ElmSharp;
-using System;
-using VoiceMemo.Tizen.Wearable.Renderers;
-using VoiceMemo.Views;
-using Xamarin.Forms.Platform.Tizen;
-// @OLD VERSION OF XAMARIN.FORMS
-//using TForms = Xamarin.Forms.Platform.Tizen.Forms;
-using TForms = Xamarin.Forms.Forms;
-using XForms = Xamarin.Forms;
-
-namespace VoiceMemo.Tizen.Wearable.Renderers
-{
-    class GraphicPopUpRenderer : IGraphicPopup, IDisposable
-    {
-        Popup _popUp;
-        bool _isDisposed = false;
-        public event EventHandler BackButtonPressed;
-        public event EventHandler TimedOut;
-
-        public GraphicPopUpRenderer()
-        {
-            _popUp = new Popup(TForms.NativeParent)
-            {
-                Style = "toast/circle",
-                Orientation = PopupOrientation.Center,
-                AllowEvents = true,
-            };
-            var path = ResourcePath.GetPath("tw_ic_popup_btn_check.png");
-            var image = new Image(_popUp);
-            image.LoadAsync(path);
-            image.Show();
-            _popUp.SetPartContent("toast,icon", image);
-            _popUp.BackButtonPressed += BackButtonPressedHandler;
-            _popUp.TimedOut += TimedOutHandler;
-            _popUp.Dismissed += _popUp_Dismissed;
-        }
-
-        private void _popUp_Dismissed(object sender, EventArgs e)
-        {
-        }
-
-        private void TimedOutHandler(object sender, EventArgs e)
-        {
-            TimedOut?.Invoke(this, EventArgs.Empty);
-            _popUp.Dismiss();
-        }
-
-        private void BackButtonPressedHandler(object sender, EventArgs e)
-        {
-            BackButtonPressed?.Invoke(this, EventArgs.Empty);
-            _popUp.Dismiss();
-        }
-
-        string _Text;
-        public string Text
-        {
-            get
-            {
-                return _Text;
-            }
-
-            set
-            {
-                if (_Text != value)
-                {
-                    _Text = value;
-                    _popUp.SetPartText("elm.text", Text);
-                }
-            }
-        }
-
-        double _Duration;
-        public double Duration
-        {
-            get
-            {
-                return _Duration;
-            }
-
-            set
-            {
-                if (_Duration != value)
-                {
-                    _Duration = value;
-                    _popUp.Timeout = Duration;
-                }
-            }
-        }
-
-
-        public void Dispose()
-        {
-            Dispose(true);
-            GC.SuppressFinalize(this);
-        }
-
-        protected virtual void Dispose(bool disposing)
-        {
-            if (_isDisposed)
-            {
-                return;
-            }
-
-            if (disposing)
-            {
-                if (_popUp != null)
-                {
-                    _popUp.BackButtonPressed -= BackButtonPressedHandler;
-                    _popUp.TimedOut -= TimedOutHandler;
-                    _popUp.Unrealize();
-                    _popUp = null;
-                }
-            }
-
-            _isDisposed = true;
-        }
-
-        public void Show()
-        {
-            _popUp.Show();
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Renderers/ProgressbarPopupRenderer.cs b/test/Voicememo2020/VoiceMemo/Renderers/ProgressbarPopupRenderer.cs
deleted file mode 100755 (executable)
index 04d584c..0000000
+++ /dev/null
@@ -1,247 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using ElmSharp;
-using System;
-using VoiceMemo.Views;
-using TForms = Xamarin.Forms.Forms;
-// @OLD VERSION OF XAMARIN.FORMS
-//using TForms = Xamarin.Forms.Platform.Tizen.Forms;
-
-namespace VoiceMemo.Tizen.Wearable.Renderers
-{
-    class ProgressbarPopupRenderer : IProgressbarPopup, IDisposable
-    {
-        Popup _popUp;
-        Popup _popUp2;
-        Layout _layout;
-        ProgressBar _progressbar;
-        bool _isDisposed = false;
-        public event EventHandler BackButtonPressed;
-        public event EventHandler TimedOut;
-
-        public ProgressbarPopupRenderer()
-        {
-            _popUp = new Popup(TForms.NativeParent)
-            {
-                Style = "circle",
-                Orientation = PopupOrientation.Center,
-            };
-            _popUp.BackButtonPressed += BackButtonPressedHandler;
-            _popUp.TimedOut += ProgressbarPopup_TimedOutHandler;
-            _popUp.Dismissed += _popUp_Dismissed;
-            _popUp.ShowAnimationFinished += _popUp_ShowAnimationFinished;
-
-            _layout = new Layout(_popUp);
-            _layout.SetTheme("layout", "popup", "content/circle");
-            _popUp.SetContent(_layout);
-
-            _progressbar = new ProgressBar(TForms.NativeParent)
-            {
-                Color = Color.FromRgb(77, 207, 255),
-                //BackgroundColor = Color.FromRgb(100, 255, 0),
-                //SpanSize = 50,
-                Style = "process",
-                IsPulseMode = true,
-            };
-            _progressbar.Deleted += _progressbar_Deleted;
-            _popUp.SetPartContent("elm.swallow.progress", _progressbar);
-
-            ///////////////
-            _popUp2 = new Popup(TForms.NativeParent)
-            {
-                Style = "toast/circle/check",
-                Orientation = PopupOrientation.Bottom,
-                //Timeout = Duration,
-            };
-            //_popUp2.SetPartText("elm.text", Text);
-            _popUp2.TimedOut += TimedOutHandler;
-            _popUp2.Dismissed += _popUp2_Dismissed;
-        }
-
-        private void _popUp_ShowAnimationFinished(object sender, EventArgs e)
-        {
-        }
-
-        private void _popUp_Resized(object sender, EventArgs e)
-        {
-        }
-
-        private void _popUp_RenderPost(object sender, EventArgs e)
-        {
-        }
-
-        private void _popUp_Moved(object sender, EventArgs e)
-        {
-        }
-
-        private void _popUp2_Dismissed(object sender, EventArgs e)
-        {
-        }
-
-        private void _popUp_Dismissed(object sender, EventArgs e)
-        {
-        }
-
-        /// <summary>
-        /// Invoked when progressbar is removed from Popup
-        /// </summary>
-        /// <param name="sender">sender object</param>
-        /// <param name="e">EventArgs</param>
-        private void _progressbar_Deleted(object sender, EventArgs e)
-        {
-            _popUp2.Show();
-        }
-
-        private void ProgressbarPopup_TimedOutHandler(object sender, EventArgs e)
-        {
-            // Remove Progressbar from Popup when doing progressbar is done
-            _popUp.SetPartContent("elm.swallow.progress", null);
-        }
-
-        private void TimedOutHandler(object sender, EventArgs e)
-        {
-            TimedOut?.Invoke(this, EventArgs.Empty);
-            _popUp.Dismiss();
-        }
-
-        private void BackButtonPressedHandler(object sender, EventArgs e)
-        {
-            BackButtonPressed?.Invoke(this, EventArgs.Empty);
-            _popUp.Dismiss();
-        }
-
-        string _Text;
-        public string Text
-        {
-            get
-            {
-                return _Text;
-            }
-
-            set
-            {
-                if (_Text != value)
-                {
-                    _Text = value;
-                    _popUp2.SetPartText("elm.text", _Text);
-                }
-            }
-        }
-
-        double _Duration;
-        public double Duration
-        {
-            get
-            {
-                return _Duration;
-            }
-
-            set
-            {
-                if (_Duration != value)
-                {
-                    _Duration = value;
-                    Console.WriteLine("[Update] Duration (" + Duration + ")");
-                    _popUp2.Timeout = _Duration;
-                }
-            }
-        }
-
-        string _ProgressbarText;
-        public string ProgressbarText
-        {
-            get
-            {
-                return _ProgressbarText;
-            }
-
-            set
-            {
-                if (_ProgressbarText != value)
-                {
-                    _ProgressbarText = value;
-                    Console.WriteLine("[Update & Apply] ProgressbarText (" + _ProgressbarText + ")");
-                    _layout.SetPartText("elm.text", _ProgressbarText);
-                }
-            }
-        }
-
-        double _ProgressbarDuration;
-        public double ProgressbarDuration
-        {
-            get
-            {
-                return _ProgressbarDuration;
-            }
-
-            set
-            {
-                if (_ProgressbarDuration != value)
-                {
-                    _ProgressbarDuration = value;
-                    Console.WriteLine("[Update & Apply] ProgressbarDuration (" + _ProgressbarDuration + ")");
-                    _popUp.Timeout = _ProgressbarDuration;
-                }
-            }
-        }
-
-        public void Dispose()
-        {
-            Dispose(true);
-            GC.SuppressFinalize(this);
-        }
-
-        protected virtual void Dispose(bool disposing)
-        {
-            if (_isDisposed)
-            {
-                return;
-            }
-
-            Console.WriteLine("[ProgressbarPopupRenderer.Dispose] ");
-            if (disposing)
-            {
-                if (_popUp != null)
-                {
-                    _layout.Unrealize();
-                    _layout = null;
-                    _popUp.BackButtonPressed -= BackButtonPressedHandler;
-                    _popUp.TimedOut -= TimedOutHandler;
-                    _popUp.Unrealize();
-                    _popUp = null;
-                }
-
-                if (_popUp2 != null)
-                {
-                    _popUp2.TimedOut -= TimedOutHandler;
-                    _popUp2.Unrealize();
-                    _popUp2 = null;
-                }
-            }
-
-            _isDisposed = true;
-        }
-
-        public void Show()
-        {
-            Console.WriteLine("[ProgressbarPopupRenderer.Show] ");
-            _progressbar.Value = 0;
-            _popUp.Show();
-            _progressbar.PlayPulse();
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Resx/AppResources.Designer.cs b/test/Voicememo2020/VoiceMemo/Resx/AppResources.Designer.cs
deleted file mode 100755 (executable)
index 0c96117..0000000
+++ /dev/null
@@ -1,180 +0,0 @@
-//------------------------------------------------------------------------------
-// <auto-generated>
-//     This code was generated by a tool.
-//     Runtime Version:4.0.30319.42000
-//
-//     Changes to this file may cause incorrect behavior and will be lost if
-//     the code is regenerated.
-// </auto-generated>
-//------------------------------------------------------------------------------
-
-namespace VoiceMemo.Resx {
-    using System;
-    
-    
-    /// <summary>
-    ///   A strongly-typed resource class, for looking up localized strings, etc.
-    /// </summary>
-    // This class was auto-generated by the StronglyTypedResourceBuilder
-    // class via a tool like ResGen or Visual Studio.
-    // To add or remove a member, edit your .ResX file then rerun ResGen
-    // with the /str option, or rebuild your VS project.
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")]
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    public class AppResources {
-        
-        private static global::System.Resources.ResourceManager resourceMan;
-        
-        private static global::System.Globalization.CultureInfo resourceCulture;
-        
-        [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
-        internal AppResources() {
-        }
-        
-        /// <summary>
-        ///   Returns the cached ResourceManager instance used by this class.
-        /// </summary>
-        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
-        public static global::System.Resources.ResourceManager ResourceManager {
-            get {
-                if (object.ReferenceEquals(resourceMan, null)) {
-                    global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("VoiceMemo.Resx.AppResources", typeof(AppResources).Assembly);
-                    resourceMan = temp;
-                }
-                return resourceMan;
-            }
-        }
-        
-        /// <summary>
-        ///   Overrides the current thread's CurrentUICulture property for all
-        ///   resource lookups using this strongly typed resource class.
-        /// </summary>
-        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
-        public static global::System.Globalization.CultureInfo Culture {
-            get {
-                return resourceCulture;
-            }
-            set {
-                resourceCulture = value;
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to Recording will be cancelled..
-        /// </summary>
-        public static string CancelRecording {
-            get {
-                return ResourceManager.GetString("CancelRecording", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to DELETE.
-        /// </summary>
-        public static string DELETE {
-            get {
-                return ResourceManager.GetString("DELETE", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to Deleted..
-        /// </summary>
-        public static string Deleted {
-            get {
-                return ResourceManager.GetString("Deleted", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to Deleting....
-        /// </summary>
-        public static string Deleting {
-            get {
-                return ResourceManager.GetString("Deleting", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to Languages.
-        /// </summary>
-        public static string Languages {
-            get {
-                return ResourceManager.GetString("Languages", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to No Recordings.
-        /// </summary>
-        public static string NoRecordings {
-            get {
-                return ResourceManager.GetString("NoRecordings", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to Recognition failed.
-        /// </summary>
-        public static string RecognitionFailed {
-            get {
-                return ResourceManager.GetString("RecognitionFailed", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to Recordings.
-        /// </summary>
-        public static string Recordings {
-            get {
-                return ResourceManager.GetString("Recordings", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to Speech-to-text:.
-        /// </summary>
-        public static string SpeechToText {
-            get {
-                return ResourceManager.GetString("SpeechToText", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to Voice memo.
-        /// </summary>
-        public static string StandByTitleMemo {
-            get {
-                return ResourceManager.GetString("StandByTitleMemo", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to Voice recorder.
-        /// </summary>
-        public static string StandByTitleRecorder {
-            get {
-                return ResourceManager.GetString("StandByTitleRecorder", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to Off.
-        /// </summary>
-        public static string SttOff {
-            get {
-                return ResourceManager.GetString("SttOff", resourceCulture);
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized string similar to On.
-        /// </summary>
-        public static string SttOn {
-            get {
-                return ResourceManager.GetString("SttOn", resourceCulture);
-            }
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Resx/AppResources.hi.resx b/test/Voicememo2020/VoiceMemo/Resx/AppResources.hi.resx
deleted file mode 100755 (executable)
index 5c868e2..0000000
+++ /dev/null
@@ -1,159 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
-  <!-- 
-    Microsoft ResX Schema 
-    
-    Version 2.0
-    
-    The primary goals of this format is to allow a simple XML format 
-    that is mostly human readable. The generation and parsing of the 
-    various data types are done through the TypeConverter classes 
-    associated with the data types.
-    
-    Example:
-    
-    ... ado.net/XML headers & schema ...
-    <resheader name="resmimetype">text/microsoft-resx</resheader>
-    <resheader name="version">2.0</resheader>
-    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
-    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
-    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
-    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
-    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
-        <value>[base64 mime encoded serialized .NET Framework object]</value>
-    </data>
-    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
-        <comment>This is a comment</comment>
-    </data>
-                
-    There are any number of "resheader" rows that contain simple 
-    name/value pairs.
-    
-    Each data row contains a name, and value. The row also contains a 
-    type or mimetype. Type corresponds to a .NET class that support 
-    text/value conversion through the TypeConverter architecture. 
-    Classes that don't support this are serialized and stored with the 
-    mimetype set.
-    
-    The mimetype is used for serialized objects, and tells the 
-    ResXResourceReader how to depersist the object. This is currently not 
-    extensible. For a given mimetype the value must be set accordingly:
-    
-    Note - application/x-microsoft.net.object.binary.base64 is the format 
-    that the ResXResourceWriter will generate, however the reader can 
-    read any of the formats listed below.
-    
-    mimetype: application/x-microsoft.net.object.binary.base64
-    value   : The object must be serialized with 
-            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
-            : and then encoded with base64 encoding.
-    
-    mimetype: application/x-microsoft.net.object.soap.base64
-    value   : The object must be serialized with 
-            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
-            : and then encoded with base64 encoding.
-
-    mimetype: application/x-microsoft.net.object.bytearray.base64
-    value   : The object must be serialized into a byte array 
-            : using a System.ComponentModel.TypeConverter
-            : and then encoded with base64 encoding.
-    -->
-  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
-    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
-    <xsd:element name="root" msdata:IsDataSet="true">
-      <xsd:complexType>
-        <xsd:choice maxOccurs="unbounded">
-          <xsd:element name="metadata">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" />
-              </xsd:sequence>
-              <xsd:attribute name="name" use="required" type="xsd:string" />
-              <xsd:attribute name="type" type="xsd:string" />
-              <xsd:attribute name="mimetype" type="xsd:string" />
-              <xsd:attribute ref="xml:space" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="assembly">
-            <xsd:complexType>
-              <xsd:attribute name="alias" type="xsd:string" />
-              <xsd:attribute name="name" type="xsd:string" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="data">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
-                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
-              </xsd:sequence>
-              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
-              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
-              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
-              <xsd:attribute ref="xml:space" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="resheader">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
-              </xsd:sequence>
-              <xsd:attribute name="name" type="xsd:string" use="required" />
-            </xsd:complexType>
-          </xsd:element>
-        </xsd:choice>
-      </xsd:complexType>
-    </xsd:element>
-  </xsd:schema>
-  <resheader name="resmimetype">
-    <value>text/microsoft-resx</value>
-  </resheader>
-  <resheader name="version">
-    <value>2.0</value>
-  </resheader>
-  <resheader name="reader">
-    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </resheader>
-  <resheader name="writer">
-    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </resheader>
-  <data name="CancelRecording" xml:space="preserve">
-    <value>रिकॉर्डिंग रद्द की जाएगी।</value>
-  </data>
-  <data name="DELETE" xml:space="preserve">
-    <value>हटाएँ</value>
-  </data>
-  <data name="Deleted" xml:space="preserve">
-    <value>हटाया गया।</value>
-  </data>
-  <data name="Deleting" xml:space="preserve">
-    <value>हटाया जा रहा है...</value>
-  </data>
-  <data name="Languages" xml:space="preserve">
-    <value>भाषा</value>
-  </data>
-  <data name="NoRecordings" xml:space="preserve">
-    <value>कोई रिकॉर्डिंग्स नहीं हैं</value>
-  </data>
-  <data name="RecognitionFailed" xml:space="preserve">
-    <value>पहचान विफल रही</value>
-  </data>
-  <data name="Recordings" xml:space="preserve">
-    <value>रिकॉर्डिंग्‍स</value>
-  </data>
-  <data name="SpeechToText" xml:space="preserve">
-    <value>स्पीच-टू-टेक्‍स्‍ट:</value>
-  </data>
-  <data name="StandByTitleMemo" xml:space="preserve">
-    <value>वॉइस मेमो</value>
-  </data>
-  <data name="StandByTitleRecorder" xml:space="preserve">
-    <value>वॉइस रिकॉर्डर</value>
-  </data>
-  <data name="SttOff" xml:space="preserve">
-    <value>बंद</value>
-  </data>
-  <data name="SttOn" xml:space="preserve">
-    <value>चालू</value>
-  </data>
-</root>
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/Resx/AppResources.ko.resx b/test/Voicememo2020/VoiceMemo/Resx/AppResources.ko.resx
deleted file mode 100755 (executable)
index 3435ce2..0000000
+++ /dev/null
@@ -1,159 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
-  <!-- 
-    Microsoft ResX Schema 
-    
-    Version 2.0
-    
-    The primary goals of this format is to allow a simple XML format 
-    that is mostly human readable. The generation and parsing of the 
-    various data types are done through the TypeConverter classes 
-    associated with the data types.
-    
-    Example:
-    
-    ... ado.net/XML headers & schema ...
-    <resheader name="resmimetype">text/microsoft-resx</resheader>
-    <resheader name="version">2.0</resheader>
-    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
-    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
-    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
-    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
-    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
-        <value>[base64 mime encoded serialized .NET Framework object]</value>
-    </data>
-    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
-        <comment>This is a comment</comment>
-    </data>
-                
-    There are any number of "resheader" rows that contain simple 
-    name/value pairs.
-    
-    Each data row contains a name, and value. The row also contains a 
-    type or mimetype. Type corresponds to a .NET class that support 
-    text/value conversion through the TypeConverter architecture. 
-    Classes that don't support this are serialized and stored with the 
-    mimetype set.
-    
-    The mimetype is used for serialized objects, and tells the 
-    ResXResourceReader how to depersist the object. This is currently not 
-    extensible. For a given mimetype the value must be set accordingly:
-    
-    Note - application/x-microsoft.net.object.binary.base64 is the format 
-    that the ResXResourceWriter will generate, however the reader can 
-    read any of the formats listed below.
-    
-    mimetype: application/x-microsoft.net.object.binary.base64
-    value   : The object must be serialized with 
-            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
-            : and then encoded with base64 encoding.
-    
-    mimetype: application/x-microsoft.net.object.soap.base64
-    value   : The object must be serialized with 
-            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
-            : and then encoded with base64 encoding.
-
-    mimetype: application/x-microsoft.net.object.bytearray.base64
-    value   : The object must be serialized into a byte array 
-            : using a System.ComponentModel.TypeConverter
-            : and then encoded with base64 encoding.
-    -->
-  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
-    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
-    <xsd:element name="root" msdata:IsDataSet="true">
-      <xsd:complexType>
-        <xsd:choice maxOccurs="unbounded">
-          <xsd:element name="metadata">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" />
-              </xsd:sequence>
-              <xsd:attribute name="name" use="required" type="xsd:string" />
-              <xsd:attribute name="type" type="xsd:string" />
-              <xsd:attribute name="mimetype" type="xsd:string" />
-              <xsd:attribute ref="xml:space" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="assembly">
-            <xsd:complexType>
-              <xsd:attribute name="alias" type="xsd:string" />
-              <xsd:attribute name="name" type="xsd:string" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="data">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
-                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
-              </xsd:sequence>
-              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
-              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
-              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
-              <xsd:attribute ref="xml:space" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="resheader">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
-              </xsd:sequence>
-              <xsd:attribute name="name" type="xsd:string" use="required" />
-            </xsd:complexType>
-          </xsd:element>
-        </xsd:choice>
-      </xsd:complexType>
-    </xsd:element>
-  </xsd:schema>
-  <resheader name="resmimetype">
-    <value>text/microsoft-resx</value>
-  </resheader>
-  <resheader name="version">
-    <value>2.0</value>
-  </resheader>
-  <resheader name="reader">
-    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </resheader>
-  <resheader name="writer">
-    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </resheader>
-  <data name="CancelRecording" xml:space="preserve">
-    <value>녹음을 취소합니다.</value>
-  </data>
-  <data name="DELETE" xml:space="preserve">
-    <value>삭제</value>
-  </data>
-  <data name="Deleted" xml:space="preserve">
-    <value>삭제했습니다.</value>
-  </data>
-  <data name="Deleting" xml:space="preserve">
-    <value>삭제 중...</value>
-  </data>
-  <data name="Languages" xml:space="preserve">
-    <value>언어</value>
-  </data>
-  <data name="NoRecordings" xml:space="preserve">
-    <value>녹음 파일 없음</value>
-  </data>
-  <data name="RecognitionFailed" xml:space="preserve">
-    <value>인식하지 못했습니다</value>
-  </data>
-  <data name="Recordings" xml:space="preserve">
-    <value>녹음 목록</value>
-  </data>
-  <data name="SpeechToText" xml:space="preserve">
-    <value>음성을 문자로 변환:</value>
-  </data>
-  <data name="StandByTitleMemo" xml:space="preserve">
-    <value>음성 메모</value>
-  </data>
-  <data name="StandByTitleRecorder" xml:space="preserve">
-    <value>음성 녹음</value>
-  </data>
-  <data name="SttOff" xml:space="preserve">
-    <value>사용 안 함</value>
-  </data>
-  <data name="SttOn" xml:space="preserve">
-    <value>사용 중</value>
-  </data>
-</root>
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/Resx/AppResources.resx b/test/Voicememo2020/VoiceMemo/Resx/AppResources.resx
deleted file mode 100755 (executable)
index 2bde49c..0000000
+++ /dev/null
@@ -1,160 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
-  <!-- 
-    Microsoft ResX Schema 
-    
-    Version 2.0
-    
-    The primary goals of this format is to allow a simple XML format 
-    that is mostly human readable. The generation and parsing of the 
-    various data types are done through the TypeConverter classes 
-    associated with the data types.
-    
-    Example:
-    
-    ... ado.net/XML headers & schema ...
-    <resheader name="resmimetype">text/microsoft-resx</resheader>
-    <resheader name="version">2.0</resheader>
-    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
-    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
-    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
-    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
-    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
-        <value>[base64 mime encoded serialized .NET Framework object]</value>
-    </data>
-    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
-        <comment>This is a comment</comment>
-    </data>
-                
-    There are any number of "resheader" rows that contain simple 
-    name/value pairs.
-    
-    Each data row contains a name, and value. The row also contains a 
-    type or mimetype. Type corresponds to a .NET class that support 
-    text/value conversion through the TypeConverter architecture. 
-    Classes that don't support this are serialized and stored with the 
-    mimetype set.
-    
-    The mimetype is used for serialized objects, and tells the 
-    ResXResourceReader how to depersist the object. This is currently not 
-    extensible. For a given mimetype the value must be set accordingly:
-    
-    Note - application/x-microsoft.net.object.binary.base64 is the format 
-    that the ResXResourceWriter will generate, however the reader can 
-    read any of the formats listed below.
-    
-    mimetype: application/x-microsoft.net.object.binary.base64
-    value   : The object must be serialized with 
-            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
-            : and then encoded with base64 encoding.
-    
-    mimetype: application/x-microsoft.net.object.soap.base64
-    value   : The object must be serialized with 
-            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
-            : and then encoded with base64 encoding.
-
-    mimetype: application/x-microsoft.net.object.bytearray.base64
-    value   : The object must be serialized into a byte array 
-            : using a System.ComponentModel.TypeConverter
-            : and then encoded with base64 encoding.
-    -->
-  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
-    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
-    <xsd:element name="root" msdata:IsDataSet="true">
-      <xsd:complexType>
-        <xsd:choice maxOccurs="unbounded">
-          <xsd:element name="metadata">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" />
-              </xsd:sequence>
-              <xsd:attribute name="name" use="required" type="xsd:string" />
-              <xsd:attribute name="type" type="xsd:string" />
-              <xsd:attribute name="mimetype" type="xsd:string" />
-              <xsd:attribute ref="xml:space" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="assembly">
-            <xsd:complexType>
-              <xsd:attribute name="alias" type="xsd:string" />
-              <xsd:attribute name="name" type="xsd:string" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="data">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
-                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
-              </xsd:sequence>
-              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
-              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
-              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
-              <xsd:attribute ref="xml:space" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="resheader">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
-              </xsd:sequence>
-              <xsd:attribute name="name" type="xsd:string" use="required" />
-            </xsd:complexType>
-          </xsd:element>
-        </xsd:choice>
-      </xsd:complexType>
-    </xsd:element>
-  </xsd:schema>
-  <resheader name="resmimetype">
-    <value>text/microsoft-resx</value>
-  </resheader>
-  <resheader name="version">
-    <value>2.0</value>
-  </resheader>
-  <resheader name="reader">
-    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </resheader>
-  <resheader name="writer">
-    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </resheader>
-  <data name="CancelRecording" xml:space="preserve">
-    <value>Recording will be cancelled.</value>
-  </data>
-  <data name="DELETE" xml:space="preserve">
-    <value>DELETE</value>
-  </data>
-  <data name="Deleted" xml:space="preserve">
-    <value>Deleted.</value>
-    <comment>.</comment>
-  </data>
-  <data name="Deleting" xml:space="preserve">
-    <value>Deleting...</value>
-  </data>
-  <data name="Languages" xml:space="preserve">
-    <value>Languages</value>
-  </data>
-  <data name="NoRecordings" xml:space="preserve">
-    <value>No Recordings</value>
-  </data>
-  <data name="RecognitionFailed" xml:space="preserve">
-    <value>Recognition failed</value>
-  </data>
-  <data name="Recordings" xml:space="preserve">
-    <value>Recordings</value>
-  </data>
-  <data name="SpeechToText" xml:space="preserve">
-    <value>Speech-to-text:</value>
-  </data>
-  <data name="StandByTitleMemo" xml:space="preserve">
-    <value>Voice memo</value>
-  </data>
-  <data name="StandByTitleRecorder" xml:space="preserve">
-    <value>Voice recorder</value>
-  </data>
-  <data name="SttOff" xml:space="preserve">
-    <value>Off</value>
-  </data>
-  <data name="SttOn" xml:space="preserve">
-    <value>On</value>
-  </data>
-</root>
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/Services/AppDataService.cs b/test/Voicememo2020/VoiceMemo/Services/AppDataService.cs
deleted file mode 100755 (executable)
index 7acbf11..0000000
+++ /dev/null
@@ -1,139 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using Tizen.Applications;
-
-
-namespace VoiceMemo.Services
-{
-    class AppDataService
-    {
-        private static readonly Lazy<AppDataService> instance = new Lazy<AppDataService>(() => new AppDataService());
-        public static AppDataService Instance
-        {
-            get => instance.Value;
-        }
-
-        readonly object _locker;
-        private AppDataService()
-        {
-            _locker = new object();
-        }
-
-        /// <summary>
-        /// Check if the specified key exists or not
-        /// </summary>
-        /// <param name="key">key string</param>
-        /// <returns>true if it exists</returns>
-        public bool Contain(string key)
-        {
-            return Preference.Contains(key);
-        }
-        /// <summary>
-        /// Get value for the specific key
-        /// </summary>
-        /// <param name="key">key string</param>
-        /// <returns>value string</returns>
-        public string GetValue(string key)
-        {
-            lock (_locker)
-            {
-                try
-                {
-                    return Preference.Get<string>(key);
-                }
-                catch (Exception ex)
-                {
-                    Console.WriteLine("[Preference.GetValue] key : " + key + ", exception:" + ex.Message);
-                    return null;
-                }
-            }
-        }
-        /// <summary>
-        /// Set key-value pair
-        /// </summary>
-        /// <param name="key">key to save</param>
-        /// <param name="value">value to save</param>
-        public void SetValue(string key, string value)
-        {
-            lock (_locker)
-            {
-                try
-                {
-                    Preference.Set(key, value);
-                }
-                catch (Exception ex)
-                {
-                    Console.WriteLine("[Preference.SetValue] key : " + key + ", exception:" + ex.Message);
-                }
-            }
-        }
-
-        public T GetValue<T>(string key)
-        {
-            object result = null;
-            lock (_locker)
-            {
-                try
-                {
-                    if (typeof(T) == typeof(bool))
-                    {
-                        result = Preference.Get<bool>(key);
-                    }
-                    else if (typeof(T) == typeof(int))
-                    {
-                        result = Preference.Get<int>(key);
-                    }
-                    else if (typeof(T) == typeof(double))
-                    {
-                        result = Preference.Get<double>(key);
-                    }
-                    else if (typeof(T) == typeof(string))
-                    {
-                        result = Preference.Get<string>(key);
-                    }
-                }
-                catch (Exception ex)
-                {
-                    Console.WriteLine("[Preference.GetValue] key : " + key + ", exception:" + ex.Message);
-                }
-            }
-
-            return (result != null) ? (T)result : default(T);
-        }
-
-        /// <summary>
-        /// Set key-value pair
-        /// </summary>
-        /// <param name="key">key to save</param>
-        /// <param name="value">value to save</param>
-        public void SetValue(string key, object value)
-        {
-            lock (_locker)
-            {
-                try
-                {
-                    Preference.Set(key, value);
-                }
-                catch (Exception ex)
-                {
-                    Console.WriteLine("[Preference.SetValue] key : " + key + ", exception:" + ex.Message);
-                }
-            }
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Services/AppTerminator.cs b/test/Voicememo2020/VoiceMemo/Services/AppTerminator.cs
deleted file mode 100755 (executable)
index a372283..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using Native = Tizen.Applications;
-using VoiceMemo.Services;
-//using VoiceMemo.Tizen.Wearable.Services;
-using Xamarin.Forms;
-
-
-namespace VoiceMemo.Services
-{
-    /// <summary>
-    /// class AppTerminator
-    /// It provides a way to kill this application
-    /// </summary>
-    class AppTerminator
-    {
-        public AppTerminator()
-        {
-        }
-
-        /// <summary>
-        /// Terminate the the current application.
-        /// </summary>
-        public void TerminateApp()
-        {
-            Native.Application.Current.Exit();
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Services/AudioPlayService.cs b/test/Voicememo2020/VoiceMemo/Services/AudioPlayService.cs
deleted file mode 100755 (executable)
index 0f28fa8..0000000
+++ /dev/null
@@ -1,331 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Threading.Tasks;
-using Tizen.Multimedia;
-using VoiceMemo.ViewModels;
-using Xamarin.Forms;
-
-namespace VoiceMemo.Services
-{
-    /// <summary>
-    /// AudioPlayerService
-    /// The main role is playing the recorded voice memo.
-    /// Use Tizen.Multimedia.Player
-    /// </summary>
-    class AudioPlayService
-    {
-        private static readonly Lazy<AudioPlayService> instance = new Lazy<AudioPlayService>(() => new AudioPlayService());
-        public static AudioPlayService Instance
-        {
-            get => instance.Value;
-        }
-        // Constructor
-        private AudioPlayService()
-        {
-            if (audioVolume == null)
-            {
-                audioVolume = AudioManager.VolumeController;
-                _state = AudioPlayState.Init;
-            }
-
-            // Create a player
-            if (player == null)
-            {
-                player = new Player();
-                if (player.State == PlayerState.Idle)
-                {
-                    _state = StateConvert(player.State);
-                    MessagingCenter.Send<AudioPlayService, AudioPlayState>(this, MessageKeys.PlayerStateChanged, StateConvert(player.State));
-                }
-
-                player.Volume = (float)Volume / GetMaxVolume();
-                player.PlaybackCompleted += Player_PlaybackCompleted;
-                player.PlaybackInterrupted += Player_PlaybackInterrupted;
-                player.ErrorOccurred += Player_ErrorOccurred;
-            }
-
-            if (player.State == PlayerState.Ready)
-            {
-                _state = StateConvert(player.State);
-                MessagingCenter.Send<AudioPlayService, AudioPlayState>(this, MessageKeys.PlayerStateChanged, StateConvert(player.State));
-            }
-        }
-
-        /// <summary>
-        /// Initialize Player
-        /// When PlaybackPage is shown, 
-        /// </summary>
-        /// <param name="path">audio file path to play</param>
-        /// <returns>Task</returns>
-        async public Task Init(string path)
-        {
-            player.SetSource(new MediaUriSource(path));
-            await Task.Run(() => player.PrepareAsync());
-            Start();
-        }
-
-        AudioVolume audioVolume;
-        Player player;
-        AudioPlayState _state;
-        /// <summary>
-        /// The state of audio play
-        /// </summary>
-        public AudioPlayState State
-        {
-            get
-            {
-                return _state;
-            }
-        }
-
-        // Indicate that Mute is on or off
-        public bool Muted
-        {
-            get { return player.Muted; }
-            set
-            {
-                if (player.Muted != value)
-                {
-                    player.Muted = value;
-                }
-            }
-        }
-        /// <summary>
-        /// Media volume
-        /// </summary>
-        public int Volume
-        {
-            get
-            {
-                return audioVolume.Level[AudioVolumeType.Media];
-            }
-        }
-        /// <summary>
-        /// Make volume level up
-        /// </summary>
-        public void IncreaseVolume()
-        {
-            // if volume level is already max, ignore it.
-            if (audioVolume.Level[AudioVolumeType.Media] == audioVolume.MaxLevel[AudioVolumeType.Media])
-            {
-                return;
-            }
-
-            AudioManager.VolumeController.Level[AudioVolumeType.Media] = AudioManager.VolumeController.Level[AudioVolumeType.Media] + 1;
-        }
-        /// <summary>
-        /// Make volume level down
-        /// </summary>
-        public void DecreaseVolume()
-        {
-            // ignore when volume level has already reached zero
-            if (audioVolume.Level[AudioVolumeType.Media] == 0)
-            {
-                return;
-            }
-
-            AudioManager.VolumeController.Level[AudioVolumeType.Media] = AudioManager.VolumeController.Level[AudioVolumeType.Media] - 1;
-        }
-        /// <summary>
-        /// Get the maximum volume value
-        /// </summary>
-        /// <returns>maximum volume value</returns>
-        public int GetMaxVolume()
-        {
-            return audioVolume.MaxLevel[AudioVolumeType.Media];
-        }
-        /// <summary>
-        /// Register callback to get notified when the volume has been changed
-        /// </summary>
-        public void RegisterVolumeChangedCallback()
-        {
-            audioVolume.Changed += AudioVolume_Changed;
-        }
-        // <summary>
-        /// Unregister callback to get notified when the volume has been changed
-        /// </summary>
-        public void UnregisterVolumeChangedCallback()
-        {
-            audioVolume.Changed -= AudioVolume_Changed;
-        }
-        /// <summary>
-        /// Start to play voice audio file
-        /// </summary>
-        public void Start()
-        {
-            if (player.State == PlayerState.Ready || player.State == PlayerState.Paused)
-            {
-                // Player's state will be "Playing"
-                player.Start();
-                if (player.State == PlayerState.Playing)
-                {
-                    _state = StateConvert(player.State);
-                    MessagingCenter.Send<AudioPlayService, AudioPlayState>(this, MessageKeys.PlayerStateChanged, StateConvert(player.State));
-                }
-            }
-        }
-        /// <summary>
-        /// Pause to play audio file
-        /// </summary>
-        public void Pause()
-        {
-            if (player.State == PlayerState.Playing)
-            {
-                // Player's state will be "Paused"
-                player.Pause();
-                if (player.State == PlayerState.Paused)
-                {
-                    _state = StateConvert(player.State);
-                    MessagingCenter.Send<AudioPlayService, AudioPlayState>(this, MessageKeys.PlayerStateChanged, StateConvert(player.State));
-                }
-
-                Console.WriteLine(" AudioPlayService.Pause() : ", (player.State != PlayerState.Paused) ? "Failed to Pause()" : "Successfully finish to Pause()");
-            }
-        }
-
-        /// <summary>
-        /// If you want to leave PlaybackPage, you need to 
-        /// </summary>
-        public void Stop()
-        {
-            if (player.State == PlayerState.Playing || player.State == PlayerState.Paused)
-            {
-                // Player's state will be "Ready"
-                player.Stop();
-                if (player.State == PlayerState.Ready)
-                {
-                    _state = StateConvert(player.State);
-                    MessagingCenter.Send<AudioPlayService, AudioPlayState>(this, MessageKeys.PlayerStateChanged, StateConvert(player.State));
-                }
-            }
-            // Player's state will be "Idle"
-            player.Unprepare();
-            if (player.State == PlayerState.Idle)
-            {
-                _state = StateConvert(player.State);
-                MessagingCenter.Send<AudioPlayService, AudioPlayState>(this, MessageKeys.PlayerStateChanged, StateConvert(player.State));
-            }
-        }
-        /// <summary>
-        /// Destroy Audio Play Service
-        /// </summary>
-        public void Destroy()
-        {
-            if (player.State == PlayerState.Playing || player.State == PlayerState.Paused)
-            {
-                Stop();
-            }
-
-            player.Dispose();
-        }
-        /// <summary>
-        /// Invoked when audio volume level has been changed
-        /// </summary>
-        /// <param name="sender">object</param>
-        /// <param name="e">VolumeChangedEventArgs</param>
-        private void AudioVolume_Changed(object sender, VolumeChangedEventArgs e)
-        {
-            //MessagingCenter.Send<IPlayService, int>(this, "VOLUME_CHANGE", e.Level);
-            VolumeChanged?.Invoke(this, new AudioVolumeChangedEventArgs(e.Level));
-        }
-        /// <summary>
-        /// Invoked when an error occurs at playing
-        /// </summary>
-        /// <param name="sender">object</param>
-        /// <param name="e">PlayerErrorOccurredEventArgs</param>
-        private void Player_ErrorOccurred(object sender, PlayerErrorOccurredEventArgs e)
-        {
-            Console.WriteLine(" Player_ErrorOccurred  :" + e.Error);
-        }
-        /// <summary>
-        /// Invoked when an interruption occurs
-        /// </summary>
-        /// <param name="sender">object</param>
-        /// <param name="e">PlaybackInterruptedEventArgs</param>
-        private void Player_PlaybackInterrupted(object sender, PlaybackInterruptedEventArgs e)
-        {
-            Console.WriteLine(" Player_PlaybackInterrupted  :" + e.Reason);
-        }
-        /// <summary>
-        /// Invoked when playing audio is done
-        /// </summary>
-        /// <param name="sender">object</param>
-        /// <param name="e">EventArgs</param>
-        private void Player_PlaybackCompleted(object sender, EventArgs e)
-        {
-            Stop();
-            AudioPlayFinished?.Invoke(this, e);
-        }
-        /// <summary>
-        /// player's state converter
-        /// </summary>
-        /// <param name="state">PlayerState</param>
-        /// <returns>AudioPlayState</returns>
-        AudioPlayState StateConvert(PlayerState state)
-        {
-            switch (state)
-            {
-                case PlayerState.Idle:
-                    return AudioPlayState.Idle;
-                case PlayerState.Paused:
-                    return AudioPlayState.Paused;
-                case PlayerState.Playing:
-                    return AudioPlayState.Playing;
-                case PlayerState.Preparing:
-                    return AudioPlayState.Preparing;
-                case PlayerState.Ready:
-                    return AudioPlayState.Ready;
-                default:
-                    return AudioPlayState.Init;
-            }
-        }
-        /// <summary>
-        /// Called whenever volume level has been changed
-        /// </summary>
-        public event EventHandler<AudioVolumeChangedEventArgs> VolumeChanged;
-        /// <summary>
-        /// Called when playing audio file is done
-        /// </summary>
-        public event EventHandler AudioPlayFinished;
-    }
-
-    public class AudioVolumeChangedEventArgs : EventArgs
-    {
-        public AudioVolumeChangedEventArgs(int level)
-        {
-            Level = level;
-        }
-
-        /// <summary>
-        /// Gets the new volume level.
-        /// </summary>
-        /// <value>The new volume level.</value>
-        /// <since_tizen> 3 </since_tizen>
-        public int Level { get; }
-    }
-
-    public enum AudioPlayState
-    {
-        Init,
-        Idle,
-        Ready,
-        Playing,
-        Preparing,
-        Paused,
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Services/AudioRecordService.cs b/test/Voicememo2020/VoiceMemo/Services/AudioRecordService.cs
deleted file mode 100755 (executable)
index fc2b55b..0000000
+++ /dev/null
@@ -1,446 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Linq;
-using System.Threading.Tasks;
-using Tizen.Multimedia;
-using Tizen.System;
-using SystemStorage = Tizen.System.Storage;
-using VoiceMemo.Services;
-//using VoiceMemo.Tizen.Wearable.Services;
-using VoiceMemo.ViewModels;
-using Xamarin.Forms;
-using System.IO;
-using Tizen.Wearable.CircularUI.Forms;
-
-
-namespace VoiceMemo.Services
-{
-    /// <summary>
-    /// AudioRecordService
-    /// The main role is recording voice.
-    /// Use Tizen.Multimedia and Tizen.System classes
-    /// </summary>
-    public class AudioRecordService
-    {
-        private static readonly Lazy<AudioRecordService> instance = new Lazy<AudioRecordService>(() => new AudioRecordService());
-        public static AudioRecordService Instance
-        {
-            get => instance.Value;
-        }
-
-        // Time limit of stt recording is 5 minutes.
-        public const int STT_RECORDING_TIME_LIMIT = 5 * 60;
-        // Time limit of recording is 30 minutes.
-        public const int VOICE_ONLY_RECORDING_TIME_LIMIT = 30 * 60;
-
-        // based on document(https://developer.tizen.org/development/guides/.net-application/media-and-camera/media-recording)
-        const int AMC_CODEC_AUDIO_SAMPLE_RATE = 8000;
-        AudioRecorder _recorder;
-        // based on document (https://developer.tizen.org/development/guides/.net-application/media-and-camera/media-recording)
-        // The following file formats are supported:
-        // Audio: M4A and AMR
-        const RecorderFileFormat AudioFileFormat = RecorderFileFormat.Amr;
-        public static int numbering;
-        //string StoragePath;
-        AudioRecordState _state;
-        string audioStoragePath;
-        string filepath;
-        private Action<Object, AudioRecordState, AudioRecordState> stateCallbacks;
-        /// <summary>
-        /// Get the state of audio recording
-        /// </summary>
-        public AudioRecordState State
-        {
-            get
-            {
-                return _state;
-            }
-        }
-
-        private AudioRecordService()
-        {
-            _state = AudioRecordState.Init;
-            numbering = 0;
-
-            // Create an audio recorder
-            if (_recorder == null)
-            {
-                // find out the available audio codec and file format
-                RecorderAudioCodec AudioCodec = RecorderAudioCodec.Amr;
-                foreach (RecorderAudioCodec codec in Recorder.GetSupportedAudioCodecs())
-                {
-                    //Console.WriteLine("RecorderAudioCodec : " + codec);
-                    foreach (RecorderFileFormat format in codec.GetSupportedFileFormats())
-                    {
-                        //Console.WriteLine("  RecorderFileFormat : " + format);
-                        if (format == AudioFileFormat)
-                        {
-                            AudioCodec = codec;
-                            break;
-                        }
-                    }
-                }
-                //
-
-                Console.WriteLine("+++  Selected AudioCodec : " + AudioCodec + " Format : " + AudioFileFormat);
-                // 2017-12-08: Todo need to roll back..
-                //_recorder = new AudioRecorder(AudioCodec, AudioFileFormat);
-                //RecorderAudioCodec audioCodec, RecorderFileFormat fileFormat
-                _recorder = new AudioRecorder(AudioCodec, AudioFileFormat);
-                _recorder.StateChanged += AudioRecorder_StateChanged;
-                _recorder.RecordingStatusChanged += AudioRecorder_RecordingStatusChanged;
-                _recorder.RecordingLimitReached += AudioRecorder_RecordingLimitReached;
-                _recorder.ErrorOccurred += AudioRecorder_ErrorOccurred;
-                AudioRecorder.DeviceStateChanged += AudioRecorder_DeviceStateChanged;
-                _recorder.Interrupting += AudioRecorder_Interrupting;
-                //audioRecorder.ApplyAudioStreamPolicy(new AudioStreamPolicy(AudioStreamType.Media));
-                //audioRecorder.AudioChannels = 2;
-                _recorder.AudioDevice = RecorderAudioDevice.Mic;
-                _recorder.AudioBitRate = 128000;
-                _recorder.AudioSampleRate = AMC_CODEC_AUDIO_SAMPLE_RATE;
-
-                if (_recorder.State != RecorderState.Idle)
-                {
-                    Console.WriteLine("AudioRecordService() : Invalid State (" + _recorder.State + ")" + "...may retry?");
-                }
-
-                _recorder.Prepare();
-                if (_recorder.State != RecorderState.Ready)
-                {
-                    Console.WriteLine("AudioRecordService() : Invalid State (" + _recorder.State + ")" + "...may retry?");
-                }
-
-                try
-                {
-                    SystemStorage internalStorage = StorageManager.Storages.Where(s => s.StorageType == StorageArea.Internal).FirstOrDefault();
-                    var SoundsDir = internalStorage.GetAbsolutePath(DirectoryType.Sounds);
-                    audioStoragePath = Path.Combine(SoundsDir, "DotnetVoiceMemo");
-                    // Create directory to save audio files
-                    Directory.CreateDirectory(audioStoragePath);
-                }
-                catch (Exception e)
-                {
-                    Toast.DisplayText(e.Message + " - DotnetVoiceMemo directory creation failed.");
-                }
-            }
-        }
-
-        // The model class object for RecordingPage
-        RecordingPageModel _viewModel;
-        public RecordingPageModel ViewModel
-        {
-            get
-            {
-                return _viewModel;
-            }
-
-            set
-            {
-                if (_viewModel != value)
-                {
-                    _viewModel = value;
-                }
-            }
-        }
-
-        ~AudioRecordService()
-        {
-            Console.WriteLine("                 @@@ ~AudioRecordService() ");
-            Destroy();
-        }
-
-        /// <summary>
-        /// Start recording voice
-        /// </summary>
-        /// <param name="title">file path to store audio file</param>
-        /// <param name="sttOn">indicate that Speech-To-Text service is on or not</param>
-        /// <returns>Task<bool></returns>
-        public Task<bool> Start(string title, bool sttOn)
-        {
-            return Task.Run(() =>
-            {
-                if (sttOn)
-                {
-                    // Recording time limits 5 minutes when speech-to-text function is enabled
-                    _recorder.TimeLimit = STT_RECORDING_TIME_LIMIT;
-                }
-                else
-                {
-                    // Recording time limits 30 minutes when speech-to-text function is disabled
-                    _recorder.TimeLimit = VOICE_ONLY_RECORDING_TIME_LIMIT;
-                }
-
-                try
-                {
-                    filepath = Path.Combine(audioStoragePath, title + "_T_" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".amr");
-                    _recorder.Start(filepath);
-                }
-                catch (Exception e)
-                {
-                    Console.WriteLine(" _recorder.Start() Exception : " + e.Message);
-                    HandleError("Start", e);
-                    // TODO: Phase 2
-                    // Toast Popup Message should be shown.
-                    // Message : Recording failed.
-                }
-
-                return true;
-            });
-        }
-        /// <summary>
-        /// Pause recording voice
-        /// </summary>
-        public void Pause()
-        {
-            if (_recorder.State != RecorderState.Recording)
-            {
-                Console.WriteLine("AudioRecordService.Pause : Invalid State (" + _recorder.State + ")");
-                return;
-            }
-
-            try
-            {
-                _recorder.Pause();
-                if (_recorder.State != RecorderState.Paused)
-                {
-                    Console.WriteLine("    AudioRecordService.Pause state error");
-                }
-            }
-            catch (Exception e)
-            {
-                HandleError("Pause", e);
-            }
-        }
-        /// <summary>
-        /// Resume recording voice
-        /// </summary>
-        public void Resume()
-        {
-            if (_recorder.State != RecorderState.Paused)
-            {
-                Console.WriteLine("AudioRecordService.Resume : Invalid State (" + _recorder.State + ")");
-                return;
-            }
-
-            try
-            {
-                _recorder.Resume();
-                if (_recorder.State != RecorderState.Recording)
-                {
-                    Console.WriteLine("    AudioRecordService.Resume state error");
-                }
-            }
-            catch (Exception e)
-            {
-                HandleError("Resume", e);
-            }
-        }
-        /// <summary>
-        /// Cancel recording voice
-        /// </summary>
-        public void Cancel()
-        {
-            if (_recorder.State == RecorderState.Idle || _recorder.State == RecorderState.Ready)
-            {
-                Console.WriteLine("AudioRecordService.Cancel : No need to cancel in State (" + _recorder.State + ") ");
-                return;
-            }
-
-            try
-            {
-                _recorder.Cancel();
-                if (_recorder.State != RecorderState.Ready)
-                {
-                    Console.WriteLine("    AudioRecordService.Cancel state error");
-                }
-            }
-            catch (Exception e)
-            {
-                HandleError("Cancel", e);
-            }
-        }
-        /// <summary>
-        /// Stop recording and save the voice recording file
-        /// </summary>
-        /// <returns>file path to save audio file</returns>
-        public string Save()
-        {
-            if ((_recorder.State == RecorderState.Idle) || (_recorder.State == RecorderState.Ready))
-            {
-                Console.WriteLine("AudioRecordService.Save : No need to cancel in State (" + _recorder.State + ") ");
-                return null;
-            }
-
-            try
-            {
-                // Stop recording and save the result in file
-                _recorder.Commit();
-                if (_recorder.State != RecorderState.Ready)
-                {
-                    Console.WriteLine("    AudioRecordService.Save state error");
-                    // TODO : Handle error case
-                    Toast.DisplayText("Fail to save audio file because of recording fw issue.");
-                }
-
-                string name = filepath.Substring(filepath.IndexOf(' '));
-                string final = name.Substring(0, name.IndexOf("_T_"));
-                //string final = name.Substring(name.IndexOf("_T_"), name.Length - name.IndexOf("_T_"));
-                numbering = Convert.ToInt32(final);
-                Console.WriteLine("   ######  Voice File name - " + name + " --> final : " + final + " , numbering : " + numbering);
-            }
-            catch (Exception e)
-            {
-                HandleError("Commit", e);
-            }
-
-            return filepath;
-        }
-
-        public void Destroy()
-        {
-            try
-            {
-                // release resources
-                _recorder.StateChanged -= AudioRecorder_StateChanged;
-                _recorder.RecordingStatusChanged -= AudioRecorder_RecordingStatusChanged;
-                _recorder.RecordingLimitReached -= AudioRecorder_RecordingLimitReached;
-                _recorder.ErrorOccurred -= AudioRecorder_ErrorOccurred;
-                AudioRecorder.DeviceStateChanged -= AudioRecorder_DeviceStateChanged;
-                _recorder.Interrupting -= AudioRecorder_Interrupting;
-                _recorder.Unprepare();
-                if (_recorder.State != RecorderState.Idle)
-                {
-                    Console.WriteLine("   ########################################");
-                    Console.WriteLine("    AudioRecordService.Destroy state error");
-                    Console.WriteLine("   ########################################");
-                }
-
-                Console.WriteLine("    AudioRecordService.Destroy() " + _recorder.State);
-                _recorder.Dispose();
-            }
-            catch (Exception e)
-            {
-                HandleError("Destroy", e);
-            }
-        }
-        /// <summary>
-        /// Get voice recording level
-        /// </summary>
-        /// <returns>volume level</returns>
-        public double GetRecordingLevel()
-        {
-            return _recorder.GetPeakAudioLevel();
-        }
-
-        void HandleError(string method, Exception e)
-        {
-            switch (_recorder.State)
-            {
-                case RecorderState.Idle:
-                    Console.WriteLine("[RecordingService.HandleError in " + method + "()] State:Idle " + e.Message);
-                    break;
-                case RecorderState.Paused:
-                    Console.WriteLine("[RecordingService.HandleError in " + method + "()] State:Paused " + e.Message);
-                    Cancel();
-                    break;
-                case RecorderState.Ready:
-                    Console.WriteLine("[RecordingService.HandleError in " + method + "()] State:Ready " + e.Message);
-                    break;
-                case RecorderState.Recording:
-                    Console.WriteLine("[RecordingService.HandleError in " + method + "()] State:Recording " + e.Message);
-                    Cancel();
-                    break;
-                default:
-                    break;
-            }
-        }
-
-        private void AudioRecorder_Interrupting(object sender, RecorderInterruptingEventArgs e)
-        {
-            Console.WriteLine("");
-            Console.WriteLine("[AudioRecorder_Interrupting] : " + e.Reason);
-        }
-
-        private void AudioRecorder_ErrorOccurred(object sender, RecordingErrorOccurredEventArgs e)
-        {
-            Console.WriteLine("");
-            Console.WriteLine("[AudioRecorder_ErrorOccurred] : " + e.Error + ", Type: " + e.GetType() + ", " + e.ToString());
-            // TODO: Phase 2
-            // Toast Popup Message should be shown.
-            // Message : Recording failed.
-        }
-
-        private void AudioRecorder_RecordingLimitReached(object sender, RecordingLimitReachedEventArgs e)
-        {
-            Console.WriteLine("[AudioRecorder_RecordingLimitReached] type: " + e.Type);
-            // Request stop to save voice recording
-            ViewModel.RequestCommand.Execute(RecordingCommandType.Stop);
-        }
-
-        private void AudioRecorder_RecordingStatusChanged(object sender, RecordingStatusChangedEventArgs e)
-        {
-            //Console.WriteLine("[AudioRecorder_RecordingStatusChanged] ElapsedTime:" + e.ElapsedTime + ", FileSize:" + e.FileSize);
-        }
-
-        private void AudioRecorder_DeviceStateChanged(object sender, RecorderDeviceStateChangedEventArgs e)
-        {
-            Console.WriteLine("");
-            Console.WriteLine("[AudioRecorder_DeviceStateChanged] deviceState : " + e.DeviceState);
-            Console.WriteLine("");
-        }
-
-        private void AudioRecorder_StateChanged(object sender, RecorderStateChangedEventArgs e)
-        {
-            Console.WriteLine("[AudioRecorder_StateChanged] " + e.PreviousState + " --> " + e.CurrentState);
-            switch (e.CurrentState)
-            {
-                case RecorderState.Idle:
-                    _state = AudioRecordState.Idle;
-                    break;
-                case RecorderState.Paused:
-                    _state = AudioRecordState.Paused;
-                    break;
-                case RecorderState.Ready:
-                    _state = AudioRecordState.Ready;
-                    break;
-                case RecorderState.Recording:
-                    _state = AudioRecordState.Recording;
-                    break;
-            }
-
-            stateCallbacks(sender, (AudioRecordState)e.PreviousState, (AudioRecordState)e.CurrentState);
-        }
-              
-        public void RegisterStateCallbacks(Action<Object, AudioRecordState, AudioRecordState> callback)
-        {
-            stateCallbacks = callback;
-        }
-    }
-
-    /// <summary>
-    /// Audio recording state
-    /// </summary>
-    public enum AudioRecordState
-    {
-        Init,
-        Idle,
-        Ready,
-        Recording,
-        Paused,
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Services/DeviceInformationService.cs b/test/Voicememo2020/VoiceMemo/Services/DeviceInformationService.cs
deleted file mode 100755 (executable)
index 8ea9154..0000000
+++ /dev/null
@@ -1,170 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.IO;
-using System.Linq;
-using Tizen.Applications;
-using Tizen.System;
-
-using SQLite;
-using SQLitePCL;
-
-namespace VoiceMemo.Services
-{
-    public static class Features
-    {
-        // Required features
-        // check microphone feature to use a mic for voice recording
-        public const string Microphone = "http://tizen.org/feature/microphone";
-        // check speech.recognition feature to use stt service
-        public const string STT = "http://tizen.org/feature/speech.recognition";
-    }
-    /// <summary>
-    /// Class DeviceInformation
-    /// It provides following functions
-    /// - device capabilities
-    /// - file path in internal storage
-    /// - application's state(e.g. Foreground, Background)
-    /// </summary>
-    public class DeviceInformationService
-    {
-        private static readonly Lazy<DeviceInformationService> instance = new Lazy<DeviceInformationService>(() => new DeviceInformationService());
-        public static DeviceInformationService Instance
-        {
-            get => instance.Value;
-        }
-
-        const int OneKiloBytes = 1024;
-        // indicate that speech-to-text feature is supported or not
-        internal static bool isSpeechRecognitionSupported = false;
-        // indicate that mic is supported or not
-        internal static bool isMicrophoneSupported = false;
-        internal static bool isFeatureSupported = false;
-
-        public const string LastUsedID = "LAST_SAVED_ID_NUMBER";
-        int _numbering;
-
-        public int LastStoredFileIndex
-        {
-            get
-            {
-                return _numbering;
-            }
-        }
-
-        private DeviceInformationService()
-        {
-            // Check whether STT feature is supported or not
-            Information.TryGetValue(Features.STT, out isSpeechRecognitionSupported);
-            // Check whether mic is available or not
-            Information.TryGetValue(Features.Microphone, out isMicrophoneSupported);
-            isFeatureSupported = isSpeechRecognitionSupported && isMicrophoneSupported;
-
-            bool existing = Preference.Contains(LastUsedID);
-            if (existing)
-            {
-                _numbering = Preference.Get<int>(LastUsedID);
-            }
-            else
-            {
-                _numbering = 0;
-            }
-        }
-
-        /// <summary>
-        /// Indicate speech recognition feature is supported or not
-        /// </summary>
-        public bool SpeechRecognitionAvailable
-        {
-            get
-            {
-                return isFeatureSupported;
-            }
-        }
-
-        ApplicationRunningContext _context;
-        /// <summary>
-        /// Application's execution state
-        /// </summary>
-        public AppState AppState
-        {
-            get
-            {
-                
-                if (_context == null)
-                {
-                    var appInfo = Application.Current.ApplicationInfo;
-                    _context = new ApplicationRunningContext(appInfo.ApplicationId);
-                }
-
-                if (_context.State == ApplicationRunningContext.AppState.Background)
-                {
-                    return AppState.Background;
-                }
-                else if (_context.State == ApplicationRunningContext.AppState.Foreground)
-                {
-                    return AppState.Foreground;
-                }
-                else if (_context.State == ApplicationRunningContext.AppState.Terminated)
-                {
-                    return AppState.Terminated;
-                }
-                else
-                {
-                    Console.WriteLine("App State : " + _context.State);
-                    return AppState.Undefined;
-                }
-            }
-        }
-
-        /// <summary>
-        /// Indicate that there is enough storage available to save audio file
-        /// </summary>
-        public bool StorageAvailable
-        {
-            get
-            {
-                // Check if internal storage has sufficient storage available or not
-                Storage internalStorage = StorageManager.Storages.Where(s => s.StorageType == StorageArea.Internal).FirstOrDefault();
-                // 'AvaliableSpace' is deprecated in Tizen 5.0
-                // In Tizen 5.0, 'AvaliableSpace' is recommended instead of 'AvaliableSpace'.
-                return ((internalStorage.AvaliableSpace / OneKiloBytes) > 105) ? true : false;
-            }
-        }
-
-        /// <summary>
-        /// Get the path of database file for this app
-        /// </summary>
-        /// <param name="filename">Database file name</param>
-        /// <returns>The full path  of Database file</returns>
-        public string GetLocalDBFilePath(string filename)
-        {
-            raw.SetProvider(new SQLite3Provider_sqlite3());
-            raw.FreezeProvider(true);
-            string path = Application.Current.DirectoryInfo.Data;
-            return Path.Combine(path, filename);
-        }
-    }
-
-    public enum AppState
-    {
-        Background,
-        Foreground,
-        Terminated,
-        Undefined,
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Services/LocaleService.cs b/test/Voicememo2020/VoiceMemo/Services/LocaleService.cs
deleted file mode 100755 (executable)
index 3009a08..0000000
+++ /dev/null
@@ -1,116 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Globalization;
-using Tizen.System;
-//using VoiceMemo.Tizen.Wearable.Services;
-using VoiceMemo.ViewModels;
-using Xamarin.Forms;
-
-namespace VoiceMemo.Services
-{
-    class LocaleService 
-    {
-        private static readonly Lazy<LocaleService> instance = new Lazy<LocaleService>(() => new LocaleService());
-
-        public static LocaleService Instance { get => instance.Value; }
-        public CultureInfo CurrentCultureInfo;
-
-        private LocaleService()
-        {
-            CurrentCultureInfo = GetCurrentCultureInfo();
-            // To get notified when system locale settings has been changed1
-            //Trace.StartFrom("LocaleService()-LocaleLanguageChanged");
-            //SystemSettings.LocaleLanguageChanged += SystemSettings_LocaleLanguageChanged;
-            //Trace.End();
-        }
-
-        ///// <summary>
-        ///// Get the current CultureInfo
-        ///// </summary>
-        //public CultureInfo CurrentCultureInfo
-        //{
-        //    get
-        //    {
-        //        return _currentCultureInfo;
-        //    }
-        //}
-
-        /// <summary>
-        /// Get CultureInfo from the locale information
-        /// </summary>
-        /// <returns>CultureInfo</returns>
-        public CultureInfo GetCurrentCultureInfo()
-        {
-            var netLanguage = "en";
-            var TizenLocale = SystemSettings.LocaleLanguage;
-            //Console.WriteLine("[GetCurrentCultureInfo] TizenLocale (" + TizenLocale + ")");
-            netLanguage = TizenToDotnetLanguage(TizenLocale.ToString().Replace("_", "-"));
-            //Console.WriteLine("[GetCurrentCultureInfo] netLanguage (" + netLanguage + ")");
-            CultureInfo info = null;
-            try
-            {
-                info = new CultureInfo(netLanguage);
-            }
-            catch (CultureNotFoundException e1)
-            {
-                Console.WriteLine("[GetCurrentCultureInfo] cannot find the current cultureInfo. so use 'en'. (" + e1.Message + ")");
-                info = new CultureInfo("en");
-            }
-
-            return info;
-        }
-        /// <summary>
-        /// Invoked when system locale setting has been changed
-        /// </summary>
-        /// <param name="sender">object</param>
-        /// <param name="e">LocaleLanguageChangedEventArgs</param>
-        private void SystemSettings_LocaleLanguageChanged(object sender, LocaleLanguageChangedEventArgs e)
-        {
-            CultureInfo info = GetCurrentCultureInfo();
-            CurrentCultureInfo = info;
-            // Notify the change of locale information
-            MessagingCenter.Send<LocaleService, CultureInfo>(this, MessageKeys.LanguageChanged, info);
-        }
-
-        string TizenToDotnetLanguage(string androidLanguage)
-        {
-            var netLanguage = androidLanguage;
-            //certain languages need to be converted to CultureInfo equivalent
-            switch (androidLanguage)
-            {
-                case "zh-CN":   // Chinese Simplified (People's Republic of China)
-                    netLanguage = "zh-Hans"; // correct code for .NET
-                    break;
-                case "zh-HK":  // Chinese Traditional (Hong Kong)
-                case "zh-hk":
-                case "zh-tw":  // Chinese Traditional (Taiwan)
-                case "zh-TW":
-                    netLanguage = "zh-Hant"; // correct code for .NET
-                    break;
-                    //case "ar-ae":   // Arabic
-                    //    netLanguage = "ar-sa"; // closest supported for .Net : Arabic (Saudi Arabia)
-                    //    break;
-                    // add more application-specific cases here (if required)
-                    // ONLY use cultures that have been tested and known to work
-            }
-
-            //Console.WriteLine(".NET Language/Locale:" + netLanguage);
-            return netLanguage;
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Services/MediaContentService.cs b/test/Voicememo2020/VoiceMemo/Services/MediaContentService.cs
deleted file mode 100755 (executable)
index 25383ff..0000000
+++ /dev/null
@@ -1,141 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.IO;
-using Tizen.Content.MediaContent;
-using VoiceMemo.Models;
-using VoiceMemo.Services;
-//using VoiceMemo.Tizen.Wearable.Services;
-using VoiceMemo.ViewModels;
-using Xamarin.Forms;
-
-namespace VoiceMemo.Services
-{
-    class MediaContentService
-    {
-        private static readonly Lazy<MediaContentService> instance = new Lazy<MediaContentService>(() => new MediaContentService());
-        public static MediaContentService Instance { get => instance.Value; }
-        MediaDatabase mediaDB;
-        MediaInfoCommand mediaInfoCmd;
-
-        private MediaContentService()
-        {
-            try
-            {
-                mediaDB = new MediaDatabase();
-#if media_svc_get_storage_id_failed_return_minus_2
-                //mediaDB.Connect();
-                //MediaDatabase.FolderUpdated += MediaDatabase_FolderUpdated;
-                //MediaDatabase.MediaInfoUpdated += MediaDatabase_MediaInfoUpdated;
-                //mediaInfoCmd = new MediaInfoCommand(mediaDB);
-#endif
-            }
-            catch (Exception e)
-            {
-                Console.WriteLine("    FAILED MediaContentService() : " + e.Message);
-                MessagingCenter.Send(this, MessageKeys.ErrorOccur, e);
-            }
-        }
-
-        /// <summary>
-        /// Destroy MediaContentService
-        /// </summary>
-        public void Destroy()
-        {
-            if (mediaDB != null)
-            {
-                Console.WriteLine("MediaContentService.Destroy()   ....");
-#if media_svc_get_storage_id_failed_return_minus_2
-                mediaDB.Disconnect();
-#endif
-                mediaDB.Dispose();
-            }
-        }
-
-        /// <summary>
-        /// Get Record from media file
-        /// </summary>
-        /// <param name="path">recorded audio file</param>
-        /// <param name="SttOn">stt on/off mode</param>
-        /// <returns>Record</returns>
-        public Record GetMediaInfo(string path, bool SttOn)
-        {
-            Record record = null;
-            try
-            {
-                // TODO : scan 
-#if media_svc_get_storage_id_failed_return_minus_2
-#else
-                mediaDB.Connect();
-#endif
-                mediaDB.ScanFile(path);
-#if media_svc_get_storage_id_failed_return_minus_2
-#else
-                mediaInfoCmd = new MediaInfoCommand(mediaDB);
-#endif
-                AudioInfo info = mediaInfoCmd.Add(path) as AudioInfo;
-#if media_svc_get_storage_id_failed_return_minus_2
-#else
-                mediaDB.Disconnect();
-#endif
-
-                //int minutes = info.Duration / 60000;
-                //int seconds = (info.Duration - minutes * 60000) / 1000;
-                //string duration = String.Format("{0:00}:{1:00}", minutes, seconds);
-                record = new Record
-                {
-                    _id = AudioRecordService.numbering,
-                    Title = info.Title.Substring(0, info.Title.IndexOf("_T_")),
-                    Date = info.DateModified.ToLocalTime().ToString("t"),
-                    Duration = info.Duration,
-                    Path = path,
-                    SttEnabled = SttOn,
-                };
-                Console.WriteLine(" ** Record :" + record);
-            }
-            catch (Exception e)
-            {
-                Console.WriteLine("###########################################");
-                Console.WriteLine("    FAILED GetMediaInfo : " + e.Message + ", " + e.Source);
-                Console.WriteLine("###########################################");
-                MessagingCenter.Send(this, MessageKeys.ErrorOccur, e);
-            }
-
-            return record;
-        }
-
-        /// <summary>
-        /// Delete audio file from internal storage
-        /// </summary>
-        /// <param name="Path">file path to delete</param>
-        /// <returns>true if the file is successfully deleted.</returns>
-        public bool RemoveMediaFile(string Path)
-        {
-            try
-            {
-                File.Delete(Path);
-            }
-            catch (Exception e)
-            {
-                Console.WriteLine("[MediaContentService.RemoveMediaFile] Path(" + Path + ") error :" + e.Message);
-                return false;
-            }
-
-            return true;
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Services/SpeechToTextService.cs b/test/Voicememo2020/VoiceMemo/Services/SpeechToTextService.cs
deleted file mode 100755 (executable)
index ceb99ed..0000000
+++ /dev/null
@@ -1,327 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Collections.Generic;
-using System.Threading.Tasks;
-using Tizen.Uix.Stt;
-using VoiceMemo.Services;
-//using VoiceMemo.Tizen.Wearable.Services;
-using VoiceMemo.ViewModels;
-using Xamarin.Forms;
-
-
-namespace VoiceMemo.Services
-{
-    /// <summary>
-    /// SpeechToTextService
-    /// The main role is speech recognition.
-    /// Use Tizen.Uix.Stt
-    /// </summary>
-    public class SpeechToTextService
-    {
-        private static readonly Lazy<SpeechToTextService> instance = new Lazy<SpeechToTextService>(() => new SpeechToTextService());
-        public static SpeechToTextService Instance { get => instance.Value; }
-
-        SttClient _Stt;
-
-        private Action<Object, SttState, SttState> stateCallback;
-        private SpeechToTextService()
-        {
-            try
-            {
-                if (_Stt == null)
-                {
-                    _Stt = new SttClient();
-                    _Stt.StateChanged += _Stt_StateChanged;
-                    _Stt.DefaultLanguageChanged += _Stt_DefaultLanguageChanged;
-                    _Stt.EngineChanged += _Stt_EngineChanged;
-                    _Stt.ErrorOccurred += _Stt_ErrorOccurred;
-                    _Stt.RecognitionResult += _Stt_RecognitionResult;
-                    // Expected State : Created
-                    CurrentSttLanguage = _Stt.DefaultLanguage;
-                    _Stt.Prepare();
-                    Console.WriteLine("DefaultLanguage ..." + _Stt.DefaultLanguage + ", Engine : " + _Stt.Engine);
-                }
-            }
-            catch (Exception e)
-            {
-                Console.WriteLine("SttClient  Exception: " + e.Message);
-                if (e is NotSupportedException)
-                {
-                    Console.WriteLine("SttClient is not supported...");
-                }
-                else if (e is UnauthorizedAccessException)
-                {
-                    Console.WriteLine("UnauthorizedAccessException...");
-                }
-            }
-        }
-        /// <summary>
-        /// Start Speech-to-Text service
-        /// It means that it starts speech recognition, converting audio to text
-        /// </summary>
-        public void StartStt()
-        {
-            _Stt.SetSilenceDetection(SilenceDetection.False);
-            _Stt.Start(CurrentSttLanguage, RecognitionType.Partial);
-        }
-        /// <summary>
-        /// Cancel speech recognition
-        /// </summary>
-        public void Cancel()
-        {
-            Console.WriteLine("\n\n[Cancel] Before SttClient.Cancel(), state: " + _Stt.CurrentState);
-            //To cancel the recording without getting the result, use the stt_cancel() function.
-            if (_Stt.CurrentState == State.Recording || _Stt.CurrentState == State.Processing)
-            {
-                _Stt.Cancel();
-            }
-
-            Console.WriteLine("[Cancel] After SttClient.Cancel(), state: " + _Stt.CurrentState);
-        }
-
-        TaskCompletionSource<string> taskCompletionSource;
-        /// <summary>
-        /// Stop speech recognition and get the converted text
-        /// </summary>
-        /// <returns>text</returns>
-        public Task<string> StopAndGetText()
-        {
-            Console.WriteLine("\n\nBefore SttClient.StopAndGetText(), state: " + _Stt.CurrentState);
-            if (_Stt.CurrentState == State.Ready)
-            {
-                return null;
-            }
-
-            // Return Task object
-            taskCompletionSource = new TaskCompletionSource<string>();
-            //To stop the recording and get the recognition result
-            // TODO: Find out a better solution.
-            switch (_Stt.CurrentState)
-            {
-                case State.Processing:
-                    //requestToStop = true;
-                    MessagingCenter.Subscribe<SpeechToTextService>(this, MessageKeys.CanStopSTT, (obj) =>
-                    {
-                        _Stt.Stop();
-                        MessagingCenter.Unsubscribe<SpeechToTextService>(this, MessageKeys.CanStopSTT);
-                    });
-                    break;
-                case State.Recording:
-                    try
-                    {
-                        _Stt.Stop();
-                    }
-                    catch (Exception e)
-                    {
-                        Console.WriteLine("[StopAndGetText] _Stt.Stop() --> Error e : " + e.Message + ",  " + e.Source + ", " + e.StackTrace + ", " + e.GetType());
-                    }
-
-                    break;
-                default:
-                    break;
-            }
-
-            return taskCompletionSource.Task;
-        }
-        /// <summary>
-        /// Dispose Speech-to-Text service
-        /// </summary>
-        public void Dispose()
-        {
-            Console.WriteLine("SpeechToTextService.Dispose()");
-            try
-            {
-                if (_Stt == null)
-                {
-                    return;
-                }
-
-                _Stt.DefaultLanguageChanged -= _Stt_DefaultLanguageChanged;
-                _Stt.EngineChanged -= _Stt_EngineChanged;
-                _Stt.ErrorOccurred -= _Stt_ErrorOccurred;
-                _Stt.RecognitionResult -= _Stt_RecognitionResult;
-                _Stt.StateChanged -= _Stt_StateChanged;
-                _Stt.Unprepare();
-                _Stt.Dispose();
-                _Stt = null;
-            }
-            catch (Exception e)
-            {
-                Console.WriteLine("SpeechToTextService.Dispose() : Error - " + e.Message);  // Invalid Parameters Provided
-            }
-        }
-
-        /// <summary>
-        ///     Get installed languages.
-        /// </summary>
-        /// <returns>
-        ///     The installed language names.
-        /// </returns>
-        public IEnumerable<string> GetInstalledLanguages()
-        {
-            return _Stt.GetSupportedLanguages();
-        }
-
-        string _currentSttLanguage;
-
-        /// <summary>
-        /// The chosen language for Speech-to-Text service
-        /// </summary>
-        public string CurrentSttLanguage
-        {
-            get
-            {
-                return _currentSttLanguage;
-            }
-
-            set
-            {
-                if (_currentSttLanguage != value)
-                {
-                    _currentSttLanguage = value;
-                }
-            }
-        }
-        /// <summary>
-        /// The state of Speech-to-Text service
-        /// </summary>
-        public SttState SttState
-        {
-            get
-            {
-                return (SttState)_Stt.CurrentState;
-            }
-        }
-
-        private void _Stt_RecognitionResult(object sender, RecognitionResultEventArgs arg)
-        {
-            Console.WriteLine("_Stt_RecognitionResult Message: " + arg.Message);
-            Console.WriteLine("_Stt_RecognitionResult Result: " + arg.Result);
-            Console.WriteLine("_Stt_RecognitionResult DataCount : " + arg.DataCount);
-            Console.WriteLine("_Stt_RecognitionResult Data : " + arg.Data);
-            Console.WriteLine(" **** _Stt_RecognitionResult : " + arg.DataCount + ", " + arg.Data + ", " + arg.Message + ", " + arg.Result);
-            Console.WriteLine(" **** _Stt_RecognitionResult ---  _Stt.CurrentState : " + _Stt.CurrentState);
-
-            string resultText = "";
-            if (arg.Result == ResultEvent.FinalResult && taskCompletionSource != null)
-            {
-                if (arg.Data != null)
-                {
-                    foreach (var part in arg.Data)
-                    {
-                        Console.WriteLine("text : (" + part + ")");
-                        resultText += part;
-                        Console.WriteLine("resultText : (" + resultText + ")");
-                    }
-
-                    if (string.IsNullOrEmpty(resultText))
-                    {
-                        Console.WriteLine("!!!!!!!!!!!!!!!!!!!                resultText is string.IsNullOrEmpty");
-                    }
-
-                    //if (resultText.Equals("") || resultText.Equals(" ") || resultText.Equals("  "))
-                    //{
-                    //    Console.WriteLine("result data is empty. so assign Recognition failed");
-                    //    resultText = AppResources.RecognitionFailed;
-                    //}
-
-                    taskCompletionSource.SetResult(resultText);
-                    //System.InvalidOperationException: An attempt was made to transition a task to a final state when it had already completed.
-                    //    at System.ThrowHelper.ThrowInvalidOperationException(ExceptionResource resource)
-                    //    at System.Threading.Tasks.TaskCompletionSource`1.SetResult(TResult result)
-                    taskCompletionSource = null;
-                }
-            }
-        }
-
-        /// <summary>
-        /// Invoked when an error occurs
-        /// </summary>
-        /// <param name="sender">object</param>
-        /// <param name="e">ErrorOccurredEventArgs</param>
-        private void _Stt_ErrorOccurred(object sender, ErrorOccurredEventArgs e)
-        {
-            Console.WriteLine(" **** _Stt_ErrorOccurred : (" + e.ErrorMessage + "), " + e.ErrorValue);
-            if (taskCompletionSource != null)
-            {
-                taskCompletionSource.SetResult("Stt Error:" + e.ErrorValue);
-            }
-        }
-
-        /// <summary>
-        /// Invoked when Speech-to-Text engine has been changed
-        /// </summary>
-        /// <param name="sender">object</param>
-        /// <param name="e">EngineChangedEventArgs</param>
-        private void _Stt_EngineChanged(object sender, EngineChangedEventArgs e)
-        {
-            Console.WriteLine(" ----_Stt_EngineChanged : " + e.EngineId + ", " + e.Language + ", " + e.NeedCredential + ", " + e.SupportSilence);
-        }
-
-        /// <summary>
-        /// Invoked when the default language for Speech-to-Text service has been changed
-        /// </summary>
-        /// <param name="sender">object</param>
-        /// <param name="e">DefaultLanguageChangedEventArgs</param>
-        private void _Stt_DefaultLanguageChanged(object sender, DefaultLanguageChangedEventArgs e)
-        {
-            Console.WriteLine(" ---- _Stt_DefaultLanguageChanged : " + e.PreviousLanguage + " ---> " + e.CurrentLanguage);
-        }
-
-        /// <summary>
-        /// Invoked when the state of Speech-To-Text service has been changed
-        /// </summary>
-        /// <param name="sender">object</param>
-        /// <param name="e">StateChangedEventArgs</param>
-        private void _Stt_StateChanged(object sender, StateChangedEventArgs e)
-        {
-            Console.WriteLine(" ---- _Stt_StateChanged : " + e.Previous + " ---> " + e.Current);
-            stateCallback?.Invoke(sender, (SttState)e.Previous, (SttState)e.Current);
-        }
-
-        public void RegisterStateCallbacks(Action<object, SttState, SttState> callback)
-        {
-            stateCallback = callback;
-        }
-    }
-
-    public enum SttState
-    {
-        //
-        // Summary:
-        //     Created state.
-        Created = 0,
-        //
-        // Summary:
-        //     Ready state.
-        Ready = 1,
-        //
-        // Summary:
-        //     Recording state.
-        Recording = 2,
-        //
-        // Summary:
-        //     Processing state.
-        Processing = 3,
-        //
-        // Summary:
-        //     Unavailable.
-        Unavailable = 4
-    }
-
-}
diff --git a/test/Voicememo2020/VoiceMemo/Services/UserPermission.cs b/test/Voicememo2020/VoiceMemo/Services/UserPermission.cs
deleted file mode 100755 (executable)
index 219073a..0000000
+++ /dev/null
@@ -1,125 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Threading.Tasks;
-using Tizen.Security;
-using VoiceMemo.Services;
-using Xamarin.Forms;
-
-
-namespace VoiceMemo.Services
-{
-    class UserPermission
-    {
-        public UserPermission()
-        {
-        }
-
-        TaskCompletionSource<bool> tcs;
-        int GrantedPermission;
-
-        /// <summary>
-        /// Request user permission for privacy privileges
-        /// </summary>
-        /// <param name="service">privacy privilege</param>
-        /// <returns>true if user consent is gained</returns>
-        public async Task<bool> GetPermission(string service)
-        {
-            try
-            {
-                GrantedPermission = -1;
-                // Gets the status of a privacy privilege permission.
-                CheckResult result = PrivacyPrivilegeManager.CheckPermission(service);
-                switch (result)
-                {
-                    case CheckResult.Allow:
-                        // user consent for privacy privilege is already gained
-                        return true;
-                    case CheckResult.Deny:
-                    case CheckResult.Ask:
-                        // User permission request should be required
-                        tcs = new TaskCompletionSource<bool>();
-                        // Gets the response context for a given privilege.
-                        var reponseContext = PrivacyPrivilegeManager.GetResponseContext(service);
-                        PrivacyPrivilegeManager.ResponseContext context = null;
-                        if (reponseContext.TryGetTarget(out context))
-                        {
-                            if (context != null)
-                            {
-                                context.ResponseFetched += Context_ResponseFetched;
-                            }
-                        }
-                        // Try to get the permission for service from a user.
-                        PrivacyPrivilegeManager.RequestPermission(service);
-                        // Check if permission is granted or not every second
-                        Device.BeginInvokeOnMainThread(() =>
-                        {
-                            Device.StartTimer(new TimeSpan(0, 0, 0, 1, 0), CheckPermission);
-                        });
-
-                        return await tcs.Task;
-                    default:
-                        return false;
-                }
-            }
-            catch (Exception e)
-            {
-                Console.WriteLine("[UserPermission] (" + service + ") Error :" + e.Message);
-                return false;
-            }
-        }
-
-        bool CheckPermission()
-        {
-            // In case that an app user doesn't give permission yet.
-            if (GrantedPermission == -1)
-            {
-                return true;
-            }
-
-            // In case that an app user gives permission.
-            // Denied
-            if (GrantedPermission == 0)
-            {
-                tcs.SetResult(false);
-            }
-            // Allowed
-            else
-            {
-                tcs.SetResult(true);
-            }
-
-            return false;
-        }
-
-        // Invoked when an app user responses for the permission request
-        private void Context_ResponseFetched(object sender, RequestResponseEventArgs e)
-        {
-            if (e.result == RequestResult.AllowForever)
-            {
-                // User allows an app to grant privacy privilege
-                GrantedPermission = 1;
-            }
-            else
-            {
-                // User doesn't allow an app to grant privacy privilege
-                GrantedPermission = 0;
-            }
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Settings.StyleCop b/test/Voicememo2020/VoiceMemo/Settings.StyleCop
deleted file mode 100755 (executable)
index 8c60a6b..0000000
+++ /dev/null
@@ -1,729 +0,0 @@
-<StyleCopSettings Version="105">
-  <GlobalSettings>
-    <StringProperty Name="MergeSettingsFiles">NoMerge</StringProperty>
-  </GlobalSettings>
-  <Parsers>
-    <Parser ParserId="StyleCop.CSharp.CsParser">
-      <ParserSettings>
-        <BooleanProperty Name="AnalyzeGeneratedFiles">True</BooleanProperty>
-      </ParserSettings>
-    </Parser>
-  </Parsers>
-  <Analyzers>
-    <Analyzer AnalyzerId="StyleCop.CSharp.DocumentationRules">
-      <Rules>
-        <Rule Name="ElementsMustBeDocumented">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="EnumerationItemsMustBeDocumented">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="DocumentationMustContainValidXml">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ElementDocumentationMustHaveSummary">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="PartialElementDocumentationMustHaveSummary">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ElementDocumentationMustHaveSummaryText">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ElementDocumentationMustNotHaveDefaultSummary">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="VoidReturnValueMustNotBeDocumented">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="GenericTypeParametersMustBeDocumented">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="GenericTypeParametersMustBeDocumentedPartialClass">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="GenericTypeParameterDocumentationMustMatchTypeParameters">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="GenericTypeParameterDocumentationMustDeclareParameterName">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="GenericTypeParameterDocumentationMustHaveText">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="PropertySummaryDocumentationMustMatchAccessors">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="PropertySummaryDocumentationMustOmitSetAccessorWithRestrictedAccess">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ElementDocumentationMustNotBeCopiedAndPasted">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="SingleLineCommentsMustNotUseDocumentationStyleSlashes">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="DocumentationTextMustNotBeEmpty">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="DocumentationTextMustContainWhitespace">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="DocumentationMustMeetCharacterPercentage">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ConstructorSummaryDocumentationMustBeginWithStandardText">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="DestructorSummaryDocumentationMustBeginWithStandardText">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="DocumentationHeadersMustNotContainBlankLines">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="IncludedDocumentationXPathDoesNotExist">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="IncludeNodeDoesNotContainValidFileAndPath">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="InheritDocMustBeUsedWithInheritingClass">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ElementDocumentationMustBeSpelledCorrectly">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="FileMustHaveHeader">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="FileHeaderMustShowCopyright">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="FileHeaderMustHaveCopyrightText">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="FileHeaderMustContainFileName">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="FileHeaderFileNameDocumentationMustMatchFileName">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="FileHeaderMustHaveValidCompanyText">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="FileHeaderFileNameDocumentationMustMatchTypeName">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-      </Rules>
-      <AnalyzerSettings />
-    </Analyzer>
-    <Analyzer AnalyzerId="StyleCop.CSharp.LayoutRules">
-      <Rules>
-        <Rule Name="AllAccessorsMustBeMultiLineOrSingleLine">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="OpeningCurlyBracketsMustNotBeFollowedByBlankLine">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ElementDocumentationHeadersMustNotBeFollowedByBlankLine">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="CodeMustNotContainMultipleBlankLinesInARow">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ClosingCurlyBracketsMustNotBePrecededByBlankLine">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="OpeningCurlyBracketsMustNotBePrecededByBlankLine">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ChainedStatementBlocksMustNotBePrecededByBlankLine">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="WhileDoFooterMustNotBePrecededByBlankLine">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="SingleLineCommentsMustNotBeFollowedByBlankLine">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ElementDocumentationHeaderMustBePrecededByBlankLine">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="SingleLineCommentMustBePrecededByBlankLine">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ElementsMustBeSeparatedByBlankLine">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="CodeMustNotContainBlankLinesAtStartOfFile">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="CodeMustNotContainBlankLinesAtEndOfFile">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-      </Rules>
-      <AnalyzerSettings />
-    </Analyzer>
-    <Analyzer AnalyzerId="StyleCop.CSharp.MaintainabilityRules">
-      <Rules>
-        <Rule Name="AccessModifierMustBeDeclared">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="FieldsMustBePrivate">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="CodeAnalysisSuppressionMustHaveJustification">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="DebugAssertMustProvideMessageText">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="DebugFailMustProvideMessageText">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="FileMayOnlyContainASingleClass">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="FileMayOnlyContainASingleNamespace">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="StatementMustNotUseUnnecessaryParenthesis">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ArithmeticExpressionsMustDeclarePrecedence">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ConditionalExpressionsMustDeclarePrecedence">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="RemoveDelegateParenthesisWhenPossible">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="AttributeConstructorMustNotUseUnnecessaryParenthesis">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="RemoveUnnecessaryCode">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-      </Rules>
-      <AnalyzerSettings />
-    </Analyzer>
-    <Analyzer AnalyzerId="StyleCop.CSharp.NamingRules">
-      <Rules>
-        <Rule Name="ElementMustBeginWithLowerCaseLetter">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ConstFieldNamesMustBeginWithUpperCaseLetter">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="NonPrivateReadonlyFieldsMustBeginWithUpperCaseLetter">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="FieldNamesMustNotUseHungarianNotation">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="FieldNamesMustBeginWithLowerCaseLetter">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="AccessibleFieldsMustBeginWithUpperCaseLetter">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="VariableNamesMustNotBePrefixed">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="FieldNamesMustNotBeginWithUnderscore">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="FieldNamesMustNotContainUnderscore">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="StaticReadonlyFieldsMustBeginWithUpperCaseLetter">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-      </Rules>
-      <AnalyzerSettings />
-    </Analyzer>
-    <Analyzer AnalyzerId="StyleCop.CSharp.OrderingRules">
-      <Rules>
-        <Rule Name="UsingDirectivesMustBePlacedWithinNamespace">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ElementsMustAppearInTheCorrectOrder">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ElementsMustBeOrderedByAccess">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ConstantsMustAppearBeforeFields">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="StaticElementsMustAppearBeforeInstanceElements">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="DeclarationKeywordsMustFollowOrder">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ProtectedMustComeBeforeInternal">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="PropertyAccessorsMustFollowOrder">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="EventAccessorsMustFollowOrder">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="StaticReadonlyElementsMustAppearBeforeStaticNonReadonlyElements">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="InstanceReadonlyElementsMustAppearBeforeInstanceNonReadonlyElements">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="SystemUsingDirectivesMustBePlacedBeforeOtherUsingDirectives">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="UsingAliasDirectivesMustBePlacedAfterOtherUsingDirectives">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="UsingDirectivesMustBeOrderedAlphabeticallyByNamespace">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="UsingAliasDirectivesMustBeOrderedAlphabeticallyByAliasName">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="UsingStaticDirectivesMustBePlacedAtTheCorrectLocation">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-      </Rules>
-      <AnalyzerSettings />
-    </Analyzer>
-    <Analyzer AnalyzerId="StyleCop.CSharp.ReadabilityRules">
-      <Rules>
-        <Rule Name="CommentsMustContainText">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="DoNotPrefixCallsWithBaseUnlessLocalImplementationExists">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="PrefixLocalCallsWithThis">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="PrefixCallsCorrectly">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="OpeningParenthesisMustBeOnDeclarationLine">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ClosingParenthesisMustBeOnLineOfLastParameter">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ClosingParenthesisMustBeOnLineOfOpeningParenthesis">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="CommaMustBeOnSameLineAsPreviousParameter">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ParameterListMustFollowDeclaration">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ParameterMustFollowComma">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="SplitParametersMustStartOnLineAfterDeclaration">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ParametersMustBeOnSameLineOrSeparateLines">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ParameterMustNotSpanMultipleLines">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="QueryClauseMustFollowPreviousClause">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="QueryClausesMustBeOnSeparateLinesOrAllOnOneLine">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="QueryClauseMustBeginOnNewLineWhenPreviousClauseSpansMultipleLines">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="QueryClausesSpanningMultipleLinesMustBeginOnOwnLine">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="DoNotPlaceRegionsWithinElements">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="CodeMustNotContainEmptyStatements">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="CodeMustNotContainMultipleStatementsOnOneLine">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="BlockStatementsMustNotContainEmbeddedComments">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="BlockStatementsMustNotContainEmbeddedRegions">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="UseReadableConditions">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="UseStringEmptyForEmptyStrings">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="UseBuiltInTypeAlias">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="UseShorthandForNullableTypes">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-      </Rules>
-      <AnalyzerSettings />
-    </Analyzer>
-    <Analyzer AnalyzerId="StyleCop.CSharp.SpacingRules">
-      <Rules>
-        <Rule Name="CommasMustBeSpacedCorrectly">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="SemicolonsMustBeSpacedCorrectly">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="DocumentationLinesMustBeginWithSingleSpace">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="SingleLineCommentsMustBeginWithSingleSpace">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="PreprocessorKeywordsMustNotBePrecededBySpace">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="OperatorKeywordMustBeFollowedBySpace">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="OpeningCurlyBracketsMustBeSpacedCorrectly">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ClosingCurlyBracketsMustBeSpacedCorrectly">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="OpeningGenericBracketsMustBeSpacedCorrectly">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ClosingGenericBracketsMustBeSpacedCorrectly">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="OpeningAttributeBracketsMustBeSpacedCorrectly">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ClosingAttributeBracketsMustBeSpacedCorrectly">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="NullableTypeSymbolsMustNotBePrecededBySpace">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="MemberAccessSymbolsMustBeSpacedCorrectly">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="IncrementDecrementSymbolsMustBeSpacedCorrectly">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="NegativeSignsMustBeSpacedCorrectly">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="PositiveSignsMustBeSpacedCorrectly">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="DereferenceAndAccessOfSymbolsMustBeSpacedCorrectly">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="ColonsMustBeSpacedCorrectly">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="CodeMustNotContainMultipleWhitespaceInARow">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="CodeMustNotContainSpaceAfterNewKeywordInImplicitlyTypedArrayAllocation">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="TabsMustNotBeUsed">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-        <Rule Name="DoNotSplitNullConditionalOperators">
-          <RuleSettings>
-            <BooleanProperty Name="Enabled">False</BooleanProperty>
-          </RuleSettings>
-        </Rule>
-      </Rules>
-      <AnalyzerSettings />
-    </Analyzer>
-  </Analyzers>
-</StyleCopSettings>
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/Utility.cs b/test/Voicememo2020/VoiceMemo/Utility.cs
deleted file mode 100755 (executable)
index a64af3d..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-using System;
-using System.Reflection;
-
-namespace VoiceMemo
-{
-    public class Utility
-    {
-        public Utility()
-        {
-
-        }
-
-        public static void PrintProperties(object obj)
-        {
-            try
-            {
-                var type = obj.GetType();
-
-                foreach (PropertyInfo p in type.GetProperties())
-                {
-                    object propertyValue = p.GetValue(obj, null);
-                    Console.WriteLine(p.Name + ":- " + propertyValue);
-                    //Console.WriteLine(p.Name + ":- " + p.GetValue(obj, null));
-
-                    //if (p.PropertyType.GetProperties().Count() > 0)
-                    //{
-                    //    // what to pass in to recursive method
-                    //    PrintProperties(propertyValue);
-                    //}
-                }
-            }
-            catch (Exception e)
-            {
-                Console.WriteLine("    FAILED PrintProperties : " + e.Message);
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/Utility/ColorConverter.cs b/test/Voicememo2020/VoiceMemo/Utility/ColorConverter.cs
deleted file mode 100755 (executable)
index eb0309a..0000000
+++ /dev/null
@@ -1,181 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using Xamarin.Forms;
-
-namespace VoiceMemo.Utility
-{
-    internal struct RGB : IEquatable<RGB>
-    {
-        internal RGB(byte r, byte g, byte b)
-        {
-            R = r;
-            G = g;
-            B = b;
-        }
-        
-        internal byte R { get; set; }
-
-        internal byte G { get; set; }
-
-        internal byte B { get; set; }
-
-        bool IEquatable<RGB>.Equals(RGB rgb)
-        {
-            return (R == rgb.R) && (G == rgb.G) && (B == rgb.B);
-        }
-    }
-
-    internal struct HSB
-    {
-        internal HSB(double h, double s, double b)
-        {
-            H = h;
-            S = s;
-            B = b;
-            A = null;
-        }
-
-        internal HSB(double h, double s, double b, double a)
-        {
-            H = h;
-            S = s;
-            B = b;
-            A = a;
-        }
-
-        internal double H { get; set; }
-
-        internal double S { get; set; }
-
-        internal double B { get; set; }
-
-        internal double? A { get; set; }
-
-        internal bool Equals(HSB hsb)
-        {
-            return (this.H == hsb.H) && (this.S == hsb.S) && (this.B == hsb.B) && (this.A == hsb.A);
-        }
-    }
-
-    internal static class OneUITheme
-    {
-        internal static HSB BlackTheme = new HSB(0, 0, 0);
-
-        internal static HSB WhiteTheme = new HSB(0, 0, 98);
-
-        internal static HSB[] DefaultTheme =
-        {
-            // 1st
-            new HSB(207,75,16),
-            // 2nd
-            new HSB(203, 98, 37),
-            // 3rd
-            new HSB(207, 91, 37),
-            // 4th
-            new HSB(208, 70, 100)
-        };
-    }
-
-    internal static class ColorConverter
-    {
-
-        internal static Xamarin.Forms.Color OneUIColorConverter(HSB hsb, HSB? input)
-        {
-            // Get component's color
-            float h = (input == null) ? (float)hsb.H : (float)hsb.H + (float)input?.H;
-            float s = (input == null) ? (float)hsb.S : (float)hsb.S + (float)input?.S;
-            float b = (input == null) ? (float)hsb.B : (float)hsb.B + (float)input?.B;
-
-            // Check the range
-            h = (h > 360.0f) ? (h - 360.0f) : ((h < 0.0f) ? (h + 360.0f) : h);
-            s = (s > 100.0f) ? (100.0f) : ((s < 0.0f) ? (0.0f) : s);
-            b = (b > 100.0f) ? (100.0f) : ((b < 0.0f) ? (0.0f) : b);
-
-            s /= 100.0f;
-            b /= 100.0f;
-
-            RGB rgb = HsbToRgb(
-                new HSB {
-                    H = h,
-                    S = s,
-                    B = b
-                });
-
-            float a;    
-            a = (int)(255 * hsb.A / 100);
-            a = (a > 255) ? (255) : ((a < 0) ? 0 : a);
-            return Color.FromRgba((int)rgb.R, (int)rgb.G, (int)rgb.B, (int)a);
-        }
-
-        internal static RGB HsbToRgb(HSB hsb)
-        {
-            double r = 0, g = 0, b = 0;
-
-            if (hsb.S == 0)
-            {
-                r = hsb.B;
-                g = hsb.B;
-                b = hsb.B;
-            }
-            else
-            {
-                int i;
-                double f, p, q, t;
-
-                if (hsb.H == 360)
-                    hsb.H = 0;
-                else
-                    hsb.H /= 60;
-
-                i = (int)Math.Truncate(hsb.H);
-                f = hsb.H - i;
-
-                p = hsb.B * (1.0 - hsb.S);
-                q = hsb.B * (1.0 - (hsb.S * f));
-                t = hsb.B * (1.0 - (hsb.S * (1.0 - f)));
-
-                switch (i)
-                {
-                    case 0:
-                        r = hsb.B;
-                        g = t;
-                        b = p;
-                        break;
-
-                    case 1:
-                        r = q;
-                        g = hsb.B;
-                        b = p;
-                        break;
-
-                    case 2:
-                        r = p;
-                        g = hsb.B;
-                        b = t;
-                        break;
-
-                    case 3:
-                        r = p;
-                        g = q;
-                        b = hsb.B;
-                        break;
-
-                    case 4:
-                        r = t;
-                        g = p;
-                        b = hsb.B;
-                        break;
-
-                    default:
-                        r = hsb.B;
-                        g = p;
-                        b = q;
-                        break;
-                }
-            }
-            return new RGB((byte)(r * 255), (byte)(g * 255), (byte)(b * 255));
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Utility/LogInformation.cs b/test/Voicememo2020/VoiceMemo/Utility/LogInformation.cs
deleted file mode 100755 (executable)
index 186cd9b..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace VoiceMemo.Utility
-{
-    internal static class LOG
-    {
-        internal const string TAG = "Voicememo-2019";
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Utility/PrivilegeInformation.cs b/test/Voicememo2020/VoiceMemo/Utility/PrivilegeInformation.cs
deleted file mode 100755 (executable)
index a2bbd80..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace VoiceMemo.Utility
-{
-    internal static class PrivilegeInformation
-    {
-        internal const string RecorderPrivilege = "http://tizen.org/privilege/recorder";
-        internal const string MediaStoragePrivilege = "http://tizen.org/privilege/mediastorage";
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/ViewModels/BasePageModel.cs b/test/Voicememo2020/VoiceMemo/ViewModels/BasePageModel.cs
deleted file mode 100755 (executable)
index 53647e0..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Runtime.CompilerServices;
-
-namespace VoiceMemo.ViewModels
-{
-    // Base page model class
-    public class BasePageModel : INotifyPropertyChanged
-    {
-        public virtual void UpdateText()
-        {
-        }
-
-        protected bool SetProperty<T>(ref T backingStore, T value,
-            [CallerMemberName]string propertyName = "",
-            Action onChanged = null)
-        {
-            if (EqualityComparer<T>.Default.Equals(backingStore, value))
-            {
-                return false;
-            }
-
-            backingStore = value;
-            onChanged?.Invoke();
-            OnPropertyChanged(propertyName);
-            return true;
-        }
-
-#region INotifyPropertyChanged
-        public event PropertyChangedEventHandler PropertyChanged;
-        /// <summary>
-        /// Called to notify that a change of property happened
-        /// </summary>
-        /// <param name="propertyName">The name of the property that changed</param>
-        protected void OnPropertyChanged([CallerMemberName] string propertyName = "")
-        {
-            var changed = PropertyChanged;
-            if (changed == null)
-            {
-                return;
-            }
-
-            changed.Invoke(this, new PropertyChangedEventArgs(propertyName));
-        }
-#endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/ViewModels/DetailsPageModel.cs b/test/Voicememo2020/VoiceMemo/ViewModels/DetailsPageModel.cs
deleted file mode 100755 (executable)
index e74926c..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using VoiceMemo.Models;
-
-namespace VoiceMemo.ViewModels
-{
-    // The model class for DetailPage
-    public class DetailsPageModel : BasePageModel
-    {
-        // Record that is shown in DetailsPage
-        Record _record;
-        public bool IsNew
-        {
-            get;
-            set;
-        }
-        /// <summary>
-        /// Record to display in Details Page
-        /// </summary>
-        public Record Record
-        {
-            get
-            {
-                return _record;
-            }
-
-            set
-            {
-                SetProperty(ref _record, value, "Record");
-            }
-        }
-
-        public DetailsPageModel(Record record = null)
-        {
-            Init(record);
-        }
-        /// <summary>
-        /// Initialize Detail Page with Record
-        /// </summary>
-        /// <param name="record">Record to be shown</param>
-        public void Init(Record record)
-        {
-            if (record is LatestRecord)
-            {
-                IsNew = true;
-                Record = ((LatestRecord)record).Record;
-            }
-            else
-            {
-                IsNew = false;
-                Record = record;
-            }
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/ViewModels/MainPageModel.cs b/test/Voicememo2020/VoiceMemo/ViewModels/MainPageModel.cs
deleted file mode 100755 (executable)
index 7123121..0000000
+++ /dev/null
@@ -1,580 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.Globalization;
-using System.Threading.Tasks;
-using System.Windows.Input;
-using VoiceMemo.Models;
-using VoiceMemo.Resx;
-using VoiceMemo.Services;
-using Xamarin.Forms;
-
-namespace VoiceMemo.ViewModels
-{
-    // The model class for MainPage
-    public class MainPageModel : BasePageModel
-    {
-        // Collection of Records
-        ObservableCollection<Record> _Records;
-        // Language for STT recognition
-        string _CurrentLanguage;
-        // Speech-To-Text Service
-        SpeechToTextService _SttService;
-        // Media Content Service to get the path of audio record file
-        MediaContentService _ContentService;
-        // App data service to store / restore app data
-        AppDataService _AppDataService;
-        // indicate whether it is possible to record voice
-        public bool availableToRecord;
-
-        public MainPageModel()
-        {
-            if (Records == null)
-            {
-                Records = new ObservableCollection<Record>();
-            }
-
-            Init();
-
-            RegisterForImportantEvents();
-        }
-
-        // Initialize
-        void Init()
-        {
-            IsCheckable = false;
-            _AppDataService = AppDataService.Instance;
-            if (_AppDataService.Contain(STT_ON_OFF))
-            {
-                SttEnabled = _AppDataService.GetValue<bool>(STT_ON_OFF);
-                //Console.WriteLine(" STT_ON_OFF ???  : " + SttEnabled);
-            }
-            else
-            {
-                SttEnabled = false;
-                //Console.WriteLine(" There's no default value for SttEnabled so make it false. : " + SttEnabled);
-            }
-
-            if (SttEnabled)
-            {
-                MainLabelText = AppResources.StandByTitleMemo;
-            }
-            else
-            {
-                MainLabelText = AppResources.StandByTitleRecorder;
-            }
-            
-            availableToRecord = true;
-        }
-
-        // Subscribe to get notified when some events occur.
-        // 1. When a new voice memo is saved in an internal storage
-        // 2. When a voice memo is deleted from an internal storage
-        // 3. When it's checked whether user consent is obtained
-        /*async*/ void RegisterForImportantEvents()
-        {
-            try
-            {
-                //Console.WriteLine("[RegisterForImportantEvents] 1");
-                // You can get notified whenever a new voice memo record is created.
-                // At this point of time, information(record) about that voice memo is needed to store
-                MessagingCenter.Subscribe<RecordingPageModel, Record>(this, MessageKeys.SaveVoiceMemo, (obj, item) =>
-                {
-                    // Add it to the collection of records
-                    var record = ((LatestRecord)item).Record;
-                    //if (Records == null)
-                    //{
-                    //    Records = new ObservableCollection<Record>();
-                    //}
-                    Records.Add(record);
-                });
-                //Console.WriteLine("[RegisterForImportantEvents] 2");
-                // You can get notified whenever translated text via speech-to-text service is ready
-                // Now, we can update Record to database
-                MessagingCenter.Subscribe<RecordingPageModel, Record>(this, MessageKeys.SaveVoiceMemoInDB, async (obj, record) =>
-                {
-                    // add it to database
-                    await App.Database.SaveItemAsync(record);
-                });
-                //Console.WriteLine("[RegisterForImportantEvents] 3");
-                // You can get notified whenever a voice memo record is deleted from a storage
-                MessagingCenter.Subscribe<Page, Record>(this, MessageKeys.DeleteVoiceMemo, async (obj, item) =>
-                {
-                    var record = item as Record;
-                    for (int i = Records.Count - 1; i >= 0; i--)
-                    {
-                        if (Records[i]._id == record._id)
-                        {
-                        // Delete record from database
-                        await App.Database.DeleteItemAsync(Records[i]);
-                        // Delete audio file from internal storage
-                        _ContentService.RemoveMediaFile(Records[i].Path);
-                        // Delete it from collection of records
-                        Records.RemoveAt(i);
-                        }
-                    }
-                });
-
-                // You can get notified when an app user allows this app to use recorder and internal storage.
-                //MessagingCenter.Subscribe<App, bool>(this, MessageKeys.UserPermission, (obj, item) =>
-                //{
-                //    var NonUItask = Task.Run(async () =>
-                //    {
-                //        //await Task.Delay(3000);
-                //        // Restore recorded voice memos
-                //        List<Record> tmp = await App.Database.GetItemsAsync();
-                //        for (int i = 0; i < tmp.Count; i++)
-                //        {
-                //            Records.Add(tmp[i]);
-                //        }
-                //        // Speech-To-Text Service
-                //        GetSttService();
-
-                //        // Media Content Service
-                //        if (_ContentService == null)
-                //        {
-                //            _ContentService = MediaContentService.Instance;
-                //        }
-                //    });
-                //});
-                //Console.WriteLine("[RegisterForImportantEvents] 4");
-                //List<Record> tmp = await App.Database.GetItemsAsync();
-                //for (int i = 0; i < tmp.Count; i++)
-                //{
-                //    Records.Add(tmp[i]);
-                //}
-                // Speech-To-Text Service
-                //GetSttService();
-                //Console.WriteLine("[RegisterForImportantEvents] 5");
-                // Media Content Service
-                if (_ContentService == null)
-                {
-                    _ContentService = MediaContentService.Instance;
-                }
-            }
-            catch (Exception e)
-            {
-                Console.WriteLine("[RegisterForImportantEvents] " + e.Message +", " + e.StackTrace);
-            }
-        }
-
-        /// <summary>
-        /// Unsubscribe from notifications
-        /// </summary>
-        void UnregisterForImportantEvents()
-        {
-            MessagingCenter.Unsubscribe<RecordingPageModel, Record>(this, MessageKeys.SaveVoiceMemo);
-            MessagingCenter.Unsubscribe<Page, Record>(this, MessageKeys.DeleteVoiceMemo);
-            MessagingCenter.Unsubscribe<App, bool>(this, MessageKeys.UserPermission);
-        }
-
-        public void Dispose()
-        {
-            Console.WriteLine("### MainPageModel.Dispose()  -----_SttService?.Dispose()----");
-            UnregisterForImportantEvents();
-            _AppDataService.SetValue(STT_ON_OFF, SttEnabled);
-            if (SelectedItemIndex != null)
-            {
-                Console.WriteLine("### MainPageModel.Dispose()   SAVE Language : " + SelectedItemIndex.Lang);
-                _AppDataService.SetValue(LANGUAGE_FOR_STT, SelectedItemIndex.Lang);
-            }
-            
-            _SttService?.Dispose();
-            _ContentService?.Destroy();
-        }
-
-        /// <summary>
-        /// Collection of Records
-        /// </summary>
-        public ObservableCollection<Record> Records
-        {
-            get
-            {
-                return _Records;
-            }
-
-            set
-            {
-                bool changed = SetProperty(ref _Records, value, "Records");
-
-                Console.WriteLine(" ##########  Records  changed? " + changed);
-                if (changed && Records.Count == 0)
-                {
-                    Console.WriteLine(" ##########  Records.Count is 0!!");
-                }
-            }
-        }
-
-        // Language for STT recognition
-        public string CurrentLanguage
-        {
-            get
-            {
-                return _CurrentLanguage;
-            }
-
-            set
-            {
-                if (SetProperty(ref _CurrentLanguage, value, "CurrentLanguage"))
-                {
-                    Console.WriteLine("Language for STT service has been changed. So update _SttService's CurrentSttLanguage. : " + CurrentLanguage);
-                    if (_SttService != null)
-                    {
-                        _SttService.CurrentSttLanguage = CurrentLanguage;
-                    }
-                }
-            }
-        }
-
-        SttLanguage _SelectedItemIndex;
-        public SttLanguage SelectedItemIndex
-        {
-            get
-            {
-                return _SelectedItemIndex;
-            }
-
-            set
-            {
-                SetProperty(ref _SelectedItemIndex, value, "SelectedItemIndex");
-            }
-        }
-
-        public ObservableCollection<SttLanguage> Languages { get; set; }
-
-        //public ICommand DoInitCommand => new Command(Initialize);
-        //async void Initialize()
-        //{
-        //    //List<Record> tmp = await App.Database.GetItemsAsync();
-        //    //for (int i = 0; i < tmp.Count; i++)
-        //    //{
-        //    //    Records.Add(tmp[i]);
-        //    //}
-        //    // Speech-To-Text Service
-        //    await GetSttService();
-
-        //    // Media Content Service
-        //    //if (_contentservice == null)
-        //    //{
-        //    //    _contentservice = mediacontentservice.instance;
-        //    //}
-        //}
-
-        //public static readonly BindableProperty GetSttServiceCommandProperty =
-        //BindableProperty.Create("GetSttServiceCommand", typeof(Command), typeof(MainPageModel), default(Command));
-        public ICommand GetSttServiceCommand => new Command(async () => await GetSttService());
-        
-        //public static readonly BindableProperty SttOnOffCommandProperty =
-        //    BindableProperty.Create("SttOnOffCommand", typeof(Command), typeof(MainPageModel), default(Command));
-
-        public ICommand SttOnOffCommand => new Command(SttOnOff);
-
-        Task GetSttService()
-        {
-            if (_SttService == null)
-            {
-                Console.WriteLine(" GetSttService()  ------------1-  CurrentLanguage : " + CurrentLanguage);
-                _SttService = SpeechToTextService.Instance;
-                Languages = new ObservableCollection<SttLanguage>();
-
-                // TODO: how to check if the current language is supported by STT engine.
-                //CultureInfo _cultureInfo = new CultureInfo(CurrentLanguage);
-                //RegionInfo _regionInfo = new RegionInfo(CurrentLanguage.Replace("_", "-"));
-                //Languages.Add(new SttLanguage(CurrentLanguage, "Automatic", Regex.Replace(_cultureInfo.DisplayName, @"\t|\n|\r", "")));
-
-                
-                var dafaultLang = "en_US";
-                // Restore the selected language for STT or use the STT service's current language
-                if (_AppDataService.Contain(LANGUAGE_FOR_STT))
-                {
-                    dafaultLang = _AppDataService.GetValue(LANGUAGE_FOR_STT);
-                    Console.WriteLine(" IAppDataService.GetValue =>  language for stt  : " + dafaultLang);
-                }
-                else
-                {
-                    dafaultLang = _SttService.CurrentSttLanguage;
-                    Console.WriteLine(" IAppDataService no value =>  CurrentSttLanguage  : " + dafaultLang);
-                }
-                // For updating STT service's CurrentSttLanguage
-                CurrentLanguage = dafaultLang;
-
-                foreach (var lang in _SttService.GetInstalledLanguages())
-                {
-                    CultureInfo cultureInfo = new CultureInfo(lang);
-                    RegionInfo regionInfo = new RegionInfo(lang.Replace("_", "-"));
-                    Console.WriteLine(" [GetSttService]  lang : " + lang + ", " + cultureInfo.DisplayName + ", " + regionInfo.EnglishName);
-                    var stt = new SttLanguage(lang, cultureInfo.DisplayName, regionInfo.EnglishName);
-                    Languages.Add(stt);
-                    //Languages.Add(new SttLanguage(lang, cultureInfo.DisplayName, regionInfo.EnglishName));
-                    if (lang == dafaultLang)
-                    {
-                        stt.IsOn = true;
-                        SelectedItemIndex = stt;
-                    }
-                }
-#if ENABLE_DEBUG_PRINT
-                foreach (var lang in Languages)
-                {
-                    Console.WriteLine(" Languages  -- " + lang.Country + ", " + lang.Name + ", " + lang.IsOn); /*+ " vs. " + lang.isNotOn*/
-                }
-#endif
-                Console.WriteLine(" GetSttService()  ------------2-   " + _SttService.GetHashCode());
-            }
-            return Task.CompletedTask;
-        }
-
-        // STT feature usability
-        // in case of true : while recording voice, you can convert your voice to text (Speech to text)
-        // in case of false : just record voice.
-        bool _sttEnabled;
-        public bool SttEnabled
-        {
-            get
-            {
-                return _sttEnabled;
-            }
-
-            set
-            {
-                SetProperty(ref _sttEnabled, value, "SttEnabled");
-            }
-        }
-
-        void SttOnOff(object sender)
-        {
-            Console.WriteLine(" StandByPageModel.SttOnOff() : " + SttEnabled);
-            if (SttEnabled)
-            {
-                SttEnabled = false;
-                MainLabelText = AppResources.StandByTitleRecorder;
-            }
-            else
-            {
-                SttEnabled = true;
-                MainLabelText = AppResources.StandByTitleMemo;
-                GetSttService();
-            }
-
-            MessagingCenter.Send<MainPageModel, bool>(this, MessageKeys.SttSupportedChanged, SttEnabled);
-        }
-
-        // main label text : voice memo or voice recorder
-        string _mainlabeltext;
-        public string MainLabelText
-        {
-            get
-            {
-                return _mainlabeltext;
-            }
-
-            set
-            {
-                SetProperty(ref _mainlabeltext, value, "MainLabelText");
-            }
-        }
-
-        // Update the text of main label, depending on enabling or disabling stt service
-        public override void UpdateText()
-        {
-            if (SttEnabled)
-            {
-                // voice memo
-                MainLabelText = AppResources.StandByTitleMemo;
-            }
-            else
-            {
-                // voice recorder
-                MainLabelText = AppResources.StandByTitleRecorder;
-            }
-        }
-
-        ///////////////////////
-        const string SelectAll = "Select all";
-        const string DeselectAll = "Deselect all";
-
-        bool _isCheckable;
-        public bool IsCheckable
-        {
-            get
-            {
-                return _isCheckable;
-            }
-
-            set
-            {
-                bool result = SetProperty(ref _isCheckable, value, "IsCheckable");
-                if (result)
-                {
-                    Console.WriteLine("-----IsCheckable  : it's changed  ---> " + IsCheckable);
-                    if (!IsCheckable)
-                    {
-                        foreach (var record in Records)
-                        {
-                            record.Checked = false;
-                        }
-                    }
-                }
-            }
-        }
-
-        bool _popupVisibility;
-        public bool PopupVisibility
-        {
-            get
-            {
-                return _popupVisibility;
-            }
-
-            set
-            {
-                SetProperty(ref _popupVisibility, value, "PopupVisibility");
-            }
-        }
-
-        int _checkedNamesCount;
-        public int CheckedNamesCount
-        {
-            get
-            {
-                return _checkedNamesCount;
-            }
-
-            set
-            {
-                bool changed = SetProperty(ref _checkedNamesCount, value, "CheckedNamesCount");
-                if (changed)
-                {
-                    UpdateSelectOptionMessage();
-                }
-            }
-        }
-
-        string _selectOptionMessage1;
-        public string SelectOptionMessage1
-        {
-            get
-            {
-                return _selectOptionMessage1;
-            }
-
-            set
-            {
-                SetProperty(ref _selectOptionMessage1, value, "SelectOptionMessage1");
-            }
-        }
-
-        string _selectOptionMessage2;
-        public string SelectOptionMessage2
-        {
-            get
-            {
-                return _selectOptionMessage2;
-            }
-
-            set
-            {
-                SetProperty(ref _selectOptionMessage2, value, "SelectOptionMessage2");
-            }
-        }
-
-        void OnLongClick()
-        {
-            Console.WriteLine("OnLongClick() is invoked!!");
-            if (!IsCheckable)
-            {
-                IsCheckable = true;
-            }
-        }
-
-        void OnCheckedCounterClicked()
-        {
-            Console.WriteLine("OnCheckedCounterClicked() is invoked!!");
-            PopupVisibility = true;
-
-            Console.WriteLine("Checked is clicked!!!");
-        }
-
-        void SelectOption1Job()
-        {
-            bool r = CheckedNamesCount < Records.Count;
-            Console.WriteLine("CheckedNamesCount : " + CheckedNamesCount + " vs. CheckableNames.Count: " + Records.Count);
-            foreach (var x in Records)
-            {
-                x.Checked = r;
-            }
-        }
-
-        void SelectOption2Job()
-        {
-            Console.WriteLine("CheckedNamesCount : " + CheckedNamesCount + " vs. CheckableNames.Count: " + Records.Count);
-            if (CheckedNamesCount > 0 && CheckedNamesCount != Records.Count)
-            {
-                foreach (var x in Records)
-                {
-                    x.Checked = false;
-                }
-            }
-        }
-
-        void UpdateSelectOptionMessage()
-        {
-            SelectOptionMessage1 = CheckedNamesCount < Records.Count ? SelectAll : DeselectAll;
-            SelectOptionMessage2 = CheckedNamesCount != 0 && CheckedNamesCount != Records.Count ? DeselectAll : "";
-        }
-
-        async void DeleteRecords()
-        {
-            Console.WriteLine("   ########  DeleteRecords ");
-            for (int i = Records.Count - 1; i >= 0; i--)
-            {
-                //if (Records[i].ID == record.ID)
-                if (Records[i].Checked)
-                {
-                    await App.Database.DeleteItemAsync(Records[i]);
-                    _ContentService.RemoveMediaFile(Records[i].Path);
-                    Records.RemoveAt(i);
-                }
-            }
-
-            IsCheckable = false;
-            CheckedNamesCount = 0;
-        }
-
-        void ChangeToDeleteMode()
-        {
-            IsCheckable = true;
-        }
-
-        public ICommand SelectCommand1 => new Command(SelectOption1Job);
-        public ICommand SelectCommand2 => new Command(SelectOption2Job);
-        public ICommand DeleteRecordsCommand => new Command(DeleteRecords);
-        public ICommand ChangeToDeleteModeCommand => new Command(ChangeToDeleteMode);
-
-        public static readonly BindableProperty SelectModeActionButtonPressedCommandProperty =
-            BindableProperty.Create("SelectModeActionButtonPressedCommand", typeof(Command), typeof(MainPageModel), default(Command));
-        public ICommand SelectModeActionButtonPressedCommand => new Command(OnCheckedCounterClicked);
-
-        public static readonly BindableProperty LongClickCommandProperty =
-            BindableProperty.Create("LongClickCommand", typeof(Command), typeof(MainPageModel), default(Command));
-        public ICommand LongClickCommand => new Command(OnLongClick);
-
-        private const string LANGUAGE_FOR_STT = "language_for_stt";
-        private const string STT_ON_OFF = "stt_on_off";
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/ViewModels/MessageKeys.cs b/test/Voicememo2020/VoiceMemo/ViewModels/MessageKeys.cs
deleted file mode 100755 (executable)
index c960908..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-namespace VoiceMemo.ViewModels
-{
-    public class MessageKeys
-    {
-        // Notify that player's state has changed
-        public const string PlayerStateChanged = "PlayerStateChanged";
-
-        // Notify that Audio play has done
-        public const string AudioPlayDone = "AudioPlayDone";
-
-        // Notify that Error occurs
-        public const string ErrorOccur = "ErrorOccur";
-
-        // Notify that a voice memo is saved
-        public const string SaveVoiceMemo = "SaveVoiceMemo";
-
-        // Notify that a voice memo is saved in Database
-        public const string SaveVoiceMemoInDB = "SaveVoiceMemoInDB";
-
-        // Notify that a voice memo is deleted
-        public const string DeleteVoiceMemo = "DeleteVoiceMemo";
-
-        // Notify that language has been changed
-        public const string LanguageChanged = "LanguageChanged";
-
-        // Notify that STT configuration has been changed
-        public const string SttSupportedChanged = "SttSupportedChanged";
-
-        // TODO: It's not used yet.
-        // Notify that Stt text is ready
-        public const string SttText = "SttText";
-
-        // Notify that permission from an user is got or not
-        public const string UserPermission = "UserPermission";
-
-        // Notify that long click event occurs in RecordListPage
-        //public const string RecordListLongPressed = "RecordListLongPressed";
-
-        // TODO : It's a missing feature
-        // Notify that volume level is too high
-        //public const string WarnHearingDamange = "WarnHearingDamange";
-
-        // TODO : Need to consider this case
-        public const string CanStopSTT = "CanStopSTT";
-
-        // Notify that the state of audio recording service get Recording.
-        public const string ReadyToRecord = "ReadyToRecord";
-
-        // TODO : Need to consider this case
-        // forcibly go back to main page when stt state is not ready for recording.
-        // Even though stt is not ready, recording can be started. We can change it.
-        public const string ForcePopRecordingPage = "ForcePopRecordingPage";
-
-        // Notify that the some texts are needed to update for localization when the language has been changed.
-        public const string UpdateByLanguageChange = "UpdateByLanguageChange";
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/ViewModels/PlayBackPageModel.cs b/test/Voicememo2020/VoiceMemo/ViewModels/PlayBackPageModel.cs
deleted file mode 100755 (executable)
index 2211127..0000000
+++ /dev/null
@@ -1,518 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Diagnostics;
-using System.Windows.Input;
-using VoiceMemo.Models;
-using VoiceMemo.Services;
-using Xamarin.Forms;
-
-namespace VoiceMemo.ViewModels
-{
-    public enum VolumeControlType
-    {
-        Minus,
-        Plus,
-    }
-
-    /// <summary>
-    /// Page model class for PlayBack page
-    /// </summary>
-    public class PlayBackPageModel : BasePageModel
-    {
-        const string VOLUME_ON = "voice_mamo_slider_volume_on.png"; //"button/details_vol_icon_on.png"
-        const string VOLUME_OFF = "voice_mamo_slider_mute.png";  //"button/details_vol_icon_off.png"
-        const string VOLUME_ON_SMALL_IMAGE = "button/details_vol_icon_on.png";
-        const string VOLUME_OFF_SMALL_IMAGE = "button/details_vol_icon_off.png";
-        const string PLAY_ON = "voicerecorder_btn_play.png";
-        const string PLAY_OFF = "voicerecorder_btn_pause.png";
-        double play_progressbar_delta;
-
-        public PlayBackPageModel(Record record = null)
-        {
-            if (PlayWatch == null)
-            {
-                PlayWatch = new Stopwatch();
-            }
-
-            _playService = AudioPlayService.Instance;
-            _playService.AudioPlayFinished += _playService_AudioPlayFinished;
-            MaxVolumeLevel = _playService.GetMaxVolume();
-            // You can get notified whenever the state of audio player has been changed
-            MessagingCenter.Subscribe<AudioPlayService, AudioPlayState>(this, MessageKeys.PlayerStateChanged, (obj, state) =>
-            {
-                if (state == AudioPlayState.Playing)
-                {
-                    PlayControlImage = PLAY_OFF;
-                    // start to update the remaining time
-                    StartTimerForRemainingTime();
-                }
-                else
-                {
-                    PlayControlImage = PLAY_ON;
-                    // Stop updating the remaining time
-                    StopTimerForRemainingTime();
-                }
-            });
-            Init(record);
-        }
-
-        async public void Init(Record record)
-        {
-            PlayControlImage = PLAY_ON;
-            _record = record;
-            VolumeViewVisible = false;
-            CurrentVolume = _playService.Volume;
-            if (CurrentVolume == 0)
-            {
-                Mute = true;
-                MuteOnOffImage = VOLUME_OFF;
-                MuteOnOffSmallImage = VOLUME_OFF_SMALL_IMAGE;
-            }
-            else
-            {
-                Mute = false;
-                MuteOnOffImage = VOLUME_ON;
-                MuteOnOffSmallImage = VOLUME_ON_SMALL_IMAGE;
-            }
-
-            RemainingTime = record.Duration;
-            Console.WriteLine(" [PlayBackPageModel] RemainingTime : " + RemainingTime);
-            int minutes = RemainingTime / 60000;
-            int seconds = (RemainingTime - minutes * 60000) / 1000;
-            int total = minutes * 60 + seconds;
-            Console.WriteLine(" [PlayBackPageModel] minutes : " + minutes + ", seconds:" + seconds + ", total:" + total);
-            PlayingProcess = 0.0;
-            VolumeLevelProcess = CurrentVolume / MaxVolumeLevel;
-            Console.WriteLine(" [PlayBackPageModel] VolumeLevelProcess : " + VolumeLevelProcess);
-            // calculate value (unit: 100ms)
-            play_progressbar_delta = (1.0 / total) / 10;
-            Console.WriteLine(" [PlayBackPageModel] play_progressbar_delta : " + play_progressbar_delta);
-            _Touched = false;
-
-            PlayWatch.Reset();
-
-            _playService.VolumeChanged += _playService_VolumeChanged;
-            _playService.RegisterVolumeChangedCallback();
-            await _playService.Init(record.Path);
-        }
-
-        // It's called when PlayBackPage is hidden.
-        public void Stop()
-        {
-            Console.WriteLine("[PlayBackPageModel.Stop()]  current playService's state :" + _playService.State);
-            // stop playing audio file
-            _playService.Stop();
-            // unregister event callbacks
-            _playService.VolumeChanged -= _playService_VolumeChanged;
-            _playService.UnregisterVolumeChangedCallback();
-        }
-
-        /// <summary>
-        /// Start to update the remaining time
-        /// </summary>
-        void StartTimerForRemainingTime()
-        {
-            PlayWatch.Start();
-            // Any background code that needs to update the user interface
-            Device.BeginInvokeOnMainThread(() =>
-            {
-                // interact with UI elements
-                Device.StartTimer(new TimeSpan(0, 0, 0, 1, 0), UpdateRemainingPlayTime);
-                Device.StartTimer(new TimeSpan(0, 0, 0, 0, 100), UpdateProgressbar);
-            });
-        }
-
-        void StopTimerForRemainingTime()
-        {
-            PlayWatch.Stop();
-        }
-
-        /// <summary>
-        /// Update the value of progressbar at every 100 ms
-        /// </summary>
-        /// <returns>bool</returns>
-        bool UpdateProgressbar()
-        {
-            if (_playService.State == AudioPlayState.Playing)
-            {
-                PlayingProcess += play_progressbar_delta;
-                //Console.WriteLine("[UpdateRemainingPlayTime]  PlayingProcess " + PlayingProcess);
-                return true;
-            }
-            else
-            {
-                return false;
-            }
-        }
-
-        /// <summary>
-        /// Update the remaining time at every second
-        /// </summary>
-        /// <returns>bool</returns>
-        bool UpdateRemainingPlayTime()
-        {
-            //return true to keep the timer running or false to stop it after the current invocation.
-            if (_playService.State == AudioPlayState.Playing)
-            {
-                RemainingTime = RemainingTime - 1000;
-                return true;
-            }
-            else if (_playService.State == AudioPlayState.Idle)
-            {
-                RemainingTime = 0;
-                return false;
-            }
-            else
-            {
-                return false;
-            }
-        }
-
-        Stopwatch PlayWatch;
-        AudioPlayService _playService;
-        Record _record;
-        bool _Touched;
-
-        /// <summary>
-        /// Record to play
-        /// </summary>
-        public Record Record
-        {
-            get
-            {
-                return _record;
-            }
-        }
-
-        int _remainTime;
-        /// <summary>
-        /// The remaining time (ms)
-        /// </summary>
-        public int RemainingTime
-        {
-            get
-            {
-                return _remainTime;
-            }
-
-            set
-            {
-                SetProperty(ref _remainTime, value, "RemainingTime");
-            }
-        }
-
-        double _PlayingProcess;
-        public double PlayingProcess
-        {
-            get
-            {
-                return _PlayingProcess;
-            }
-
-            set
-            {
-                SetProperty(ref _PlayingProcess, value, "PlayingProcess");
-            }
-        }
-
-        double MaxVolumeLevel;
-        double _VolumeLevelProcess;
-        public double VolumeLevelProcess
-        {
-            get
-            {
-                return _VolumeLevelProcess;
-            }
-
-            set
-            {
-                SetProperty(ref _VolumeLevelProcess, value, "VolumeLevelProcess");
-            }
-        }
-
-        int _currentVolume;
-        /// <summary>
-        /// Volume level
-        /// </summary>
-        public int CurrentVolume
-        {
-            get
-            {
-                return _currentVolume;
-            }
-
-            set
-            {
-                bool changed = SetProperty(ref _currentVolume, value, "CurrentVolume");
-                if (changed)
-                {
-                    // Decide mute mode according to volume level
-                    if (CurrentVolume == 0)
-                    {
-                        Mute = true;
-                    }
-                    else
-                    {
-                        Mute = false;
-                    }
-                }
-
-            }
-        }
-
-        bool _volumeViewVisible;
-        /// <summary>
-        /// Indicate that volume control view is visible or not
-        /// </summary>
-        public bool VolumeViewVisible
-        {
-            get
-            {
-                return _volumeViewVisible;
-            }
-
-            set
-            {
-                SetProperty(ref _volumeViewVisible, value, "VolumeViewVisible");
-            }
-        }
-
-        bool _mute;
-        /// <summary>
-        /// indicate that silent mode is on or off
-        /// </summary>
-        public bool Mute
-        {
-            get
-            {
-                return _mute;
-            }
-
-            set
-            {
-                if (SetProperty(ref _mute, value, "Mute"))
-                {
-                    if (Mute)
-                    {
-                        // In case that Mute is on
-                        _playService.Muted = true;
-                        MuteOnOffImage = VOLUME_OFF;
-                        MuteOnOffSmallImage = VOLUME_OFF_SMALL_IMAGE;
-                        CurrentVolume = 0;
-                    }
-                    else
-                    {
-                        // In case that Mute is off
-                        _playService.Muted = false;
-                        MuteOnOffImage = VOLUME_ON;
-                        MuteOnOffSmallImage = VOLUME_ON_SMALL_IMAGE;
-                        CurrentVolume = _playService.Volume;
-                    }
-                }
-            }
-        }
-
-        string _playcontrolImage;
-        public string PlayControlImage
-        {
-            get
-            {
-                return _playcontrolImage;
-            }
-
-            set
-            {
-                SetProperty(ref _playcontrolImage, value, "PlayControlImage");
-            }
-        }
-
-        string _muteOnOffImage;
-        /// <summary>
-        /// image which show that silent mode is on or not
-        /// </summary>
-        public string MuteOnOffImage
-        {
-            get
-            {
-                return _muteOnOffImage;
-            }
-
-            set
-            {
-                SetProperty(ref _muteOnOffImage, value, "MuteOnOffImage");
-            }
-        }
-
-        string _muteOnOffSmallImage;
-        public string MuteOnOffSmallImage
-        {
-            get
-            {
-                return _muteOnOffSmallImage;
-            }
-
-            set
-            {
-                SetProperty(ref _muteOnOffSmallImage, value, "MuteOnOffSmallImage");
-            }
-        }
-
-        // For changing the visibility of a View which provides a way to control volume level
-        public ICommand VolumeViewVisibilityCommand => new Command<bool>(ChangeVolumeViewVisibility);/* { private set; get; }*/
-        // To show up VolumeView which provides a way to make the volume up and down
-        public ICommand VolumeViewCommand => new Command(ControlVolumeView);
-        // For Volume Up/Down
-        public ICommand VolumeControlCommand => new Command<VolumeControlType>(ControlVolume);
-        // For toggling play / pause functions
-        public ICommand PlayControlCommand => new Command(ControlPlay);
-        // For Mute On/Off
-        public ICommand MuteControlCommand => new Command(ControlMute);
-        // Update delay time
-        public ICommand DelayTimeCommand => new Command(DelayTime);
-
-        /// <summary>
-        /// Make volume level up/down
-        /// </summary>
-        /// <param name="type">VolumeControlType</param>
-        void ControlVolume(VolumeControlType type)
-        {
-            switch (type)
-            {
-                case VolumeControlType.Minus:
-                    VolumeLevelProcess -= 1 / MaxVolumeLevel;
-                    _playService.DecreaseVolume();
-                    break;
-                case VolumeControlType.Plus:
-                    //if (CurrentVolume == 9)
-                    //{
-                    //    NotifyHearingDamage();
-                    //}
-
-                    VolumeLevelProcess += 1 / MaxVolumeLevel;
-                    _playService.IncreaseVolume();
-                    break;
-            }
-        }
-
-        void NotifyHearingDamage()
-        {
-            // TODO
-            //MessagingCenter.Send<PlayBackPageModel>(this, MessageKeys.WarnHearingDamange);
-        }
-
-        // Toggle Mute On/Off
-        void ControlMute()
-        {
-            Mute = !Mute;
-        }
-
-        void ChangeVolumeViewVisibility(bool visible = true)
-        {
-            VolumeViewVisible = visible;
-        }
-
-        void ControlVolumeView()
-        {
-            Console.WriteLine("[ControlVolumeView] need to show VolumeView.");
-            VolumeViewVisible = true;
-
-            // Any background code that needs to update the user interface
-            Device.BeginInvokeOnMainThread(() =>
-            {
-                // interact with UI elements
-                Device.StartTimer(new TimeSpan(0, 0, 0, 3, 0), HideVolumeView);
-            });
-        }
-
-        bool HideVolumeView()
-        {
-            // In case that screen is touched, VolumeView is still visible.
-            if (_Touched)
-            {
-                Console.WriteLine("In case that screen is touched, VolumeView is still visible.");
-                _Touched = false;
-                return true;
-            }
-            else
-            {
-                // Screen is not touched for last 3 seconds. So VolumeView will be hidden.
-                Console.WriteLine("Screen is not touched for last 3 seconds. So VolumeView will be hidden.");
-                VolumeViewVisible = false;
-                return false;
-            }
-        }
-
-        void DelayTime()
-        {
-            Console.WriteLine("  $$$$$$$$$$$$     ");
-            Console.WriteLine("  $$$$$$$$$$$$     ");
-            Console.WriteLine("          Screen is touched. So delaytime will be updated.");
-            Console.WriteLine("  $$$$$$$$$$$$     ");
-            Console.WriteLine("  $$$$$$$$$$$$     ");
-            _Touched = true;
-        }
-
-        void ControlPlay()
-        {
-            Console.WriteLine(" [ControlPlay]  STATE: " + _playService.State);
-            if (_playService.State == AudioPlayState.Playing)
-            {
-                Console.WriteLine(" [ControlPlay]  Pause");
-                _playService.Pause();
-                //StopTimerForRemainingTime();
-            }
-            else if (_playService.State == AudioPlayState.Paused)
-            {
-                Console.WriteLine(" [ControlPlay]  Start");
-                _playService.Start();
-                //StartTimerForRemainingTime();
-            }
-            else if (_playService.State == AudioPlayState.Idle)
-            {
-                Init(_record);
-                _playService.Start();
-            }
-        }
-
-        private void _playService_VolumeChanged(object sender, AudioVolumeChangedEventArgs e)
-        {
-            Console.WriteLine("[_playService_VolumeChanged] e.Level : " + e.Level);
-            CurrentVolume = e.Level;
-        }
-
-        private void _playService_AudioPlayFinished(object sender, System.EventArgs e)
-        {
-            Console.WriteLine("_playService_AudioPlayFinished()   ");
-            MessagingCenter.Send<PlayBackPageModel, bool>(this, MessageKeys.AudioPlayDone, true);
-        }
-
-        public void Dispose()
-        {
-            Console.WriteLine("PlayBackPageModel.Dispose()   _playService.State: " + _playService.State);
-            MessagingCenter.Unsubscribe<AudioPlayService, AudioPlayState>(this, MessageKeys.PlayerStateChanged);
-            if (_playService.State == AudioPlayState.Playing)
-            {
-                _playService.Stop();
-            }
-
-            _playService.AudioPlayFinished -= _playService_AudioPlayFinished;
-            _playService.VolumeChanged -= _playService_VolumeChanged;
-            _playService.Destroy();
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/ViewModels/RecordingPageModel.cs b/test/Voicememo2020/VoiceMemo/ViewModels/RecordingPageModel.cs
deleted file mode 100755 (executable)
index f741095..0000000
+++ /dev/null
@@ -1,647 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Diagnostics;
-using System.Windows.Input;
-using VoiceMemo.Models;
-using VoiceMemo.Resx;
-using VoiceMemo.Services;
-using Xamarin.Forms;
-using Native = Tizen.Applications;
-
-namespace VoiceMemo.ViewModels
-{
-    public enum RecordingViewModelState
-    {
-        Ready,
-        Recording,
-        Paused,
-        PausedForCancel,
-        Cancelled,
-        Stopped,
-    }
-
-    public enum RecordingCommandType
-    {
-        Record,
-        Pause,
-        PauseForCancelRequest,
-        Resume,
-        Cancel,
-        Stop
-    }
-
-    // The model class for RecordingPage
-    public class RecordingPageModel : BasePageModel
-    {
-        /// <summary>
-        /// It works while recording.
-        /// </summary>
-        private static Stopwatch RecordingWatch;
-
-        // For recording voice
-        AudioRecordService _audioRecordingService;
-
-        public AudioRecordService AudioRecordingService
-        {
-            get => _audioRecordingService;
-            private set
-            {
-                SetProperty(ref _audioRecordingService, value, "AudioRecordingService");
-            }
-        }
-
-        RecordingViewModelState _recordingViewModelState;
-        public RecordingViewModelState RecordingViewModelState
-        {
-            get => _recordingViewModelState;
-            private set
-            {
-                SetProperty(ref _recordingViewModelState, value, "RecordingViewModelState");
-            }
-        }
-
-        bool _SttOn;
-        public bool SttOn
-        {
-            get
-            {
-                return _SttOn;
-            }
-
-            set
-            {
-                SetProperty(ref _SttOn, value, "SttOn");
-            }
-        }
-
-        string _recordTitle;
-        public string RecordTitle
-        {
-            get => _recordTitle;
-            set
-            {
-                SetProperty(ref _recordTitle, value, "RecordTitle");
-            }
-        }
-
-        string _recordingTime;
-        public string RecordingTime
-        {
-            get => _recordingTime;
-            set
-            {
-                SetProperty(ref _recordingTime, value, "RecordingTime");
-            }
-        }
-
-        string _toggleImage;
-        public string PauseRecordToggleImage
-        {
-            get => _toggleImage;
-            set
-            {
-                SetProperty(ref _toggleImage, value, "PauseRecordToggleImage");
-            }
-        }
-
-        double _RecordingProcess;
-        public double RecordingProcess
-        {
-            get
-            {
-                return _RecordingProcess;
-            }
-
-            set
-            {
-                SetProperty(ref _RecordingProcess, value, "RecordingProcess");
-            }
-        }
-
-        public ICommand RequestCommand { private set; get; }
-
-        // For restoring information of the created voice media file
-        MediaContentService _ContentService;
-        // For
-        DeviceInformationService _DeviceInfoService;
-        SpeechToTextService _SttService;
-        public int Index;
-
-        double RECORDING_PROGRESSBAR_DELTA;
-
-        bool _isRecordingEffectOn;
-
-        public bool RecordingEffectOn
-        {
-            get
-            {
-                return _isRecordingEffectOn;
-            }
-
-            set
-            {
-                SetProperty(ref _isRecordingEffectOn, value, "RecordingEffectOn");
-            }
-        }
-
-        bool _isTimeFlickeringOn;
-        private bool _requestSttStart;
-        private bool _requestSttStop;
-
-        public bool TimeFlickeringOn
-        {
-            get
-            {
-                return _isTimeFlickeringOn;
-            }
-
-            set
-            {
-                SetProperty(ref _isTimeFlickeringOn, value, "TimeFlickeringOn");
-            }
-        }
-
-        bool disposing;
-
-        private void RecordingStateCallback(Object o, AudioRecordState prev, AudioRecordState current)
-        {
-            switch (current)
-            {
-                case AudioRecordState.Idle:
-                    HandleRecorderIdleState(o, prev, current);
-                    break;
-                case AudioRecordState.Init:
-                    HandleRecorderInitState(o, prev, current);
-                    break;
-                case AudioRecordState.Ready:
-                    HandleRecorderReadyState(o, prev, current);
-                    break;
-                case AudioRecordState.Recording:
-                    HandleRecorderRecordingState(o, prev, current);
-                    break;
-                case AudioRecordState.Paused:
-                    HandleRecorderPauseState(o, prev, current);
-                    break;
-            }
-        }
-
-        public void SttStateCallback(Object o, SttState prev, SttState current)
-        {
-            switch (current)
-            {
-                case SttState.Created:
-                    HandleSttCreatedState(o, prev, current);
-                    break;
-                case SttState.Ready:
-                    HandleSttReadyState(o, prev, current);
-                    ((App)App.Current).mainPageModel.availableToRecord = true;
-                    break;
-                case SttState.Recording:
-                    HandleSttRecordingState(o, prev, current);
-                    ((App)App.Current).mainPageModel.availableToRecord = false;
-                    break;
-                case SttState.Processing:
-                    HandleSttProcessingState(o, prev, current);
-                    ((App)App.Current).mainPageModel.availableToRecord = false;
-                    break;
-                case SttState.Unavailable:
-                    HandleSttUnavailableState(o, prev, current);
-                    break;
-            }
-        }
-
-        private void HandleSttProcessingState(object o, SttState prev, SttState current)
-        {
-            if (_requestSttStop)
-            {
-                _requestSttStop = false;
-                _SttService.Cancel();
-            }
-        }
-
-        private void HandleSttUnavailableState(object o, SttState prev, SttState current)
-        {
-        }
-
-        private void HandleSttRecordingState(object o, SttState prev, SttState current)
-        {
-            if (_requestSttStop)
-            {
-                _requestSttStop = false;
-                _SttService.Cancel();
-            }
-        }
-
-        private void HandleSttReadyState(object o, SttState prev, SttState current)
-        {
-            if (_requestSttStart && !_requestSttStop)
-            {
-                _requestSttStart = false;
-                _SttService.StartStt();
-            }
-        }
-
-        private void HandleSttCreatedState(object o, SttState prev, SttState current)
-        {
-            throw new NotImplementedException();
-        }
-
-        private void HandleRecorderPauseState(object o, AudioRecordState prev, AudioRecordState current)
-        {
-            StopTimer();
-            StopRecordingEffect();
-            if (RecordingViewModelState != RecordingViewModelState.PausedForCancel)
-            {
-                StartTimeFlickering();
-                RecordingViewModelState = RecordingViewModelState.Paused;
-                PauseRecordToggleImage = "record_stop_icon.png";
-            }
-        }
-
-        private void HandleRecorderRecordingState(object o, AudioRecordState prev, AudioRecordState current)
-        {
-            if (prev == AudioRecordState.Paused) // from pause -> recording
-            {
-                StopTimeFlickering();
-            }
-
-            // Start recording UI on
-            StartTimer();
-            StartRecordingEffect();
-            PauseRecordToggleImage = "recording_icon_pause.png";
-            RecordingViewModelState = RecordingViewModelState.Recording;
-        }
-
-        private void HandleRecorderReadyState(object o, AudioRecordState prev, AudioRecordState current)
-        {
-
-        }
-
-        private void HandleRecorderInitState(object o, AudioRecordState prev, AudioRecordState current)
-        {
-
-        }
-
-        private void HandleRecorderIdleState(object o, AudioRecordState prev, AudioRecordState current)
-        {
-            throw new NotImplementedException();
-        }
-
-        public RecordingPageModel(bool sttOn)
-        {
-            RequestCommand = new Command<RecordingCommandType>(Request);
-
-            if (RecordingWatch == null)
-            {
-                RecordingWatch = new Stopwatch();
-            }
-
-            _audioRecordingService = AudioRecordService.Instance;
-            _audioRecordingService.ViewModel = this;
-            _audioRecordingService.RegisterStateCallbacks(new Action<Object, AudioRecordState, AudioRecordState>(RecordingStateCallback));
-            AudioRecordingService = _audioRecordingService;
-            _DeviceInfoService = DeviceInformationService.Instance;
-            _SttService = SpeechToTextService.Instance;
-            _SttService.RegisterStateCallbacks(new Action<object, SttState, SttState>(SttStateCallback));
-            _ContentService = MediaContentService.Instance;
-            string.Format("{0:00}", _DeviceInfoService.LastStoredFileIndex);
-            Index = _DeviceInfoService.LastStoredFileIndex + 1;
-            SttOn = sttOn;
-            MessagingCenter.Subscribe<MainPageModel, bool>(this, MessageKeys.SttSupportedChanged, (obj, sttIsOn) =>
-            {
-                Console.WriteLine("### MessagingCenter ## [RecordingPageModel] just received << MessageKeys.SttSupportedChanged >>  On? :" + sttIsOn);
-                SttOn = sttIsOn;
-            });
-            disposing = false;
-        }
-
-        public void Init()
-        {
-            // This is an entry point to any service 
-            // Recorder: ready 
-            // Stt: ready if present
-            Console.WriteLine("[RecordingPageModel.Init]   SttOn:" + SttOn + ", stt state:" + _SttService.SttState);
-            if (!_DeviceInfoService.StorageAvailable)
-            {
-                // TODO: ContextPopup
-                return;
-            }
-
-            // initialize page
-            RecordingViewModelState = RecordingViewModelState.Ready;
-            RecordingTime = "00:00";
-            RecordingProcess = 0;
-            RecordingWatch.Reset();
-            RecordingEffectOn = false;
-            TimeFlickeringOn = false;
-            RecordTitle = "Memo " + Index.ToString();
-            RECORDING_PROGRESSBAR_DELTA = 0.003333;
-            _requestSttStart = false;
-            _requestSttStop = false;
-
-            if (SttOn)
-            {
-                switch (_SttService.SttState)
-                {
-                    case SttState.Created:
-                        _requestSttStart = true; // this should be false in Ready callback
-                        break;
-                    case SttState.Ready:
-                        _SttService.StartStt();
-                        break;
-                    case SttState.Recording:
-                    case SttState.Processing:
-                        try
-                        {
-                            Console.WriteLine("[RecordingPageModel.Init] STT state: " + _SttService.SttState + " --> Cancel it");
-                            _SttService.Cancel();
-                        }
-                        catch (Exception e)
-                        {
-                            Console.WriteLine("Catch possible error while cancel " + e.Message + ", " + e.Source);
-                        }
-
-                        MessagingCenter.Send<RecordingPageModel>(this, MessageKeys.ForcePopRecordingPage);
-                        return;
-                    case SttState.Unavailable:
-                        break;
-                }
-            }
-            else
-            {
-                RecordTitle = "Voice " + Index.ToString();
-                RECORDING_PROGRESSBAR_DELTA = 0.000555556;
-            }
-
-            _audioRecordingService.Start(RecordTitle, SttOn);
-        }
-
-        void StartTimer()
-        {
-            // TODO: Need to check recorded time and display time
-            RecordingWatch.Start();
-            // Any background code that needs to update the user interface
-            Device.BeginInvokeOnMainThread(() =>
-            {
-                // interact with UI elements
-                Device.StartTimer(new TimeSpan(0, 0, 0, 1, 0), UpdateRecordingTimeAndProgressBar);
-            });
-        }
-
-        void StopTimer()
-        {
-            RecordingWatch.Stop();
-        }
-
-        bool UpdateRecordingTimeAndProgressBar()
-        {
-            //return true to keep the timer running or false to stop it after the current invocation.
-            if (_audioRecordingService.State == AudioRecordState.Recording)
-            {
-                RecordingProcess += RECORDING_PROGRESSBAR_DELTA;
-
-                RecordingTime = string.Format("{0:00}:{1:00}", RecordingWatch.Elapsed.Minutes, RecordingWatch.Elapsed.Seconds);
-                return true;
-            }
-            else
-            {
-                return false;
-            }
-        }
-
-        void Request(RecordingCommandType request)
-        {
-            switch (request)
-            {
-                case RecordingCommandType.Record:
-                    RecordingCommandRequested();
-                    break;
-                case RecordingCommandType.Pause:
-                    PauseCommandRequested();
-                    break;
-                case RecordingCommandType.PauseForCancelRequest:
-                    PauseForCancelCommandRequested();
-                    break;
-                case RecordingCommandType.Resume:
-                    ResumeCommandRequested();
-                    break;
-                case RecordingCommandType.Cancel:
-                    CancelCommandRequested();
-                    break;
-                case RecordingCommandType.Stop:
-                    StopCommandRequested();
-                    break;
-            }
-        }
-
-        private void RecordingCommandRequested()
-        {
-            // 20180220-vincent: At this point audioRecordingService is either Recording or Paused
-            if (_audioRecordingService.State == AudioRecordState.Paused)
-            {
-                _audioRecordingService.Resume();
-            }
-        }
-
-        private async void StopCommandRequested()
-        {
-            if (RecordingViewModelState == RecordingViewModelState.Stopped)
-            {
-                return; // if already set to stopped, then do not repeat
-            }
-
-            RecordingViewModelState = RecordingViewModelState.Stopped;
-
-            if (!disposing)
-            {
-                StopTimer();
-                StopRecordingEffect();
-                StopTimeFlickering();
-            }
-
-            Record record = SaveRecording();
-            bool ExistText = SttOn && _SttService.SttState == SttState.Recording;
-            if (ExistText)
-            {
-                string SttText = await _SttService.StopAndGetText();
-                record.Text = SttText;
-                Console.WriteLine("[StopCommandRequested] record.Text : (" + record.Text + ")");
-            }
-            else if (SttOn)
-            {
-                // TODO: remove it.
-                record.Text = "STT Error? " + _SttService.SttState;
-            }
-
-            // Notify that it's time to save Record in database
-            MessagingCenter.Send<RecordingPageModel, Record>(this, MessageKeys.SaveVoiceMemoInDB, record);
-
-            if (ExistText &&
-                (string.IsNullOrEmpty(record.Text) || record.Text.Equals("") || record.Text.Equals(" ") || record.Text.Equals("  ")))
-            {
-                Console.WriteLine("[StopCommandRequested]         !!!!!!!!!        resultText is string.IsNullOrEmpty");
-                record.Text = AppResources.RecognitionFailed;
-            }
-
-            if (disposing)
-            {
-                DisposeServices();
-            }
-        }
-
-        Record SaveRecording()
-        {
-            var filePath = _audioRecordingService.Save();
-            // TODO: Handle audio recording failure case
-            Index++;
-            Record record = _ContentService.GetMediaInfo(filePath, SttOn);
-            MessagingCenter.Send<RecordingPageModel, Record>(this, MessageKeys.SaveVoiceMemo, new LatestRecord(record));
-            return record;
-        }
-
-        private void CancelCommandRequested()
-        {
-            Console.WriteLine("\n\n  CANCEL ---  AUDIO RECORDING & STT");
-            _requestSttStart = false; // initialize stt start request
-            if (RecordingViewModelState == RecordingViewModelState.Paused)
-            {
-                StopTimeFlickering();
-            }
-
-            if (SttOn)
-            {
-                _requestSttStop = true;
-                if (_SttService.SttState == SttState.Recording || _SttService.SttState == SttState.Processing)
-                {
-                    _SttService.Cancel();
-                }
-                else // created, ready
-                {
-                    // do not need to cancel but should not start
-                    if (_requestSttStart)
-                    {
-                        _requestSttStart = false; // prevent create->ready (should not start)
-                    }
-                }
-            }
-
-            _audioRecordingService.Cancel();
-            RecordingViewModelState = RecordingViewModelState.Cancelled;
-        }
-
-        private void ResumeCommandRequested()
-        {
-            if (RecordingViewModelState == RecordingViewModelState.PausedForCancel)
-            {
-                Request(RecordingCommandType.Record);
-            }
-        }
-
-        private void PauseCommandRequested()
-        {
-            if (_audioRecordingService.State == AudioRecordState.Recording)
-            {
-                _audioRecordingService.Pause();
-                // Any background code that needs to update the user interface
-                Device.BeginInvokeOnMainThread(() =>
-                {
-                    // interact with UI elements
-                    Device.StartTimer(new TimeSpan(0, 0, 0, 60, 0), DoAutoSaveAndTerminate);
-                });
-            }
-        }
-
-        bool DoAutoSaveAndTerminate()
-        {
-            
-            //if (_audioRecordingService.State == AudioRecordState.Paused)
-            //{
-            //    RequestCommand.Execute(RecordingCommandType.Stop);
-
-            //}
-            Console.WriteLine("        Now, save recording and terminate this application. ");
-            // Terminate this application
-            Native.Application.Current.Exit();
-            return false;
-        }
-
-        private void PauseForCancelCommandRequested()
-        {
-            if (_audioRecordingService.State == AudioRecordState.Recording)
-            {
-                RecordingViewModelState = RecordingViewModelState.PausedForCancel;
-                _audioRecordingService.Pause();
-            }
-        }
-
-        private void StartRecordingEffect()
-        {
-            RecordingEffectOn = true;
-        }
-
-        private void StopRecordingEffect()
-        {
-            RecordingEffectOn = false;
-        }
-
-        private void StartTimeFlickering()
-        {
-            TimeFlickeringOn = true;
-        }
-
-        private void StopTimeFlickering()
-        {
-            TimeFlickeringOn = false;
-        }
-
-        public void Dispose()
-        {
-            Console.WriteLine("RecordingPageModel.Dispose()   START");
-
-            MessagingCenter.Unsubscribe<MainPageModel, bool>(this, MessageKeys.SttSupportedChanged);
-            if (_audioRecordingService.State == AudioRecordState.Recording || _audioRecordingService.State == AudioRecordState.Paused)
-            {
-                disposing = true;
-                RequestCommand.Execute(RecordingCommandType.Stop);
-            }
-            else
-            {
-                DisposeServices();
-            }
-            //////#if STT_ON
-            //////            if (SttOn)
-            //////            {
-            //////                Console.WriteLine("RecordingPageModel.Dispose()   _SttService.Dispose");
-            //////                _SttService.Dispose();
-            //////            }
-            //////#endif
-            //////            _ContentService.Destroy();
-            //////            _audioRecordingService.Destroy();
-            Console.WriteLine("RecordingPageModel.Dispose()   DONE");
-        }
-
-        void DisposeServices()
-        {
-            Console.WriteLine("RecordingPageModel.DisposeServices()   START");
-            _audioRecordingService.Destroy();
-            _SttService.Dispose();
-            _ContentService.Destroy();
-            Console.WriteLine("RecordingPageModel.DisposeServices()   DONE");
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Views/BindableToolbarItem.cs b/test/Voicememo2020/VoiceMemo/Views/BindableToolbarItem.cs
deleted file mode 100755 (executable)
index eb4fa73..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-using Xamarin.Forms;
-using Tizen.Wearable.CircularUI.Forms;
-
-namespace VoiceMemo.Views
-{
-    /// <summary>
-    /// class custom circle toolbar item
-    /// Its visibility can be changeable.
-    /// </summary>
-    public class BindableToolbarItem : CircleToolbarItem
-    {
-        public static readonly BindableProperty IsVisibleProperty =
-            BindableProperty.Create("BindableToolbarItem", typeof(bool), typeof(ToolbarItem),
-                true, BindingMode.TwoWay, propertyChanged: OnIsVisibleChanged);
-
-        public BindableToolbarItem()
-        {
-            InitVisibility();
-        }
-
-        /// <summary>
-        /// ToolbarItem's visibility
-        /// </summary>
-        public bool IsVisible
-        {
-            get { return (bool)GetValue(IsVisibleProperty); }
-            set { SetValue(IsVisibleProperty, value); }
-        }
-
-        private void InitVisibility()
-        {
-            OnIsVisibleChanged(this, false, IsVisible);
-        }
-
-        private static void OnIsVisibleChanged(BindableObject bindable, object oldvalue, object newvalue)
-        {
-            var item = bindable as BindableToolbarItem;
-
-            if (item != null && item.Parent == null)
-            {
-                return;
-            }
-
-            if (item != null)
-            {
-                var items = ((ContentPage)item.Parent).ToolbarItems;
-
-                // case : add to toolbar items
-                if ((bool)newvalue && !items.Contains(item))
-                {
-                    Device.BeginInvokeOnMainThread(() => { items.Add(item); });
-                }
-                // case : remove from toolbar items
-                else if (!(bool)newvalue && items.Contains(item))
-                {
-                    Device.BeginInvokeOnMainThread(() => { items.Remove(item); });
-                }
-            }
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Views/CancelPage.xaml b/test/Voicememo2020/VoiceMemo/Views/CancelPage.xaml
deleted file mode 100755 (executable)
index b9d8d86..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<w:TwoButtonPage
-    x:Class="VoiceMemo.Views.CancelPage"
-    xmlns="http://xamarin.com/schemas/2014/forms"
-    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-    xmlns:resx="clr-namespace:VoiceMemo.Resx;"
-    xmlns:w="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF">
-    <w:TwoButtonPage.FirstButton>
-        <MenuItem Clicked="OnAbortCancelClicked" Icon="tw_ic_popup_btn_delete.png" />
-    </w:TwoButtonPage.FirstButton>
-    <w:TwoButtonPage.SecondButton>
-        <MenuItem Clicked="OnCancelClicked" Icon="tw_ic_popup_btn_check.png" />
-    </w:TwoButtonPage.SecondButton>
-
-    <w:TwoButtonPage.Content>
-        <StackLayout BackgroundColor="Black">
-            <Label
-                x:Name="CancelLabel"
-                FontSize="Medium"
-                HorizontalOptions="Center"
-                HorizontalTextAlignment="Center"
-                Text="{x:Static resx:AppResources.CancelRecording}"
-                TextColor="White"
-                VerticalOptions="CenterAndExpand"
-                VerticalTextAlignment="Center"
-                />
-        </StackLayout>
-    </w:TwoButtonPage.Content>
-</w:TwoButtonPage>
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/Views/CancelPage.xaml.cs b/test/Voicememo2020/VoiceMemo/Views/CancelPage.xaml.cs
deleted file mode 100755 (executable)
index 217fee7..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using VoiceMemo.ViewModels;
-using VoiceMemo.Resx;
-using Xamarin.Forms;
-using Tizen.Wearable.CircularUI.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace VoiceMemo.Views
-{
-    /// <summary>
-    /// CancelPage class
-    /// It provides a way to cancel voice recording
-    /// </summary>
-    public partial class CancelPage : TwoButtonPage
-    {
-        RecordingPageModel ViewModel;
-
-        public CancelPage(RecordingPageModel vm)
-        {
-            // Hide navigation bar
-            NavigationPage.SetHasNavigationBar(this, false);
-            // Subscribe notification of locale changes to update text based on locale
-            MessagingCenter.Subscribe<App>(this, MessageKeys.UpdateByLanguageChange, (obj) =>
-            {
-                // Update text that has been translated into the current language.
-                CancelLabel.Text = AppResources.CancelRecording;
-            });
-            InitializeComponent();
-            Init(vm);
-        }
-
-        void Init(RecordingPageModel vm)
-        {
-            BindingContext = ViewModel = vm;
-        }
-        
-        // Keep recording
-        // CancelPage --> RecordingPage
-        async void OnAbortCancelClicked(object sender, EventArgs args)
-        {
-            // Request to Resume
-            ViewModel.RequestCommand.Execute(RecordingCommandType.Resume);
-            await Navigation.PopAsync();
-        }
-
-        // Cancel recording voice
-        // CancelPage --> StandByPage(First main page)
-        async void OnCancelClicked(object sender, EventArgs args)
-        {
-            // Request to Cancel
-            ViewModel.RequestCommand.Execute(RecordingCommandType.Cancel);
-            await Navigation.PopToRootAsync(); // @20180218-vincent: This should never be used without clearing
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/Views/CirclePageEx.xaml b/test/Voicememo2020/VoiceMemo/Views/CirclePageEx.xaml
deleted file mode 100755 (executable)
index bc9f677..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<w:CirclePage xmlns="http://xamarin.com/schemas/2014/forms"
-            xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-            xmlns:w="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"
-            x:Class="VoiceMemo.Views.CirclePageEx">
-</w:CirclePage>
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/Views/CirclePageEx.xaml.cs b/test/Voicememo2020/VoiceMemo/Views/CirclePageEx.xaml.cs
deleted file mode 100755 (executable)
index 7c9232b..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using Tizen.Wearable.CircularUI.Forms;
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace VoiceMemo.Views
-{
-    /// <summary>
-    /// Base Page class
-    /// </summary>
-       public partial class CirclePageEx : CirclePage
-    {
-               public CirclePageEx()
-               {
-            // Hide navigation bar
-            NavigationPage.SetHasNavigationBar(this, false);
-
-            InitializeComponent();
-        }
-       }
-}
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/Views/DetailsPage.xaml b/test/Voicememo2020/VoiceMemo/Views/DetailsPage.xaml
deleted file mode 100755 (executable)
index 4bf8915..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<view:CirclePageEx
-    x:Class="VoiceMemo.Views.DetailsPage"
-    xmlns="http://xamarin.com/schemas/2014/forms"
-    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-    xmlns:converters="clr-namespace:VoiceMemo.Converters;"
-    xmlns:view="clr-namespace:VoiceMemo.Views;"
-    xmlns:vm="clr-namespace:VoiceMemo.ViewModels;"
-    xmlns:w="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"
-    RotaryFocusObject="{x:Reference ScrollTextView}"
-    x:Name="Details">
-    <ContentPage.Resources>
-        <ResourceDictionary>
-            <Color x:Key="AT0116">#FF4DCFFF</Color>
-            <Style x:Key="LabelStyle-AT0116" TargetType="Label" BasedOn="{StaticResource LabelStyle-Base}">
-                <Setter Property="FontSize" Value="10" />
-                <Setter Property="TextColor" Value="{StaticResource AT0116}" />
-            </Style>
-            <Color x:Key="AT0114">#FFB3B3B3</Color>
-            <Style x:Key="LabelStyle-AT0114" TargetType="Label" BasedOn="{StaticResource LabelStyle-Base}">
-                <Setter Property="FontSize" Value="8" />
-                <Setter Property="TextColor" Value="{StaticResource AT0114}" />
-            </Style>
-            <converters:DurationToRemainingTimeConverter x:Key="TimeConverter" />
-            <converters:RemainingTimeType x:Key="TimeType" />
-        </ResourceDictionary>
-    </ContentPage.Resources>
-    <ContentPage.Content>
-        <w:CircleScrollView
-            x:Name="ScrollTextView"
-            Orientation="Vertical">
-            <RelativeLayout x:Name="mainLayout">
-                <Label
-                    x:Name="TitleLabel"
-                    RelativeLayout.XConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=0, Constant=64}"
-                    RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToParent, Property=Height, Factor=0, Constant=51}"
-                    WidthRequest="232"
-                    HeightRequest="39"
-                    Text="{Binding Record.Title}"
-                    Style="{StaticResource LabelStyle-AT0116}" />
-                <Label
-                    x:Name="DateInfoLabel"
-                    RelativeLayout.XConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=0, Constant=33}"
-                    RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToParent, Property=Height, Factor=0, Constant=115}"
-                    WidthRequest="294"
-                    HeightRequest="32"
-                    Text="{Binding Record.Date}"
-                    Style="{StaticResource LabelStyle-AT0114}" />
-                <Label
-                    x:Name="TimeInfoLabel"
-                    RelativeLayout.XConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=0, Constant=33}"
-                    RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToParent, Property=Height, Factor=0, Constant=147}"
-                    WidthRequest="294"
-                    HeightRequest="32"
-                    Text="{Binding Record.Duration, Converter={StaticResource TimeConverter}, ConverterParameter={x:Static converters:RemainingTimeType.TimeText}}"
-                    Style="{StaticResource LabelStyle-AT0114}"/>
-                <Label
-                    x:Name="ContentLabel"
-                    RelativeLayout.XConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=0, Constant=33}"
-                    RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToParent, Property=Height, Factor=0, Constant=179}"
-                    WidthRequest="294"
-                    Text="{Binding Record.Text}"
-                    TextColor="White"
-                    HorizontalTextAlignment="Center"
-                    VerticalTextAlignment="Center" />
-                <!-- default font size of label : 9.2936170212766-->
-            </RelativeLayout>
-        </w:CircleScrollView>
-    </ContentPage.Content>
-    <w:CirclePage.ActionButton>
-        <w:ActionButtonItem Clicked="OnPlayBackClicked" Icon="details_playback_icon.png" />
-    </w:CirclePage.ActionButton>
-    <w:CirclePage.ToolbarItems>
-        <w:CircleToolbarItem
-            Clicked="OnCircleToolbarItemClicked_DeleteRecord"
-            Icon="more_option_icon_delete.png"
-            Text="Delete" />
-    </w:CirclePage.ToolbarItems>
-</view:CirclePageEx>
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/Views/DetailsPage.xaml.cs b/test/Voicememo2020/VoiceMemo/Views/DetailsPage.xaml.cs
deleted file mode 100755 (executable)
index 60ebb37..0000000
+++ /dev/null
@@ -1,132 +0,0 @@
-using VoiceMemo.Resx;
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using VoiceMemo.Models;
-using VoiceMemo.ViewModels;
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace VoiceMemo.Views
-{
-    /// <summary>
-    /// DetailsPage class
-    /// It shows the details of voice memo
-    /// file name, recorded time, recording time
-    /// </summary>
-    public partial class DetailsPage : CirclePageEx
-    {
-        DetailsPageModel viewModel;
-
-        public DetailsPage(DetailsPageModel _viewModel)
-        {
-            InitializeComponent();
-            BindingContext = viewModel = _viewModel;
-
-            // Spare as high as an action button when a text is long
-            mainLayout.Children.Add(new BoxView(), Constraint.RelativeToView(ContentLabel, (Parent, sibling) =>
-            {
-                return sibling.X;
-            }), Constraint.RelativeToView(ContentLabel, (parent, sibling) =>
-            {
-                return sibling.Y + sibling.Height;
-            }), Constraint.RelativeToParent((parent) =>
-            {
-                return 294;
-            }), Constraint.RelativeToParent((parent) =>
-            {
-                return 78 + 7;
-            }));
-        }
-
-        /// <summary>
-        /// Request to play voice memo/record
-        /// </summary>
-        /// <param name="sender">object</param>
-        /// <param name="args">EventArgs</param>
-        async void OnPlayBackClicked(object sender, EventArgs args)
-        {
-            // Move to the recording page to keep recording
-            Console.WriteLine("[DetailsPage.OnPlayBackClicked]     ");
-            await Navigation.PushAsync(PageFactory.GetInstance(Pages.PlayBack, viewModel.Record/*new PlayBackPageModel(viewModel.Record)*/));
-        }
-
-        /// <summary>
-        /// Request to delete the record
-        /// </summary>
-        /// <param name="sender">object</param>
-        /// <param name="args">EventArgs</param>
-        /*async*/ void OnCircleToolbarItemClicked_DeleteRecord(object sender, EventArgs args)
-        {
-            Console.WriteLine("[OnCircleToolbarItemClicked_DeleteRecord] sender : " + sender + ", record: " + ((DetailsPageModel)viewModel).Record);
-
-            //await DisplayAlert("Delete", "Delete this recording", "OK");
-            GraphicPopUp popup = new GraphicPopUp
-            {
-                Text = AppResources.Deleted,
-            };
-            popup.TimedOut += Popup_TimedOut;
-            popup.Show();
-
-            // Publish "DeleteVoiceMemo" message for a listener to remove this record from database.
-            MessagingCenter.Send<Page, Record>(this, MessageKeys.DeleteVoiceMemo, ((DetailsPageModel)viewModel).Record);
-        }
-
-        private async void Popup_TimedOut(object sender, EventArgs e)
-        {
-            Console.WriteLine("[DetailsPage]  Popup_TimedOut() ...");
-            await Navigation.PopToRootAsync();
-        }
-
-        /// <summary>
-        /// Invoked immediately prior to the Page becoming visible.
-        /// </summary>
-        protected override void OnAppearing()
-        {
-            Console.WriteLine("[DetailsPage]  OnAppearing() ...");
-        }
-
-        /// <summary>
-        /// Invoked when this page disappears.
-        /// </summary>
-        protected override void OnDisappearing()
-        {
-            Console.WriteLine("[DetailsPage]  OnDisappearing");
-        }
-
-        /// <summary>
-        /// Invoked when backbutton is pressed
-        /// VoiceMemoStandByPage will be shown.
-        /// </summary>
-        /// <returns>bool value</returns>
-        protected override bool OnBackButtonPressed()
-        {
-            if (((DetailsPageModel)BindingContext).IsNew)
-            {
-                Console.WriteLine("[DetailsPage-OnBackButtonPressed]  PopToRootAsync");
-                Navigation.PopToRootAsync();
-            }
-            else
-            {
-                Console.WriteLine("[DetailsPage-OnBackButtonPressed]  PopAsync");
-                Navigation.PopAsync();
-            }
-
-            return true;
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Views/GraphicPopup.cs b/test/Voicememo2020/VoiceMemo/Views/GraphicPopup.cs
deleted file mode 100755 (executable)
index d691fd3..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using Xamarin.Forms;
-using System;
-using VoiceMemo.Tizen.Wearable.Renderers;
-
-namespace VoiceMemo.Views
-{
-    /// <summary>
-    /// Class GraphicPopUp
-    /// </summary>
-    public class GraphicPopUp : BindableObject
-    {
-        public static readonly BindableProperty TextProperty = BindableProperty.Create(nameof(Text), typeof(string), typeof(GraphicPopUp), null);
-
-        public static readonly BindableProperty DurationProperty = BindableProperty.Create(nameof(Duration), typeof(double), typeof(GraphicPopUp), 1.5);
-
-        IGraphicPopup _popUp = null;
-
-        public event EventHandler BackButtonPressed;
-        public event EventHandler TimedOut;
-
-        // Constructor
-        public GraphicPopUp()
-        {
-            _popUp = new GraphicPopUpRenderer();
-            if (_popUp == null)
-            {
-                throw new Exception("Object reference not set to an instance of a Popup.");
-            }
-
-            _popUp.BackButtonPressed += (s, e) =>
-            {
-                BackButtonPressed?.Invoke(this, EventArgs.Empty);
-            };
-
-            _popUp.TimedOut += (s, e) =>
-            {
-                TimedOut?.Invoke(this, EventArgs.Empty);
-            };
-
-            SetBinding(TextProperty, new Binding(nameof(Text), mode: BindingMode.OneWayToSource, source: _popUp));
-            SetBinding(DurationProperty, new Binding(nameof(Duration), mode: BindingMode.OneWayToSource, source: _popUp));
-        }
-
-        /// <summary>
-        /// Gets or sets text of the Popup.
-        /// </summary>
-        public string Text
-        {
-            get { return (string)GetValue(TextProperty); }
-            set { SetValue(TextProperty, value); }
-        }
-
-        /// <summary>
-        /// Gets or sets duration of the Popup.
-        /// </summary>
-        public double Duration
-        {
-            get { return (double)GetValue(DurationProperty); }
-            set { SetValue(DurationProperty, value); }
-        }
-
-        /// <summary>
-        /// Show Toast Popup
-        /// </summary>
-        public void Show()
-        {
-            _popUp.Show();
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Views/IGraphicPopup.cs b/test/Voicememo2020/VoiceMemo/Views/IGraphicPopup.cs
deleted file mode 100755 (executable)
index 7449534..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-
-namespace VoiceMemo.Views
-{
-    /// <summary>
-    /// Interface IPopup for Toast Popup
-    /// </summary>
-    public interface IGraphicPopup
-    {
-        /// <summary>
-        /// Text for Toast Popup
-        /// </summary>
-        string Text { get; set; }
-
-        /// <summary>
-        /// Duration for Toast Popup
-        /// How long to display the text message
-        /// </summary>
-        double Duration { get; set; }
-
-        /// <summary>
-        /// Make Toast Popup show
-        /// </summary>
-        void Show();
-
-        /// <summary>
-        /// Raised when back button is pressed
-        /// </summary>
-        event EventHandler BackButtonPressed;
-
-        /// <summary>
-        /// Raised after the text is shown for the specified duration
-        /// </summary>
-        event EventHandler TimedOut;
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Views/IProgressbarPopup.cs b/test/Voicememo2020/VoiceMemo/Views/IProgressbarPopup.cs
deleted file mode 100755 (executable)
index b5c904b..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-namespace VoiceMemo.Views
-{
-    /// <summary>
-    /// IProgressbarPopup interface
-    /// </summary>
-    public interface IProgressbarPopup : IGraphicPopup
-    {
-        /// <summary>
-        /// Text for Progressbar
-        /// </summary>
-        string ProgressbarText { get; set; }
-
-        /// <summary>
-        /// Duration for Progressbar
-        /// How long to display the text message with progressbar
-        /// </summary>
-        double ProgressbarDuration { get; set; }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Views/LanguageSelectionPage.xaml b/test/Voicememo2020/VoiceMemo/Views/LanguageSelectionPage.xaml
deleted file mode 100755 (executable)
index 5d600c3..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<view:CirclePageEx
-    x:Class="VoiceMemo.Views.LanguageSelectionPage"
-    xmlns="http://xamarin.com/schemas/2014/forms"
-    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-    xmlns:converters="clr-namespace:VoiceMemo.Converters;"
-    xmlns:vms="clr-namespace:VoiceMemo.ViewModels;"
-    xmlns:view="clr-namespace:VoiceMemo.Views;"
-    xmlns:resx="clr-namespace:VoiceMemo.Resx;"
-    xmlns:w="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"
-    RotaryFocusObject="{x:Reference LangListView}">
-    <ContentPage.Resources>
-        <ResourceDictionary>
-            <Style x:Key="BaseLabelStyle" TargetType="Label">
-                <Setter Property="HorizontalOptions" Value="Center" />
-                <Setter Property="VerticalOptions" Value="Center" />
-                <Setter Property="VerticalTextAlignment" Value="Center" />
-                <Setter Property="HorizontalTextAlignment" Value="Center" />
-                <Setter Property="TextColor" Value="White" />
-            </Style>
-            <converters:CountryCodeToNameConverter x:Key="LangConverter" />
-        </ResourceDictionary>
-    </ContentPage.Resources>
-    <view:CirclePageEx.Content>
-        <w:CircleListView
-            x:Name="LangListView"
-            HasUnevenRows="True"
-            HorizontalOptions="FillAndExpand"
-            ItemTapped="OnItemTapped"
-            ItemsSource="{Binding Languages}"
-            VerticalOptions="FillAndExpand">
-            <ListView.Footer>
-                <StackLayout HeightRequest="115">
-                    <BoxView />
-                </StackLayout>
-            </ListView.Footer>
-            <ListView.Header>
-                <StackLayout HeightRequest="115">
-                    <!--original #4DCFFF-->
-                    <Label
-                        x:Name="headerLabel"
-                        TextColor="#5aFFFF"
-                        Style="{StaticResource BaseLabelStyle}"
-                        Text="{x:Static resx:AppResources.Languages}"
-                        FontSize="16"
-                        FontAttributes="Bold"
-                        VerticalOptions="FillAndExpand" />
-                </StackLayout>
-            </ListView.Header>
-            <ListView.ItemTemplate>
-                <DataTemplate>
-                    <view:SttLanguageViewCell />
-                </DataTemplate>
-            </ListView.ItemTemplate>
-        </w:CircleListView>
-    </view:CirclePageEx.Content>
-</view:CirclePageEx>
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/Views/LanguageSelectionPage.xaml.cs b/test/Voicememo2020/VoiceMemo/Views/LanguageSelectionPage.xaml.cs
deleted file mode 100755 (executable)
index b7072df..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using VoiceMemo.Models;
-using VoiceMemo.Resx;
-using VoiceMemo.ViewModels;
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace VoiceMemo.Views
-{
-    /// <summary>
-    /// LanguageSelectionPage class
-    /// </summary>
-    public partial class LanguageSelectionPage : CirclePageEx
-    {
-        MainPageModel ViewModel;
-        public bool ignoreRadioSelection = true;
-
-        public LanguageSelectionPage(MainPageModel viewModel)
-        {
-            BindingContext = ViewModel = viewModel;
-            // Subscribe notification of locale changes to update text based on locale
-            MessagingCenter.Subscribe<App>(this, MessageKeys.UpdateByLanguageChange, (obj) =>
-            {
-                // Update text that has been translated into the current language.
-                headerLabel.Text = AppResources.Languages;
-            });
-            InitializeComponent();
-            Init();
-        }
-
-        public void Init()
-        {
-            Console.WriteLine("[LanguageSelectionPage.Init()] LangListView.SelectedItem :" + LangListView.SelectedItem 
-                + " VS. ViewModel.SelectedItemIndex :" + ViewModel.SelectedItemIndex);
-            ignoreRadioSelection = true;
-
-            // Scroll to the previously selected language if it exists.
-            if (ViewModel.SelectedItemIndex != null)
-            {
-                LangListView.ScrollTo(ViewModel.SelectedItemIndex, ScrollToPosition.Center, false);
-            }
-        }
-
-        /// <summary>
-        /// Invoked when an item is tapped
-        /// </summary>
-        /// <param name="sender">object</param>
-        /// <param name="args">ItemTappedEventArgs</param>
-        void OnItemTapped(object sender, ItemTappedEventArgs args)
-        {
-            ignoreRadioSelection = false;
-
-            ViewModel.CurrentLanguage = ((SttLanguage)args.Item).Lang;
-            SttLanguage item = args.Item as SttLanguage;
-            for (int i = 0; i < ((MainPageModel)BindingContext).Languages.Count; i++)
-            {
-                if (((MainPageModel)BindingContext).Languages[i].Combo == item.Combo)
-                {
-                    Console.WriteLine("OnItemTapped : *" + i + " )  FOUND!!  IsOn will be true! ");
-                    // The following code makes the Radio button of SttLanguageViewCell is selected.
-                    ((MainPageModel)BindingContext).Languages[i].IsOn = true;
-                }
-            }
-        }
-
-        /// <summary>
-        /// Invoked immediately prior to the Page becoming visible.
-        /// </summary>
-        protected override void OnAppearing()
-        {
-            Console.WriteLine("[LanguageSelectionPage]  OnAppearing() ...");
-        }
-
-        protected override void OnDisappearing()
-        {
-            Console.WriteLine("[LanguageSelectionPage]  OnDisappearing");
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/Views/MainPage.xaml b/test/Voicememo2020/VoiceMemo/Views/MainPage.xaml
deleted file mode 100755 (executable)
index 837c751..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<views:CirclePageEx x:Class="VoiceMemo.Views.MainPage"
-                    xmlns="http://xamarin.com/schemas/2014/forms"
-                    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-                    xmlns:converters="clr-namespace:VoiceMemo.Converters;"
-                    xmlns:views="clr-namespace:VoiceMemo.Views;"
-                    xmlns:vm="clr-namespace:VoiceMemo.ViewModels;"
-                    xmlns:w="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"
-                    xmlns:resx="clr-namespace:VoiceMemo.Resx;"
-                    x:Name="StandBy"
-                    Title="MainPage">
-    <views:CirclePageEx.Resources>
-        <ResourceDictionary>
-            <Color x:Key="AT011">#FFFAFAFA</Color>
-            <Style x:Key="LabelStyle-AT011" TargetType="Label" BasedOn="{StaticResource LabelStyle-Base}">
-                <Setter Property="FontSize" Value="20" />
-                <Setter Property="TextColor" Value="{StaticResource AT011}" />
-            </Style>
-            <Color x:Key="AT0116">#FF4DCFFF</Color>
-            <Style x:Key="LabelStyle-AT0116" TargetType="Label" BasedOn="{StaticResource LabelStyle-Base}">
-                <Setter Property="FontSize" Value="10" />
-                <Setter Property="TextColor" Value="{StaticResource AT0116}" />
-            </Style>
-        </ResourceDictionary>
-    </views:CirclePageEx.Resources>
-    <views:CirclePageEx.BindingContext>
-        <vm:MainPageModel x:Name="ViewModel" />
-    </views:CirclePageEx.BindingContext>
-    <views:CirclePageEx.Content>
-        <AbsoluteLayout x:Name="MainView" BackgroundColor="Black">
-            <!--  Stand by  -->
-            <Image AbsoluteLayout.LayoutBounds=".5, .5, 96, 96"
-                   AbsoluteLayout.LayoutFlags="PositionProportional"
-                   Source="2019_custom_button/voicerecorder_btn_bg.png"
-                   x:Name="VoiceRecorderBgImage" />
-            <Image AbsoluteLayout.LayoutBounds=".5, .5, 96, 96"
-                   AbsoluteLayout.LayoutFlags="PositionProportional"
-                   Source="2019_custom_button/voicerecorder_stop_icon.png"
-                   x:Name="VoiceRecorderIconImage" />            
-            <Label x:Name="TitleLabel"
-                AbsoluteLayout.LayoutBounds="64,51,232,39"
-                AbsoluteLayout.LayoutFlags="None"
-                Text="{Binding MainLabelText}"
-                Style="{StaticResource LabelStyle-AT0116}" />
-            <Label
-                x:Name="MinTimeLabel"
-                AbsoluteLayout.LayoutBounds="102,249,156,79"
-                AbsoluteLayout.LayoutFlags="None"
-                Text="00:00"
-                Style="{StaticResource LabelStyle-AT011}" />
-        </AbsoluteLayout>
-    </views:CirclePageEx.Content>
-    <w:CirclePage.ToolbarItems>
-        <w:CircleToolbarItem
-            x:Name="recordsMenu"
-            Icon="2019_images_icons/more_option_icon_stt_recording.png"
-            Clicked="OnCircleToolbarItemClicked_DisplayRecordings"
-            Text="{x:Static resx:AppResources.Recordings}" />
-        <w:CircleToolbarItem
-            x:Name="sttOnOfMenu"
-            Icon="2019_images_icons/more_option_icon_stt_on.png"
-            Clicked="OnCircleToolbarItemClicked_OnOffStt"
-            Text="{x:Static resx:AppResources.SpeechToText}" />
-        <w:CircleToolbarItem
-            x:Name="languageList"
-            Icon="2019_images_icons/more_option_icon_language.png"
-            Clicked="OnCircleToolbarItemClicked_SelectLanguage"
-            Text="{x:Static resx:AppResources.Languages}" />
-    </w:CirclePage.ToolbarItems>
-</views:CirclePageEx>
diff --git a/test/Voicememo2020/VoiceMemo/Views/MainPage.xaml.cs b/test/Voicememo2020/VoiceMemo/Views/MainPage.xaml.cs
deleted file mode 100755 (executable)
index 6ca4e90..0000000
+++ /dev/null
@@ -1,123 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using Xamarin.Forms.Xaml;
-using VoiceMemo.ViewModels;
-using VoiceMemo.Resx;
-using Xamarin.Forms;
-using Tizen.Wearable.CircularUI.Forms;
-using VoiceMemo.Effects;
-using VoiceMemo.Utility;
-
-namespace VoiceMemo.Views
-{
-    /// <summary>
-    /// The MainPage of VoiceMemo application
-    /// </summary>
-    public partial class MainPage : CirclePageEx
-    {
-        /// <summary>
-        /// Constructor of StandByPage()
-        /// </summary>
-        public MainPage()
-        {
-            InitializeComponent();
-            // Add tapGesture recognizer
-            var tapGestureRecognizer = new TapGestureRecognizer();
-            tapGestureRecognizer.Tapped += OnImageButtonClicked;
-            VoiceRecorderIconImage.GestureRecognizers.Add(tapGestureRecognizer);
-            // TODO(vincent): blinking when red dot appearing.
-            Color stopIconColor = ColorConverter.OneUIColorConverter(new HSB(0, 98, 88, 100), null);
-            ImageAttributes.SetBlendColor(VoiceRecorderIconImage, stopIconColor); 
-        }
-
-        /// <summary>
-        /// Invoked when recording(red) button is tapped.
-        /// RecordingPage will be shown.
-        /// </summary>
-        /// <param name="sender"> Sender object</param>
-        /// <param name="e">EventArgs</param>
-        async void OnImageButtonClicked(object sender, EventArgs e)
-        {
-            // While STT is in progress, a new recording cannot be started.
-            if (((App)App.Current).mainPageModel.availableToRecord)
-            {
-                // can record
-                await Navigation.PushAsync(PageFactory.GetInstance(Pages.Recording, ((MainPageModel)ViewModel).SttEnabled));
-            }
-            else
-            {
-                // cannot record
-                await DisplayAlert("Recording", "Stt service is in progress. Please wait a moment.", "OK");
-            }
-        }
-
-        /// <summary>
-        /// Standby > More options > Recordings
-        /// A list of Recordings will be shown if there are recordings.
-        /// </summary>
-        /// <param name="sender"> Sender object</param>
-        /// <param name="e">EventArgs</param>
-        async void OnCircleToolbarItemClicked_DisplayRecordings(object sender, EventArgs e)
-        {
-            Console.WriteLine(" MainPage.OnCircleToolbarItemClicked_DisplayRecordings()");
-            await Navigation.PushAsync(PageFactory.GetInstance(Pages.RecordList, ViewModel));
-        }
-
-        /// <summary>
-        /// Standby > More options > Speech to text
-        /// Invoked when "Speech to text" more option is selected to turn Speech to text feature on/off
-        /// </summary>
-        /// <param name="sender">sender object </param>
-        /// <param name="e">EventArgs</param>
-        void OnCircleToolbarItemClicked_OnOffStt(object sender, EventArgs e)
-        {
-            Console.WriteLine(" MainPage.OnCircleToolbarItemClicked_OnOffStt()");
-        }
-
-        /// <summary>
-        /// Called when Language is selected in More option
-        /// Standby > More options > Language
-        /// </summary>
-        /// <param name="sender">sender object </param>
-        /// <param name="e">EventArgs</param>
-        async void OnCircleToolbarItemClicked_SelectLanguage(object sender, EventArgs e)
-        {
-            await Navigation.PushAsync(PageFactory.GetInstance(Pages.Languages, ViewModel));
-        }
-
-
-        /// <summary>
-        /// Invoked immediately prior to the Page becoming visible.
-        /// </summary>
-        protected override void OnAppearing()
-        {
-        }
-
-        /// <summary>
-        /// Invoked when this page disappears.
-        /// </summary>
-        protected override void OnDisappearing()
-        {
-        }
-
-        public void Dispose()
-        {
-            ((MainPageModel)BindingContext).Dispose();
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/Views/PageFactory.cs b/test/Voicememo2020/VoiceMemo/Views/PageFactory.cs
deleted file mode 100755 (executable)
index d232ce3..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using VoiceMemo.Models;
-using VoiceMemo.ViewModels;
-using Xamarin.Forms;
-
-namespace VoiceMemo.Views
-{
-    public enum Pages
-    {
-        StandBy,
-        StandByCS,
-        Recording,
-        TryCancel,
-        Details,
-        RecordList,
-        PlayBack,
-        Languages,
-    }
-
-    public static class PageFactory
-    {
-        static MainPage main;
-        //static MainPageCS main2;
-        static RecordingPage record;
-        static CancelPage cancel;
-        static RecordListPage list;
-        static DetailsPage detail;
-        static PlayBackPage playback;
-        static LanguageSelectionPage lang;
-
-        public static Page GetInstance(Pages page, Object o = null)
-        {
-            switch (page)
-            {
-                //case Pages.StandByCS:
-                //    return PageFactory.main2 ?? (main2 = new MainPageCS());
-                case Pages.StandBy:
-                    return PageFactory.main ?? (main = new MainPage());
-                case Pages.Recording:
-                    var sttOn = System.Convert.ToBoolean(o);
-                    record?.Init(/*sttOn*/);
-                    return PageFactory.record ?? (record = new RecordingPage(new RecordingPageModel(sttOn)));
-                case Pages.TryCancel:
-                    //VoiceRecordingPageModel vm = o as VoiceRecordingPageModel;
-                    return PageFactory.cancel ?? (cancel = new CancelPage(o as RecordingPageModel));
-                case Pages.Details:
-                    if (detail != null)
-                    {
-                        //Console.WriteLine("<PageFactory> DetailsPageModel : " + ((DetailsPageModel)detail.BindingContext));
-                        ((DetailsPageModel)detail.BindingContext).Init(o as Record);
-                    }
-                    //Console.WriteLine("<PageFactory> Return detail : " + detail);
-                    return PageFactory.detail ?? (detail = new DetailsPage(new DetailsPageModel(o as Record)));
-                case Pages.RecordList:
-                    return PageFactory.list ?? (list = new RecordListPage((MainPageModel)o));
-
-                case Pages.PlayBack:
-                    if (playback != null)
-                    {
-                        ((PlayBackPageModel)playback.BindingContext).Init(o as Record);
-                    }
-
-                    return PageFactory.playback ?? (playback = new PlayBackPage(new PlayBackPageModel(o as Record)));
-                case Pages.Languages:
-                    Console.WriteLine("<PageFactory>                ++++++++++++   Languages");
-                    lang?.Init();
-                    return PageFactory.lang ?? (lang = new LanguageSelectionPage((MainPageModel)o));
-                default:
-                    return null;
-            }
-        }
-
-        public static void DestoryPage()
-        {
-            //cancel?.Dispose();
-            ////list?.Dispose();
-            ////detail?.Dispose();
-            ////lang?.Dispose();
-            playback?.Dispose();
-            record?.Dispose();
-            //main2?.Dispose();
-            main?.Dispose();
-        }
-    }
-}
-
diff --git a/test/Voicememo2020/VoiceMemo/Views/PlayBackPage.xaml b/test/Voicememo2020/VoiceMemo/Views/PlayBackPage.xaml
deleted file mode 100755 (executable)
index 2177143..0000000
+++ /dev/null
@@ -1,179 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<views:CirclePageEx
-    x:Class="VoiceMemo.Views.PlayBackPage"
-    xmlns="http://xamarin.com/schemas/2014/forms"
-    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-    xmlns:converters="clr-namespace:VoiceMemo.Converters;"
-    xmlns:views="clr-namespace:VoiceMemo.Views;"
-    xmlns:vm="clr-namespace:VoiceMemo.ViewModels;"
-    xmlns:w="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF" >
-    <!--TODO: it is possible to cast CircleSlider to RotaryFocusable object. RotaryFocusTargetName="PlayProgress">-->
-    <w:CirclePage.CircleSurfaceItems>
-        <w:CircleProgressBarSurfaceItem x:Name="PlayProgress" Value="{Binding PlayingProcess}" />
-        <!--// BG Dim Code :  AO0241 - #FF404040
-        // BG Normal Code : AO0231 - #FF004373
-        // Progress BG : Normal : AO0232  - #FF467ea6
-        // Progress BG : DIM : AO0242 -  #994673A6
-        // Progress BG : MAX VOLUME : AO025 - #ffe84c0e-->
-
-        <!--<w:CircleSliderSurfaceItem
-            x:Name="VolumeProgress"
-            BackgroundColor="DarkBlue"
-            BarColor="Cyan"
-            IsVisible="{Binding VolumeViewVisible}"
-            Value="{Binding VolumeLevelProcess}" />-->
-        <!--<w:CircleProgressBarSurfaceItem
-            x:Name="VolumeProgress"
-
-            BackgroundColor="DarkBlue"
-            BarColor="Cyan"
-            IsVisible="{Binding VolumeViewVisible}" />-->
-        <!--Value="{Binding VolumeLevelProcess}" />-->
-    </w:CirclePage.CircleSurfaceItems>
-    <ContentPage.Resources>
-        <ResourceDictionary>
-            <Color x:Key="AT011">#FFFAFAFA</Color>
-            <Style x:Key="LabelStyle-AT011" TargetType="Label" BasedOn="{StaticResource LabelStyle-Base}">
-                <Setter Property="FontSize" Value="20" />
-                <Setter Property="TextColor" Value="{StaticResource AT011}" />
-            </Style>
-            <Color x:Key="AT0211">#FFFAFAFA</Color>
-            <Style x:Key="LabelStyle-AT0211" TargetType="Label">
-                <Setter Property="FontAttributes" Value="Bold" />
-                <!--<Setter Property="HorizontalOptions" Value="Center" />
-                <Setter Property="VerticalOptions" Value="Center" />-->
-                <Setter Property="HorizontalTextAlignment" Value="Center" />
-                <Setter Property="VerticalTextAlignment" Value="Center" />
-                <Setter Property="FontSize" Value="13" />
-                <Setter Property="TextColor" Value="{StaticResource AT0211}" />
-            </Style>
-            <converters:DurationToRemainingTimeConverter x:Key="TimeConverter" />
-        </ResourceDictionary>
-    </ContentPage.Resources>
-    <ContentPage.Content>
-        <AbsoluteLayout x:Name="PlaybackLayout">
-            <Image x:Name="VolumeImage"
-                   AbsoluteLayout.LayoutBounds="145,32,70,70"
-                   AbsoluteLayout.LayoutFlags="None"
-                   Source="{Binding MuteOnOffSmallImage}">
-                <Image.GestureRecognizers>
-                    <TapGestureRecognizer Command="{Binding VolumeViewCommand}" />
-                </Image.GestureRecognizers>
-            </Image>
-            <Image x:Name="PlaybackImage"
-                   AbsoluteLayout.LayoutBounds="117,116,126,126"
-                   AbsoluteLayout.LayoutFlags="None"
-                   Source="{Binding PlayControlImage}">
-                <Image.GestureRecognizers>
-                    <TapGestureRecognizer Command="{Binding PlayControlCommand}" />
-                </Image.GestureRecognizers>
-            </Image>
-            <Label x:Name="RemainingTimeLabel"
-                   AbsoluteLayout.LayoutBounds="102,242,156,85"
-                   AbsoluteLayout.LayoutFlags="None"
-                   Text="{Binding RemainingTime, Converter={StaticResource TimeConverter}, ConverterParameter={x:Static converters:RemainingTimeType.TimeText}}}"
-                   Style="{StaticResource LabelStyle-AT011}" />
-            <!--Volume control View-->
-            <ContentView x:Name="VolumeView" IsVisible="{Binding VolumeViewVisible}">
-                <ContentView.GestureRecognizers>
-                    <TapGestureRecognizer Command="{Binding DelayTimeCommand}" />
-                </ContentView.GestureRecognizers>
-                <AbsoluteLayout>
-                    <AbsoluteLayout.GestureRecognizers>
-                        <TapGestureRecognizer Command="{Binding DelayTimeCommand}" />
-                    </AbsoluteLayout.GestureRecognizers>
-                    <BoxView AbsoluteLayout.LayoutBounds="0, 0, 1, 1"
-                             AbsoluteLayout.LayoutFlags="All"
-                             BackgroundColor="#80000000" />
-                    <Grid
-                        AbsoluteLayout.LayoutBounds="83,39,194,64"
-                        AbsoluteLayout.LayoutFlags="None"
-                        VerticalOptions="FillAndExpand">
-                        <Grid.RowDefinitions>
-                            <RowDefinition Height="Auto" />
-                        </Grid.RowDefinitions>
-                        <Grid.ColumnDefinitions>
-                            <ColumnDefinition Width="*" />
-                            <ColumnDefinition Width="*" />
-                            <ColumnDefinition Width="*" />
-                        </Grid.ColumnDefinitions>
-                        <Button
-                            x:Name="MinusButton"
-                            Grid.Row="0"
-                            Grid.Column="0"
-                            BackgroundColor="Transparent"
-                            Command="{Binding VolumeControlCommand}"
-                            CommandParameter="{x:Static vm:VolumeControlType.Minus}"
-                            Image="icons/b_slider_icon_minus.png">
-                            <Button.GestureRecognizers>
-                                <TapGestureRecognizer Command="{Binding DelayTimeCommand}" />
-                            </Button.GestureRecognizers>
-                            <Button.Triggers>
-                                <Trigger TargetType="Button" Property="IsEnabled" Value="False">
-                                    <Setter Property="BackgroundColor" Value="Black" />
-                                </Trigger>
-                                <Trigger TargetType="Button" Property="IsEnabled" Value="True">
-                                    <Setter Property="BackgroundColor" Value="Transparent" />
-                                </Trigger>
-                                <DataTrigger
-                                    Binding="{Binding CurrentVolume}"
-                                    TargetType="Button"
-                                    Value="0">
-                                    <Setter Property="IsEnabled" Value="False" />
-                                </DataTrigger>
-                            </Button.Triggers>
-                        </Button>
-
-                        <!--This Label shows the current volume level.-->
-                        <Label x:Name="VolumeLevelLabel"
-                            Grid.Row="0"
-                            Grid.Column="1"
-                            Style="{StaticResource LabelStyle-AT0211}"
-                            Text="{Binding CurrentVolume}" />
-
-                        <!--  By clicking/tapping this button, volume level will increase  -->
-                        <Button
-                            Grid.Row="0"
-                            Grid.Column="2"
-                            BackgroundColor="Transparent"
-                            Command="{Binding VolumeControlCommand}"
-                            CommandParameter="{x:Static vm:VolumeControlType.Plus}"
-                            Image="icons/b_slider_icon_plus.png">
-                            <Button.GestureRecognizers>
-                                <TapGestureRecognizer Command="{Binding DelayTimeCommand}" />
-                            </Button.GestureRecognizers>
-                            <Button.Triggers>
-                                <Trigger TargetType="Button" Property="IsEnabled" Value="False">
-                                    <Setter Property="BackgroundColor" Value="Black" />
-                                </Trigger>
-                                <Trigger TargetType="Button" Property="IsEnabled" Value="True">
-                                    <Setter Property="BackgroundColor" Value="Transparent" />
-                                </Trigger>
-                                <DataTrigger
-                                    Binding="{Binding CurrentVolume}"
-                                    TargetType="Button"
-                                    Value="15">
-                                    <Setter Property="IsEnabled" Value="False" />
-                                </DataTrigger>
-                            </Button.Triggers>
-                        </Button>
-                    </Grid>
-                    <!--Volume Image-->
-                    <Image AbsoluteLayout.LayoutBounds="105,105,150,150"
-                           AbsoluteLayout.LayoutFlags="None"
-                           Source="voice_mamo_slider_btn_bg.png" />
-                    <Image AbsoluteLayout.LayoutBounds="105,105,150,150"
-                           AbsoluteLayout.LayoutFlags="None"
-                           Source="{Binding MuteOnOffImage}" />
-                    <BoxView AbsoluteLayout.LayoutBounds="105,105,150,150"
-                             AbsoluteLayout.LayoutFlags="None">
-                        <BoxView.GestureRecognizers>
-                            <TapGestureRecognizer Command="{Binding DelayTimeCommand}" />
-                            <TapGestureRecognizer Command="{Binding MuteControlCommand}" />
-                        </BoxView.GestureRecognizers>
-                    </BoxView>
-                </AbsoluteLayout>
-            </ContentView>
-        </AbsoluteLayout>
-    </ContentPage.Content>
-</views:CirclePageEx>
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/Views/PlayBackPage.xaml.cs b/test/Voicememo2020/VoiceMemo/Views/PlayBackPage.xaml.cs
deleted file mode 100755 (executable)
index e271877..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using VoiceMemo.ViewModels;
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace VoiceMemo.Views
-{
-    /// <summary>
-    /// PlayBackPage class
-    /// In this page, recorded content will play.
-    /// </summary>
-    public partial class PlayBackPage : CirclePageEx
-    {
-        PlayBackPageModel viewModel;
-        bool hidePageRequested;
-        public PlayBackPage(PlayBackPageModel _viewModel)
-        {
-            BindingContext = this.viewModel = _viewModel;
-            InitializeComponent();
-            RegisterSomeNotifications();
-        }
-
-        void RegisterSomeNotifications()
-        {
-            // You can get notified whenever playing audio is done.
-            MessagingCenter.Subscribe<PlayBackPageModel, bool>(this, MessageKeys.AudioPlayDone, async (obj, finished) =>
-            {
-                // If playing audio is done, this page will be hidden. (MainPage will be shown.)
-                if (finished)
-                {
-                    await Navigation.PopAsync();
-                }
-            });
-        }
-                
-        protected override bool OnBackButtonPressed()
-        {
-            if (hidePageRequested)
-            {
-                return true;
-            }
-            else
-            {
-                hidePageRequested = true;
-            }
-
-            if (VolumeView.IsVisible)
-            {
-                Console.WriteLine("[PlaybackPage.OnBackButtonPressed] VolumeView is shown.");
-                viewModel.VolumeViewVisibilityCommand?.Execute(false);
-                return false;
-            }
-
-            Console.WriteLine("[PlaybackPage.OnBackButtonPressed]  PlayBackPage will be hidden.");
-            viewModel.Stop();
-            return base.OnBackButtonPressed();
-        }
-
-        /// <summary>
-        /// Invoked immediately prior to the Page becoming visible.
-        /// </summary>
-        protected override void OnAppearing()
-        {
-            Console.WriteLine("[PlaybackPage]  OnAppearing() ...");
-            hidePageRequested = false;
-        }
-
-        /// <summary>
-        /// Invoked when this page disappears.
-        /// </summary>
-        protected override void OnDisappearing()
-        {
-            Console.WriteLine("[PlaybackPage]  OnDisappearing");
-            viewModel.Stop();
-        }
-
-        public void Dispose()
-        {
-            Console.WriteLine("[PlayBackPageModel]  Dispose");
-            MessagingCenter.Unsubscribe<PlayBackPageModel, bool>(this, MessageKeys.AudioPlayDone);
-            ((PlayBackPageModel)BindingContext).Dispose();
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/Views/ProgressbarPopup.cs b/test/Voicememo2020/VoiceMemo/Views/ProgressbarPopup.cs
deleted file mode 100755 (executable)
index 188657c..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using VoiceMemo.Tizen.Wearable.Renderers;
-using Xamarin.Forms;
-
-namespace VoiceMemo.Views
-{
-    public class ProgressbarPopup : BindableObject
-    {
-        public static readonly BindableProperty TextProperty = BindableProperty.Create(nameof(Text), typeof(string), typeof(ProgressbarPopup), null);
-
-        public static readonly BindableProperty DurationProperty = BindableProperty.Create(nameof(Duration), typeof(double), typeof(ProgressbarPopup), 1.5);
-
-        public static readonly BindableProperty ProgressbarTextProperty = BindableProperty.Create(nameof(ProgressbarText), typeof(string), typeof(ProgressbarPopup), null);
-
-        public static readonly BindableProperty ProgressbarDurationProperty = BindableProperty.Create(nameof(ProgressbarDuration), typeof(double), typeof(ProgressbarPopup), 0.8);
-
-        IProgressbarPopup _popUp = null;
-        public event EventHandler BackButtonPressed;
-        public event EventHandler TimedOut;
-
-        public ProgressbarPopup()
-        {
-            _popUp = new ProgressbarPopupRenderer();
-            if (_popUp == null)
-            {
-                throw new Exception("Object reference not set to an instance of a Popup.");
-            }
-
-            _popUp.BackButtonPressed += (s, e) =>
-            {
-                BackButtonPressed?.Invoke(this, EventArgs.Empty);
-            };
-
-            _popUp.TimedOut += (s, e) =>
-            {
-                TimedOut?.Invoke(this, EventArgs.Empty);
-            };
-
-            SetBinding(TextProperty, new Binding(nameof(Text), mode: BindingMode.OneWayToSource, source: _popUp));
-            SetBinding(DurationProperty, new Binding(nameof(Duration), mode: BindingMode.OneWayToSource, source: _popUp));
-            SetBinding(ProgressbarTextProperty, new Binding(nameof(ProgressbarText), mode: BindingMode.OneWayToSource, source: _popUp));
-            SetBinding(ProgressbarDurationProperty, new Binding(nameof(ProgressbarDuration), mode: BindingMode.OneWayToSource, source: _popUp));
-        }
-
-        /// <summary>
-        /// Gets or sets text of the Popup.
-        /// </summary>
-        public string Text
-        {
-            get { return (string)GetValue(TextProperty); }
-            set { SetValue(TextProperty, value); }
-        }
-
-        /// <summary>
-        /// Gets or sets duration of the Popup.
-        /// </summary>
-        public double Duration
-        {
-            get { return (double)GetValue(DurationProperty); }
-            set { SetValue(DurationProperty, value); }
-        }
-
-        /// <summary>
-        /// Gets or sets text of the Popup.
-        /// </summary>
-        public string ProgressbarText
-        {
-            get { return (string)GetValue(ProgressbarTextProperty); }
-            set { SetValue(ProgressbarTextProperty, value); }
-        }
-
-        /// <summary>
-        /// Duration for Progressbar
-        /// How long to display the text message with progressbar
-        /// </summary>
-        double ProgressbarDuration
-        {
-            get { return (double)GetValue(ProgressbarDurationProperty); }
-            set { SetValue(ProgressbarDurationProperty, value); }
-        }
-
-        /// <summary>
-        /// Show Toast Popup
-        /// </summary>
-        public void Show()
-        {
-            _popUp.Show();
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Views/RecordListPage.xaml b/test/Voicememo2020/VoiceMemo/Views/RecordListPage.xaml
deleted file mode 100755 (executable)
index a18b56d..0000000
+++ /dev/null
@@ -1,210 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<views:CirclePageEx
-    x:Class="VoiceMemo.Views.RecordListPage"
-    xmlns="http://xamarin.com/schemas/2014/forms"
-    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-    xmlns:converters="clr-namespace:VoiceMemo.Converters;"
-    xmlns:views="clr-namespace:VoiceMemo.Views;"
-    xmlns:effect="clr-namespace:VoiceMemo.Effects;"
-    xmlns:resx="clr-namespace:VoiceMemo.Resx;"
-    xmlns:w="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"
-    x:Name="myRecordListPage"
-    RotaryFocusObject="{x:Reference DataListView}">
-    <views:CirclePageEx.Resources>
-        <ResourceDictionary>
-            <!--  First line  size 13 -->
-            <Color x:Key="T0211">#FFFAFAFA</Color>
-            <!--  Second line size 8 -->
-            <Color x:Key="T022">#FFB3B3B3</Color>
-
-            <Color x:Key="AT011">#FFFAFAFA</Color>
-            <Style x:Key="LabelStyle-AT011" TargetType="Label" BasedOn="{StaticResource LabelStyle-Base}">
-                <Setter Property="FontSize" Value="20" />
-                <Setter Property="TextColor" Value="{StaticResource AT011}" />
-            </Style>
-            <Color x:Key="AT0116">#FF4DCFFF</Color>
-            <Style x:Key="LabelStyle-AT0116" TargetType="Label" BasedOn="{StaticResource LabelStyle-Base}">
-                <Setter Property="FontSize" Value="10" />
-                <Setter Property="TextColor" Value="{StaticResource AT0116}" />
-            </Style>
-            <converters:RecordsCountToViewVisibilityConverter x:Key="ViewVisibilityConverter" />
-        </ResourceDictionary>
-    </views:CirclePageEx.Resources>
-
-    <views:CirclePageEx.Content>
-        <AbsoluteLayout x:Name="RecordListView" BackgroundColor="Black">
-            <Image
-                x:Name="NoImage"
-                AbsoluteLayout.LayoutBounds="0,0,1,1"
-                AbsoluteLayout.LayoutFlags="All"
-                IsVisible="{Binding Records.Count, Converter={StaticResource ViewVisibilityConverter}, ConverterParameter={x:Static converters:ViewType.NoRecordView}}"
-                Source="tw_no_item_bg.png"/>
-            <Label
-                x:Name="recordingsLabel"
-                AbsoluteLayout.LayoutBounds="64,51,232,39"
-                AbsoluteLayout.LayoutFlags="None"
-                IsVisible="{Binding Records.Count, Converter={StaticResource ViewVisibilityConverter}, ConverterParameter={x:Static converters:ViewType.NoRecordView}}"
-                Text="{x:Static resx:AppResources.Recordings}"
-                HorizontalTextAlignment="Center" VerticalTextAlignment="Center"
-                FontSize="10"
-                TextColor="#FF4DCFFF" />
-            <Label
-                x:Name="noRecordingsLabel"
-                AbsoluteLayout.LayoutBounds=".5,.8,360,79"
-                AbsoluteLayout.LayoutFlags="PositionProportional"
-                IsVisible="{Binding Records.Count, Converter={StaticResource ViewVisibilityConverter}, ConverterParameter={x:Static converters:ViewType.NoRecordView}}"
-                HorizontalTextAlignment="Center" VerticalTextAlignment="Center"
-                TextColor="#FFFAFAFA"
-                FontSize="10"
-                Text="{x:Static resx:AppResources.NoRecordings}" />
-            <Image
-                AbsoluteLayout.LayoutBounds=".5, .5, 98, 98"
-                AbsoluteLayout.LayoutFlags="PositionProportional"
-                IsVisible="{Binding Records.Count, Converter={StaticResource ViewVisibilityConverter}, ConverterParameter={x:Static converters:ViewType.NoRecordView}}"
-                Source="b_icon_voicememo.png"/>
-            <w:CircleListView
-                x:Name="DataListView"
-                AbsoluteLayout.LayoutBounds="0, 0, 1, 1"
-                AbsoluteLayout.LayoutFlags="All"
-                IsVisible="{Binding Records.Count, Converter={StaticResource ViewVisibilityConverter}, ConverterParameter={x:Static converters:ViewType.RecordListView}}"
-                Header="Recordings"
-                ItemSelected="OnItemSelected"
-                ItemTapped="OnItemTapped"
-                effect:ItemLongPressEffect.Command="{Binding LongClickCommand}"
-                ItemsSource="{Binding Records}">
-                <w:CircleListView.Effects>
-                    <effect:ItemLongPressEffect />
-                </w:CircleListView.Effects>
-                <ListView.Footer>
-                    <StackLayout HeightRequest="115">
-                        <BoxView />
-                    </StackLayout>
-                </ListView.Footer>
-                <ListView.Header>
-                    <AbsoluteLayout HeightRequest="115" BackgroundColor="Black">
-                        <Label
-                            x:Name="headerLabel"
-                            AbsoluteLayout.LayoutBounds="0.5, 0.5, 1, 0.5"
-                            AbsoluteLayout.LayoutFlags="All"
-                            Text="{x:Static resx:AppResources.Recordings}"
-                            Style="{StaticResource LabelStyle-AT0116}"
-                            TextColor="#FF00FFF0"
-                            FontSize="14" />
-                    </AbsoluteLayout>
-                </ListView.Header>
-                <ListView.ItemTemplate>
-                    <DataTemplate>
-                        <ViewCell>
-                            <RelativeLayout HeightRequest="130" WidthRequest="360">
-                                <RelativeLayout.Resources>
-                                    <ResourceDictionary>
-                                        <converters:DurationToRemainingTimeConverter x:Key="TimeConverter" />
-                                        <converters:SttToPropertyConverter x:Key="SttConverter" />
-                                        <Style TargetType="Label">
-                                            <Setter Property="HorizontalTextAlignment" Value="Center" />
-                                            <Setter Property="VerticalTextAlignment" Value="Center" />
-                                            <Setter Property="WidthRequest" Value="200" />
-                                            <Setter Property="TextColor" Value="White" />
-                                            <!--<Setter Property="BackgroundColor" Value="Pink" />-->
-                                            <Setter Property="RelativeLayout.XConstraint"
-                                                Value="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=0, Constant=30}" />
-                                        </Style>
-                                    </ResourceDictionary>
-                                </RelativeLayout.Resources>
-                                <Label
-                                    Text="{Binding Title}"
-                                    HeightRequest="47"
-                                    WidthRequest="230"
-                                    TextColor="{StaticResource T0211}"
-                                    FontSize="13"
-                                    RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToParent,
-                                                                                  Property=Height,
-                                                                                  Factor=0,
-                                                                                  Constant=9}" />
-                                <Label
-                                    Text="{Binding Date}"
-                                    HeightRequest="32"
-                                    WidthRequest="230"
-                                    TextColor="{StaticResource T022}"
-                                    FontSize="8"
-                                    RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToParent,
-                                                                                  Property=Height,
-                                                                                  Factor=0,
-                                                                                  Constant=56}" />
-                                <Label
-                                    Text="{Binding Duration, Converter={StaticResource TimeConverter}, ConverterParameter={x:Static converters:RemainingTimeType.TimeText}}}"
-                                    HeightRequest="32"
-                                    WidthRequest="230"
-                                    TextColor="{StaticResource T022}"
-                                    FontSize="8"
-                                    RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToParent,
-                                                                                    Property=Height,
-                                                                                    Factor=0,
-                                                                                    Constant=90}" />
-                                <Image Source="{Binding SttEnabled, Converter={StaticResource SttConverter}, ConverterParameter={x:Static converters:SttPropertyType.RecordImageSource}}" 
-                                    WidthRequest="76"
-                                    HeightRequest="76"
-                                    RelativeLayout.XConstraint="{ConstraintExpression Type=RelativeToParent,
-                                                                                    Property=Width,
-                                                                                    Factor=0,
-                                                                                    Constant=268}"
-                                    RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToParent,
-                                                                                    Property=Height,
-                                                                                    Factor=0,
-                                                                                    Constant=27}" />
-                                <w:Check DisplayStyle="Default"
-                                     IsToggled="{Binding Checked, Mode=TwoWay}"
-                                     IsEnabled="{Binding BindingContext.IsCheckable, Source={x:Reference myRecordListPage}}"
-                                     WidthRequest="76"
-                                     HeightRequest="76"
-                                     RelativeLayout.XConstraint="{ConstraintExpression Type=RelativeToParent,
-                                                                                  Property=Width,
-                                                                                  Factor=0,
-                                                                                  Constant=150}"
-                                     RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToParent,
-                                                                                  Property=Height,
-                                                                                  Factor=0,
-                                                                                  Constant=30}"
-                                     effect:TizenStyleEffect.Style="genlist/select_mode"
-                                     effect:TizenEventPropagationEffect.EnablePropagation="True">
-                                    <w:Check.Effects>
-                                        <effect:TizenStyleEffect/>
-                                        <effect:TizenEventPropagationEffect/>
-                                    </w:Check.Effects>
-                                </w:Check>
-                            </RelativeLayout>
-                        </ViewCell>
-                    </DataTemplate>
-                </ListView.ItemTemplate>
-            </w:CircleListView>
-            <Button x:Name="CheckedCounter"
-                    IsVisible="{Binding IsCheckable}"
-                    Text="{Binding CheckedNamesCount}"
-                    AbsoluteLayout.LayoutBounds="0.5, 10, 100, 80"
-                    AbsoluteLayout.LayoutFlags="XProportional"
-                    Command="{Binding SelectModeActionButtonPressedCommand}">
-                <Button.Behaviors>
-                    <w:ContextPopupEffectBehavior x:Name="CheckedCounterBehavior"
-                        PositionOption="BottomOfView" />
-                </Button.Behaviors>
-            </Button>
-        </AbsoluteLayout>
-    </views:CirclePageEx.Content>
-    <w:CirclePage.ActionButton>
-        <w:ActionButtonItem
-            x:Name="deleteActionButton"
-            IsVisible="{Binding IsCheckable}"
-            IsEnable="{Binding CheckedNamesCount, Converter={StaticResource ViewVisibilityConverter}, ConverterParameter={x:Static converters:ViewType.RecordCheckView}}"
-            Clicked="DeleteActionButtonClicked"
-            Command="{Binding DeleteRecordsCommand}"
-            Text="{x:Static resx:AppResources.DELETE}" />
-    </w:CirclePage.ActionButton>
-    <w:CirclePage.ToolbarItems>
-        <views:BindableToolbarItem
-            x:Name="toolbarItem"
-            IsVisible="{Binding Records.Count, Converter={StaticResource ViewVisibilityConverter}, ConverterParameter={x:Static converters:ViewType.RecordListView}}"
-            Command="{Binding ChangeToDeleteModeCommand}"
-            Icon="more_option_icon_delete.png"
-            Text="{x:Static resx:AppResources.DELETE}" />
-    </w:CirclePage.ToolbarItems>
-</views:CirclePageEx>
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/Views/RecordListPage.xaml.cs b/test/Voicememo2020/VoiceMemo/Views/RecordListPage.xaml.cs
deleted file mode 100755 (executable)
index 16b97f8..0000000
+++ /dev/null
@@ -1,202 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using VoiceMemo.Effects;
-using VoiceMemo.Models;
-using VoiceMemo.Resx;
-using VoiceMemo.ViewModels;
-using Xamarin.Forms;
-using Tizen.Wearable.CircularUI.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace VoiceMemo.Views
-{
-    /// <summary>
-    /// RecordListPage class
-    /// It shows the list of recordings
-    /// </summary>
-    public partial class RecordListPage : CirclePageEx
-    {
-        MainPageModel ViewModel;
-        public RecordListPage(MainPageModel viewModel)
-        {
-            BindingContext = ViewModel = viewModel;
-            // Subscribe notification of locale changes to update text based on locale
-            MessagingCenter.Subscribe<App>(this, MessageKeys.UpdateByLanguageChange, (obj) =>
-            {
-                UpdateUI();
-            });
-            InitializeComponent();
-            ImageAttributes.SetBlendColor(NoImage, Color.FromRgba(94, 94, 94, 77));
-            // Binding for ContextPopupEffectBehavior's properties
-            // BindingContext is not inherited by Behavior and Effect.
-            // Source of Binding should be specified explicitly.
-            CheckedCounterBehavior.SetBinding(ContextPopupEffectBehavior.AcceptTextProperty, new Binding("SelectOptionMessage1", BindingMode.OneWay, source: BindingContext));
-            CheckedCounterBehavior.SetBinding(ContextPopupEffectBehavior.AcceptCommandProperty, new Binding("SelectCommand1", BindingMode.OneWay, source: BindingContext));
-            CheckedCounterBehavior.SetBinding(ContextPopupEffectBehavior.CancelTextProperty, new Binding("SelectOptionMessage2", BindingMode.OneWay, source: BindingContext));
-            CheckedCounterBehavior.SetBinding(ContextPopupEffectBehavior.CancelCommandProperty, new Binding("SelectCommand2", BindingMode.OneWay, source: BindingContext));
-            CheckedCounterBehavior.SetBinding(ContextPopupEffectBehavior.VisibilityProperty, new Binding("PopupVisibility", BindingMode.TwoWay, source: BindingContext));
-        }
-
-        void UpdateUI()
-        {
-            // Update text that has been translated into the current language.
-            noRecordingsLabel.Text = AppResources.NoRecordings;
-            recordingsLabel.Text = AppResources.Recordings;
-            headerLabel.Text = AppResources.Recordings;
-            deleteActionButton.Text = AppResources.DELETE;
-            toolbarItem.Text = AppResources.DELETE;
-        }
-
-        /// <summary>
-        /// Invoked immediately prior to the Page becoming visible.
-        /// </summary>
-        protected override void OnAppearing()
-        {
-            Console.WriteLine("[RecordListPage]  OnAppearing() ...");
-            foreach (var record in ViewModel.Records)
-            {
-                record.Checked = false;
-            }
-        }
-
-        public void Rotate(RotaryEventArgs args)
-        {
-            Console.WriteLine("[RecordListPage]  Rotate() IsClockwise ? " + args.IsClockwise);
-            //DataListView.ScrollTo();
-        }
-
-        /// <summary>
-        /// Invoked when this page disappears.
-        /// </summary>
-        protected override void OnDisappearing()
-        {
-            Console.WriteLine("[RecordListPage]  OnDisappearing");
-            ViewModel.IsCheckable = false;
-        }
-
-        /*async*/
-        void OnItemSelected(object sender, SelectedItemChangedEventArgs args)
-        {
-            var item = args.SelectedItem as Record;
-            if (item == null)
-            {
-                return;
-            }
-            Console.WriteLine(" RecordListPage.OnItemSelected :  " + args.SelectedItem/* + " , index: " + args.SelectedItemIndex*/);
-            //await Navigation.PushAsync(new ItemDetailPage(new ItemDetailViewModel(item)));
-
-            // Manually deselect item
-            DataListView.SelectedItem = null;
-        }
-
-        async void OnItemTapped(object sender, ItemTappedEventArgs args)
-        {
-            if (((MainPageModel)BindingContext).IsCheckable)
-            {
-                Console.WriteLine(" RecordListPage.OnItemTapped :  Checkable mode so ignore tapped event");
-                return;
-            }
-
-            Console.WriteLine(" RecordListPage.OnItemTapped :  " + args.Item);
-            await Navigation.PushAsync(PageFactory.GetInstance(Pages.Details, args.Item));
-        }
-
-        void OnCircleToolbarItemClicked_DeleteRecord(object sender, EventArgs args)
-        {
-            Console.WriteLine("[RecordListPage.OnCircleToolbarItemClicked_DeleteRecord] sender : " + sender);
-
-            //MessagingCenter.Send<Page, Record>(this, MessageKeys.DeleteVoiceMemo, ((DetailsPageModel)viewModel).Record);
-            //await Navigation.PopToRootAsync();
-
-            //MessagingCenter.Send<Page, Record>(this, MessageKeys.DeleteVoiceMemo, ((DetailsPageModel)viewModel).Record);
-            //await Navigation.PushAsync(PageFactory.GetInstance(Pages.PlayBack, viewModel.Record/*new PlayBackPageModel(viewModel.Record)*/));
-        }
-/*
-        async void DeleteActionButtonClicked(object sender, EventArgs args)
-        {
-            Console.WriteLine("[RecordListPage.DeleteActionButtonClicked] sender : " + sender + " CheckedNamesCount : " + ViewModel.CheckedNamesCount);
-            //if (ViewModel.CheckedNamesCount == 1)
-            //{
-            //    await DisplayAlert("Delete", "Deleted..", "OK");
-            //    //GraphicPopUp popup = new GraphicPopUp
-            //    //{
-            //    //    Text = AppResources.Deleted,
-            //    //};
-            //    //popup.TimedOut += Popup_TimedOut;
-            //    //popup.Show();
-            //}
-            //else
-            //{
-            //    ProgressbarPopup popup = new ProgressbarPopup
-            //    {
-            //        Text = AppResources.Deleted,
-            //        ProgressbarText = AppResources.Deleting,
-            //    };
-            //    popup.TimedOut += Popup_TimedOut;
-            //    popup.Show();
-            //}
-            await DisplayAlert("Delete", "Deleted..", "OK");
-        }
-*/
-
-        void DeleteActionButtonClicked(object sender, EventArgs args)
-        {
-            Console.WriteLine("[RecordListPage.DeleteActionButtonClicked] sender : " + sender + " CheckedNamesCount : " + ViewModel.CheckedNamesCount);
-            if (ViewModel.CheckedNamesCount == 1)
-            {
-                GraphicPopUp popup = new GraphicPopUp
-                {
-                    Text = AppResources.Deleted,
-                };
-                popup.TimedOut += Popup_TimedOut;
-                popup.Show();
-            }
-            else
-            {
-                ProgressbarPopup popup = new ProgressbarPopup
-                {
-                    Text = AppResources.Deleted,
-                    ProgressbarText = AppResources.Deleting,
-                };
-                popup.TimedOut += Popup_TimedOut;
-                popup.Show();
-            }
-        }
-
-        private void Popup_TimedOut(object sender, EventArgs e)
-        {
-            Console.WriteLine("[RecordListPage.Popup_TimedOut] sender : " + sender);
-            //await Navigation.PopToRootAsync();
-        }
-
-        protected override bool OnBackButtonPressed()
-        {
-            if (ViewModel.IsCheckable)
-            {
-                Console.WriteLine("[RecordListPage.OnBackButtonPressed] IsCheckable = true");
-                ViewModel.IsCheckable = false;
-                return true;
-            }
-            else
-            {
-                Console.WriteLine("[RecordListPage.OnBackButtonPressed] IsCheckable = false");
-                return false;
-            }
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/Views/RecordingPage.xaml b/test/Voicememo2020/VoiceMemo/Views/RecordingPage.xaml
deleted file mode 100755 (executable)
index 6e8b874..0000000
+++ /dev/null
@@ -1,153 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<views:CirclePageEx
-    x:Class="VoiceMemo.Views.RecordingPage"
-    xmlns="http://xamarin.com/schemas/2014/forms"
-    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-    xmlns:views="clr-namespace:VoiceMemo.Views;"
-    xmlns:vm="clr-namespace:VoiceMemo.ViewModels;"
-    xmlns:converter="clr-namespace:VoiceMemo.Converters"
-    xmlns:w="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"
-    Title="{Binding Title}">
-    <views:CirclePageEx.Resources>
-        <ResourceDictionary>
-            <!--  record_controller_bg.png  -->
-            <Color x:Key="AO012L1">#FFFAFAFA</Color>
-            <Color x:Key="AO012L1P">#66FAFAFA</Color>
-            <Color x:Key="AO012L1D">#66FAFAFA</Color>
-            <!--  recording_icon_cancel(_pause).png  -->
-            <Color x:Key="AO012L3">#FF4F4F4F</Color>
-            <Color x:Key="AO012L3P">#64F4F4F</Color>
-            <Color x:Key="AO012L3D">#664F4F4F</Color>
-            <!--  record_stop_icon.png  -->
-            <Color x:Key="AO016L1">#FFE00404</Color>
-            <Color x:Key="AO016L1P">#66E00404</Color>
-            <Color x:Key="AO016L1D">#66E00404</Color>
-            <!--  recording_stt_icon.png  -->
-            <Color x:Key="AO0210">#FFFAFAFA</Color>
-            <Color x:Key="AT011">#FFFAFAFA</Color>
-            <Color x:Key="AO028">#8C11B4FF</Color>
-            <!--  voicerecorder_btn_stop(_pause, _play).png  -->
-            <Color x:Key="AO014L3">#FFFAFAFA</Color>
-            <Color x:Key="AO014L3P">#66FAFAFA</Color>
-            <Color x:Key="AO014L3D">#66FAFAFA</Color>
-            <!--  voicerecorder_btn_bg.png  -->
-            <Color x:Key="AO014L1">#FF12B4FF</Color>
-            <!--  FF467EA6  -->
-            <Color x:Key="AO014L1P">#6612B4FF</Color>
-            <Color x:Key="AO014L1D">#6612B4FF</Color>
-            
-            <Style x:Key="LabelStyle-AT011" TargetType="Label" BasedOn="{StaticResource LabelStyle-Base}">
-                <Setter Property="FontSize" Value="20" />
-                <Setter Property="TextColor" Value="{StaticResource AT011}" />
-            </Style>
-            <Color x:Key="AT0116">#FF4DCFFF</Color>
-            <Style x:Key="LabelStyle-AT0116" TargetType="Label" BasedOn="{StaticResource LabelStyle-Base}">
-                <Setter Property="FontSize" Value="10" />
-                <Setter Property="TextColor" Value="{StaticResource AT0116}" />
-            </Style>
-            <converter:RecordImageSourceColorConverter x:Key="RecordImageSourceColorConverter" />
-        </ResourceDictionary>    
-    </views:CirclePageEx.Resources>
-    <w:CirclePage.CircleSurfaceItems>
-        <w:CircleProgressBarSurfaceItem
-            x:Name="RecordingProgress"
-            Value="{Binding RecordingProcess}" />
-    </w:CirclePage.CircleSurfaceItems>
-    <ContentPage.Content>
-        <AbsoluteLayout BackgroundColor="Black">
-            <!--  Recorder  -->
-            <Image
-                x:Name="VoiceRecorderBtnEffectImage"
-                AbsoluteLayout.LayoutBounds="117,117,126,126"
-                AbsoluteLayout.LayoutFlags="None"
-                Source="voicememo_effect.png" />
-            <Image
-                x:Name="VoiceRecorderBtnEffectImage2"
-                AbsoluteLayout.LayoutBounds="117,117,126,126"
-                AbsoluteLayout.LayoutFlags="None"
-                Source="voicememo_effect.png" />
-            <Image
-                x:Name="VoiceRecorderBtnBgImage"
-                AbsoluteLayout.LayoutBounds="117,117,126,126"
-                AbsoluteLayout.LayoutFlags="None"
-                Source="voicerecorder_btn_bg.png">
-            </Image>
-            <Image
-                x:Name="VoiceRecorderBtnStopImage"
-                AbsoluteLayout.LayoutBounds="117,117,126,126"
-                AbsoluteLayout.LayoutFlags="None"
-                Source="voicerecorder_btn_stop.png">
-            </Image>
-            <BoxView
-                AbsoluteLayout.LayoutBounds="117,117,126,126"
-                AbsoluteLayout.LayoutFlags="None"
-                x:Name="TapLayer">
-                <BoxView.GestureRecognizers>
-                    <TapGestureRecognizer Tapped="CompleteRecording_Tapped" />
-                </BoxView.GestureRecognizers>
-            </BoxView>
-
-            <Image
-                x:Name="RecordingSttImage"
-                AbsoluteLayout.LayoutBounds="162,18,36,36"
-                AbsoluteLayout.LayoutFlags="None"
-                IsVisible="{Binding SttOn}"
-                Source="recording_stt_icon.png" />
-
-            <!--  Record Controller in Left  -->
-            <Image
-                x:Name="RecordControllerCancelBgImage"
-                AbsoluteLayout.LayoutBounds="30,139,82,82"
-                AbsoluteLayout.LayoutFlags="None"
-                Source="record_controller_bg.png" />
-            <Image
-                x:Name="RecordingIconCancelImage"
-                AbsoluteLayout.LayoutBounds="30,139,82,82"
-                AbsoluteLayout.LayoutFlags="None"
-                Source="recording_icon_cancel.png">
-                <Image.GestureRecognizers>
-                    <TapGestureRecognizer Tapped="TryToCancel_Tapped" />
-                    <!--<TapGestureRecognizer Command="{Binding TryToCancelCommand}"/>-->
-                </Image.GestureRecognizers>
-            </Image>
-
-            <!--  Record Controller in Right  -->
-            <Image
-                x:Name="RecordControllerPauseBgImage"
-                AbsoluteLayout.LayoutBounds="248,139,82,82"
-                AbsoluteLayout.LayoutFlags="None"
-                Source="record_controller_bg.png">
-                <Image.GestureRecognizers>
-                    <TapGestureRecognizer Tapped="PauseRecording_Tapped" />
-                </Image.GestureRecognizers>
-                <!--<Image.GestureRecognizers>
-                    <TapGestureRecognizer Command="{Binding RequestCommand}" CommandParameter="{x:Static vm:RecordingCommandType.PAUSE}"/>
-                </Image.GestureRecognizers>-->
-            </Image>
-            <Image
-                x:Name="RecordingIconPauseImage"
-                AbsoluteLayout.LayoutBounds="248,139,82,82"
-                AbsoluteLayout.LayoutFlags="None"
-                Source="{Binding PauseRecordToggleImage, Converter={StaticResource RecordImageSourceColorConverter}, ConverterParameter={x:Reference RecordingIconPauseImage}}">
-                <Image.GestureRecognizers>
-                    <TapGestureRecognizer Tapped="PauseRecording_Tapped" />
-                </Image.GestureRecognizers>
-                <!--<Image.GestureRecognizers>
-                    <TapGestureRecognizer Command="{Binding RequestCommand}" CommandParameter="{x:Static vm:RecordingCommandType.PAUSE}"/>
-                </Image.GestureRecognizers>-->
-            </Image>
-            <Label
-                x:Name="TitleLabel"
-                AbsoluteLayout.LayoutBounds="64,51,232,39"
-                AbsoluteLayout.LayoutFlags="None"
-                Text="{Binding RecordTitle}"
-                Style="{StaticResource LabelStyle-AT0116}" />
-            <Label
-                x:Name="RecordingTimeLabel"
-                AbsoluteLayout.LayoutBounds="102,249,156,79"
-                AbsoluteLayout.LayoutFlags="None"
-                Text="{Binding RecordingTime}"
-                Style="{StaticResource LabelStyle-AT011}" />
-        </AbsoluteLayout>
-    </ContentPage.Content>
-</views:CirclePageEx>
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/Views/RecordingPage.xaml.cs b/test/Voicememo2020/VoiceMemo/Views/RecordingPage.xaml.cs
deleted file mode 100755 (executable)
index 0f8e3e2..0000000
+++ /dev/null
@@ -1,398 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Threading.Tasks;
-using VoiceMemo.Effects;
-using VoiceMemo.Models;
-using VoiceMemo.Services;
-using VoiceMemo.ViewModels;
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace VoiceMemo.Views
-{
-    /// <summary>
-    /// RecordingPage class
-    /// It provides voice recording, pausing, and canceling.
-    /// </summary>
-    public partial class RecordingPage : CirclePageEx
-    {
-        public RecordingPageModel ViewModel;
-        double prevScale;
-        double prevShadowScale;
-        double prevAudioLevel;
-        bool currentOpaque = true;
-        double opacity;
-
-        public static readonly BindableProperty RecordingEffectAnimationProperty = BindableProperty.Create(nameof(RecordingEffectAnimation), typeof(bool), typeof(RecordingPage), false, propertyChanged: OnAnimationPropertyChanged);
-
-        private static void OnAnimationPropertyChanged(BindableObject bindable, object oldValue, object newValue)
-        {
-            if ((bool)oldValue == false && (bool)newValue == true)
-            {
-                ((RecordingPage)(bindable)).StartVolumeEffectAnimation();
-            }
-        }
-
-        public static readonly BindableProperty TimeFlickeringAnimationProperty = BindableProperty.Create(nameof(TimeFlickeringAnimation), typeof(bool), typeof(RecordingPage), false, propertyChanged: OnTimeFlickeringPropertyChanged);
-
-        private static void OnTimeFlickeringPropertyChanged(BindableObject bindable, object oldValue, object newValue)
-        {
-            if ((bool)oldValue == false && (bool)newValue == true)
-            {
-                ((RecordingPage)(bindable)).Blink();
-            }
-        }
-
-        public bool RecordingEffectAnimation
-        {
-            get { return (bool)GetValue(RecordingEffectAnimationProperty); }
-            set
-            {
-                SetValue(RecordingEffectAnimationProperty, value);
-            }
-        }
-
-        public bool TimeFlickeringAnimation
-        {
-            get { return (bool)GetValue(TimeFlickeringAnimationProperty); }
-            set
-            {
-                SetValue(TimeFlickeringAnimationProperty, value);
-            }
-        }
-
-        public RecordingPage(RecordingPageModel viewModel)
-        {
-            BindingContext = ViewModel = viewModel;
-            InitializeComponent();
-            UpdateColor();
-
-            RegisterForEvents();
-
-            RecordingEffectAnimation = false;
-            TimeFlickeringAnimation = false;
-
-            SetBinding(RecordingEffectAnimationProperty, new Binding("RecordingEffectOn", mode: BindingMode.Default));
-            SetBinding(TimeFlickeringAnimationProperty, new Binding("TimeFlickeringOn", mode: BindingMode.Default));
-
-            Init();
-        }
-
-        void RegisterForEvents()
-        {
-            //// Get notified when AudioRecordService's State is Recording
-            //MessagingCenter.Subscribe<IAudioRecordService>(this, MessageKeys.ReadyToRecord, async (obj) =>
-            //{
-            //    Console.WriteLine("### MessagingCenter ## [RecordingPage] ReadyToRecord!! ");
-            //});
-
-            MessagingCenter.Subscribe<RecordingPageModel, Record>(this, MessageKeys.SaveVoiceMemo, async (obj, item) =>
-            {
-                var _DeviceInfoService = DeviceInformationService.Instance;
-                if (_DeviceInfoService.AppState == AppState.Terminated)
-                {
-                    //Toast.DisplayText("Memo " + item.ID + " saved.", 3000);
-                    // TODO: show popup using app control
-                    return;
-                }
-
-                await Navigation.PushAsync(PageFactory.GetInstance(Pages.Details, item/*new DetailsPageModel(item)*/));
-
-                if (_DeviceInfoService.AppState == AppState.Background)
-                {
-                    Console.WriteLine(" ************   TO DO SOMETHING  *************");
-                }
-            });
-
-            // Called when an error occurs while recording
-            MessagingCenter.Subscribe<MediaContentService, Exception>(this, MessageKeys.ErrorOccur, (obj, exception) =>
-            {
-                DisplayAlert("Recording", exception.Message, "OK");
-            });
-
-            MessagingCenter.Subscribe<RecordingPageModel>(this, MessageKeys.ForcePopRecordingPage, async (obj) =>
-            {
-                Console.WriteLine("### MessagingCenter ## [RecordingPage] just received ForcePopRecordingPage");
-                await Navigation.PopAsync();
-            });
-        }
-
-        /// <summary>
-        /// Initialize Recording page
-        /// </summary>
-        public void Init()
-        {
-            RecordingTimeLabel.TextColor = Color.White;
-            ImageAttributes.SetBlendColor(RecordingIconPauseImage, (Color)Resources["AO012L3"]);
-            ((RecordingPageModel)ViewModel).Init();
-        }
-
-        /// <summary>
-        /// Start volume effect animation
-        /// </summary>
-        void StartVolumeEffectAnimation()
-        {
-            // Any background code that needs to update the user interface
-            // interact with UI elements
-            // call CheckVolumeAndResizeAnimationAsync method every 100ms
-            Device.StartTimer(TimeSpan.FromMilliseconds(100), CheckVolumeAndResizeAnimationAsync);
-        }
-
-        // Draw animation effects depending on volume level
-        private bool CheckVolumeAndResizeAnimationAsync()
-        {
-            RecordingPageModel recordingViewModel = (RecordingPageModel)BindingContext;
-            // @20180217-vincent: async chain can be stopped by using Task.Factory.StartNew(...)
-            //                    Device.InovkeOnMainThread was removed because it is guaranteed main thread
-            Task.Factory.StartNew(async () =>
-            {
-                if (recordingViewModel.AudioRecordingService.State == AudioRecordState.Recording)
-                {
-                    double fScaleValue = 0, fShodowScaleValue = 0;
-                    double volume = recordingViewModel.AudioRecordingService.GetRecordingLevel(); //-300 ~ 0
-                    int uwLevel = 0;
-                    int uwShadowLevel = 0;
-                    int effectLevel = 0;
-                    double db = volume;
-                    const int VOLUME_LEVEL_MIN = -55;
-                    const int VOLUME_LEVEL_MAX = -10;
-                    const double LINEAR_VI_SCALE = 1.0 / 20.0;
-
-                    if (db < VOLUME_LEVEL_MIN)
-                    {
-                        effectLevel = 0;
-                    }
-                    else if (db > VOLUME_LEVEL_MAX)
-                    {
-                        effectLevel = VOLUME_LEVEL_MAX - VOLUME_LEVEL_MIN;
-                    }
-                    else
-                    {
-                        effectLevel = (int)(db - VOLUME_LEVEL_MIN);
-                    }
-
-                    uwLevel = effectLevel;
-
-                    if (uwLevel > 1)
-                    {
-                        uwShadowLevel = uwLevel / 4 + (new Random().Next() % (uwLevel / 2));
-                    }
-
-                    if (uwLevel > prevAudioLevel)
-                    {
-                        fScaleValue = (30 + 70 * (uwLevel) / (VOLUME_LEVEL_MAX - VOLUME_LEVEL_MIN)) / 100.0;
-                        fShodowScaleValue = (30 + 70 * (uwShadowLevel) / (VOLUME_LEVEL_MAX - VOLUME_LEVEL_MIN)) / 100.0;
-
-                        if (fScaleValue < prevScale)
-                        {
-                            fScaleValue = prevScale - LINEAR_VI_SCALE;
-                        }
-
-                        if (fShodowScaleValue < prevShadowScale)
-                        {
-                            fShodowScaleValue = prevShadowScale - LINEAR_VI_SCALE;
-                        }
-                    }
-                    else
-                    {
-                        fScaleValue = prevScale - LINEAR_VI_SCALE;
-                        fShodowScaleValue = prevShadowScale - LINEAR_VI_SCALE;
-                    }
-
-                    if (fScaleValue < 0.3)
-                    {
-                        fScaleValue = 0.3;
-                    }
-                    else if (fScaleValue > 1.0)
-                    {
-                        fScaleValue = 1.0;
-                    }
-
-                    if (fShodowScaleValue < 0.3)
-                    {
-                        fShodowScaleValue = 0.3;
-                    }
-                    else if (fShodowScaleValue > 1.0)
-                    {
-                        fShodowScaleValue = 1.0;
-                    }
-
-                    int actualSize = (int)(fScaleValue * 360);
-                    int acutalShadowSize = (int)(fShodowScaleValue * 360);
-
-                    await DrawVolumeEffectAnimationAsync(actualSize, acutalShadowSize);
-
-                    prevAudioLevel = uwLevel;
-                    prevScale = fScaleValue;
-                    prevShadowScale = fShodowScaleValue;
-                }
-            });
-            return ((RecordingPageModel)BindingContext).RecordingEffectOn;
-        }
-
-        // Draw animation depending on volume level while recording
-        private async Task DrawVolumeEffectAnimationAsync(int imageSize, int shadowImageSize)
-        {
-            double image2Ratio = (double)imageSize / 126;
-            double imageRatio = (double)shadowImageSize / 126;
-            await Task.WhenAll(
-                VoiceRecorderBtnEffectImage2.ScaleTo(image2Ratio,50),
-                VoiceRecorderBtnEffectImage.ScaleTo(imageRatio,50));
-        }
-
-        /// <summary>
-        /// Invoked immediately prior to the Page becoming visible.
-        /// </summary>
-        protected override void OnAppearing()
-        {
-        }
-
-        /// <summary>
-        /// Invoked when this page disappears.
-        /// </summary>
-        protected override void OnDisappearing()
-        {
-        }
-
-        /// <summary>
-        /// Invoked when backbutton is pressed
-        /// As a result, CancelPage will be shown.
-        /// </summary>
-        /// <returns>bool</returns>
-        protected override bool OnBackButtonPressed()
-        {
-            TryToCancel_Tapped(this, new EventArgs());
-            return true;
-        }
-
-        // When it is no need to receive notifications anymore, unsubscribes subscribers from the specified messages 
-        void UnregisterForEvents()
-        {
-            //MessagingCenter.Unsubscribe<IAudioRecordService>(this, MessageKeys.ReadyToRecord);
-            MessagingCenter.Unsubscribe<RecordingPageModel, Record>(this, MessageKeys.SaveVoiceMemo);
-            MessagingCenter.Unsubscribe<MediaContentService, Exception>(this, MessageKeys.ErrorOccur);
-            MessagingCenter.Unsubscribe<RecordingPageModel>(this, MessageKeys.ForcePopRecordingPage);
-        }
-
-        /// <summary>
-        /// Dispose this page
-        /// </summary>
-        public void Dispose()
-        {
-            UnregisterForEvents();
-            ((RecordingPageModel)BindingContext).Dispose();
-        }
-
-        /// <summary>
-        /// Invoked when RecordingIconCancelImage is tapped
-        /// Recording is temporarily paused.
-        /// </summary>
-        /// <param name="sender">sender object</param>
-        /// <param name="e">EventArgs</param>
-        async void TryToCancel_Tapped(object sender, EventArgs e)
-        {
-            if (ViewModel.RecordingViewModelState == RecordingViewModelState.Recording)
-            {
-                ViewModel.RequestCommand.Execute(RecordingCommandType.PauseForCancelRequest);
-            }
-
-            await Navigation.PushAsync(PageFactory.GetInstance(Pages.TryCancel, ViewModel));
-        }
-
-        /// <summary>
-        /// Invoked when RecordControllerPauseBgImage or RecordingIconPauseImage is tapped
-        /// Recording is temporarily paused.
-        /// paused and recording states are toggled every time this image button is pressed
-        /// </summary>
-        /// <param name="sender">sender object</param>
-        /// <param name="e">EventArgs</param>
-        void PauseRecording_Tapped(object sender, EventArgs e)
-        {
-            if (((RecordingPageModel)BindingContext).RecordingViewModelState == RecordingViewModelState.Paused)
-            {
-                ViewModel.RequestCommand.Execute(RecordingCommandType.Record);
-            }
-            else if (((RecordingPageModel)BindingContext).RecordingViewModelState == RecordingViewModelState.Recording)
-            {
-                ViewModel.RequestCommand.Execute(RecordingCommandType.Pause);
-            }
-        }
-
-        private void Blink()
-        {
-            currentOpaque = true;
-            Device.StartTimer(TimeSpan.FromMilliseconds(700), BlinkInvoker);
-        }
-
-        private bool BlinkInvoker()
-        {
-            Task.Factory.StartNew(async () =>
-                {
-                    opacity = currentOpaque ? 0 : 1;
-                    await BlinkAnimation();
-                    currentOpaque = !currentOpaque;
-            });
-
-            return ((RecordingPageModel)BindingContext).TimeFlickeringOn;
-        }
-
-        private async Task BlinkAnimation()
-        {
-            if (!((RecordingPageModel)BindingContext).TimeFlickeringOn)
-            {
-                RecordingTimeLabel.Opacity = 1.0;
-            }
-            else
-            {
-                await Task.WhenAny(RecordingTimeLabel.FadeTo(opacity, 500, Easing.Linear));
-            }
-        }
-            
-        /// <summary>
-        /// Invoked when VoiceRecorderBtnBgImage and VoiceRecorderBtnStopImage is tapped
-        /// Audio recording will be done
-        /// </summary>
-        /// <param name="sender">sender object</param>
-        /// <param name="args">EventArgs</param>
-        void CompleteRecording_Tapped(object sender, EventArgs args)
-        {
-            Console.WriteLine("RecordingPage   ============   CompleteRecording_Tapped");
-            ViewModel.RequestCommand.Execute(RecordingCommandType.Stop);
-        }
-
-        void UpdateColor()
-        {
-            // For case that STT is On, recording_stt_icon.png
-            ImageAttributes.SetBlendColor(RecordingSttImage, (Color)Resources["AO0210"]);
-
-            // Recorder
-            ImageAttributes.SetBlendColor(VoiceRecorderBtnEffectImage, (Color)Resources["AO028"]);
-            ImageAttributes.SetBlendColor(VoiceRecorderBtnEffectImage2, (Color)Resources["AO028"]);
-            ImageAttributes.SetBlendColor(VoiceRecorderBtnBgImage, (Color)Resources["AO014L1"]);
-            ImageAttributes.SetBlendColor(VoiceRecorderBtnStopImage, (Color)Resources["AO014L3"]);
-
-            // Record Controller in Left
-            ImageAttributes.SetBlendColor(RecordControllerCancelBgImage, (Color)Resources["AO012L1"]);
-            ImageAttributes.SetBlendColor(RecordingIconCancelImage, (Color)Resources["AO012L3"]);
-
-            // Record Controller in Right
-            ImageAttributes.SetBlendColor(RecordControllerPauseBgImage, (Color)Resources["AO012L1"]);
-            ImageAttributes.SetBlendColor(RecordingIconPauseImage, (Color)Resources["AO012L3"]);
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/Views/SttLanguageViewCell.xaml b/test/Voicememo2020/VoiceMemo/Views/SttLanguageViewCell.xaml
deleted file mode 100755 (executable)
index 0aa6b26..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<ViewCell
-    x:Class="VoiceMemo.Views.SttLanguageViewCell"
-    xmlns="http://xamarin.com/schemas/2014/forms"
-    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-    xmlns:w="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF">
-    <ViewCell.View>
-        <RelativeLayout HeightRequest="130" WidthRequest="360">
-            <Label
-                FontAttributes="Bold"
-                HorizontalTextAlignment="Center"
-                RelativeLayout.XConstraint="{ConstraintExpression Type=RelativeToParent,
-                                                                  Property=Width,
-                                                                  Factor=0,
-                                                                  Constant=30}"
-                RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToParent,
-                                                                  Property=Height,
-                                                                  Factor=0,
-                                                                  Constant=15}"
-                Style="{StaticResource BaseLabelStyle}"
-                Text="{Binding Name}"
-                FontSize="11"
-                VerticalTextAlignment="Center"
-                WidthRequest="220" />
-            <Label
-                FontAttributes="None"
-                HorizontalTextAlignment="Center"
-                RelativeLayout.XConstraint="{ConstraintExpression Type=RelativeToParent,
-                                                                  Property=Width,
-                                                                  Factor=0,
-                                                                  Constant=30}"
-                RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToParent,
-                                                                  Property=Height,
-                                                                  Factor=0,
-                                                                  Constant=80}"
-                Style="{StaticResource BaseLabelStyle}"
-                Text="{Binding Country}"
-                FontSize="7"
-                VerticalTextAlignment="Center"
-                WidthRequest="220" />
-            <w:Radio
-                x:Name="onOffSwitch"
-                GroupName="Language"
-                RelativeLayout.XConstraint="{ConstraintExpression Type=RelativeToParent,
-                                                                  Property=Width,
-                                                                  Factor=0.7,
-                                                                  Constant=0}"
-                RelativeLayout.YConstraint="{ConstraintExpression Type=RelativeToParent,
-                                                                  Property=Height,
-                                                                  Factor=0.15,
-                                                                  Constant=0}"
-                IsSelected="{Binding IsOn, Mode=TwoWay}" 
-                Selected="OnSelected"
-                Value="{Binding Combo}"/>
-        </RelativeLayout>
-    </ViewCell.View>
-</ViewCell>
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/Views/SttLanguageViewCell.xaml.cs b/test/Voicememo2020/VoiceMemo/Views/SttLanguageViewCell.xaml.cs
deleted file mode 100755 (executable)
index 1b70b06..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using VoiceMemo.Models;
-using VoiceMemo.ViewModels;
-using Xamarin.Forms;
-using Tizen.Wearable.CircularUI.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace VoiceMemo.Views
-{
-    /// <summary>
-    /// SttLanguageViewCell
-    /// It's a custom view cell for CircleListView in LanguageSelectionPage
-    /// </summary>
-       public partial class SttLanguageViewCell : ViewCell
-       {
-               public SttLanguageViewCell()
-               {
-                       InitializeComponent();
-               }
-
-        // Called when radio button is selected
-        public async void OnSelected(object sender, SelectedEventArgs args)
-        {
-            Console.WriteLine($"Radio.OnSoundSelected!! value:{args.Value}");
-            Radio radio = sender as Radio;
-            if (Application.Current.MainPage.Navigation.NavigationStack.Count > 0)
-            {
-                int index = Application.Current.MainPage.Navigation.NavigationStack.Count - 1;
-
-                LanguageSelectionPage currPage = Application.Current.MainPage.Navigation.NavigationStack[index] as LanguageSelectionPage;
-                //Error CS0023  Operator '!' cannot be applied to operand of type 'string'
-                if (args.Value != null)
-                {
-                    Console.WriteLine("  < UNSELECTED >  XXXXXX sender " + sender + " -  " + radio.Value);
-                    currPage.ignoreRadioSelection = false;
-                    return;
-                }
-                else
-                {
-                    if (currPage.ignoreRadioSelection)
-                    {
-                        Console.WriteLine("\n\nRadio_Selected  >>>>>>>  SKIP!\n\n");
-                        currPage.ignoreRadioSelection = false;
-                        return;
-                    }
-
-                    Console.WriteLine("  < SELECTED >  XXXXXX sender " + sender + " -  " + radio.Value);
-                    SttLanguage item = radio.BindingContext as SttLanguage;
-                    ((MainPageModel)currPage.BindingContext).CurrentLanguage = item.Lang;
-
-                    ((MainPageModel)currPage.BindingContext).SelectedItemIndex = item;
-                    await currPage.Navigation.PopToRootAsync();
-                }
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/Views/ViewExtensions.cs b/test/Voicememo2020/VoiceMemo/Views/ViewExtensions.cs
deleted file mode 100755 (executable)
index f979c3c..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-using System;
-using System.Threading.Tasks;
-using Xamarin.Forms;
-
-namespace VoiceMemo.Views
-{
-    public static class ViewExtensions
-    {
-        public static void CancelAnimation(this VisualElement self)
-        {
-            self.AbortAnimation("ColorTo");
-        }
-    }
-}
diff --git a/test/Voicememo2020/VoiceMemo/VoiceMemo.cs b/test/Voicememo2020/VoiceMemo/VoiceMemo.cs
deleted file mode 100755 (executable)
index 7279f4a..0000000
+++ /dev/null
@@ -1,158 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Threading.Tasks;
-using Tizen.Applications;
-using Tizen.Security;
-using Tizen.Wearable.CircularUI.Forms;
-using Tizen.Wearable.CircularUI.Forms.Renderer;
-using VoiceMemo.EffectRenderers;
-using VoiceMemo.Services;
-using VoiceMemo.Utility;
-using Xamarin.Forms;
-using Xamarin.Forms.Platform.Tizen;
-using TLog = Tizen.Log;
-
-namespace VoiceMemo
-{
-    class Program : global::Xamarin.Forms.Platform.Tizen.ApplicationLifecycle
-    {
-        static App app;
-        protected async override void OnCreate()
-        {
-            bool recorderGranted = false;
-            if (PrivacyPrivilegeManager.CheckPermission(PrivilegeInformation.RecorderPrivilege) != CheckResult.Allow)
-            {
-                recorderGranted = await RequestPermission(PrivilegeInformation.RecorderPrivilege);
-            }
-            else
-            {
-                recorderGranted = true;
-            }
-
-            bool mediaStorageGranted = false;
-            if (PrivacyPrivilegeManager.CheckPermission(PrivilegeInformation.MediaStoragePrivilege) != CheckResult.Allow)
-            {
-                mediaStorageGranted = await RequestPermission(PrivilegeInformation.MediaStoragePrivilege);
-            }
-            else
-            {
-                mediaStorageGranted = true;
-            }
-
-            if (!(recorderGranted && mediaStorageGranted))
-            {
-                Log.Error(LOG.TAG, "Failed to obtain user consent. So, app is going to be terminated.");
-                // Terminate this application.
-                FormsApplication.Current.Exit();
-                return;
-            }
-
-            app = new App();
-            FormsApplication.LoadApplication(app);
-        }
-        static Task<bool> RequestPermission(string privilege)
-        {
-            TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>();
-            var response = PrivacyPrivilegeManager.GetResponseContext(privilege);
-            PrivacyPrivilegeManager.ResponseContext target;
-            response.TryGetTarget(out target);
-            target.ResponseFetched += (s, e) =>
-            {
-                if (e.cause == CallCause.Error)
-                {
-                    /// Handle errors
-                    Log.Error(LOG.TAG, "An error occurred while requesting an user permission");
-                    tcs.SetResult(false);
-                    return;
-                }
-
-                // Now, we can check if the permission is granted or not
-                switch (e.result)
-                {
-                    case RequestResult.AllowForever:
-                        // Permission is granted.
-                        // We can do this permission-related task we want to do.
-                        Log.Info(LOG.TAG, "Response: RequestResult.AllowForever");
-                        tcs.SetResult(true);
-                        break;
-                    case RequestResult.DenyForever:
-                    case RequestResult.DenyOnce:
-                        // Functionality that depends on this permission will not be available
-                        Log.Info(LOG.TAG, "Response: RequestResult." + e.result.ToString());
-                        tcs.SetResult(false);
-                        break;
-                }
-
-            };
-            PrivacyPrivilegeManager.RequestPermission(privilege);
-            return tcs.Task;
-        }
-
-        /// <summary>
-        /// Called when this application is terminated
-        /// </summary>
-        protected override void OnTerminate()
-        {
-            // Save the index of recording files
-            Preference.Set(DeviceInformationService.LastUsedID, AudioRecordService.numbering);
-            base.OnTerminate();
-            app.Terminate();
-        }
-
-        static void Main(string[] args)
-        {
-            var app = new Program();
-
-            // define your custom handlers
-            var customRenderers = new Dictionary<Type, Func<IRegisterable>>()
-            {
-                { typeof(CirclePage), ()=> new CirclePageRenderer() },
-                { typeof(global:: Tizen.Wearable.CircularUI.Forms.CircleListView), () => new CircleListViewRenderer() },
-                { typeof(global:: Tizen.Wearable.CircularUI.Forms.CircleScrollView), ()=> new global::Tizen.Wearable.CircularUI.Forms.Renderer.CircleScrollViewRenderer() },
-                { typeof(global:: Tizen.Wearable.CircularUI.Forms.TwoButtonPage), ()=> new global::Tizen.Wearable.CircularUI.Forms.Renderer.TwoButtonPageRenderer() },
-            };
-
-            var option = new InitializationOptions(app)
-            {
-                UseMessagingCenter = true,
-                UseStyle = true,
-                UseShell = false,
-                UseVisual = false,
-                StaticRegistarStrategy = StaticRegistrarStrategy.StaticRegistrarOnly,
-                CustomHandlers = customRenderers,
-                Flags = InitializationFlags.DisableCss
-            };
-
-            Xamarin.Forms.InitializationOptions.EffectScope myeffect = new Xamarin.Forms.InitializationOptions.EffectScope();
-            myeffect.Name = "SEC";
-            //myeffect.Name = "MyCompany";
-
-            ExportEffectAttribute attr1 = new ExportEffectAttribute(typeof(BlendColorEffect), "BlendColorEffect");
-            myeffect.Effects = new ExportEffectAttribute[] { attr1 };
-
-            Xamarin.Forms.InitializationOptions.EffectScope circleEffect = new Xamarin.Forms.InitializationOptions.EffectScope();
-            circleEffect.Name = "CircleUI";
-            ExportEffectAttribute attr2 = new ExportEffectAttribute(typeof(TizenConfirmPopupEffect), "ContextPopupEffectBehavior");
-
-            ExportEffectAttribute attr3 = new ExportEffectAttribute(typeof(TizenCircleSurfaceEffect), "CircleSurfaceEffect");
-
-            circleEffect.Effects = new ExportEffectAttribute[] { attr2, attr3 };
-
-            option.EffectScopes = new InitializationOptions.EffectScope[] { myeffect, circleEffect };
-
-
-            // NOTE(vincent): Note that this setenv should be called per app.
-            string productTheme = Interop.Interop.SystemCall.GetEnv("ELM_DEVICE_PROD_THEME");
-            if (productTheme == "pulse")
-            {
-                Interop.Interop.SystemCall.SetEnv("ELM_PROD_THEME", "pulse", 1);
-            }
-            Forms.Init(option);
-            // TODO(vincent): Remove this line if OneUI is supported in Xamarin. 
-            //                Precondition: oneui-theme-1.1.0-1.armv7l.rpm should be installed.
-            //Elementary.AddThemeOverlay("/usr/share/elementary/themes/oneui-theme.edj");
-            global::Tizen.Wearable.CircularUI.Forms.Renderer.FormsCircularUI.Init();
-            app.FormsApplication.Run(args);
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/Voicememo2020/VoiceMemo/VoiceMemo.csproj b/test/Voicememo2020/VoiceMemo/VoiceMemo.csproj
deleted file mode 100755 (executable)
index 0d79931..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-<Project Sdk="Tizen.NET.Sdk/1.0.8">
-
-  <PropertyGroup>
-    <OutputType>Exe</OutputType>
-    <TargetFramework>tizen40</TargetFramework>
-  </PropertyGroup>
-
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugType>portable</DebugType>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>None</DebugType>
-  </PropertyGroup>
-  <ItemGroup>
-    <Compile Remove="Utility.cs" />
-  </ItemGroup>
-
-  <ItemGroup>
-    <Folder Include="Effects\" />
-    <Folder Include="Resx\" />
-    <Folder Include="res\2019_custom_button\" />
-    <Folder Include="res\2019\" />
-    <Folder Include="res\2019_images_icons\" />
-  </ItemGroup>
-
-  <ItemGroup>
-    <PackageReference Include="sqlite" Version="3.13.0" />
-    <PackageReference Include="sqlite-net-base" Version="1.5.166-beta" />
-    <PackageReference Include="SQLitePCLRaw.provider.sqlite3.netstandard11" Version="1.1.14" />
-  </ItemGroup>
-
-  <ItemGroup>
-    <ProjectReference Include="..\..\..\src\XSF\XSF.csproj" />
-  </ItemGroup>
-
-</Project>
-
diff --git a/test/Voicememo2020/VoiceMemo/res/2019/details_playback_icon.png b/test/Voicememo2020/VoiceMemo/res/2019/details_playback_icon.png
deleted file mode 100755 (executable)
index 1008ed8..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019/details_playback_icon.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019/recording_stt_icon.png b/test/Voicememo2020/VoiceMemo/res/2019/recording_stt_icon.png
deleted file mode 100755 (executable)
index 4d2f789..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019/recording_stt_icon.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019/voice_mamo_slider_btn_bg.png b/test/Voicememo2020/VoiceMemo/res/2019/voice_mamo_slider_btn_bg.png
deleted file mode 100755 (executable)
index c061f95..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019/voice_mamo_slider_btn_bg.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019/voicememo_effect.png b/test/Voicememo2020/VoiceMemo/res/2019/voicememo_effect.png
deleted file mode 100755 (executable)
index 6541ef7..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019/voicememo_effect.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019/voicememo_volume_control_cover_bg.png b/test/Voicememo2020/VoiceMemo/res/2019/voicememo_volume_control_cover_bg.png
deleted file mode 100755 (executable)
index 49ea3a5..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019/voicememo_volume_control_cover_bg.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019/voicerecorder_effect_bg.png b/test/Voicememo2020/VoiceMemo/res/2019/voicerecorder_effect_bg.png
deleted file mode 100755 (executable)
index 0c23d67..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019/voicerecorder_effect_bg.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_custom_button/details_vol_icon_off.png b/test/Voicememo2020/VoiceMemo/res/2019_custom_button/details_vol_icon_off.png
deleted file mode 100755 (executable)
index a0a0740..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_custom_button/details_vol_icon_off.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_custom_button/details_vol_icon_on.png b/test/Voicememo2020/VoiceMemo/res/2019_custom_button/details_vol_icon_on.png
deleted file mode 100755 (executable)
index 2beb81b..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_custom_button/details_vol_icon_on.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_custom_button/record_controller_bg.png b/test/Voicememo2020/VoiceMemo/res/2019_custom_button/record_controller_bg.png
deleted file mode 100755 (executable)
index 556b8ac..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_custom_button/record_controller_bg.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_custom_button/recording_icon_cancel.png b/test/Voicememo2020/VoiceMemo/res/2019_custom_button/recording_icon_cancel.png
deleted file mode 100755 (executable)
index 64743c4..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_custom_button/recording_icon_cancel.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_custom_button/recording_icon_stop.png b/test/Voicememo2020/VoiceMemo/res/2019_custom_button/recording_icon_stop.png
deleted file mode 100755 (executable)
index 78e0ef0..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_custom_button/recording_icon_stop.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_custom_button/voicerecorder_btn_bg.png b/test/Voicememo2020/VoiceMemo/res/2019_custom_button/voicerecorder_btn_bg.png
deleted file mode 100755 (executable)
index 79806ac..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_custom_button/voicerecorder_btn_bg.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_custom_button/voicerecorder_btn_pause.png b/test/Voicememo2020/VoiceMemo/res/2019_custom_button/voicerecorder_btn_pause.png
deleted file mode 100755 (executable)
index bb88f36..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_custom_button/voicerecorder_btn_pause.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_custom_button/voicerecorder_btn_play.png b/test/Voicememo2020/VoiceMemo/res/2019_custom_button/voicerecorder_btn_play.png
deleted file mode 100755 (executable)
index 0f2b959..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_custom_button/voicerecorder_btn_play.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_custom_button/voicerecorder_playback_btn_pause.png b/test/Voicememo2020/VoiceMemo/res/2019_custom_button/voicerecorder_playback_btn_pause.png
deleted file mode 100755 (executable)
index 262f65b..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_custom_button/voicerecorder_playback_btn_pause.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_custom_button/voicerecorder_stop_icon.png b/test/Voicememo2020/VoiceMemo/res/2019_custom_button/voicerecorder_stop_icon.png
deleted file mode 100755 (executable)
index 7810b0f..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_custom_button/voicerecorder_stop_icon.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/b_icon_voicememo.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/b_icon_voicememo.png
deleted file mode 100755 (executable)
index 51c3725..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/b_icon_voicememo.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/b_slider_icon_minus.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/b_slider_icon_minus.png
deleted file mode 100755 (executable)
index 35affbe..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/b_slider_icon_minus.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/b_slider_icon_plus.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/b_slider_icon_plus.png
deleted file mode 100755 (executable)
index 63e81d4..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/b_slider_icon_plus.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/details_playback_icon.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/details_playback_icon.png
deleted file mode 100755 (executable)
index 0c21d09..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/details_playback_icon.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/more_option_icon_delete.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/more_option_icon_delete.png
deleted file mode 100755 (executable)
index 14afa15..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/more_option_icon_delete.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/more_option_icon_language.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/more_option_icon_language.png
deleted file mode 100755 (executable)
index 4fc54e0..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/more_option_icon_language.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/more_option_icon_stt_off.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/more_option_icon_stt_off.png
deleted file mode 100755 (executable)
index a589835..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/more_option_icon_stt_off.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/more_option_icon_stt_on.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/more_option_icon_stt_on.png
deleted file mode 100755 (executable)
index 98a4994..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/more_option_icon_stt_on.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/more_option_icon_stt_recording.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/more_option_icon_stt_recording.png
deleted file mode 100755 (executable)
index b36704c..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/more_option_icon_stt_recording.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/play_volume_slider_ic.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/play_volume_slider_ic.png
deleted file mode 100755 (executable)
index 4359d3f..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/play_volume_slider_ic.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_ic_menu_delete_holo_dark.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_ic_menu_delete_holo_dark.png
deleted file mode 100755 (executable)
index 0539342..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_ic_menu_delete_holo_dark.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_ic_menu_selectall_holo_dark.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_ic_menu_selectall_holo_dark.png
deleted file mode 100755 (executable)
index f8fc3c3..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_ic_menu_selectall_holo_dark.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_ic_popup_btn_check.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_ic_popup_btn_check.png
deleted file mode 100755 (executable)
index 085687e..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_ic_popup_btn_check.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_ic_popup_btn_delete.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_ic_popup_btn_delete.png
deleted file mode 100755 (executable)
index a978d8f..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_ic_popup_btn_delete.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_toast_popup_memory_full_gear.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_toast_popup_memory_full_gear.png
deleted file mode 100755 (executable)
index 325d5e7..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_toast_popup_memory_full_gear.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_toast_popup_memory_full_mobile.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_toast_popup_memory_full_mobile.png
deleted file mode 100755 (executable)
index 1d66741..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/tw_toast_popup_memory_full_mobile.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voice_mamo_slider_mute.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voice_mamo_slider_mute.png
deleted file mode 100755 (executable)
index e0a6b86..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voice_mamo_slider_mute.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voice_mamo_slider_volume_on.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voice_mamo_slider_volume_on.png
deleted file mode 100755 (executable)
index 3db692a..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voice_mamo_slider_volume_on.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voice_memo_slash.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voice_memo_slash.png
deleted file mode 100755 (executable)
index baac1ec..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voice_memo_slash.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicememo_effect.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicememo_effect.png
deleted file mode 100755 (executable)
index 6541ef7..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicememo_effect.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_bt_headset_image.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_bt_headset_image.png
deleted file mode 100755 (executable)
index 3e083e4..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_bt_headset_image.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_bt_mobile_image.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_bt_mobile_image.png
deleted file mode 100755 (executable)
index b55d97e..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_bt_mobile_image.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_btn_pause.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_btn_pause.png
deleted file mode 100755 (executable)
index bb88f36..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_btn_pause.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_btn_play.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_btn_play.png
deleted file mode 100755 (executable)
index 0f2b959..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_btn_play.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_effect_bg.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_effect_bg.png
deleted file mode 100755 (executable)
index 0c23d67..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_effect_bg.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_icon_stt.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_icon_stt.png
deleted file mode 100755 (executable)
index fb8dd9e..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/voicerecorder_icon_stt.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/weather_toast_popup_show_on_divice.png b/test/Voicememo2020/VoiceMemo/res/2019_images_icons/weather_toast_popup_show_on_divice.png
deleted file mode 100755 (executable)
index 213a2f7..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/2019_images_icons/weather_toast_popup_show_on_divice.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/b_icon_voicememo.png b/test/Voicememo2020/VoiceMemo/res/b_icon_voicememo.png
deleted file mode 100755 (executable)
index d8badf8..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/b_icon_voicememo.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/button/details_vol_icon_off.png b/test/Voicememo2020/VoiceMemo/res/button/details_vol_icon_off.png
deleted file mode 100755 (executable)
index 0365f31..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/button/details_vol_icon_off.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/button/details_vol_icon_on.png b/test/Voicememo2020/VoiceMemo/res/button/details_vol_icon_on.png
deleted file mode 100755 (executable)
index 45ebc05..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/button/details_vol_icon_on.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/details_playback_icon.png b/test/Voicememo2020/VoiceMemo/res/details_playback_icon.png
deleted file mode 100755 (executable)
index 1008ed8..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/details_playback_icon.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/details_vol_icon_off.png b/test/Voicememo2020/VoiceMemo/res/details_vol_icon_off.png
deleted file mode 100755 (executable)
index 5540e46..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/details_vol_icon_off.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/details_vol_icon_on.png b/test/Voicememo2020/VoiceMemo/res/details_vol_icon_on.png
deleted file mode 100755 (executable)
index cf4a9b1..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/details_vol_icon_on.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/icons/b_slider_icon_minus.png b/test/Voicememo2020/VoiceMemo/res/icons/b_slider_icon_minus.png
deleted file mode 100755 (executable)
index 35affbe..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/icons/b_slider_icon_minus.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/icons/b_slider_icon_plus.png b/test/Voicememo2020/VoiceMemo/res/icons/b_slider_icon_plus.png
deleted file mode 100755 (executable)
index 63e81d4..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/icons/b_slider_icon_plus.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/more_option_icon_delete.png b/test/Voicememo2020/VoiceMemo/res/more_option_icon_delete.png
deleted file mode 100755 (executable)
index 79eaec4..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/more_option_icon_delete.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/more_option_icon_language.png b/test/Voicememo2020/VoiceMemo/res/more_option_icon_language.png
deleted file mode 100755 (executable)
index 88e0dd8..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/more_option_icon_language.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/more_option_icon_stt_list.png b/test/Voicememo2020/VoiceMemo/res/more_option_icon_stt_list.png
deleted file mode 100755 (executable)
index 30cb5f8..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/more_option_icon_stt_list.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/more_option_icon_stt_off.png b/test/Voicememo2020/VoiceMemo/res/more_option_icon_stt_off.png
deleted file mode 100755 (executable)
index 75b19aa..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/more_option_icon_stt_off.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/more_option_icon_stt_on.png b/test/Voicememo2020/VoiceMemo/res/more_option_icon_stt_on.png
deleted file mode 100755 (executable)
index abe0151..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/more_option_icon_stt_on.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/record_controller_bg.png b/test/Voicememo2020/VoiceMemo/res/record_controller_bg.png
deleted file mode 100755 (executable)
index ad24ab7..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/record_controller_bg.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/record_stop_icon.png b/test/Voicememo2020/VoiceMemo/res/record_stop_icon.png
deleted file mode 100755 (executable)
index 639beda..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/record_stop_icon.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/recording_icon_cancel.png b/test/Voicememo2020/VoiceMemo/res/recording_icon_cancel.png
deleted file mode 100755 (executable)
index 47dae79..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/recording_icon_cancel.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/recording_icon_pause.png b/test/Voicememo2020/VoiceMemo/res/recording_icon_pause.png
deleted file mode 100755 (executable)
index 02439cc..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/recording_icon_pause.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/recording_stt_icon.png b/test/Voicememo2020/VoiceMemo/res/recording_stt_icon.png
deleted file mode 100755 (executable)
index f311f4b..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/recording_stt_icon.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/tw_ic_popup_btn_check.png b/test/Voicememo2020/VoiceMemo/res/tw_ic_popup_btn_check.png
deleted file mode 100755 (executable)
index f20f62e..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/tw_ic_popup_btn_check.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/tw_ic_popup_btn_delete.png b/test/Voicememo2020/VoiceMemo/res/tw_ic_popup_btn_delete.png
deleted file mode 100755 (executable)
index 5f346cb..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/tw_ic_popup_btn_delete.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/tw_no_item_bg.png b/test/Voicememo2020/VoiceMemo/res/tw_no_item_bg.png
deleted file mode 100755 (executable)
index 2e06046..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/tw_no_item_bg.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/voice_mamo_slider_btn_bg.png b/test/Voicememo2020/VoiceMemo/res/voice_mamo_slider_btn_bg.png
deleted file mode 100755 (executable)
index c061f95..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/voice_mamo_slider_btn_bg.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/voice_mamo_slider_mute.png b/test/Voicememo2020/VoiceMemo/res/voice_mamo_slider_mute.png
deleted file mode 100755 (executable)
index 4b88d58..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/voice_mamo_slider_mute.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/voice_mamo_slider_volume_on.png b/test/Voicememo2020/VoiceMemo/res/voice_mamo_slider_volume_on.png
deleted file mode 100755 (executable)
index af75774..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/voice_mamo_slider_volume_on.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/voicememo_effect.png b/test/Voicememo2020/VoiceMemo/res/voicememo_effect.png
deleted file mode 100755 (executable)
index 6541ef7..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/voicememo_effect.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/voicerecorder_btn_bg.png b/test/Voicememo2020/VoiceMemo/res/voicerecorder_btn_bg.png
deleted file mode 100755 (executable)
index 691a5fa..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/voicerecorder_btn_bg.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/voicerecorder_btn_pause.png b/test/Voicememo2020/VoiceMemo/res/voicerecorder_btn_pause.png
deleted file mode 100755 (executable)
index fa9086f..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/voicerecorder_btn_pause.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/voicerecorder_btn_play.png b/test/Voicememo2020/VoiceMemo/res/voicerecorder_btn_play.png
deleted file mode 100755 (executable)
index 0032808..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/voicerecorder_btn_play.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/voicerecorder_btn_stop.png b/test/Voicememo2020/VoiceMemo/res/voicerecorder_btn_stop.png
deleted file mode 100755 (executable)
index b427c57..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/voicerecorder_btn_stop.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/voicerecorder_icon_stt.png b/test/Voicememo2020/VoiceMemo/res/voicerecorder_icon_stt.png
deleted file mode 100755 (executable)
index 431e0df..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/voicerecorder_icon_stt.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/voicerecorder_icon_stt_off.png b/test/Voicememo2020/VoiceMemo/res/voicerecorder_icon_stt_off.png
deleted file mode 100755 (executable)
index c5da5e6..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/voicerecorder_icon_stt_off.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/voicerecorder_stop_bg.png b/test/Voicememo2020/VoiceMemo/res/voicerecorder_stop_bg.png
deleted file mode 100755 (executable)
index 46672b8..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/voicerecorder_stop_bg.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/voicerecorder_stop_icon.png b/test/Voicememo2020/VoiceMemo/res/voicerecorder_stop_icon.png
deleted file mode 100755 (executable)
index cfbb20b..0000000
Binary files a/test/Voicememo2020/VoiceMemo/res/voicerecorder_stop_icon.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/res/xml/accessoryservices.xml b/test/Voicememo2020/VoiceMemo/res/xml/accessoryservices.xml
deleted file mode 100755 (executable)
index e3f5d04..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources>
-       <application name="org.tizen.example.VoiceMemo.Tizen.Wearable" >
-               <serviceProfile
-                               id="/dotnetvoicememo/filetransfer"
-                               name="FileTransferSender"
-                               role="consumer"
-                               version="1.0"
-                               serviceLimit="ONE_PEERAGENT"
-                               serviceTimeout="30">
-                       <supportedTransports>
-                               <transport type="TRANSPORT_BT" />
-                               <transport type="TRANSPORT_WIFI"/>
-                               <transport type="TRANSPORT_BLE"/>
-                       </supportedTransports>
-                       <serviceChannel
-                                       id="113"
-                                       dataRate="low"
-                                       priority="low"
-                                       reliability= "enable">
-                       </serviceChannel>
-               </serviceProfile>
-       </application>
-</resources>
diff --git a/test/Voicememo2020/VoiceMemo/shared/res/VoiceMemo.png b/test/Voicememo2020/VoiceMemo/shared/res/VoiceMemo.png
deleted file mode 100755 (executable)
index 93e9a03..0000000
Binary files a/test/Voicememo2020/VoiceMemo/shared/res/VoiceMemo.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/shared/res/splash.png b/test/Voicememo2020/VoiceMemo/shared/res/splash.png
deleted file mode 100755 (executable)
index 9563a40..0000000
Binary files a/test/Voicememo2020/VoiceMemo/shared/res/splash.png and /dev/null differ
diff --git a/test/Voicememo2020/VoiceMemo/tizen-manifest.xml b/test/Voicememo2020/VoiceMemo/tizen-manifest.xml
deleted file mode 100755 (executable)
index 89c94d1..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<manifest package="org.tizen.example.VoiceMemo" version="1.0.0" api-version="4" xmlns="http://tizen.org/ns/packages">
-    <profile name="wearable" />
-    <ui-application appid="org.tizen.example.VoiceMemo" exec="VoiceMemo.dll" multiple="false" nodisplay="false" taskmanage="true" type="dotnet" splash-screen-display="true" process-pool="true" launch_mode="single">
-        <label xml:lang="en-us">Voice Recorder</label>
-        <label xml:lang="hi-in">.NET वॉइस मेमो</label>
-        <label xml:lang="ko-kr">닷넷 음성 메모</label>
-        <icon>VoiceMemo.png</icon>
-        <metadata key="http://tizen.org/metadata/prefer_dotnet_aot" value="true" />
-        <background-category value="media" />
-        <splash-screens />
-    </ui-application>
-    <shortcut-list />
-    <privileges>
-        <privilege>http://tizen.org/privilege/mediastorage</privilege>
-        <privilege>http://tizen.org/privilege/externalstorage</privilege>
-        <privilege>http://tizen.org/privilege/externalstorage.appdata</privilege>
-        <privilege>http://tizen.org/privilege/recorder</privilege>
-        <privilege>http://tizen.org/privilege/volume.set</privilege>
-        <privilege>http://tizen.org/privilege/content.write</privilege>
-        <privilege>http://tizen.org/privilege/window.priority.set</privilege>
-        <privilege>http://developer.samsung.com/tizen/privilege/screen.top</privilege>
-    </privileges>
-    <dependencies />
-    <provides-appdefined-privileges />
-    <feature name="http://tizen.org/feature/microphone">true</feature>
-    <feature name="http://tizen.org/feature/speech.recognition">true</feature>
-</manifest>
-
-<!--<splash-screens>
-  <splash-screen orientation="portrait" src="splash.png" type="img" />
-</splash-screens>-->
\ No newline at end of file
diff --git a/test/Weather/LICENSE b/test/Weather/LICENSE
deleted file mode 100755 (executable)
index 51a2cd2..0000000
+++ /dev/null
@@ -1,201 +0,0 @@
-                                 Apache License
-                           Version 2.0, January 2004
-                        http://www.apache.org/licenses/
-
-   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
-   1. Definitions.
-
-      "License" shall mean the terms and conditions for use, reproduction,
-      and distribution as defined by Sections 1 through 9 of this document.
-
-      "Licensor" shall mean the copyright owner or entity authorized by
-      the copyright owner that is granting the License.
-
-      "Legal Entity" shall mean the union of the acting entity and all
-      other entities that control, are controlled by, or are under common
-      control with that entity. For the purposes of this definition,
-      "control" means (i) the power, direct or indirect, to cause the
-      direction or management of such entity, whether by contract or
-      otherwise, or (ii) ownership of fifty percent (50%) or more of the
-      outstanding shares, or (iii) beneficial ownership of such entity.
-
-      "You" (or "Your") shall mean an individual or Legal Entity
-      exercising permissions granted by this License.
-
-      "Source" form shall mean the preferred form for making modifications,
-      including but not limited to software source code, documentation
-      source, and configuration files.
-
-      "Object" form shall mean any form resulting from mechanical
-      transformation or translation of a Source form, including but
-      not limited to compiled object code, generated documentation,
-      and conversions to other media types.
-
-      "Work" shall mean the work of authorship, whether in Source or
-      Object form, made available under the License, as indicated by a
-      copyright notice that is included in or attached to the work
-      (an example is provided in the Appendix below).
-
-      "Derivative Works" shall mean any work, whether in Source or Object
-      form, that is based on (or derived from) the Work and for which the
-      editorial revisions, annotations, elaborations, or other modifications
-      represent, as a whole, an original work of authorship. For the purposes
-      of this License, Derivative Works shall not include works that remain
-      separable from, or merely link (or bind by name) to the interfaces of,
-      the Work and Derivative Works thereof.
-
-      "Contribution" shall mean any work of authorship, including
-      the original version of the Work and any modifications or additions
-      to that Work or Derivative Works thereof, that is intentionally
-      submitted to Licensor for inclusion in the Work by the copyright owner
-      or by an individual or Legal Entity authorized to submit on behalf of
-      the copyright owner. For the purposes of this definition, "submitted"
-      means any form of electronic, verbal, or written communication sent
-      to the Licensor or its representatives, including but not limited to
-      communication on electronic mailing lists, source code control systems,
-      and issue tracking systems that are managed by, or on behalf of, the
-      Licensor for the purpose of discussing and improving the Work, but
-      excluding communication that is conspicuously marked or otherwise
-      designated in writing by the copyright owner as "Not a Contribution."
-
-      "Contributor" shall mean Licensor and any individual or Legal Entity
-      on behalf of whom a Contribution has been received by Licensor and
-      subsequently incorporated within the Work.
-
-   2. Grant of Copyright License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      copyright license to reproduce, prepare Derivative Works of,
-      publicly display, publicly perform, sublicense, and distribute the
-      Work and such Derivative Works in Source or Object form.
-
-   3. Grant of Patent License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      (except as stated in this section) patent license to make, have made,
-      use, offer to sell, sell, import, and otherwise transfer the Work,
-      where such license applies only to those patent claims licensable
-      by such Contributor that are necessarily infringed by their
-      Contribution(s) alone or by combination of their Contribution(s)
-      with the Work to which such Contribution(s) was submitted. If You
-      institute patent litigation against any entity (including a
-      cross-claim or counterclaim in a lawsuit) alleging that the Work
-      or a Contribution incorporated within the Work constitutes direct
-      or contributory patent infringement, then any patent licenses
-      granted to You under this License for that Work shall terminate
-      as of the date such litigation is filed.
-
-   4. Redistribution. You may reproduce and distribute copies of the
-      Work or Derivative Works thereof in any medium, with or without
-      modifications, and in Source or Object form, provided that You
-      meet the following conditions:
-
-      (a) You must give any other recipients of the Work or
-          Derivative Works a copy of this License; and
-
-      (b) You must cause any modified files to carry prominent notices
-          stating that You changed the files; and
-
-      (c) You must retain, in the Source form of any Derivative Works
-          that You distribute, all copyright, patent, trademark, and
-          attribution notices from the Source form of the Work,
-          excluding those notices that do not pertain to any part of
-          the Derivative Works; and
-
-      (d) If the Work includes a "NOTICE" text file as part of its
-          distribution, then any Derivative Works that You distribute must
-          include a readable copy of the attribution notices contained
-          within such NOTICE file, excluding those notices that do not
-          pertain to any part of the Derivative Works, in at least one
-          of the following places: within a NOTICE text file distributed
-          as part of the Derivative Works; within the Source form or
-          documentation, if provided along with the Derivative Works; or,
-          within a display generated by the Derivative Works, if and
-          wherever such third-party notices normally appear. The contents
-          of the NOTICE file are for informational purposes only and
-          do not modify the License. You may add Your own attribution
-          notices within Derivative Works that You distribute, alongside
-          or as an addendum to the NOTICE text from the Work, provided
-          that such additional attribution notices cannot be construed
-          as modifying the License.
-
-      You may add Your own copyright statement to Your modifications and
-      may provide additional or different license terms and conditions
-      for use, reproduction, or distribution of Your modifications, or
-      for any such Derivative Works as a whole, provided Your use,
-      reproduction, and distribution of the Work otherwise complies with
-      the conditions stated in this License.
-
-   5. Submission of Contributions. Unless You explicitly state otherwise,
-      any Contribution intentionally submitted for inclusion in the Work
-      by You to the Licensor shall be under the terms and conditions of
-      this License, without any additional terms or conditions.
-      Notwithstanding the above, nothing herein shall supersede or modify
-      the terms of any separate license agreement you may have executed
-      with Licensor regarding such Contributions.
-
-   6. Trademarks. This License does not grant permission to use the trade
-      names, trademarks, service marks, or product names of the Licensor,
-      except as required for reasonable and customary use in describing the
-      origin of the Work and reproducing the content of the NOTICE file.
-
-   7. Disclaimer of Warranty. Unless required by applicable law or
-      agreed to in writing, Licensor provides the Work (and each
-      Contributor provides its Contributions) on an "AS IS" BASIS,
-      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
-      implied, including, without limitation, any warranties or conditions
-      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
-      PARTICULAR PURPOSE. You are solely responsible for determining the
-      appropriateness of using or redistributing the Work and assume any
-      risks associated with Your exercise of permissions under this License.
-
-   8. Limitation of Liability. In no event and under no legal theory,
-      whether in tort (including negligence), contract, or otherwise,
-      unless required by applicable law (such as deliberate and grossly
-      negligent acts) or agreed to in writing, shall any Contributor be
-      liable to You for damages, including any direct, indirect, special,
-      incidental, or consequential damages of any character arising as a
-      result of this License or out of the use or inability to use the
-      Work (including but not limited to damages for loss of goodwill,
-      work stoppage, computer failure or malfunction, or any and all
-      other commercial damages or losses), even if such Contributor
-      has been advised of the possibility of such damages.
-
-   9. Accepting Warranty or Additional Liability. While redistributing
-      the Work or Derivative Works thereof, You may choose to offer,
-      and charge a fee for, acceptance of support, warranty, indemnity,
-      or other liability obligations and/or rights consistent with this
-      License. However, in accepting such obligations, You may act only
-      on Your own behalf and on Your sole responsibility, not on behalf
-      of any other Contributor, and only if You agree to indemnify,
-      defend, and hold each Contributor harmless for any liability
-      incurred by, or claims asserted against, such Contributor by reason
-      of your accepting any such warranty or additional liability.
-
-   END OF TERMS AND CONDITIONS
-
-   APPENDIX: How to apply the Apache License to your work.
-
-      To apply the Apache License to your work, attach the following
-      boilerplate notice, with the fields enclosed by brackets "{}"
-      replaced with your own identifying information. (Don't include
-      the brackets!)  The text should be enclosed in the appropriate
-      comment syntax for the file format. We also recommend that a
-      file or class name and description of purpose be included on the
-      same "printed page" as the copyright notice for easier
-      identification within third-party archives.
-
-   Copyright 2017 Samsung
-
-   Licensed under the Apache License, Version 2.0 (the "License");
-   you may not use this file except in compliance with the License.
-   You may obtain a copy of the License at
-
-       http://www.apache.org/licenses/LICENSE-2.0
-
-   Unless required by applicable law or agreed to in writing, software
-   distributed under the License is distributed on an "AS IS" BASIS,
-   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-   See the License for the specific language governing permissions and
-   limitations under the License.
diff --git a/test/Weather/README.md b/test/Weather/README.md
deleted file mode 100755 (executable)
index a2a1021..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-# Weather
-
-This is a wearable port of [Weather](../../Mobile/Weather/) mobile app. 
-
-Weather is a sample application that demonstrates how to obtain data provided by the RESTful API using the [OpenWeatherMap](<https://openweathermap.org/>) API.
-
-![MainPage1](./Screenshots/weatherApp_screen01.png)
-![MainPage2](./Screenshots/weatherApp_screen02.png)
-![MainPage3](./Screenshots/weatherApp_screen03.png)
-![CurrentWeatherPage](./Screenshots/weatherApp_screen04.png)
-![ForecastPage](./Screenshots/weatherApp_screen05.png)
-
-### Features
-* Checking current weather (sample includes some US cities, check included [json files](./Weather/Data/) for details).
-* Checking forecast for next 5 days.
-
-### Prerequisites
-* [Visual Studio](https://www.visualstudio.com/) - Buildtool, IDE
-* [Visual Studio Tools for Tizen](https://developer.tizen.org/development/tizen-.net-preview/visual-studio-tools-tizen) - Visual Studio plugin for Tizen .NET application development
-* [Tizen CircularUI](https://samsung.github.io/Tizen.CircularUI/guide/Quickstart.html)
-
-### Author
-* Original mobile app was created by Michał Kołodziejski
-* Port to wearable by [@Piotr12](https://github.com/Piotr12)
diff --git a/test/Weather/Screenshots/weatherApp_screen01.png b/test/Weather/Screenshots/weatherApp_screen01.png
deleted file mode 100755 (executable)
index 68c4b0e..0000000
Binary files a/test/Weather/Screenshots/weatherApp_screen01.png and /dev/null differ
diff --git a/test/Weather/Screenshots/weatherApp_screen02.png b/test/Weather/Screenshots/weatherApp_screen02.png
deleted file mode 100755 (executable)
index b653d86..0000000
Binary files a/test/Weather/Screenshots/weatherApp_screen02.png and /dev/null differ
diff --git a/test/Weather/Screenshots/weatherApp_screen03.png b/test/Weather/Screenshots/weatherApp_screen03.png
deleted file mode 100755 (executable)
index 6817a45..0000000
Binary files a/test/Weather/Screenshots/weatherApp_screen03.png and /dev/null differ
diff --git a/test/Weather/Screenshots/weatherApp_screen04.png b/test/Weather/Screenshots/weatherApp_screen04.png
deleted file mode 100755 (executable)
index 8b27cc4..0000000
Binary files a/test/Weather/Screenshots/weatherApp_screen04.png and /dev/null differ
diff --git a/test/Weather/Screenshots/weatherApp_screen05.png b/test/Weather/Screenshots/weatherApp_screen05.png
deleted file mode 100755 (executable)
index 1d45d23..0000000
Binary files a/test/Weather/Screenshots/weatherApp_screen05.png and /dev/null differ
diff --git a/test/Weather/Weather.sln b/test/Weather/Weather.sln
deleted file mode 100755 (executable)
index aa33270..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 15
-VisualStudioVersion = 15.0.27703.2026
-MinimumVisualStudioVersion = 10.0.40219.1
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Weather", "Weather\Weather.csproj", "{E6312AF9-328D-4A17-9677-1341036CB73A}"
-EndProject
-Global
-       GlobalSection(SolutionConfigurationPlatforms) = preSolution
-               Debug|Any CPU = Debug|Any CPU
-               Release|Any CPU = Release|Any CPU
-       EndGlobalSection
-       GlobalSection(ProjectConfigurationPlatforms) = postSolution
-               {E6312AF9-328D-4A17-9677-1341036CB73A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {E6312AF9-328D-4A17-9677-1341036CB73A}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {E6312AF9-328D-4A17-9677-1341036CB73A}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {E6312AF9-328D-4A17-9677-1341036CB73A}.Release|Any CPU.Build.0 = Release|Any CPU
-       EndGlobalSection
-       GlobalSection(SolutionProperties) = preSolution
-               HideSolutionNode = FALSE
-       EndGlobalSection
-       GlobalSection(ExtensibilityGlobals) = postSolution
-               SolutionGuid = {86318113-EF47-4428-AF81-F34D84489808}
-       EndGlobalSection
-EndGlobal
diff --git a/test/Weather/Weather/App.cs b/test/Weather/Weather/App.cs
deleted file mode 100755 (executable)
index 6983d55..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using Weather.Config;
-using Weather.Views;
-using Xamarin.Forms;
-
-namespace Weather
-{
-    /// <summary>
-    /// Main App class - derives Xamarin.Forms application functionalities
-    /// </summary>
-    public class App : Application
-    {
-        #region properties
-
-        /// <summary>
-        /// Gets or sets value that indicates if weather and forecast for selected city is initialized.
-        /// </summary>
-        public bool IsInitialized { get; set; }
-
-        #endregion
-
-
-        #region methods
-
-        /// <summary>
-        /// App constructor. 
-        /// Makes sure that API Key is defined.
-        /// </summary>
-        public App()
-        {
-            // Its a NavigationPage based app that ...
-            MainPage =  new NavigationPage();
-
-            if (!ApiConfig.IsApiKeyDefined())
-            {
-                // either complains about a missing API key ...
-                MainPage.Navigation.PushAsync(new MissingKeyErrorPage(), false);
-            }
-            else
-            {
-                // or gets you started with a MainPage UI.
-                MainPage.Navigation.PushAsync(new MainPage(), false);                
-            }
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Behaviors/CountryCodeValidatorBehavior.cs b/test/Weather/Weather/Behaviors/CountryCodeValidatorBehavior.cs
deleted file mode 100755 (executable)
index 4e3538a..0000000
+++ /dev/null
@@ -1,109 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System.Collections.Generic;
-using System.Linq;
-using Weather.Models.Location;
-using Weather.Service;
-using Weather.Utils;
-using Xamarin.Forms;
-
-namespace Weather.Behaviors
-{
-    /// <summary>
-    /// Behavior class that validates user input in country entry.
-    /// </summary>
-    public class CountryCodeValidatorBehavior : Behavior<Entry>
-    {
-        #region fields
-
-        /// <summary>
-        /// Contains list of all supported countries.
-        /// </summary>
-        private CountryProvider _provider;
-
-        #endregion
-
-        #region properties
-
-        /// <summary>
-        /// Maximum length of user input.
-        /// </summary>
-        public int MaxLength { get; set; }
-
-        #endregion
-
-        #region methods
-
-        /// <summary>
-        /// Default class constructor.
-        /// </summary>
-        public CountryCodeValidatorBehavior()
-        {
-            LoadCountryList();
-        }
-
-        /// <summary>
-        /// Called when behavior is attached to entry.
-        /// </summary>
-        /// <param name="bindable">Object to attach behavior.</param>
-        protected override void OnAttachedTo(Entry bindable)
-        {
-            base.OnAttachedTo(bindable);
-            bindable.TextChanged += EntryTextChanged;
-        }
-
-        /// <summary>
-        /// Called when behavior is detached from entry.
-        /// </summary>
-        /// <param name="bindable">Object to detach behavior.</param>
-        protected override void OnDetachingFrom(Entry bindable)
-        {
-            base.OnDetachingFrom(bindable);
-            bindable.TextChanged -= EntryTextChanged;
-        }
-
-        /// <summary>
-        /// Callback method, invoked when entry text is changed.
-        /// Changes user input to uppercase and forbids to enter more than "MaxLength" number of characters.
-        /// </summary>
-        /// <param name="sender">Object that invoked event.</param>
-        /// <param name="textChangedEventArgs">Event arguments.</param>
-        private void EntryTextChanged(object sender, TextChangedEventArgs textChangedEventArgs)
-        {
-            if (!(sender is Entry entry))
-            {
-                return;
-            }
-
-            entry.Text = entry.Text.Length > MaxLength
-                ? textChangedEventArgs.OldTextValue.ToUpper()
-                : textChangedEventArgs.NewTextValue.ToUpper();
-
-            entry.TextColor = _provider.Validate(entry.Text) ? Color.Gray : Color.Red;
-        }
-
-        /// <summary>
-        /// Loads supported city list from file.
-        /// </summary>
-        private void LoadCountryList()
-        {
-            var jsonFileReader = new JsonFileReader<IList<Country>>("Weather.Data.", "country.list.json");
-            jsonFileReader.Read();
-            _provider = new CountryProvider(jsonFileReader.Result.AsQueryable());
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Behaviors/CurrentWeatherPageBehavior.cs b/test/Weather/Weather/Behaviors/CurrentWeatherPageBehavior.cs
deleted file mode 100755 (executable)
index ffc67c8..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-using Xamarin.Forms;
-
-namespace Weather.Behaviors
-{
-    /// <summary>
-    /// Content page behavior that allows to bind command to "Appearing" event.
-    /// </summary>
-    public class CurrentWeatherPageBehavior : Behavior<ContentPage>
-    {
-        #region properties
-
-        /// <summary>
-        /// Bindable property that allows to set command that will be executed during page appearing.
-        /// </summary>
-        public static readonly BindableProperty AppearingCommandProperty =
-            BindableProperty.Create(nameof(AppearingCommand), typeof(Command), typeof(CurrentWeatherPageBehavior),
-                default(Command));
-
-        /// <summary>
-        /// Command that will be executed during page appearing.
-        /// </summary>
-        public Command AppearingCommand
-        {
-            get => (Command)GetValue(AppearingCommandProperty);
-            set => SetValue(AppearingCommandProperty, value);
-        }
-
-        #endregion
-
-        #region methods
-
-        /// <summary>
-        /// Called when behavior is attached to content page.
-        /// </summary>
-        /// <param name="bindable">Object to attach behavior.</param>
-        protected override void OnAttachedTo(ContentPage bindable)
-        {
-            base.OnAttachedTo(bindable);
-            bindable.Appearing += PageOnAppearing;
-        }
-
-        /// <summary>
-        /// Called when behavior is detached from content page.
-        /// </summary>
-        /// <param name="bindable">Object to detach behavior.</param>
-        protected override void OnDetachingFrom(ContentPage bindable)
-        {
-            base.OnDetachingFrom(bindable);
-            bindable.Appearing -= PageOnAppearing;
-        }
-
-        /// <summary>
-        /// Called when content page is appearing.
-        /// </summary>
-        /// <param name="sender">Content page that sent event.</param>
-        /// <param name="eventArgs">Event arguments.</param>
-        private void PageOnAppearing(object sender, EventArgs eventArgs)
-        {
-            if (!((App)Application.Current).IsInitialized)
-            {
-                AppearingCommand?.Execute(sender);
-            }
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Config/ApiConfig.cs b/test/Weather/Weather/Config/ApiConfig.cs
deleted file mode 100755 (executable)
index fd9771d..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-namespace Weather.Config
-{
-    /// <summary>
-    /// Foreign API configuration.
-    /// </summary>
-    public static class ApiConfig
-    {
-        #region fields
-
-        /// <summary>
-        /// Open Weather Map API key.
-        /// </summary>
-        /// <remarks>
-        /// To get your API key please visit http://openweathermap.org/appid
-        /// </remarks>
-        public const string API_KEY = "7c0d9b7749d114f810fe9a84b0b8ffdc";
-
-        /// <summary>
-        /// "OpenWeatherMap" current weather resource.
-        /// </summary>
-        public const string WEATHER_URL = "https://api.openweathermap.org/data/2.5/weather";
-
-        /// <summary>
-        /// "OpenWeatherMap" forecast resource.
-        /// </summary>
-        public const string FORECAST_URL = "https://api.openweathermap.org/data/2.5/forecast";
-
-        /// <summary>
-        /// "OpenWeatherMap" icon location template.
-        /// </summary>
-        public const string WEATHER_ICON = "http://openweathermap.org/img/w/{0}.png";
-
-        /// <summary>
-        /// Google API URL for getting timezones information.
-        /// </summary>
-        public const string TIMEZONE_URL = "https://maps.googleapis.com/maps/api/timezone/json";
-
-        #endregion
-
-        #region methods
-
-        /// <summary>
-        /// Checks if API key is defined.
-        /// </summary>
-        /// <returns>True if API key is set, otherwise false.</returns>
-        public static bool IsApiKeyDefined()
-        {    
-            return !string.IsNullOrEmpty(API_KEY);
-        }
-
-        #endregion
-    }
-}
diff --git a/test/Weather/Weather/Controls/DoubleLabel.xaml b/test/Weather/Weather/Controls/DoubleLabel.xaml
deleted file mode 100755 (executable)
index a1ba71e..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-
-<StackLayout xmlns="http://xamarin.com/schemas/2014/forms"
-             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-             x:Class="Weather.Controls.DoubleLabel"
-             x:Name="Root"
-             Orientation="Vertical"
-             HorizontalOptions="CenterAndExpand">
-
-    <Label Text="{Binding Source={x:Reference Name=Root}, Path=MainText}"
-           FontSize="8"
-           HorizontalTextAlignment="Center" />
-    <Label Text="{Binding Source={x:Reference Name=Root}, Path=SubText}"
-           HorizontalTextAlignment="Center"
-           TextColor="LightSlateGray"
-           FontSize="6" />
-
-</StackLayout>
\ No newline at end of file
diff --git a/test/Weather/Weather/Controls/DoubleLabel.xaml.cs b/test/Weather/Weather/Controls/DoubleLabel.xaml.cs
deleted file mode 100755 (executable)
index ff5700e..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using Xamarin.Forms;
-
-namespace Weather.Controls
-{
-    /// <summary>
-    /// Interaction logic for DoubleLabel.xaml.
-    /// </summary>
-    public partial class DoubleLabel
-    {
-        #region properties
-
-        /// <summary>
-        /// Bindable property that allows to set main text of control.
-        /// </summary>
-        public static readonly BindableProperty MainTextProperty =
-            BindableProperty.Create(nameof(MainText), typeof(string), typeof(DoubleLabel), default(string));
-
-        /// <summary>
-        /// Bindable property that allows to set sub text of control.
-        /// </summary>
-        public static readonly BindableProperty SubTextProperty =
-            BindableProperty.Create(nameof(SubText), typeof(string), typeof(DoubleLabel), default(string));
-
-        /// <summary>
-        /// Gets or sets main text of control.
-        /// </summary>
-        public string MainText
-        {
-            get => (string)GetValue(MainTextProperty);
-            set => SetValue(MainTextProperty, value);
-        }
-
-        /// <summary>
-        /// Gets or sets sub text of control.
-        /// </summary>
-        public string SubText
-        {
-            get => (string)GetValue(SubTextProperty);
-            set => SetValue(SubTextProperty, value);
-        }
-
-        #endregion
-
-        #region methods
-
-        /// <summary>
-        /// Default constructor.
-        /// </summary>
-        public DoubleLabel()
-        {
-            InitializeComponent();
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Converters/DegreeToCardinalDirectionConverter.cs b/test/Weather/Weather/Converters/DegreeToCardinalDirectionConverter.cs
deleted file mode 100755 (executable)
index f2f4a40..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-using System.Globalization;
-using Xamarin.Forms;
-
-namespace Weather.Converters
-{
-    /// <summary>
-    /// Class that converts double value to cardinal direction.
-    /// </summary>
-    public class DegreeToCardinalDirectionConverter : IValueConverter
-    {
-        #region methods
-
-        /// <summary>
-        /// Converts double to cardinal value.
-        /// </summary>
-        /// <param name="value">The value produced by the binding source.</param>
-        /// <param name="targetType">The type of the binding target property.</param>
-        /// <param name="parameter">The converter parameter to use.</param>
-        /// <param name="culture">The culture to use in the converter.</param>
-        /// <returns>Cardinal direction.</returns>
-        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            var directions = new[]
-            {
-                "North", "North-East", "East", "South-East", "South", "South-West", "West", "North-West", "North"
-            };
-
-            return value is double degree ? directions[(int)Math.Round(degree % 360 / 45)] : string.Empty;
-        }
-
-        /// <summary>
-        /// Does nothing, but it must be defined, because it is in "IValueConverter" interface.
-        /// </summary>
-        /// <param name="value">The value produced by the binding source.</param>
-        /// <param name="targetType">The type of the binding target property.</param>
-        /// <param name="parameter">The converter parameter to use.</param>
-        /// <param name="culture">The culture to use in the converter.</param>
-        /// <returns>Converted value.</returns>
-        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            throw new NotImplementedException();
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Converters/ErrorMessageConverter.cs b/test/Weather/Weather/Converters/ErrorMessageConverter.cs
deleted file mode 100755 (executable)
index 51ba99e..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-using System.Globalization;
-using Xamarin.Forms;
-
-namespace Weather.Converters
-{
-    /// <summary>
-    /// Class that converts possible null string to error message.
-    /// </summary>
-    public class ErrorMessageConverter : IValueConverter
-    {
-        #region methods
-
-        /// <summary>
-        /// Converts double to cardinal value.
-        /// </summary>
-        /// <param name="value">The value produced by the binding source.</param>
-        /// <param name="targetType">The type of the binding target property.</param>
-        /// <param name="parameter">The converter parameter to use.</param>
-        /// <param name="culture">The culture to use in the converter.</param>
-        /// <returns>Cardinal direction.</returns>
-        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            var message = "None";
-
-            if (value is string msg)
-            {
-                message = msg;
-            }
-
-            return message;
-        }
-
-
-
-        /// <summary>
-        /// Does nothing, but it must be defined, because it is in "IValueConverter" interface.
-        /// </summary>
-        /// <param name="value">The value produced by the binding source.</param>
-        /// <param name="targetType">The type of the binding target property.</param>
-        /// <param name="parameter">The converter parameter to use.</param>
-        /// <param name="culture">The culture to use in the converter.</param>
-        /// <returns>Converted value.</returns>
-        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            throw new NotImplementedException();
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Converters/ImageSourceConverter.cs b/test/Weather/Weather/Converters/ImageSourceConverter.cs
deleted file mode 100755 (executable)
index cc73557..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-using System.Globalization;
-using Weather.Config;
-using Xamarin.Forms;
-
-namespace Weather.Converters
-{
-    /// <summary>
-    /// Class that converts weather icon id to image source.
-    /// </summary>
-    public class ImageSourceConverter : IValueConverter
-    {
-        #region methods
-
-        /// <summary>
-        /// Converts weather icon id to image source.
-        /// </summary>
-        /// <param name="value">The value produced by the binding source.</param>
-        /// <param name="targetType">The type of the binding target property.</param>
-        /// <param name="parameter">The converter parameter to use.</param>
-        /// <param name="culture">The culture to use in the converter.</param>
-        /// <returns>URI to image.</returns>
-        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            var url = string.Empty;
-
-            if (value is string iconCode)
-            {
-                url = string.Format(ApiConfig.WEATHER_ICON, iconCode);
-            }
-
-            return url;
-        }
-
-        /// <summary>
-        /// Does nothing, but it must be defined, because it is in "IValueConverter" interface.
-        /// </summary>
-        /// <param name="value">The value produced by the binding source.</param>
-        /// <param name="targetType">The type of the binding target property.</param>
-        /// <param name="parameter">The converter parameter to use.</param>
-        /// <param name="culture">The culture to use in the converter.</param>
-        /// <returns>Converted value.</returns>
-        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            throw new NotImplementedException();
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Converters/MeasurementSystemConverter.cs b/test/Weather/Weather/Converters/MeasurementSystemConverter.cs
deleted file mode 100755 (executable)
index 2f8e500..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-using System.Globalization;
-using Weather.Utils;
-using Xamarin.Forms;
-
-namespace Weather.Converters
-{
-    /// <summary>
-    /// Class that converts double value to value with unit.
-    /// </summary>
-    public class MeasurementSystemConverter : IValueConverter
-    {
-        #region methods
-
-        /// <summary>
-        /// Converts double value to value with unit.
-        /// Unit depends on converter parameter.
-        /// </summary>
-        /// <param name="value">The value produced by the binding source.</param>
-        /// <param name="targetType">The type of the binding target property.</param>
-        /// <param name="parameter">The converter parameter to use.</param>
-        /// <param name="culture">The culture to use in the converter.</param>
-        /// <returns>Cardinal direction.</returns>
-        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            if (value is double && parameter is string)
-            {
-                return string.Format(new UnitFormatter(), "{0:" + parameter + "}", value);
-            }
-
-            return string.Empty;
-        }
-
-        /// <summary>
-        /// Does nothing, but it must be defined, because it is in "IValueConverter" interface.
-        /// </summary>
-        /// <param name="value">The value produced by the binding source.</param>
-        /// <param name="targetType">The type of the binding target property.</param>
-        /// <param name="parameter">The converter parameter to use.</param>
-        /// <param name="culture">The culture to use in the converter.</param>
-        /// <returns>Converted value.</returns>
-        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            throw new NotImplementedException();
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Converters/TimeStampToDateConverter.cs b/test/Weather/Weather/Converters/TimeStampToDateConverter.cs
deleted file mode 100755 (executable)
index 7f0e321..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-using System.Globalization;
-using Weather.Utils;
-using Xamarin.Forms;
-
-namespace Weather.Converters
-{
-    /// <summary>
-    /// Class that converts time stamp to date object.
-    /// </summary>
-    public class TimeStampToDateConverter : IValueConverter
-    {
-        #region methods
-
-        /// <summary>
-        /// Converts time stamp to date object.
-        /// </summary>
-        /// <param name="value">The value produced by the binding source.</param>
-        /// <param name="targetType">The type of the binding target property.</param>
-        /// <param name="parameter">The converter parameter to use.</param>
-        /// <param name="culture">The culture to use in the converter.</param>
-        /// <returns>Date and hour in local format.</returns>
-        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            var date = string.Empty;
-
-            if (value is ulong time)
-            {
-                date = TimeStamp.Convert(time).ToLocalTime().ToString("g");
-            }
-
-            return date;
-        }
-
-        /// <summary>
-        /// Does nothing, but it must be defined, because it is in "IValueConverter" interface.
-        /// </summary>
-        /// <param name="value">The value produced by the binding source.</param>
-        /// <param name="targetType">The type of the binding target property.</param>
-        /// <param name="parameter">The converter parameter to use.</param>
-        /// <param name="culture">The culture to use in the converter.</param>
-        /// <returns>Converted value.</returns>
-        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            throw new NotImplementedException();
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Converters/TimeStampToTimeConverter.cs b/test/Weather/Weather/Converters/TimeStampToTimeConverter.cs
deleted file mode 100755 (executable)
index e8ccb9e..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-using System.Globalization;
-using Weather.Utils;
-using Xamarin.Forms;
-
-namespace Weather.Converters
-{
-    /// <summary>
-    /// Class that converts timestamp to time of the day.
-    /// </summary>
-    public class TimeStampToTimeConverter : IValueConverter
-    {
-        #region methods
-
-        /// <summary>
-        /// Converts timestamp to time of the day.
-        /// </summary>
-        /// <param name="value">The value produced by the binding source.</param>
-        /// <param name="targetType">The type of the binding target property.</param>
-        /// <param name="parameter">The converter parameter to use.</param>
-        /// <param name="culture">The culture to use in the converter.</param>
-        /// <returns>Time of the day.</returns>
-        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            var date = string.Empty;
-
-            if (value is ulong time)
-            {
-                if (parameter is Models.Location.TimeZone timeZone)
-                {
-                    date = TimeStamp.Convert(time).AddSeconds(timeZone.Offset)
-                        .ToString(culture.DateTimeFormat.ShortTimePattern);
-                }
-                else
-                {
-                    date = TimeStamp.Convert((ulong)value).ToString(culture.DateTimeFormat.ShortTimePattern);
-                }
-            }
-
-            return date;
-        }
-
-        /// <summary>
-        /// Does nothing, but it must be defined, because it is in "IValueConverter" interface.
-        /// </summary>
-        /// <param name="value">The value produced by the binding source.</param>
-        /// <param name="targetType">The type of the binding target property.</param>
-        /// <param name="parameter">The converter parameter to use.</param>
-        /// <param name="culture">The culture to use in the converter.</param>
-        /// <returns>Converted value.</returns>
-        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            throw new NotImplementedException();
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Converters/TimeStampWithOffsetAndTimezoneConverter.cs b/test/Weather/Weather/Converters/TimeStampWithOffsetAndTimezoneConverter.cs
deleted file mode 100755 (executable)
index cd974b7..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-using System.Globalization;
-using Weather.Utils;
-using Xamarin.Forms;
-
-namespace Weather.Converters
-{
-    /// <summary>
-    /// Class that converts timestamp to region date and time with timezone.
-    /// </summary>
-    public class TimeStampWithOffsetAndTimezoneConverter : IValueConverter
-    {
-        #region methods
-
-        /// <summary>
-        /// Converts timestamp to date and time with timezone.
-        /// Timezone depends on converter parameter.
-        /// </summary>
-        /// <param name="value">The value produced by the binding source.</param>
-        /// <param name="targetType">The type of the binding target property.</param>
-        /// <param name="parameter">The converter parameter to use.</param>
-        /// <param name="culture">The culture to use in the converter.</param>
-        /// <returns>Cardinal direction.</returns>
-        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            if (value is ulong timestamp && parameter is BindableString offsetString &&
-                long.TryParse(offsetString.Value, out long offset))
-            {
-                var time = TimeStamp.Convert(timestamp).AddSeconds(offset).ToString("g");
-                return $"{time} (GMT{offset / 60 / 60:+#;-#;+0})";
-            }
-
-            return string.Empty;
-        }
-
-        /// <summary>
-        /// Does nothing, but it must be defined, because it is in "IValueConverter" interface.
-        /// </summary>
-        /// <param name="value">The value produced by the binding source.</param>
-        /// <param name="targetType">The type of the binding target property.</param>
-        /// <param name="parameter">The converter parameter to use.</param>
-        /// <param name="culture">The culture to use in the converter.</param>
-        /// <returns>Converted value.</returns>
-        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            throw new NotImplementedException();
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Converters/TimeStampWithOffsetConverter.cs b/test/Weather/Weather/Converters/TimeStampWithOffsetConverter.cs
deleted file mode 100755 (executable)
index 33cd10f..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-using System.Globalization;
-using Weather.Utils;
-using Xamarin.Forms;
-
-namespace Weather.Converters
-{
-    /// <summary>
-    /// Class that converts timestamp to region date and time.
-    /// </summary>
-    public class TimeStampWithOffsetConverter : IValueConverter
-    {
-        #region methods
-
-        /// <summary>
-        /// Converts timestamp to date and time with timezone.
-        /// Timezone depends on converter parameter.
-        /// </summary>
-        /// <param name="value">The value produced by the binding source.</param>
-        /// <param name="targetType">The type of the binding target property.</param>
-        /// <param name="parameter">The converter parameter to use.</param>
-        /// <param name="culture">The culture to use in the converter.</param>
-        /// <returns>Cardinal direction.</returns>
-        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            if (value is ulong timestamp && parameter is BindableString offsetString &&
-                long.TryParse(offsetString.Value, out long offset))
-            {
-                return TimeStamp.Convert(timestamp).AddSeconds(offset).ToShortTimeString();
-            }
-
-            return string.Empty;
-        }
-
-        /// <summary>
-        /// Does nothing, but it must be defined, because it is in "IValueConverter" interface.
-        /// </summary>
-        /// <param name="value">The value produced by the binding source.</param>
-        /// <param name="targetType">The type of the binding target property.</param>
-        /// <param name="parameter">The converter parameter to use.</param>
-        /// <param name="culture">The culture to use in the converter.</param>
-        /// <returns>Converted value.</returns>
-        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-        {
-            throw new NotImplementedException();
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Data/city.list.json b/test/Weather/Weather/Data/city.list.json
deleted file mode 100755 (executable)
index b35d979..0000000
+++ /dev/null
@@ -1,2702 +0,0 @@
-[
-  {
-    "id": 5128638,
-    "name": "New York",
-    "country": "US",
-    "coord": {
-      "lon": -75.499901,
-      "lat": 43.000351
-    }
-  },
-  {
-    "id": 5368361,
-    "name": "Los Angeles",
-    "country": "US",
-    "coord": {
-      "lon": -118.243683,
-      "lat": 34.052231
-    }
-  },
-  {
-    "id": 4887398,
-    "name": "Chicago",
-    "country": "US",
-    "coord": {
-      "lon": -87.650047,
-      "lat": 41.850029
-    }
-  },
-  {
-    "id": 4699066,
-    "name": "Houston",
-    "country": "US",
-    "coord": {
-      "lon": -95.363274,
-      "lat": 29.763281
-    }
-  },
-  {
-    "id": 5308655,
-    "name": "Phoenix",
-    "country": "US",
-    "coord": {
-      "lon": -112.074043,
-      "lat": 33.44838
-    }
-  },
-  {
-    "id": 4560349,
-    "name": "Philadelphia",
-    "country": "US",
-    "coord": {
-      "lon": -75.163788,
-      "lat": 39.952339
-    }
-  },
-  {
-    "id": 4726206,
-    "name": "San Antonio",
-    "country": "US",
-    "coord": {
-      "lon": -98.493629,
-      "lat": 29.42412
-    }
-  },
-  {
-    "id": 5391811,
-    "name": "San Diego",
-    "country": "US",
-    "coord": {
-      "lon": -117.157257,
-      "lat": 32.715328
-    }
-  },
-  {
-    "id": 4684888,
-    "name": "Dallas",
-    "country": "US",
-    "coord": {
-      "lon": -96.806671,
-      "lat": 32.783058
-    }
-  },
-  {
-    "id": 5392171,
-    "name": "San Jose",
-    "country": "US",
-    "coord": {
-      "lon": -121.894958,
-      "lat": 37.33939
-    }
-  },
-  {
-    "id": 4254010,
-    "name": "Austin",
-    "country": "US",
-    "coord": {
-      "lon": -85.808029,
-      "lat": 38.758389
-    }
-  },
-  {
-    "id": 4241704,
-    "name": "Jacksonville",
-    "country": "US",
-    "coord": {
-      "lon": -90.229012,
-      "lat": 39.73394
-    }
-  },
-  {
-    "id": 5391959,
-    "name": "San Francisco",
-    "country": "US",
-    "coord": {
-      "lon": -122.419418,
-      "lat": 37.774929
-    }
-  },
-  {
-    "id": 4256038,
-    "name": "Columbus",
-    "country": "US",
-    "coord": {
-      "lon": -85.921379,
-      "lat": 39.201439
-    }
-  },
-  {
-    "id": 4861716,
-    "name": "Indianapolis",
-    "country": "US",
-    "coord": {
-      "lon": -92.433517,
-      "lat": 41.39695
-    }
-  },
-  {
-    "id": 4691930,
-    "name": "Fort Worth",
-    "country": "US",
-    "coord": {
-      "lon": -97.320847,
-      "lat": 32.72541
-    }
-  },
-  {
-    "id": 4460243,
-    "name": "Charlotte",
-    "country": "US",
-    "coord": {
-      "lon": -80.843132,
-      "lat": 35.227089
-    }
-  },
-  {
-    "id": 5809844,
-    "name": "Seattle",
-    "country": "US",
-    "coord": {
-      "lon": -122.332069,
-      "lat": 47.606209
-    }
-  },
-  {
-    "id": 4463523,
-    "name": "Denver",
-    "country": "US",
-    "coord": {
-      "lon": -81.0298,
-      "lat": 35.53125
-    }
-  },
-  {
-    "id": 5520993,
-    "name": "El Paso",
-    "country": "US",
-    "coord": {
-      "lon": -106.486931,
-      "lat": 31.75872
-    }
-  },
-  {
-    "id": 4880731,
-    "name": "Washington",
-    "country": "US",
-    "coord": {
-      "lon": -91.69294,
-      "lat": 41.299179
-    }
-  },
-  {
-    "id": 4317656,
-    "name": "Boston",
-    "country": "US",
-    "coord": {
-      "lon": -92.055679,
-      "lat": 29.883261
-    }
-  },
-  {
-    "id": 4990729,
-    "name": "Detroit",
-    "country": "US",
-    "coord": {
-      "lon": -83.045753,
-      "lat": 42.331429
-    }
-  },
-  {
-    "id": 5003243,
-    "name": "Nashville",
-    "country": "US",
-    "coord": {
-      "lon": -85.093048,
-      "lat": 42.60281
-    }
-  },
-  {
-    "id": 4641239,
-    "name": "Memphis",
-    "country": "US",
-    "coord": {
-      "lon": -90.048981,
-      "lat": 35.149529
-    }
-  },
-  {
-    "id": 4720131,
-    "name": "Portland",
-    "country": "US",
-    "coord": {
-      "lon": -97.323883,
-      "lat": 27.877251
-    }
-  },
-  {
-    "id": 4544349,
-    "name": "Oklahoma City",
-    "country": "US",
-    "coord": {
-      "lon": -97.516434,
-      "lat": 35.46756
-    }
-  },
-  {
-    "id": 5506956,
-    "name": "Las Vegas",
-    "country": "US",
-    "coord": {
-      "lon": -115.137222,
-      "lat": 36.174969
-    }
-  },
-  {
-    "id": 4299276,
-    "name": "Louisville",
-    "country": "US",
-    "coord": {
-      "lon": -85.759407,
-      "lat": 38.254238
-    }
-  },
-  {
-    "id": 4347778,
-    "name": "Baltimore",
-    "country": "US",
-    "coord": {
-      "lon": -76.61219,
-      "lat": 39.290379
-    }
-  },
-  {
-    "id": 5263045,
-    "name": "Milwaukee",
-    "country": "US",
-    "coord": {
-      "lon": -87.906471,
-      "lat": 43.038898
-    }
-  },
-  {
-    "id": 5454711,
-    "name": "Albuquerque",
-    "country": "US",
-    "coord": {
-      "lon": -106.651138,
-      "lat": 35.084492
-    }
-  },
-  {
-    "id": 5318313,
-    "name": "Tucson",
-    "country": "US",
-    "coord": {
-      "lon": -110.926483,
-      "lat": 32.221741
-    }
-  },
-  {
-    "id": 4692400,
-    "name": "Fresno",
-    "country": "US",
-    "coord": {
-      "lon": -95.447441,
-      "lat": 29.538851
-    }
-  },
-  {
-    "id": 5389489,
-    "name": "Sacramento",
-    "country": "US",
-    "coord": {
-      "lon": -121.4944,
-      "lat": 38.58157
-    }
-  },
-  {
-    "id": 5304391,
-    "name": "Mesa",
-    "country": "US",
-    "coord": {
-      "lon": -111.822639,
-      "lat": 33.422272
-    }
-  },
-  {
-    "id": 4273837,
-    "name": "Kansas City",
-    "country": "US",
-    "coord": {
-      "lon": -94.627457,
-      "lat": 39.11417
-    }
-  },
-  {
-    "id": 4180439,
-    "name": "Atlanta",
-    "country": "US",
-    "coord": {
-      "lon": -84.387978,
-      "lat": 33.749001
-    }
-  },
-  {
-    "id": 5125086,
-    "name": "Long Beach",
-    "country": "US",
-    "coord": {
-      "lon": -73.657913,
-      "lat": 40.58844
-    }
-  },
-  {
-    "id": 5417598,
-    "name": "Colorado Springs",
-    "country": "US",
-    "coord": {
-      "lon": -104.821358,
-      "lat": 38.833881
-    }
-  },
-  {
-    "id": 4247770,
-    "name": "Raleigh",
-    "country": "US",
-    "coord": {
-      "lon": -88.531998,
-      "lat": 37.826988
-    }
-  },
-  {
-    "id": 4164138,
-    "name": "Miami",
-    "country": "US",
-    "coord": {
-      "lon": -80.193657,
-      "lat": 25.774269
-    }
-  },
-  {
-    "id": 4791259,
-    "name": "Virginia Beach",
-    "country": "US",
-    "coord": {
-      "lon": -75.977982,
-      "lat": 36.852928
-    }
-  },
-  {
-    "id": 5074472,
-    "name": "Omaha",
-    "country": "US",
-    "coord": {
-      "lon": -95.93779,
-      "lat": 41.25861
-    }
-  },
-  {
-    "id": 4276543,
-    "name": "Oakland",
-    "country": "US",
-    "coord": {
-      "lon": -95.636368,
-      "lat": 39.066669
-    }
-  },
-  {
-    "id": 5037649,
-    "name": "Minneapolis",
-    "country": "US",
-    "coord": {
-      "lon": -93.26384,
-      "lat": 44.979969
-    }
-  },
-  {
-    "id": 4553433,
-    "name": "Tulsa",
-    "country": "US",
-    "coord": {
-      "lon": -95.992783,
-      "lat": 36.15398
-    }
-  },
-  {
-    "id": 4282658,
-    "name": "Arlington",
-    "country": "US",
-    "coord": {
-      "lon": -84.307709,
-      "lat": 37.760639
-    }
-  },
-  {
-    "id": 4335045,
-    "name": "New Orleans",
-    "country": "US",
-    "coord": {
-      "lon": -90.075073,
-      "lat": 29.954651
-    }
-  },
-  {
-    "id": 4281730,
-    "name": "Wichita",
-    "country": "US",
-    "coord": {
-      "lon": -97.33754,
-      "lat": 37.692242
-    }
-  },
-  {
-    "id": 4188377,
-    "name": "Cleveland",
-    "country": "US",
-    "coord": {
-      "lon": -83.763237,
-      "lat": 34.597038
-    }
-  },
-  {
-    "id": 4174757,
-    "name": "Tampa",
-    "country": "US",
-    "coord": {
-      "lon": -82.458427,
-      "lat": 27.947519
-    }
-  },
-  {
-    "id": 5325738,
-    "name": "Bakersfield",
-    "country": "US",
-    "coord": {
-      "lon": -119.018707,
-      "lat": 35.373291
-    }
-  },
-  {
-    "id": 4883817,
-    "name": "Aurora",
-    "country": "US",
-    "coord": {
-      "lon": -88.320068,
-      "lat": 41.760578
-    }
-  },
-  {
-    "id": 5856195,
-    "name": "Honolulu",
-    "country": "US",
-    "coord": {
-      "lon": -157.858337,
-      "lat": 21.30694
-    }
-  },
-  {
-    "id": 5323810,
-    "name": "Anaheim",
-    "country": "US",
-    "coord": {
-      "lon": -117.914497,
-      "lat": 33.835289
-    }
-  },
-  {
-    "id": 5392900,
-    "name": "Santa Ana",
-    "country": "US",
-    "coord": {
-      "lon": -117.867828,
-      "lat": 33.745571
-    }
-  },
-  {
-    "id": 4683416,
-    "name": "Corpus Christi",
-    "country": "US",
-    "coord": {
-      "lon": -97.396378,
-      "lat": 27.800579
-    }
-  },
-  {
-    "id": 4522586,
-    "name": "Riverside",
-    "country": "US",
-    "coord": {
-      "lon": -84.1241,
-      "lat": 39.779781
-    }
-  },
-  {
-    "id": 4297983,
-    "name": "Lexington",
-    "country": "US",
-    "coord": {
-      "lon": -84.477722,
-      "lat": 37.988689
-    }
-  },
-  {
-    "id": 4407066,
-    "name": "Saint Louis",
-    "country": "US",
-    "coord": {
-      "lon": -90.197891,
-      "lat": 38.62727
-    }
-  },
-  {
-    "id": 5399020,
-    "name": "Stockton",
-    "country": "US",
-    "coord": {
-      "lon": -121.290779,
-      "lat": 37.957699
-    }
-  },
-  {
-    "id": 5206379,
-    "name": "Pittsburgh",
-    "country": "US",
-    "coord": {
-      "lon": -79.995888,
-      "lat": 40.44062
-    }
-  },
-  {
-    "id": 5045360,
-    "name": "Saint Paul",
-    "country": "US",
-    "coord": {
-      "lon": -93.093269,
-      "lat": 44.944408
-    }
-  },
-  {
-    "id": 4508722,
-    "name": "Cincinnati",
-    "country": "US",
-    "coord": {
-      "lon": -84.456886,
-      "lat": 39.161999
-    }
-  },
-  {
-    "id": 5879400,
-    "name": "Anchorage",
-    "country": "US",
-    "coord": {
-      "lon": -149.900284,
-      "lat": 61.21806
-    }
-  },
-  {
-    "id": 4294494,
-    "name": "Henderson",
-    "country": "US",
-    "coord": {
-      "lon": -87.590012,
-      "lat": 37.836151
-    }
-  },
-  {
-    "id": 4469146,
-    "name": "Greensboro",
-    "country": "US",
-    "coord": {
-      "lon": -79.791977,
-      "lat": 36.072639
-    }
-  },
-  {
-    "id": 4719457,
-    "name": "Plano",
-    "country": "US",
-    "coord": {
-      "lon": -96.698891,
-      "lat": 33.01984
-    }
-  },
-  {
-    "id": 4833930,
-    "name": "Newark",
-    "country": "US",
-    "coord": {
-      "lon": -89.227608,
-      "lat": 42.542229
-    }
-  },
-  {
-    "id": 5072006,
-    "name": "Lincoln",
-    "country": "US",
-    "coord": {
-      "lon": -96.666962,
-      "lat": 40.799999
-    }
-  },
-  {
-    "id": 5174035,
-    "name": "Toledo",
-    "country": "US",
-    "coord": {
-      "lon": -83.555206,
-      "lat": 41.66394
-    }
-  },
-  {
-    "id": 4167147,
-    "name": "Orlando",
-    "country": "US",
-    "coord": {
-      "lon": -81.379242,
-      "lat": 28.53834
-    }
-  },
-  {
-    "id": 5336899,
-    "name": "Chula Vista",
-    "country": "US",
-    "coord": {
-      "lon": -117.084198,
-      "lat": 32.640049
-    }
-  },
-  {
-    "id": 5359777,
-    "name": "Irvine",
-    "country": "US",
-    "coord": {
-      "lon": -117.823112,
-      "lat": 33.66946
-    }
-  },
-  {
-    "id": 4920423,
-    "name": "Fort Wayne",
-    "country": "US",
-    "coord": {
-      "lon": -85.12886,
-      "lat": 41.1306
-    }
-  },
-  {
-    "id": 5099836,
-    "name": "Jersey City",
-    "country": "US",
-    "coord": {
-      "lon": -74.077637,
-      "lat": 40.728161
-    }
-  },
-  {
-    "id": 4464368,
-    "name": "Durham",
-    "country": "US",
-    "coord": {
-      "lon": -78.898621,
-      "lat": 35.99403
-    }
-  },
-  {
-    "id": 4171563,
-    "name": "Saint Petersburg",
-    "country": "US",
-    "coord": {
-      "lon": -82.679268,
-      "lat": 27.770861
-    }
-  },
-  {
-    "id": 4705349,
-    "name": "Laredo",
-    "country": "US",
-    "coord": {
-      "lon": -99.507538,
-      "lat": 27.506411
-    }
-  },
-  {
-    "id": 5019588,
-    "name": "Buffalo",
-    "country": "US",
-    "coord": {
-      "lon": -93.874687,
-      "lat": 45.171909
-    }
-  },
-  {
-    "id": 4434663,
-    "name": "Madison",
-    "country": "US",
-    "coord": {
-      "lon": -90.115356,
-      "lat": 32.461811
-    }
-  },
-  {
-    "id": 5525577,
-    "name": "Lubbock",
-    "country": "US",
-    "coord": {
-      "lon": -101.855171,
-      "lat": 33.577862
-    }
-  },
-  {
-    "id": 4049176,
-    "name": "Chandler",
-    "country": "US",
-    "coord": {
-      "lon": -94.382729,
-      "lat": 39.300282
-    }
-  },
-  {
-    "id": 5313457,
-    "name": "Scottsdale",
-    "country": "US",
-    "coord": {
-      "lon": -111.899033,
-      "lat": 33.509209
-    }
-  },
-  {
-    "id": 5577409,
-    "name": "Glendale",
-    "country": "US",
-    "coord": {
-      "lon": -105.366379,
-      "lat": 40.081928
-    }
-  },
-  {
-    "id": 5511077,
-    "name": "Reno",
-    "country": "US",
-    "coord": {
-      "lon": -119.813797,
-      "lat": 39.529629
-    }
-  },
-  {
-    "id": 4776222,
-    "name": "Norfolk",
-    "country": "US",
-    "coord": {
-      "lon": -76.285217,
-      "lat": 36.846809
-    }
-  },
-  {
-    "id": 4499612,
-    "name": "Winston-Salem",
-    "country": "US",
-    "coord": {
-      "lon": -80.244217,
-      "lat": 36.099861
-    }
-  },
-  {
-    "id": 5509403,
-    "name": "North Las Vegas",
-    "country": "US",
-    "coord": {
-      "lon": -115.1175,
-      "lat": 36.19886
-    }
-  },
-  {
-    "id": 4700168,
-    "name": "Irving",
-    "country": "US",
-    "coord": {
-      "lon": -96.948891,
-      "lat": 32.814018
-    }
-  },
-  {
-    "id": 4752186,
-    "name": "Chesapeake",
-    "country": "US",
-    "coord": {
-      "lon": -76.27494,
-      "lat": 36.819038
-    }
-  },
-  {
-    "id": 5295903,
-    "name": "Gilbert",
-    "country": "US",
-    "coord": {
-      "lon": -111.789032,
-      "lat": 33.352829
-    }
-  },
-  {
-    "id": 4158476,
-    "name": "Hialeah",
-    "country": "US",
-    "coord": {
-      "lon": -80.278107,
-      "lat": 25.857599
-    }
-  },
-  {
-    "id": 4693003,
-    "name": "Garland",
-    "country": "US",
-    "coord": {
-      "lon": -96.638878,
-      "lat": 32.912621
-    }
-  },
-  {
-    "id": 4920512,
-    "name": "Fremont",
-    "country": "US",
-    "coord": {
-      "lon": -84.932739,
-      "lat": 41.730881
-    }
-  },
-  {
-    "id": 4315588,
-    "name": "Baton Rouge",
-    "country": "US",
-    "coord": {
-      "lon": -91.154549,
-      "lat": 30.45075
-    }
-  },
-  {
-    "id": 4305974,
-    "name": "Richmond",
-    "country": "US",
-    "coord": {
-      "lon": -84.294647,
-      "lat": 37.74786
-    }
-  },
-  {
-    "id": 5586437,
-    "name": "Boise",
-    "country": "US",
-    "coord": {
-      "lon": -116.203453,
-      "lat": 43.613499
-    }
-  },
-  {
-    "id": 5391710,
-    "name": "San Bernardino",
-    "country": "US",
-    "coord": {
-      "lon": -117.289772,
-      "lat": 34.108341
-    }
-  },
-  {
-    "id": 5811696,
-    "name": "Spokane",
-    "country": "US",
-    "coord": {
-      "lon": -117.429077,
-      "lat": 47.65966
-    }
-  },
-  {
-    "id": 4853828,
-    "name": "Des Moines",
-    "country": "US",
-    "coord": {
-      "lon": -93.609108,
-      "lat": 41.60054
-    }
-  },
-  {
-    "id": 5373900,
-    "name": "Modesto",
-    "country": "US",
-    "coord": {
-      "lon": -120.99688,
-      "lat": 37.639099
-    }
-  },
-  {
-    "id": 4049979,
-    "name": "Birmingham",
-    "country": "US",
-    "coord": {
-      "lon": -86.80249,
-      "lat": 33.52066
-    }
-  },
-  {
-    "id": 5812944,
-    "name": "Tacoma",
-    "country": "US",
-    "coord": {
-      "lon": -122.44429,
-      "lat": 47.25288
-    }
-  },
-  {
-    "id": 5349755,
-    "name": "Fontana",
-    "country": "US",
-    "coord": {
-      "lon": -117.435051,
-      "lat": 34.092232
-    }
-  },
-  {
-    "id": 5043473,
-    "name": "Rochester",
-    "country": "US",
-    "coord": {
-      "lon": -92.469902,
-      "lat": 44.021629
-    }
-  },
-  {
-    "id": 5380184,
-    "name": "Oxnard",
-    "country": "US",
-    "coord": {
-      "lon": -119.177048,
-      "lat": 34.197498
-    }
-  },
-  {
-    "id": 5374732,
-    "name": "Moreno Valley",
-    "country": "US",
-    "coord": {
-      "lon": -117.230591,
-      "lat": 33.937519
-    }
-  },
-  {
-    "id": 4194474,
-    "name": "Fayetteville",
-    "country": "US",
-    "coord": {
-      "lon": -84.454933,
-      "lat": 33.44873
-    }
-  },
-  {
-    "id": 4883817,
-    "name": "Aurora",
-    "country": "US",
-    "coord": {
-      "lon": -88.320068,
-      "lat": 41.760578
-    }
-  },
-  {
-    "id": 5577409,
-    "name": "Glendale",
-    "country": "US",
-    "coord": {
-      "lon": -105.366379,
-      "lat": 40.081928
-    }
-  },
-  {
-    "id": 5145215,
-    "name": "Yonkers",
-    "country": "US",
-    "coord": {
-      "lon": -73.89875,
-      "lat": 40.93121
-    }
-  },
-  {
-    "id": 5358705,
-    "name": "Huntington Beach",
-    "country": "US",
-    "coord": {
-      "lon": -117.999229,
-      "lat": 33.660301
-    }
-  },
-  {
-    "id": 4076784,
-    "name": "Montgomery",
-    "country": "US",
-    "coord": {
-      "lon": -86.299973,
-      "lat": 32.36681
-    }
-  },
-  {
-    "id": 5516233,
-    "name": "Amarillo",
-    "country": "US",
-    "coord": {
-      "lon": -101.831299,
-      "lat": 35.222
-    }
-  },
-  {
-    "id": 4119403,
-    "name": "Little Rock",
-    "country": "US",
-    "coord": {
-      "lon": -92.289589,
-      "lat": 34.746479
-    }
-  },
-  {
-    "id": 4267427,
-    "name": "Akron",
-    "country": "US",
-    "coord": {
-      "lon": -97.015038,
-      "lat": 37.351688
-    }
-  },
-  {
-    "id": 4256038,
-    "name": "Columbus",
-    "country": "US",
-    "coord": {
-      "lon": -85.921379,
-      "lat": 39.201439
-    }
-  },
-  {
-    "id": 4180531,
-    "name": "Augusta",
-    "country": "US",
-    "coord": {
-      "lon": -81.974838,
-      "lat": 33.47097
-    }
-  },
-  {
-    "id": 4994358,
-    "name": "Grand Rapids",
-    "country": "US",
-    "coord": {
-      "lon": -85.668091,
-      "lat": 42.96336
-    }
-  },
-  {
-    "id": 4341513,
-    "name": "Shreveport",
-    "country": "US",
-    "coord": {
-      "lon": -93.750183,
-      "lat": 32.52515
-    }
-  },
-  {
-    "id": 5780993,
-    "name": "Salt Lake City",
-    "country": "US",
-    "coord": {
-      "lon": -111.891052,
-      "lat": 40.76078
-    }
-  },
-  {
-    "id": 4699540,
-    "name": "Huntsville",
-    "country": "US",
-    "coord": {
-      "lon": -95.550781,
-      "lat": 30.72353
-    }
-  },
-  {
-    "id": 4076598,
-    "name": "Mobile",
-    "country": "US",
-    "coord": {
-      "lon": -88.043053,
-      "lat": 30.694361
-    }
-  },
-  {
-    "id": 4174715,
-    "name": "Tallahassee",
-    "country": "US",
-    "coord": {
-      "lon": -84.280731,
-      "lat": 30.438259
-    }
-  },
-  {
-    "id": 4694482,
-    "name": "Grand Prairie",
-    "country": "US",
-    "coord": {
-      "lon": -96.99778,
-      "lat": 32.74596
-    }
-  },
-  {
-    "id": 4276873,
-    "name": "Overland Park",
-    "country": "US",
-    "coord": {
-      "lon": -94.670792,
-      "lat": 38.982231
-    }
-  },
-  {
-    "id": 4634946,
-    "name": "Knoxville",
-    "country": "US",
-    "coord": {
-      "lon": -83.920738,
-      "lat": 35.96064
-    }
-  },
-  {
-    "id": 4169171,
-    "name": "Port Saint Lucie",
-    "country": "US",
-    "coord": {
-      "lon": -80.350327,
-      "lat": 27.29393
-    }
-  },
-  {
-    "id": 4956184,
-    "name": "Worcester",
-    "country": "US",
-    "coord": {
-      "lon": -71.802292,
-      "lat": 42.262589
-    }
-  },
-  {
-    "id": 4149077,
-    "name": "Brownsville",
-    "country": "US",
-    "coord": {
-      "lon": -80.241158,
-      "lat": 25.82176
-    }
-  },
-  {
-    "id": 5317058,
-    "name": "Tempe",
-    "country": "US",
-    "coord": {
-      "lon": -111.909309,
-      "lat": 33.414768
-    }
-  },
-  {
-    "id": 5393049,
-    "name": "Santa Clarita",
-    "country": "US",
-    "coord": {
-      "lon": -118.542587,
-      "lat": 34.391659
-    }
-  },
-  {
-    "id": 4776024,
-    "name": "Newport News",
-    "country": "US",
-    "coord": {
-      "lon": -76.428001,
-      "lat": 36.97876
-    }
-  },
-  {
-    "id": 4149962,
-    "name": "Cape Coral",
-    "country": "US",
-    "coord": {
-      "lon": -81.949532,
-      "lat": 26.562851
-    }
-  },
-  {
-    "id": 4263408,
-    "name": "Providence",
-    "country": "US",
-    "coord": {
-      "lon": -86.176659,
-      "lat": 39.490879
-    }
-  },
-  {
-    "id": 4155966,
-    "name": "Fort Lauderdale",
-    "country": "US",
-    "coord": {
-      "lon": -80.143379,
-      "lat": 26.122311
-    }
-  },
-  {
-    "id": 4612862,
-    "name": "Chattanooga",
-    "country": "US",
-    "coord": {
-      "lon": -85.309677,
-      "lat": 35.045631
-    }
-  },
-  {
-    "id": 5385955,
-    "name": "Rancho Cucamonga",
-    "country": "US",
-    "coord": {
-      "lon": -117.593109,
-      "lat": 34.1064
-    }
-  },
-  {
-    "id": 5129603,
-    "name": "Oceanside",
-    "country": "US",
-    "coord": {
-      "lon": -73.640129,
-      "lat": 40.63871
-    }
-  },
-  {
-    "id": 5393287,
-    "name": "Santa Rosa",
-    "country": "US",
-    "coord": {
-      "lon": -122.714432,
-      "lat": 38.440472
-    }
-  },
-  {
-    "id": 5351515,
-    "name": "Garden Grove",
-    "country": "US",
-    "coord": {
-      "lon": -117.941452,
-      "lat": 33.773911
-    }
-  },
-  {
-    "id": 5814616,
-    "name": "Vancouver",
-    "country": "US",
-    "coord": {
-      "lon": -122.661491,
-      "lat": 45.638729
-    }
-  },
-  {
-    "id": 5231851,
-    "name": "Sioux Falls",
-    "country": "US",
-    "coord": {
-      "lon": -96.700333,
-      "lat": 43.549969
-    }
-  },
-  {
-    "id": 4924493,
-    "name": "Ontario",
-    "country": "US",
-    "coord": {
-      "lon": -85.382477,
-      "lat": 41.702271
-    }
-  },
-  {
-    "id": 4710178,
-    "name": "McKinney",
-    "country": "US",
-    "coord": {
-      "lon": -96.615273,
-      "lat": 33.19762
-    }
-  },
-  {
-    "id": 5346111,
-    "name": "Elk Grove",
-    "country": "US",
-    "coord": {
-      "lon": -121.37162,
-      "lat": 38.408798
-    }
-  },
-  {
-    "id": 4241691,
-    "name": "Jackson",
-    "country": "US",
-    "coord": {
-      "lon": -87.650299,
-      "lat": 38.721161
-    }
-  },
-  {
-    "id": 4168139,
-    "name": "Pembroke Pines",
-    "country": "US",
-    "coord": {
-      "lon": -80.223938,
-      "lat": 26.003151
-    }
-  },
-  {
-    "id": 4950065,
-    "name": "Salem",
-    "country": "US",
-    "coord": {
-      "lon": -70.896721,
-      "lat": 42.519539
-    }
-  },
-  {
-    "id": 4525353,
-    "name": "Springfield",
-    "country": "US",
-    "coord": {
-      "lon": -83.808823,
-      "lat": 39.924229
-    }
-  },
-  {
-    "id": 5339631,
-    "name": "Corona",
-    "country": "US",
-    "coord": {
-      "lon": -117.566437,
-      "lat": 33.87529
-    }
-  },
-  {
-    "id": 4992263,
-    "name": "Eugene",
-    "country": "US",
-    "coord": {
-      "lon": -84.706947,
-      "lat": 43.292252
-    }
-  },
-  {
-    "id": 5577147,
-    "name": "Fort Collins",
-    "country": "US",
-    "coord": {
-      "lon": -105.084419,
-      "lat": 40.585258
-    }
-  },
-  {
-    "id": 4905687,
-    "name": "Peoria",
-    "country": "US",
-    "coord": {
-      "lon": -89.588989,
-      "lat": 40.693649
-    }
-  },
-  {
-    "id": 4692559,
-    "name": "Frisco",
-    "country": "US",
-    "coord": {
-      "lon": -96.823608,
-      "lat": 33.150669
-    }
-  },
-  {
-    "id": 4459467,
-    "name": "Cary",
-    "country": "US",
-    "coord": {
-      "lon": -78.78112,
-      "lat": 35.791538
-    }
-  },
-  {
-    "id": 4516233,
-    "name": "Lancaster",
-    "country": "US",
-    "coord": {
-      "lon": -82.599327,
-      "lat": 39.71368
-    }
-  },
-  {
-    "id": 5355933,
-    "name": "Hayward",
-    "country": "US",
-    "coord": {
-      "lon": -122.080803,
-      "lat": 37.668819
-    }
-  },
-  {
-    "id": 5380698,
-    "name": "Palmdale",
-    "country": "US",
-    "coord": {
-      "lon": -118.116463,
-      "lat": 34.57943
-    }
-  },
-  {
-    "id": 5391295,
-    "name": "Salinas",
-    "country": "US",
-    "coord": {
-      "lon": -121.655502,
-      "lat": 36.677738
-    }
-  },
-  {
-    "id": 4744091,
-    "name": "Alexandria",
-    "country": "US",
-    "coord": {
-      "lon": -77.046921,
-      "lat": 38.80484
-    }
-  },
-  {
-    "id": 5100280,
-    "name": "Lakewood",
-    "country": "US",
-    "coord": {
-      "lon": -74.217644,
-      "lat": 40.097889
-    }
-  },
-  {
-    "id": 4525353,
-    "name": "Springfield",
-    "country": "US",
-    "coord": {
-      "lon": -83.808823,
-      "lat": 39.924229
-    }
-  },
-  {
-    "id": 4364990,
-    "name": "Pasadena",
-    "country": "US",
-    "coord": {
-      "lon": -76.571083,
-      "lat": 39.10733
-    }
-  },
-  {
-    "id": 5400075,
-    "name": "Sunnyvale",
-    "country": "US",
-    "coord": {
-      "lon": -122.036346,
-      "lat": 37.368832
-    }
-  },
-  {
-    "id": 4163123,
-    "name": "Macon",
-    "country": "US",
-    "coord": {
-      "lon": -84.279068,
-      "lat": 30.49464
-    }
-  },
-  {
-    "id": 4503665,
-    "name": "Pomona",
-    "country": "US",
-    "coord": {
-      "lon": -74.575157,
-      "lat": 39.478451
-    }
-  },
-  {
-    "id": 4158928,
-    "name": "Hollywood",
-    "country": "US",
-    "coord": {
-      "lon": -80.14949,
-      "lat": 26.0112
-    }
-  },
-  {
-    "id": 4273837,
-    "name": "Kansas City",
-    "country": "US",
-    "coord": {
-      "lon": -94.627457,
-      "lat": 39.11417
-    }
-  },
-  {
-    "id": 5346827,
-    "name": "Escondido",
-    "country": "US",
-    "coord": {
-      "lon": -117.086418,
-      "lat": 33.119209
-    }
-  },
-  {
-    "id": 4381424,
-    "name": "Clarksville",
-    "country": "US",
-    "coord": {
-      "lon": -90.905128,
-      "lat": 39.370602
-    }
-  },
-  {
-    "id": 4898015,
-    "name": "Joliet",
-    "country": "US",
-    "coord": {
-      "lon": -88.081734,
-      "lat": 41.525028
-    }
-  },
-  {
-    "id": 5043556,
-    "name": "Rockford",
-    "country": "US",
-    "coord": {
-      "lon": -93.734413,
-      "lat": 45.088299
-    }
-  },
-  {
-    "id": 5403022,
-    "name": "Torrance",
-    "country": "US",
-    "coord": {
-      "lon": -118.34063,
-      "lat": 33.83585
-    }
-  },
-  {
-    "id": 4903279,
-    "name": "Naperville",
-    "country": "US",
-    "coord": {
-      "lon": -88.147293,
-      "lat": 41.785858
-    }
-  },
-  {
-    "id": 5102466,
-    "name": "Paterson",
-    "country": "US",
-    "coord": {
-      "lon": -74.171806,
-      "lat": 40.916771
-    }
-  },
-  {
-    "id": 4221552,
-    "name": "Savannah",
-    "country": "US",
-    "coord": {
-      "lon": -81.099831,
-      "lat": 32.083542
-    }
-  },
-  {
-    "id": 4254942,
-    "name": "Bridgeport",
-    "country": "US",
-    "coord": {
-      "lon": -86.317207,
-      "lat": 39.732269
-    }
-  },
-  {
-    "id": 5508180,
-    "name": "Mesquite",
-    "country": "US",
-    "coord": {
-      "lon": -114.067192,
-      "lat": 36.805531
-    }
-  },
-  {
-    "id": 4703223,
-    "name": "Killeen",
-    "country": "US",
-    "coord": {
-      "lon": -97.727798,
-      "lat": 31.117121
-    }
-  },
-  {
-    "id": 5140405,
-    "name": "Syracuse",
-    "country": "US",
-    "coord": {
-      "lon": -76.147423,
-      "lat": 43.048119
-    }
-  },
-  {
-    "id": 4709796,
-    "name": "McAllen",
-    "country": "US",
-    "coord": {
-      "lon": -98.230011,
-      "lat": 26.203409
-    }
-  },
-  {
-    "id": 4364990,
-    "name": "Pasadena",
-    "country": "US",
-    "coord": {
-      "lon": -76.571083,
-      "lat": 39.10733
-    }
-  },
-  {
-    "id": 4884416,
-    "name": "Bellevue",
-    "country": "US",
-    "coord": {
-      "lon": -89.680099,
-      "lat": 40.684479
-    }
-  },
-  {
-    "id": 5351247,
-    "name": "Fullerton",
-    "country": "US",
-    "coord": {
-      "lon": -117.925339,
-      "lat": 33.870289
-    }
-  },
-  {
-    "id": 4716805,
-    "name": "Orange",
-    "country": "US",
-    "coord": {
-      "lon": -93.736549,
-      "lat": 30.092991
-    }
-  },
-  {
-    "id": 4509884,
-    "name": "Dayton",
-    "country": "US",
-    "coord": {
-      "lon": -84.191612,
-      "lat": 39.758949
-    }
-  },
-  {
-    "id": 4164601,
-    "name": "Miramar",
-    "country": "US",
-    "coord": {
-      "lon": -80.232269,
-      "lat": 25.98731
-    }
-  },
-  {
-    "id": 5441492,
-    "name": "Thornton",
-    "country": "US",
-    "coord": {
-      "lon": -104.971916,
-      "lat": 39.868038
-    }
-  },
-  {
-    "id": 5784607,
-    "name": "West Valley City",
-    "country": "US",
-    "coord": {
-      "lon": -112.001053,
-      "lat": 40.691608
-    }
-  },
-  {
-    "id": 4276614,
-    "name": "Olathe",
-    "country": "US",
-    "coord": {
-      "lon": -94.81913,
-      "lat": 38.881401
-    }
-  },
-  {
-    "id": 4762894,
-    "name": "Hampton",
-    "country": "US",
-    "coord": {
-      "lon": -76.345222,
-      "lat": 37.029869
-    }
-  },
-  {
-    "id": 5094264,
-    "name": "Warren",
-    "country": "US",
-    "coord": {
-      "lon": -71.892029,
-      "lat": 43.923119
-    }
-  },
-  {
-    "id": 5001929,
-    "name": "Midland",
-    "country": "US",
-    "coord": {
-      "lon": -84.247208,
-      "lat": 43.615582
-    }
-  },
-  {
-    "id": 4739526,
-    "name": "Waco",
-    "country": "US",
-    "coord": {
-      "lon": -97.146667,
-      "lat": 31.54933
-    }
-  },
-  {
-    "id": 4574324,
-    "name": "Charleston",
-    "country": "US",
-    "coord": {
-      "lon": -79.930923,
-      "lat": 32.776569
-    }
-  },
-  {
-    "id": 4614867,
-    "name": "Columbia",
-    "country": "US",
-    "coord": {
-      "lon": -87.035278,
-      "lat": 35.61507
-    }
-  },
-  {
-    "id": 4990694,
-    "name": "Denton",
-    "country": "US",
-    "coord": {
-      "lon": -83.524101,
-      "lat": 42.25782
-    }
-  },
-  {
-    "id": 4186416,
-    "name": "Carrollton",
-    "country": "US",
-    "coord": {
-      "lon": -85.076607,
-      "lat": 33.580109
-    }
-  },
-  {
-    "id": 5316428,
-    "name": "Surprise",
-    "country": "US",
-    "coord": {
-      "lon": -112.333221,
-      "lat": 33.630589
-    }
-  },
-  {
-    "id": 5007655,
-    "name": "Roseville",
-    "country": "US",
-    "coord": {
-      "lon": -82.937141,
-      "lat": 42.497261
-    }
-  },
-  {
-    "id": 5011148,
-    "name": "Sterling Heights",
-    "country": "US",
-    "coord": {
-      "lon": -83.030197,
-      "lat": 42.580311
-    }
-  },
-  {
-    "id": 4644312,
-    "name": "Murfreesboro",
-    "country": "US",
-    "coord": {
-      "lon": -86.390266,
-      "lat": 35.845619
-    }
-  },
-  {
-    "id": 4692748,
-    "name": "Gainesville",
-    "country": "US",
-    "coord": {
-      "lon": -98.521423,
-      "lat": 30.677679
-    }
-  },
-  {
-    "id": 4850751,
-    "name": "Cedar Rapids",
-    "country": "US",
-    "coord": {
-      "lon": -91.644073,
-      "lat": 42.008331
-    }
-  },
-  {
-    "id": 5406567,
-    "name": "Visalia",
-    "country": "US",
-    "coord": {
-      "lon": -119.292061,
-      "lat": 36.330231
-    }
-  },
-  {
-    "id": 4151909,
-    "name": "Coral Springs",
-    "country": "US",
-    "coord": {
-      "lon": -80.270599,
-      "lat": 26.271191
-    }
-  },
-  {
-    "id": 4839366,
-    "name": "New Haven",
-    "country": "US",
-    "coord": {
-      "lon": -72.928162,
-      "lat": 41.308151
-    }
-  },
-  {
-    "id": 4843564,
-    "name": "Stamford",
-    "country": "US",
-    "coord": {
-      "lon": -73.538727,
-      "lat": 41.053429
-    }
-  },
-  {
-    "id": 5402405,
-    "name": "Thousand Oaks",
-    "country": "US",
-    "coord": {
-      "lon": -118.837593,
-      "lat": 34.170559
-    }
-  },
-  {
-    "id": 4382072,
-    "name": "Concord",
-    "country": "US",
-    "coord": {
-      "lon": -90.357338,
-      "lat": 38.524502
-    }
-  },
-  {
-    "id": 5097598,
-    "name": "Elizabeth",
-    "country": "US",
-    "coord": {
-      "lon": -74.210701,
-      "lat": 40.66399
-    }
-  },
-  {
-    "id": 4540465,
-    "name": "Lafayette",
-    "country": "US",
-    "coord": {
-      "lon": -95.103569,
-      "lat": 35.173988
-    }
-  },
-  {
-    "id": 5159537,
-    "name": "Kent",
-    "country": "US",
-    "coord": {
-      "lon": -81.357887,
-      "lat": 41.153671
-    }
-  },
-  {
-    "id": 4280539,
-    "name": "Topeka",
-    "country": "US",
-    "coord": {
-      "lon": -95.67804,
-      "lat": 39.048328
-    }
-  },
-  {
-    "id": 5396003,
-    "name": "Simi Valley",
-    "country": "US",
-    "coord": {
-      "lon": -118.781479,
-      "lat": 34.269451
-    }
-  },
-  {
-    "id": 5750516,
-    "name": "Santa Clara",
-    "country": "US",
-    "coord": {
-      "lon": -123.131203,
-      "lat": 44.103458
-    }
-  },
-  {
-    "id": 4505542,
-    "name": "Athens",
-    "country": "US",
-    "coord": {
-      "lon": -82.101257,
-      "lat": 39.329239
-    }
-  },
-  {
-    "id": 4835797,
-    "name": "Hartford",
-    "country": "US",
-    "coord": {
-      "lon": -72.685089,
-      "lat": 41.76371
-    }
-  },
-  {
-    "id": 5406222,
-    "name": "Victorville",
-    "country": "US",
-    "coord": {
-      "lon": -117.291161,
-      "lat": 34.53611
-    }
-  },
-  {
-    "id": 4669635,
-    "name": "Abilene",
-    "country": "US",
-    "coord": {
-      "lon": -99.733139,
-      "lat": 32.448738
-    }
-  },
-  {
-    "id": 4543762,
-    "name": "Norman",
-    "country": "US",
-    "coord": {
-      "lon": -97.439484,
-      "lat": 35.222569
-    }
-  },
-  {
-    "id": 5405380,
-    "name": "Vallejo",
-    "country": "US",
-    "coord": {
-      "lon": -122.256638,
-      "lat": 38.104092
-    }
-  },
-  {
-    "id": 5327684,
-    "name": "Berkeley",
-    "country": "US",
-    "coord": {
-      "lon": -122.272751,
-      "lat": 37.87159
-    }
-  },
-  {
-    "id": 4724129,
-    "name": "Round Rock",
-    "country": "US",
-    "coord": {
-      "lon": -97.678902,
-      "lat": 30.508261
-    }
-  },
-  {
-    "id": 4984247,
-    "name": "Ann Arbor",
-    "country": "US",
-    "coord": {
-      "lon": -83.740883,
-      "lat": 42.277561
-    }
-  },
-  {
-    "id": 5059163,
-    "name": "Fargo",
-    "country": "US",
-    "coord": {
-      "lon": -96.789803,
-      "lat": 46.87719
-    }
-  },
-  {
-    "id": 4614867,
-    "name": "Columbia",
-    "country": "US",
-    "coord": {
-      "lon": -87.035278,
-      "lat": 35.61507
-    }
-  },
-  {
-    "id": 5178127,
-    "name": "Allentown",
-    "country": "US",
-    "coord": {
-      "lon": -75.490181,
-      "lat": 40.608429
-    }
-  },
-  {
-    "id": 4257227,
-    "name": "Evansville",
-    "country": "US",
-    "coord": {
-      "lon": -87.555847,
-      "lat": 37.974758
-    }
-  },
-  {
-    "id": 4672989,
-    "name": "Beaumont",
-    "country": "US",
-    "coord": {
-      "lon": -94.101852,
-      "lat": 30.08605
-    }
-  },
-  {
-    "id": 5527554,
-    "name": "Odessa",
-    "country": "US",
-    "coord": {
-      "lon": -102.367638,
-      "lat": 31.84568
-    }
-  },
-  {
-    "id": 4145381,
-    "name": "Wilmington",
-    "country": "US",
-    "coord": {
-      "lon": -75.546593,
-      "lat": 39.745949
-    }
-  },
-  {
-    "id": 5412199,
-    "name": "Arvada",
-    "country": "US",
-    "coord": {
-      "lon": -105.087479,
-      "lat": 39.802761
-    }
-  },
-  {
-    "id": 5194748,
-    "name": "Independence",
-    "country": "US",
-    "coord": {
-      "lon": -80.309227,
-      "lat": 40.572289
-    }
-  },
-  {
-    "id": 5780026,
-    "name": "Provo",
-    "country": "US",
-    "coord": {
-      "lon": -111.658531,
-      "lat": 40.233841
-    }
-  },
-  {
-    "id": 5123993,
-    "name": "Lansing",
-    "country": "US",
-    "coord": {
-      "lon": -76.479942,
-      "lat": 42.484241
-    }
-  },
-  {
-    "id": 5345743,
-    "name": "El Monte",
-    "country": "US",
-    "coord": {
-      "lon": -118.027573,
-      "lat": 34.068619
-    }
-  },
-  {
-    "id": 4525353,
-    "name": "Springfield",
-    "country": "US",
-    "coord": {
-      "lon": -83.808823,
-      "lat": 39.924229
-    }
-  },
-  {
-    "id": 7257859,
-    "name": "Fairfield",
-    "country": "US",
-    "coord": {
-      "lon": -74.304024,
-      "lat": 40.882549
-    }
-  },
-  {
-    "id": 4151316,
-    "name": "Clearwater",
-    "country": "US",
-    "coord": {
-      "lon": -82.800102,
-      "lat": 27.965851
-    }
-  },
-  {
-    "id": 4905687,
-    "name": "Peoria",
-    "country": "US",
-    "coord": {
-      "lon": -89.588989,
-      "lat": 40.693649
-    }
-  },
-  {
-    "id": 5043473,
-    "name": "Rochester",
-    "country": "US",
-    "coord": {
-      "lon": -92.469902,
-      "lat": 44.021629
-    }
-  },
-  {
-    "id": 5334223,
-    "name": "Carlsbad",
-    "country": "US",
-    "coord": {
-      "lon": -117.350594,
-      "lat": 33.158089
-    }
-  },
-  {
-    "id": 5242810,
-    "name": "Westminster",
-    "country": "US",
-    "coord": {
-      "lon": -72.458702,
-      "lat": 43.06786
-    }
-  },
-  {
-    "id": 5784549,
-    "name": "West Jordan",
-    "country": "US",
-    "coord": {
-      "lon": -111.939102,
-      "lat": 40.609669
-    }
-  },
-  {
-    "id": 4718097,
-    "name": "Pearland",
-    "country": "US",
-    "coord": {
-      "lon": -95.286049,
-      "lat": 29.56357
-    }
-  },
-  {
-    "id": 4722625,
-    "name": "Richardson",
-    "country": "US",
-    "coord": {
-      "lon": -96.729721,
-      "lat": 32.948181
-    }
-  },
-  {
-    "id": 5343858,
-    "name": "Downey",
-    "country": "US",
-    "coord": {
-      "lon": -118.132568,
-      "lat": 33.94001
-    }
-  },
-  {
-    "id": 4164167,
-    "name": "Miami Gardens",
-    "country": "US",
-    "coord": {
-      "lon": -80.245598,
-      "lat": 25.942039
-    }
-  },
-  {
-    "id": 5401395,
-    "name": "Temecula",
-    "country": "US",
-    "coord": {
-      "lon": -117.148361,
-      "lat": 33.493641
-    }
-  },
-  {
-    "id": 5339840,
-    "name": "Costa Mesa",
-    "country": "US",
-    "coord": {
-      "lon": -117.918671,
-      "lat": 33.641129
-    }
-  },
-  {
-    "id": 4682464,
-    "name": "College Station",
-    "country": "US",
-    "coord": {
-      "lon": -96.334412,
-      "lat": 30.627979
-    }
-  },
-  {
-    "id": 4890864,
-    "name": "Elgin",
-    "country": "US",
-    "coord": {
-      "lon": -88.281189,
-      "lat": 42.037251
-    }
-  },
-  {
-    "id": 5375911,
-    "name": "Murrieta",
-    "country": "US",
-    "coord": {
-      "lon": -117.213921,
-      "lat": 33.553909
-    }
-  },
-  {
-    "id": 5729485,
-    "name": "Gresham",
-    "country": "US",
-    "coord": {
-      "lon": -122.43148,
-      "lat": 45.49818
-    }
-  },
-  {
-    "id": 4471025,
-    "name": "High Point",
-    "country": "US",
-    "coord": {
-      "lon": -80.005318,
-      "lat": 35.955688
-    }
-  },
-  {
-    "id": 4670957,
-    "name": "Antioch",
-    "country": "US",
-    "coord": {
-      "lon": -97.198067,
-      "lat": 32.31292
-    }
-  },
-  {
-    "id": 5359488,
-    "name": "Inglewood",
-    "country": "US",
-    "coord": {
-      "lon": -118.353127,
-      "lat": 33.961681
-    }
-  },
-  {
-    "id": 5587779,
-    "name": "Cambridge",
-    "country": "US",
-    "coord": {
-      "lon": -116.675987,
-      "lat": 44.572659
-    }
-  },
-  {
-    "id": 4942618,
-    "name": "Lowell",
-    "country": "US",
-    "coord": {
-      "lon": -71.31617,
-      "lat": 42.633419
-    }
-  },
-  {
-    "id": 5000598,
-    "name": "Manchester",
-    "country": "US",
-    "coord": {
-      "lon": -84.03772,
-      "lat": 42.150318
-    }
-  },
-  {
-    "id": 5640350,
-    "name": "Billings",
-    "country": "US",
-    "coord": {
-      "lon": -108.500687,
-      "lat": 45.783291
-    }
-  },
-  {
-    "id": 5435464,
-    "name": "Pueblo",
-    "country": "US",
-    "coord": {
-      "lon": -104.609138,
-      "lat": 38.254452
-    }
-  },
-  {
-    "id": 4167499,
-    "name": "Palm Bay",
-    "country": "US",
-    "coord": {
-      "lon": -80.588661,
-      "lat": 28.03446
-    }
-  },
-  {
-    "id": 4186974,
-    "name": "Centennial",
-    "country": "US",
-    "coord": {
-      "lon": -83.612389,
-      "lat": 33.58596
-    }
-  },
-  {
-    "id": 4305974,
-    "name": "Richmond",
-    "country": "US",
-    "coord": {
-      "lon": -84.294647,
-      "lat": 37.74786
-    }
-  },
-  {
-    "id": 5405878,
-    "name": "Ventura",
-    "country": "US",
-    "coord": {
-      "lon": -119.293167,
-      "lat": 34.278339
-    }
-  },
-  {
-    "id": 4169014,
-    "name": "Pompano Beach",
-    "country": "US",
-    "coord": {
-      "lon": -80.124771,
-      "lat": 26.23786
-    }
-  },
-  {
-    "id": 4589387,
-    "name": "North Charleston",
-    "country": "US",
-    "coord": {
-      "lon": -80.007507,
-      "lat": 32.888561
-    }
-  },
-  {
-    "id": 4936008,
-    "name": "Everett",
-    "country": "US",
-    "coord": {
-      "lon": -71.053658,
-      "lat": 42.408428
-    }
-  },
-  {
-    "id": 4845193,
-    "name": "Waterbury",
-    "country": "US",
-    "coord": {
-      "lon": -73.051498,
-      "lat": 41.558151
-    }
-  },
-  {
-    "id": 4177887,
-    "name": "West Palm Beach",
-    "country": "US",
-    "coord": {
-      "lon": -80.053368,
-      "lat": 26.71534
-    }
-  },
-  {
-    "id": 5574991,
-    "name": "Boulder",
-    "country": "US",
-    "coord": {
-      "lon": -105.270554,
-      "lat": 40.014992
-    }
-  },
-  {
-    "id": 5407933,
-    "name": "West Covina",
-    "country": "US",
-    "coord": {
-      "lon": -117.93895,
-      "lat": 34.068619
-    }
-  },
-  {
-    "id": 4531405,
-    "name": "Broken Arrow",
-    "country": "US",
-    "coord": {
-      "lon": -95.790817,
-      "lat": 36.052601
-    }
-  },
-  {
-    "id": 5338122,
-    "name": "Clovis",
-    "country": "US",
-    "coord": {
-      "lon": -119.702919,
-      "lat": 36.82523
-    }
-  },
-  {
-    "id": 5341430,
-    "name": "Daly City",
-    "country": "US",
-    "coord": {
-      "lon": -122.461922,
-      "lat": 37.705769
-    }
-  },
-  {
-    "id": 5123873,
-    "name": "Lakeland",
-    "country": "US",
-    "coord": {
-      "lon": -73.12011,
-      "lat": 40.80788
-    }
-  },
-  {
-    "id": 5393180,
-    "name": "Santa Maria",
-    "country": "US",
-    "coord": {
-      "lon": -120.435722,
-      "lat": 34.95303
-    }
-  },
-  {
-    "id": 4839822,
-    "name": "Norwalk",
-    "country": "US",
-    "coord": {
-      "lon": -73.407898,
-      "lat": 41.117599
-    }
-  },
-  {
-    "id": 4490315,
-    "name": "Sandy Springs",
-    "country": "US",
-    "coord": {
-      "lon": -77.944153,
-      "lat": 35.332661
-    }
-  },
-  {
-    "id": 5731371,
-    "name": "Hillsboro",
-    "country": "US",
-    "coord": {
-      "lon": -122.98983,
-      "lat": 45.522888
-    }
-  },
-  {
-    "id": 4580391,
-    "name": "Green Bay",
-    "country": "US",
-    "coord": {
-      "lon": -79.755363,
-      "lat": 33.014889
-    }
-  },
-  {
-    "id": 4738214,
-    "name": "Tyler",
-    "country": "US",
-    "coord": {
-      "lon": -95.301064,
-      "lat": 32.351261
-    }
-  },
-  {
-    "id": 4741752,
-    "name": "Wichita Falls",
-    "country": "US",
-    "coord": {
-      "lon": -98.493393,
-      "lat": 33.913712
-    }
-  },
-  {
-    "id": 4706057,
-    "name": "Lewisville",
-    "country": "US",
-    "coord": {
-      "lon": -96.994171,
-      "lat": 33.04623
-    }
-  },
-  {
-    "id": 4885983,
-    "name": "Burbank",
-    "country": "US",
-    "coord": {
-      "lon": -87.779503,
-      "lat": 41.733921
-    }
-  },
-  {
-    "id": 5577592,
-    "name": "Greeley",
-    "country": "US",
-    "coord": {
-      "lon": -104.709129,
-      "lat": 40.423309
-    }
-  },
-  {
-    "id": 5392423,
-    "name": "San Mateo",
-    "country": "US",
-    "coord": {
-      "lon": -122.325531,
-      "lat": 37.562988
-    }
-  },
-  {
-    "id": 5345529,
-    "name": "El Cajon",
-    "country": "US",
-    "coord": {
-      "lon": -116.962532,
-      "lat": 32.794769
-    }
-  },
-  {
-    "id": 5387288,
-    "name": "Rialto",
-    "country": "US",
-    "coord": {
-      "lon": -117.370323,
-      "lat": 34.1064
-    }
-  },
-  {
-    "id": 4853423,
-    "name": "Davenport",
-    "country": "US",
-    "coord": {
-      "lon": -90.577637,
-      "lat": 41.52364
-    }
-  },
-  {
-    "id": 4705692,
-    "name": "League City",
-    "country": "US",
-    "coord": {
-      "lon": -95.094933,
-      "lat": 29.50745
-    }
-  },
-  {
-    "id": 5097529,
-    "name": "Edison",
-    "country": "US",
-    "coord": {
-      "lon": -74.412102,
-      "lat": 40.518719
-    }
-  },
-  {
-    "id": 4152820,
-    "name": "Davie",
-    "country": "US",
-    "coord": {
-      "lon": -80.233101,
-      "lat": 26.06287
-    }
-  },
-  {
-    "id": 5475352,
-    "name": "Las Cruces",
-    "country": "US",
-    "coord": {
-      "lon": -106.778343,
-      "lat": 32.312321
-    }
-  },
-  {
-    "id": 4926563,
-    "name": "South Bend",
-    "country": "US",
-    "coord": {
-      "lon": -86.250008,
-      "lat": 41.68338
-    }
-  }
-]
\ No newline at end of file
diff --git a/test/Weather/Weather/Data/country.list.json b/test/Weather/Weather/Data/country.list.json
deleted file mode 100755 (executable)
index 1287277..0000000
+++ /dev/null
@@ -1,746 +0,0 @@
-[
-  {
-    "Code": "AD"
-  },
-  {
-    "Code": "AE"
-  },
-  {
-    "Code": "AF"
-  },
-  {
-    "Code": "AG"
-  },
-  {
-    "Code": "AI"
-  },
-  {
-    "Code": "AL"
-  },
-  {
-    "Code": "AM"
-  },
-  {
-    "Code": "AO"
-  },
-  {
-    "Code": "AQ"
-  },
-  {
-    "Code": "AR"
-  },
-  {
-    "Code": "AS"
-  },
-  {
-    "Code": "AT"
-  },
-  {
-    "Code": "AU"
-  },
-  {
-    "Code": "AW"
-  },
-  {
-    "Code": "AX"
-  },
-  {
-    "Code": "AZ"
-  },
-  {
-    "Code": "BA"
-  },
-  {
-    "Code": "BB"
-  },
-  {
-    "Code": "BD"
-  },
-  {
-    "Code": "BE"
-  },
-  {
-    "Code": "BF"
-  },
-  {
-    "Code": "BG"
-  },
-  {
-    "Code": "BH"
-  },
-  {
-    "Code": "BI"
-  },
-  {
-    "Code": "BJ"
-  },
-  {
-    "Code": "BL"
-  },
-  {
-    "Code": "BM"
-  },
-  {
-    "Code": "BN"
-  },
-  {
-    "Code": "BO"
-  },
-  {
-    "Code": "BQ"
-  },
-  {
-    "Code": "BR"
-  },
-  {
-    "Code": "BS"
-  },
-  {
-    "Code": "BT"
-  },
-  {
-    "Code": "BV"
-  },
-  {
-    "Code": "BW"
-  },
-  {
-    "Code": "BY"
-  },
-  {
-    "Code": "BZ"
-  },
-  {
-    "Code": "CA"
-  },
-  {
-    "Code": "CC"
-  },
-  {
-    "Code": "CD"
-  },
-  {
-    "Code": "CF"
-  },
-  {
-    "Code": "CG"
-  },
-  {
-    "Code": "CH"
-  },
-  {
-    "Code": "CI"
-  },
-  {
-    "Code": "CK"
-  },
-  {
-    "Code": "CL"
-  },
-  {
-    "Code": "CM"
-  },
-  {
-    "Code": "CN"
-  },
-  {
-    "Code": "CO"
-  },
-  {
-    "Code": "CR"
-  },
-  {
-    "Code": "CU"
-  },
-  {
-    "Code": "CV"
-  },
-  {
-    "Code": "CW"
-  },
-  {
-    "Code": "CX"
-  },
-  {
-    "Code": "CY"
-  },
-  {
-    "Code": "CZ"
-  },
-  {
-    "Code": "DE"
-  },
-  {
-    "Code": "DJ"
-  },
-  {
-    "Code": "DK"
-  },
-  {
-    "Code": "DM"
-  },
-  {
-    "Code": "DO"
-  },
-  {
-    "Code": "DZ"
-  },
-  {
-    "Code": "EC"
-  },
-  {
-    "Code": "EE"
-  },
-  {
-    "Code": "EG"
-  },
-  {
-    "Code": "EH"
-  },
-  {
-    "Code": "ER"
-  },
-  {
-    "Code": "ES"
-  },
-  {
-    "Code": "ET"
-  },
-  {
-    "Code": "FI"
-  },
-  {
-    "Code": "FJ"
-  },
-  {
-    "Code": "FK"
-  },
-  {
-    "Code": "FM"
-  },
-  {
-    "Code": "FO"
-  },
-  {
-    "Code": "FR"
-  },
-  {
-    "Code": "GA"
-  },
-  {
-    "Code": "GB"
-  },
-  {
-    "Code": "GD"
-  },
-  {
-    "Code": "GE"
-  },
-  {
-    "Code": "GF"
-  },
-  {
-    "Code": "GG"
-  },
-  {
-    "Code": "GH"
-  },
-  {
-    "Code": "GI"
-  },
-  {
-    "Code": "GL"
-  },
-  {
-    "Code": "GM"
-  },
-  {
-    "Code": "GN"
-  },
-  {
-    "Code": "GP"
-  },
-  {
-    "Code": "GQ"
-  },
-  {
-    "Code": "GR"
-  },
-  {
-    "Code": "GS"
-  },
-  {
-    "Code": "GT"
-  },
-  {
-    "Code": "GU"
-  },
-  {
-    "Code": "GW"
-  },
-  {
-    "Code": "GY"
-  },
-  {
-    "Code": "HK"
-  },
-  {
-    "Code": "HM"
-  },
-  {
-    "Code": "HN"
-  },
-  {
-    "Code": "HR"
-  },
-  {
-    "Code": "HT"
-  },
-  {
-    "Code": "HU"
-  },
-  {
-    "Code": "ID"
-  },
-  {
-    "Code": "IE"
-  },
-  {
-    "Code": "IL"
-  },
-  {
-    "Code": "IM"
-  },
-  {
-    "Code": "IN"
-  },
-  {
-    "Code": "IO"
-  },
-  {
-    "Code": "IQ"
-  },
-  {
-    "Code": "IR"
-  },
-  {
-    "Code": "IS"
-  },
-  {
-    "Code": "IT"
-  },
-  {
-    "Code": "JE"
-  },
-  {
-    "Code": "JM"
-  },
-  {
-    "Code": "JO"
-  },
-  {
-    "Code": "JP"
-  },
-  {
-    "Code": "KE"
-  },
-  {
-    "Code": "KG"
-  },
-  {
-    "Code": "KH"
-  },
-  {
-    "Code": "KI"
-  },
-  {
-    "Code": "KM"
-  },
-  {
-    "Code": "KN"
-  },
-  {
-    "Code": "KP"
-  },
-  {
-    "Code": "KR"
-  },
-  {
-    "Code": "KW"
-  },
-  {
-    "Code": "KY"
-  },
-  {
-    "Code": "KZ"
-  },
-  {
-    "Code": "LA"
-  },
-  {
-    "Code": "LB"
-  },
-  {
-    "Code": "LC"
-  },
-  {
-    "Code": "LI"
-  },
-  {
-    "Code": "LK"
-  },
-  {
-    "Code": "LR"
-  },
-  {
-    "Code": "LS"
-  },
-  {
-    "Code": "LT"
-  },
-  {
-    "Code": "LU"
-  },
-  {
-    "Code": "LV"
-  },
-  {
-    "Code": "LY"
-  },
-  {
-    "Code": "MA"
-  },
-  {
-    "Code": "MC"
-  },
-  {
-    "Code": "MD"
-  },
-  {
-    "Code": "ME"
-  },
-  {
-    "Code": "MF"
-  },
-  {
-    "Code": "MG"
-  },
-  {
-    "Code": "MH"
-  },
-  {
-    "Code": "MK"
-  },
-  {
-    "Code": "ML"
-  },
-  {
-    "Code": "MM"
-  },
-  {
-    "Code": "MN"
-  },
-  {
-    "Code": "MO"
-  },
-  {
-    "Code": "MP"
-  },
-  {
-    "Code": "MQ"
-  },
-  {
-    "Code": "MR"
-  },
-  {
-    "Code": "MS"
-  },
-  {
-    "Code": "MT"
-  },
-  {
-    "Code": "MU"
-  },
-  {
-    "Code": "MV"
-  },
-  {
-    "Code": "MW"
-  },
-  {
-    "Code": "MX"
-  },
-  {
-    "Code": "MY"
-  },
-  {
-    "Code": "MZ"
-  },
-  {
-    "Code": "NA"
-  },
-  {
-    "Code": "NC"
-  },
-  {
-    "Code": "NE"
-  },
-  {
-    "Code": "NF"
-  },
-  {
-    "Code": "NG"
-  },
-  {
-    "Code": "NI"
-  },
-  {
-    "Code": "NL"
-  },
-  {
-    "Code": "NO"
-  },
-  {
-    "Code": "NP"
-  },
-  {
-    "Code": "NR"
-  },
-  {
-    "Code": "NU"
-  },
-  {
-    "Code": "NZ"
-  },
-  {
-    "Code": "OM"
-  },
-  {
-    "Code": "PA"
-  },
-  {
-    "Code": "PE"
-  },
-  {
-    "Code": "PF"
-  },
-  {
-    "Code": "PG"
-  },
-  {
-    "Code": "PH"
-  },
-  {
-    "Code": "PK"
-  },
-  {
-    "Code": "PL"
-  },
-  {
-    "Code": "PM"
-  },
-  {
-    "Code": "PN"
-  },
-  {
-    "Code": "PR"
-  },
-  {
-    "Code": "PS"
-  },
-  {
-    "Code": "PT"
-  },
-  {
-    "Code": "PW"
-  },
-  {
-    "Code": "PY"
-  },
-  {
-    "Code": "QA"
-  },
-  {
-    "Code": "RE"
-  },
-  {
-    "Code": "RO"
-  },
-  {
-    "Code": "RS"
-  },
-  {
-    "Code": "RU"
-  },
-  {
-    "Code": "RW"
-  },
-  {
-    "Code": "SA"
-  },
-  {
-    "Code": "SB"
-  },
-  {
-    "Code": "SC"
-  },
-  {
-    "Code": "SD"
-  },
-  {
-    "Code": "SE"
-  },
-  {
-    "Code": "SG"
-  },
-  {
-    "Code": "SH"
-  },
-  {
-    "Code": "SI"
-  },
-  {
-    "Code": "SJ"
-  },
-  {
-    "Code": "SK"
-  },
-  {
-    "Code": "SL"
-  },
-  {
-    "Code": "SM"
-  },
-  {
-    "Code": "SN"
-  },
-  {
-    "Code": "SO"
-  },
-  {
-    "Code": "SR"
-  },
-  {
-    "Code": "ST"
-  },
-  {
-    "Code": "SV"
-  },
-  {
-    "Code": "SX"
-  },
-  {
-    "Code": "SY"
-  },
-  {
-    "Code": "SZ"
-  },
-  {
-    "Code": "TC"
-  },
-  {
-    "Code": "TD"
-  },
-  {
-    "Code": "TF"
-  },
-  {
-    "Code": "TG"
-  },
-  {
-    "Code": "TH"
-  },
-  {
-    "Code": "TJ"
-  },
-  {
-    "Code": "TK"
-  },
-  {
-    "Code": "TL"
-  },
-  {
-    "Code": "TM"
-  },
-  {
-    "Code": "TN"
-  },
-  {
-    "Code": "TO"
-  },
-  {
-    "Code": "TR"
-  },
-  {
-    "Code": "TT"
-  },
-  {
-    "Code": "TV"
-  },
-  {
-    "Code": "TW"
-  },
-  {
-    "Code": "TZ"
-  },
-  {
-    "Code": "UA"
-  },
-  {
-    "Code": "UG"
-  },
-  {
-    "Code": "UM"
-  },
-  {
-    "Code": "US"
-  },
-  {
-    "Code": "UY"
-  },
-  {
-    "Code": "UZ"
-  },
-  {
-    "Code": "VA"
-  },
-  {
-    "Code": "VC"
-  },
-  {
-    "Code": "VE"
-  },
-  {
-    "Code": "VG"
-  },
-  {
-    "Code": "VI"
-  },
-  {
-    "Code": "VN"
-  },
-  {
-    "Code": "VU"
-  },
-  {
-    "Code": "WF"
-  },
-  {
-    "Code": "WS"
-  },
-  {
-    "Code": "YE"
-  },
-  {
-    "Code": "YT"
-  },
-  {
-    "Code": "ZA"
-  },
-  {
-    "Code": "ZM"
-  },
-  {
-    "Code": "ZW"
-  }
-]
\ No newline at end of file
diff --git a/test/Weather/Weather/Models/Location/City.cs b/test/Weather/Weather/Models/Location/City.cs
deleted file mode 100755 (executable)
index 7aac36c..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using Newtonsoft.Json;
-
-namespace Weather.Models.Location
-{
-    /// <summary>
-    /// Single city model.
-    /// </summary>
-    public class City
-    {
-        #region properties
-
-        /// <summary>
-        /// Id of the city.
-        /// </summary>
-        [JsonProperty(PropertyName = "id")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// Name of the city.
-        /// </summary>
-        [JsonProperty(PropertyName = "name")]
-        public string Name { get; set; }
-
-        /// <summary>
-        /// Country code in ISO 3166 format.
-        /// </summary>
-        [JsonProperty(PropertyName = "country")]
-        public string CountryCode { get; set; }
-
-        /// <summary>
-        /// Coordinates of the city.
-        /// </summary>
-        [JsonProperty(PropertyName = "coord")]
-        public Coordinates Coordinates { get; set; }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Models/Location/Coordinates.cs b/test/Weather/Weather/Models/Location/Coordinates.cs
deleted file mode 100755 (executable)
index e9a0109..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using Newtonsoft.Json;
-
-namespace Weather.Models.Location
-{
-    /// <summary>
-    /// Coordinates of a city.
-    /// </summary>
-    public class Coordinates
-    {
-        #region properties
-
-        /// <summary>
-        /// North-South position of a city on the Earth's surface.
-        /// </summary>
-        [JsonProperty(PropertyName = "lon")]
-        public double Longitude { get; set; }
-
-        /// <summary>
-        /// East-west position of a city on the Earth's surface.
-        /// </summary>
-        [JsonProperty(PropertyName = "lat")]
-        public double Latitude { get; set; }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Models/Location/Country.cs b/test/Weather/Weather/Models/Location/Country.cs
deleted file mode 100755 (executable)
index 2d35a96..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using Newtonsoft.Json;
-
-namespace Weather.Models.Location
-{
-    /// <summary>
-    /// Single country model.
-    /// </summary>
-    public class Country
-    {
-        /// <summary>
-        /// Country code in ISO 3166 format.
-        /// </summary>
-        [JsonProperty(PropertyName = "Code")]
-        public string Code { get; set; }
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Models/Location/TimeZone.cs b/test/Weather/Weather/Models/Location/TimeZone.cs
deleted file mode 100755 (executable)
index ba55fa6..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using Newtonsoft.Json;
-using Xamarin.Forms;
-
-namespace Weather.Models.Location
-{
-    /// <summary>
-    /// Time zone model.
-    /// </summary>
-    public class TimeZone : BindableObject
-    {
-        #region properties
-
-        /// <summary>
-        /// Bindable property that allows to set timestamp offset of timezone.
-        /// </summary>
-        public static readonly BindableProperty OffsetProperty =
-            BindableProperty.Create(nameof(Offset), typeof(int), typeof(TimeZone), default(int));
-
-        /// <summary>
-        /// Gets or sets timestamp offset of timezone.
-        /// </summary>
-        [JsonProperty(PropertyName = "rawOffset")]
-        public int Offset
-        {
-            get => (int)GetValue(OffsetProperty);
-            set
-            {
-                SetValue(OffsetProperty, value);
-                OnPropertyChanged();
-            }
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Models/Weather/Clouds.cs b/test/Weather/Weather/Models/Weather/Clouds.cs
deleted file mode 100755 (executable)
index a33934e..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-using Newtonsoft.Json;
-
-namespace Weather.Models.Weather
-{
-    /// <summary>
-    /// Class containing data about cloudiness.
-    /// </summary>
-    public class Clouds
-    {
-        #region properties
-
-        /// <summary>
-        /// Cloudiness in percent.
-        /// </summary>
-        [JsonProperty(PropertyName = "all")]
-        public double Percent { get; set; }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Models/Weather/CurrentWeather.cs b/test/Weather/Weather/Models/Weather/CurrentWeather.cs
deleted file mode 100755 (executable)
index 21ec22d..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System.Collections.Generic;
-using Newtonsoft.Json;
-using Weather.Models.Location;
-
-namespace Weather.Models.Weather
-{
-    /// <summary>
-    /// Current weather model.
-    /// </summary>
-    public class CurrentWeather
-    {
-        #region properties
-
-        /// <summary>
-        /// List of base weather properties, e.g. "Clear sky" etc.
-        /// </summary>
-        [JsonProperty(PropertyName = "weather")]
-        public IList<WeatherBase> Weather { get; set; }
-
-        /// <summary>
-        /// Weather data, e.g. temperature, pressure, etc.
-        /// </summary>
-        [JsonProperty(PropertyName = "main")]
-        public WeatherData WeatherData { get; set; }
-
-        /// <summary>
-        /// Wind properties, e.g. speed.
-        /// </summary>
-        [JsonProperty(PropertyName = "wind")]
-        public Wind Wind { get; set; }
-
-        /// <summary>
-        /// Cloudiness data.
-        /// </summary>
-        [JsonProperty(PropertyName = "clouds")]
-        public Clouds Clouds { get; set; }
-
-        /// <summary>
-        /// Time stamp of the weather measurement.
-        /// </summary>
-        [JsonProperty(PropertyName = "dt")]
-        public ulong TimeStamp { get; set; }
-
-        /// <summary>
-        /// Sunrise and sunset times.
-        /// </summary>
-        [JsonProperty(PropertyName = "sys")]
-        public SunData SunData { get; set; }
-
-        /// <summary>
-        /// City name.
-        /// </summary>
-        [JsonProperty(PropertyName = "name")]
-        public string CityName { get; set; }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Models/Weather/Forecast.cs b/test/Weather/Weather/Models/Weather/Forecast.cs
deleted file mode 100755 (executable)
index 99cd0a5..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System.Collections.Generic;
-using Newtonsoft.Json;
-
-namespace Weather.Models.Weather
-{
-    /// <summary>
-    /// Forecast model.
-    /// </summary>
-    public class Forecast
-    {
-        /// <summary>
-        /// List of weather data for next days.
-        /// Obtains data from "OpenWeatherMap" API.
-        /// </summary>
-        [JsonProperty(PropertyName = "list")]
-        public IList<CurrentWeather> WeatherList { get; set; }
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Models/Weather/SunData.cs b/test/Weather/Weather/Models/Weather/SunData.cs
deleted file mode 100755 (executable)
index d7030a0..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using Newtonsoft.Json;
-
-namespace Weather.Models.Weather
-{
-    /// <summary>
-    /// Class containing additional weather data.
-    /// </summary>
-    public class SunData
-    {
-        #region properties
-
-        /// <summary>
-        /// Time stamp of sunrise.
-        /// </summary>
-        [JsonProperty(PropertyName = "sunrise")]
-        public ulong SunriseTimeStamp { get; set; }
-
-        /// <summary>
-        /// Time stamp of sunset.
-        /// </summary>
-        [JsonProperty(PropertyName = "sunset")]
-        public ulong SunsetTimeStamp { get; set; }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Models/Weather/WeatherBase.cs b/test/Weather/Weather/Models/Weather/WeatherBase.cs
deleted file mode 100755 (executable)
index d286e5b..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using Newtonsoft.Json;
-
-namespace Weather.Models.Weather
-{
-    /// <summary>
-    /// Class containing basic weather information.
-    /// </summary>
-    public class WeatherBase
-    {
-        #region properties
-
-        /// <summary>
-        /// Weather condition id.
-        /// </summary>
-        [JsonProperty(PropertyName = "id")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// Weather condition (e.g. Rain, Snow, Clear).
-        /// </summary>
-        [JsonProperty(PropertyName = "main")]
-        public string Condition { get; set; }
-
-        /// <summary>
-        /// Weather condition within the group.
-        /// </summary>
-        [JsonProperty(PropertyName = "description")]
-        public string Description { get; set; }
-
-        /// <summary>
-        /// Weather icon id.
-        /// </summary>
-        [JsonProperty(PropertyName = "icon")]
-        public string Icon { get; set; }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Models/Weather/WeatherData.cs b/test/Weather/Weather/Models/Weather/WeatherData.cs
deleted file mode 100755 (executable)
index 3a9db25..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using Newtonsoft.Json;
-
-namespace Weather.Models.Weather
-{
-    /// <summary>
-    /// Class containing weather data.
-    /// </summary>
-    public class WeatherData
-    {
-        #region properties
-
-        /// <summary>
-        /// Temperature in degrees Celsius.
-        /// </summary>
-        [JsonProperty(PropertyName = "temp")]
-        public double Temperature { get; set; }
-
-        /// <summary>
-        /// Minimum temperature at the moment. Significant for large cities.
-        /// </summary>
-        [JsonProperty(PropertyName = "temp_min")]
-        public double MinimumTemperature { get; set; }
-
-        /// <summary>
-        /// Maximum temperature at the moment. Significant for large cities.
-        /// </summary>
-        [JsonProperty(PropertyName = "temp_max")]
-        public double MaximumTemperature { get; set; }
-
-        /// <summary>
-        /// Atmospheric pressure in hPa.
-        /// </summary>
-        [JsonProperty(PropertyName = "pressure")]
-        public double Pressure { get; set; }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Models/Weather/Wind.cs b/test/Weather/Weather/Models/Weather/Wind.cs
deleted file mode 100755 (executable)
index ab8c223..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using Newtonsoft.Json;
-
-namespace Weather.Models.Weather
-{
-    /// <summary>
-    /// Class containing wind data.
-    /// </summary>
-    public class Wind
-    {
-        #region properties
-
-        /// <summary>
-        /// Wind speed in meters per second.
-        /// </summary>
-        [JsonProperty(PropertyName = "speed")]
-        public double Speed { get; set; }
-
-        /// <summary>
-        /// Wind direction in degrees.
-        /// </summary>
-        [JsonProperty(PropertyName = "deg")]
-        public double Degree { get; set; }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Service/CityProvider.cs b/test/Weather/Weather/Service/CityProvider.cs
deleted file mode 100755 (executable)
index 32c6bc1..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System.Collections.Generic;
-using System.Linq;
-using Weather.Models.Location;
-
-namespace Weather.Service
-{
-    /// <summary>
-    /// Class that manages supported cities.
-    /// </summary>
-    public class CityProvider : ICityProvider
-    {
-        #region properties
-
-        /// <summary>
-        /// List of supported cities with their data.
-        /// </summary>
-        public IQueryable<City> CityList { get; }
-
-        #endregion
-
-        #region methods
-
-        /// <summary>
-        /// Class constructor which allows to set supported cities.
-        /// </summary>
-        /// <param name="cityList">Supported city list.</param>
-        public CityProvider(IQueryable<City> cityList)
-        {
-            CityList = cityList;
-        }
-
-        /// <summary>
-        /// Indicates if given cityName is in supported city list.
-        /// </summary>
-        /// <param name="cityName">Name of the city to check.</param>
-        /// <returns>True if city is found in the list, otherwise false is returned.</returns>
-        public bool Validate(string cityName)
-        {
-            return CityList.Any(x => x.Name.Equals(cityName));
-        }
-
-        /// <summary>
-        /// Finds first n cities that start with given text.
-        /// </summary>
-        /// <param name="text">Search condition.</param>
-        /// <param name="n">Maximum number of cities that will be returned.</param>
-        /// <returns>List of cities if found, otherwise null is returned.</returns>
-        public IList<City> FindCity(string text, int n)
-        {
-            return CityList.Where(cityItem => cityItem.Name.ToLower().StartsWith(text.ToLower())).Take(n).ToList();
-        }
-
-        /// <summary>
-        /// Finds first n cities that starts with given text.
-        /// Finds cities only in country specified with country code in ISO-3166 format.
-        /// </summary>
-        /// <param name="text">Search condition.</param>
-        /// <param name="countryCode">Country code in ISO-3166 format.</param>
-        /// <param name="n">Maximum number of cities that will be returned.</param>
-        /// <returns>List of cities if found otherwise returns null.</returns>
-        public IList<City> FindCity(string text, string countryCode, int n)
-        {
-            return CityList
-                .Where(cityItem => cityItem.Name.ToLower().StartsWith(text.ToLower()) && cityItem.CountryCode.Equals(countryCode)).Take(n)
-                .ToList();
-        }
-
-
-        /// <summary>
-        /// Gets first occurrence of city with given name.
-        /// </summary>
-        /// <param name="cityName">Name of the city.</param>
-        /// <returns>City with given name otherwise returns null.</returns>
-        public City GetCiy(string cityName) => CityList.FirstOrDefault(x => x.Name.Equals(cityName));
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Service/CountryProvider.cs b/test/Weather/Weather/Service/CountryProvider.cs
deleted file mode 100755 (executable)
index 639b9f1..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System.Linq;
-using System.Text.RegularExpressions;
-using Weather.Models.Location;
-
-namespace Weather.Service
-{
-    /// <summary>
-    /// Class that manages supported countries.
-    /// </summary>
-    public class CountryProvider : ICountryProvider
-    {
-        #region fields
-
-        /// <summary>
-        /// Country code validation rule.
-        /// </summary>
-        private const string COUNTRY_REGEX = "^[A-Z]{2}$";
-
-        #endregion
-
-        #region properties
-
-        /// <summary>
-        /// Supported country list.
-        /// </summary>
-        public IQueryable<Country> CountryList { get; }
-
-        #endregion
-
-        #region methods
-
-        /// <summary>
-        /// Class constructor which allows to set supported country list.
-        /// </summary>
-        /// <param name="countryList">Supported country list.</param>
-        public CountryProvider(IQueryable<Country> countryList)
-        {
-            CountryList = countryList;
-        }
-
-        /// <summary>
-        /// Checks if given countryCode is in accordance with ISO 3166 standard.
-        /// </summary>
-        /// <param name="countryCode">Country Code.</param>
-        /// <returns>True if code is valid, otherwise false is returned.</returns>
-        public bool Validate(string countryCode)
-        {
-            return Regex.IsMatch(countryCode, COUNTRY_REGEX) && CountryList.Any(x => x.Code.Equals(countryCode));
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Service/ICityProvider.cs b/test/Weather/Weather/Service/ICityProvider.cs
deleted file mode 100755 (executable)
index c249899..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System.Collections.Generic;
-using System.Linq;
-using Weather.Models.Location;
-
-namespace Weather.Service
-{
-    /// <summary>
-    /// Interface that contains all necessary tools to manage supported cities.
-    /// </summary>
-    public interface ICityProvider
-    {
-        #region properties
-
-        /// <summary>
-        /// List of supported cities with their data.
-        /// </summary>
-        IQueryable<City> CityList { get; }
-
-        #endregion
-
-        #region methods
-
-        /// <summary>
-        /// Indicates if given cityName is in supported city list.
-        /// </summary>
-        /// <param name="cityName">Name of the city to check.</param>
-        /// <returns>True if city is found in the list otherwise returns false.</returns>
-        bool Validate(string cityName);
-
-        /// <summary>
-        /// Finds first n cities that starts with given text.
-        /// </summary>
-        /// <param name="text">Search condition.</param>
-        /// <param name="n">Maximum number of cities that will be returned.</param>
-        /// <returns>List of cities if found otherwise returns null.</returns>
-        IList<City> FindCity(string text, int n);
-
-        /// <summary>
-        /// Finds first n cities that starts with given text.
-        /// Finds cities only in country specified with country code in ISO-3166 format.
-        /// </summary>
-        /// <param name="text">Search condition.</param>
-        /// <param name="countryCode">Country code in ISO-3166 format.</param>
-        /// <param name="n">Maximum number of cities that will be returned.</param>
-        /// <returns>List of cities if found otherwise returns null.</returns>
-        IList<City> FindCity(string text, string countryCode, int n);
-
-        /// <summary>
-        /// Gets first occurrence of city with given name.
-        /// </summary>
-        /// <param name="cityName">Name of the city.</param>
-        /// <returns>City with given name otherwise returns null.</returns>
-        City GetCiy(string cityName);
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Service/ICountryProvider.cs b/test/Weather/Weather/Service/ICountryProvider.cs
deleted file mode 100755 (executable)
index 4c29a46..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System.Linq;
-using Weather.Models.Location;
-
-namespace Weather.Service
-{
-    /// <summary>
-    /// Interface that contains all necessary tools to manage supported countries.
-    /// </summary>
-    public interface ICountryProvider
-    {
-        #region properties
-
-        /// <summary>
-        /// List of codes of all supported countries.
-        /// </summary>
-        IQueryable<Country> CountryList { get; }
-
-        #endregion
-
-        #region methods
-
-        /// <summary>
-        /// Checks if given country code is valid.
-        /// </summary>
-        /// <param name="countryCode">Country code.</param>
-        /// <returns>Returns true if code is valid, otherwise returns false.</returns>
-        bool Validate(string countryCode);
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Utils/BindableString.cs b/test/Weather/Weather/Utils/BindableString.cs
deleted file mode 100755 (executable)
index 2ae9421..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using Xamarin.Forms;
-
-namespace Weather.Utils
-{
-    /// <summary>
-    /// Helper class that allows to bind string value.
-    /// </summary>
-    public class BindableString : BindableObject
-    {
-        #region properties
-
-        /// <summary>
-        /// Bindable property that allows to set value of string.
-        /// </summary>
-        public static readonly BindableProperty ValueProperty =
-            BindableProperty.Create(nameof(Value), typeof(string), typeof(BindableString), string.Empty);
-
-        /// <summary>
-        /// Gets or sets value of string.
-        /// </summary>
-        public string Value
-        {
-            get => GetValue(ValueProperty).ToString();
-            set => SetValue(ValueProperty, value);
-        }
-
-        #endregion
-
-        #region methods
-
-        /// <summary>
-        /// Returns string value instead of class string representation.
-        /// </summary>
-        /// <returns>String value.</returns>
-        public override string ToString()
-        {
-            return Value;
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Utils/ErrorHandler.cs b/test/Weather/Weather/Utils/ErrorHandler.cs
deleted file mode 100755 (executable)
index 216f9ed..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System.Linq;
-using System.Threading.Tasks;
-using Xamarin.Forms;
-
-namespace Weather.Utils
-{
-    /// <summary>
-    /// Class responsible for handling HTTP errors and displaying information about them.
-    /// </summary>
-    public static class ErrorHandler
-    {
-        #region fields
-
-        /// <summary>
-        /// Navigation context.
-        /// </summary>
-        private static readonly INavigation _navigation;
-
-        /// <summary>
-        /// Indicates if any error was handled.
-        /// Avoids handling multiple error at once.
-        /// </summary>
-        private static bool _isHandled;
-
-        #endregion
-
-        #region properties
-
-        /// <summary>
-        /// HTTP status code.
-        /// </summary>
-        public static int Code { get; private set; }
-
-        /// <summary>
-        /// Message provided with exception.
-        /// </summary>
-        public static string Message { get; private set; }
-
-        #endregion
-
-        #region methods
-
-        /// <summary>
-        /// Default constructor.
-        /// </summary>
-        static ErrorHandler()
-        {
-            _navigation = Application.Current.MainPage.Navigation;
-        }
-
-        /// <summary>
-        /// Handles exception.
-        /// </summary>
-        /// <param name="code">HTTP status code.</param>
-        /// <param name="message">Message provided with exception.</param>
-        /// <returns>Async task.</returns>
-        public static async Task HandleException(int code, string message)
-        {
-            if (_isHandled)
-            {
-                return;
-            }
-
-            Code = code;
-            Message = message;
-
-            await _navigation.PushAsync(new Views.ApiErrorPage());
-
-            RemoveExistingPages();
-
-            _isHandled = true;
-        }
-
-        /// <summary>
-        /// Removes all pages from navigation stack except error page.
-        /// </summary>
-        private static void RemoveExistingPages()
-        {
-            var existingPages = _navigation.NavigationStack.ToList();
-
-            foreach (var page in existingPages)
-            {
-                if (page.GetType() != typeof(Views.ApiErrorPage))
-                {
-                    _navigation.RemovePage(page);
-                }
-            }
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Utils/HttpException.cs b/test/Weather/Weather/Utils/HttpException.cs
deleted file mode 100755 (executable)
index 3176f96..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System.Net;
-using System.Net.Http;
-
-namespace Weather.Utils
-{
-    /// <summary>
-    /// Exception that is thrown on HTTP errors.
-    /// </summary>
-    public class HttpException : HttpRequestException
-    {
-        #region properties
-
-        /// <summary>
-        /// HTTP status code.
-        /// </summary>
-        public HttpStatusCode StatusCode { get; }
-
-        #endregion
-
-        #region methods
-
-        /// <summary>
-        /// Default constructor.
-        /// </summary>
-        /// <param name="code">HTTP status code of error.</param>
-        public HttpException(HttpStatusCode code)
-        {
-            StatusCode = code;
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Utils/IRequest.cs b/test/Weather/Weather/Utils/IRequest.cs
deleted file mode 100755 (executable)
index 5d21e2d..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System.Threading.Tasks;
-
-namespace Weather.Utils
-{
-    /// <summary>
-    /// Provides functionality to get response from Web API.
-    /// </summary>
-    /// <typeparam name="T">The type of expected object from API.</typeparam>
-    public interface IRequest<T>
-    {
-        #region properties
-
-        /// <summary>
-        /// URI of the Web service.
-        /// </summary>
-        string RequestUri { get; }
-
-        #endregion
-
-        #region methods
-
-        /// <summary>
-        /// Adds parameter to the URI.
-        /// </summary>
-        /// <param name="name">Name of the parameter.</param>
-        /// <param name="value">Value of the parameter.</param>
-        void AddParameter(string name, string value);
-
-        /// <summary>
-        /// Sends HTTP request using GET method.
-        /// </summary>
-        /// <returns>Response from service.</returns>
-        Task<T> Get();
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Utils/JsonFileReader.cs b/test/Weather/Weather/Utils/JsonFileReader.cs
deleted file mode 100755 (executable)
index 1dd53d4..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System.IO;
-using System.Reflection;
-using Newtonsoft.Json;
-
-namespace Weather.Utils
-{
-    /// <summary>
-    /// Class that reads JSON file and converts it to given type.
-    /// </summary>
-    /// <typeparam name="T">JSON object type.</typeparam>
-    public class JsonFileReader<T>
-    {
-        #region fields
-
-        /// <summary>
-        /// Namespace of the file.
-        /// </summary>
-        private readonly string _fileNameSpace;
-
-        /// <summary>
-        /// File name.
-        /// </summary>
-        private readonly string _fileName;
-
-        #endregion
-
-        #region properties
-
-        /// <summary>
-        /// File content in T format.
-        /// </summary>
-        /// <remarks>Before calling Read methods, it is always null.</remarks>
-        public T Result { get; set; }
-
-        #endregion
-
-        #region methods
-
-        /// <summary>
-        /// Class constructor, which allows to specify file location and name.
-        /// </summary>
-        /// <param name="fileNameSpace">Namespace of the file.</param>
-        /// <param name="fileName">Name of the file.</param>
-        public JsonFileReader(string fileNameSpace, string fileName)
-        {
-            _fileNameSpace = fileNameSpace;
-            _fileName = fileName;
-        }
-
-        /// <summary>
-        /// Reads the file.
-        /// </summary>
-        public virtual void Read()
-        {
-            var assembly = typeof(JsonFileReader<T>).GetTypeInfo().Assembly;
-
-            using (var stream = assembly.GetManifestResourceStream(_fileNameSpace + _fileName))
-            using (var streamReader = new StreamReader(stream))
-            using (var reader = new JsonTextReader(streamReader))
-            {
-                var serializer = JsonSerializer.Create();
-                Result = serializer.Deserialize<T>(reader);
-            }
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Utils/NotificationTask.cs b/test/Weather/Weather/Utils/NotificationTask.cs
deleted file mode 100755 (executable)
index 870b25d..0000000
+++ /dev/null
@@ -1,160 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Diagnostics;
-using System.Linq;
-using System.Threading.Tasks;
-
-namespace Weather.Utils
-{
-    /// <summary>
-    /// Class that allows binding to task.
-    /// After task is completed it notify view about it.
-    /// </summary>
-    /// <typeparam name="T">Type of the result of the task.</typeparam>
-    public class NotificationTask<T> : INotifyPropertyChanged
-    {
-        #region properties
-
-        /// <summary>
-        /// Task that will be executed.
-        /// </summary>
-        public Task<T> Task { get; }
-
-        /// <summary>
-        /// Gets result of the task.
-        /// </summary>
-        public T Result => Task.Status == TaskStatus.RanToCompletion ? Task.Result : default(T);
-
-        /// <summary>
-        /// Gets status of the task.
-        /// </summary>
-        public TaskStatus Status => Task.Status;
-
-        /// <summary>
-        /// Indicates if task is completed.
-        /// </summary>
-        public bool IsCompleted => Task.IsCompleted;
-
-        /// <summary>
-        /// Indicates if task is completed successfully.
-        /// </summary>
-        public bool IsSuccessfullyCompleted => Task.Status == TaskStatus.RanToCompletion;
-
-        /// <summary>
-        /// Indicates if task is not completed.
-        /// </summary>
-        public bool IsNotCompleted => !Task.IsCompleted;
-
-        /// <summary>
-        /// Indicates if task is cancelled.
-        /// </summary>
-        public bool IsCanceled => Task.IsCanceled;
-
-        /// <summary>
-        /// Indicates if task is faulted.
-        /// </summary>
-        public bool IsFaulted => Task.IsFaulted;
-
-        /// <summary>
-        /// Gets all exceptions from execution of the task.
-        /// </summary>
-        public AggregateException Exception => Task.Exception;
-
-        /// <summary>
-        /// Gets current exception from execution of the task.
-        /// </summary>
-        public Exception InnerException => Exception?.InnerException;
-
-        /// <summary>
-        /// Event that informs view about property change.
-        /// </summary>
-        public event PropertyChangedEventHandler PropertyChanged;
-
-        #endregion
-
-        #region methods
-
-        /// <summary>
-        /// Default class constructor.
-        /// </summary>
-        /// <param name="task">Task to be executed.</param>
-        public NotificationTask(Task<T> task)
-        {
-            Task = task;
-
-            if (!task.IsCompleted)
-            {
-                var taskAsync = ExecuteTaskAsync(task);
-            }
-        }
-
-        /// <summary>
-        /// Executes task and notifies view about changes of its properties.
-        /// </summary>
-        /// <param name="task">Task to be executed.</param>
-        /// <returns>Task that was executed.</returns>
-        private async Task ExecuteTaskAsync(Task task)
-        {
-            try
-            {
-                await task;
-            }
-            catch (Exception e)
-            {
-                Debug.WriteLine(e);
-            }
-
-            var propertyChanged = PropertyChanged;
-            if (propertyChanged == null)
-            {
-                return;
-            }
-
-            propertyChanged(this, new PropertyChangedEventArgs(nameof(Status)));
-            propertyChanged(this, new PropertyChangedEventArgs(nameof(IsCompleted)));
-            propertyChanged(this, new PropertyChangedEventArgs(nameof(IsNotCompleted)));
-
-            if (Task.IsCanceled)
-            {
-                propertyChanged(this, new PropertyChangedEventArgs(nameof(IsCanceled)));
-            }
-            else if (Task.IsFaulted)
-            {
-                propertyChanged(this, new PropertyChangedEventArgs(nameof(IsFaulted)));
-                propertyChanged(this, new PropertyChangedEventArgs(nameof(Exception)));
-                propertyChanged(this, new PropertyChangedEventArgs(nameof(InnerException)));
-            }
-            else
-            {
-                propertyChanged(this, new PropertyChangedEventArgs(nameof(IsSuccessfullyCompleted)));
-                propertyChanged(this, new PropertyChangedEventArgs(nameof(Result)));
-            }
-        }
-
-        /// <summary>
-        /// PropertyChanged event invoker.
-        /// </summary>
-        /// <param name="propertyName">Property name.</param>
-        protected virtual void OnPropertyChanged(string propertyName)
-        {
-            PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Utils/Request.cs b/test/Weather/Weather/Utils/Request.cs
deleted file mode 100755 (executable)
index b16fbbf..0000000
+++ /dev/null
@@ -1,114 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System.IO;
-using System.Net.Http;
-using System.Threading.Tasks;
-using Newtonsoft.Json;
-
-namespace Weather.Utils
-{
-    /// <summary>
-    /// Class responsible for sending HTTP requests.
-    /// </summary>
-    /// <typeparam name="T">The type of expected object from API.</typeparam>
-    public class Request<T> : IRequest<T>
-    {
-        #region fields
-
-        /// <summary>
-        /// HTTP client.
-        /// </summary>
-        private readonly HttpClient _httpClient;
-
-        private bool _isFirstParameter = true;
-
-        #endregion
-
-        #region properties
-
-        /// <summary>
-        /// URI of the Web service.
-        /// </summary>
-        public string RequestUri { get; protected set; }
-
-        #endregion
-
-        #region methods
-
-        /// <summary>
-        /// Class constructor that allows to set API key and address of the server.
-        /// </summary>
-        /// <param name="address">Server address.</param>
-        public Request(string address)
-        {
-            _httpClient = new HttpClient();
-            RequestUri = address;
-        }
-
-        /// <summary>
-        /// Adds parameter to the URI.
-        /// </summary>
-        /// <param name="name">Name of the parameter.</param>
-        /// <param name="value">Value of the parameter.</param>
-        public void AddParameter(string name, string value)
-        {
-            if (_isFirstParameter)
-            {
-                RequestUri += $"?{name}={value}";
-                _isFirstParameter = false;
-            }
-            else
-            {
-                RequestUri += $"&{name}={value}";
-            }
-        }
-
-        /// <summary>
-        /// Sends HTTP request using GET method.
-        /// </summary>
-        /// <returns>Response from service.</returns>
-        public async Task<T> Get()
-        {
-            var response = await _httpClient.GetAsync(RequestUri);
-
-            if (!response.IsSuccessStatusCode)
-            {
-                throw new HttpException(response.StatusCode);
-            }
-
-            return ReadStream(await response.Content.ReadAsStreamAsync());
-        }
-
-        /// <summary>
-        /// Gets stream from HTTP client and deserializes it to the object.
-        /// </summary>
-        /// <param name="stream">Stream from client.</param>
-        /// <returns>
-        /// Returns type T object with response.
-        /// If deserializing was not successful returns default value of type T.
-        /// </returns>
-        private static T ReadStream(Stream stream)
-        {
-            using (var streamReader = new StreamReader(stream))
-            using (var reader = new JsonTextReader(streamReader))
-            {
-                var serializer = JsonSerializer.Create();
-                return serializer.Deserialize<T>(reader);
-            }
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Utils/TimeStamp.cs b/test/Weather/Weather/Utils/TimeStamp.cs
deleted file mode 100755 (executable)
index 1144539..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-
-namespace Weather.Utils
-{
-    /// <summary>
-    /// Class that is responsible for converting timestamp.
-    /// </summary>
-    public static class TimeStamp
-    {
-        #region methods
-
-        /// <summary>
-        /// Converts timestamp to "DateTime" object.
-        /// </summary>
-        /// <param name="utcTimeStamp">UTC timestamp.</param>
-        /// <returns>"DateTime" object.</returns>
-        public static DateTime Convert(ulong utcTimeStamp)
-        {
-            var dateTime = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc);
-            return dateTime.AddSeconds(utcTimeStamp);
-        }
-
-        /// <summary>
-        /// Converts timestamp to "DateTime" object.
-        /// </summary>
-        /// <param name="utcTimeStamp">UTC timestamp.</param>
-        /// <returns>"DateTime" object.</returns>
-        public static DateTime Convert(long utcTimeStamp)
-        {
-            var dateTime = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc);
-            return dateTime.AddSeconds(utcTimeStamp);
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Utils/UnitFormatter.cs b/test/Weather/Weather/Utils/UnitFormatter.cs
deleted file mode 100755 (executable)
index 3f9da67..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-using System.Globalization;
-
-namespace Weather.Utils
-{
-    /// <summary>
-    /// Class that provide custom formatter for string.
-    /// </summary>
-    public class UnitFormatter : IFormatProvider, ICustomFormatter
-    {
-        #region methods
-
-        /// <summary>
-        /// Gets an object that provides formatting services for the specified type.
-        /// </summary>
-        /// <param name="formatType">An object that specifies the type of format object to return.</param>
-        /// <returns>An instance of the object specified by formatType.</returns>
-        public object GetFormat(Type formatType)
-        {
-            return formatType == typeof(ICustomFormatter) ? this : null;
-        }
-
-        /// <summary>
-        /// Converts the value of a specified object to an equivalent string representation.
-        /// </summary>
-        /// <param name="fmt">A format string containing formatting specifications.</param>
-        /// <param name="arg">An object to format.</param>
-        /// <param name="formatProvider">An object that supplies format information about the current instance.</param>
-        /// <returns>
-        /// The string representation of the arg, formatted as specified by format and formatProvider.
-        /// </returns>
-        public string Format(string fmt, object arg, IFormatProvider formatProvider)
-        {
-            if (arg == null)
-            {
-                return string.Empty;
-            }
-
-            switch (fmt)
-            {
-                case "temp":
-                {
-                    var sign = RegionInfo.CurrentRegion.IsMetric ? "°C" : "°F";
-                    return $"{arg:0.0}{sign}";
-                }
-
-                case "speed":
-                {
-                    var sign = RegionInfo.CurrentRegion.IsMetric ? " m/s" : " mph";
-                    return $"{arg:0.00}{sign}";
-                }
-
-                default:
-                {
-                    return arg.ToString();
-                }
-            }
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/ViewModels/ApiErrorViewModel.cs b/test/Weather/Weather/ViewModels/ApiErrorViewModel.cs
deleted file mode 100755 (executable)
index 136c97d..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-
-using Weather.Utils;
-using Xamarin.Forms;
-
-namespace Weather.ViewModels
-{
-    /// <summary>
-    /// ViewModel class for ApiErrorPage.
-    /// </summary>
-    public class ApiErrorViewModel
-    {
-        #region properties
-
-        /// <summary>
-        /// Gets HTTP status code.
-        /// </summary>
-        public int Code => ErrorHandler.Code;
-
-        /// <summary>
-        /// Gets message provided with exception.
-        /// </summary>
-        public string Message => ErrorHandler.Message ?? "None";
-
-        /// <summary>
-        /// Gets command that exits application.
-        /// </summary>
-        public Command ExitAppCommand { get; } = new Command(() => { Xamarin.Forms.Forms.Context.Exit();  });
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/ViewModels/CurrentWeatherViewModel.cs b/test/Weather/Weather/ViewModels/CurrentWeatherViewModel.cs
deleted file mode 100755 (executable)
index 4450885..0000000
+++ /dev/null
@@ -1,325 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-using System.ComponentModel;
-using System.Globalization;
-using System.Threading.Tasks;
-using Weather.Config;
-using Weather.Models.Location;
-using Weather.Models.Weather;
-using Weather.Utils;
-using Xamarin.Forms;
-
-namespace Weather.ViewModels
-{
-    /// <summary>
-    /// ViewModel class for CurrentWeatherPage.
-    /// </summary>
-    public class CurrentWeatherViewModel : ViewModelBase
-    {
-        #region fields
-
-        /// <summary>
-        /// Local storage of command that initializes weather data.
-        /// </summary>
-        private Command _initializeCommand;
-
-        /// <summary>
-        /// Local storage of task that obtains current weather.
-        /// </summary>
-        private NotificationTask<CurrentWeather> _currentWeather;
-
-        /// <summary>
-        /// Local storage of city time zone.
-        /// </summary>
-        private NotificationTask<Models.Location.TimeZone> _cityTimeZone;
-
-        /// <summary>
-        /// Local storage of command that shows screen with forecast.
-        /// </summary>
-        private Command _checkForecastCommand;
-
-        /// <summary>
-        /// Local storage of forecast data.
-        /// </summary>
-        private NotificationTask<Forecast> _forecast;
-
-        #endregion
-
-        #region properties
-
-        /// <summary>
-        /// Bindable property that allows to set city data.
-        /// </summary>
-        public static readonly BindableProperty CityDataProperty =
-            BindableProperty.Create(nameof(CityData), typeof(City), typeof(CurrentWeatherViewModel), default(City));
-
-        /// <summary>
-        /// Bindable property that allows to set navigation context.
-        /// </summary>
-        public static readonly BindableProperty NavigationProperty =
-            BindableProperty.Create(nameof(Navigation), typeof(INavigation), typeof(MainPageViewModel), default(Type));
-
-        /// <summary>
-        /// Gets or sets city data.
-        /// View model holds weather data for this city.
-        /// </summary>
-        public City CityData
-        {
-            get => (City)GetValue(CityDataProperty);
-            set => SetValue(CityDataProperty, value);
-        }
-
-        /// <summary>
-        /// Gets or sets task that obtains current weather.
-        /// </summary>
-        public NotificationTask<CurrentWeather> CurrentWeather
-        {
-            get => _currentWeather;
-            set => SetProperty(ref _currentWeather, value);
-        }
-
-        /// <summary>
-        /// Gets or sets city time zone.
-        /// </summary>
-        public NotificationTask<Models.Location.TimeZone> CityTimeZone
-        {
-            get => _cityTimeZone;
-            set => SetProperty(ref _cityTimeZone, value);
-        }
-
-        /// <summary>
-        /// Gets or sets command that initializes weather data.
-        /// </summary>
-        public Command InitializeCommand
-        {
-            get => _initializeCommand;
-            set => SetProperty(ref _initializeCommand, value);
-        }
-
-        /// <summary>
-        /// Gets or sets command that shows screen with forecast.
-        /// </summary>
-        public Command CheckForecastCommand
-        {
-            get => _checkForecastCommand;
-            set => SetProperty(ref _checkForecastCommand, value);
-        }
-
-        /// <summary>
-        /// Gets or sets navigation context of application.
-        /// </summary>
-        public INavigation Navigation
-        {
-            get => (INavigation)GetValue(NavigationProperty);
-            set => SetValue(NavigationProperty, value);
-        }
-
-        /// <summary>
-        /// Gets or sets forecast data.
-        /// </summary>
-        public NotificationTask<Forecast> Forecast
-        {
-            get => _forecast;
-            set => SetProperty(ref _forecast, value);
-        }
-
-        /// <summary>
-        /// Indicates if initialization was completed.
-        /// </summary>
-        public bool InitializationCompleted => ((App)Application.Current).IsInitialized =
-            Forecast != null && CurrentWeather != null && CityTimeZone != null &&
-            Forecast.IsSuccessfullyCompleted &&
-            CurrentWeather.IsSuccessfullyCompleted &&
-            CityTimeZone.IsSuccessfullyCompleted;
-
-        public bool InitializationInProgress => !InitializationCompleted;
-
-        #endregion
-
-        #region methods
-
-        /// <summary>
-        /// Default class constructor.
-        /// </summary>
-        public CurrentWeatherViewModel()
-        {
-            InitializeCommand = new Command(o =>
-            {
-                CurrentWeather = null;
-                Forecast = null;
-                OnPropertyChanged(nameof(InitializationCompleted));
-                OnPropertyChanged(nameof(InitializationInProgress));
-
-                CityTimeZone = new NotificationTask<Models.Location.TimeZone>(InitializeTimeZone());
-                CityTimeZone.PropertyChanged += CityTimeZoneOnPropertyChanged;
-            });
-
-            CheckForecastCommand = new Command(CheckForecast);
-        }
-
-        /// <summary>
-        /// Pushes page with forecast data to navigation stack.
-        /// </summary>
-        /// <param name="param">Page to push to navigation stack.</param>
-        private void CheckForecast(object param)
-        {
-            if (param is Page page)
-            {
-                Navigation.PushAsync(page);
-            }
-        }
-
-        /// <summary>
-        /// Initializes current weather class.
-        /// Sends GET request to server.
-        /// </summary>
-        /// <returns>Async task with current weather.</returns>
-        private async Task<CurrentWeather> InitializeWeather()
-        {
-            var request = new Request<CurrentWeather>(ApiConfig.WEATHER_URL);
-
-            request.AddParameter("appid", ApiConfig.API_KEY);
-            request.AddParameter("id", CityData.Id.ToString());
-            request.AddParameter("units", RegionInfo.CurrentRegion.IsMetric ? "metric" : "imperial");
-
-            return await request.Get();
-        }
-
-        /// <summary>
-        /// Initializes forecast class.
-        /// Sends GET request to server.
-        /// </summary>
-        /// <returns>Async task with forecast data.</returns>
-        private async Task<Forecast> InitializeForecast()
-        {
-            var request = new Request<Forecast>(ApiConfig.FORECAST_URL);
-
-            request.AddParameter("appid", ApiConfig.API_KEY);
-            request.AddParameter("id", CityData.Id.ToString());
-            request.AddParameter("units", RegionInfo.CurrentRegion.IsMetric ? "metric" : "imperial");
-
-            return await request.Get();
-        }
-
-        /// <summary>
-        /// Initializes time zone for city.
-        /// </summary>
-        /// <returns>Async task with time zone.</returns>
-        private async Task<Models.Location.TimeZone> InitializeTimeZone()
-        {
-            var request = new Request<Models.Location.TimeZone>(ApiConfig.TIMEZONE_URL);
-
-            request.AddParameter("location", $"{CityData.Coordinates.Latitude},{CityData.Coordinates.Longitude}");
-            request.AddParameter("timestamp",
-                DateTime.UtcNow.Subtract(new DateTime(1970, 1, 1)).TotalSeconds.ToString());
-            request.AddParameter("sensor", "false");
-
-            return await request.Get();
-        }
-
-        /// <summary>
-        /// Starts request to weather API after time zone request is completed.
-        /// </summary>
-        /// <param name="sender">Object that sent event.</param>
-        /// <param name="propertyChangedEventArgs">Arguments of the event.</param>
-        private void CityTimeZoneOnPropertyChanged(object sender, PropertyChangedEventArgs propertyChangedEventArgs)
-        {
-            if (propertyChangedEventArgs.PropertyName == "Result")
-            {
-                CurrentWeather = new NotificationTask<CurrentWeather>(InitializeWeather());
-                Forecast = new NotificationTask<Forecast>(InitializeForecast());
-
-                CurrentWeather.PropertyChanged += CurrentWeatherOnPropertyChanged;
-                Forecast.PropertyChanged += ForecastOnPropertyChanged;
-            }
-        }
-
-        /// <summary>
-        /// Callback method that is invoked on Forecast property change.
-        /// </summary>
-        /// <param name="sender">Object that sent event.</param>
-        /// <param name="propertyChangedEventArgs">Arguments of the event.</param>
-        private void ForecastOnPropertyChanged(object sender, PropertyChangedEventArgs propertyChangedEventArgs)
-        {
-            var task = ForecastOnPropertyChangedTask(propertyChangedEventArgs.PropertyName);
-        }
-
-        /// <summary>
-        /// Callback method that is invoked on Current Weather property change.
-        /// </summary>
-        /// <param name="sender">Object that sent event.</param>
-        /// <param name="propertyChangedEventArgs">Arguments of the event.</param>
-        private void CurrentWeatherOnPropertyChanged(object sender,
-            PropertyChangedEventArgs propertyChangedEventArgs)
-        {
-            var task = CurrentWeatherOnPropertyChangedTask(propertyChangedEventArgs.PropertyName);
-        }
-
-        /// <summary>
-        /// Method executed when one of Forecast property has changed.
-        /// </summary>
-        /// <param name="propertyName">Name of property that has changed.</param>
-        /// <returns>Task to be executed.</returns>
-        private async Task ForecastOnPropertyChangedTask(string propertyName)
-        {
-            if (propertyName == nameof(NotificationTask<Forecast>.IsFaulted))
-            {
-                if (Forecast.InnerException is HttpException exception)
-                {
-                    await ErrorHandler.HandleException((int)exception.StatusCode, exception.StatusCode.ToString());
-                }
-            }
-
-            if (propertyName == nameof(NotificationTask<Forecast>.IsSuccessfullyCompleted))
-            {
-                foreach (var currentWeather in Forecast.Result.WeatherList)
-                {
-                    if (currentWeather != null)
-                    {
-                        currentWeather.CityName = CityData.Name;
-                    }
-                }
-
-                OnPropertyChanged(nameof(InitializationCompleted));
-                OnPropertyChanged(nameof(InitializationInProgress));
-            }
-        }
-
-        /// <summary>
-        /// Method executed when one of Current Weather property has changed.
-        /// </summary>
-        /// <param name="propertyName">Name of property that has changed.</param>
-        /// <returns>Task to be executed.</returns>
-        private async Task CurrentWeatherOnPropertyChangedTask(string propertyName)
-        {
-            if (propertyName == nameof(NotificationTask<CurrentWeather>.IsFaulted))
-            {
-                if (CurrentWeather.InnerException is HttpException exception)
-                {
-                    await ErrorHandler.HandleException((int)exception.StatusCode, exception.StatusCode.ToString());
-                }
-            }
-
-            if (propertyName == nameof(NotificationTask<CurrentWeather>.IsSuccessfullyCompleted))
-            {
-                OnPropertyChanged(nameof(InitializationCompleted));
-                OnPropertyChanged(nameof(InitializationInProgress));
-            }
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/ViewModels/ForecastViewModel.cs b/test/Weather/Weather/ViewModels/ForecastViewModel.cs
deleted file mode 100755 (executable)
index 2c1e875..0000000
+++ /dev/null
@@ -1,270 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.Linq;
-using Weather.Models.Weather;
-using Weather.Utils;
-using Xamarin.Forms;
-using Tizen.System;
-using Tizen;
-
-namespace Weather.ViewModels
-{
-    /// <summary>
-    /// ViewModel class for forecast root page.
-    /// </summary>
-    public class ForecastViewModel : ViewModelBase
-    {
-        #region fields
-
-        /// <summary>
-        /// Local storage of all the forecasts (in CurrentWeather format)
-        /// </summary>
-        private ObservableCollection<CurrentWeather> _forecastsModels;
-
-        /// <summary>
-        /// Command to handle UI request for a previous forecast display
-        /// </summary>
-        private Command _previousForecastCommand;
-
-        /// <summary>
-        /// Command to handle UI request for next forecast display
-        /// </summary>
-        private Command _nextForecastCommand;
-
-        #endregion
-
-        #region properties
-
-        /// <summary>
-        /// Bindable property that allows to set forecast data.
-        /// </summary>
-        public static readonly BindableProperty ForecastProperty =
-            BindableProperty.Create(nameof(Forecast), typeof(Forecast), typeof(ForecastViewModel), default(Forecast),
-                propertyChanged: ForecastPropertyChanged);
-
-        /// <summary>
-        /// Bindable property that allows to set timezone offset property.
-        /// </summary>
-        public static readonly BindableProperty OffsetProperty =
-            BindableProperty.Create(nameof(Offset), typeof(int), typeof(ForecastViewModel), default(int));
-
-        /// <summary>
-        /// Bindable property that allows to set City Name property.
-        /// </summary>
-        public static readonly BindableProperty CityNameProperty =
-            BindableProperty.Create(nameof(CityName), typeof(string), typeof(ForecastViewModel), "");
-
-        /// <summary>
-        /// Gets or sets timezone offset property.
-        /// </summary>
-        public int Offset
-        {
-            get => (int)GetValue(OffsetProperty);
-            set => SetValue(OffsetProperty, value);
-        }
-
-        /// <summary>
-        /// Identifier of current forecast being presented in UI (id of an element in _forecastsModels table)
-        /// </summary>
-        public int CurrentForecastId { get; private set; } = 0;
-
-        /// <summary>
-        /// Readonly property referencing currently selected forecast
-        /// </summary>
-        public CurrentWeather SelectedForecast
-        {
-            get
-            {
-                if (ForecastsModels != null)
-                {
-                    return ForecastsModels[CurrentForecastId];
-                }
-                else
-                {
-                    return null;
-                }
-            }
-        }
-
-        /// <summary>
-        /// Get or set forecast data.
-        /// </summary>
-        public Forecast Forecast
-        {
-            get => (Forecast)GetValue(ForecastProperty);
-            set => SetValue(ForecastProperty, value);
-        }
-
-        /// <summary>
-        /// Get or set CityName property
-        /// </summary>
-        public string CityName
-        {
-            get => GetValue(CityNameProperty).ToString();
-            set => SetValue(CityNameProperty, value);
-        }
-
-        /// <summary>
-        /// Get or set _forecastsModels => Local storage of all the forecasts (in CurrentWeather format)
-        /// </summary>
-        public ObservableCollection<CurrentWeather> ForecastsModels
-        {
-            get => _forecastsModels;
-            set => SetProperty(ref _forecastsModels, value);
-        }
-
-        /// <summary>
-        /// Get or set _nextForecastCommand => Command to handle UI request for next forecast display
-        /// </summary>
-        public Command NextForecastCommand
-        {
-            get => _nextForecastCommand;
-            set => SetProperty(ref _nextForecastCommand, value);
-        }
-
-        /// <summary>
-        /// Get or set _previousForecastCommand => Command to handle UI request for a previous forecast display
-        /// </summary>
-        public Command PreviousForecastCommand
-        {
-            get => _previousForecastCommand;
-            set => SetProperty(ref _previousForecastCommand, value);
-        }
-
-        #endregion
-
-        #region methods
-
-        /// <summary>
-        /// Callback method invoked on Forecast property change.
-        /// </summary>
-        /// <param name="bindable">Object that contains property.</param>
-        /// <param name="oldValue">Old value of the property.</param>
-        /// <param name="newValue">New value of the property.</param>
-        private static void ForecastPropertyChanged(BindableObject bindable, object oldValue, object newValue)
-        {
-            if (newValue != null)
-            {
-                var viewModel = (ForecastViewModel)bindable;
-                viewModel.PrepareViewModels();
-            }
-        }
-
-        /// <summary>
-        /// Prepares view-models for every day of forecast.
-        /// Assigns prev/next forecast handlers
-        /// </summary>
-        private void PrepareViewModels()
-        {
-            ForecastsModels = new ObservableCollection<CurrentWeather>();
-            var dictionary = SortViewModelsByDate();
-            foreach (var list in dictionary.Values)
-            {
-                foreach (CurrentWeather forecast in list)
-                {
-                    ForecastsModels.Add(forecast);
-                }
-            }
-
-            // Previous forecast handler - either navigate down the forecast list or
-            // let the user know that the bottom (0) is reached via a simple vibration
-            PreviousForecastCommand = new Command(o =>
-            {
-                if (ForecastsModels != null)
-                {
-                    if (CurrentForecastId > 0)
-                    {
-                        CurrentForecastId--;
-                        OnPropertyChanged(nameof(SelectedForecast));
-                    }
-                    else
-                    {
-                        Vibrate();
-                    }
-                }
-            });
-
-            // Next forecast handler - either navigate up the forecast list or
-            // let the user know that the top (most distant forecast) is reached via a simple vibration
-            NextForecastCommand = new Command(o =>
-            {
-                if (ForecastsModels != null)
-                {
-                    if (CurrentForecastId < _forecastsModels.Count - 1)
-                    {
-                        CurrentForecastId++;
-                        OnPropertyChanged(nameof(SelectedForecast));
-                    }
-                    else
-                    {
-                        Vibrate();
-                    }
-                }
-            });
-            // Notify all parties interested that the Selected forecast (initially the first one) is
-            // ready and waiting to be presented in the relevant View.
-            OnPropertyChanged(nameof(SelectedForecast));
-        }
-
-        /// <summary>
-        /// Sort forecast data by date.
-        /// </summary>
-        /// <returns>List of sorted forecast data.</returns>
-        private Dictionary<int, List<CurrentWeather>> SortViewModelsByDate()
-        {
-            var dictionary = new Dictionary<int, List<CurrentWeather>>();
-
-            foreach (var weather in Forecast.WeatherList)
-            {
-                var day = TimeStamp.Convert(weather.TimeStamp).AddSeconds(Offset).DayOfYear;
-
-                if (!dictionary.ContainsKey(day))
-                {
-                    dictionary.Add(day, new List<CurrentWeather>());
-                }
-
-                dictionary[day].Add(weather);
-            }
-
-            if (dictionary.Count > 5)
-            {
-                dictionary.Remove(dictionary.Last().Key);
-            }
-
-            return dictionary;
-        }
-
-
-        /// <summary>
-        /// Use Tizen.System.Feedback to let user know something went a bit wrong (vibrate)      
-        /// </summary>
-        private void Vibrate()
-        {
-            try
-            {
-                Feedback feedback = new Feedback();
-                feedback.Play(FeedbackType.All, "General");
-            }
-            catch (System.Exception e)
-            {
-                Log.Debug("WeatherApp", e.Message);
-            }
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/ViewModels/MainPageViewModel.cs b/test/Weather/Weather/ViewModels/MainPageViewModel.cs
deleted file mode 100755 (executable)
index 378f6d2..0000000
+++ /dev/null
@@ -1,256 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.Linq;
-using Weather.Models.Location;
-using Weather.Service;
-using Weather.Utils;
-using Xamarin.Forms;
-using Xamarin.Forms.Internals;
-
-namespace Weather.ViewModels
-{
-    /// <summary>
-    /// ViewModel class for Main Page.
-    /// </summary>
-    public class MainPageViewModel : ViewModelBase
-    {
-        #region fields
-
-        /// <summary>
-        /// Bindable property that allows to set navigation context.
-        /// </summary>
-        public static readonly BindableProperty NavigationProperty =
-            BindableProperty.Create(nameof(Navigation), typeof(INavigation), typeof(MainPageViewModel), default(Type));
-
-
-        /// <summary>
-        /// Maximum number of items that will be displayed on the list.
-        /// </summary>
-        private const int MAX_ITEMS_ON_LIST = 10;
-
-        /// <summary>
-        /// Contains all supported cities.
-        /// </summary>
-        private CityProvider _provider;
-
-        /// <summary>
-        /// Local storage of collection of displayed cities.
-        /// </summary>
-        private ObservableCollection<City> _cities;
-
-        /// <summary>
-        /// Local storage of city name entered by user.
-        /// </summary>
-        private string _enteredCity = "";
-
-        /// <summary>
-        /// Local storage of city selected by user.
-        /// </summary>
-        private City _selectedCity;
-
-        /// <summary>
-        /// Local storage of command that opens page provided in command parameter.
-        /// </summary>
-        private Command _checkWeatherCommand;
-
-        /// <summary>
-        /// Local storage of country code.
-        /// </summary>
-        private string _enteredCountry;
-
-        /// <summary>
-        /// Local storage of CityEntry text color.
-        /// </summary>
-        private Color _cityEntryTextColor;
-
-        #endregion
-
-        #region properties
-
-        /// <summary>
-        /// Flag used for Watch UI visibility.
-        /// A "helper" UI element (list of cities matching criteria) should be hidden if the right city is entered       
-        /// </summary>
-        public bool InvalidCityEntered => (SelectedCity == null) && (EnteredCity.Length != 0) ? true : false;
-
-        /// <summary>
-        /// Gets or sets collection of available cities.
-        /// </summary>
-        public ObservableCollection<City> Cities
-        {
-            get => _cities;
-            set => SetProperty(ref _cities, value);
-        }
-
-        /// <summary>
-        /// Gets or sets text color for CityEntry.
-        /// </summary>
-        public Color CityEntryTextColor
-        {
-            get => _cityEntryTextColor;
-            set => SetProperty(ref _cityEntryTextColor, value);
-        }
-
-        /// <summary>
-        /// Gets or sets city name entered by user.
-        /// </summary>
-        public string EnteredCity
-        {
-            get => _enteredCity;
-            set
-            {
-                SetProperty(ref _enteredCity, value);
-                OnPropertyChanged(nameof(InvalidCityEntered));
-                FilterCities();
-                ValidateInput();
-            }
-        }
-
-        /// <summary>
-        /// Gets or sets city selected by user.
-        /// </summary>
-        public City SelectedCity
-        {
-            get => _selectedCity;
-            set
-            {
-                SetProperty(ref _selectedCity, value);
-                OnPropertyChanged(nameof(InvalidCityEntered));
-                if (value != null)
-                {
-                    ((App)Application.Current).IsInitialized = false;
-                    EnteredCity = value.Name;
-                    CityEntryTextColor = Color.Gray;
-                    CheckWeatherCommand.ChangeCanExecute();
-                }
-                else
-                {
-                    CityEntryTextColor = Color.Red;
-                }
-            }
-        }
-
-        /// <summary>
-        /// Gets or sets command that opens page provided in command parameter.
-        /// </summary>
-        public Command CheckWeatherCommand
-        {
-            get => _checkWeatherCommand;
-            set => SetProperty(ref _checkWeatherCommand, value);
-        }
-
-        /// <summary>
-        /// Country code in ISO-3166 format.
-        /// </summary>
-        public string EnteredCountry
-        {
-            get => _enteredCountry;
-            set
-            {
-                SetProperty(ref _enteredCountry, value);
-                FilterCities();
-            }
-        }
-
-        /// <summary>
-        /// Gets or sets navigation context.
-        /// </summary>
-        public INavigation Navigation
-        {
-            get => (INavigation)GetValue(NavigationProperty);
-            set => SetValue(NavigationProperty, value);
-        }
-
-        #endregion
-
-        #region methods
-
-        /// <summary>
-        /// Default class constructor.
-        /// </summary>
-        public MainPageViewModel()
-        {
-            LoadCityList();
-
-            Cities = new ObservableCollection<City>(_provider.FindCity("", MAX_ITEMS_ON_LIST));
-            CheckWeatherCommand = new Command<Page>(ExecuteCheckWeatherCommand, CanExecuteCheckWeatherCommand);
-            CityEntryTextColor = Color.FromRgb(128, 128, 128);
-
-            // Fill in the country code for better "first run experience"           
-            SetProperty<string>(ref _enteredCountry, "US");
-        }
-
-        /// <summary>
-        /// Loads list of cities from JSON file.
-        /// </summary>
-        private void LoadCityList()
-        {
-            var jsonFileReader = new JsonFileReader<IList<City>>("Weather.Data.", "city.list.json");
-            jsonFileReader.Read();
-            _provider = new CityProvider(jsonFileReader.Result.AsQueryable());
-        }
-
-        /// <summary>
-        /// Filters city list using text entered by user.
-        /// </summary>
-        private void FilterCities()
-        {
-            Cities.Clear();
-            _provider.FindCity(_enteredCity, _enteredCountry, MAX_ITEMS_ON_LIST).ForEach(c => Cities.Add(c));
-        }
-
-        /// <summary>
-        /// Validates city name entered by user.
-        /// </summary>
-        private void ValidateInput()
-        {
-            if (!_provider.Validate(EnteredCity))
-            {
-                SelectedCity = null;
-                CityEntryTextColor = Color.Red;
-                CheckWeatherCommand.ChangeCanExecute();
-            }
-        }
-
-        /// <summary>
-        /// Checks if CheckWeather command could be executed.
-        /// Page parameter and selected city can't be null.
-        /// </summary>
-        /// <param name="page">Page that will be shown.</param>
-        /// <returns>
-        /// Returns true if city is selected.
-        /// If no city is selected, or it is not valid method returns false.
-        /// </returns>
-        private bool CanExecuteCheckWeatherCommand(Page page)
-        {
-            return page != null && SelectedCity != null;
-        }
-
-        /// <summary>
-        /// Executes CheckWeather command.
-        /// Pushes page given as command parameter to navigation stack.
-        /// </summary>
-        /// <param name="page">Page that will be opened.</param>
-        private void ExecuteCheckWeatherCommand(Page page)
-        {
-            Navigation.PushAsync(page);
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/ViewModels/ViewModelBase.cs b/test/Weather/Weather/ViewModels/ViewModelBase.cs
deleted file mode 100755 (executable)
index a6ba1c7..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System.ComponentModel;
-using System.Runtime.CompilerServices;
-using Xamarin.Forms;
-
-namespace Weather.ViewModels
-{
-    /// <summary>
-    /// Base ViewModel class.
-    /// </summary>
-    public class ViewModelBase : BindableObject
-    {
-        /// <summary>
-        /// Generic set property method which also calls OnPropertyChanged() after value modification.
-        /// </summary>
-        /// <param name="storage">Value storage object</param>
-        /// <param name="value">Value to set</param>
-        /// <param name="propertyName">Automatically obtained property name</param>
-        /// <typeparam name="T">Property value type</typeparam>
-        /// <returns>True if value was changed, false if value is not different from current.</returns>
-        protected bool SetProperty<T>(ref T storage, T value,
-            [CallerMemberName] string propertyName = null)
-        {
-            if (Equals(storage, value))
-            {
-                return false;
-            }
-
-            storage = value;
-            OnPropertyChanged(propertyName);
-            return true;
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Views/ApiErrorPage.xaml b/test/Weather/Weather/Views/ApiErrorPage.xaml
deleted file mode 100755 (executable)
index 50889b6..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-
-<w:CirclePage xmlns="http://xamarin.com/schemas/2014/forms"
-             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-             xmlns:viewModels="clr-namespace:Weather.ViewModels;assembly=Weather"
-             xmlns:converters="clr-namespace:Weather.Converters;assembly=Weather"
-             x:Class="Weather.Views.ApiErrorPage"
-             NavigationPage.HasBackButton="False"        
-             NavigationPage.HasNavigationBar="False"
-             xmlns:w="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"
-             >
-
-    <ContentPage.BindingContext>
-        <viewModels:ApiErrorViewModel />
-    </ContentPage.BindingContext>
-
-    <ContentPage.Resources>
-        <ResourceDictionary>
-            <converters:TimeStampToDateConverter x:Key="TimeStampToDateConverter" />
-        </ResourceDictionary>
-    </ContentPage.Resources>
-    <w:CircleStackLayout Orientation="Vertical" Spacing="10">
-        <Label Text="Error"
-               FontSize="12"
-               TextColor="OrangeRed"
-               HorizontalTextAlignment="Center"
-               VerticalTextAlignment="Center"/>
-        <Label Text="Error occurred while trying to get response from API."
-               FontSize="8" 
-               HorizontalTextAlignment="Center"
-               VerticalTextAlignment="Center" />
-        <Label Text="{Binding Code, StringFormat='HTTP status code: {0}'}"   
-               FontSize="6" 
-               HorizontalTextAlignment="Center"
-               VerticalTextAlignment="Center" />
-        <Label Text="{Binding Message}"
-               FontSize="6" 
-               HorizontalTextAlignment="Center"
-               VerticalTextAlignment="Center" />
-    </w:CircleStackLayout>
-    <w:CirclePage.ActionButton>
-        <w:ActionButtonItem Command="{Binding ExitAppCommand}" Text="Exit" />
-    </w:CirclePage.ActionButton>
-</w:CirclePage>
\ No newline at end of file
diff --git a/test/Weather/Weather/Views/ApiErrorPage.xaml.cs b/test/Weather/Weather/Views/ApiErrorPage.xaml.cs
deleted file mode 100755 (executable)
index 9b9b217..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using Xamarin.Forms;
-
-namespace Weather.Views
-{
-    /// <summary>
-    /// Interaction logic for ApiErrorPage.xaml.
-    /// </summary>
-    public partial class ApiErrorPage
-    {
-        #region methods
-
-        /// <summary>
-        /// Default class constructor.
-        /// </summary>
-        public ApiErrorPage()
-        {
-            InitializeComponent();
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Views/CurrentWeatherPage.xaml b/test/Weather/Weather/Views/CurrentWeatherPage.xaml
deleted file mode 100755 (executable)
index 6e4761d..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-
-<w:CirclePage xmlns="http://xamarin.com/schemas/2014/forms"
-             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-             xmlns:viewModels="clr-namespace:Weather.ViewModels;assembly=Weather"
-             xmlns:behaviors="clr-namespace:Weather.Behaviors;assembly=Weather"
-             xmlns:converters="clr-namespace:Weather.Converters;assembly=Weather"
-             xmlns:location="clr-namespace:Weather.Models.Location;assembly=Weather"
-             xmlns:controls="clr-namespace:Weather.Controls;assembly=Weather"
-             xmlns:views="clr-namespace:Weather.Views;assembly=Weather"
-             xmlns:w="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"            
-             x:Class="Weather.Views.CurrentWeatherPage"
-             x:Name="Root"
-             NavigationPage.HasNavigationBar="False"
-             Title="Current Weather"            
-             RotaryFocusObject="{x:Reference myscroller}">
-
-    <w:CirclePage.BindingContext>
-        <viewModels:CurrentWeatherViewModel x:Name="ViewModel"
-                                            CityData="{Binding Source={x:Reference Name=Root}, Path=CityData}"
-                                            Navigation="{Binding Source={x:Reference Name=Root}, Path=Navigation}" />
-    </w:CirclePage.BindingContext>
-
-    <w:CirclePage.Behaviors>
-        <behaviors:CurrentWeatherPageBehavior
-            AppearingCommand="{Binding Source={x:Reference Name=ViewModel}, Path=InitializeCommand}" />
-    </w:CirclePage.Behaviors>
-
-    <w:CirclePage.Resources>
-        <ResourceDictionary>
-            <converters:TimeStampToDateConverter x:Key="TimeStampToDateConverter" />
-            <converters:TimeStampToTimeConverter x:Key="TimeStampToTimeConverter" />
-            <converters:DegreeToCardinalDirectionConverter x:Key="CardinalDirectionConverter" />
-            <converters:ImageSourceConverter x:Key="ImageSourceConverter" />
-            <converters:MeasurementSystemConverter x:Key="MeasurementSystemConverter" />
-            <location:TimeZone x:Key="TimeZone"
-                               Offset="{Binding Source={x:Reference Name=ViewModel}, Path=CityTimeZone.Result.Offset}" />
-        </ResourceDictionary>
-    </w:CirclePage.Resources>
-
-    <StackLayout Orientation="Vertical">
-        <ActivityIndicator
-            IsVisible="{Binding InitializationInProgress}"
-            IsRunning="{Binding InitializationInProgress}"
-        />
-
-        <w:CircleScrollView x:Name="myscroller">
-            <StackLayout 
-                     Spacing="20"
-                     IsVisible="{Binding InitializationCompleted}">
-
-                <Label 
-                   Text="{Binding CurrentWeather.Result.CityName}"
-                   HeightRequest="120"
-                   MinimumHeightRequest="120"               
-                   FontSize="12"
-                   HorizontalTextAlignment="Center"
-                   VerticalTextAlignment="End"
-            />
-
-                <controls:DoubleLabel
-                    MainText="{Binding CurrentWeather.Result.TimeStamp, Converter={StaticResource TimeStampToDateConverter}}"
-                    SubText="Time of measurement." />
-                <StackLayout Orientation="Horizontal">
-                    <controls:DoubleLabel
-                    MainText="{Binding CurrentWeather.Result.SunData.SunriseTimeStamp,
-                            Converter={StaticResource TimeStampToTimeConverter}, ConverterParameter={StaticResource TimeZone}}"
-                    SubText="Sunrise" />
-                    <controls:DoubleLabel
-                    MainText="{Binding CurrentWeather.Result.SunData.SunsetTimeStamp,
-                            Converter={StaticResource TimeStampToTimeConverter}, ConverterParameter={StaticResource TimeZone}}"
-                    SubText="Sunset" />
-                </StackLayout>
-
-                <Image
-                    Source="{Binding CurrentWeather.Result.Weather[0].Icon, Converter={StaticResource ImageSourceConverter}}"
-                    HeightRequest="100"
-                    WidthRequest="100"
-                    Aspect="AspectFit" />
-                <Label
-                    Text="{Binding CurrentWeather.Result.Weather[0].Description}"                    
-                    HorizontalTextAlignment="Center"
-                    VerticalTextAlignment="Center"
-                    FontSize="8" />
-
-
-                
-                
-                <controls:DoubleLabel
-                        MainText="{Binding CurrentWeather.Result.WeatherData.Temperature, Converter={StaticResource MeasurementSystemConverter}, ConverterParameter='temp'}"
-                        SubText="Temperature" />
-
-
-                <StackLayout Orientation="Horizontal">
-                    <controls:DoubleLabel
-                        MainText="{Binding CurrentWeather.Result.Clouds.Percent, StringFormat=' {0}%'}"
-                        SubText="Clouds percent" />
-                    <controls:DoubleLabel
-                        MainText="{Binding CurrentWeather.Result.WeatherData.Pressure, StringFormat=' {0} hPa'}"
-                        SubText="Pressure" />
-                </StackLayout>
-
-                <StackLayout Orientation="Horizontal">
-                    <controls:DoubleLabel
-                        MainText="{Binding CurrentWeather.Result.Wind.Speed, Converter={StaticResource MeasurementSystemConverter}, ConverterParameter='speed'}"
-                        SubText="Wind speed" />
-                    <controls:DoubleLabel
-                        MainText="{Binding CurrentWeather.Result.Wind.Degree, Converter={StaticResource CardinalDirectionConverter}}"
-                        SubText="Wind direction" />
-                </StackLayout>
-
-                <Button Text="Check Forecast"
-                        BackgroundColor="DarkGray"
-                        TextColor="White"
-                        HeightRequest="90"
-                        MinimumHeightRequest="90"  
-                        Command="{Binding CheckForecastCommand}"
-                        IsVisible="{Binding InitializationCompleted}">
-                    <Button.CommandParameter>
-                        <views:ForecastPage>
-                            <views:ForecastPage.BindingContext>
-                                <viewModels:ForecastViewModel
-                            Forecast="{Binding Source={x:Reference Name=ViewModel}, Path=Forecast.Result}"
-                            Offset="{Binding Source={x:Reference Name=ViewModel}, Path=CityTimeZone.Result.Offset}"
-                            CityName="{Binding Source={x:Reference Name=ViewModel}, Path=CityData.Name}" />
-                            </views:ForecastPage.BindingContext>
-                        </views:ForecastPage>
-                    </Button.CommandParameter>
-                </Button>
-            </StackLayout>
-        </w:CircleScrollView>
-
-
-    </StackLayout>
-</w:CirclePage>
\ No newline at end of file
diff --git a/test/Weather/Weather/Views/CurrentWeatherPage.xaml.cs b/test/Weather/Weather/Views/CurrentWeatherPage.xaml.cs
deleted file mode 100755 (executable)
index 115e0cf..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using Weather.Models.Location;
-using Xamarin.Forms;
-
-namespace Weather.Views
-{
-    /// <summary>
-    /// Interaction logic for CurrentWeatherPage.xaml.
-    /// </summary>
-    public partial class CurrentWeatherPage
-    {
-        #region properties
-
-        /// <summary>
-        /// Bindable property that allows to set city data selected by user.
-        /// </summary>
-        public static readonly BindableProperty CityDataProperty =
-            BindableProperty.Create(nameof(CityData), typeof(City), typeof(CurrentWeatherPage), default(City));
-
-        /// <summary>
-        /// Gets or sets city data selected by user.
-        /// </summary>
-        public City CityData
-        {
-            get => (City)GetValue(CityDataProperty);
-            set => SetValue(CityDataProperty, value);
-        }
-
-        #endregion
-
-        /// <summary>
-        /// Default class constructor.
-        /// </summary>
-        public CurrentWeatherPage()
-        {
-            InitializeComponent();
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Views/ForecastPage.xaml b/test/Weather/Weather/Views/ForecastPage.xaml
deleted file mode 100755 (executable)
index ea169f4..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-
-<w:CirclePage xmlns="http://xamarin.com/schemas/2014/forms"
-             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-             xmlns:viewModels="clr-namespace:Weather.ViewModels;assembly=Weather"
-             xmlns:behaviors="clr-namespace:Weather.Behaviors;assembly=Weather"
-             xmlns:converters="clr-namespace:Weather.Converters;assembly=Weather"
-             xmlns:location="clr-namespace:Weather.Models.Location;assembly=Weather"
-             xmlns:controls="clr-namespace:Weather.Controls;assembly=Weather"
-             xmlns:views="clr-namespace:Weather.Views;assembly=Weather"
-             xmlns:w="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"            
-             x:Class="Weather.Views.ForecastPage"
-             x:Name="ForecastCirclePage"
-             NavigationPage.HasNavigationBar="False"
-             RotaryFocusObject="{x:Reference ForecastCirclePage}"
-             Title="Weather Forecast">
-
-    <w:CirclePage.Resources>
-        <ResourceDictionary>
-            <converters:TimeStampToDateConverter x:Key="TimeStampToDateConverter" />
-            <converters:TimeStampToTimeConverter x:Key="TimeStampToTimeConverter" />
-            <converters:DegreeToCardinalDirectionConverter x:Key="CardinalDirectionConverter" />
-            <converters:ImageSourceConverter x:Key="ImageSourceConverter" />
-            <converters:MeasurementSystemConverter x:Key="MeasurementSystemConverter" />
-        </ResourceDictionary>
-    </w:CirclePage.Resources>
-
-    <StackLayout Orientation="Vertical" HorizontalOptions="CenterAndExpand" >
-
-        <Label 
-            Text="{Binding SelectedForecast.CityName}"
-            HeightRequest="60"
-            MinimumHeightRequest="60"               
-            FontSize="10"
-            HorizontalTextAlignment="Center"
-            VerticalTextAlignment="End"/>
-        <Label
-            Text="{Binding SelectedForecast.TimeStamp, Converter={StaticResource TimeStampToDateConverter}}"
-            FontSize="8"
-            HorizontalTextAlignment="Center"/>
-        <StackLayout Orientation="Horizontal" HorizontalOptions="CenterAndExpand">
-            <StackLayout Orientation="Vertical">
-                <Image
-                    Source="{Binding SelectedForecast.Weather[0].Icon, Converter={StaticResource ImageSourceConverter}}"
-                    HeightRequest="100"
-                    WidthRequest="100"
-                    Aspect="AspectFit" />
-                <Label
-                    Text="{Binding SelectedForecast.Weather[0].Description}"                   
-                    HorizontalTextAlignment="Center"
-                    VerticalTextAlignment="Center"
-                    FontSize="5" />
-            </StackLayout>
-            <StackLayout Orientation="Vertical">
-                <controls:DoubleLabel
-                        MainText="{Binding SelectedForecast.WeatherData.Temperature, Converter={StaticResource MeasurementSystemConverter}, ConverterParameter='temp'}"
-                        SubText="Temperature" />
-                <controls:DoubleLabel
-                        MainText="{Binding SelectedForecast.Clouds.Percent, StringFormat=' {0}%'}"
-                        SubText="Clouds percent" />
-            </StackLayout>
-        </StackLayout>
-
-        <StackLayout Orientation="Horizontal">
-            <controls:DoubleLabel
-                        MainText="{Binding SelectedForecast.Wind.Speed, Converter={StaticResource MeasurementSystemConverter}, ConverterParameter='speed'}"
-                        SubText="Wind speed" />
-            <controls:DoubleLabel
-                        MainText="{Binding SelectedForecast.Wind.Degree, Converter={StaticResource CardinalDirectionConverter}}"
-                        SubText="Wind direction" />
-        </StackLayout>
-    </StackLayout>
-</w:CirclePage>
\ No newline at end of file
diff --git a/test/Weather/Weather/Views/ForecastPage.xaml.cs b/test/Weather/Weather/Views/ForecastPage.xaml.cs
deleted file mode 100755 (executable)
index e2983d4..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System.Linq;
-using Weather.Utils;
-using Tizen.Wearable.CircularUI.Forms;
-
-namespace Weather.Views
-{
-    /// <summary>
-    /// Interaction logic for ForecastPage.xaml.
-    /// </summary>
-    public partial class ForecastPage : CirclePage, IRotaryEventReceiver
-    {
-        #region fields
-        private bool _rotating = false;
-
-        #endregion fields
-
-        #region methods
-
-        /// <summary>
-        /// Default class constructor.
-        /// </summary>
-        public ForecastPage()
-        {
-            InitializeComponent();
-        }
-
-        /// <summary>
-        /// Handle bezel rotation
-        /// </summary>
-        /// <param name="args">Rotary event arguments</param>
-        public void Rotate(RotaryEventArgs args)
-        {
-            var a = this.BindingContext;
-
-            if (_rotating)
-            {
-                return;
-            }
-
-            _rotating = true;           
-            if (args.IsClockwise)
-            {
-                ((ViewModels.ForecastViewModel)BindingContext).NextForecastCommand.Execute(null);
-                _rotating = false;
-            }
-            else
-            {
-                ((ViewModels.ForecastViewModel)BindingContext).PreviousForecastCommand.Execute(null);
-                _rotating = false;
-            }
-        }
-
-        /// <summary>
-        /// Sets the binding context to page resources.
-        /// </summary>
-        protected override void OnBindingContextChanged()
-        {
-            base.OnBindingContextChanged();
-
-            if (Resources != null)
-            {
-                foreach (var bindableString in Resources.Values.OfType<BindableString>())
-                {
-                    bindableString.BindingContext = BindingContext;
-                }
-            }
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Views/MainPage.xaml b/test/Weather/Weather/Views/MainPage.xaml
deleted file mode 100755 (executable)
index 05a16a7..0000000
+++ /dev/null
@@ -1,114 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-
-<w:CirclePage xmlns="http://xamarin.com/schemas/2014/forms"
-             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-             xmlns:viewModels="clr-namespace:Weather.ViewModels;assembly=Weather"
-             xmlns:behaviors="clr-namespace:Weather.Behaviors;assembly=Weather"
-             xmlns:w="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"            
-             xmlns:views="clr-namespace:Weather.Views;assembly=Weather"
-             x:Class="Weather.Views.MainPage"
-             x:Name="Root"
-             NavigationPage.HasNavigationBar="False"
-             RotaryFocusObject="{x:Reference myscroller}">
-
-
-    <w:CirclePage.BindingContext>
-        <viewModels:MainPageViewModel 
-            x:Name="ViewModel"              
-            Navigation="{Binding Source={x:Reference Name=Root}, Path=Navigation}" />
-    </w:CirclePage.BindingContext>
-
-
-    <w:CircleScrollView  x:Name="myscroller">
-        <StackLayout  
-            Orientation="Vertical"
-            HorizontalOptions="FillAndExpand"
-            VerticalOptions="FillAndExpand"
-            Spacing="5">
-
-            <Label Text="Weather App"
-                   FontSize="12"
-                   HorizontalTextAlignment="Center"
-                   VerticalTextAlignment="End" 
-                   HeightRequest="120"
-                   MinimumHeightRequest="120"/>
-
-            <Label Text="Country code:"
-                   FontSize="8"  
-                   HorizontalTextAlignment="Center"
-                   VerticalTextAlignment="Center" />
-
-            <w:PopupEntry BackgroundColor="White"
-                          HorizontalTextAlignment="Center"
-                          HorizontalOptions="Center"
-                          WidthRequest="280"
-                          Text="{Binding EnteredCountry, Mode=TwoWay}">
-                <w:PopupEntry.Behaviors>
-                    <behaviors:CountryCodeValidatorBehavior MaxLength="2" />
-                </w:PopupEntry.Behaviors>
-            </w:PopupEntry>
-
-            <Label Text="City:"
-                   FontSize="8"
-                   HorizontalOptions="Fill"
-                   VerticalOptions="Fill"
-                   HorizontalTextAlignment="Center"
-                   VerticalTextAlignment="Center" />
-
-            <w:PopupEntry x:Name="CityEntry"
-                   BackgroundColor="White"
-                   HorizontalOptions="Center"
-                   WidthRequest="280"
-                   Text="{Binding EnteredCity, Mode=TwoWay}"
-                   HorizontalTextAlignment="Center"
-                   TextColor="{Binding CityEntryTextColor}">
-            </w:PopupEntry>
-
-
-            <Label Text="Matching Cities:"
-                   FontSize="6"
-                   HorizontalOptions="Fill"
-                   VerticalOptions="Fill"
-                   HorizontalTextAlignment="Center"
-                   VerticalTextAlignment="Center" 
-                   IsVisible="{Binding Source={x:Reference Name=ViewModel}, Path=InvalidCityEntered}"/>
-
-            <w:CircleListView ItemsSource="{Binding Cities}"
-                      SelectedItem="{Binding SelectedCity, Mode=TwoWay}"   
-                      IsVisible="{Binding Source={x:Reference Name=ViewModel}, Path=InvalidCityEntered}"
-                      HeightRequest="150"
-                      MinimumHeightRequest="150"
-                      WidthRequest="260" 
-                      HorizontalOptions="Center"
-                      BackgroundColor="Black">
-                <w:CircleListView.ItemTemplate>
-                    <DataTemplate>
-                        <ViewCell>
-                            <Label Text="{Binding Name}"
-                                   FontSize="10"
-                                   HeightRequest="50"
-                                   HorizontalTextAlignment="Center"
-                                   VerticalTextAlignment="Center"
-                                   TextColor="LightGray"/>   
-                        </ViewCell>
-                    </DataTemplate>
-                </w:CircleListView.ItemTemplate>
-            </w:CircleListView>
-
-            <StackLayout VerticalOptions="Fill" MinimumHeightRequest="20" HeightRequest="20"> </StackLayout>
-            <Button                     
-                    Text="Check Weather"
-                    BackgroundColor="DarkGray"
-                    TextColor="White"
-                    Command="{Binding CheckWeatherCommand}"
-                    HeightRequest="90"
-                    MinimumHeightRequest="90">
-                <Button.CommandParameter>
-                    <views:CurrentWeatherPage
-                        CityData="{Binding Source={x:Reference Name=ViewModel}, Path=SelectedCity}" />
-                </Button.CommandParameter>
-            </Button>
-
-        </StackLayout>
-    </w:CircleScrollView>
-</w:CirclePage>
\ No newline at end of file
diff --git a/test/Weather/Weather/Views/MainPage.xaml.cs b/test/Weather/Weather/Views/MainPage.xaml.cs
deleted file mode 100755 (executable)
index 903b384..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-namespace Weather.Views
-{
-    /// <summary>
-    /// Interaction logic for CurrentWeatherPage.xaml
-    /// </summary>
-    public partial class MainPage
-    {
-        #region methods
-
-        /// <summary>
-        /// Default class constructor.
-        /// </summary>
-        public MainPage()
-        {
-            InitializeComponent();
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Views/MissingKeyErrorPage.xaml b/test/Weather/Weather/Views/MissingKeyErrorPage.xaml
deleted file mode 100755 (executable)
index 8129642..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-
-<w:CirclePage xmlns="http://xamarin.com/schemas/2014/forms"
-             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-             xmlns:w="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"
-             xmlns:viewModels="clr-namespace:Weather.ViewModels;assembly=Weather"
-             x:Class="Weather.Views.MissingKeyErrorPage"
-             NavigationPage.HasNavigationBar="False">
-
-    <w:CirclePage.BindingContext>
-        <viewModels:ApiErrorViewModel />
-    </w:CirclePage.BindingContext>
-
-    <w:CirclePage.ActionButton>
-        <w:ActionButtonItem Command="{Binding ExitAppCommand}" Text="Exit app" />
-    </w:CirclePage.ActionButton>
-    
-    <w:CirclePage.Content>
-        <StackLayout 
-            VerticalOptions="CenterAndExpand"
-            HorizontalOptions="CenterAndExpand"
-            Orientation="Vertical">
-            <Label
-                Text="Configuration error"
-                FontSize="Medium"              
-                HorizontalTextAlignment="Center"
-                VerticalTextAlignment="Center"
-                TextColor="OrangeRed"/>
-            <Label
-                Text="API key is not set. Please, define the key in &quot;ApiConfig.cs&quot; file and rebuild application."
-                FontSize="8"              
-                HorizontalTextAlignment="Center"
-                VerticalTextAlignment="Center" />
-        </StackLayout>
-    </w:CirclePage.Content>
-
-</w:CirclePage>
\ No newline at end of file
diff --git a/test/Weather/Weather/Views/MissingKeyErrorPage.xaml.cs b/test/Weather/Weather/Views/MissingKeyErrorPage.xaml.cs
deleted file mode 100755 (executable)
index 3fe7fe0..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using Tizen.Wearable.CircularUI.Forms;
-
-namespace Weather.Views
-{
-    /// <summary>
-    /// Interaction logic for MissingKeyErrorPage.xaml
-    /// </summary>
-    public partial class MissingKeyErrorPage : CirclePage
-    {
-        #region methods
-
-        /// <summary>
-        /// Default class constructor.
-        /// </summary>
-        public MissingKeyErrorPage()
-        {
-            InitializeComponent();
-        }
-
-        #endregion
-    }
-}
\ No newline at end of file
diff --git a/test/Weather/Weather/Weather.cs b/test/Weather/Weather/Weather.cs
deleted file mode 100755 (executable)
index 13b54b5..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-//Copyright 2018 Samsung Electronics Co., Ltd
-//
-//Licensed under the Apache License, Version 2.0 (the "License");
-//you may not use this file except in compliance with the License.
-//You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-//Unless required by applicable law or agreed to in writing, software
-//distributed under the License is distributed on an "AS IS" BASIS,
-//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//See the License for the specific language governing permissions and
-//limitations under the License.
-
-using System;
-using System.Collections.Generic;
-using Tizen.Wearable.CircularUI.Forms;
-using Tizen.Wearable.CircularUI.Forms.Renderer;
-using Xamarin.Forms;
-
-namespace Weather
-{
-    class Program : global::Xamarin.Forms.Platform.Tizen.ApplicationLifecycle
-    {
-        //protected override void OnCreate()
-        //{
-        //    base.OnCreate();
-
-        //    LoadApplication(new App());
-        //}
-
-        /// <summary>
-        /// Called when this application is launched.
-        /// </summary>
-        protected override void OnCreate()
-        {
-            var weather = new App();
-            FormsApplication.LoadApplication(weather);
-        }
-
-        static void Main(string[] args)
-        {
-            var app = new Program();
-            // define your custom handlers
-            var customRenderers = new Dictionary<Type, Func<IRegisterable>>()
-            {
-                { typeof(CirclePage), ()=> new CirclePageRenderer() },
-                { typeof(global:: Tizen.Wearable.CircularUI.Forms.CircleListView), () => new CircleListViewRenderer() },
-                { typeof(global:: Tizen.Wearable.CircularUI.Forms.CircleScrollView), ()=> new global::Tizen.Wearable.CircularUI.Forms.Renderer.CircleScrollViewRenderer() },
-                { typeof(global:: Tizen.Wearable.CircularUI.Forms.PopupEntry), ()=> new global::Tizen.Wearable.CircularUI.Forms.Renderer.PopupEntryRenderer() },
-            };
-            var option = new InitializationOptions(app)
-            {
-                UseMessagingCenter = false,
-                UseStyle = false,
-                UseShell = false,
-                UseVisual = false,
-                StaticRegistarStrategy = StaticRegistrarStrategy.StaticRegistrarOnly,
-                CustomHandlers = customRenderers,
-                Flags = InitializationFlags.DisableCss
-            };
-
-            Forms.Init(option);
-
-            // It's mandatory to initialize Circular UI for using Tizen Wearable Circular UI API
-            global::Tizen.Wearable.CircularUI.Forms.Renderer.FormsCircularUI.Init();
-            app.FormsApplication.Run(args);
-        }
-    }
-}
diff --git a/test/Weather/Weather/Weather.csproj b/test/Weather/Weather/Weather.csproj
deleted file mode 100755 (executable)
index b4c33c7..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-<Project Sdk="Tizen.NET.Sdk/1.0.8">
-
-  <PropertyGroup>
-    <OutputType>Exe</OutputType>
-    <TargetFramework>tizen40</TargetFramework>
-  </PropertyGroup>
-
-    <ItemGroup>
-    <None Remove="Data\city.list.json" />
-    <None Remove="Data\country.list.json" />
-  </ItemGroup>
-  <ItemGroup>
-    <EmbeddedResource Include="Data\city.list.json">
-      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Data\country.list.json">
-      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
-    </EmbeddedResource>
-  </ItemGroup>
-
-  <ItemGroup>
-    <Folder Include="Config\" />
-    <Folder Include="Views\" />
-  </ItemGroup>
-
-  <ItemGroup>
-    <PackageReference Include="Newtonsoft.Json" Version="12.0.2" />
-  </ItemGroup>
-
-  <ItemGroup>
-    <ProjectReference Include="..\..\..\src\XSF\XSF.csproj" />
-  </ItemGroup>
-
-</Project>
diff --git a/test/Weather/Weather/shared/res/Weather.png b/test/Weather/Weather/shared/res/Weather.png
deleted file mode 100755 (executable)
index 57fa097..0000000
Binary files a/test/Weather/Weather/shared/res/Weather.png and /dev/null differ
diff --git a/test/Weather/Weather/tizen-manifest.xml b/test/Weather/Weather/tizen-manifest.xml
deleted file mode 100755 (executable)
index 4da1de5..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<manifest package="org.tizen.example.Weather" version="1.0.0" api-version="4" xmlns="http://tizen.org/ns/packages">
-    <author href="https://github.com/Samsung/Tizen-CSharp-Samples">Michał Kołodziejski &amp; @Piotr12</author>
-    <description>
-        Mobile sample app made by Michał Kołodziejski.
-        Wearable port by @Piotr12.
-
-        Icon sourced from https://openclipart.org/detail/30073/tango-weather-few-clouds
-    </description>
-    <profile name="wearable" />
-    <ui-application appid="org.tizen.example.Weather" exec="Weather.dll" multiple="false" nodisplay="false" taskmanage="true" splash-screen-display="true" type="dotnet" launch_mode="single">
-        <label>Weather</label>
-        <icon>Weather.png</icon>
-        <metadata key="http://tizen.org/metadata/prefer_dotnet_aot" value="true" />
-        <splash-screens />
-    </ui-application>
-    <shortcut-list />
-    <privileges>
-        <privilege>http://tizen.org/privilege/haptic</privilege>
-        <privilege>http://tizen.org/privilege/internet</privilege>
-        <privilege>http://tizen.org/privilege/ime</privilege>
-        <privilege>http://tizen.org/privilege/imemanager</privilege>
-    </privileges>
-    <provides-appdefined-privileges />
-</manifest>
diff --git a/test/XStopWatch/LapsPage.xaml b/test/XStopWatch/LapsPage.xaml
deleted file mode 100644 (file)
index 9522672..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<cu:CirclePage xmlns="http://xamarin.com/schemas/2014/forms"
-             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-             xmlns:cu="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"
-             x:Class="XStopWatch.LapsPage" x:Name="Self">
-    <ContentPage.Content>
-        <AbsoluteLayout>
-            <cu:CircleListView ItemsSource="{Binding Laps, Source={x:Reference Self}}"
-                               x:Name="LapList"
-                               BackgroundColor="Black"
-                               AbsoluteLayout.LayoutBounds="0, 0, 1, 1"
-                               AbsoluteLayout.LayoutFlags="SizeProportional">
-                <ListView.ItemTemplate>
-                    <DataTemplate>
-                        <ViewCell>
-                            <AbsoluteLayout>
-                                <!-- Label that present Index of Lap -->
-                                <Label Text="{Binding Item1, StringFormat='{0:D2}'}"
-                                   AbsoluteLayout.LayoutBounds="0,0,0.3,1"
-                                   AbsoluteLayout.LayoutFlags="All"
-                                   HorizontalTextAlignment="End"
-                                   TextColor="White"
-                                   FontSize="18"/>
-                                <!-- Label that present total elapsed time -->
-                                <Label Text="{Binding Item2, StringFormat='{}{0:mm\\:ss\\.ff}'}"
-                                   AbsoluteLayout.LayoutBounds="0.2,0,1,0.5"
-                                   AbsoluteLayout.LayoutFlags="All"
-                                   HorizontalTextAlignment="Center"
-                                   TextColor="White"
-                                   FontSize="Medium"/>
-                                <!-- Label that present a lap time -->
-                                <Label Text="{Binding Item3, StringFormat='{}{0:mm\\:ss\\.ff}'}"
-                                   AbsoluteLayout.LayoutBounds="0.2,0.55,1,0.5"
-                                   AbsoluteLayout.LayoutFlags="All"
-                                   HorizontalTextAlignment="Center"
-                                   TextColor="White"
-                                   FontSize="Medium"/>
-                            </AbsoluteLayout>
-                        </ViewCell>
-                    </DataTemplate>
-                </ListView.ItemTemplate>
-            </cu:CircleListView>
-            <StackLayout AbsoluteLayout.LayoutBounds="0, 0, 1, 100" AbsoluteLayout.LayoutFlags="WidthProportional" BackgroundColor="Black">
-                <!-- Label that present the count of laps -->
-                <Label Text="{Binding Path=Laps.Count,  Source={x:Reference Self}, StringFormat='{0} Laps'}"
-                       MinimumWidthRequest="100"
-                       HorizontalTextAlignment="Center"
-                       HorizontalOptions="CenterAndExpand"
-                       VerticalOptions="StartAndExpand"
-                       TextColor="Yellow"
-                       FontSize="10"/>
-                <!-- Label that present the current elapsed time -->
-                <Label Text="{Binding Time, Source={x:Reference Self}, StringFormat='{}{0:mm\\:ss\\.ff}'}"
-                           TextColor="Yellow"
-                           FontSize="10"
-                           VerticalOptions="StartAndExpand"
-                           HorizontalOptions="CenterAndExpand"/>
-            </StackLayout>
-        </AbsoluteLayout>
-    </ContentPage.Content>
-</cu:CirclePage>
\ No newline at end of file
diff --git a/test/XStopWatch/LapsPage.xaml.cs b/test/XStopWatch/LapsPage.xaml.cs
deleted file mode 100644 (file)
index db16f2e..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Tizen.Wearable.CircularUI.Forms;
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-
-namespace XStopWatch
-{
-    using Lap = Tuple<int, TimeSpan, TimeSpan>;
-
-    /// <summary>
-    /// LapsPage is a Page that present measured Laps time list
-    /// </summary>
-    [XamlCompilation(XamlCompilationOptions.Compile)]
-       public partial class LapsPage : CirclePage
-    {
-        public static BindableProperty TimeProperty = BindableProperty.Create(nameof(Time), typeof(TimeSpan), typeof(StopWatch), TimeSpan.Zero);
-
-        public static BindableProperty LapsProperty = BindableProperty.Create(nameof(Laps), typeof(ObservableCollection<Lap>), typeof(LapsPage));
-        public ObservableCollection<Lap> Laps { get => (ObservableCollection<Lap>)GetValue(LapsProperty); set => SetValue(LapsProperty, value); }
-
-        public TimeSpan Time { get => (TimeSpan)GetValue(TimeProperty); set => SetValue(TimeProperty, value); }
-
-        public LapsPage()
-               {
-            Laps = new ObservableCollection<Lap>();
-            InitializeComponent();
-               }
-
-        // this method put the recorded the elapsed and the lap time to internal collection.
-        public void AddLap((TimeSpan Main, TimeSpan Sub) lap)
-        {
-            Laps.Add(new Lap(Laps.Count + 1, lap.Main, lap.Sub));
-        }
-
-        // reset the internal collection.
-        public void Reset()
-        {
-            Laps.Clear();
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/XStopWatch/StopWatch.xaml b/test/XStopWatch/StopWatch.xaml
deleted file mode 100644 (file)
index bee2cef..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<cu:CirclePage xmlns="http://xamarin.com/schemas/2014/forms"
-             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-             xmlns:cu="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"
-             xmlns:tizen="clr-namespace:Xamarin.Forms.PlatformConfiguration.TizenSpecific;assembly=XSF"
-             xmlns:local="clr-namespace:XStopWatch"
-             x:Name="Self"
-             x:Class="XStopWatch.StopWatch">
-    <ContentPage.Resources>
-        <ResourceDictionary>
-            <!-- this style change the color to the gray of the Label for showing the time. -->
-            <Style x:Key="TimeStyle"  TargetType="Span">
-                <Setter Property="TextColor" Value="White"/>
-                <Style.Triggers>
-                    <Trigger TargetType="Span" Property="Text" Value="00">
-                        <Setter Property="TextColor" Value="#666666"/>
-                    </Trigger>
-                </Style.Triggers>
-            </Style>
-        </ResourceDictionary>
-    </ContentPage.Resources>
-    <!-- CirclePage has a special item list to show a circular progressbar or a circular slider.-->
-    <cu:CirclePage.CircleSurfaceItems>
-        <!-- this circular progressbar show the elapsed time -->
-        <cu:CircleProgressBarSurfaceItem x:Name="Timebar"
-                                         BackgroundColor="#00000000"
-                                         BarColor="#00000000"
-                                         BarRadius="108"
-                                         BarLineWidth="6"
-                                         IsVisible="true"
-                                         Value="0"/>
-    </cu:CirclePage.CircleSurfaceItems>
-    <ContentPage.Content>
-        <AbsoluteLayout BackgroundColor="Black" x:Name="RootView">
-            <!-- Background image that show the numbers and pins -->
-            <Image tizen:Image.File="images/b_stopwatch_unit_number.png"
-                   AbsoluteLayout.LayoutBounds="0,0,1,1"
-                   AbsoluteLayout.LayoutFlags="All"/>
-            <!-- Red bar image that present current elapsed time -->
-            <Image tizen:Image.File="images/b_stopwatch_mark_red.png"
-                   x:Name="RedBar"
-                   AbsoluteLayout.LayoutBounds="0,0,1,1"
-                   AbsoluteLayout.LayoutFlags="All"/>
-            <!-- Blue bar image that present Lap time. it is visible only Lap measurement started -->
-            <Image tizen:Image.File="images/b_stopwatch_mark_blue.png"
-                   x:Name="BlueBar"
-                   AbsoluteLayout.LayoutBounds="0,0,1,1"
-                   AbsoluteLayout.LayoutFlags="All"
-                   IsVisible="False"/>
-
-            <!-- Upward Label for start / stop button -->
-            <Label x:Name="StateLabel"
-                   TextColor="#00CC4D"
-                   FontSize="6"
-                   HorizontalTextAlignment="Center"
-                   VerticalTextAlignment="Center"
-                   AbsoluteLayout.LayoutBounds="130, 120, 100, 20"
-                   AbsoluteLayout.LayoutFlags="None">
-                <Label.Triggers>
-                    <DataTrigger TargetType="Label" Binding="{Binding Source={x:Reference Self}, Path=State}" Value="Started">
-                        <Setter Property="Text" Value="STOP"/>
-                        <Setter Property="TextColor" Value="Red"/>
-                    </DataTrigger>
-                    <DataTrigger TargetType="Label" Binding="{Binding Source={x:Reference Self}, Path=State}" Value="Paused">
-                        <Setter Property="Text" Value="RESUME"/>
-                    </DataTrigger>
-                    <DataTrigger TargetType="Label" Binding="{Binding Source={x:Reference Self}, Path=State}" Value="Stopped">
-                        <Setter Property="Text" Value="START"/>
-                    </DataTrigger>
-                </Label.Triggers>
-            </Label>
-            <!-- Downward Label for reset / lap button -->
-            <Label x:Name="ResetOrLapLabel"
-                   TextColor="#0080dd"
-                   FontSize="6"
-                   HorizontalTextAlignment="Center"
-                   VerticalTextAlignment="Center"
-                   AbsoluteLayout.LayoutBounds="130, 224, 100, 20"
-                   AbsoluteLayout.LayoutFlags="None">
-                <Label.Triggers>
-                    <DataTrigger TargetType="Label" Binding="{Binding Source={x:Reference Self}, Path=State}" Value="Started">
-                        <Setter Property="Text" Value="LAP"/>
-                    </DataTrigger>
-                    <DataTrigger TargetType="Label" Binding="{Binding Source={x:Reference Self}, Path=State}" Value="Paused">
-                        <Setter Property="Text" Value="RESET"/>
-                    </DataTrigger>
-                    <DataTrigger TargetType="Label" Binding="{Binding Source={x:Reference Self}, Path=State}" Value="Stopped">
-                        <Setter Property="Text" Value=""/>
-                    </DataTrigger>
-                </Label.Triggers>
-            </Label>
-
-            <!-- Central Label that present elapsed tiem -->
-            <Label FontSize="10"
-                   HorizontalTextAlignment="Center"
-                   VerticalTextAlignment="Center"
-                   AbsoluteLayout.LayoutBounds="96, 152, 168, 58"
-                   AbsoluteLayout.LayoutFlags="None">
-                <Label.FormattedText>
-                    <FormattedString>
-                        <Span Text="{Binding AllTime, Source={x:Reference Self}, StringFormat='{}{0:mm}', Mode=OneWay}" Style="{StaticResource TimeStyle}"/>
-                        <Span Text=" : "/>
-                        <Span Text="{Binding AllTime, Source={x:Reference Self}, StringFormat='{}{0:ss}', Mode=OneWay}" Style="{StaticResource TimeStyle}"/>
-                        <Span Text=" . "/>
-                        <Span Text="{Binding AllTime, Source={x:Reference Self}, StringFormat='{}{0:ff}', Mode=OneWay}" Style="{StaticResource TimeStyle}"/>
-                    </FormattedString>
-                </Label.FormattedText>
-            </Label>
-
-            <!-- If Lap is added, this small bracket image show the bounce animation -->
-            <Image tizen:Image.File="images/wc_visual_cue.png"
-                   x:Name="CueBtn"
-                   IsVisible="False"
-                   AbsoluteLayout.LayoutBounds="315, 164, 18, 32"/>
-
-            <!-- this translucent images indicate the area to receive the touch. -->
-            <Image tizen:Image.File="images/event_spot.png"
-                   Opacity="0"
-                   AbsoluteLayout.LayoutBounds="80, 126, 200, 200"
-                   AbsoluteLayout.LayoutFlags="None">
-                <Image.GestureRecognizers>
-                    <TapGestureRecognizer Tapped="OnBottomEventTapped"/>
-                </Image.GestureRecognizers>
-            </Image>
-            <Image tizen:Image.File="images/event_spot.png"
-                   Opacity="0"
-                   AbsoluteLayout.LayoutBounds="80, 22, 200, 200"
-                   AbsoluteLayout.LayoutFlags="None">
-                <Image.GestureRecognizers>
-                    <TapGestureRecognizer Tapped="OnTopEventTapped"/>
-                </Image.GestureRecognizers>
-            </Image>
-        </AbsoluteLayout>
-    </ContentPage.Content>
-</cu:CirclePage>
\ No newline at end of file
diff --git a/test/XStopWatch/StopWatch.xaml.cs b/test/XStopWatch/StopWatch.xaml.cs
deleted file mode 100644 (file)
index 6620af4..0000000
+++ /dev/null
@@ -1,264 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-
-using Xamarin.Forms;
-using Xamarin.Forms.Xaml;
-
-using NStopWatch = System.Diagnostics.Stopwatch;
-using Tizen.Wearable.CircularUI.Forms;
-using Tizen.System;
-
-namespace XStopWatch
-{
-    /// <summary>
-    /// StopWatch is a Page that present stopwatch main screen
-    /// This page has Time label and the color bar for present measuring time.
-    /// </summary>
-    [XamlCompilation(XamlCompilationOptions.Compile)]
-    public partial class StopWatch : CirclePage
-    {
-        public static BindableProperty StateProperty = BindableProperty.Create(nameof(State), typeof(State), typeof(StopWatch), State.Stopped);
-        public static BindableProperty AllTimeProperty = BindableProperty.Create(nameof(AllTime), typeof(TimeSpan), typeof(StopWatch), TimeSpan.Zero);
-
-        // stop watch for measuring elapsed time
-        NStopWatch _mainStopWatch;
-        // stop watch for measuring lap time
-        NStopWatch _subStopWatch;
-
-        // this State is used in the text of buttons and stopwatch processing.
-        public State State { get => (State)GetValue(StateProperty); set => SetValue(StateProperty, value); }
-
-        // this TimeSpan property is elapsed time that present in the center of the page.
-        public TimeSpan AllTime { get => (TimeSpan)GetValue(AllTimeProperty); set => SetValue(AllTimeProperty, value); }
-
-        // event for Lap Add button pressed
-        public event EventHandler<(TimeSpan, TimeSpan) > LapPressed;
-
-        // event for stop button pressed
-        public event EventHandler StopPressed;
-
-        public StopWatch()
-               {
-            _mainStopWatch = new NStopWatch();
-            _subStopWatch = new NStopWatch();
-
-            InitializeComponent();
-
-            Stop();
-        }
-
-        /// <summary>
-        /// upward button tapped event that can start/pause/restart measuring
-        /// </summary>
-        /// <param name="sender">The source of the event.</param>
-        /// <param name="args">An object that contains no event data.</param>
-        void OnTopEventTapped(object sender, EventArgs args)
-        {
-            DoSpotAnimation(sender as Image);
-            if (State == State.Stopped)
-            {
-                Start();
-            }
-            else if (State == State.Started)
-            {
-                Pause();
-            }
-            else if (State == State.Paused)
-            {
-                Start();
-            }
-        }
-
-        /// <summary>
-        /// downward button tapped event that can stop the measuring or add lap time measuring.
-        /// </summary>
-        /// <param name="sender">The source of the event.</param>
-        /// <param name="args">An object that contains no event data.</param>
-        void OnBottomEventTapped(object sender, EventArgs args)
-        {
-            DoSpotAnimation(sender as Image);
-            if (State == State.Started)
-            {
-                OnLapPressed();
-            }
-            else if (State == State.Paused)
-            {
-                Stop();
-            }
-        }
-
-        /// <summary>
-        /// this method is used to show the upward or downward button clicking effect
-        /// </summary>
-        /// <param name="spot">The button clicking effect image</param>
-        void DoSpotAnimation(Image spot)
-        {
-            spot.Opacity = 1;
-            Device.StartTimer(TimeSpan.FromMilliseconds(80), () =>
-            {
-                spot.Opacity = 0;
-                return false;
-            });
-        }
-
-        /// <summary>
-        /// this method is used to add current lap time
-        /// </summary>
-        void OnLapPressed()
-        {
-            if (!BlueBar.IsVisible)
-            {
-                BlueBar.IsVisible = true;
-            }
-
-            _subStopWatch.Reset();
-            _subStopWatch.Start();
-            BlueBar.Rotation = 0;
-
-            if (!CueBtn.AnimationIsRunning("CueAnimation"))
-            {
-                DoShowCueButton();
-            }
-
-            LapPressed?.Invoke(this, (_mainStopWatch.Elapsed, _subStopWatch.IsRunning ? _subStopWatch.Elapsed : _mainStopWatch.Elapsed));
-        }
-
-        /// <summary>
-        /// this method is used to show small bracket and animation
-        /// </summary>
-        void DoShowCueButton()
-        {
-            CueBtn.IsVisible = true;
-
-            var X = CueBtn.TranslationX;
-            var TX = CueBtn.TranslationX - CueBtn.Width;
-            var anim = new Animation();
-            var opacityAnim = new Animation(f => CueBtn.Opacity = f, 1, 0.2);
-            var transfAnim = new Animation(f => CueBtn.TranslationX = f, X, TX);
-            anim.Add(0, 1, opacityAnim);
-            anim.Add(0, 1, transfAnim);
-
-            anim.Commit(CueBtn, "CueAnimation", 16, 1000, finished: (f, b) =>
-            {
-                CueBtn.Opacity = 1;
-                CueBtn.TranslationX = X;
-            });
-        }
-
-        /// <summary>
-        /// start measuring time
-        /// </summary>
-        void Start()
-        {
-            State = State.Started;
-            // Power.RequestCpuLock(Int32) is deperecated but there are no alternative on TizenFX 4.0
-            // Use RequestLock(PowerLock, Int32) if you use version after TizenFX 5.0.
-            Device.BeginInvokeOnMainThread(() => Power.RequestCpuLock(0));
-
-            _mainStopWatch.Start();
-            if (_subStopWatch.ElapsedMilliseconds > 0)
-            {
-                _subStopWatch.Start();
-            }
-
-            Timebar.IsVisible = true;
-
-            // Synchronize the TimeSpan property on every 10 milliseconds.
-            // Minimum time that presented in Central Label is 10 milliseconds.
-            Device.StartTimer(TimeSpan.FromMilliseconds(10), OnTimeChanged);
-
-            // Rotate Red and Blue Bar on every 16 milliseconds to fit 60 fps.
-            Device.StartTimer(TimeSpan.FromMilliseconds(16), OnTimeBarAnimate);
-        }
-
-        /// <summary>
-        /// pause measuring time
-        /// </summary>
-        void Pause()
-        {
-            State = State.Paused;
-
-            // Power.ReleaseCpuLock() is deperecated but there are no alternative on TizenFX 4.0
-            // Use ReleaseLock(PowerLock) if you use version after TizenFX 5.0.
-            Device.BeginInvokeOnMainThread(() => Power.ReleaseCpuLock());
-
-            _mainStopWatch.Stop();
-            _subStopWatch.Stop();
-        }
-
-        /// <summary>
-        /// reset measuring time
-        /// </summary>
-        void Stop()
-        {
-            State = State.Stopped;
-            _mainStopWatch.Reset();
-            _subStopWatch.Reset();
-            BlueBar.IsVisible = false;
-            CueBtn.IsVisible = false;
-            Timebar.IsVisible = false;
-            OnTimeChanged();
-            OnTimeBarAnimate();
-            StopPressed?.Invoke(this, EventArgs.Empty);
-        }
-
-        /// <summary>
-        /// set the elapsed time to TimeSpan property
-        /// </summary>
-        /// <returns>the timer will keep recurring if return true.</returns>
-        bool OnTimeChanged()
-        {
-            AllTime = _mainStopWatch.Elapsed;
-            return State == State.Started;
-        }
-
-        /// <summary>
-        /// the method present the Red, Blue Bar and the circular progressbar animation.
-        /// </summary>
-        /// <returns>the timer will keep recurring if return true.</returns>
-        bool OnTimeBarAnimate()
-        {
-            double sec = TimeToRotation(_mainStopWatch.Elapsed);
-            double lap = TimeToRotation(_subStopWatch.Elapsed);
-            double timeBarValue = (_mainStopWatch.ElapsedMilliseconds / 600000.0) % 1;
-
-            RedBar.Rotation = sec;
-            BlueBar.Rotation = lap;
-            Timebar.Value = timeBarValue;
-
-            return State == State.Started;
-        }
-
-        /// <summary>
-        /// To calculate the rotation, use the seconds and the milliseconds.
-        /// </summary>
-        /// <param name="ts">The TimeSpan to change to angle of rotation.</param>
-        /// <returns>The angle of rotation.</returns>
-        static double TimeToRotation(TimeSpan ts) => ts.Seconds * 6 + ts.Milliseconds / 1000.0 * 6.0;
-    }
-
-    /// <summary>
-    /// State is present a current status of StopWatch
-    /// </summary>
-    public enum State
-    {
-        Started,
-        Stopped,
-        Paused
-    }
-}
diff --git a/test/XStopWatch/StopWatchApplication.xaml b/test/XStopWatch/StopWatchApplication.xaml
deleted file mode 100644 (file)
index c58dbe0..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<Application xmlns="http://xamarin.com/schemas/2014/forms"
-             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
-             xmlns:cu="clr-namespace:Tizen.Wearable.CircularUI.Forms;assembly=XSF"
-             xmlns:local="clr-namespace:XStopWatch"
-             x:Class="XStopWatch.StopWatchApplication">
-    <Application.MainPage>
-        <!-- Use CarouselPage to swipe the main page and Laps page -->
-        <!-- <CarouselPage x:Name="RootPage"> -->
-            <!-- Main page of the Stopwatch -->
-            <local:StopWatch x:Name="StopWatch" LapPressed="OnAddLap" StopPressed="OnStopLap"/>
-            <!-- A page to shows a list of the recorded Lap times. Time property is used to show the time, and is associated with the time of the StopWatch. -->
-            <!--  <local:LapsPage x:Name="Laps" Time="{Binding AllTime, Source={x:Reference StopWatch}}"/> -->
-        <!-- </CarouselPage> -->
-    </Application.MainPage>
-</Application>
\ No newline at end of file
diff --git a/test/XStopWatch/StopWatchApplication.xaml.cs b/test/XStopWatch/StopWatchApplication.xaml.cs
deleted file mode 100644 (file)
index 6481ed2..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-
-using Xamarin.Forms;
-using Xamarin.Forms.Platform.Tizen;
-using Xamarin.Forms.Xaml;
-
-namespace XStopWatch
-{
-    /// <summary>
-    /// StopWatchApplication is implementation of a Xamarin Forms Application.
-    /// </summary>
-       [XamlCompilation(XamlCompilationOptions.Compile)]
-       public partial class StopWatchApplication : Application
-       {
-        public StopWatchApplication()
-               {
-            InitializeComponent();
-
-            // register handle to property changed event for catching changed state.
-            StopWatch.PropertyChanged += (s, e) =>
-            {
-                if (e.PropertyName == StopWatch.StateProperty.PropertyName)
-                {
-                // request AlwaysOn on StopWatch is started.
-                AlwaysOnRequest?.Invoke(this, StopWatch.State == State.Started);
-                }
-            };
-        }
-
-        /// <summary>
-        /// Event that requests the AlwaysOn method of the window when screen should not be turned off.
-        /// </summary>
-        public event EventHandler<bool> AlwaysOnRequest;
-
-        /// <summary>
-        /// this method handles StopWatch's Lap add button click event, witch total and lap time as event arguments.
-        /// </summary>
-        /// <param name="sender">The source of the event.</param>
-        /// <param name="e">ValueTuple, Item1 is a elapsed time and item2 is lap time.</param>
-        void OnAddLap(object sender, (TimeSpan, TimeSpan) e)
-        {
-            // Add Lap record to LapsPage
-            //Laps.AddLap(e);
-        }
-
-        /// <summary>
-        /// this method handles StopWatch's Stop button click event.
-        /// </summary>
-        /// <param name="sender">The source of the event.</param>
-        /// <param name="e">An object that contains no event data.</param>
-        void OnStopLap(object sender, EventArgs e)
-        {
-            // Reset the LapsPage
-            //Laps.Reset();
-        }
-    }
-}
\ No newline at end of file
diff --git a/test/XStopWatch/WindowExtension.cs b/test/XStopWatch/WindowExtension.cs
deleted file mode 100644 (file)
index f83b01b..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-using ElmSharp;
-using System;
-using System.Runtime.InteropServices;
-
-namespace XStopWatch
-{
-    static class WindowExtension
-    {
-        // native shared object name of ui-efl-util API.
-        const string EFLUtil = "libcapi-ui-efl-util.so.0";
-
-        // A mode for the Window AlwaysOn
-        enum ScreenMode
-        {
-            Default, // default don't block the screen off
-            AlwaysOn // the screen will not turn off on the AlwaysOn mode
-        }
-
-        /// <summary>
-        /// PInvoke AlwaysOn setter Native function
-        /// </summary>
-        /// <param name="window">A handle of the Elementary Window</param>
-        /// <param name="mode">A mode for the Window AlwaysOn</param>
-        /// <returns></returns>
-        [DllImport(EFLUtil)]
-        static extern int efl_util_set_window_screen_mode(IntPtr window, ScreenMode mode);
-
-        /// <summary>
-        /// PInvoke AlwaysOn getter Native function
-        /// </summary>
-        /// <param name="window">A handle of the Elementary Window</param>
-        /// <param name="mode">A mode for the Window AlwaysOn output parameter</param>
-        /// <returns></returns>
-        [DllImport(EFLUtil)]
-        static extern int efl_util_get_window_screen_mode(IntPtr window, out ScreenMode mode);
-
-        /// <summary>
-        /// Extension method for ElmSharp Window object for set a AlwaysOn mode.
-        /// </summary>
-        /// <param name="window">ElmSharp.Window object</param>
-        /// <param name="isAlwaysOn">true if AlwaysOn mode or not</param>
-        public static void SetAlwaysOn(this Window window, bool isAlwaysOn)
-        {
-            if (efl_util_set_window_screen_mode(window, isAlwaysOn ? ScreenMode.AlwaysOn : ScreenMode.Default) != 0)
-            {
-                // efl_util_set_window_screen_mode return TIZEN_ERROR_NONE on success
-                // throw exception if not success
-                throw new ArgumentException($"native efl_util_set_window_screen_mode return error, window=[{window.Handle.ToInt32()}] isAlwaysOn = [{isAlwaysOn}]");
-            }
-        }
-
-        /// <summary>
-        /// Extension method for ElmSharp Window object for get a AlwaysOn mode.
-        /// </summary>
-        /// <param name="window">ElmSharp.Window object</param>
-        /// <returns>true if AlwaysOn mode or not</returns>
-        public static bool GetAlwaysOn(this Window window)
-        {
-            if (efl_util_get_window_screen_mode(window, out var mode) != 0)
-            {
-                // efl_util_set_window_screen_mode return TIZEN_ERROR_NONE on success
-                // throw exception if not success
-                throw new ArgumentException($"native efl_util_set_window_screen_mode return error, window=[{window.Handle.ToInt32()}] isAlwaysOn = [{mode == ScreenMode.AlwaysOn}]");
-            }
-
-            return mode == ScreenMode.AlwaysOn;
-        }
-    }
-}
diff --git a/test/XStopWatch/XStopWatch.cs b/test/XStopWatch/XStopWatch.cs
deleted file mode 100644 (file)
index 534eb92..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.1 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://floralicense.org/license/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-using System;
-using System.Collections.Generic;
-using Tizen.Wearable.CircularUI.Forms;
-using Tizen.Wearable.CircularUI.Forms.Renderer;
-using Xamarin.Forms;
-using Xamarin.Forms.Platform.Tizen;
-
-namespace XStopWatch
-{
-    /// <summary>
-    /// This class has a main function, which is the starting point of the program.
-    /// It is a class that controls the lifecycle of the application.
-    /// You must use FormsApplication to control the lifecycle.
-    /// This class is a class that makes use of Xamarin.Forms.Application by inheriting CoreUIApplication with definition of Lifecycle of Tizen C # Application.
-    /// </summary>
-    class Program : global::Xamarin.Forms.Platform.Tizen.ApplicationLifecycle
-    {
-
-        /// <summary>
-        /// Called when this application is launched.
-        /// </summary>
-        protected override void OnCreate()
-        {
-            var stopwatch = new StopWatchApplication();
-            FormsApplication.LoadApplication(stopwatch);
-
-            // If AlwaysOn is enable, the screen will not turn off as long as the window is on the screen.
-            stopwatch.AlwaysOnRequest += (s, e) => FormsApplication.MainWindow.SetAlwaysOn(e);
-        }
-
-        static void Main(string[] args)
-        {
-            var app = new Program();
-            // define your custom handlers
-            var customRenderers = new Dictionary<Type, Func<IRegisterable>>()
-            {
-                { typeof(CirclePage), ()=> new CirclePageRenderer() },
-                { typeof(global:: Tizen.Wearable.CircularUI.Forms.CircleListView), () => new CircleListViewRenderer() }
-            };
-            var option = new InitializationOptions(app)
-            {
-                UseMessagingCenter = false,
-                UseStyle = false,
-                UseShell = false,
-                UseVisual = false,
-                StaticRegistarStrategy = StaticRegistrarStrategy.StaticRegistrarOnly,
-                CustomHandlers = customRenderers,
-                Flags = InitializationFlags.DisableCss
-            };
-
-            Forms.Init(option);
-
-            // It's mandatory to initialize Circular UI for using Tizen Wearable Circular UI API
-            global::Tizen.Wearable.CircularUI.Forms.Renderer.FormsCircularUI.Init();
-            app.FormsApplication.Run(args);
-        }
-    }
-}
diff --git a/test/XStopWatch/XStopWatch.csproj b/test/XStopWatch/XStopWatch.csproj
deleted file mode 100755 (executable)
index 140131a..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<Project Sdk="Tizen.NET.Sdk/1.0.8">
-
-  <PropertyGroup>
-    <OutputType>Exe</OutputType>
-    <TargetFramework>tizen40</TargetFramework>
-  </PropertyGroup>
-
-  <ItemGroup>
-    <Folder Include="res\" />
-  </ItemGroup>
-
-  <ItemGroup>
-    <ProjectReference Include="..\..\src\XSF\XSF.csproj" />
-  </ItemGroup>
-
-</Project>
diff --git a/test/XStopWatch/res/images/b_stopwatch_mark_blue.png b/test/XStopWatch/res/images/b_stopwatch_mark_blue.png
deleted file mode 100644 (file)
index 0201315..0000000
Binary files a/test/XStopWatch/res/images/b_stopwatch_mark_blue.png and /dev/null differ
diff --git a/test/XStopWatch/res/images/b_stopwatch_mark_red.png b/test/XStopWatch/res/images/b_stopwatch_mark_red.png
deleted file mode 100644 (file)
index 9ae9a01..0000000
Binary files a/test/XStopWatch/res/images/b_stopwatch_mark_red.png and /dev/null differ
diff --git a/test/XStopWatch/res/images/b_stopwatch_unit_number.png b/test/XStopWatch/res/images/b_stopwatch_unit_number.png
deleted file mode 100644 (file)
index fccf443..0000000
Binary files a/test/XStopWatch/res/images/b_stopwatch_unit_number.png and /dev/null differ
diff --git a/test/XStopWatch/res/images/event_spot.png b/test/XStopWatch/res/images/event_spot.png
deleted file mode 100644 (file)
index ff4f6f3..0000000
Binary files a/test/XStopWatch/res/images/event_spot.png and /dev/null differ
diff --git a/test/XStopWatch/res/images/wc_visual_cue.png b/test/XStopWatch/res/images/wc_visual_cue.png
deleted file mode 100644 (file)
index 6959578..0000000
Binary files a/test/XStopWatch/res/images/wc_visual_cue.png and /dev/null differ
diff --git a/test/XStopWatch/shared/res/XStopWatch.png b/test/XStopWatch/shared/res/XStopWatch.png
deleted file mode 100644 (file)
index 16f3830..0000000
Binary files a/test/XStopWatch/shared/res/XStopWatch.png and /dev/null differ
diff --git a/test/XStopWatch/shared/res/splash.png b/test/XStopWatch/shared/res/splash.png
deleted file mode 100644 (file)
index 16f3830..0000000
Binary files a/test/XStopWatch/shared/res/splash.png and /dev/null differ
diff --git a/test/XStopWatch/tizen-manifest.xml b/test/XStopWatch/tizen-manifest.xml
deleted file mode 100644 (file)
index 945b246..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<manifest package="org.tizen.example.XStopWatch" version="1.0.0" api-version="4" xmlns="http://tizen.org/ns/packages">
-    <profile name="common" />
-    <ui-application appid="org.tizen.example.XStopWatch" exec="XStopWatch.dll" multiple="false" nodisplay="false" taskmanage="true" splash-screen-display="true" type="dotnet" launch_mode="single">
-        <label>XStopWatch</label>
-        <icon>XStopWatch.png</icon>
-        <metadata key="http://tizen.org/metadata/prefer_dotnet_aot" value="true" />
-        <splash-screens>
-            <splash-screen indicator-display="false" orientation="portrait" src="splash.png" type="img" />
-        </splash-screens>
-    </ui-application>
-    <shortcut-list />
-    <privileges>
-        <privilege>http://tizen.org/privilege/display</privilege>
-    </privileges>
-    <provides-appdefined-privileges />
-</manifest>