From 463a783c7cf746ec1497a541c794d1ae4ff5bd96 Mon Sep 17 00:00:00 2001 From: Gregory Campbell Date: Sun, 29 Sep 2019 19:40:54 -0400 Subject: [PATCH] Initial commit --- Assets/Materials.meta | 8 + Assets/Materials/Prototype Grey.mat | 77 + Assets/Materials/Prototype Grey.mat.meta | 8 + Assets/Scenes.meta | 8 + Assets/Scenes/Test Scene.unity | 785 + Assets/Scenes/Test Scene.unity.meta | 7 + Assets/Scripts.meta | 8 + Assets/Scripts/CameraController.cs | 68 + Assets/Scripts/CameraController.cs.meta | 11 + Assets/Scripts/PlayerController.cs | 66 + Assets/Scripts/PlayerController.cs.meta | 11 + Library/APIUpdater/project-dependencies.graph | Bin 0 -> 2089 bytes Library/AnnotationManager | Bin 0 -> 4116 bytes Library/AssetImportState | 1 + Library/BuildPlayer.prefs | 0 Library/BuildSettings.asset | Bin 0 -> 4152 bytes Library/CurrentLayout-default.dwlt | 733 + Library/CurrentMaximizeLayout.dwlt | 643 + Library/EditorUserBuildSettings.asset | Bin 0 -> 5932 bytes Library/EditorUserSettings.asset | 21 + Library/InspectorExpandedItems.asset | Bin 0 -> 4156 bytes Library/LastSceneManagerSetup.txt | 5 + Library/LibraryFormatVersion.txt | 2 + Library/MonoManager.asset | Bin 0 -> 4100 bytes .../com.unity.collab-proxy@1.2.16/.npmignore | 6 + .../CHANGELOG.md | 31 + .../CHANGELOG.md.meta | 7 + .../DEPENDENCIES.md | 9 + .../DEPENDENCIES.md.meta | 7 + .../Documentation~/collab-proxy.md | 5 + .../com.unity.collab-proxy@1.2.16/Editor.meta | 8 + .../Editor/AssemblyInfo.cs | 4 + .../Editor/AssemblyInfo.cs.meta | 11 + .../Editor/Collab.meta | 8 + .../Editor/Collab/Bootstrap.cs | 24 + .../Editor/Collab/Bootstrap.cs.meta | 11 + .../Editor/Collab/CollabAnalytics.cs | 21 + .../Editor/Collab/CollabAnalytics.cs.meta | 11 + .../Editor/Collab/CollabHistoryWindow.cs | 330 + .../Editor/Collab/CollabHistoryWindow.cs.meta | 11 + .../Editor/Collab/CollabToolbarButton.cs | 297 + .../Editor/Collab/CollabToolbarButton.cs.meta | 11 + .../Editor/Collab/CollabToolbarWindow.cs | 137 + .../Editor/Collab/CollabToolbarWindow.cs.meta | 11 + .../Editor/Collab/Presenters.meta | 8 + .../Presenters/CollabHistoryPresenter.cs | 228 + .../Presenters/CollabHistoryPresenter.cs.meta | 11 + .../Editor/Collab/Views.meta | 8 + .../Editor/Collab/Views/BuildStatusButton.cs | 53 + .../Collab/Views/BuildStatusButton.cs.meta | 11 + .../Collab/Views/CollabHistoryDropDown.cs | 78 + .../Views/CollabHistoryDropDown.cs.meta | 11 + .../Collab/Views/CollabHistoryDropDownItem.cs | 53 + .../Views/CollabHistoryDropDownItem.cs.meta | 11 + .../Editor/Collab/Views/CollabHistoryItem.cs | 229 + .../Collab/Views/CollabHistoryItem.cs.meta | 11 + .../Collab/Views/CollabHistoryItemFactory.cs | 121 + .../Views/CollabHistoryItemFactory.cs.meta | 11 + .../Collab/Views/CollabHistoryRevisionLine.cs | 94 + .../Views/CollabHistoryRevisionLine.cs.meta | 11 + .../Collab/Views/HistoryProgressSpinner.cs | 69 + .../Views/HistoryProgressSpinner.cs.meta | 11 + .../Collab/Views/ICollabHistoryItemFactory.cs | 17 + .../Views/ICollabHistoryItemFactory.cs.meta | 11 + .../Editor/Collab/Views/PagedListView.cs | 192 + .../Editor/Collab/Views/PagedListView.cs.meta | 11 + .../Editor/Collab/Views/StatusView.cs | 88 + .../Editor/Collab/Views/StatusView.cs.meta | 11 + .../Editor/Resources.meta | 8 + .../Editor/Resources/Styles.meta | 8 + .../Resources/Styles/CollabHistoryCommon.uss | 259 + .../Styles/CollabHistoryCommon.uss.meta | 10 + .../Resources/Styles/CollabHistoryDark.uss | 86 + .../Styles/CollabHistoryDark.uss.meta | 10 + .../Resources/Styles/CollabHistoryLight.uss | 86 + .../Styles/CollabHistoryLight.uss.meta | 10 + .../Editor/Unity.CollabProxy.Editor.asmdef | 7 + .../Unity.CollabProxy.Editor.asmdef.meta | 7 + .../com.unity.collab-proxy@1.2.16/LICENSE.md | 31 + .../LICENSE.md.meta | 7 + .../com.unity.collab-proxy@1.2.16/README.md | 16 + .../README.md.meta | 7 + .../com.unity.collab-proxy@1.2.16/Tests.meta | 8 + .../Tests/Editor.meta | 8 + .../Tests/Editor/HistoryTests.cs | 583 + .../Tests/Editor/HistoryTests.cs.meta | 11 + .../Unity.CollabProxy.EditorTests.asmdef | 13 + .../Unity.CollabProxy.EditorTests.asmdef.meta | 7 + .../package.json | 21 + .../package.json.meta | 7 + .../com.unity.ext.nunit@1.0.0/.gitlab-ci.yml | 15 + .../com.unity.ext.nunit@1.0.0/CHANGELOG.md | 11 + .../CHANGELOG.md.meta | 7 + .../Documentation~/ext.nunit.md | 6 + .../com.unity.ext.nunit@1.0.0/LICENSE.md | 19 + .../com.unity.ext.nunit@1.0.0/LICENSE.md.meta | 7 + .../com.unity.ext.nunit@1.0.0/README.md | 6 + .../com.unity.ext.nunit@1.0.0/README.md.meta | 7 + .../com.unity.ext.nunit@1.0.0/net35.meta | 8 + .../net35/unity-custom.meta | 8 + .../This is a custom build DONT include.txt | 4 + ...is is a custom build DONT include.txt.meta | 7 + .../net35/unity-custom/nunit.framework.dll | Bin 0 -> 339968 bytes .../unity-custom/nunit.framework.dll.mdb | Bin 0 -> 176962 bytes .../unity-custom/nunit.framework.dll.mdb.meta | 7 + .../unity-custom/nunit.framework.dll.meta | 37 + .../net35/unity-custom/nunit.framework.pdb | Bin 0 -> 1531392 bytes .../unity-custom/nunit.framework.pdb.meta | 7 + .../net35/unity-custom/nunit.framework.xml | 18101 ++++++++++++++++ .../unity-custom/nunit.framework.xml.meta | 7 + .../com.unity.ext.nunit@1.0.0/package.json | 16 + .../package.json.meta | 7 + .../com.unity.ide.rider@1.1.0/.editorconfig | 6 + .../com.unity.ide.rider@1.1.0/CHANGELOG.md | 43 + .../CHANGELOG.md.meta | 7 + .../com.unity.ide.rider@1.1.0/CONTRIBUTING.md | 6 + .../CONTRIBUTING.md.meta | 7 + .../Documentation~/README.md | 4 + .../com.unity.ide.rider@1.1.0/LICENSE.md | 21 + .../com.unity.ide.rider@1.1.0/LICENSE.md.meta | 7 + .../com.unity.ide.rider@1.1.0/Rider.meta | 8 + .../Rider/Editor.meta | 8 + .../Rider/Editor/Discovery.cs | 418 + .../Rider/Editor/Discovery.cs.meta | 11 + .../Rider/Editor/EditorPluginInterop.cs | 123 + .../Rider/Editor/EditorPluginInterop.cs.meta | 11 + .../Rider/Editor/LoggingLevel.cs | 22 + .../Rider/Editor/LoggingLevel.cs.meta | 11 + .../Rider/Editor/PluginSettings.cs | 153 + .../Rider/Editor/PluginSettings.cs.meta | 11 + .../Rider/Editor/ProjectGeneration.cs | 938 + .../Rider/Editor/ProjectGeneration.cs.meta | 11 + .../Rider/Editor/RiderInitializer.cs | 47 + .../Rider/Editor/RiderInitializer.cs.meta | 11 + .../Rider/Editor/RiderScriptEditor.cs | 344 + .../Rider/Editor/RiderScriptEditor.cs.meta | 11 + .../Rider/Editor/RiderScriptEditorData.cs | 10 + .../Editor/RiderScriptEditorData.cs.meta | 11 + .../Rider/Editor/Util.meta | 8 + .../Rider/Editor/Util/FileSystemUtil.cs | 66 + .../Rider/Editor/Util/FileSystemUtil.cs.meta | 11 + .../Rider/Editor/Util/LibcNativeInterop.cs | 12 + .../Editor/Util/LibcNativeInterop.cs.meta | 11 + .../Rider/Editor/Util/UnityUtils.cs | 20 + .../Rider/Editor/Util/UnityUtils.cs.meta | 11 + .../Rider/Editor/com.unity.ide.rider.asmdef | 9 + .../Editor/com.unity.ide.rider.asmdef.meta | 7 + .../com.unity.ide.rider@1.1.0/package.json | 19 + .../package.json.meta | 7 + .../com.unity.ide.vscode@1.1.0/CHANGELOG.md | 34 + .../CHANGELOG.md.meta | 7 + .../CONTRIBUTING.md | 6 + .../CONTRIBUTING.md.meta | 7 + .../Documentation~/README.md | 4 + .../com.unity.ide.vscode@1.1.0/Editor.meta | 8 + .../Editor/ProjectGeneration.cs | 837 + .../Editor/ProjectGeneration.cs.meta | 11 + .../Unity.com.unity.vscode.Editor.asmdef | 9 + .../Unity.com.unity.vscode.Editor.asmdef.meta | 7 + .../Editor/Utility.cs | 35 + .../Editor/Utility.cs.meta | 11 + .../Editor/VSCodeDiscovery.cs | 136 + .../Editor/VSCodeDiscovery.cs.meta | 11 + .../Editor/VSCodeScriptEditor.cs | 253 + .../Editor/VSCodeScriptEditor.cs.meta | 11 + .../com.unity.ide.vscode@1.1.0/LICENSE.md | 21 + .../LICENSE.md.meta | 7 + .../com.unity.ide.vscode@1.1.0/package.json | 17 + .../package.json.meta | 7 + .../CHANGELOG.md | 31 + .../CHANGELOG.md.meta | 7 + .../CONTRIBUTING.md | 9 + .../CONTRIBUTING.md.meta | 7 + .../Documentation~/PlaymodeTestFramework.md | 224 + .../Documentation~/UnityTestRunner-0.png | Bin 0 -> 17526 bytes .../Documentation~/UnityTestRunner-1.png | Bin 0 -> 30515 bytes .../Documentation~/UnityTestRunner-2.png | Bin 0 -> 21471 bytes .../Documentation~/UnityTestRunner-3.png | Bin 0 -> 17543 bytes .../Documentation~/UnityTestRunner-4.png | Bin 0 -> 49582 bytes .../com.unity.test-framework.md | 77 + .../LICENSE.md | 5 + .../LICENSE.md.meta | 7 + .../UnityEditor.TestRunner.meta | 8 + .../UnityEditor.TestRunner/Api.meta | 8 + .../Api/CallbacksDelegator.cs | 116 + .../Api/CallbacksDelegator.cs.meta | 11 + .../Api/CallbacksDelegatorListener.cs | 28 + .../Api/CallbacksDelegatorListener.cs.meta | 11 + .../Api/CallbacksHolder.cs | 40 + .../Api/CallbacksHolder.cs.meta | 11 + .../Api/ExecutionSettings.cs | 9 + .../Api/ExecutionSettings.cs.meta | 11 + .../UnityEditor.TestRunner/Api/Filter.cs | 34 + .../UnityEditor.TestRunner/Api/Filter.cs.meta | 11 + .../UnityEditor.TestRunner/Api/ICallbacks.cs | 10 + .../Api/ICallbacks.cs.meta | 11 + .../Api/ITestAdaptor.cs | 27 + .../Api/ITestAdaptor.cs.meta | 11 + .../Api/ITestAdaptorFactory.cs | 16 + .../Api/ITestAdaptorFactory.cs.meta | 11 + .../Api/ITestResultAdaptor.cs | 86 + .../Api/ITestResultAdaptor.cs.meta | 11 + .../Api/ITestRunSettings.cs | 9 + .../Api/ITestRunSettings.cs.meta | 11 + .../Api/ITestRunnerApi.cs | 12 + .../Api/ITestRunnerApi.cs.meta | 11 + .../UnityEditor.TestRunner/Api/RunState.cs | 11 + .../Api/RunState.cs.meta | 11 + .../UnityEditor.TestRunner/Api/TestAdaptor.cs | 123 + .../Api/TestAdaptor.cs.meta | 11 + .../Api/TestAdaptorFactory.cs | 59 + .../Api/TestAdaptorFactory.cs.meta | 11 + .../Api/TestLauncherFactory.cs | 57 + .../Api/TestLauncherFactory.cs.meta | 11 + .../UnityEditor.TestRunner/Api/TestMode.cs | 11 + .../Api/TestMode.cs.meta | 11 + .../Api/TestResultAdaptor.cs | 87 + .../Api/TestResultAdaptor.cs.meta | 11 + .../UnityEditor.TestRunner/Api/TestRunData.cs | 12 + .../Api/TestRunData.cs.meta | 11 + .../Api/TestRunnerApi.cs | 81 + .../Api/TestRunnerApi.cs.meta | 11 + .../UnityEditor.TestRunner/Api/TestStatus.cs | 10 + .../Api/TestStatus.cs.meta | 11 + .../UnityEditor.TestRunner/AssemblyInfo.cs | 14 + .../AssemblyInfo.cs.meta | 11 + .../CommandLineParser.meta | 8 + .../CommandLineParser/CommandLineOption.cs | 45 + .../CommandLineOption.cs.meta | 11 + .../CommandLineParser/CommandLineOptionSet.cs | 49 + .../CommandLineOptionSet.cs.meta | 11 + .../CommandLineParser/ICommandLineOption.cs | 8 + .../ICommandLineOption.cs.meta | 11 + .../CommandLineTest.meta | 8 + .../CommandLineTest/Executer.cs | 137 + .../CommandLineTest/Executer.cs.meta | 11 + .../CommandLineTest/ExecutionSettings.cs | 11 + .../CommandLineTest/ExecutionSettings.cs.meta | 11 + .../CommandLineTest/ExitCallbacks.cs | 48 + .../CommandLineTest/ExitCallbacks.cs.meta | 11 + .../CommandLineTest/ISettingsBuilder.cs | 10 + .../CommandLineTest/ISettingsBuilder.cs.meta | 11 + .../CommandLineTest/LogSavingCallbacks.cs | 29 + .../LogSavingCallbacks.cs.meta | 11 + .../CommandLineTest/LogWriter.cs | 92 + .../CommandLineTest/LogWriter.cs.meta | 11 + .../CommandLineTest/ResultsSavingCallbacks.cs | 50 + .../ResultsSavingCallbacks.cs.meta | 11 + .../CommandLineTest/ResultsWriter.cs | 99 + .../CommandLineTest/ResultsWriter.cs.meta | 11 + .../CommandLineTest/RunData.cs | 8 + .../CommandLineTest/RunData.cs.meta | 11 + .../CommandLineTest/RunSettings.cs | 29 + .../CommandLineTest/RunSettings.cs.meta | 11 + .../CommandLineTest/SettingsBuilder.cs | 173 + .../CommandLineTest/SettingsBuilder.cs.meta | 11 + .../CommandLineTest/SetupException.cs | 23 + .../CommandLineTest/SetupException.cs.meta | 11 + .../CommandLineTest/TestStarter.cs | 80 + .../CommandLineTest/TestStarter.cs.meta | 11 + .../CommandLineTest/TimeoutCallbacks.cs | 74 + .../CommandLineTest/TimeoutCallbacks.cs.meta | 11 + .../UnityEditor.TestRunner/GUI.meta | 8 + .../GUI/AssetsDatabaseHelper.cs | 11 + .../GUI/AssetsDatabaseHelper.cs.meta | 11 + .../UnityEditor.TestRunner/GUI/GuiHelper.cs | 101 + .../GUI/GuiHelper.cs.meta | 11 + .../GUI/IAssetsDatabaseHelper.cs | 7 + .../GUI/IAssetsDatabaseHelper.cs.meta | 11 + .../UnityEditor.TestRunner/GUI/IGuiHelper.cs | 13 + .../GUI/IGuiHelper.cs.meta | 11 + .../GUI/TestListBuilder.meta | 8 + .../GUI/TestListBuilder/RenderingOptions.cs | 12 + .../TestListBuilder/RenderingOptions.cs.meta | 11 + .../GUI/TestListBuilder/ResultSummarizer.cs | 175 + .../TestListBuilder/ResultSummarizer.cs.meta | 11 + .../GUI/TestListBuilder/TestFilterSettings.cs | 105 + .../TestFilterSettings.cs.meta | 11 + .../TestListBuilder/TestTreeViewBuilder.cs | 111 + .../TestTreeViewBuilder.cs.meta | 11 + .../GUI/TestListGuiHelper.cs | 135 + .../GUI/TestListGuiHelper.cs.meta | 11 + .../GUI/TestListTreeView.meta | 8 + .../GUI/TestListTreeView/Icons.cs | 24 + .../GUI/TestListTreeView/Icons.cs.meta | 11 + .../TestListTreeViewDataSource.cs | 93 + .../TestListTreeViewDataSource.cs.meta | 11 + .../TestListTreeView/TestListTreeViewGUI.cs | 11 + .../TestListTreeViewGUI.cs.meta | 11 + .../GUI/TestListTreeView/TestTreeViewItem.cs | 118 + .../TestListTreeView/TestTreeViewItem.cs.meta | 11 + .../GUI/TestRunnerResult.cs | 149 + .../GUI/TestRunnerResult.cs.meta | 11 + .../GUI/TestRunnerUIFilter.cs | 167 + .../GUI/TestRunnerUIFilter.cs.meta | 11 + .../UnityEditor.TestRunner/GUI/Views.meta | 8 + .../GUI/Views/EditModeTestListGUI.cs | 88 + .../GUI/Views/EditModeTestListGUI.cs.meta | 11 + .../GUI/Views/PlayModeTestListGUI.cs | 106 + .../GUI/Views/PlayModeTestListGUI.cs.meta | 11 + .../GUI/Views/TestListGUIBase.cs | 449 + .../GUI/Views/TestListGUIBase.cs.meta | 11 + .../NUnitExtension.meta | 8 + .../NUnitExtension/Attributes.meta | 8 + .../Attributes/AssetPipelineIgnore.cs | 63 + .../Attributes/AssetPipelineIgnore.cs.meta | 11 + .../TestRunnerStateSerializer.cs | 162 + .../TestRunnerStateSerializer.cs.meta | 11 + .../RequireApiProfileAttribute.cs | 32 + .../RequireApiProfileAttribute.cs.meta | 11 + .../RequirePlatformSupportAttribute.cs | 33 + .../RequirePlatformSupportAttribute.cs.meta | 11 + .../TestBuildAssemblyFilter.cs | 21 + .../TestBuildAssemblyFilter.cs.meta | 11 + .../UnityEditor.TestRunner/TestLaunchers.meta | 8 + .../TestLaunchers/AttributeFinderBase.cs | 95 + .../TestLaunchers/AttributeFinderBase.cs.meta | 11 + .../TestLaunchers/EditModeLauncher.cs | 141 + .../TestLaunchers/EditModeLauncher.cs.meta | 11 + .../EditModeLauncherContextSettings.cs | 31 + .../EditModeLauncherContextSettings.cs.meta | 11 + .../TestLaunchers/PlatformSetup.meta | 8 + .../PlatformSetup/AndroidPlatformSetup.cs | 62 + .../AndroidPlatformSetup.cs.meta | 11 + .../PlatformSetup/ApplePlatformSetup.cs | 38 + .../PlatformSetup/ApplePlatformSetup.cs.meta | 11 + .../PlatformSetup/IPlatformSetup.cs | 10 + .../PlatformSetup/IPlatformSetup.cs.meta | 11 + .../PlatformSetup/LuminPlatformSetup.cs | 46 + .../PlatformSetup/LuminPlatformSetup.cs.meta | 11 + .../PlatformSetup/PlatformSpecificSetup.cs | 105 + .../PlatformSpecificSetup.cs.meta | 11 + .../PlatformSetup/SwitchPlatformSetup.cs | 33 + .../PlatformSetup/SwitchPlatformSetup.cs.meta | 11 + .../PlatformSetup/UwpPlatformSetup.cs | 48 + .../PlatformSetup/UwpPlatformSetup.cs.meta | 11 + .../PlatformSetup/XboxOnePlatformSetup.cs | 43 + .../XboxOnePlatformSetup.cs.meta | 11 + .../TestLaunchers/PlayerLauncher.cs | 185 + .../TestLaunchers/PlayerLauncher.cs.meta | 11 + .../PlayerLauncherBuildOptions.cs | 23 + .../PlayerLauncherBuildOptions.cs.meta | 11 + .../PlayerLauncherContextSettings.cs | 106 + .../PlayerLauncherContextSettings.cs.meta | 11 + .../TestLaunchers/PlaymodeLauncher.cs | 129 + .../TestLaunchers/PlaymodeLauncher.cs.meta | 11 + .../PostbuildCleanupAttributeFinder.cs | 9 + .../PostbuildCleanupAttributeFinder.cs.meta | 11 + .../PrebuildSetupAttributeFinder.cs | 9 + .../PrebuildSetupAttributeFinder.cs.meta | 11 + .../RemotePlayerLogController.cs | 83 + .../RemotePlayerLogController.cs.meta | 11 + .../RemotePlayerTestController.cs | 81 + .../RemotePlayerTestController.cs.meta | 11 + .../TestLaunchers/RemoteTestResultReciever.cs | 22 + .../RemoteTestResultReciever.cs.meta | 11 + .../TestLaunchers/RuntimeTestLauncherBase.cs | 92 + .../RuntimeTestLauncherBase.cs.meta | 11 + .../TestLaunchers/TestLauncherBase.cs | 66 + .../TestLaunchers/TestLauncherBase.cs.meta | 11 + .../TestResultSerializer.cs | 71 + .../TestResultSerializer.cs.meta | 11 + .../UnityEditor.TestRunner/TestRunner.meta | 8 + .../TestRunner/Callbacks.meta | 8 + .../Callbacks/EditModeRunnerCallback.cs | 190 + .../Callbacks/EditModeRunnerCallback.cs.meta | 11 + .../TestRunner/Callbacks/RerunCallback.cs | 83 + .../Callbacks/RerunCallback.cs.meta | 11 + .../TestRunner/Callbacks/RerunCallbackData.cs | 15 + .../Callbacks/RerunCallbackData.cs.meta | 11 + .../Callbacks/RerunCallbackInitializer.cs | 17 + .../RerunCallbackInitializer.cs.meta | 11 + .../Callbacks/TestRunnerCallback.cs | 37 + .../Callbacks/TestRunnerCallback.cs.meta | 11 + .../Callbacks/WindowResultUpdater.cs | 32 + .../Callbacks/WindowResultUpdater.cs.meta | 11 + .../TestRunner/EditModePCHelper.cs | 32 + .../TestRunner/EditModePCHelper.cs.meta | 11 + .../TestRunner/EditModeRunner.cs | 423 + .../TestRunner/EditModeRunner.cs.meta | 11 + .../TestRunner/EditmodeWorkItemFactory.cs | 14 + .../EditmodeWorkItemFactory.cs.meta | 11 + .../EditorEnumeratorTestWorkItem.cs | 181 + .../EditorEnumeratorTestWorkItem.cs.meta | 11 + .../TestRunner/EnumeratorStepHelper.cs | 51 + .../TestRunner/EnumeratorStepHelper.cs.meta | 11 + .../TestRunner/Messages.meta | 8 + .../TestRunner/Messages/EnterPlayMode.cs | 39 + .../TestRunner/Messages/EnterPlayMode.cs.meta | 11 + .../TestRunner/Messages/ExitPlayMode.cs | 32 + .../TestRunner/Messages/ExitPlayMode.cs.meta | 11 + .../TestRunner/Messages/RecompileScripts.cs | 63 + .../Messages/RecompileScripts.cs.meta | 11 + .../Messages/WaitForDomainReload.cs | 44 + .../Messages/WaitForDomainReload.cs.meta | 11 + .../TestRunner/TestFileCleanupVerifier.cs | 98 + .../TestFileCleanupVerifier.cs.meta | 11 + .../TestRunner/Utils.meta | 8 + .../Utils/CachingTestListProvider.cs | 48 + .../Utils/CachingTestListProvider.cs.meta | 11 + .../TestRunner/Utils/EditorAssembliesProxy.cs | 13 + .../Utils/EditorAssembliesProxy.cs.meta | 11 + .../TestRunner/Utils/EditorAssemblyWrapper.cs | 18 + .../Utils/EditorAssemblyWrapper.cs.meta | 11 + .../Utils/EditorCompilationInterfaceProxy.cs | 17 + .../EditorCompilationInterfaceProxy.cs.meta | 11 + .../Utils/EditorLoadedTestAssemblyProvider.cs | 69 + .../EditorLoadedTestAssemblyProvider.cs.meta | 11 + .../Utils/IEditorAssembliesProxy.cs | 9 + .../Utils/IEditorAssembliesProxy.cs.meta | 11 + .../Utils/IEditorCompilationInterfaceProxy.cs | 10 + .../IEditorCompilationInterfaceProxy.cs.meta | 11 + .../TestRunner/Utils/ITestListCache.cs | 13 + .../TestRunner/Utils/ITestListCache.cs.meta | 11 + .../TestRunner/Utils/ITestListCacheData.cs | 12 + .../Utils/ITestListCacheData.cs.meta | 11 + .../TestRunner/Utils/ITestListProvider.cs | 11 + .../Utils/ITestListProvider.cs.meta | 11 + .../TestRunner/Utils/TestListCache.cs | 64 + .../TestRunner/Utils/TestListCache.cs.meta | 11 + .../TestRunner/Utils/TestListCacheData.cs | 26 + .../Utils/TestListCacheData.cs.meta | 11 + .../TestRunner/Utils/TestListJob.cs | 36 + .../TestRunner/Utils/TestListJob.cs.meta | 11 + .../TestRunner/Utils/TestListProvider.cs | 39 + .../TestRunner/Utils/TestListProvider.cs.meta | 11 + .../TestRunnerWindow.cs | 274 + .../TestRunnerWindow.cs.meta | 11 + .../TestRunnerWindowSettings.cs | 26 + .../TestRunnerWindowSettings.cs.meta | 11 + .../UnityEditor.TestRunner/TestSettings.meta | 8 + .../TestSettings/ITestSettings.cs | 22 + .../TestSettings/ITestSettings.cs.meta | 11 + .../TestSettings/ITestSettingsDeserializer.cs | 7 + .../ITestSettingsDeserializer.cs.meta | 11 + .../TestSettings/TestSettings.cs | 160 + .../TestSettings/TestSettings.cs.meta | 11 + .../TestSettings/TestSettingsDeserializer.cs | 130 + .../TestSettingsDeserializer.cs.meta | 11 + .../UnityEditor.TestRunner.asmdef | 21 + .../UnityEditor.TestRunner.asmdef.meta | 7 + .../UnityTestProtocol.meta | 8 + .../AssemblyCompilationErrorsMessage.cs | 13 + .../AssemblyCompilationErrorsMessage.cs.meta | 11 + .../UnityTestProtocol/ITestRunnerApiMapper.cs | 15 + .../ITestRunnerApiMapper.cs.meta | 11 + .../UnityTestProtocol/IUtpLogger.cs | 7 + .../UnityTestProtocol/IUtpLogger.cs.meta | 11 + .../UnityTestProtocol/IUtpMessageReporter.cs | 14 + .../IUtpMessageReporter.cs.meta | 11 + .../UnityTestProtocol/Message.cs | 29 + .../UnityTestProtocol/Message.cs.meta | 11 + .../UnityTestProtocol/TestFinishedMessage.cs | 17 + .../TestFinishedMessage.cs.meta | 11 + .../UnityTestProtocol/TestPlanMessage.cs | 14 + .../UnityTestProtocol/TestPlanMessage.cs.meta | 11 + .../UnityTestProtocol/TestRunnerApiMapper.cs | 98 + .../TestRunnerApiMapper.cs.meta | 11 + .../UnityTestProtocol/TestStartedMessage.cs | 15 + .../TestStartedMessage.cs.meta | 11 + .../UnityTestProtocol/TestState.cs | 13 + .../UnityTestProtocol/TestState.cs.meta | 11 + .../UnityTestProtocolListener.cs | 35 + .../UnityTestProtocolListener.cs.meta | 11 + .../UnityTestProtocolStarter.cs | 37 + .../UnityTestProtocolStarter.cs.meta | 11 + .../UnityTestProtocol/UtpDebuglogger.cs | 13 + .../UnityTestProtocol/UtpDebuglogger.cs.meta | 11 + .../UnityTestProtocol/UtpMessageReporter.cs | 57 + .../UtpMessageReporter.cs.meta | 11 + .../UnityEngine.TestRunner.meta | 8 + .../UnityEngine.TestRunner/AssemblyInfo.cs | 16 + .../AssemblyInfo.cs.meta | 11 + .../UnityEngine.TestRunner/Assertions.meta | 8 + .../AllocatingGCMemoryConstraint.cs | 83 + .../AllocatingGCMemoryConstraint.cs.meta | 11 + .../Assertions/ConstraintsExtensions.cs | 14 + .../Assertions/ConstraintsExtensions.cs.meta | 11 + .../Assertions/InvalidSignatureException.cs | 18 + .../InvalidSignatureException.cs.meta | 11 + .../UnityEngine.TestRunner/Assertions/Is.cs | 10 + .../Assertions/Is.cs.meta | 11 + .../Assertions/LogAssert.cs | 43 + .../Assertions/LogAssert.cs.meta | 11 + .../Assertions/LogScope.meta | 8 + .../Assertions/LogScope/ILogScope.cs | 10 + .../Assertions/LogScope/ILogScope.cs.meta | 11 + .../Assertions/LogScope/LogEvent.cs | 18 + .../Assertions/LogScope/LogEvent.cs.meta | 11 + .../Assertions/LogScope/LogMatch.cs | 103 + .../Assertions/LogScope/LogMatch.cs.meta | 11 + .../Assertions/LogScope/LogScope.cs | 224 + .../Assertions/LogScope/LogScope.cs.meta | 11 + .../UnexpectedLogMessageException.cs | 29 + .../UnexpectedLogMessageException.cs.meta | 11 + .../UnhandledLogMessageException.cs | 35 + .../UnhandledLogMessageException.cs.meta | 11 + .../Assertions/UnityTestTimeoutException.cs | 28 + .../UnityTestTimeoutException.cs.meta | 11 + .../NUnitExtensions.meta | 8 + .../NUnitExtensions/ActionDelegator.cs | 79 + .../NUnitExtensions/ActionDelegator.cs.meta | 11 + .../NUnitExtensions/Attributes.meta | 8 + .../Attributes/TestEnumerator.cs | 52 + .../Attributes/TestEnumerator.cs.meta | 11 + .../Attributes/UnityCombinatorialStrategy.cs | 20 + .../UnityCombinatorialStrategy.cs.meta | 11 + .../Attributes/UnityPlatformAttribute.cs | 56 + .../Attributes/UnityPlatformAttribute.cs.meta | 11 + .../Attributes/UnitySetUpAttribute.cs | 10 + .../Attributes/UnitySetUpAttribute.cs.meta | 11 + .../Attributes/UnityTearDownAttribute.cs | 10 + .../Attributes/UnityTearDownAttribute.cs.meta | 11 + .../Attributes/UnityTestAttribute.cs | 43 + .../Attributes/UnityTestAttribute.cs.meta | 11 + .../NUnitExtensions/BaseDelegator.cs | 58 + .../NUnitExtensions/BaseDelegator.cs.meta | 11 + .../NUnitExtensions/Commands.meta | 8 + .../Commands/BeforeAfterTestCommandBase.cs | 196 + .../BeforeAfterTestCommandBase.cs.meta | 11 + .../Commands/BeforeAfterTestCommandState.cs | 49 + .../BeforeAfterTestCommandState.cs.meta | 11 + .../EnumerableApplyChangesToContextCommand.cs | 34 + ...erableApplyChangesToContextCommand.cs.meta | 11 + .../EnumerableSetUpTearDownCommand.cs | 44 + .../EnumerableSetUpTearDownCommand.cs.meta | 11 + .../Commands/EnumerableTestMethodCommand.cs | 86 + .../EnumerableTestMethodCommand.cs.meta | 11 + .../Commands/ImmediateEnumerableCommand.cs | 32 + .../ImmediateEnumerableCommand.cs.meta | 11 + .../Commands/OuterUnityTestActionCommand.cs | 49 + .../OuterUnityTestActionCommand.cs.meta | 11 + .../Commands/SetUpTearDownCommand.cs | 48 + .../Commands/SetUpTearDownCommand.cs.meta | 11 + .../Commands/TestActionCommand.cs | 53 + .../Commands/TestActionCommand.cs.meta | 11 + .../Commands/TestCommandPcHelper.cs | 18 + .../Commands/TestCommandPcHelper.cs.meta | 11 + .../NUnitExtensions/ConstructDelegator.cs | 141 + .../ConstructDelegator.cs.meta | 11 + .../NUnitExtensions/Filters.meta | 8 + .../Filters/AssemblyNameFilter.cs | 25 + .../Filters/AssemblyNameFilter.cs.meta | 11 + .../Filters/CategoryFilterExtended.cs | 36 + .../Filters/CategoryFilterExtended.cs.meta | 11 + .../NUnitExtensions/IStateSerializer.cs | 12 + .../NUnitExtensions/IStateSerializer.cs.meta | 11 + .../NUnitExtensions/Runner.meta | 8 + .../Runner/CompositeWorkItem.cs | 342 + .../Runner/CompositeWorkItem.cs.meta | 11 + .../Runner/CoroutineTestWorkItem.cs | 77 + .../Runner/CoroutineTestWorkItem.cs.meta | 11 + .../Runner/DefaultTestWorkItem.cs | 137 + .../Runner/DefaultTestWorkItem.cs.meta | 11 + .../NUnitExtensions/Runner/FailCommand.cs | 27 + .../Runner/FailCommand.cs.meta | 11 + .../Runner/IEnumerableTestMethodCommand.cs | 10 + .../IEnumerableTestMethodCommand.cs.meta | 11 + .../Runner/PlaymodeWorkItemFactory.cs | 13 + .../Runner/PlaymodeWorkItemFactory.cs.meta | 11 + .../RestoreTestContextAfterDomainReload.cs | 4 + ...estoreTestContextAfterDomainReload.cs.meta | 11 + .../Runner/UnityLogCheckDelegatingCommand.cs | 106 + .../UnityLogCheckDelegatingCommand.cs.meta | 11 + .../Runner/UnityTestAssemblyRunner.cs | 96 + .../Runner/UnityTestAssemblyRunner.cs.meta | 11 + .../Runner/UnityTestExecutionContext.cs | 128 + .../Runner/UnityTestExecutionContext.cs.meta | 11 + .../NUnitExtensions/Runner/UnityWorkItem.cs | 112 + .../Runner/UnityWorkItem.cs.meta | 11 + .../Runner/UnityWorkItemDataHolder.cs | 10 + .../Runner/UnityWorkItemDataHolder.cs.meta | 11 + .../NUnitExtensions/Runner/WorkItemFactory.cs | 28 + .../Runner/WorkItemFactory.cs.meta | 11 + .../NUnitExtensions/TestExtensions.cs | 138 + .../NUnitExtensions/TestExtensions.cs.meta | 11 + .../NUnitExtensions/TestResultExtensions.cs | 77 + .../TestResultExtensions.cs.meta | 11 + .../UnityTestAssemblyBuilder.cs | 52 + .../UnityTestAssemblyBuilder.cs.meta | 11 + .../UnityEngine.TestRunner/TestRunner.meta | 8 + .../TestRunner/Callbacks.meta | 8 + .../Callbacks/PlayModeRunnerCallback.cs | 47 + .../Callbacks/PlayModeRunnerCallback.cs.meta | 11 + .../Callbacks/RemoteTestResultSender.cs | 130 + .../Callbacks/RemoteTestResultSender.cs.meta | 11 + .../Callbacks/TestResultRenderer.cs | 97 + .../Callbacks/TestResultRenderer.cs.meta | 11 + .../Callbacks/TestResultRendererCallback.cs | 36 + .../TestResultRendererCallback.cs.meta | 11 + .../TestRunner/ITestRunnerListener.cs | 26 + .../TestRunner/ITestRunnerListener.cs.meta | 11 + .../TestRunner/Messages.meta | 8 + .../Messages/IEditModeTestYieldInstruction.cs | 12 + .../IEditModeTestYieldInstruction.cs.meta | 11 + .../TestRunner/PlaymodeTestsController.cs | 129 + .../PlaymodeTestsController.cs.meta | 11 + .../PlaymodeTestsControllerSettings.cs | 28 + .../PlaymodeTestsControllerSettings.cs.meta | 11 + .../TestRunner/RemoteHelpers.meta | 8 + .../IRemoteTestResultDataFactory.cs | 11 + .../IRemoteTestResultDataFactory.cs.meta | 11 + .../PlayerConnectionMessageIds.cs | 12 + .../PlayerConnectionMessageIds.cs.meta | 11 + .../RemoteHelpers/RemoteTestData.cs | 54 + .../RemoteHelpers/RemoteTestData.cs.meta | 11 + .../RemoteHelpers/RemoteTestResultData.cs | 54 + .../RemoteTestResultData.cs.meta | 11 + .../RemoteTestResultDataFactory.cs | 51 + .../RemoteTestResultDataFactory.cs.meta | 11 + .../RemoteTestResultDataWithTestData.cs | 15 + .../RemoteTestResultDataWithTestData.cs.meta | 11 + .../TestRunner/TestEnumeratorWrapper.cs | 51 + .../TestRunner/TestEnumeratorWrapper.cs.meta | 11 + .../TestRunner/TestListenerWrapper.cs | 30 + .../TestRunner/TestListenerWrapper.cs.meta | 11 + .../TestRunner/TestPlatform.cs | 21 + .../TestRunner/TestPlatform.cs.meta | 11 + .../TestRunner/TestRunnerFilter.cs | 197 + .../TestRunner/TestRunnerFilter.cs.meta | 11 + .../UnityEngine.TestRunner.asmdef | 13 + .../UnityEngine.TestRunner.asmdef.meta | 7 + .../UnityEngine.TestRunner/Utils.meta | 8 + .../Utils/AssemblyProvider.meta | 8 + .../AssemblyProvider/AssemblyLoadProxy.cs | 12 + .../AssemblyLoadProxy.cs.meta | 11 + .../Utils/AssemblyProvider/AssemblyWrapper.cs | 30 + .../AssemblyProvider/AssemblyWrapper.cs.meta | 11 + .../AssemblyProvider/IAssemblyLoadProxy.cs | 7 + .../IAssemblyLoadProxy.cs.meta | 11 + .../AssemblyProvider/IAssemblyWrapper.cs | 11 + .../AssemblyProvider/IAssemblyWrapper.cs.meta | 11 + .../IScriptingRuntimeProxy.cs | 7 + .../IScriptingRuntimeProxy.cs.meta | 11 + .../AssemblyProvider/ITestAssemblyProvider.cs | 10 + .../ITestAssemblyProvider.cs.meta | 11 + .../PlayerTestAssemblyProvider.cs | 66 + .../PlayerTestAssemblyProvider.cs.meta | 11 + .../AssemblyProvider/ScriptingRuntimeProxy.cs | 10 + .../ScriptingRuntimeProxy.cs.meta | 11 + .../Utils/AttributeHelper.cs | 45 + .../Utils/AttributeHelper.cs.meta | 11 + .../Utils/ColorEqualityComparer.cs | 36 + .../Utils/ColorEqualityComparer.cs.meta | 11 + .../Utils/CoroutineRunner.cs | 103 + .../Utils/CoroutineRunner.cs.meta | 11 + .../Utils/FloatEqualityComparer.cs | 30 + .../Utils/FloatEqualityComparer.cs.meta | 11 + .../Utils/IOuterUnityTestAction.cs | 19 + .../Utils/IOuterUnityTestAction.cs.meta | 11 + .../Utils/IPostBuildCleanup.cs | 7 + .../Utils/IPostBuildCleanup.cs.meta | 11 + .../Utils/IPrebuildSceneSetup.cs | 7 + .../Utils/IPrebuildSceneSetup.cs.meta | 11 + .../Utils/MonoBehaviourTest.meta | 8 + .../MonoBehaviourTest/IMonoBehaviourTest.cs | 7 + .../IMonoBehaviourTest.cs.meta | 11 + .../MonoBehaviourTest/MonoBehaviourTest.cs | 23 + .../MonoBehaviourTest.cs.meta | 11 + .../Utils/PostBuildCleanupAttribute.cs | 20 + .../Utils/PostBuildCleanupAttribute.cs.meta | 11 + .../Utils/PrebuildSceneSetupAttribute.cs | 20 + .../Utils/PrebuildSceneSetupAttribute.cs.meta | 11 + .../Utils/QuaternionEqualityComparer.cs | 31 + .../Utils/QuaternionEqualityComparer.cs.meta | 11 + .../Utils/StacktraceFilter.cs | 43 + .../Utils/StacktraceFilter.cs.meta | 11 + .../UnityEngine.TestRunner/Utils/Utils.cs | 40 + .../Utils/Utils.cs.meta | 11 + .../Vector2ComparerWithEqualsOperator.cs | 22 + .../Vector2ComparerWithEqualsOperator.cs.meta | 11 + .../Utils/Vector2EqualityComparer.cs | 33 + .../Utils/Vector2EqualityComparer.cs.meta | 11 + .../Vector3ComparerWithEqualsOperator.cs | 22 + .../Vector3ComparerWithEqualsOperator.cs.meta | 11 + .../Utils/Vector3EqualityComparer.cs | 32 + .../Utils/Vector3EqualityComparer.cs.meta | 11 + .../Vector4ComparerWithEqualsOperator.cs | 22 + .../Vector4ComparerWithEqualsOperator.cs.meta | 11 + .../Utils/Vector4EqualityComparer.cs | 32 + .../Utils/Vector4EqualityComparer.cs.meta | 11 + .../package.json | 21 + .../package.json.meta | 7 + .../.gitlab-ci.yml | 12 + .../com.unity.textmeshpro@2.0.1/CHANGELOG.md | 180 + .../CHANGELOG.md.meta | 7 + .../Documentation~/TextMeshPro.md | 35 + .../Documentation~/TextMeshPro.md.meta | 7 + .../Editor Resources.meta | 8 + .../Editor Resources/Gizmos.meta | 8 + .../Gizmos/TMP - Dropdown Icon.psd | Bin 0 -> 85308 bytes .../Gizmos/TMP - Dropdown Icon.psd.meta | 143 + .../Gizmos/TMP - Font Asset Icon.psd | Bin 0 -> 103962 bytes .../Gizmos/TMP - Font Asset Icon.psd.meta | 57 + .../Gizmos/TMP - Input Field Icon.psd | Bin 0 -> 102100 bytes .../Gizmos/TMP - Input Field Icon.psd.meta | 57 + .../Gizmos/TMP - Sprite Asset Icon.psd | Bin 0 -> 103456 bytes .../Gizmos/TMP - Sprite Asset Icon.psd.meta | 57 + .../Gizmos/TMP - Text Component Icon.psd | Bin 0 -> 89826 bytes .../Gizmos/TMP - Text Component Icon.psd.meta | 53 + .../Editor Resources/Shaders.meta | 8 + .../Shaders/TMP_Properties.cginc | 85 + .../Shaders/TMP_Properties.cginc.meta | 9 + .../Shaders/TMP_SDF Internal SSD.shader | 126 + .../Shaders/TMP_SDF Internal SSD.shader.meta | 9 + .../Editor Resources/Textures.meta | 8 + .../Textures/SectionHeader_Dark.psd | Bin 0 -> 20744 bytes .../Textures/SectionHeader_Dark.psd.meta | 53 + .../Textures/SectionHeader_Light.psd | Bin 0 -> 20732 bytes .../Textures/SectionHeader_Light.psd.meta | 53 + .../Textures/btn_AlignBaseLine.psd | Bin 0 -> 43698 bytes .../Textures/btn_AlignBaseLine.psd.meta | 53 + .../Textures/btn_AlignBaseLine_Light.psd | Bin 0 -> 43792 bytes .../Textures/btn_AlignBaseLine_Light.psd.meta | 53 + .../Textures/btn_AlignBottom.psd | Bin 0 -> 42130 bytes .../Textures/btn_AlignBottom.psd.meta | 53 + .../Textures/btn_AlignBottom_Light.psd | Bin 0 -> 42404 bytes .../Textures/btn_AlignBottom_Light.psd.meta | 53 + .../Textures/btn_AlignCapLine.psd | Bin 0 -> 43303 bytes .../Textures/btn_AlignCapLine.psd.meta | 58 + .../Textures/btn_AlignCapLine_Light.psd | Bin 0 -> 43393 bytes .../Textures/btn_AlignCapLine_Light.psd.meta | 58 + .../Textures/btn_AlignCenter.psd | Bin 0 -> 36404 bytes .../Textures/btn_AlignCenter.psd.meta | 53 + .../Textures/btn_AlignCenterGeo.psd | Bin 0 -> 34342 bytes .../Textures/btn_AlignCenterGeo.psd.meta | 56 + .../Textures/btn_AlignCenterGeo_Light.psd | Bin 0 -> 40812 bytes .../btn_AlignCenterGeo_Light.psd.meta | 56 + .../Textures/btn_AlignCenter_Light.psd | Bin 0 -> 42374 bytes .../Textures/btn_AlignCenter_Light.psd.meta | 53 + .../Textures/btn_AlignFlush.psd | Bin 0 -> 35952 bytes .../Textures/btn_AlignFlush.psd.meta | 53 + .../Textures/btn_AlignFlush_Light.psd | Bin 0 -> 42370 bytes .../Textures/btn_AlignFlush_Light.psd.meta | 53 + .../Textures/btn_AlignJustified.psd | Bin 0 -> 33922 bytes .../Textures/btn_AlignJustified.psd.meta | 59 + .../Textures/btn_AlignJustified_Light.psd | Bin 0 -> 40274 bytes .../btn_AlignJustified_Light.psd.meta | 59 + .../Textures/btn_AlignLeft.psd | Bin 0 -> 37030 bytes .../Textures/btn_AlignLeft.psd.meta | 53 + .../Textures/btn_AlignLeft_Light.psd | Bin 0 -> 42188 bytes .../Textures/btn_AlignLeft_Light.psd.meta | 53 + .../Textures/btn_AlignMidLine.psd | Bin 0 -> 43949 bytes .../Textures/btn_AlignMidLine.psd.meta | 58 + .../Textures/btn_AlignMiddle.psd | Bin 0 -> 42140 bytes .../Textures/btn_AlignMiddle.psd.meta | 53 + .../Textures/btn_AlignMiddle_Light.psd | Bin 0 -> 42446 bytes .../Textures/btn_AlignMiddle_Light.psd.meta | 53 + .../Textures/btn_AlignMidline_Light.psd | Bin 0 -> 44041 bytes .../Textures/btn_AlignMidline_Light.psd.meta | 58 + .../Textures/btn_AlignRight.psd | Bin 0 -> 36444 bytes .../Textures/btn_AlignRight.psd.meta | 53 + .../Textures/btn_AlignRight_Light.psd | Bin 0 -> 42386 bytes .../Textures/btn_AlignRight_Light.psd.meta | 53 + .../Textures/btn_AlignTop.psd | Bin 0 -> 42120 bytes .../Textures/btn_AlignTop.psd.meta | 53 + .../Textures/btn_AlignTop_Light.psd | Bin 0 -> 42456 bytes .../Textures/btn_AlignTop_Light.psd.meta | 53 + .../com.unity.textmeshpro@2.0.1/LICENSE.md | 5 + .../LICENSE.md.meta | 7 + .../Package Resources.meta | 8 + .../TMP Essential Resources.unitypackage | Bin 0 -> 1277840 bytes .../TMP Essential Resources.unitypackage.meta | 7 + .../TMP Examples & Extras.unitypackage | Bin 0 -> 1928373 bytes .../TMP Examples & Extras.unitypackage.meta | 7 + .../PackageConversionData.json | 654 + .../PackageConversionData.json.meta | 7 + .../PackageConversionData_Assets.json | 184 + .../PackageConversionData_Assets.json.meta | 7 + .../com.unity.textmeshpro@2.0.1/Scripts.meta | 8 + .../Scripts/Editor.meta | 8 + .../Editor/DropdownOptionListDrawer.cs | 60 + .../Editor/DropdownOptionListDrawer.cs.meta | 12 + .../Scripts/Editor/GlyphInfoDrawer.cs | 61 + .../Scripts/Editor/GlyphInfoDrawer.cs.meta | 10 + .../Editor/GlyphMetricsPropertyDrawer.cs | 53 + .../Editor/GlyphMetricsPropertyDrawer.cs.meta | 11 + .../Scripts/Editor/GlyphRectPropertyDrawer.cs | 44 + .../Editor/GlyphRectPropertyDrawer.cs.meta | 11 + .../Scripts/Editor/TMP_BaseEditorPanel.cs | 1116 + .../Editor/TMP_BaseEditorPanel.cs.meta | 10 + .../Scripts/Editor/TMP_BaseShaderGUI.cs | 534 + .../Scripts/Editor/TMP_BaseShaderGUI.cs.meta | 12 + .../Scripts/Editor/TMP_BitmapShaderGUI.cs | 85 + .../Editor/TMP_BitmapShaderGUI.cs.meta | 12 + .../Editor/TMP_CharacterPropertyDrawer.cs | 237 + .../TMP_CharacterPropertyDrawer.cs.meta | 11 + .../Editor/TMP_ColorGradientAssetMenu.cs | 51 + .../Editor/TMP_ColorGradientAssetMenu.cs.meta | 12 + .../Scripts/Editor/TMP_ColorGradientEditor.cs | 146 + .../Editor/TMP_ColorGradientEditor.cs.meta | 12 + .../Scripts/Editor/TMP_DropdownEditor.cs | 51 + .../Scripts/Editor/TMP_DropdownEditor.cs.meta | 12 + .../Scripts/Editor/TMP_EditorCoroutine.cs | 96 + .../Editor/TMP_EditorCoroutine.cs.meta | 11 + .../Scripts/Editor/TMP_EditorPanel.cs | 153 + .../Scripts/Editor/TMP_EditorPanel.cs.meta | 10 + .../Scripts/Editor/TMP_EditorUtility.cs | 450 + .../Scripts/Editor/TMP_EditorUtility.cs.meta | 10 + .../Scripts/Editor/TMP_FontAssetEditor.cs | 1711 ++ .../Editor/TMP_FontAssetEditor.cs.meta | 10 + .../Editor/TMP_FontAsset_CreationMenu.cs | 190 + .../Editor/TMP_FontAsset_CreationMenu.cs.meta | 11 + ...GlyphPairAdjustmentRecordPropertyDrawer.cs | 382 + ...PairAdjustmentRecordPropertyDrawer.cs.meta | 11 + .../Scripts/Editor/TMP_GlyphPropertyDrawer.cs | 118 + .../Editor/TMP_GlyphPropertyDrawer.cs.meta | 11 + .../Scripts/Editor/TMP_InputFieldEditor.cs | 283 + .../Editor/TMP_InputFieldEditor.cs.meta | 12 + .../Scripts/Editor/TMP_MeshRendererEditor.cs | 76 + .../Editor/TMP_MeshRendererEditor.cs.meta | 12 + .../Scripts/Editor/TMP_PackageUtilities.cs | 920 + .../Editor/TMP_PackageUtilities.cs.meta | 11 + .../Editor/TMP_PostBuildProcessHandler.cs | 63 + .../TMP_PostBuildProcessHandler.cs.meta | 12 + .../Scripts/Editor/TMP_ProjectTextSettings.cs | 43 + .../Editor/TMP_ProjectTextSettings.cs.meta | 11 + .../Scripts/Editor/TMP_ResourcesLoader.cs | 68 + .../Editor/TMP_ResourcesLoader.cs.meta | 12 + .../Scripts/Editor/TMP_SDFShaderGUI.cs | 442 + .../Scripts/Editor/TMP_SDFShaderGUI.cs.meta | 12 + .../Editor/TMP_SerializedPropertyHolder.cs | 14 + .../TMP_SerializedPropertyHolder.cs.meta | 11 + .../Scripts/Editor/TMP_SettingsEditor.cs | 341 + .../Scripts/Editor/TMP_SettingsEditor.cs.meta | 12 + .../Scripts/Editor/TMP_SpriteAssetEditor.cs | 896 + .../Editor/TMP_SpriteAssetEditor.cs.meta | 10 + .../Scripts/Editor/TMP_SpriteAssetImporter.cs | 232 + .../Editor/TMP_SpriteAssetImporter.cs.meta | 12 + .../Scripts/Editor/TMP_SpriteAssetMenu.cs | 329 + .../Editor/TMP_SpriteAssetMenu.cs.meta | 10 + .../TMP_SpriteCharacterPropertyDrawer.cs | 225 + .../TMP_SpriteCharacterPropertyDrawer.cs.meta | 11 + .../Editor/TMP_SpriteGlyphPropertyDrawer.cs | 93 + .../TMP_SpriteGlyphPropertyDrawer.cs.meta | 11 + .../Scripts/Editor/TMP_StyleAssetMenu.cs | 49 + .../Scripts/Editor/TMP_StyleAssetMenu.cs.meta | 12 + .../Scripts/Editor/TMP_StyleSheetEditor.cs | 278 + .../Editor/TMP_StyleSheetEditor.cs.meta | 12 + .../Scripts/Editor/TMP_SubMeshUI_Editor.cs | 98 + .../Editor/TMP_SubMeshUI_Editor.cs.meta | 12 + .../Scripts/Editor/TMP_SubMesh_Editor.cs | 76 + .../Scripts/Editor/TMP_SubMesh_Editor.cs.meta | 12 + .../Scripts/Editor/TMP_TextAlignmentDrawer.cs | 119 + .../Editor/TMP_TextAlignmentDrawer.cs.meta | 10 + .../Scripts/Editor/TMP_UIStyleManager.cs | 134 + .../Scripts/Editor/TMP_UIStyleManager.cs.meta | 12 + .../Scripts/Editor/TMP_UiEditorPanel.cs | 91 + .../Scripts/Editor/TMP_UiEditorPanel.cs.meta | 12 + .../Scripts/Editor/TMPro_ContextMenus.cs | 341 + .../Scripts/Editor/TMPro_ContextMenus.cs.meta | 10 + .../Scripts/Editor/TMPro_CreateObjectMenu.cs | 311 + .../Editor/TMPro_CreateObjectMenu.cs.meta | 10 + .../Editor/TMPro_EditorShaderUtilities.cs | 53 + .../TMPro_EditorShaderUtilities.cs.meta | 10 + .../Editor/TMPro_FontAssetCreatorWindow.cs | 1736 ++ .../TMPro_FontAssetCreatorWindow.cs.meta | 10 + .../Scripts/Editor/TMPro_FontPlugin.cs | 115 + .../Scripts/Editor/TMPro_FontPlugin.cs.meta | 10 + .../Editor/TMPro_SortingLayerHelper.cs | 105 + .../Editor/TMPro_SortingLayerHelper.cs.meta | 10 + .../Editor/TMPro_TextContainerEditor.cs | 235 + .../Editor/TMPro_TextContainerEditor.cs.meta | 10 + .../Editor/TMPro_TexturePostProcessor.cs | 75 + .../Editor/TMPro_TexturePostProcessor.cs.meta | 10 + .../Editor/Unity.TextMeshPro.Editor.asmdef | 13 + .../Unity.TextMeshPro.Editor.asmdef.meta | 7 + .../Scripts/Runtime.meta | 8 + .../Scripts/Runtime/AssemblyInfo.cs.cs | 11 + .../Scripts/Runtime/AssemblyInfo.cs.cs.meta | 11 + .../Scripts/Runtime/FastAction.cs | 146 + .../Scripts/Runtime/FastAction.cs.meta | 12 + .../Runtime/MaterialReferenceManager.cs | 644 + .../Runtime/MaterialReferenceManager.cs.meta | 12 + .../Scripts/Runtime/TMP_Asset.cs | 26 + .../Scripts/Runtime/TMP_Asset.cs.meta | 12 + .../Scripts/Runtime/TMP_Character.cs | 51 + .../Scripts/Runtime/TMP_Character.cs.meta | 11 + .../Scripts/Runtime/TMP_CharacterInfo.cs | 73 + .../Scripts/Runtime/TMP_CharacterInfo.cs.meta | 11 + .../Scripts/Runtime/TMP_ColorGradient.cs | 68 + .../Scripts/Runtime/TMP_ColorGradient.cs.meta | 12 + .../Scripts/Runtime/TMP_CoroutineTween.cs | 246 + .../Runtime/TMP_CoroutineTween.cs.meta | 12 + .../Scripts/Runtime/TMP_DefaultControls.cs | 385 + .../Runtime/TMP_DefaultControls.cs.meta | 12 + .../Scripts/Runtime/TMP_Dropdown.cs | 1059 + .../Scripts/Runtime/TMP_Dropdown.cs.meta | 11 + .../Runtime/TMP_EditorResourceManager.cs | 142 + .../Runtime/TMP_EditorResourceManager.cs.meta | 11 + .../Scripts/Runtime/TMP_FontAsset.cs | 1948 ++ .../Scripts/Runtime/TMP_FontAsset.cs.meta | 11 + .../Scripts/Runtime/TMP_FontAssetCommon.cs | 456 + .../Runtime/TMP_FontAssetCommon.cs.meta | 10 + .../Scripts/Runtime/TMP_FontAssetUtilities.cs | 360 + .../Runtime/TMP_FontAssetUtilities.cs.meta | 11 + .../Scripts/Runtime/TMP_FontFeatureTable.cs | 55 + .../Runtime/TMP_FontFeatureTable.cs.meta | 11 + .../Scripts/Runtime/TMP_FontFeaturesCommon.cs | 223 + .../Runtime/TMP_FontFeaturesCommon.cs.meta | 11 + .../Scripts/Runtime/TMP_InputField.cs | 4149 ++++ .../Scripts/Runtime/TMP_InputField.cs.meta | 11 + .../Scripts/Runtime/TMP_InputValidator.cs | 15 + .../Runtime/TMP_InputValidator.cs.meta | 12 + .../Scripts/Runtime/TMP_LineInfo.cs | 52 + .../Scripts/Runtime/TMP_LineInfo.cs.meta | 12 + .../Scripts/Runtime/TMP_ListPool.cs | 21 + .../Scripts/Runtime/TMP_ListPool.cs.meta | 12 + .../Scripts/Runtime/TMP_MaterialManager.cs | 626 + .../Runtime/TMP_MaterialManager.cs.meta | 10 + .../Scripts/Runtime/TMP_MeshInfo.cs | 668 + .../Scripts/Runtime/TMP_MeshInfo.cs.meta | 12 + .../Scripts/Runtime/TMP_ObjectPool.cs | 51 + .../Scripts/Runtime/TMP_ObjectPool.cs.meta | 12 + .../Runtime/TMP_PackageResourceImporter.cs | 212 + .../TMP_PackageResourceImporter.cs.meta | 16 + .../Scripts/Runtime/TMP_RichTextTagStack.cs | 278 + .../Runtime/TMP_RichTextTagStack.cs.meta | 12 + .../Scripts/Runtime/TMP_RichTextTagsCommon.cs | 113 + .../Runtime/TMP_RichTextTagsCommon.cs.meta | 11 + .../Runtime/TMP_ScrollbarEventHandler.cs | 31 + .../Runtime/TMP_ScrollbarEventHandler.cs.meta | 12 + .../Scripts/Runtime/TMP_SelectionCaret.cs | 23 + .../Runtime/TMP_SelectionCaret.cs.meta | 12 + .../Scripts/Runtime/TMP_Settings.cs | 440 + .../Scripts/Runtime/TMP_Settings.cs.meta | 12 + .../Scripts/Runtime/TMP_ShaderUtilities.cs | 563 + .../Runtime/TMP_ShaderUtilities.cs.meta | 10 + .../Scripts/Runtime/TMP_Sprite.cs | 31 + .../Scripts/Runtime/TMP_Sprite.cs.meta | 10 + .../Scripts/Runtime/TMP_SpriteAnimator.cs | 147 + .../Runtime/TMP_SpriteAnimator.cs.meta | 12 + .../Scripts/Runtime/TMP_SpriteAsset.cs | 503 + .../Scripts/Runtime/TMP_SpriteAsset.cs.meta | 11 + .../Runtime/TMP_SpriteAssetImportFormats.cs | 61 + .../TMP_SpriteAssetImportFormats.cs.meta | 12 + .../Scripts/Runtime/TMP_SpriteCharacter.cs | 74 + .../Runtime/TMP_SpriteCharacter.cs.meta | 11 + .../Scripts/Runtime/TMP_SpriteGlyph.cs | 61 + .../Scripts/Runtime/TMP_SpriteGlyph.cs.meta | 11 + .../Scripts/Runtime/TMP_Style.cs | 95 + .../Scripts/Runtime/TMP_Style.cs.meta | 12 + .../Scripts/Runtime/TMP_StyleSheet.cs | 131 + .../Scripts/Runtime/TMP_StyleSheet.cs.meta | 13 + .../Scripts/Runtime/TMP_SubMesh.cs | 580 + .../Scripts/Runtime/TMP_SubMesh.cs.meta | 12 + .../Scripts/Runtime/TMP_SubMeshUI.cs | 807 + .../Scripts/Runtime/TMP_SubMeshUI.cs.meta | 12 + .../Scripts/Runtime/TMP_Text.cs | 7594 +++++++ .../Scripts/Runtime/TMP_Text.cs.meta | 12 + .../Scripts/Runtime/TMP_TextElement.cs | 62 + .../Scripts/Runtime/TMP_TextElement.cs.meta | 11 + .../Scripts/Runtime/TMP_TextElement_Legacy.cs | 25 + .../Runtime/TMP_TextElement_Legacy.cs.meta | 12 + .../Scripts/Runtime/TMP_TextInfo.cs | 256 + .../Scripts/Runtime/TMP_TextInfo.cs.meta | 12 + .../Runtime/TMP_TextParsingUtilities.cs | 136 + .../Runtime/TMP_TextParsingUtilities.cs.meta | 11 + .../Scripts/Runtime/TMP_TextUtilities.cs | 2279 ++ .../Scripts/Runtime/TMP_TextUtilities.cs.meta | 12 + .../Scripts/Runtime/TMP_UpdateManager.cs | 238 + .../Scripts/Runtime/TMP_UpdateManager.cs.meta | 12 + .../Scripts/Runtime/TMP_UpdateRegistery.cs | 178 + .../Runtime/TMP_UpdateRegistery.cs.meta | 12 + .../Scripts/Runtime/TMPro_EventManager.cs | 150 + .../Runtime/TMPro_EventManager.cs.meta | 10 + .../Scripts/Runtime/TMPro_ExtensionMethods.cs | 224 + .../Runtime/TMPro_ExtensionMethods.cs.meta | 10 + .../Scripts/Runtime/TMPro_MeshUtilities.cs | 357 + .../Runtime/TMPro_MeshUtilities.cs.meta | 10 + .../Scripts/Runtime/TMPro_Private.cs | 4051 ++++ .../Scripts/Runtime/TMPro_Private.cs.meta | 10 + .../Scripts/Runtime/TMPro_UGUI_Private.cs | 4314 ++++ .../Runtime/TMPro_UGUI_Private.cs.meta | 10 + .../Scripts/Runtime/TextContainer.cs | 370 + .../Scripts/Runtime/TextContainer.cs.meta | 12 + .../Scripts/Runtime/TextMeshPro.cs | 551 + .../Scripts/Runtime/TextMeshPro.cs.meta | 39 + .../Scripts/Runtime/TextMeshProUGUI.cs | 656 + .../Scripts/Runtime/TextMeshProUGUI.cs.meta | 11 + .../Scripts/Runtime/Unity.TextMeshPro.asmdef | 13 + .../Runtime/Unity.TextMeshPro.asmdef.meta | 7 + .../com.unity.textmeshpro@2.0.1/Tests.meta | 8 + .../Tests/Editor.meta | 8 + .../Tests/Editor/TMP_EditorTests.cs | 209 + .../Tests/Editor/TMP_EditorTests.cs.meta | 11 + .../Unity.TextMeshPro.Editor.Tests.asmdef | 16 + ...Unity.TextMeshPro.Editor.Tests.asmdef.meta | 7 + .../Tests/Runtime.meta | 8 + .../Tests/Runtime/TMP_RuntimeTests.cs | 207 + .../Tests/Runtime/TMP_RuntimeTests.cs.meta | 11 + .../Runtime/Unity.TextMeshPro.Tests.asmdef | 12 + .../Unity.TextMeshPro.Tests.asmdef.meta | 7 + .../com.unity.textmeshpro@2.0.1/package.json | 21 + .../package.json.meta | 7 + Library/ProjectSettings.asset | 651 + Library/SceneVisibilityState.asset | Bin 0 -> 4148 bytes Library/ScriptAssemblies/Assembly-CSharp.dll | Bin 0 -> 6144 bytes Library/ScriptAssemblies/Assembly-CSharp.pdb | Bin 0 -> 1324 bytes .../ScriptAssemblies/BuiltinAssemblies.stamp | 1 + .../Unity.CollabProxy.Editor.dll | Bin 0 -> 40960 bytes .../Unity.CollabProxy.Editor.pdb | Bin 0 -> 14204 bytes .../ScriptAssemblies/Unity.Rider.Editor.dll | Bin 0 -> 53760 bytes .../ScriptAssemblies/Unity.Rider.Editor.pdb | Bin 0 -> 18060 bytes .../Unity.TextMeshPro.Editor.dll | Bin 0 -> 212480 bytes .../Unity.TextMeshPro.Editor.pdb | Bin 0 -> 76960 bytes .../ScriptAssemblies/Unity.TextMeshPro.dll | Bin 0 -> 389632 bytes .../ScriptAssemblies/Unity.TextMeshPro.pdb | Bin 0 -> 191924 bytes .../Unity.Timeline.Editor.dll | Bin 0 -> 668672 bytes .../Unity.Timeline.Editor.pdb | Bin 0 -> 340272 bytes Library/ScriptAssemblies/Unity.Timeline.dll | Bin 0 -> 125440 bytes Library/ScriptAssemblies/Unity.Timeline.pdb | Bin 0 -> 62076 bytes .../ScriptAssemblies/Unity.VSCode.Editor.dll | Bin 0 -> 41472 bytes .../ScriptAssemblies/Unity.VSCode.Editor.pdb | Bin 0 -> 9884 bytes .../UnityEditor.TestRunner.dll | Bin 0 -> 164864 bytes .../UnityEditor.TestRunner.pdb | Bin 0 -> 68432 bytes Library/ScriptAssemblies/UnityEditor.UI.dll | Bin 0 -> 83968 bytes Library/ScriptAssemblies/UnityEditor.UI.pdb | Bin 0 -> 30424 bytes .../UnityEngine.TestRunner.dll | Bin 0 -> 100864 bytes .../UnityEngine.TestRunner.pdb | Bin 0 -> 42456 bytes Library/ScriptAssemblies/UnityEngine.UI.dll | Bin 0 -> 256512 bytes Library/ScriptAssemblies/UnityEngine.UI.pdb | Bin 0 -> 142396 bytes Library/ScriptMapper | Bin 0 -> 13241 bytes Library/ShaderCache.db | Bin 0 -> 3072 bytes .../0/02ed06672a6348b30d1d44efd614795d.bin | Bin 0 -> 2708 bytes .../0/0583fe67b70726e287f1d57f78a5a868.bin | Bin 0 -> 1004 bytes .../0/07bea87863102800bec50e9fffb40a71.bin | Bin 0 -> 424 bytes .../0/082ad42da370253bc6c3a0b660fc3b7f.bin | Bin 0 -> 1576 bytes .../0/0a9b85e4f8ed4c73a774e925f1742e14.bin | Bin 0 -> 420 bytes .../0/0abadb9cf36ab36e048bfba92ed35ad5.bin | Bin 0 -> 5656 bytes .../1/1392a3de4c9813fff53cd0b10f5a0455.bin | Bin 0 -> 916 bytes .../1/16b141565de26b0e0cbb50ced6e6552a.bin | Bin 0 -> 1932 bytes .../1/179e4e2d80fb4f708a26c9abef2c6cdf.bin | Bin 0 -> 3664 bytes .../1/189b0bd74b1e6b7e72266ac6293f598e.bin | Bin 0 -> 2028 bytes .../1/1c014959408e045481bc4b3c0811b0bf.bin | Bin 0 -> 1188 bytes .../1/1d174f239170da53990e977b596f704f.bin | Bin 0 -> 1748 bytes .../2/22001ae7332dad6cf930a1937da98ec9.bin | Bin 0 -> 4324 bytes .../2/242ba449865173ddfcd13d0fa2ec2bd7.bin | Bin 0 -> 2000 bytes .../2/256f0f6ce5ca6deec0da9a30768e8245.bin | Bin 0 -> 2164 bytes .../2/269f66d12817c7bf2c343709329722ed.bin | Bin 0 -> 1024 bytes .../2/2981c6704c3bdf3ddad2b0304b26ccf6.bin | Bin 0 -> 1024 bytes .../2/2beafb00d638337ac28301a7bd526144.bin | Bin 0 -> 1104 bytes .../2/2c912bd3b1e10b21fcf3189fbd39c6b8.bin | Bin 0 -> 2548 bytes .../2/2d563b4233112413ce3e2b109ca13adf.bin | Bin 0 -> 2164 bytes .../2/2f4cdeb51658d591357ab234b3b673f7.bin | Bin 0 -> 3628 bytes .../3/30dacaf052b35455cc90f751423e688f.bin | Bin 0 -> 1004 bytes .../3/33823dd99b143b652b02c2c901d4b4e4.bin | Bin 0 -> 308 bytes .../3/3b9b75cc7f33677702c25b2fa8143fc5.bin | Bin 0 -> 6516 bytes .../3/3ebe5912738b017eecedf8df8d96e169.bin | Bin 0 -> 1576 bytes .../4/409b19a137b7f036c7bdcbabbf173029.bin | Bin 0 -> 4132 bytes .../4/417ddc9451fc7dbcafb7cc7581f78639.bin | Bin 0 -> 1304 bytes .../4/4398d074462e0966bef7eae54e4ad72e.bin | Bin 0 -> 328 bytes .../4/44ec77e2f086a61d135f75bf4ecbbfb2.bin | Bin 0 -> 6340 bytes .../4/4534eb33d234a7ccb1a625f313c72100.bin | Bin 0 -> 10824 bytes .../4/46400903e576562eef046b621f16b596.bin | Bin 0 -> 3884 bytes .../5/50d6dd97358e8aca1f0e099225234f6f.bin | Bin 0 -> 424 bytes .../5/51c2a30fa51d9d25ce00548c4e591bd1.bin | Bin 0 -> 2464 bytes .../5/5334948754e37d87a59cbc75eb1f2f03.bin | Bin 0 -> 1548 bytes .../5/54554ca0164082a036921129efa0f99c.bin | Bin 0 -> 1624 bytes .../5/54fe8956b3e70206533d183c756b5222.bin | Bin 0 -> 500 bytes .../5/5954de7be96a0ecbeb9ed9ca917c8465.bin | Bin 0 -> 2856 bytes .../5/5e1ce4fc03df82a113734462bb969fd5.bin | Bin 0 -> 4396 bytes .../6/6032ea2449115f08b7ec8d2a53712586.bin | Bin 0 -> 3628 bytes .../6/65576104833da9b13327818c2aa8f6b2.bin | Bin 0 -> 2372 bytes .../6/65e0da327bab24c05389893b5981573d.bin | Bin 0 -> 3040 bytes .../6/66ac3ebe46783069ebc4b20a3cd2cacd.bin | Bin 0 -> 2828 bytes .../6/683cc8dda6649302480f24cffc14d6ad.bin | Bin 0 -> 5292 bytes .../6/6fcb6f1e2b27d5fb355a47bd1e742df4.bin | Bin 0 -> 1908 bytes .../7/7076ea48c5a0669e70fd368fb56e06ab.bin | Bin 0 -> 1304 bytes .../7/71d96f9a325e45e95567dfd42f230299.bin | Bin 0 -> 3032 bytes .../7/76949eac9d6a6fbdca6f4c8832eb7680.bin | Bin 0 -> 6148 bytes .../7/7c590c0172d3171c9183f616a85a45d5.bin | Bin 0 -> 9508 bytes .../8/823f5007cb1aef5f1033735b829c53b8.bin | Bin 0 -> 500 bytes .../8/842d01dd4d405079b8488869290585b5.bin | Bin 0 -> 3340 bytes .../8/8950646e3436c3dd2e349c77df9fb20c.bin | Bin 0 -> 1576 bytes .../8/8a95407a02d2024ff5b5a2bd7dd9d575.bin | Bin 0 -> 1624 bytes .../8/8ed329ad561a623f3121821b2a94275c.bin | Bin 0 -> 536 bytes .../9/901cdb032916c9211accdd4019a2ce02.bin | Bin 0 -> 9232 bytes .../9/90b34f4df5811605e54756368c99c346.bin | Bin 0 -> 2976 bytes .../9/93b473421a46ba755c93940dbc5ac689.bin | Bin 0 -> 8300 bytes .../9/947b894082757f2457bb2b2bb76a35cd.bin | Bin 0 -> 424 bytes .../9/94d276a929eca2da6b1022331e3b87bd.bin | Bin 0 -> 2000 bytes .../9/955653980dc79ae92a430e22b57c9631.bin | Bin 0 -> 2164 bytes .../9/95da310e476b5840926fb19d24732953.bin | Bin 0 -> 5448 bytes Library/ShaderCache/EditorEncounteredVariants | Bin 0 -> 6972 bytes .../a/a4b0d92e061bb92a51bb08787c120d8d.bin | Bin 0 -> 3648 bytes .../a/abaa3c39d7580688fb05a9a724538c16.bin | Bin 0 -> 1576 bytes .../a/acdfe1e222eb03b7e9c37fe6fb62eb22.bin | Bin 0 -> 1184 bytes .../a/ad6540778021856608bedef2060a64ea.bin | Bin 0 -> 1832 bytes .../b/b29d90c7437e033c3fd0c1aa9b09ee2d.bin | Bin 0 -> 2800 bytes .../b/b689b8e6d5c75da134a641614c015b01.bin | Bin 0 -> 5040 bytes .../b/b9a11144ece6f990a73c35d5c58b83a5.bin | Bin 0 -> 3004 bytes .../b/be8a954a0375946ac054f9aed818cf99.bin | Bin 0 -> 1024 bytes .../d/d0608dd0c980f8e3db87a9ead9fadf7e.bin | Bin 0 -> 1076 bytes .../d/d41a1c9b1cefdf2751500e16e815908f.bin | Bin 0 -> 1548 bytes .../d/d55d4116ea3a368ed99f41c4f669bd29.bin | Bin 0 -> 5928 bytes .../d/d705bf1633b946dc27ba522409657777.bin | Bin 0 -> 3664 bytes .../d/d8f94a8ffca2b832a00669f76ccb66c6.bin | Bin 0 -> 656 bytes .../d/db718221bb06a8bd32f41024f9a821e1.bin | Bin 0 -> 656 bytes .../d/dd5b50a47edddd48a39e43b9c0506cd9.bin | Bin 0 -> 3004 bytes .../e/e0b1b68fc370f6e3d5accef350d4983e.bin | Bin 0 -> 1632 bytes .../e/e2bcec9ec1c39549fc84d8d45a3ee4e6.bin | Bin 0 -> 1936 bytes .../e/e7fee8892885a360e1c2bdea12b62ba1.bin | Bin 0 -> 308 bytes .../e/e8722ab1fae7e48db6da9ccd328bcb61.bin | Bin 0 -> 1676 bytes .../e/ec1bb518b943ab220d7ca1c326705d1d.bin | Bin 0 -> 1184 bytes .../e/efad374a78c531dcfca563af23f5c965.bin | Bin 0 -> 3884 bytes .../f/fa7dff6fc3774de030f8a48cccc9189c.bin | Bin 0 -> 1548 bytes .../f/fbc3f82a85c763205e4f1a53b7c226bd.bin | Bin 0 -> 8416 bytes .../f/fcdaf21e9dc47ce49467329fe33b5c59.bin | Bin 0 -> 2492 bytes .../f/fd800eeaa00a46d1e64088df31813f39.bin | Bin 0 -> 1632 bytes .../f/fdd5ff5f279fe4054e8d69039eecb998.bin | Bin 0 -> 7484 bytes .../f/fe58b26f1ff40ef45dd1a7d361c600f6.bin | Bin 0 -> 3860 bytes Library/SpriteAtlasDatabase.asset | Bin 0 -> 4112 bytes .../Hierarchy/02f821-mainStage.json | 1 + .../SceneView/43c225-mainStage.json | 1 + Library/assetDatabase3 | Bin 0 -> 526928 bytes Library/expandedItems | Bin 0 -> 4152 bytes .../00/00000000000000001000000000000000 | Bin 0 -> 4273 bytes .../00/00000000000000001000000000000000.info | Bin 0 -> 581 bytes .../00/00000000000000002000000000000000 | Bin 0 -> 4240 bytes .../00/00000000000000002000000000000000.info | Bin 0 -> 577 bytes .../00/00000000000000003000000000000000 | Bin 0 -> 4232 bytes .../00/00000000000000003000000000000000.info | Bin 0 -> 575 bytes .../00/00000000000000004000000000000000 | Bin 0 -> 4240 bytes .../00/00000000000000004000000000000000.info | Bin 0 -> 581 bytes .../00/00000000000000004100000000000000 | Bin 0 -> 4240 bytes .../00/00000000000000004100000000000000.info | Bin 0 -> 578 bytes .../00/00000000000000005000000000000000 | Bin 0 -> 4301 bytes .../00/00000000000000005000000000000000.info | Bin 0 -> 33362 bytes .../00/00000000000000005100000000000000 | Bin 0 -> 4240 bytes .../00/00000000000000005100000000000000.info | Bin 0 -> 582 bytes .../00/00000000000000006000000000000000 | Bin 0 -> 4240 bytes .../00/00000000000000006000000000000000.info | Bin 0 -> 577 bytes .../00/00000000000000006100000000000000 | Bin 0 -> 4240 bytes .../00/00000000000000006100000000000000.info | Bin 0 -> 581 bytes .../00/00000000000000007000000000000000 | Bin 0 -> 4240 bytes .../00/00000000000000007000000000000000.info | Bin 0 -> 575 bytes .../00/00000000000000007100000000000000 | Bin 0 -> 4248 bytes .../00/00000000000000007100000000000000.info | Bin 0 -> 585 bytes .../00/00000000000000008000000000000000 | Bin 0 -> 4240 bytes .../00/00000000000000008000000000000000.info | Bin 0 -> 580 bytes .../00/00000000000000009000000000000000 | Bin 0 -> 4240 bytes .../00/00000000000000009000000000000000.info | Bin 0 -> 580 bytes .../00/0000000000000000a100000000000000 | Bin 0 -> 4248 bytes .../00/0000000000000000a100000000000000.info | Bin 0 -> 586 bytes .../00/0000000000000000b000000000000000 | Bin 0 -> 4248 bytes .../00/0000000000000000b000000000000000.info | Bin 0 -> 586 bytes .../00/0000000000000000b100000000000000 | Bin 0 -> 4240 bytes .../00/0000000000000000b100000000000000.info | Bin 0 -> 586 bytes .../00/0000000000000000c000000000000000 | Bin 0 -> 4240 bytes .../00/0000000000000000c000000000000000.info | Bin 0 -> 580 bytes .../00/0000000000000000c100000000000000 | Bin 0 -> 4232 bytes .../00/0000000000000000c100000000000000.info | Bin 0 -> 582 bytes .../00/00187582b67e7654b914b5a0d37daafb | Bin 0 -> 17992 bytes .../00/00187582b67e7654b914b5a0d37daafb.info | Bin 0 -> 689 bytes .../00/006633c8a6f4ae94aa9babf72234e1a2 | Bin 0 -> 16004 bytes .../00/006633c8a6f4ae94aa9babf72234e1a2.info | Bin 0 -> 683 bytes .../00/00f9a68859b850648902e0c98c25b590 | Bin 0 -> 6824 bytes .../00/00f9a68859b850648902e0c98c25b590.info | Bin 0 -> 666 bytes .../01/01ada73c4792aba4c937ff5d92cce866 | Bin 0 -> 16604 bytes .../01/01ada73c4792aba4c937ff5d92cce866.info | Bin 0 -> 725 bytes .../01/01cd96d8687272f4898cfd1562079dd7 | Bin 0 -> 6108 bytes .../01/01cd96d8687272f4898cfd1562079dd7.info | Bin 0 -> 708 bytes .../01/01df650e1b86e9f4a8e2b5dc9782506f | Bin 0 -> 11624 bytes .../01/01df650e1b86e9f4a8e2b5dc9782506f.info | Bin 0 -> 729 bytes .../02/020ee4c1798a3d243a4b8cbfee6cac2d | Bin 0 -> 5932 bytes .../02/020ee4c1798a3d243a4b8cbfee6cac2d.info | Bin 0 -> 686 bytes .../02/0217a80286f79419daa202f69409f19b | Bin 0 -> 7016 bytes .../02/0217a80286f79419daa202f69409f19b.info | Bin 0 -> 705 bytes .../02/02893ffb522b490a9fa28eedd2584309 | Bin 0 -> 13296 bytes .../02/02893ffb522b490a9fa28eedd2584309.info | Bin 0 -> 719 bytes .../02/02e1fe0a338b35545a5fed1345848332 | Bin 0 -> 7388 bytes .../02/02e1fe0a338b35545a5fed1345848332.info | Bin 0 -> 699 bytes .../02/02f771204943f4a40949438e873e3eff | Bin 0 -> 4512 bytes .../02/02f771204943f4a40949438e873e3eff.info | Bin 0 -> 681 bytes .../03/030f85c3f73729f4f976f66ffb23b875 | Bin 0 -> 15972 bytes .../03/030f85c3f73729f4f976f66ffb23b875.info | Bin 0 -> 709 bytes .../03/0336a32a79bfaed43a3fd2d88b91e974 | Bin 0 -> 8460 bytes .../03/0336a32a79bfaed43a3fd2d88b91e974.info | Bin 0 -> 737 bytes .../03/033c884ba52437d49bc55935939ef1c6 | Bin 0 -> 8548 bytes .../03/033c884ba52437d49bc55935939ef1c6.info | Bin 0 -> 779 bytes .../03/0386b6eb838c47138cd51d1c1b879a35 | Bin 0 -> 23772 bytes .../03/0386b6eb838c47138cd51d1c1b879a35.info | Bin 0 -> 698 bytes .../03/03e4d63665d06f04c8a6cf68133c1592 | Bin 0 -> 7064 bytes .../03/03e4d63665d06f04c8a6cf68133c1592.info | Bin 0 -> 755 bytes .../04/046c3854296c5ec48bac50da6ca248ec | Bin 0 -> 9856 bytes .../04/046c3854296c5ec48bac50da6ca248ec.info | Bin 0 -> 744 bytes .../04/04cc958f40f350044a432c012f320305 | Bin 0 -> 4305 bytes .../04/04cc958f40f350044a432c012f320305.info | Bin 0 -> 621 bytes .../05/056819c66570ca54cadb72330a354050 | Bin 0 -> 9772 bytes .../05/056819c66570ca54cadb72330a354050.info | Bin 0 -> 731 bytes .../05/05778dd1de4433d418793b6f3d3c18cf | Bin 0 -> 8060 bytes .../05/05778dd1de4433d418793b6f3d3c18cf.info | Bin 0 -> 725 bytes .../05/058cba836c1846c3aa1c5fd2e28aea77 | Bin 0 -> 32692 bytes .../05/058cba836c1846c3aa1c5fd2e28aea77.info | Bin 0 -> 668 bytes .../05/05f582d4fbc8e0c40afccb76bbbe0935 | Bin 0 -> 7440 bytes .../05/05f582d4fbc8e0c40afccb76bbbe0935.info | Bin 0 -> 667 bytes .../05/05f5bfd584002f948982a1498890f9a9 | Bin 0 -> 33148 bytes .../05/05f5bfd584002f948982a1498890f9a9.info | Bin 0 -> 649 bytes .../05/05f7f519769978b79b31d063a7fc6fa1 | Bin 0 -> 4888 bytes .../05/05f7f519769978b79b31d063a7fc6fa1.info | Bin 0 -> 670 bytes .../05/05f92e4a2414cb144a92157752dfa324 | Bin 0 -> 6084 bytes .../05/05f92e4a2414cb144a92157752dfa324.info | Bin 0 -> 692 bytes .../06/066619c9c9c84f89acb1b48c11a7efe2 | Bin 0 -> 18052 bytes .../06/066619c9c9c84f89acb1b48c11a7efe2.info | Bin 0 -> 2849 bytes .../06/06ae1baf5524b314fa65b173b9eca869 | Bin 0 -> 4321 bytes .../06/06ae1baf5524b314fa65b173b9eca869.info | Bin 0 -> 635 bytes .../07/071c17858dc6c47ada7b2a1f1ded5402 | Bin 0 -> 5536 bytes .../07/071c17858dc6c47ada7b2a1f1ded5402.info | Bin 0 -> 701 bytes .../07/077690d334440b044bdd51b26b3e9413 | Bin 0 -> 5824 bytes .../07/077690d334440b044bdd51b26b3e9413.info | Bin 0 -> 662 bytes .../07/07994bfe8b0e4adb97d706de5dea48d5 | Bin 0 -> 25224 bytes .../07/07994bfe8b0e4adb97d706de5dea48d5.info | Bin 0 -> 662 bytes .../07/07a967d2fca95324f8922df8394a5655 | Bin 0 -> 18892 bytes .../07/07a967d2fca95324f8922df8394a5655.info | Bin 0 -> 711 bytes .../07/07ea0326ed848fb4489187cb58f96113 | Bin 0 -> 4353 bytes .../07/07ea0326ed848fb4489187cb58f96113.info | Bin 0 -> 666 bytes .../08/083c6a3a5426382449369ddc12b691d8 | Bin 0 -> 11060 bytes .../08/083c6a3a5426382449369ddc12b691d8.info | Bin 0 -> 722 bytes .../08/087cba9fa6ac867479a0b0fdc0a5864b | Bin 0 -> 5648 bytes .../08/087cba9fa6ac867479a0b0fdc0a5864b.info | Bin 0 -> 738 bytes .../08/08d23c0b73905c148b525c3c93fff580 | Bin 0 -> 10692 bytes .../08/08d23c0b73905c148b525c3c93fff580.info | Bin 0 -> 687 bytes .../08/08e9894bdf0834710b22d3c0aa245ac0 | Bin 0 -> 7360 bytes .../08/08e9894bdf0834710b22d3c0aa245ac0.info | Bin 0 -> 684 bytes .../09/09e28640d754a611467eebfb261ed749 | Bin 0 -> 4325 bytes .../09/09e28640d754a611467eebfb261ed749.info | Bin 0 -> 600 bytes .../09/09e68d8a529a36340b752b99a1b70f83 | Bin 0 -> 4313 bytes .../09/09e68d8a529a36340b752b99a1b70f83.info | Bin 0 -> 625 bytes .../09/09f4db536a377bc40a9ac110af702bfa | Bin 0 -> 11512 bytes .../09/09f4db536a377bc40a9ac110af702bfa.info | Bin 0 -> 677 bytes .../0a/0a017569bfe174e4890797b4d64cbabc | Bin 0 -> 21760 bytes .../0a/0a017569bfe174e4890797b4d64cbabc.info | Bin 0 -> 695 bytes .../0a/0aaa057ce5566e940b18a0ccd0344693 | Bin 0 -> 7648 bytes .../0a/0aaa057ce5566e940b18a0ccd0344693.info | Bin 0 -> 678 bytes .../0a/0acc523941302664db1f4e527237feb3 | Bin 0 -> 4852 bytes .../0a/0acc523941302664db1f4e527237feb3.info | Bin 0 -> 705 bytes .../0b/0b2706df6fdff50448f84a3f6629b40f | Bin 0 -> 5892 bytes .../0b/0b2706df6fdff50448f84a3f6629b40f.info | Bin 0 -> 688 bytes .../0b/0bb74b1c097396c49b1691e6a938f814 | Bin 0 -> 6444 bytes .../0b/0bb74b1c097396c49b1691e6a938f814.info | Bin 0 -> 659 bytes .../0c/0c04c8cb23b78e04492e0f310cdee93e | Bin 0 -> 4317 bytes .../0c/0c04c8cb23b78e04492e0f310cdee93e.info | Bin 0 -> 635 bytes .../0c/0c56471f08a0f6846afc792f0b4205b9 | Bin 0 -> 5624 bytes .../0c/0c56471f08a0f6846afc792f0b4205b9.info | Bin 0 -> 707 bytes .../0c/0ca2545d76d1fb34fa45a9f1e432d259 | Bin 0 -> 10248 bytes .../0c/0ca2545d76d1fb34fa45a9f1e432d259.info | Bin 0 -> 683 bytes .../0c/0ca81982e37e893498abf804c12a22c7 | Bin 0 -> 5604 bytes .../0c/0ca81982e37e893498abf804c12a22c7.info | Bin 0 -> 779 bytes .../0c/0cb14878543cf3d4f8472b15f7ecf0e3 | Bin 0 -> 4357 bytes .../0c/0cb14878543cf3d4f8472b15f7ecf0e3.info | Bin 0 -> 668 bytes .../0c/0cd44c1031e13a943bb63640046fad76 | Bin 0 -> 25796 bytes .../0c/0cd44c1031e13a943bb63640046fad76.info | Bin 0 -> 674 bytes .../0d/0d0b652f32a2cc243917e4028fa0f046 | Bin 0 -> 49708 bytes .../0d/0d0b652f32a2cc243917e4028fa0f046.info | Bin 0 -> 655 bytes .../0d/0d2d0f36e67d4518a07df76235e91f9a | Bin 0 -> 4796 bytes .../0d/0d2d0f36e67d4518a07df76235e91f9a.info | Bin 0 -> 619 bytes .../0d/0d4fc309a0784294c8ab658b53b12320 | Bin 0 -> 7064 bytes .../0d/0d4fc309a0784294c8ab658b53b12320.info | Bin 0 -> 761 bytes .../0d/0d60a406ab64c434e9d731914e11a51e | Bin 0 -> 5460 bytes .../0d/0d60a406ab64c434e9d731914e11a51e.info | Bin 0 -> 696 bytes .../0d/0d9a36012a224080966c7b55896aa0f9 | Bin 0 -> 18484 bytes .../0d/0d9a36012a224080966c7b55896aa0f9.info | Bin 0 -> 3156 bytes .../0d/0dc62a5955cf04ec298a2c3ca4b2edf2 | Bin 0 -> 30832 bytes .../0d/0dc62a5955cf04ec298a2c3ca4b2edf2.info | Bin 0 -> 670 bytes .../0d/0de03ebd74e2b474fa23d05ab42d0cd8 | Bin 0 -> 9552 bytes .../0d/0de03ebd74e2b474fa23d05ab42d0cd8.info | Bin 0 -> 728 bytes .../0e/0e0afa652c0031c48896a97b424d027b | Bin 0 -> 12312 bytes .../0e/0e0afa652c0031c48896a97b424d027b.info | Bin 0 -> 663 bytes .../0e/0e751e877ed14d71a6b8e63ac54949cf | Bin 0 -> 6592 bytes .../0e/0e751e877ed14d71a6b8e63ac54949cf.info | Bin 0 -> 691 bytes .../0e/0efb23ecb373b6d4bbe5217485785138 | Bin 0 -> 9616 bytes .../0e/0efb23ecb373b6d4bbe5217485785138.info | Bin 0 -> 749 bytes .../0f/0f71aeefaa877ae4787e8356f25ad1e5 | Bin 0 -> 4317 bytes .../0f/0f71aeefaa877ae4787e8356f25ad1e5.info | Bin 0 -> 630 bytes .../10/102e512f651ee834f951a2516c1ea3b8 | Bin 0 -> 9324 bytes .../10/102e512f651ee834f951a2516c1ea3b8.info | Bin 0 -> 746 bytes .../10/1048a87135154606808bf2030da32d18 | Bin 0 -> 19504 bytes .../10/1048a87135154606808bf2030da32d18.info | Bin 0 -> 701 bytes .../10/105515c1653548242b4fe973c0f375f7 | Bin 0 -> 10748 bytes .../10/105515c1653548242b4fe973c0f375f7.info | Bin 0 -> 718 bytes .../10/1091bc2ad06e3234aac2b2fa2841c09d | Bin 0 -> 4313 bytes .../10/1091bc2ad06e3234aac2b2fa2841c09d.info | Bin 0 -> 623 bytes .../10/10ba9bc9317e315439b0223674162c52 | Bin 0 -> 11964 bytes .../10/10ba9bc9317e315439b0223674162c52.info | Bin 0 -> 703 bytes .../11/110d5035a36a6a34580fb65bb40cd78f | Bin 0 -> 17856 bytes .../11/110d5035a36a6a34580fb65bb40cd78f.info | Bin 0 -> 753 bytes .../11/1158e311a3101950348dcecb1bebc42d | Bin 0 -> 4325 bytes .../11/1158e311a3101950348dcecb1bebc42d.info | Bin 0 -> 602 bytes .../11/11a6a034ab84493cbed6af5ae7aae78b | Bin 0 -> 29064 bytes .../11/11a6a034ab84493cbed6af5ae7aae78b.info | Bin 0 -> 701 bytes .../12/124533853216377448d786fd7c725701 | Bin 0 -> 10548 bytes .../12/124533853216377448d786fd7c725701.info | Bin 0 -> 756 bytes .../12/127023922adddf744b59fa7b0b0c3030 | Bin 0 -> 16128 bytes .../12/127023922adddf744b59fa7b0b0c3030.info | Bin 0 -> 701 bytes .../12/12736c98af174f91827a26b66d2b01b9 | Bin 0 -> 18040 bytes .../12/12736c98af174f91827a26b66d2b01b9.info | Bin 0 -> 2859 bytes .../12/12c42068351bb084abde965d725b9887 | Bin 0 -> 4301 bytes .../12/12c42068351bb084abde965d725b9887.info | Bin 0 -> 618 bytes .../12/12dfd4bdbb5c8e6419432fbc54ef25d9 | Bin 0 -> 5388 bytes .../12/12dfd4bdbb5c8e6419432fbc54ef25d9.info | Bin 0 -> 710 bytes .../13/1336690ece4db2740b4ba38873e00dfb | Bin 0 -> 6184 bytes .../13/1336690ece4db2740b4ba38873e00dfb.info | Bin 0 -> 655 bytes .../13/1344c3c82d62a2a41a3576d8abb8e3ea | Bin 0 -> 10852 bytes .../13/1344c3c82d62a2a41a3576d8abb8e3ea.info | Bin 0 -> 655 bytes .../13/1369382d2c5e64dc5b2ec0b6b0a94531 | Bin 0 -> 4305 bytes .../13/1369382d2c5e64dc5b2ec0b6b0a94531.info | Bin 0 -> 617 bytes .../13/1385bc74f3945c943be16ecbb1381063 | Bin 0 -> 7424 bytes .../13/1385bc74f3945c943be16ecbb1381063.info | Bin 0 -> 713 bytes .../13/138dbec4f8742654fbceb0a19d68b9c5 | Bin 0 -> 7664 bytes .../13/138dbec4f8742654fbceb0a19d68b9c5.info | Bin 0 -> 682 bytes .../13/139c5eac101a4dc4fb3098e30c29f15e | Bin 0 -> 6484 bytes .../13/139c5eac101a4dc4fb3098e30c29f15e.info | Bin 0 -> 752 bytes .../13/13a9c1b4df2e489e8eb9cacca7429596 | Bin 0 -> 4648 bytes .../13/13a9c1b4df2e489e8eb9cacca7429596.info | Bin 0 -> 644 bytes .../13/13cd966480ec3354bb318ee1aeccff6f | Bin 0 -> 10876 bytes .../13/13cd966480ec3354bb318ee1aeccff6f.info | Bin 0 -> 655 bytes .../13/13d161b14bb3ab74e8a9634e26fb7a5e | Bin 0 -> 7152 bytes .../13/13d161b14bb3ab74e8a9634e26fb7a5e.info | Bin 0 -> 750 bytes .../13/13eb80ce50ac9c43cdbaf2109c0ec7db | Bin 0 -> 4325 bytes .../13/13eb80ce50ac9c43cdbaf2109c0ec7db.info | Bin 0 -> 603 bytes .../14/14427eecd0bccea468addc3492aaef57 | Bin 0 -> 14800 bytes .../14/14427eecd0bccea468addc3492aaef57.info | Bin 0 -> 654 bytes .../14/1489c7cdbe26c444b86705280ebdff02 | Bin 0 -> 7876 bytes .../14/1489c7cdbe26c444b86705280ebdff02.info | Bin 0 -> 677 bytes .../14/14d748c963c7b3549bed45457cc92c4f | Bin 0 -> 10044 bytes .../14/14d748c963c7b3549bed45457cc92c4f.info | Bin 0 -> 690 bytes .../15/1511ccae7919cfc46b603b9b337fdc94 | Bin 0 -> 10040 bytes .../15/1511ccae7919cfc46b603b9b337fdc94.info | Bin 0 -> 685 bytes .../15/15c38f6fa1940124db1ab7f6fe7268d1 | Bin 0 -> 7424 bytes .../15/15c38f6fa1940124db1ab7f6fe7268d1.info | Bin 0 -> 687 bytes .../15/15e0374501f39d54eb30235764636e0e | Bin 0 -> 5508 bytes .../15/15e0374501f39d54eb30235764636e0e.info | Bin 0 -> 677 bytes .../15/15f870c6975ad6449b5b52514b90dc2b | Bin 0 -> 11388 bytes .../15/15f870c6975ad6449b5b52514b90dc2b.info | Bin 0 -> 728 bytes .../16/16388ae022a89264b84107f0c1b44680 | Bin 0 -> 4329 bytes .../16/16388ae022a89264b84107f0c1b44680.info | Bin 0 -> 639 bytes .../16/164c9b1458eaab743a4b45c37a4d720d | Bin 0 -> 5944 bytes .../16/164c9b1458eaab743a4b45c37a4d720d.info | Bin 0 -> 708 bytes .../16/16548db454f7a3344b41ca2e5cdb52b2 | Bin 0 -> 7664 bytes .../16/16548db454f7a3344b41ca2e5cdb52b2.info | Bin 0 -> 690 bytes .../16/167329c8289a3a14a9e342df49fc4104 | Bin 0 -> 8240 bytes .../16/167329c8289a3a14a9e342df49fc4104.info | Bin 0 -> 680 bytes .../16/16950289b516d6747868e0f7bf7b37a0 | Bin 0 -> 6544 bytes .../16/16950289b516d6747868e0f7bf7b37a0.info | Bin 0 -> 674 bytes .../16/16c6414b77a90ff4098767dce485c495 | Bin 0 -> 5400 bytes .../16/16c6414b77a90ff4098767dce485c495.info | Bin 0 -> 686 bytes .../17/178008567c08e6d84014fa87825d10bb | Bin 0 -> 4309 bytes .../17/178008567c08e6d84014fa87825d10bb.info | Bin 0 -> 595 bytes .../18/18775b51e3bd42299fd30bd036ea982f | Bin 0 -> 18500 bytes .../18/18775b51e3bd42299fd30bd036ea982f.info | Bin 0 -> 3170 bytes .../18/18a4fadfef534684d5af39ca8dc48fe9 | Bin 0 -> 4764 bytes .../18/18a4fadfef534684d5af39ca8dc48fe9.info | Bin 0 -> 646 bytes .../19/197c1114eb793d24c8ef31120a134e88 | Bin 0 -> 5644 bytes .../19/197c1114eb793d24c8ef31120a134e88.info | Bin 0 -> 673 bytes .../19/1999349e7f492c947bb6eb70f624382e | Bin 0 -> 4313 bytes .../19/1999349e7f492c947bb6eb70f624382e.info | Bin 0 -> 627 bytes .../19/19a6f000f81e24c4a826c1abd43e77c7 | Bin 0 -> 8104 bytes .../19/19a6f000f81e24c4a826c1abd43e77c7.info | Bin 0 -> 761 bytes .../19/19c6f364c1e81cb4f829a057824639ad | Bin 0 -> 5656 bytes .../19/19c6f364c1e81cb4f829a057824639ad.info | Bin 0 -> 676 bytes .../1a/1a26e19d51cbfac42a02631ad1f9e39e | Bin 0 -> 5456 bytes .../1a/1a26e19d51cbfac42a02631ad1f9e39e.info | Bin 0 -> 714 bytes .../1a/1a4266815e998967becf686f9c71f0a6 | Bin 0 -> 4648 bytes .../1a/1a4266815e998967becf686f9c71f0a6.info | Bin 0 -> 651 bytes .../1a/1a70a790a43cd0d4a96f75746841f764 | Bin 0 -> 6480 bytes .../1a/1a70a790a43cd0d4a96f75746841f764.info | Bin 0 -> 689 bytes .../1a/1aa08ab6e0800fa44ae55d278d1423e3 | Bin 0 -> 60128 bytes .../1a/1aa08ab6e0800fa44ae55d278d1423e3.info | Bin 0 -> 661 bytes .../1a/1ac58cb55fc8daf4abd3945a2bbbb0c5 | Bin 0 -> 6876 bytes .../1a/1ac58cb55fc8daf4abd3945a2bbbb0c5.info | Bin 0 -> 774 bytes .../1a/1ac677c5ece15b443b2aaf7fae5842f7 | Bin 0 -> 6104 bytes .../1a/1ac677c5ece15b443b2aaf7fae5842f7.info | Bin 0 -> 647 bytes .../1a/1ad55f5ad04d1d045a1f287409c650dd | Bin 0 -> 4341 bytes .../1a/1ad55f5ad04d1d045a1f287409c650dd.info | Bin 0 -> 652 bytes .../1a/1adaa8dcc4fda3d4cb4d3c8e0cb65d12 | Bin 0 -> 6552 bytes .../1a/1adaa8dcc4fda3d4cb4d3c8e0cb65d12.info | Bin 0 -> 737 bytes .../1a/1adad61bfb44214ee3e887b5febc4396 | Bin 0 -> 4313 bytes .../1a/1adad61bfb44214ee3e887b5febc4396.info | Bin 0 -> 597 bytes .../1b/1b393f6b29a9ee84c803af1ab4944b71 | Bin 0 -> 4313 bytes .../1b/1b393f6b29a9ee84c803af1ab4944b71.info | Bin 0 -> 622 bytes .../1b/1bfe12aa306c0c74db4f4f1a1a0ae5ce | Bin 0 -> 10700 bytes .../1b/1bfe12aa306c0c74db4f4f1a1a0ae5ce.info | Bin 0 -> 682 bytes .../1c/1c147d10db452eb4b854a35f84472017 | Bin 0 -> 5548 bytes .../1c/1c147d10db452eb4b854a35f84472017.info | Bin 0 -> 668 bytes .../1c/1c5afe945b715e149a70113a4be7b32a | Bin 0 -> 5468 bytes .../1c/1c5afe945b715e149a70113a4be7b32a.info | Bin 0 -> 704 bytes .../1c/1c61a04a5b7737c4d16673d64be4194e | Bin 0 -> 4309 bytes .../1c/1c61a04a5b7737c4d16673d64be4194e.info | Bin 0 -> 595 bytes .../1c/1cddf785b0d07434d8e0607c97b09135 | Bin 0 -> 7828 bytes .../1c/1cddf785b0d07434d8e0607c97b09135.info | Bin 0 -> 728 bytes .../1c/1cf2469083ffa484da4d78dd70d708e8 | Bin 0 -> 4325 bytes .../1c/1cf2469083ffa484da4d78dd70d708e8.info | Bin 0 -> 601 bytes .../1d/1d446e57147ca9b4183edfbbfa9bf206 | Bin 0 -> 6776 bytes .../1d/1d446e57147ca9b4183edfbbfa9bf206.info | Bin 0 -> 684 bytes .../1d/1db879070d9a45f4c86cdf5e59616df5 | Bin 0 -> 8536 bytes .../1d/1db879070d9a45f4c86cdf5e59616df5.info | Bin 0 -> 700 bytes .../1d/1ddb9e1c877ea80479d1eab4ddaa5d0d | Bin 0 -> 4341 bytes .../1d/1ddb9e1c877ea80479d1eab4ddaa5d0d.info | Bin 0 -> 652 bytes .../1e/1ea10891dd782154ca0fb67bce9e6f72 | Bin 0 -> 17132 bytes .../1e/1ea10891dd782154ca0fb67bce9e6f72.info | Bin 0 -> 703 bytes .../1e/1ebc1994f9a3d5649a1201d3a84b38df | Bin 0 -> 12012 bytes .../1e/1ebc1994f9a3d5649a1201d3a84b38df.info | Bin 0 -> 761 bytes .../1e/1ec4b8ec4b34f4344bac53c19288eaa2 | Bin 0 -> 6732 bytes .../1e/1ec4b8ec4b34f4344bac53c19288eaa2.info | Bin 0 -> 668 bytes .../1e/1ef2923b9c5521948a04299da53ae750 | Bin 0 -> 9912 bytes .../1e/1ef2923b9c5521948a04299da53ae750.info | Bin 0 -> 654 bytes .../1f/1f2a7e0d1b6bbba408a41e206945c23c | Bin 0 -> 7832 bytes .../1f/1f2a7e0d1b6bbba408a41e206945c23c.info | Bin 0 -> 679 bytes .../1f/1f3a562675833b4448299e4f627b0cec | Bin 0 -> 14892 bytes .../1f/1f3a562675833b4448299e4f627b0cec.info | Bin 0 -> 693 bytes .../1f/1f5bbb88ca730434483440cbc0278ef6 | Bin 0 -> 4345 bytes .../1f/1f5bbb88ca730434483440cbc0278ef6.info | Bin 0 -> 653 bytes .../1f/1fe0f539450e54dbc85bfb2fa6b466fb | Bin 0 -> 8560 bytes .../1f/1fe0f539450e54dbc85bfb2fa6b466fb.info | Bin 0 -> 708 bytes .../20/200617708f5b36a4da2e2a3f1ceacedd | Bin 0 -> 13284 bytes .../20/200617708f5b36a4da2e2a3f1ceacedd.info | Bin 0 -> 704 bytes .../20/2011a59d3f76b3d4a85cb53f945fceee | Bin 0 -> 8432 bytes .../20/2011a59d3f76b3d4a85cb53f945fceee.info | Bin 0 -> 759 bytes .../20/202d758d102b6854a9710c8b93db742c | Bin 0 -> 7336 bytes .../20/202d758d102b6854a9710c8b93db742c.info | Bin 0 -> 686 bytes .../20/20793418366caf14293b29c55df5e9ec | Bin 0 -> 9616 bytes .../20/20793418366caf14293b29c55df5e9ec.info | Bin 0 -> 763 bytes .../20/208e46d59ff6e304db0318377d20f5a1 | Bin 0 -> 5416 bytes .../20/208e46d59ff6e304db0318377d20f5a1.info | Bin 0 -> 700 bytes .../20/20a9b557a46149dfbfa04a3a7080f5aa | Bin 0 -> 12860 bytes .../20/20a9b557a46149dfbfa04a3a7080f5aa.info | Bin 0 -> 683 bytes .../20/20c8bb6b47a526c4c96ca73314fe2856 | Bin 0 -> 8540 bytes .../20/20c8bb6b47a526c4c96ca73314fe2856.info | Bin 0 -> 704 bytes .../20/20cdb37e6fea6d946bbb84d2c923db85 | Bin 0 -> 5764 bytes .../20/20cdb37e6fea6d946bbb84d2c923db85.info | Bin 0 -> 746 bytes .../20/20ff4283f687e044087714f82c4d6d3f | Bin 0 -> 6016 bytes .../20/20ff4283f687e044087714f82c4d6d3f.info | Bin 0 -> 685 bytes .../21/21bf7f712d84d26478ebe6a299f21738 | Bin 0 -> 8012 bytes .../21/21bf7f712d84d26478ebe6a299f21738.info | Bin 0 -> 689 bytes .../21/21c0044a7f964773be90d197a78e4703 | Bin 0 -> 8284 bytes .../21/21c0044a7f964773be90d197a78e4703.info | Bin 0 -> 695 bytes .../21/21d2d5d6901f2ca43a8015c60ada4e2c | Bin 0 -> 11112 bytes .../21/21d2d5d6901f2ca43a8015c60ada4e2c.info | Bin 0 -> 673 bytes .../22/220e9325710f4235a43492dd1ee4980d | Bin 0 -> 5812 bytes .../22/220e9325710f4235a43492dd1ee4980d.info | Bin 0 -> 647 bytes .../22/22464cf7ab0243a6bf9c79851183b002 | Bin 0 -> 20164 bytes .../22/22464cf7ab0243a6bf9c79851183b002.info | Bin 0 -> 623 bytes .../22/22899211c24eeb248b22704499dd108f | Bin 0 -> 18648 bytes .../22/22899211c24eeb248b22704499dd108f.info | Bin 0 -> 638 bytes .../23/2300e75732d74890b38a8ff257a3ae15 | Bin 0 -> 22092 bytes .../23/2300e75732d74890b38a8ff257a3ae15.info | Bin 0 -> 695 bytes .../23/2347243c7aa3e224f9282dc94e6fc3b2 | Bin 0 -> 4317 bytes .../23/2347243c7aa3e224f9282dc94e6fc3b2.info | Bin 0 -> 634 bytes .../23/2359c66dee10c454c97f6aea84e3fe22 | Bin 0 -> 18692 bytes .../23/2359c66dee10c454c97f6aea84e3fe22.info | Bin 0 -> 665 bytes .../23/23884ce4c1de32846adafea2d53a4cee | Bin 0 -> 6096 bytes .../23/23884ce4c1de32846adafea2d53a4cee.info | Bin 0 -> 719 bytes .../23/239dd6edc8e5cd14585c03e09e86a747 | Bin 0 -> 4313 bytes .../23/239dd6edc8e5cd14585c03e09e86a747.info | Bin 0 -> 625 bytes .../23/23a562f2cac6401f9f91251c68a1a794 | Bin 0 -> 6700 bytes .../23/23a562f2cac6401f9f91251c68a1a794.info | Bin 0 -> 698 bytes .../23/23a56a19774ed42b6b65646af08a003c | Bin 0 -> 23952 bytes .../23/23a56a19774ed42b6b65646af08a003c.info | Bin 0 -> 689 bytes .../24/24a158219395ebf44a60547b97784ddc | Bin 0 -> 8452 bytes .../24/24a158219395ebf44a60547b97784ddc.info | Bin 0 -> 712 bytes .../24/24a7ce8b48db53747a4e8abbda77eac4 | Bin 0 -> 10292 bytes .../24/24a7ce8b48db53747a4e8abbda77eac4.info | Bin 0 -> 693 bytes .../25/2537ddddebaa455409dec422eb08fd7e | Bin 0 -> 14280 bytes .../25/2537ddddebaa455409dec422eb08fd7e.info | Bin 0 -> 676 bytes .../25/255b0c6d400fd964dab3029c8abc53f4 | Bin 0 -> 7304 bytes .../25/255b0c6d400fd964dab3029c8abc53f4.info | Bin 0 -> 687 bytes .../25/256a0ca37fa972840bce7fca446e75e7 | Bin 0 -> 4345 bytes .../25/256a0ca37fa972840bce7fca446e75e7.info | Bin 0 -> 659 bytes .../25/25a477c2f24db8778a4179421a32cc21 | Bin 0 -> 4309 bytes .../25/25a477c2f24db8778a4179421a32cc21.info | Bin 0 -> 594 bytes .../25/25b01819c6e1649428db2a9b274cf364 | Bin 0 -> 6836 bytes .../25/25b01819c6e1649428db2a9b274cf364.info | Bin 0 -> 649 bytes .../26/260b531edc40677429c0198d6961e448 | Bin 0 -> 12716 bytes .../26/260b531edc40677429c0198d6961e448.info | Bin 0 -> 676 bytes .../26/26570be2af04195458e6f1ac1f5c48e0 | Bin 0 -> 5984 bytes .../26/26570be2af04195458e6f1ac1f5c48e0.info | Bin 0 -> 693 bytes .../26/26721f9940339264fb14bdbfe1290e21 | Bin 0 -> 5452 bytes .../26/26721f9940339264fb14bdbfe1290e21.info | Bin 0 -> 807 bytes .../26/26a4f29db434fd79025c91f6126382cc | Bin 0 -> 4780 bytes .../26/26a4f29db434fd79025c91f6126382cc.info | Bin 0 -> 658 bytes .../26/26f3e7301af463c4ca72fa98d59b429e | Bin 0 -> 6924 bytes .../26/26f3e7301af463c4ca72fa98d59b429e.info | Bin 0 -> 752 bytes .../27/2705215ac5b84b70bacc50632be6e391 | Bin 0 -> 20040 bytes .../27/2705215ac5b84b70bacc50632be6e391.info | Bin 0 -> 665 bytes .../27/27619889b8ba8c24980f49ee34dbb44a | Bin 0 -> 4676 bytes .../27/27619889b8ba8c24980f49ee34dbb44a.info | Bin 0 -> 705 bytes .../27/27769e9b00b038d47aefe306a4d20bec | Bin 0 -> 6280 bytes .../27/27769e9b00b038d47aefe306a4d20bec.info | Bin 0 -> 706 bytes .../27/2799eb4c84e72e54092a292cf626936b | Bin 0 -> 6104 bytes .../27/2799eb4c84e72e54092a292cf626936b.info | Bin 0 -> 770 bytes .../27/27a0335dab59ec542aadd6636a5b4ebd | Bin 0 -> 7856 bytes .../27/27a0335dab59ec542aadd6636a5b4ebd.info | Bin 0 -> 701 bytes .../27/27df3b12f30d0b74a9b10a3968c402ff | Bin 0 -> 13860 bytes .../27/27df3b12f30d0b74a9b10a3968c402ff.info | Bin 0 -> 689 bytes .../27/27ed3e221887b3544bd9d6505d4a789f | Bin 0 -> 4313 bytes .../27/27ed3e221887b3544bd9d6505d4a789f.info | Bin 0 -> 629 bytes .../28/2808ba6bccb2478ec9c7209d8bf1f3cc | Bin 0 -> 4325 bytes .../28/2808ba6bccb2478ec9c7209d8bf1f3cc.info | Bin 0 -> 603 bytes .../28/28375447bcea455c9b51a6650b10c9d7 | Bin 0 -> 5692 bytes .../28/28375447bcea455c9b51a6650b10c9d7.info | Bin 0 -> 659 bytes .../28/28542eca5f1b4c64813acfbd512524b6 | Bin 0 -> 4313 bytes .../28/28542eca5f1b4c64813acfbd512524b6.info | Bin 0 -> 624 bytes .../28/28c8fcb831e6e734a9f564bc4f495eba | Bin 0 -> 5552 bytes .../28/28c8fcb831e6e734a9f564bc4f495eba.info | Bin 0 -> 746 bytes .../28/28e8b16370ff78c4faca58757271619f | Bin 0 -> 4313 bytes .../28/28e8b16370ff78c4faca58757271619f.info | Bin 0 -> 622 bytes .../28/28f79a0d7e64c2345bc46f8c4cf788f8 | Bin 0 -> 5552 bytes .../28/28f79a0d7e64c2345bc46f8c4cf788f8.info | Bin 0 -> 747 bytes .../29/29bf1d4ec1012bc45967ce95b729b8b3 | Bin 0 -> 12988 bytes .../29/29bf1d4ec1012bc45967ce95b729b8b3.info | Bin 0 -> 681 bytes .../29/29d603e0a726a9043b3503112271844a | Bin 0 -> 9396 bytes .../29/29d603e0a726a9043b3503112271844a.info | Bin 0 -> 737 bytes .../2a/2a0bd678385f98e4d8eabdfc07d62b4f | Bin 0 -> 6376 bytes .../2a/2a0bd678385f98e4d8eabdfc07d62b4f.info | Bin 0 -> 758 bytes .../2a/2a16748d9461eae46a725db9776d5390 | Bin 0 -> 5924 bytes .../2a/2a16748d9461eae46a725db9776d5390.info | Bin 0 -> 673 bytes .../2a/2a28c2fab6b1bb745a844ef6b908e7ee | Bin 0 -> 4317 bytes .../2a/2a28c2fab6b1bb745a844ef6b908e7ee.info | Bin 0 -> 633 bytes .../2a/2a4db7a114972834c8e4117be1d82ba3 | Bin 0 -> 25004 bytes .../2a/2a4db7a114972834c8e4117be1d82ba3.info | Bin 0 -> 658 bytes .../2a/2ae2ce6274819484fa8747a28cebdf3a | Bin 0 -> 5360 bytes .../2a/2ae2ce6274819484fa8747a28cebdf3a.info | Bin 0 -> 685 bytes .../2a/2aff4fada0516c64a8537a20bfe1b699 | Bin 0 -> 7540 bytes .../2a/2aff4fada0516c64a8537a20bfe1b699.info | Bin 0 -> 712 bytes .../2b/2b301b727225f1941974d69e61a55620 | Bin 0 -> 5900 bytes .../2b/2b301b727225f1941974d69e61a55620.info | Bin 0 -> 738 bytes .../2b/2bafac87e7f4b9b418d9448d219b01ab | Bin 0 -> 4444 bytes .../2b/2bafac87e7f4b9b418d9448d219b01ab.info | Bin 0 -> 664 bytes .../2b/2bc8a181dfd9de24388de89bb8db7713 | Bin 0 -> 4325 bytes .../2b/2bc8a181dfd9de24388de89bb8db7713.info | Bin 0 -> 637 bytes .../2b/2bd3ca1fde4b154448ef972b0f9d292e | Bin 0 -> 5752 bytes .../2b/2bd3ca1fde4b154448ef972b0f9d292e.info | Bin 0 -> 714 bytes .../2b/2bf68308f6cdff141ab98cd34174e4f1 | Bin 0 -> 8304 bytes .../2b/2bf68308f6cdff141ab98cd34174e4f1.info | Bin 0 -> 674 bytes .../2c/2c03ae9aa36a4fd44a983831f44654be | Bin 0 -> 9464 bytes .../2c/2c03ae9aa36a4fd44a983831f44654be.info | Bin 0 -> 721 bytes .../2c/2c2dfcbbb77359547bcaa7cdabd47ebb | Bin 0 -> 5604 bytes .../2c/2c2dfcbbb77359547bcaa7cdabd47ebb.info | Bin 0 -> 773 bytes .../2c/2c814623cb42764d304be0c5ddd03ceb | Bin 0 -> 4732 bytes .../2c/2c814623cb42764d304be0c5ddd03ceb.info | Bin 0 -> 646 bytes .../2c/2c87ec8c97244cd47945ec90a99abe35 | Bin 0 -> 6164 bytes .../2c/2c87ec8c97244cd47945ec90a99abe35.info | Bin 0 -> 656 bytes .../2c/2ce4bbcc4722440890a03312706037fe | Bin 0 -> 4305 bytes .../2c/2ce4bbcc4722440890a03312706037fe.info | Bin 0 -> 616 bytes .../2d/2d142b475fbfb8cf12ba3a795194300a | Bin 0 -> 4325 bytes .../2d/2d142b475fbfb8cf12ba3a795194300a.info | Bin 0 -> 601 bytes .../2d/2d49b7c1bcd2e07499844da127be038d | Bin 0 -> 14872 bytes .../2d/2d49b7c1bcd2e07499844da127be038d.info | Bin 0 -> 706 bytes .../2d/2d6ba5cbe47e6ad3c87474c56174d4e0 | Bin 0 -> 4313 bytes .../2d/2d6ba5cbe47e6ad3c87474c56174d4e0.info | Bin 0 -> 598 bytes .../2d/2d8485e4e3a2bcb429fc32900ca26d9e | Bin 0 -> 4317 bytes .../2d/2d8485e4e3a2bcb429fc32900ca26d9e.info | Bin 0 -> 630 bytes .../2d/2d9b6ff056b6f484ba6500aa8e06bcf3 | Bin 0 -> 4325 bytes .../2d/2d9b6ff056b6f484ba6500aa8e06bcf3.info | Bin 0 -> 635 bytes .../2d/2da0c512f12947e489f739169773d7ca | Bin 0 -> 165924 bytes .../2d/2da0c512f12947e489f739169773d7ca.info | Bin 0 -> 794 bytes .../2d/2da27f5fe80a3a549ac7331d9f52f5f0 | Bin 0 -> 4321 bytes .../2d/2da27f5fe80a3a549ac7331d9f52f5f0.info | Bin 0 -> 637 bytes .../2d/2de8ba3b840049641897e0da7ce1d5cd | Bin 0 -> 6992 bytes .../2d/2de8ba3b840049641897e0da7ce1d5cd.info | Bin 0 -> 731 bytes .../2e/2e0de782b8e9e4e45baeb7bb5ef4907f | Bin 0 -> 6188 bytes .../2e/2e0de782b8e9e4e45baeb7bb5ef4907f.info | Bin 0 -> 721 bytes .../2e/2e3b9bbf2c1a3cd4f88883ca32882ec6 | Bin 0 -> 5940 bytes .../2e/2e3b9bbf2c1a3cd4f88883ca32882ec6.info | Bin 0 -> 729 bytes .../2e/2e8066249a525704999c373210d308b9 | Bin 0 -> 4248 bytes .../2e/2e8066249a525704999c373210d308b9.info | Bin 0 -> 10931 bytes .../2f/2fa2cf7de51b0d34d9dce3747b72e49d | Bin 0 -> 9084 bytes .../2f/2fa2cf7de51b0d34d9dce3747b72e49d.info | Bin 0 -> 690 bytes .../2f/2fafe2cfe61f6974895a912c3755e8f1 | Bin 0 -> 10868 bytes .../2f/2fafe2cfe61f6974895a912c3755e8f1.info | Bin 0 -> 664 bytes .../2f/2fd6421f253b4ef1a19526541f9ffc0c | Bin 0 -> 83016 bytes .../2f/2fd6421f253b4ef1a19526541f9ffc0c.info | Bin 0 -> 4986 bytes .../30/305ca32be1aa5504aa182f583895dfe4 | Bin 0 -> 4317 bytes .../30/305ca32be1aa5504aa182f583895dfe4.info | Bin 0 -> 632 bytes .../30/30649d3a9faa99c48a7b1166b86bf2a0 | Bin 0 -> 6520 bytes .../30/30649d3a9faa99c48a7b1166b86bf2a0.info | Bin 0 -> 701 bytes .../30/3069a00b8c364df395994d7d379e0a99 | Bin 0 -> 230056 bytes .../30/3069a00b8c364df395994d7d379e0a99.info | Bin 0 -> 713 bytes .../30/306cc8c2b49d7114eaa3623786fc2126 | Bin 0 -> 14228 bytes .../30/306cc8c2b49d7114eaa3623786fc2126.info | Bin 0 -> 677 bytes .../30/309b0604924786544a3786ec4073c5a1 | Bin 0 -> 9860 bytes .../30/309b0604924786544a3786ec4073c5a1.info | Bin 0 -> 699 bytes .../30/30a939dce2fd4073955f2f20e659d506 | Bin 0 -> 14200 bytes .../30/30a939dce2fd4073955f2f20e659d506.info | Bin 0 -> 698 bytes .../30/30bed781e402439ab8ce4e3357708115 | Bin 0 -> 7984 bytes .../30/30bed781e402439ab8ce4e3357708115.info | Bin 0 -> 656 bytes .../31/3168bf9e060ff4b46be4bf08e308ce97 | Bin 0 -> 8052 bytes .../31/3168bf9e060ff4b46be4bf08e308ce97.info | Bin 0 -> 705 bytes .../31/3174898fbcdf12448963cdb5f5b60a33 | Bin 0 -> 4317 bytes .../31/3174898fbcdf12448963cdb5f5b60a33.info | Bin 0 -> 628 bytes .../31/319b8889f363f5947acf209c17a94149 | Bin 0 -> 4720 bytes .../31/319b8889f363f5947acf209c17a94149.info | Bin 0 -> 640 bytes .../31/31a19414c41e5ae4aae2af33fee712f6 | Bin 0 -> 11380 bytes .../31/31a19414c41e5ae4aae2af33fee712f6.info | Bin 0 -> 643 bytes .../32/321dc2c0720f8dd4f9396ecdc12b8746 | Bin 0 -> 5952 bytes .../32/321dc2c0720f8dd4f9396ecdc12b8746.info | Bin 0 -> 723 bytes .../32/322392995be44d23a3c86cfd972f838f | Bin 0 -> 22160 bytes .../32/322392995be44d23a3c86cfd972f838f.info | Bin 0 -> 686 bytes .../32/3245ec927659c4140ac4f8d17403cc18 | Bin 0 -> 9616 bytes .../32/3245ec927659c4140ac4f8d17403cc18.info | Bin 0 -> 689 bytes .../32/32535dd294c621e4297fba34b15b1c52 | Bin 0 -> 8980 bytes .../32/32535dd294c621e4297fba34b15b1c52.info | Bin 0 -> 682 bytes .../32/32a4a0ea998dd6149937d2774781c436 | Bin 0 -> 10224 bytes .../32/32a4a0ea998dd6149937d2774781c436.info | Bin 0 -> 666 bytes .../32/32d40088a6124c578ad6b428df586e2e | Bin 0 -> 17272 bytes .../32/32d40088a6124c578ad6b428df586e2e.info | Bin 0 -> 668 bytes .../32/32da81683c22faf458026716a2b821aa | Bin 0 -> 6380 bytes .../32/32da81683c22faf458026716a2b821aa.info | Bin 0 -> 736 bytes .../32/32e2186f4598cff489784aae586f2215 | Bin 0 -> 4317 bytes .../32/32e2186f4598cff489784aae586f2215.info | Bin 0 -> 627 bytes .../33/3312d7739989d2b4e91e6319e9a96d76 | Bin 0 -> 14824 bytes .../33/3312d7739989d2b4e91e6319e9a96d76.info | Bin 0 -> 661 bytes .../33/335020228a0fe124897f51f25f6350ee | Bin 0 -> 5484 bytes .../33/335020228a0fe124897f51f25f6350ee.info | Bin 0 -> 681 bytes .../33/3371106faf8d06f47a73979a3c8d82a1 | Bin 0 -> 29484 bytes .../33/3371106faf8d06f47a73979a3c8d82a1.info | Bin 0 -> 670 bytes .../33/3387717991705ce4e8ef033a0e543a06 | Bin 0 -> 20224 bytes .../33/3387717991705ce4e8ef033a0e543a06.info | Bin 0 -> 715 bytes .../33/33e6b78c96bb0694e96383e3c56b7b54 | Bin 0 -> 5648 bytes .../33/33e6b78c96bb0694e96383e3c56b7b54.info | Bin 0 -> 737 bytes .../34/3411e19edd44cfd46b548b058c3bc36c | Bin 0 -> 6064 bytes .../34/3411e19edd44cfd46b548b058c3bc36c.info | Bin 0 -> 725 bytes .../34/342a0f8aca7f4f0691338912faec0494 | Bin 0 -> 18036 bytes .../34/342a0f8aca7f4f0691338912faec0494.info | Bin 0 -> 2876 bytes .../34/343deaaf83e0cee4ca978e7df0b80d21 | Bin 0 -> 4500 bytes .../34/343deaaf83e0cee4ca978e7df0b80d21.info | Bin 0 -> 663 bytes .../34/3477d28057cb3e4469c7ea6b8dc23046 | Bin 0 -> 6056 bytes .../34/3477d28057cb3e4469c7ea6b8dc23046.info | Bin 0 -> 717 bytes .../34/34d6f60b171c1004e8335d52c65928a3 | Bin 0 -> 5316 bytes .../34/34d6f60b171c1004e8335d52c65928a3.info | Bin 0 -> 675 bytes .../34/34e150112c1c42ac83170b52d898e322 | Bin 0 -> 5980 bytes .../34/34e150112c1c42ac83170b52d898e322.info | Bin 0 -> 704 bytes .../34/34e2c9b9d9e44953933afe37461f44e6 | Bin 0 -> 15836 bytes .../34/34e2c9b9d9e44953933afe37461f44e6.info | Bin 0 -> 682 bytes .../34/34f6695d37a94370a3697f6b068f5d5e | Bin 0 -> 10908 bytes .../34/34f6695d37a94370a3697f6b068f5d5e.info | Bin 0 -> 689 bytes .../35/3504aa04cda851b44a65973f9aead6f7 | Bin 0 -> 5408 bytes .../35/3504aa04cda851b44a65973f9aead6f7.info | Bin 0 -> 680 bytes .../35/3550d8ec6f29ab34d895ae9a43d560c2 | Bin 0 -> 8992 bytes .../35/3550d8ec6f29ab34d895ae9a43d560c2.info | Bin 0 -> 659 bytes .../35/358a618bc6bd9354d81cc206fd2ed80e | Bin 0 -> 10252 bytes .../35/358a618bc6bd9354d81cc206fd2ed80e.info | Bin 0 -> 662 bytes .../35/35a0d10199de49f4db0128003bfd3bda | Bin 0 -> 6796 bytes .../35/35a0d10199de49f4db0128003bfd3bda.info | Bin 0 -> 803 bytes .../35/35cb34351b19cf44ba78afbd58746610 | Bin 0 -> 15812 bytes .../35/35cb34351b19cf44ba78afbd58746610.info | Bin 0 -> 679 bytes .../35/35d143b352678294ab0f5feb97b67f88 | Bin 0 -> 6276 bytes .../35/35d143b352678294ab0f5feb97b67f88.info | Bin 0 -> 694 bytes .../35/35ff0937876540d3bd4b6a941df62a92 | Bin 0 -> 18052 bytes .../35/35ff0937876540d3bd4b6a941df62a92.info | Bin 0 -> 2901 bytes .../36/3664a2ade19bb7848a4d2c96ac9148e3 | Bin 0 -> 5672 bytes .../36/3664a2ade19bb7848a4d2c96ac9148e3.info | Bin 0 -> 659 bytes .../36/368d3a0498e78014da578aa5f45e2797 | Bin 0 -> 17304 bytes .../36/368d3a0498e78014da578aa5f45e2797.info | Bin 0 -> 665 bytes .../37/371b6b9c8adc50745ace66a6fdf67481 | Bin 0 -> 6876 bytes .../37/371b6b9c8adc50745ace66a6fdf67481.info | Bin 0 -> 657 bytes .../37/373b4c78c0396334288fa5ff8e7b7350 | Bin 0 -> 6680 bytes .../37/373b4c78c0396334288fa5ff8e7b7350.info | Bin 0 -> 680 bytes .../37/37472f5179ca2004489ac901814cdbc3 | Bin 0 -> 4313 bytes .../37/37472f5179ca2004489ac901814cdbc3.info | Bin 0 -> 627 bytes .../37/376c84ea405e0f2b80562c23bb977216 | Bin 0 -> 4325 bytes .../37/376c84ea405e0f2b80562c23bb977216.info | Bin 0 -> 602 bytes .../37/37888acc09d9ee848bf9559f06645c45 | Bin 0 -> 4345 bytes .../37/37888acc09d9ee848bf9559f06645c45.info | Bin 0 -> 660 bytes .../37/37b164a494cd92a498526852ecceedef | Bin 0 -> 10024 bytes .../37/37b164a494cd92a498526852ecceedef.info | Bin 0 -> 698 bytes .../37/37cea569bfefafe49a1513c4d7f0e9eb | Bin 0 -> 6720 bytes .../37/37cea569bfefafe49a1513c4d7f0e9eb.info | Bin 0 -> 726 bytes .../37/37cff9f5a86ae494c8cb04423580480d | Bin 0 -> 16596 bytes .../37/37cff9f5a86ae494c8cb04423580480d.info | Bin 0 -> 743 bytes .../38/380f7372e785c7d408552e2c760d269d | Bin 0 -> 9820 bytes .../38/380f7372e785c7d408552e2c760d269d.info | Bin 0 -> 671 bytes .../38/383966e89d344865a36addd5d378ffd3 | Bin 0 -> 86116 bytes .../38/383966e89d344865a36addd5d378ffd3.info | Bin 0 -> 728 bytes .../38/38e3a8976f0b9c586b6dfbcef4e4066c | Bin 0 -> 4345 bytes .../38/38e3a8976f0b9c586b6dfbcef4e4066c.info | Bin 0 -> 613 bytes .../39/393b15da08c88194dbbcacd6ee15a89c | Bin 0 -> 5612 bytes .../39/393b15da08c88194dbbcacd6ee15a89c.info | Bin 0 -> 664 bytes .../39/39728903e57c60021f80449a8bbc0096 | Bin 0 -> 4309 bytes .../39/39728903e57c60021f80449a8bbc0096.info | Bin 0 -> 595 bytes .../39/39ab466162988eb4f83443f911bbf5c8 | Bin 0 -> 7712 bytes .../39/39ab466162988eb4f83443f911bbf5c8.info | Bin 0 -> 682 bytes .../39/39dcddcb5895328489c92214aa73e3bb | Bin 0 -> 20872 bytes .../39/39dcddcb5895328489c92214aa73e3bb.info | Bin 0 -> 692 bytes .../3a/3a2d94c8977984b67984caeff9fa666e | Bin 0 -> 14728 bytes .../3a/3a2d94c8977984b67984caeff9fa666e.info | Bin 0 -> 777 bytes .../3a/3a5038547af7c7f46bd90a015862e0b3 | Bin 0 -> 4305 bytes .../3a/3a5038547af7c7f46bd90a015862e0b3.info | Bin 0 -> 620 bytes .../3a/3a784fb721704576b3b4c3a7f3324264 | Bin 0 -> 5564 bytes .../3a/3a784fb721704576b3b4c3a7f3324264.info | Bin 0 -> 706 bytes .../3a/3ad53269c7421084ab67f804591994e0 | Bin 0 -> 47116 bytes .../3a/3ad53269c7421084ab67f804591994e0.info | Bin 0 -> 663 bytes .../3b/3b0c53b13a1539949b3b212e049151d1 | Bin 0 -> 9692 bytes .../3b/3b0c53b13a1539949b3b212e049151d1.info | Bin 0 -> 724 bytes .../3b/3b28913f21577de429da928d6d05219f | Bin 0 -> 6204 bytes .../3b/3b28913f21577de429da928d6d05219f.info | Bin 0 -> 745 bytes .../3b/3b4429eff9fcffb48b006e8edcc90338 | Bin 0 -> 6468 bytes .../3b/3b4429eff9fcffb48b006e8edcc90338.info | Bin 0 -> 794 bytes .../3b/3bce033ee26244e419b3bb3bba95a37d | Bin 0 -> 12248 bytes .../3b/3bce033ee26244e419b3bb3bba95a37d.info | Bin 0 -> 679 bytes .../3b/3bda1886f58f4e0ab1139400b160c3ee | Bin 0 -> 5820 bytes .../3b/3bda1886f58f4e0ab1139400b160c3ee.info | Bin 0 -> 656 bytes .../3c/3c01b61b3a6887c49a15276fd38be918 | Bin 0 -> 31736 bytes .../3c/3c01b61b3a6887c49a15276fd38be918.info | Bin 0 -> 694 bytes .../3c/3c09dc5cd0a70cf40856b7d406106ee1 | Bin 0 -> 7876 bytes .../3c/3c09dc5cd0a70cf40856b7d406106ee1.info | Bin 0 -> 705 bytes .../3c/3c4ccfb0896bcf44da13e152b267aa49 | Bin 0 -> 5580 bytes .../3c/3c4ccfb0896bcf44da13e152b267aa49.info | Bin 0 -> 764 bytes .../3c/3c6c403084eacec478a1129ce20061ea | Bin 0 -> 4568 bytes .../3c/3c6c403084eacec478a1129ce20061ea.info | Bin 0 -> 663 bytes .../3c/3c737f7a9d78541d1ab25f28f045dd32 | Bin 0 -> 7584 bytes .../3c/3c737f7a9d78541d1ab25f28f045dd32.info | Bin 0 -> 729 bytes .../3c/3cf5cb9e1ef590c48b1f919f2a7bd895 | Bin 0 -> 6552 bytes .../3c/3cf5cb9e1ef590c48b1f919f2a7bd895.info | Bin 0 -> 763 bytes .../3d/3d42c4854f9093e409cd90c00ef26de0 | Bin 0 -> 8452 bytes .../3d/3d42c4854f9093e409cd90c00ef26de0.info | Bin 0 -> 737 bytes .../3d/3d67ccdf81bed8247ad0db2d5f47a7d1 | Bin 0 -> 4612 bytes .../3d/3d67ccdf81bed8247ad0db2d5f47a7d1.info | Bin 0 -> 699 bytes .../3d/3dde15f260b0dd1469e60d16eaa795dc | Bin 0 -> 5704 bytes .../3d/3dde15f260b0dd1469e60d16eaa795dc.info | Bin 0 -> 746 bytes .../3e/3e29cdd1646803545b8fb18908666ec4 | Bin 0 -> 6704 bytes .../3e/3e29cdd1646803545b8fb18908666ec4.info | Bin 0 -> 695 bytes .../3e/3e8d6af343b383544ba5743d119f4062 | Bin 0 -> 4345 bytes .../3e/3e8d6af343b383544ba5743d119f4062.info | Bin 0 -> 662 bytes .../3e/3e99141cd5dbef844a4338bb87930b89 | Bin 0 -> 11980 bytes .../3e/3e99141cd5dbef844a4338bb87930b89.info | Bin 0 -> 666 bytes .../3e/3ec7596410385054a9e0bc90377fbe63 | Bin 0 -> 4788 bytes .../3e/3ec7596410385054a9e0bc90377fbe63.info | Bin 0 -> 622 bytes .../3e/3ec9edad2de6c4df3a146b543a0fbc4c | Bin 0 -> 5676 bytes .../3e/3ec9edad2de6c4df3a146b543a0fbc4c.info | Bin 0 -> 680 bytes .../3e/3ee40aa79cd242a5b53b0b0ca4f13f0f | Bin 0 -> 83012 bytes .../3e/3ee40aa79cd242a5b53b0b0ca4f13f0f.info | Bin 0 -> 4771 bytes .../3f/3f8643c1f8dd449e85b548a14edbea2e | Bin 0 -> 6940 bytes .../3f/3f8643c1f8dd449e85b548a14edbea2e.info | Bin 0 -> 705 bytes .../3f/3f8c1075884df0249b80e23a0598f9c1 | Bin 0 -> 5460 bytes .../3f/3f8c1075884df0249b80e23a0598f9c1.info | Bin 0 -> 719 bytes .../3f/3f9202a39620f51418046c7754f215f0 | Bin 0 -> 4345 bytes .../3f/3f9202a39620f51418046c7754f215f0.info | Bin 0 -> 660 bytes .../3f/3fa274f26b1574c40b949e114327022e | Bin 0 -> 7728 bytes .../3f/3fa274f26b1574c40b949e114327022e.info | Bin 0 -> 668 bytes .../3f/3fdd83b151eb8d25c5e2f82fc39dcb04 | Bin 0 -> 4676 bytes .../3f/3fdd83b151eb8d25c5e2f82fc39dcb04.info | Bin 0 -> 659 bytes .../3f/3ff3d24ea34f9f74cb138e435f5f491e | Bin 0 -> 6120 bytes .../3f/3ff3d24ea34f9f74cb138e435f5f491e.info | Bin 0 -> 668 bytes .../40/4068e97704a16794ea218ba560cdc1e9 | Bin 0 -> 12492 bytes .../40/4068e97704a16794ea218ba560cdc1e9.info | Bin 0 -> 708 bytes .../40/408674d91d506a54aac9a7f07951c018 | Bin 0 -> 6036 bytes .../40/408674d91d506a54aac9a7f07951c018.info | Bin 0 -> 711 bytes .../40/40bf3cec17fa0b49fe04443c8332d638 | Bin 0 -> 4708 bytes .../40/40bf3cec17fa0b49fe04443c8332d638.info | Bin 0 -> 657 bytes .../40/40c83ba6a1a64cb4baac27028dd1acc1 | Bin 0 -> 6016 bytes .../40/40c83ba6a1a64cb4baac27028dd1acc1.info | Bin 0 -> 670 bytes .../40/40cb137d0e9816e48a4141ed13afedad | Bin 0 -> 9404 bytes .../40/40cb137d0e9816e48a4141ed13afedad.info | Bin 0 -> 712 bytes .../41/411b7c7ffc0960249b35a2a247b66ff7 | Bin 0 -> 5784 bytes .../41/411b7c7ffc0960249b35a2a247b66ff7.info | Bin 0 -> 681 bytes .../41/41b96614b2e6494ba995ddcd252d11ae | Bin 0 -> 18036 bytes .../41/41b96614b2e6494ba995ddcd252d11ae.info | Bin 0 -> 2838 bytes .../41/41d60936b62cc6d4ca7fe628b22b0e40 | Bin 0 -> 5896 bytes .../41/41d60936b62cc6d4ca7fe628b22b0e40.info | Bin 0 -> 773 bytes .../41/41dcdc094b311464c8d6cb614548d89b | Bin 0 -> 9584 bytes .../41/41dcdc094b311464c8d6cb614548d89b.info | Bin 0 -> 700 bytes .../41/41e14f40b915ca743a3dffd18ffc65ab | Bin 0 -> 6044 bytes .../41/41e14f40b915ca743a3dffd18ffc65ab.info | Bin 0 -> 715 bytes .../42/423cd382a7804414d9bfdb2e7fb7bb62 | Bin 0 -> 5692 bytes .../42/423cd382a7804414d9bfdb2e7fb7bb62.info | Bin 0 -> 708 bytes .../42/423fe2ef878fa1140a7e1f7f9e365815 | Bin 0 -> 5716 bytes .../42/423fe2ef878fa1140a7e1f7f9e365815.info | Bin 0 -> 759 bytes .../42/426106349a0ff964fa4e7178c1d3a4f5 | Bin 0 -> 8324 bytes .../42/426106349a0ff964fa4e7178c1d3a4f5.info | Bin 0 -> 695 bytes .../42/42fe78c8fe682715a2cb531422e6ccb3 | Bin 0 -> 4704 bytes .../42/42fe78c8fe682715a2cb531422e6ccb3.info | Bin 0 -> 649 bytes .../43/4335a164bb763104c8805212c23d795f | Bin 0 -> 10044 bytes .../43/4335a164bb763104c8805212c23d795f.info | Bin 0 -> 649 bytes .../43/438efd46088d408d8a53f707fa68d976 | Bin 0 -> 23860 bytes .../43/438efd46088d408d8a53f707fa68d976.info | Bin 0 -> 695 bytes .../43/439c018cf4619e94d9a92110ce0aa188 | Bin 0 -> 10160 bytes .../43/439c018cf4619e94d9a92110ce0aa188.info | Bin 0 -> 706 bytes .../43/43a3aec217baa9644a7cf34b5f93fed9 | Bin 0 -> 7308 bytes .../43/43a3aec217baa9644a7cf34b5f93fed9.info | Bin 0 -> 762 bytes .../43/43b1467da3d29ae4597a733828cdd84a | Bin 0 -> 4317 bytes .../43/43b1467da3d29ae4597a733828cdd84a.info | Bin 0 -> 631 bytes .../44/4402dcee6e9969549bf5b33f11533208 | Bin 0 -> 6916 bytes .../44/4402dcee6e9969549bf5b33f11533208.info | Bin 0 -> 675 bytes .../44/44100f5f60f351348b9719b46d46cebe | Bin 0 -> 5948 bytes .../44/44100f5f60f351348b9719b46d46cebe.info | Bin 0 -> 766 bytes .../44/44507a833d0ca8a42aaec1c3d752eb5f | Bin 0 -> 5572 bytes .../44/44507a833d0ca8a42aaec1c3d752eb5f.info | Bin 0 -> 669 bytes .../44/445cdcfc747eba94288b97f5869aa2fb | Bin 0 -> 6688 bytes .../44/445cdcfc747eba94288b97f5869aa2fb.info | Bin 0 -> 694 bytes .../44/44e1d646473a40178712cb2150f54cec | Bin 0 -> 18932 bytes .../44/44e1d646473a40178712cb2150f54cec.info | Bin 0 -> 676 bytes .../45/4506ac79f5b274cb1b249ed7f4abfb9a | Bin 0 -> 4313 bytes .../45/4506ac79f5b274cb1b249ed7f4abfb9a.info | Bin 0 -> 625 bytes .../45/452534715106564439d2240d82999d88 | Bin 0 -> 7656 bytes .../45/452534715106564439d2240d82999d88.info | Bin 0 -> 668 bytes .../45/4545bb65ccebf8040ac212d5792979b5 | Bin 0 -> 10580 bytes .../45/4545bb65ccebf8040ac212d5792979b5.info | Bin 0 -> 666 bytes .../45/4584db2acba045742a16942983e7fb96 | Bin 0 -> 4317 bytes .../45/4584db2acba045742a16942983e7fb96.info | Bin 0 -> 628 bytes .../45/4585b5feb801bdb44b0e5eafdd95a3be | Bin 0 -> 6700 bytes .../45/4585b5feb801bdb44b0e5eafdd95a3be.info | Bin 0 -> 746 bytes .../45/459f6a07ee4a58b42ba2568b097c3ec4 | Bin 0 -> 12232 bytes .../45/459f6a07ee4a58b42ba2568b097c3ec4.info | Bin 0 -> 705 bytes .../46/46646a5562f14984690c85ee7b946bc9 | Bin 0 -> 4325 bytes .../46/46646a5562f14984690c85ee7b946bc9.info | Bin 0 -> 639 bytes .../46/468e1bfc887161e4196f33e942fc3199 | Bin 0 -> 35076 bytes .../46/468e1bfc887161e4196f33e942fc3199.info | Bin 0 -> 689 bytes .../47/470530e667ad4475786b28fa3187ce95 | Bin 0 -> 4648 bytes .../47/470530e667ad4475786b28fa3187ce95.info | Bin 0 -> 630 bytes .../47/4722a1362908a1843ab03a055c5c3fa0 | Bin 0 -> 5852 bytes .../47/4722a1362908a1843ab03a055c5c3fa0.info | Bin 0 -> 687 bytes .../47/472a6f18dd2f97c41af72271d22db869 | Bin 0 -> 6060 bytes .../47/472a6f18dd2f97c41af72271d22db869.info | Bin 0 -> 661 bytes .../47/475e3699f219c854f8581a9838135002 | Bin 0 -> 5688 bytes .../47/475e3699f219c854f8581a9838135002.info | Bin 0 -> 791 bytes .../48/48230e4e90fb4d14a9d56bddea898413 | Bin 0 -> 8672 bytes .../48/48230e4e90fb4d14a9d56bddea898413.info | Bin 0 -> 792 bytes .../48/4884ccc3528cb2e40a0e6f0a19a2b35b | Bin 0 -> 6432 bytes .../48/4884ccc3528cb2e40a0e6f0a19a2b35b.info | Bin 0 -> 719 bytes .../48/48853ae485fa386428341ac1ea122570 | Bin 0 -> 21032 bytes .../48/48853ae485fa386428341ac1ea122570.info | Bin 0 -> 701 bytes .../48/48967a2d5427ac2489cc0ea61da5f1a0 | Bin 0 -> 15388 bytes .../48/48967a2d5427ac2489cc0ea61da5f1a0.info | Bin 0 -> 680 bytes .../48/48b10b41f58d5b49717f376cda59eeb8 | Bin 0 -> 4337 bytes .../48/48b10b41f58d5b49717f376cda59eeb8.info | Bin 0 -> 607 bytes .../48/48d034c499ee4697af9dd6e327110249 | Bin 0 -> 18032 bytes .../48/48d034c499ee4697af9dd6e327110249.info | Bin 0 -> 2827 bytes .../49/495e2738ac7d88a41a158cd2e237d70b | Bin 0 -> 9192 bytes .../49/495e2738ac7d88a41a158cd2e237d70b.info | Bin 0 -> 708 bytes .../49/49679f302ac6408697f6b9314a38985c | Bin 0 -> 18500 bytes .../49/49679f302ac6408697f6b9314a38985c.info | Bin 0 -> 3192 bytes .../49/49d4c2ab7ff0f4442af256bad7c9d57c | Bin 0 -> 4341 bytes .../49/49d4c2ab7ff0f4442af256bad7c9d57c.info | Bin 0 -> 652 bytes .../49/49f1d2c7420db4444b011955726d0046 | Bin 0 -> 11888 bytes .../49/49f1d2c7420db4444b011955726d0046.info | Bin 0 -> 729 bytes .../4a/4a0757ee0236f39489520769ae710288 | Bin 0 -> 16280 bytes .../4a/4a0757ee0236f39489520769ae710288.info | Bin 0 -> 620 bytes .../4a/4ac5b6a65aaeb59478e3b78660e9f134 | Bin 0 -> 6624 bytes .../4a/4ac5b6a65aaeb59478e3b78660e9f134.info | Bin 0 -> 668 bytes .../4a/4acbfc0398bab674f922f693e58f4afc | Bin 0 -> 5364 bytes .../4a/4acbfc0398bab674f922f693e58f4afc.info | Bin 0 -> 661 bytes .../4a/4ad09461bf994e54da846f726a23118e | Bin 0 -> 4321 bytes .../4a/4ad09461bf994e54da846f726a23118e.info | Bin 0 -> 637 bytes .../4a/4ae64f3f72004807a9f919f9c27af0db | Bin 0 -> 14124 bytes .../4a/4ae64f3f72004807a9f919f9c27af0db.info | Bin 0 -> 665 bytes .../4b/4b518b37798c97b0f860962cbf615533 | Bin 0 -> 4848 bytes .../4b/4b518b37798c97b0f860962cbf615533.info | Bin 0 -> 664 bytes .../4b/4b57f909f22642d469a39e9628535312 | Bin 0 -> 11884 bytes .../4b/4b57f909f22642d469a39e9628535312.info | Bin 0 -> 688 bytes .../4b/4b721099b5d509d4093e516f59ad9ad6 | Bin 0 -> 19224 bytes .../4b/4b721099b5d509d4093e516f59ad9ad6.info | Bin 0 -> 655 bytes .../4b/4b8be68229770db4ea3c78ab0d854325 | Bin 0 -> 6504 bytes .../4b/4b8be68229770db4ea3c78ab0d854325.info | Bin 0 -> 712 bytes .../4b/4ba2329b63d54f0187bcaa12486b1b0f | Bin 0 -> 6284 bytes .../4b/4ba2329b63d54f0187bcaa12486b1b0f.info | Bin 0 -> 591 bytes .../4b/4bbc17b35884fdf468e4b52ae4222882 | Bin 0 -> 12276 bytes .../4b/4bbc17b35884fdf468e4b52ae4222882.info | Bin 0 -> 707 bytes .../4b/4bcebd09e16291b4fb14e07f32300e83 | Bin 0 -> 4281 bytes .../4b/4bcebd09e16291b4fb14e07f32300e83.info | Bin 0 -> 594 bytes .../4b/4bd2bc28ff24d5c488844851cb785db0 | Bin 0 -> 6304 bytes .../4b/4bd2bc28ff24d5c488844851cb785db0.info | Bin 0 -> 736 bytes .../4c/4c1821c1816c6fa44967b8ecb79ea7e4 | Bin 0 -> 19008 bytes .../4c/4c1821c1816c6fa44967b8ecb79ea7e4.info | Bin 0 -> 675 bytes .../4c/4c5eb52d37bb6714a98af73df7d9cf2c | Bin 0 -> 6420 bytes .../4c/4c5eb52d37bb6714a98af73df7d9cf2c.info | Bin 0 -> 705 bytes .../4c/4c6f60d349ea37048af03504fc872f33 | Bin 0 -> 4317 bytes .../4c/4c6f60d349ea37048af03504fc872f33.info | Bin 0 -> 631 bytes .../4c/4cb169caa67eddf4d83b39fd0917a945 | Bin 0 -> 6072 bytes .../4c/4cb169caa67eddf4d83b39fd0917a945.info | Bin 0 -> 640 bytes .../4c/4cfe5ade9a1375e40aed87618b92bd12 | Bin 0 -> 4313 bytes .../4c/4cfe5ade9a1375e40aed87618b92bd12.info | Bin 0 -> 624 bytes .../4d/4d2250412b81fe34abf39f246e274479 | Bin 0 -> 30488 bytes .../4d/4d2250412b81fe34abf39f246e274479.info | Bin 0 -> 659 bytes .../4d/4d31e19fd539ac54c8d9151da43683e9 | Bin 0 -> 5504 bytes .../4d/4d31e19fd539ac54c8d9151da43683e9.info | Bin 0 -> 685 bytes .../4d/4d3d51749e989f747b2674e0b4d9b3d7 | Bin 0 -> 10144 bytes .../4d/4d3d51749e989f747b2674e0b4d9b3d7.info | Bin 0 -> 612 bytes .../4d/4d616d1a494edd144b262cf6cd5e5fda | Bin 0 -> 7892 bytes .../4d/4d616d1a494edd144b262cf6cd5e5fda.info | Bin 0 -> 731 bytes .../4d/4db13e1060deaae48b30246ed63b7c9b | Bin 0 -> 5488 bytes .../4d/4db13e1060deaae48b30246ed63b7c9b.info | Bin 0 -> 688 bytes .../4d/4dc5887d05b52fd4fb5f52909d09ffe9 | Bin 0 -> 7624 bytes .../4d/4dc5887d05b52fd4fb5f52909d09ffe9.info | Bin 0 -> 746 bytes .../4d/4ddcdc3816429494a8bea67e973875f7 | Bin 0 -> 5208 bytes .../4d/4ddcdc3816429494a8bea67e973875f7.info | Bin 0 -> 622 bytes .../4d/4dfcd3a631f61d248b7cc0b845d40345 | Bin 0 -> 14976 bytes .../4d/4dfcd3a631f61d248b7cc0b845d40345.info | Bin 0 -> 714 bytes .../4e/4e29b1a8efbd4b44bb3f3716e73f07ff | Bin 0 -> 11484 bytes .../4e/4e29b1a8efbd4b44bb3f3716e73f07ff.info | Bin 0 -> 649 bytes .../4f/4f07c137155b291429c0b3670c4defba | Bin 0 -> 4816 bytes .../4f/4f07c137155b291429c0b3670c4defba.info | Bin 0 -> 713 bytes .../4f/4f0ca6874aa74540bb3d4fe5a0f86bcc | Bin 0 -> 112388 bytes .../4f/4f0ca6874aa74540bb3d4fe5a0f86bcc.info | Bin 0 -> 680 bytes .../4f/4f0f9b9f3ed97ad2b9ba8f1a8e4666c2 | Bin 0 -> 4760 bytes .../4f/4f0f9b9f3ed97ad2b9ba8f1a8e4666c2.info | Bin 0 -> 654 bytes .../4f/4f10dd60657c6004587f237a7e90f8e4 | Bin 0 -> 9264 bytes .../4f/4f10dd60657c6004587f237a7e90f8e4.info | Bin 0 -> 693 bytes .../4f/4f231c4fb786f3946a6b90b886c48677 | Bin 0 -> 30096 bytes .../4f/4f231c4fb786f3946a6b90b886c48677.info | Bin 0 -> 721 bytes .../4f/4f5ed95515938d14189b094f8654d0bd | Bin 0 -> 6648 bytes .../4f/4f5ed95515938d14189b094f8654d0bd.info | Bin 0 -> 651 bytes .../4f/4f90cfe4bf5cfb44f84a5b11387f2a42 | Bin 0 -> 7904 bytes .../4f/4f90cfe4bf5cfb44f84a5b11387f2a42.info | Bin 0 -> 691 bytes .../4f/4f939b9e23a0946439b812551e07ac81 | Bin 0 -> 7588 bytes .../4f/4f939b9e23a0946439b812551e07ac81.info | Bin 0 -> 732 bytes .../4f/4f9ac6e545d53f94b9f09c85b9576f36 | Bin 0 -> 4309 bytes .../4f/4f9ac6e545d53f94b9f09c85b9576f36.info | Bin 0 -> 620 bytes .../4f/4fbcc9b1f6ace8c4f8724a88dccca5f8 | Bin 0 -> 7340 bytes .../4f/4fbcc9b1f6ace8c4f8724a88dccca5f8.info | Bin 0 -> 706 bytes .../50/505965fb9ab352b4d88882d7c8d822bf | Bin 0 -> 10716 bytes .../50/505965fb9ab352b4d88882d7c8d822bf.info | Bin 0 -> 699 bytes .../50/5082cb99a8f99b84d84dd8b4c5233a9e | Bin 0 -> 5808 bytes .../50/5082cb99a8f99b84d84dd8b4c5233a9e.info | Bin 0 -> 700 bytes .../50/50de529b6a28f4a7093045e08810a5df | Bin 0 -> 10124 bytes .../50/50de529b6a28f4a7093045e08810a5df.info | Bin 0 -> 693 bytes .../51/511aa760b8728a940a41c29837945292 | Bin 0 -> 13128 bytes .../51/511aa760b8728a940a41c29837945292.info | Bin 0 -> 678 bytes .../51/5143f58107604835ab1a5efa2d8818fd | Bin 0 -> 351544 bytes .../51/5143f58107604835ab1a5efa2d8818fd.info | Bin 0 -> 653 bytes .../51/5151708d47edd4344ba8e7bd469d966e | Bin 0 -> 8264 bytes .../51/5151708d47edd4344ba8e7bd469d966e.info | Bin 0 -> 677 bytes .../51/51557afa652635743b264a309f0a5c60 | Bin 0 -> 4353 bytes .../51/51557afa652635743b264a309f0a5c60.info | Bin 0 -> 670 bytes .../51/515638b803bef8599dbd6d5c8bdaa53e | Bin 0 -> 4309 bytes .../51/515638b803bef8599dbd6d5c8bdaa53e.info | Bin 0 -> 595 bytes .../51/51a7878f6c989394782db73339e90e46 | Bin 0 -> 5952 bytes .../51/51a7878f6c989394782db73339e90e46.info | Bin 0 -> 705 bytes .../52/526f285e8d4fb8140b4cdfeb9102d8cb | Bin 0 -> 13620 bytes .../52/526f285e8d4fb8140b4cdfeb9102d8cb.info | Bin 0 -> 690 bytes .../52/529fde071171dfd4e99d45ca81a3ac7b | Bin 0 -> 8124 bytes .../52/529fde071171dfd4e99d45ca81a3ac7b.info | Bin 0 -> 690 bytes .../52/52c907c81459f324497af504b84fd557 | Bin 0 -> 5532 bytes .../52/52c907c81459f324497af504b84fd557.info | Bin 0 -> 748 bytes .../54/5415c904c4fbc3e498253bc2866b37cd | Bin 0 -> 6188 bytes .../54/5415c904c4fbc3e498253bc2866b37cd.info | Bin 0 -> 658 bytes .../54/543674eec776b1442a192c932e6cd9b3 | Bin 0 -> 7028 bytes .../54/543674eec776b1442a192c932e6cd9b3.info | Bin 0 -> 674 bytes .../54/5440c1153b397e14c9c7b1d6eb83b9f9 | Bin 0 -> 7196 bytes .../54/5440c1153b397e14c9c7b1d6eb83b9f9.info | Bin 0 -> 748 bytes .../54/5469ef0820152a4ae45d400fdc4626e4 | Bin 0 -> 4329 bytes .../54/5469ef0820152a4ae45d400fdc4626e4.info | Bin 0 -> 606 bytes .../54/5472815444de2ce45bf2053a4af04b9d | Bin 0 -> 4317 bytes .../54/5472815444de2ce45bf2053a4af04b9d.info | Bin 0 -> 628 bytes .../54/54d21f6ece3b46479f0c328f8c6007e0 | Bin 0 -> 7336 bytes .../54/54d21f6ece3b46479f0c328f8c6007e0.info | Bin 0 -> 680 bytes .../55/5503f95d174761548a68a901beab13c2 | Bin 0 -> 6552 bytes .../55/5503f95d174761548a68a901beab13c2.info | Bin 0 -> 705 bytes .../55/559482fe33c79e44882d3a6cedc55fb5 | Bin 0 -> 7904 bytes .../55/559482fe33c79e44882d3a6cedc55fb5.info | Bin 0 -> 726 bytes .../55/5598b14661b5f4c43bed757f34b6d172 | Bin 0 -> 5400 bytes .../55/5598b14661b5f4c43bed757f34b6d172.info | Bin 0 -> 617 bytes .../55/55a8539917657b14baf6c6a051a7df22 | Bin 0 -> 7584 bytes .../55/55a8539917657b14baf6c6a051a7df22.info | Bin 0 -> 653 bytes .../56/5653477a5039f674da8f856adcf47172 | Bin 0 -> 9264 bytes .../56/5653477a5039f674da8f856adcf47172.info | Bin 0 -> 668 bytes .../56/56666c5a40171f54783dd416a44f42bf | Bin 0 -> 8088 bytes .../56/56666c5a40171f54783dd416a44f42bf.info | Bin 0 -> 710 bytes .../56/5673d7b11cb9ad04eb2368068b720c17 | Bin 0 -> 4305 bytes .../56/5673d7b11cb9ad04eb2368068b720c17.info | Bin 0 -> 620 bytes .../56/56ba6cb160ebfc042b48224bd1a35614 | Bin 0 -> 13688 bytes .../56/56ba6cb160ebfc042b48224bd1a35614.info | Bin 0 -> 673 bytes .../57/57a39be2178cca94ab21e15c082e3ab6 | Bin 0 -> 10072 bytes .../57/57a39be2178cca94ab21e15c082e3ab6.info | Bin 0 -> 735 bytes .../57/57acdaad593b8d143b8fb5052a09d7d0 | Bin 0 -> 12844 bytes .../57/57acdaad593b8d143b8fb5052a09d7d0.info | Bin 0 -> 695 bytes .../57/57b0c806ba25b48aa8a6ecb3345a4a9b | Bin 0 -> 4864 bytes .../57/57b0c806ba25b48aa8a6ecb3345a4a9b.info | Bin 0 -> 648 bytes .../57/57d2ac5c7d5786e499d4794973fe0d4e | Bin 0 -> 5000 bytes .../57/57d2ac5c7d5786e499d4794973fe0d4e.info | Bin 0 -> 632 bytes .../57/57ff740bce4ab0c498ada374a8ca1dc0 | Bin 0 -> 4317 bytes .../57/57ff740bce4ab0c498ada374a8ca1dc0.info | Bin 0 -> 628 bytes .../58/58004290eb3aab44e9823d1f25c4ed73 | Bin 0 -> 6240 bytes .../58/58004290eb3aab44e9823d1f25c4ed73.info | Bin 0 -> 708 bytes .../58/585b70cb75dd43efbfead809c30a1731 | Bin 0 -> 18052 bytes .../58/585b70cb75dd43efbfead809c30a1731.info | Bin 0 -> 2847 bytes .../58/58628227479c34542ac8c5193ccced84 | Bin 0 -> 4305 bytes .../58/58628227479c34542ac8c5193ccced84.info | Bin 0 -> 617 bytes .../58/5882d0e4313310143acb11d1a66c597f | Bin 0 -> 9264 bytes .../58/5882d0e4313310143acb11d1a66c597f.info | Bin 0 -> 700 bytes .../58/589533fb2413e3e4fba7df13a6a75bf2 | Bin 0 -> 9336 bytes .../58/589533fb2413e3e4fba7df13a6a75bf2.info | Bin 0 -> 687 bytes .../58/58ad09607a0d62d458a78d7174665566 | Bin 0 -> 6232 bytes .../58/58ad09607a0d62d458a78d7174665566.info | Bin 0 -> 736 bytes .../58/58e7d991249847640b1534192721c5ea | Bin 0 -> 5620 bytes .../58/58e7d991249847640b1534192721c5ea.info | Bin 0 -> 673 bytes .../58/58eb69fc39be3d040b984b4498a820bb | Bin 0 -> 39840 bytes .../58/58eb69fc39be3d040b984b4498a820bb.info | Bin 0 -> 677 bytes .../59/592f7288ed0df2c4b884e2cd9baac023 | Bin 0 -> 22340 bytes .../59/592f7288ed0df2c4b884e2cd9baac023.info | Bin 0 -> 671 bytes .../59/59d3f5586b341a74c84c8f72144a4568 | Bin 0 -> 5928 bytes .../59/59d3f5586b341a74c84c8f72144a4568.info | Bin 0 -> 731 bytes .../59/59f8146938fff824cb5fd77236b75775 | Bin 0 -> 6492 bytes .../59/59f8146938fff824cb5fd77236b75775.info | Bin 0 -> 695 bytes .../59/59ff995fabb3bac45afa0f96f333e5dc | Bin 0 -> 9608 bytes .../59/59ff995fabb3bac45afa0f96f333e5dc.info | Bin 0 -> 777 bytes .../5a/5a2e98b03511c6f43bc645238cd40857 | Bin 0 -> 10744 bytes .../5a/5a2e98b03511c6f43bc645238cd40857.info | Bin 0 -> 691 bytes .../5a/5a31542ccf4e8584ca4f60843e9d02d0 | Bin 0 -> 10268 bytes .../5a/5a31542ccf4e8584ca4f60843e9d02d0.info | Bin 0 -> 715 bytes .../5a/5a7f0d89a47f18c41b6ddf60dfae1bde | Bin 0 -> 41424 bytes .../5a/5a7f0d89a47f18c41b6ddf60dfae1bde.info | Bin 0 -> 677 bytes .../5a/5a8c170a1ec28a148ab78df2460a3135 | Bin 0 -> 6760 bytes .../5a/5a8c170a1ec28a148ab78df2460a3135.info | Bin 0 -> 649 bytes .../5a/5aa8f57287fc17149bcd798be813180b | Bin 0 -> 5904 bytes .../5a/5aa8f57287fc17149bcd798be813180b.info | Bin 0 -> 693 bytes .../5a/5af3322745e78aa488fca5a2090f8755 | Bin 0 -> 9772 bytes .../5a/5af3322745e78aa488fca5a2090f8755.info | Bin 0 -> 696 bytes .../5b/5b00473355622524394628f7ec51808d | Bin 0 -> 4321 bytes .../5b/5b00473355622524394628f7ec51808d.info | Bin 0 -> 632 bytes .../5b/5b24618beecc3bf41acadfcf2246d772 | Bin 0 -> 24328 bytes .../5b/5b24618beecc3bf41acadfcf2246d772.info | Bin 0 -> 688 bytes .../5b/5b2eeca598284bd4abb4a15c30df1576 | Bin 0 -> 6036 bytes .../5b/5b2eeca598284bd4abb4a15c30df1576.info | Bin 0 -> 764 bytes .../5b/5b3bd7a976306c9449ba84e0591e8a0f | Bin 0 -> 10348 bytes .../5b/5b3bd7a976306c9449ba84e0591e8a0f.info | Bin 0 -> 687 bytes .../5b/5b3e90046c38f1d4dad2e0d5a79e871c | Bin 0 -> 5584 bytes .../5b/5b3e90046c38f1d4dad2e0d5a79e871c.info | Bin 0 -> 771 bytes .../5b/5b5c6a576605b3c4aab7d27193785f27 | Bin 0 -> 7728 bytes .../5b/5b5c6a576605b3c4aab7d27193785f27.info | Bin 0 -> 674 bytes .../5b/5b6cac4a98010394791c66942a33caf4 | Bin 0 -> 8616 bytes .../5b/5b6cac4a98010394791c66942a33caf4.info | Bin 0 -> 713 bytes .../5b/5b994928117e3db418da69c821da7e19 | Bin 0 -> 5948 bytes .../5b/5b994928117e3db418da69c821da7e19.info | Bin 0 -> 766 bytes .../5b/5ba130fc1db953547a50bcf5c162a3e8 | Bin 0 -> 4321 bytes .../5b/5ba130fc1db953547a50bcf5c162a3e8.info | Bin 0 -> 634 bytes .../5c/5c004b1354944164fb076276c289afc1 | Bin 0 -> 5644 bytes .../5c/5c004b1354944164fb076276c289afc1.info | Bin 0 -> 679 bytes .../5c/5c15bf0966eb95847a4260d830a30d30 | Bin 0 -> 6152 bytes .../5c/5c15bf0966eb95847a4260d830a30d30.info | Bin 0 -> 747 bytes .../5c/5c9c9f62af2efb948a1974650039e2db | Bin 0 -> 7584 bytes .../5c/5c9c9f62af2efb948a1974650039e2db.info | Bin 0 -> 708 bytes .../5d/5d4de3d4682a8d641907cc75e4fb950e | Bin 0 -> 8964 bytes .../5d/5d4de3d4682a8d641907cc75e4fb950e.info | Bin 0 -> 737 bytes .../5d/5d7f0d6acfced954682a89e7002c04d9 | Bin 0 -> 4349 bytes .../5d/5d7f0d6acfced954682a89e7002c04d9.info | Bin 0 -> 661 bytes .../5d/5da62a0c1c5218c4aa16b74546a7822d | Bin 0 -> 4496 bytes .../5d/5da62a0c1c5218c4aa16b74546a7822d.info | Bin 0 -> 615 bytes .../5d/5da77d4d078922b4c8466e9e35fb3f5e | Bin 0 -> 5672 bytes .../5d/5da77d4d078922b4c8466e9e35fb3f5e.info | Bin 0 -> 658 bytes .../5d/5da88f348abcbd94585671a69c672781 | Bin 0 -> 6428 bytes .../5d/5da88f348abcbd94585671a69c672781.info | Bin 0 -> 667 bytes .../5d/5ddd9f7d3cce6724696a33752ab2f5a4 | Bin 0 -> 8840 bytes .../5d/5ddd9f7d3cce6724696a33752ab2f5a4.info | Bin 0 -> 695 bytes .../5d/5df3c21c5237c994db89660fbdfee07d | Bin 0 -> 6464 bytes .../5d/5df3c21c5237c994db89660fbdfee07d.info | Bin 0 -> 732 bytes .../5e/5e726086cd652f82087d59d67d2c24cd | Bin 0 -> 4309 bytes .../5e/5e726086cd652f82087d59d67d2c24cd.info | Bin 0 -> 625 bytes .../5e/5e83f8baac96eaa47bdd9ca781cd2002 | Bin 0 -> 4800 bytes .../5e/5e83f8baac96eaa47bdd9ca781cd2002.info | Bin 0 -> 627 bytes .../5e/5ea6a8a826704f743b3b0ce3e9d3c9a9 | Bin 0 -> 8336 bytes .../5e/5ea6a8a826704f743b3b0ce3e9d3c9a9.info | Bin 0 -> 706 bytes .../5e/5ea9f573d4b800a49b9d83a1f61c0a88 | Bin 0 -> 7184 bytes .../5e/5ea9f573d4b800a49b9d83a1f61c0a88.info | Bin 0 -> 689 bytes .../5e/5ebb87899ca30b743bb4274bc00c02b4 | Bin 0 -> 8540 bytes .../5e/5ebb87899ca30b743bb4274bc00c02b4.info | Bin 0 -> 751 bytes .../5e/5ec95f4d5b2d1f14e9ff8682562553f9 | Bin 0 -> 4325 bytes .../5e/5ec95f4d5b2d1f14e9ff8682562553f9.info | Bin 0 -> 640 bytes .../5e/5ecec8cdc3ff99e4a9c65635d7e6b043 | Bin 0 -> 5492 bytes .../5e/5ecec8cdc3ff99e4a9c65635d7e6b043.info | Bin 0 -> 641 bytes .../5f/5f31f28cc64c91042976555c016ffd5f | Bin 0 -> 7200 bytes .../5f/5f31f28cc64c91042976555c016ffd5f.info | Bin 0 -> 678 bytes .../5f/5f603f10b9ec26841b2ecb6003dc1d0e | Bin 0 -> 4321 bytes .../5f/5f603f10b9ec26841b2ecb6003dc1d0e.info | Bin 0 -> 634 bytes .../5f/5f7201a12d95ffc409449d95f23cf332 | Bin 0 -> 31000 bytes .../5f/5f7201a12d95ffc409449d95f23cf332.info | Bin 0 -> 643 bytes .../5f/5f875a14565308a40a5262d2504da705 | Bin 0 -> 5576 bytes .../5f/5f875a14565308a40a5262d2504da705.info | Bin 0 -> 697 bytes .../5f/5fc988a1d5b04aee9a5222502b201a45 | Bin 0 -> 4313 bytes .../5f/5fc988a1d5b04aee9a5222502b201a45.info | Bin 0 -> 628 bytes .../60/600f4b74746dbf944901257f81a8af6d | Bin 0 -> 5468 bytes .../60/600f4b74746dbf944901257f81a8af6d.info | Bin 0 -> 748 bytes .../60/6023f2b823fc19b4e4a90875281ff117 | Bin 0 -> 4321 bytes .../60/6023f2b823fc19b4e4a90875281ff117.info | Bin 0 -> 599 bytes .../60/6055be8ebefd69e48b49212b09b47b2f | Bin 0 -> 4704 bytes .../60/6055be8ebefd69e48b49212b09b47b2f.info | Bin 0 -> 685 bytes .../61/61a20120cddc53849bbc10fc805ffe3e | Bin 0 -> 5628 bytes .../61/61a20120cddc53849bbc10fc805ffe3e.info | Bin 0 -> 643 bytes .../61/61d491d99e9292c4a81d7d01a74781ea | Bin 0 -> 15212 bytes .../61/61d491d99e9292c4a81d7d01a74781ea.info | Bin 0 -> 646 bytes .../61/61e236e8570a95e4eb754fb291e102e0 | Bin 0 -> 4349 bytes .../61/61e236e8570a95e4eb754fb291e102e0.info | Bin 0 -> 661 bytes .../62/621a76c0c3927aa45aba7d2ad0c8e1c8 | Bin 0 -> 8316 bytes .../62/621a76c0c3927aa45aba7d2ad0c8e1c8.info | Bin 0 -> 691 bytes .../62/621fd19bcb071b64aa1d68f0271aa780 | Bin 0 -> 5828 bytes .../62/621fd19bcb071b64aa1d68f0271aa780.info | Bin 0 -> 736 bytes .../62/623c79a1e113b4941afdbfc88d19e8fd | Bin 0 -> 17980 bytes .../62/623c79a1e113b4941afdbfc88d19e8fd.info | Bin 0 -> 684 bytes .../63/63118a0c9ee42ac46b7f30e793177a76 | Bin 0 -> 32496 bytes .../63/63118a0c9ee42ac46b7f30e793177a76.info | Bin 0 -> 679 bytes .../63/63572993f2104574099a48392460b211 | Bin 0 -> 5800 bytes .../63/63572993f2104574099a48392460b211.info | Bin 0 -> 740 bytes .../63/6366ee97f6b541449155028b9487355a | Bin 0 -> 10988 bytes .../63/6366ee97f6b541449155028b9487355a.info | Bin 0 -> 683 bytes .../63/63f2caa33e79582448112b2e286d576d | Bin 0 -> 9532 bytes .../63/63f2caa33e79582448112b2e286d576d.info | Bin 0 -> 696 bytes .../64/640125adae259fe47a36be84e510a46e | Bin 0 -> 5744 bytes .../64/640125adae259fe47a36be84e510a46e.info | Bin 0 -> 680 bytes .../64/645165c8169474bfbbeb8fb0bcfd26f5 | Bin 0 -> 4476 bytes .../64/645165c8169474bfbbeb8fb0bcfd26f5.info | Bin 0 -> 691 bytes .../64/64689f8b25eadac4da519e96f514b653 | Bin 0 -> 5488 bytes .../64/64689f8b25eadac4da519e96f514b653.info | Bin 0 -> 701 bytes .../64/647e1bbd3809b30459d946b4a1ddf22b | Bin 0 -> 6348 bytes .../64/647e1bbd3809b30459d946b4a1ddf22b.info | Bin 0 -> 677 bytes .../64/64b9fad609434c489c32b1cdf2004a1c | Bin 0 -> 18048 bytes .../64/64b9fad609434c489c32b1cdf2004a1c.info | Bin 0 -> 2839 bytes .../65/6546d7765b4165b40850b3667f981c26 | Bin 0 -> 4624 bytes .../65/6546d7765b4165b40850b3667f981c26.info | Bin 0 -> 698 bytes .../65/656e461844099ae43a609ff6109b0877 | Bin 0 -> 4720 bytes .../65/656e461844099ae43a609ff6109b0877.info | Bin 0 -> 708 bytes .../65/65701ebe8bada6b4785e9c7afe7f5bee | Bin 0 -> 5948 bytes .../65/65701ebe8bada6b4785e9c7afe7f5bee.info | Bin 0 -> 766 bytes .../65/658c1fb149e7498aa072b0c0f3bf13f0 | Bin 0 -> 11800 bytes .../65/658c1fb149e7498aa072b0c0f3bf13f0.info | Bin 0 -> 677 bytes .../65/65b045927b3948f43afb31234936c6aa | Bin 0 -> 14784 bytes .../65/65b045927b3948f43afb31234936c6aa.info | Bin 0 -> 662 bytes .../65/65f3a4c67e4927a478b7036bae1da0e3 | Bin 0 -> 33132 bytes .../65/65f3a4c67e4927a478b7036bae1da0e3.info | Bin 0 -> 669 bytes .../65/65fb6da362a78334ab360a125cfafdaf | Bin 0 -> 7876 bytes .../65/65fb6da362a78334ab360a125cfafdaf.info | Bin 0 -> 748 bytes .../66/667a99762bdf5484fbaa02573fd396e2 | Bin 0 -> 7488 bytes .../66/667a99762bdf5484fbaa02573fd396e2.info | Bin 0 -> 636 bytes .../66/667c6ad86a0b7a548aaa5c287f2c2861 | Bin 0 -> 7760 bytes .../66/667c6ad86a0b7a548aaa5c287f2c2861.info | Bin 0 -> 742 bytes .../66/66b2b8fd1d9b4bc4c96b07335ad822f3 | Bin 0 -> 9888 bytes .../66/66b2b8fd1d9b4bc4c96b07335ad822f3.info | Bin 0 -> 676 bytes .../66/66c95bb3c74257f41bae2622511dc02d | Bin 0 -> 4952 bytes .../66/66c95bb3c74257f41bae2622511dc02d.info | Bin 0 -> 645 bytes .../67/6773203120b27984d9a8572fa3564f03 | Bin 0 -> 6760 bytes .../67/6773203120b27984d9a8572fa3564f03.info | Bin 0 -> 787 bytes .../67/67db9e8f0e2ae9c40bc1e2b64352a6b4 | Bin 0 -> 31944 bytes .../67/67db9e8f0e2ae9c40bc1e2b64352a6b4.info | Bin 0 -> 649 bytes .../67/67e3583b91179094094c6a188b232262 | Bin 0 -> 6976 bytes .../67/67e3583b91179094094c6a188b232262.info | Bin 0 -> 663 bytes .../67/67e9c6cf60c57a54f9f4db1bc33fd2e3 | Bin 0 -> 4321 bytes .../67/67e9c6cf60c57a54f9f4db1bc33fd2e3.info | Bin 0 -> 633 bytes .../67/67ee43b2f6148de40861b289b0e00591 | Bin 0 -> 6408 bytes .../67/67ee43b2f6148de40861b289b0e00591.info | Bin 0 -> 699 bytes .../68/685f63932bebd0c4db02ee14845191e2 | Bin 0 -> 8208 bytes .../68/685f63932bebd0c4db02ee14845191e2.info | Bin 0 -> 666 bytes .../68/68993ba529ae04440916cb7c23bf3279 | Bin 0 -> 8176 bytes .../68/68993ba529ae04440916cb7c23bf3279.info | Bin 0 -> 713 bytes .../68/68a48d1900320ed458e118415857faf6 | Bin 0 -> 5636 bytes .../68/68a48d1900320ed458e118415857faf6.info | Bin 0 -> 707 bytes .../68/68cb547af0187634aad591a09c01cd5b | Bin 0 -> 4353 bytes .../68/68cb547af0187634aad591a09c01cd5b.info | Bin 0 -> 668 bytes .../68/68e5dc8bfd5d72647a93b7f2e1da831a | Bin 0 -> 5972 bytes .../68/68e5dc8bfd5d72647a93b7f2e1da831a.info | Bin 0 -> 735 bytes .../68/68eedd4e5b33b37429c02c4add0036fe | Bin 0 -> 42144 bytes .../68/68eedd4e5b33b37429c02c4add0036fe.info | Bin 0 -> 688 bytes .../69/6901fab4d5157ac48b9f263730387c03 | Bin 0 -> 14520 bytes .../69/6901fab4d5157ac48b9f263730387c03.info | Bin 0 -> 689 bytes .../69/691475c57a824010be0c6f474caeb7e1 | Bin 0 -> 18036 bytes .../69/691475c57a824010be0c6f474caeb7e1.info | Bin 0 -> 2828 bytes .../69/691db8cb70c4426a8ae718465c21345f | Bin 0 -> 13404 bytes .../69/691db8cb70c4426a8ae718465c21345f.info | Bin 0 -> 680 bytes .../69/6965880f76f40194593cb53a88f74005 | Bin 0 -> 9036 bytes .../69/6965880f76f40194593cb53a88f74005.info | Bin 0 -> 767 bytes .../69/698b660e9477f4f16abad03ec00ce38c | Bin 0 -> 10868 bytes .../69/698b660e9477f4f16abad03ec00ce38c.info | Bin 0 -> 723 bytes .../69/69ae55f76840b2849ba56cfb53a17df0 | Bin 0 -> 11748 bytes .../69/69ae55f76840b2849ba56cfb53a17df0.info | Bin 0 -> 676 bytes .../69/69e3979b7029e8a4da2d96b714ba5c3a | Bin 0 -> 8928 bytes .../69/69e3979b7029e8a4da2d96b714ba5c3a.info | Bin 0 -> 676 bytes .../6a/6a4f0c91a28ece04198b200dd55145d0 | Bin 0 -> 6260 bytes .../6a/6a4f0c91a28ece04198b200dd55145d0.info | Bin 0 -> 658 bytes .../6a/6a981cd1456bec84b86e1c66773f57f5 | Bin 0 -> 7488 bytes .../6a/6a981cd1456bec84b86e1c66773f57f5.info | Bin 0 -> 688 bytes .../6a/6ace62d30f494c948b71d5594afce11d | Bin 0 -> 18052 bytes .../6a/6ace62d30f494c948b71d5594afce11d.info | Bin 0 -> 2887 bytes .../6a/6ad632cbcc87f634d9b86006cdffdaf5 | Bin 0 -> 9256 bytes .../6a/6ad632cbcc87f634d9b86006cdffdaf5.info | Bin 0 -> 701 bytes .../6a/6afb166a156df2d20433d981f4bb2832 | Bin 0 -> 4740 bytes .../6a/6afb166a156df2d20433d981f4bb2832.info | Bin 0 -> 652 bytes .../6b/6b01141ed8f74d198965c86f25eb7040 | Bin 0 -> 8396 bytes .../6b/6b01141ed8f74d198965c86f25eb7040.info | Bin 0 -> 704 bytes .../6b/6b1ae1e78552c459d9ce27048ff51c7f | Bin 0 -> 4321 bytes .../6b/6b1ae1e78552c459d9ce27048ff51c7f.info | Bin 0 -> 636 bytes .../6b/6b259c4003a802847b9ada90744e34c5 | Bin 0 -> 9292 bytes .../6b/6b259c4003a802847b9ada90744e34c5.info | Bin 0 -> 704 bytes .../6b/6b32b6725087a0d4bb1670818d26996e | Bin 0 -> 11844 bytes .../6b/6b32b6725087a0d4bb1670818d26996e.info | Bin 0 -> 715 bytes .../6b/6b72875690e0f7343911e06af3145bd5 | Bin 0 -> 4353 bytes .../6b/6b72875690e0f7343911e06af3145bd5.info | Bin 0 -> 664 bytes .../6b/6ba7805325c426c43b8e85b5be4eae36 | Bin 0 -> 6536 bytes .../6b/6ba7805325c426c43b8e85b5be4eae36.info | Bin 0 -> 699 bytes .../6b/6bfec54ce89b0b642a65d44def023b99 | Bin 0 -> 5616 bytes .../6b/6bfec54ce89b0b642a65d44def023b99.info | Bin 0 -> 665 bytes .../6c/6c3d52cc5c46d7946a920e21901ff38e | Bin 0 -> 6096 bytes .../6c/6c3d52cc5c46d7946a920e21901ff38e.info | Bin 0 -> 701 bytes .../6c/6c61ba0c209bcc74f83e3650039ebdf9 | Bin 0 -> 4317 bytes .../6c/6c61ba0c209bcc74f83e3650039ebdf9.info | Bin 0 -> 631 bytes .../6c/6ca745fb561cbf640b6e603f95662fa0 | Bin 0 -> 7184 bytes .../6c/6ca745fb561cbf640b6e603f95662fa0.info | Bin 0 -> 711 bytes .../6c/6cccd50ebf7384242bda4d7bcb282ebf | Bin 0 -> 8256 bytes .../6c/6cccd50ebf7384242bda4d7bcb282ebf.info | Bin 0 -> 757 bytes .../6d/6d16f2e78a356d34c9a32108929de932 | Bin 0 -> 6208 bytes .../6d/6d16f2e78a356d34c9a32108929de932.info | Bin 0 -> 692 bytes .../6d/6d437b997e074079b4b2f6e395394f4b | Bin 0 -> 8124 bytes .../6d/6d437b997e074079b4b2f6e395394f4b.info | Bin 0 -> 688 bytes .../6d/6d468ee3657be7a43a2ef2178ec14239 | Bin 0 -> 6108 bytes .../6d/6d468ee3657be7a43a2ef2178ec14239.info | Bin 0 -> 748 bytes .../6d/6d56244f8c39a851975d3c0bd432c66f | Bin 0 -> 4676 bytes .../6d/6d56244f8c39a851975d3c0bd432c66f.info | Bin 0 -> 651 bytes .../6d/6d5833966abeadb429de247e4316eef4 | Bin 0 -> 5464 bytes .../6d/6d5833966abeadb429de247e4316eef4.info | Bin 0 -> 684 bytes .../6d/6d6f82a762acb4417b895d3babc790f9 | Bin 0 -> 4660 bytes .../6d/6d6f82a762acb4417b895d3babc790f9.info | Bin 0 -> 654 bytes .../6d/6d768b1bb52e2c64ba818933dbdd8452 | Bin 0 -> 6944 bytes .../6d/6d768b1bb52e2c64ba818933dbdd8452.info | Bin 0 -> 684 bytes .../6d/6d9df2bc198c417db00037803568139c | Bin 0 -> 28812 bytes .../6d/6d9df2bc198c417db00037803568139c.info | Bin 0 -> 686 bytes .../6d/6dbcf248c987476181a37f01a1814975 | Bin 0 -> 7204 bytes .../6d/6dbcf248c987476181a37f01a1814975.info | Bin 0 -> 676 bytes .../6d/6de79ae237e51554da96fd28f68b66a6 | Bin 0 -> 5872 bytes .../6d/6de79ae237e51554da96fd28f68b66a6.info | Bin 0 -> 711 bytes .../6e/6e0e62db88935c74288c97c907243bd0 | Bin 0 -> 10504 bytes .../6e/6e0e62db88935c74288c97c907243bd0.info | Bin 0 -> 707 bytes .../6e/6e1c8b97ec8aa0464e92506ffe099558 | Bin 0 -> 4325 bytes .../6e/6e1c8b97ec8aa0464e92506ffe099558.info | Bin 0 -> 600 bytes .../6e/6e7c80eefe2def5459e0b486b3ab96e2 | Bin 0 -> 5744 bytes .../6e/6e7c80eefe2def5459e0b486b3ab96e2.info | Bin 0 -> 681 bytes .../6e/6ecb9e17e44feb84cb80451fa27b09fe | Bin 0 -> 4784 bytes .../6e/6ecb9e17e44feb84cb80451fa27b09fe.info | Bin 0 -> 616 bytes .../6f/6f1c7ebc8ac78cb951be24c238cbd3ba | Bin 0 -> 4353 bytes .../6f/6f1c7ebc8ac78cb951be24c238cbd3ba.info | Bin 0 -> 615 bytes .../6f/6f25fb081e85cb743b272c2f7fbc2f6b | Bin 0 -> 14144 bytes .../6f/6f25fb081e85cb743b272c2f7fbc2f6b.info | Bin 0 -> 714 bytes .../6f/6f515f8ecd3b6a546b90abaae2553f99 | Bin 0 -> 7736 bytes .../6f/6f515f8ecd3b6a546b90abaae2553f99.info | Bin 0 -> 694 bytes .../6f/6f516f1ec21a54a59a92bf99db2d9535 | Bin 0 -> 9824 bytes .../6f/6f516f1ec21a54a59a92bf99db2d9535.info | Bin 0 -> 691 bytes .../6f/6f72aa6eab9392548b9e9d92eb6b2ef8 | Bin 0 -> 7168 bytes .../6f/6f72aa6eab9392548b9e9d92eb6b2ef8.info | Bin 0 -> 695 bytes .../6f/6f768c3714a34a549960ea903fbadcc2 | Bin 0 -> 4349 bytes .../6f/6f768c3714a34a549960ea903fbadcc2.info | Bin 0 -> 8864 bytes .../6f/6fdea2af3daa40fe8f88e5e9cfc17abb | Bin 0 -> 7704 bytes .../6f/6fdea2af3daa40fe8f88e5e9cfc17abb.info | Bin 0 -> 709 bytes .../70/7043e9a330ac2d84a80a965ada4589ad | Bin 0 -> 5544 bytes .../70/7043e9a330ac2d84a80a965ada4589ad.info | Bin 0 -> 704 bytes .../70/7065397ff8184621aa3ca4f854491259 | Bin 0 -> 19464 bytes .../70/7065397ff8184621aa3ca4f854491259.info | Bin 0 -> 710 bytes .../70/70a190a1b304d1e43995af35d09231d6 | Bin 0 -> 8204 bytes .../70/70a190a1b304d1e43995af35d09231d6.info | Bin 0 -> 677 bytes .../70/70b265ed18dc14041bedc0263d4578ef | Bin 0 -> 9152 bytes .../70/70b265ed18dc14041bedc0263d4578ef.info | Bin 0 -> 717 bytes .../70/70d4d75a2877243758b0750cbc75b6eb | Bin 0 -> 10076 bytes .../70/70d4d75a2877243758b0750cbc75b6eb.info | Bin 0 -> 773 bytes .../70/70eae1897c9d308448eb3bb0b5be9f58 | Bin 0 -> 9284 bytes .../70/70eae1897c9d308448eb3bb0b5be9f58.info | Bin 0 -> 690 bytes .../70/70f955bbb437a494888ef54d97abb474 | Bin 0 -> 5720 bytes .../70/70f955bbb437a494888ef54d97abb474.info | Bin 0 -> 689 bytes .../71/7116e04a377b195458798657c617e324 | Bin 0 -> 14420 bytes .../71/7116e04a377b195458798657c617e324.info | Bin 0 -> 686 bytes .../71/718966f960cb50643986195e5fe953ca | Bin 0 -> 8640 bytes .../71/718966f960cb50643986195e5fe953ca.info | Bin 0 -> 689 bytes .../71/71bb46b59a9a7a346bbab1e185c723df | Bin 0 -> 5864 bytes .../71/71bb46b59a9a7a346bbab1e185c723df.info | Bin 0 -> 654 bytes .../71/71c1514a6bd24e1e882cebbe1904ce04 | Bin 0 -> 83036 bytes .../71/71c1514a6bd24e1e882cebbe1904ce04.info | Bin 0 -> 790 bytes .../72/7241c7dc25374fc1a6ab3ef9da79c363 | Bin 0 -> 7516 bytes .../72/7241c7dc25374fc1a6ab3ef9da79c363.info | Bin 0 -> 701 bytes .../72/728d2c19676ea3743aaa087aa28c4a16 | Bin 0 -> 7048 bytes .../72/728d2c19676ea3743aaa087aa28c4a16.info | Bin 0 -> 692 bytes .../73/7341c0cd0aad4994e8fa461cb443aa7d | Bin 0 -> 9780 bytes .../73/7341c0cd0aad4994e8fa461cb443aa7d.info | Bin 0 -> 714 bytes .../73/735d54f21944f834f931716514c87a84 | Bin 0 -> 7500 bytes .../73/735d54f21944f834f931716514c87a84.info | Bin 0 -> 789 bytes .../73/73deb9b8722aa284eab27c4dc90956c6 | Bin 0 -> 6072 bytes .../73/73deb9b8722aa284eab27c4dc90956c6.info | Bin 0 -> 734 bytes .../74/740b3785866edda4b8d1e1a05570a5f8 | Bin 0 -> 5608 bytes .../74/740b3785866edda4b8d1e1a05570a5f8.info | Bin 0 -> 734 bytes .../74/742654cad2425334696ba6ed4495cfef | Bin 0 -> 4301 bytes .../74/742654cad2425334696ba6ed4495cfef.info | Bin 0 -> 611 bytes .../74/74374298effb78d47b85450f7f724cef | Bin 0 -> 8572 bytes .../74/74374298effb78d47b85450f7f724cef.info | Bin 0 -> 710 bytes .../74/743879b4db4bc1a4b829aae4386f4acf | Bin 0 -> 5624 bytes .../74/743879b4db4bc1a4b829aae4386f4acf.info | Bin 0 -> 680 bytes .../74/7496af95dfe67cf429ac65edaaf99106 | Bin 0 -> 13916 bytes .../74/7496af95dfe67cf429ac65edaaf99106.info | Bin 0 -> 706 bytes .../75/750aad009559b814dbc27001341fc1c3 | Bin 0 -> 6712 bytes .../75/750aad009559b814dbc27001341fc1c3.info | Bin 0 -> 724 bytes .../75/75df57ccb1e44c64085399277405e1ca | Bin 0 -> 13916 bytes .../75/75df57ccb1e44c64085399277405e1ca.info | Bin 0 -> 703 bytes .../75/75e7d7a9a57458841a85fe42d9c9141f | Bin 0 -> 10416 bytes .../75/75e7d7a9a57458841a85fe42d9c9141f.info | Bin 0 -> 751 bytes .../76/7602252bdb82b8d45ae3483c3a00d3e1 | Bin 0 -> 4357 bytes .../76/7602252bdb82b8d45ae3483c3a00d3e1.info | Bin 0 -> 666 bytes .../76/7693972390a4ed841a986c0c452c1058 | Bin 0 -> 9328 bytes .../76/7693972390a4ed841a986c0c452c1058.info | Bin 0 -> 682 bytes .../76/769f6f5dd7c8f2d4c9ab1caba0bd2628 | Bin 0 -> 10048 bytes .../76/769f6f5dd7c8f2d4c9ab1caba0bd2628.info | Bin 0 -> 707 bytes .../76/76b6bf32a6fcf934aab8c529bddccc81 | Bin 0 -> 5620 bytes .../76/76b6bf32a6fcf934aab8c529bddccc81.info | Bin 0 -> 686 bytes .../76/76c392e42b5098c458856cdf6ecaaaa1 | Bin 0 -> 19568 bytes .../76/76c392e42b5098c458856cdf6ecaaaa1.info | Bin 0 -> 678 bytes .../76/76c82729ad712f14bae1a8a279c52ac3 | Bin 0 -> 5784 bytes .../76/76c82729ad712f14bae1a8a279c52ac3.info | Bin 0 -> 694 bytes .../77/77476292f9fa4905a787e6417853846b | Bin 0 -> 12128 bytes .../77/77476292f9fa4905a787e6417853846b.info | Bin 0 -> 695 bytes .../77/7748a1d3701ac824ea7f366ba0388f5d | Bin 0 -> 6232 bytes .../77/7748a1d3701ac824ea7f366ba0388f5d.info | Bin 0 -> 669 bytes .../77/77f432980bb30084299a138e15c6f571 | Bin 0 -> 5552 bytes .../77/77f432980bb30084299a138e15c6f571.info | Bin 0 -> 678 bytes .../78/782c49e6e68074dc7ba12c95537825ce | Bin 0 -> 5288 bytes .../78/782c49e6e68074dc7ba12c95537825ce.info | Bin 0 -> 624 bytes .../78/782de34c17796430ba8d0ceddb60944e | Bin 0 -> 4632 bytes .../78/782de34c17796430ba8d0ceddb60944e.info | Bin 0 -> 707 bytes .../78/7883cd788d83a71478342eef943e8150 | Bin 0 -> 10068 bytes .../78/7883cd788d83a71478342eef943e8150.info | Bin 0 -> 691 bytes .../79/794f3951c48395848920fdb593a2ae38 | Bin 0 -> 10940 bytes .../79/794f3951c48395848920fdb593a2ae38.info | Bin 0 -> 698 bytes .../79/798968d841703b54bb9d08b1da6bc52f | Bin 0 -> 6692 bytes .../79/798968d841703b54bb9d08b1da6bc52f.info | Bin 0 -> 665 bytes .../79/79ced2556f0af814a840b86232613ff1 | Bin 0 -> 8928 bytes .../79/79ced2556f0af814a840b86232613ff1.info | Bin 0 -> 741 bytes .../79/79ff392d1bde4ad78a3836a4a480392d | Bin 0 -> 5612 bytes .../79/79ff392d1bde4ad78a3836a4a480392d.info | Bin 0 -> 683 bytes .../7a/7a24ec4b5c3e08e47bf50c8298c1fe0d | Bin 0 -> 4317 bytes .../7a/7a24ec4b5c3e08e47bf50c8298c1fe0d.info | Bin 0 -> 634 bytes .../7a/7a892c920c8ad2848b469ec9579c5219 | Bin 0 -> 4345 bytes .../7a/7a892c920c8ad2848b469ec9579c5219.info | Bin 0 -> 657 bytes .../7a/7a98125502f715b4b83cfb77b434e436 | Bin 0 -> 53572 bytes .../7a/7a98125502f715b4b83cfb77b434e436.info | Bin 0 -> 661 bytes .../7a/7af6ac3e6b51b8d4aab04adc85b8de2f | Bin 0 -> 5936 bytes .../7a/7af6ac3e6b51b8d4aab04adc85b8de2f.info | Bin 0 -> 760 bytes .../7b/7b743370ac3e4ec2a1668f5455a8ef8a | Bin 0 -> 48420 bytes .../7b/7b743370ac3e4ec2a1668f5455a8ef8a.info | Bin 0 -> 785 bytes .../7b/7bd96d76711152648a736c4d28d865f2 | Bin 0 -> 13720 bytes .../7b/7bd96d76711152648a736c4d28d865f2.info | Bin 0 -> 670 bytes .../7b/7be84a49bb2cd7e4a9ed097ba22794d0 | Bin 0 -> 11540 bytes .../7b/7be84a49bb2cd7e4a9ed097ba22794d0.info | Bin 0 -> 663 bytes .../7c/7c04f0dfa9243c04681a55d90d3ff3fc | Bin 0 -> 4624 bytes .../7c/7c04f0dfa9243c04681a55d90d3ff3fc.info | Bin 0 -> 693 bytes .../7c/7c6295db74da28645bf49db58b7c9c65 | Bin 0 -> 4341 bytes .../7c/7c6295db74da28645bf49db58b7c9c65.info | Bin 0 -> 649 bytes .../7c/7cfaad4e53832d94c9421d2dd1ad82f7 | Bin 0 -> 7952 bytes .../7c/7cfaad4e53832d94c9421d2dd1ad82f7.info | Bin 0 -> 684 bytes .../7d/7d36034e63ad8254b9b2f55280fcc040 | Bin 0 -> 8288 bytes .../7d/7d36034e63ad8254b9b2f55280fcc040.info | Bin 0 -> 725 bytes .../7d/7d3aa106cfe752241997b3759bf80163 | Bin 0 -> 11724 bytes .../7d/7d3aa106cfe752241997b3759bf80163.info | Bin 0 -> 724 bytes .../7d/7d7bd4bcc815cfb44b9990c29dabdb9f | Bin 0 -> 6640 bytes .../7d/7d7bd4bcc815cfb44b9990c29dabdb9f.info | Bin 0 -> 655 bytes .../7e/7e609b27ad2caa14c83dd9951b6c13c6 | Bin 0 -> 4325 bytes .../7e/7e609b27ad2caa14c83dd9951b6c13c6.info | Bin 0 -> 638 bytes .../7e/7ef6801a8b664544aa9f2ab1bc1f8b60 | Bin 0 -> 5688 bytes .../7e/7ef6801a8b664544aa9f2ab1bc1f8b60.info | Bin 0 -> 771 bytes .../7e/7ef8348b8ea834d7e1bc214b07f7fb87 | Bin 0 -> 4668 bytes .../7e/7ef8348b8ea834d7e1bc214b07f7fb87.info | Bin 0 -> 653 bytes .../7f/7f27709c942d91541be1fd6aa5cb3d78 | Bin 0 -> 4317 bytes .../7f/7f27709c942d91541be1fd6aa5cb3d78.info | Bin 0 -> 629 bytes .../7f/7f65567c9026afb4db5de3355accc636 | Bin 0 -> 7036 bytes .../7f/7f65567c9026afb4db5de3355accc636.info | Bin 0 -> 761 bytes .../7f/7fc2147e42d71644aad0eaf9a3526249 | Bin 0 -> 6452 bytes .../7f/7fc2147e42d71644aad0eaf9a3526249.info | Bin 0 -> 693 bytes .../80/803abab0f7e17044db56f8760186dbd1 | Bin 0 -> 5864 bytes .../80/803abab0f7e17044db56f8760186dbd1.info | Bin 0 -> 694 bytes .../80/806de5a9211448c8b65c8435ebb48dd4 | Bin 0 -> 7696 bytes .../80/806de5a9211448c8b65c8435ebb48dd4.info | Bin 0 -> 701 bytes .../80/80ae83fdf1fb2c649bccb8c293b94556 | Bin 0 -> 8764 bytes .../80/80ae83fdf1fb2c649bccb8c293b94556.info | Bin 0 -> 703 bytes .../80/80b10e1c58509a449a3c5aecc07d4455 | Bin 0 -> 17864 bytes .../80/80b10e1c58509a449a3c5aecc07d4455.info | Bin 0 -> 681 bytes .../80/80beef77cb19e713c7c2d481b65ed485 | Bin 0 -> 4776 bytes .../80/80beef77cb19e713c7c2d481b65ed485.info | Bin 0 -> 657 bytes .../81/811d999912a5f3f459a637aad029fbc8 | Bin 0 -> 7412 bytes .../81/811d999912a5f3f459a637aad029fbc8.info | Bin 0 -> 708 bytes .../81/812aaaefaab404448a3e4db49dfa5206 | Bin 0 -> 7356 bytes .../81/812aaaefaab404448a3e4db49dfa5206.info | Bin 0 -> 675 bytes .../81/8143d3a8390f2c64685e3bc272bd9e90 | Bin 0 -> 4832 bytes .../81/8143d3a8390f2c64685e3bc272bd9e90.info | Bin 0 -> 645 bytes .../81/81a142c61a4e14d46bb21b02548ad24d | Bin 0 -> 9276 bytes .../81/81a142c61a4e14d46bb21b02548ad24d.info | Bin 0 -> 683 bytes .../81/81ed8c76d2bc4a4c95d092c98af4e58f | Bin 0 -> 18036 bytes .../81/81ed8c76d2bc4a4c95d092c98af4e58f.info | Bin 0 -> 2875 bytes .../82/821f5482c5a3f4389885f4432433f56f | Bin 0 -> 5768 bytes .../82/821f5482c5a3f4389885f4432433f56f.info | Bin 0 -> 703 bytes .../82/826b6becaef90fb458eedebe4c2f3664 | Bin 0 -> 7120 bytes .../82/826b6becaef90fb458eedebe4c2f3664.info | Bin 0 -> 776 bytes .../82/828075bc53f2de84982a943870529b7b | Bin 0 -> 6404 bytes .../82/828075bc53f2de84982a943870529b7b.info | Bin 0 -> 643 bytes .../82/82a8ce43816925d4b971951094cb755c | Bin 0 -> 21408 bytes .../82/82a8ce43816925d4b971951094cb755c.info | Bin 0 -> 689 bytes .../82/82bf3f737dec0be43a60891958a8da87 | Bin 0 -> 15404 bytes .../82/82bf3f737dec0be43a60891958a8da87.info | Bin 0 -> 677 bytes .../82/82cd92ffc29383742932b27ca414c80f | Bin 0 -> 5868 bytes .../82/82cd92ffc29383742932b27ca414c80f.info | Bin 0 -> 682 bytes .../83/83088ba2132cbc940b7ca0c679a02b0d | Bin 0 -> 12972 bytes .../83/83088ba2132cbc940b7ca0c679a02b0d.info | Bin 0 -> 646 bytes .../83/83127dd120c01de45954b99cc4d669a5 | Bin 0 -> 7144 bytes .../83/83127dd120c01de45954b99cc4d669a5.info | Bin 0 -> 639 bytes .../83/8313ea704470a264295ec9e09aec6ebc | Bin 0 -> 4313 bytes .../83/8313ea704470a264295ec9e09aec6ebc.info | Bin 0 -> 627 bytes .../83/833143c443f979e44ae0b8ed899e3b59 | Bin 0 -> 6748 bytes .../83/833143c443f979e44ae0b8ed899e3b59.info | Bin 0 -> 689 bytes .../83/8349e42a2b30c7a4abd8678c203428ba | Bin 0 -> 6340 bytes .../83/8349e42a2b30c7a4abd8678c203428ba.info | Bin 0 -> 758 bytes .../83/83eda34b7da01e04aa894f268158b0c0 | Bin 0 -> 5932 bytes .../83/83eda34b7da01e04aa894f268158b0c0.info | Bin 0 -> 685 bytes .../84/8413ca0e506d42a1a4bd9769f204ad16 | Bin 0 -> 20096 bytes .../84/8413ca0e506d42a1a4bd9769f204ad16.info | Bin 0 -> 692 bytes .../84/844873d1afe1c3142ab922324950e1dd | Bin 0 -> 5744 bytes .../84/844873d1afe1c3142ab922324950e1dd.info | Bin 0 -> 697 bytes .../84/84a92b25f83d49b9bc132d206b370281 | Bin 0 -> 25056 bytes .../84/84a92b25f83d49b9bc132d206b370281.info | Bin 0 -> 798 bytes .../84/84b5362754a9d934ba259398b757d0be | Bin 0 -> 10352 bytes .../84/84b5362754a9d934ba259398b757d0be.info | Bin 0 -> 649 bytes .../84/84d86c98104d94063ad70bc591530f65 | Bin 0 -> 19252 bytes .../84/84d86c98104d94063ad70bc591530f65.info | Bin 0 -> 714 bytes .../85/850af9f3bf6d14143baf2ecfbf25db52 | Bin 0 -> 4313 bytes .../85/850af9f3bf6d14143baf2ecfbf25db52.info | Bin 0 -> 625 bytes .../85/850c54ee0b9e1aa740b1c67792eb1f26 | Bin 0 -> 4341 bytes .../85/850c54ee0b9e1aa740b1c67792eb1f26.info | Bin 0 -> 608 bytes .../85/853edc343b78a7c4c81cbb3851d48c0a | Bin 0 -> 4301 bytes .../85/853edc343b78a7c4c81cbb3851d48c0a.info | Bin 0 -> 610 bytes .../85/8573c56c34e616248a3881b2c56280ef | Bin 0 -> 7344 bytes .../85/8573c56c34e616248a3881b2c56280ef.info | Bin 0 -> 723 bytes .../85/85dd7af03f02aea4aae13a3945e3b313 | Bin 0 -> 6004 bytes .../85/85dd7af03f02aea4aae13a3945e3b313.info | Bin 0 -> 673 bytes .../85/85f3c3a3c2623cd4da1661b0479e2ef2 | Bin 0 -> 6416 bytes .../85/85f3c3a3c2623cd4da1661b0479e2ef2.info | Bin 0 -> 671 bytes .../86/8620e97e7e9859049934889a52248435 | Bin 0 -> 4313 bytes .../86/8620e97e7e9859049934889a52248435.info | Bin 0 -> 624 bytes .../86/8645aa9c3c74fb34ba9499e14fb332b5 | Bin 0 -> 5504 bytes .../86/8645aa9c3c74fb34ba9499e14fb332b5.info | Bin 0 -> 621 bytes .../86/86710e43de46f6f4bac7c8e50813a599 | Bin 0 -> 12264 bytes .../86/86710e43de46f6f4bac7c8e50813a599.info | Bin 0 -> 689 bytes .../86/86cacab070a0a46e99aedb596a32c4fe | Bin 0 -> 4333 bytes .../86/86cacab070a0a46e99aedb596a32c4fe.info | Bin 0 -> 643 bytes .../87/871f8edd56e84b8fb295b10cc3c78f36 | Bin 0 -> 9208 bytes .../87/871f8edd56e84b8fb295b10cc3c78f36.info | Bin 0 -> 659 bytes .../87/872e4b92d663b05489fe34966680c29d | Bin 0 -> 6656 bytes .../87/872e4b92d663b05489fe34966680c29d.info | Bin 0 -> 654 bytes .../87/87357ff0dec4ef348a295235835c6ee4 | Bin 0 -> 5560 bytes .../87/87357ff0dec4ef348a295235835c6ee4.info | Bin 0 -> 738 bytes .../87/874c0713cdc44f549b0161750b48d2c2 | Bin 0 -> 5584 bytes .../87/874c0713cdc44f549b0161750b48d2c2.info | Bin 0 -> 742 bytes .../87/874e40a588dbb1e48bc128d686337d4e | Bin 0 -> 8480 bytes .../87/874e40a588dbb1e48bc128d686337d4e.info | Bin 0 -> 771 bytes .../87/8795e0dd0041d2f44b1fe1959fc9fb53 | Bin 0 -> 11932 bytes .../87/8795e0dd0041d2f44b1fe1959fc9fb53.info | Bin 0 -> 700 bytes .../87/87a1ae9719ec25d44a4dbec20ec0f892 | Bin 0 -> 12888 bytes .../87/87a1ae9719ec25d44a4dbec20ec0f892.info | Bin 0 -> 687 bytes .../87/87ab1bebe13f41f89d5427e7d2c34d58 | Bin 0 -> 5764 bytes .../87/87ab1bebe13f41f89d5427e7d2c34d58.info | Bin 0 -> 695 bytes .../87/87d720faa37005c08600090e04d8c739 | Bin 0 -> 4688 bytes .../87/87d720faa37005c08600090e04d8c739.info | Bin 0 -> 658 bytes .../88/882f1a4147a284f028899b9c018e63eb | Bin 0 -> 16068 bytes .../88/882f1a4147a284f028899b9c018e63eb.info | Bin 0 -> 691 bytes .../88/88338eb35defad644a48718188e8f219 | Bin 0 -> 5776 bytes .../88/88338eb35defad644a48718188e8f219.info | Bin 0 -> 724 bytes .../88/88ed537c17c34f339121fe9a7d6d7a0e | Bin 0 -> 9056 bytes .../88/88ed537c17c34f339121fe9a7d6d7a0e.info | Bin 0 -> 694 bytes .../89/8938e753b3f47374889d5cf3265b563c | Bin 0 -> 5964 bytes .../89/8938e753b3f47374889d5cf3265b563c.info | Bin 0 -> 699 bytes .../89/898bc38486fc899428fbe5bd6adfe473 | Bin 0 -> 5512 bytes .../89/898bc38486fc899428fbe5bd6adfe473.info | Bin 0 -> 740 bytes .../89/89b31ff5ca0a5eb4797ac65d43949807 | Bin 0 -> 5556 bytes .../89/89b31ff5ca0a5eb4797ac65d43949807.info | Bin 0 -> 658 bytes .../89/89b48a03f6f43e94e87cc8d2104d3d4d | Bin 0 -> 6684 bytes .../89/89b48a03f6f43e94e87cc8d2104d3d4d.info | Bin 0 -> 658 bytes .../8a/8a13cbeb2099aca47bb456f49845f86c | Bin 0 -> 5532 bytes .../8a/8a13cbeb2099aca47bb456f49845f86c.info | Bin 0 -> 697 bytes .../8a/8a4b6301a5afaec4cb87d21383ceb0b3 | Bin 0 -> 9884 bytes .../8a/8a4b6301a5afaec4cb87d21383ceb0b3.info | Bin 0 -> 705 bytes .../8a/8a8695521f0d02e499659fee002a26c2 | Bin 0 -> 17620 bytes .../8a/8a8695521f0d02e499659fee002a26c2.info | Bin 0 -> 683 bytes .../8a/8aa8171e088f94069bbd1978a053f7dd | Bin 0 -> 5920 bytes .../8a/8aa8171e088f94069bbd1978a053f7dd.info | Bin 0 -> 664 bytes .../8b/8b22792c3b570444eb18cb78c2af3a74 | Bin 0 -> 10044 bytes .../8b/8b22792c3b570444eb18cb78c2af3a74.info | Bin 0 -> 669 bytes .../8b/8b7d06780fca6fc4384580d3ebed9219 | Bin 0 -> 4317 bytes .../8b/8b7d06780fca6fc4384580d3ebed9219.info | Bin 0 -> 629 bytes .../8b/8b845b123ab418448a8be2935fa804e0 | Bin 0 -> 4552 bytes .../8b/8b845b123ab418448a8be2935fa804e0.info | Bin 0 -> 699 bytes .../8b/8bb59cb2f66d156418ca1bd1e2703233 | Bin 0 -> 5364 bytes .../8b/8bb59cb2f66d156418ca1bd1e2703233.info | Bin 0 -> 661 bytes .../8b/8bc2b083b068f3546a9509c805e0541c | Bin 0 -> 7152 bytes .../8b/8bc2b083b068f3546a9509c805e0541c.info | Bin 0 -> 713 bytes .../8b/8bc445bb79654bf496c92d0407840a92 | Bin 0 -> 18488 bytes .../8b/8bc445bb79654bf496c92d0407840a92.info | Bin 0 -> 3127 bytes .../8b/8bc74398aa3944646ade4ee78cd57484 | Bin 0 -> 9856 bytes .../8b/8bc74398aa3944646ade4ee78cd57484.info | Bin 0 -> 730 bytes .../8b/8beed9aab74505d488e6befe54c3f6ef | Bin 0 -> 11248 bytes .../8b/8beed9aab74505d488e6befe54c3f6ef.info | Bin 0 -> 648 bytes .../8d/8d20eedbe40f0ce41a4c4f633f225de8 | Bin 0 -> 6016 bytes .../8d/8d20eedbe40f0ce41a4c4f633f225de8.info | Bin 0 -> 752 bytes .../8d/8d34348f8b97a334291f5cf31adc5d67 | Bin 0 -> 11504 bytes .../8d/8d34348f8b97a334291f5cf31adc5d67.info | Bin 0 -> 700 bytes .../8d/8df45492ff0815a488744d61efcecba7 | Bin 0 -> 38120 bytes .../8d/8df45492ff0815a488744d61efcecba7.info | Bin 0 -> 691 bytes .../8e/8e78f8a8575e4a04f8337a54e241cdc5 | Bin 0 -> 4325 bytes .../8e/8e78f8a8575e4a04f8337a54e241cdc5.info | Bin 0 -> 643 bytes .../8f/8f74c99a65464bb4b86ccb314ee95a7f | Bin 0 -> 13700 bytes .../8f/8f74c99a65464bb4b86ccb314ee95a7f.info | Bin 0 -> 659 bytes .../8f/8f7652e09069a1943278893d4264401e | Bin 0 -> 4297 bytes .../8f/8f7652e09069a1943278893d4264401e.info | Bin 0 -> 589 bytes .../8f/8f8b248abe6b4dcebd6cdd0d754717f4 | Bin 0 -> 219208 bytes .../8f/8f8b248abe6b4dcebd6cdd0d754717f4.info | Bin 0 -> 698 bytes .../90/900aac3710bc14542a8d164e3f0ff820 | Bin 0 -> 6268 bytes .../90/900aac3710bc14542a8d164e3f0ff820.info | Bin 0 -> 777 bytes .../90/900f1a451c764dc3bdcc0de815a15935 | Bin 0 -> 8592 bytes .../90/900f1a451c764dc3bdcc0de815a15935.info | Bin 0 -> 667 bytes .../90/9014630255533ed42915965b4065cde8 | Bin 0 -> 5340 bytes .../90/9014630255533ed42915965b4065cde8.info | Bin 0 -> 681 bytes .../90/901b761c5c1e22d4e8a3ba7d95bc1f5d | Bin 0 -> 6676 bytes .../90/901b761c5c1e22d4e8a3ba7d95bc1f5d.info | Bin 0 -> 737 bytes .../90/906c12bc9cd95d3963c6d58f62522c78 | Bin 0 -> 4716 bytes .../90/906c12bc9cd95d3963c6d58f62522c78.info | Bin 0 -> 649 bytes .../90/9085046f02f69544eb97fd06b6048fe2 | Bin 0 -> 15756 bytes .../90/9085046f02f69544eb97fd06b6048fe2.info | Bin 0 -> 649 bytes .../90/90fe1c65e6bb3bc4e90862df7297719e | Bin 0 -> 7360 bytes .../90/90fe1c65e6bb3bc4e90862df7297719e.info | Bin 0 -> 674 bytes .../91/9129183a42052cd43b9c284d6dbd541e | Bin 0 -> 4305 bytes .../91/9129183a42052cd43b9c284d6dbd541e.info | Bin 0 -> 614 bytes .../91/91319408591cec1478efd3c62f9f418a | Bin 0 -> 6260 bytes .../91/91319408591cec1478efd3c62f9f418a.info | Bin 0 -> 758 bytes .../91/91950f78729ab144aa36e94690b28fad | Bin 0 -> 56968 bytes .../91/91950f78729ab144aa36e94690b28fad.info | Bin 0 -> 701 bytes .../91/919d97c1a707113409177d498d31cf51 | Bin 0 -> 4317 bytes .../91/919d97c1a707113409177d498d31cf51.info | Bin 0 -> 630 bytes .../91/91c20d2c22b8b3a4cb6c816bd225591a | Bin 0 -> 4361 bytes .../91/91c20d2c22b8b3a4cb6c816bd225591a.info | Bin 0 -> 669 bytes .../91/91f495459b6e34f419ac123740d798b1 | Bin 0 -> 7036 bytes .../91/91f495459b6e34f419ac123740d798b1.info | Bin 0 -> 694 bytes .../92/92027f7f8cfc4feaa477da0dc38d3d46 | Bin 0 -> 18040 bytes .../92/92027f7f8cfc4feaa477da0dc38d3d46.info | Bin 0 -> 2838 bytes .../92/9202fbba95ea8294cb5e718f028f21b0 | Bin 0 -> 7396 bytes .../92/9202fbba95ea8294cb5e718f028f21b0.info | Bin 0 -> 723 bytes .../92/926a61ff0dec44a5aab649acb411e9ad | Bin 0 -> 5592 bytes .../92/926a61ff0dec44a5aab649acb411e9ad.info | Bin 0 -> 718 bytes .../92/9288066c33474b94b6ee5465f4df1cc0 | Bin 0 -> 18036 bytes .../92/9288066c33474b94b6ee5465f4df1cc0.info | Bin 0 -> 2848 bytes .../92/928dc55e2c8c3ee4dad33b6d561cb6ea | Bin 0 -> 5396 bytes .../92/928dc55e2c8c3ee4dad33b6d561cb6ea.info | Bin 0 -> 685 bytes .../92/92a378669877c05c6071d0fed687bb95 | Bin 0 -> 4668 bytes .../92/92a378669877c05c6071d0fed687bb95.info | Bin 0 -> 651 bytes .../93/93665e8b67658804d99c4487228cc050 | Bin 0 -> 14200 bytes .../93/93665e8b67658804d99c4487228cc050.info | Bin 0 -> 690 bytes .../93/936bea4b2545c4a4fad2e623b0f6371f | Bin 0 -> 4305 bytes .../93/936bea4b2545c4a4fad2e623b0f6371f.info | Bin 0 -> 617 bytes .../93/936c6340f3468444ebb1785b4c311126 | Bin 0 -> 4357 bytes .../93/936c6340f3468444ebb1785b4c311126.info | Bin 0 -> 666 bytes .../93/9390296e78291b543b2f4a9761ef8139 | Bin 0 -> 9056 bytes .../93/9390296e78291b543b2f4a9761ef8139.info | Bin 0 -> 714 bytes .../93/93eea84e53d0226479c9a584f19427b5 | Bin 0 -> 5496 bytes .../93/93eea84e53d0226479c9a584f19427b5.info | Bin 0 -> 667 bytes .../93/93effba7cf7f3824ab0bd048a27a9c02 | Bin 0 -> 4317 bytes .../93/93effba7cf7f3824ab0bd048a27a9c02.info | Bin 0 -> 633 bytes .../94/945f4ecec6df62244b9ebcc363833642 | Bin 0 -> 18396 bytes .../94/945f4ecec6df62244b9ebcc363833642.info | Bin 0 -> 3119 bytes .../94/949b7e126b3f27940885a6808a15458e | Bin 0 -> 6816 bytes .../94/949b7e126b3f27940885a6808a15458e.info | Bin 0 -> 663 bytes .../95/9502550ba4785e3499d6c9251fa2114b | Bin 0 -> 7044 bytes .../95/9502550ba4785e3499d6c9251fa2114b.info | Bin 0 -> 682 bytes .../95/950890083f4907541a6ed06d70959e49 | Bin 0 -> 4337 bytes .../95/950890083f4907541a6ed06d70959e49.info | Bin 0 -> 653 bytes .../95/952b3dc7b47846947b37c8d3ae46579a | Bin 0 -> 5752 bytes .../95/952b3dc7b47846947b37c8d3ae46579a.info | Bin 0 -> 708 bytes .../95/953fab16d15d5885b3600fcd6388b2ad | Bin 0 -> 4780 bytes .../95/953fab16d15d5885b3600fcd6388b2ad.info | Bin 0 -> 659 bytes .../95/9541d86e2fd84c1d9990edf0852d74ab | Bin 0 -> 23280 bytes .../95/9541d86e2fd84c1d9990edf0852d74ab.info | Bin 0 -> 1133 bytes .../95/9545c9eb3bf94265810463794fec8334 | Bin 0 -> 7352 bytes .../95/9545c9eb3bf94265810463794fec8334.info | Bin 0 -> 716 bytes .../95/95a2914724952ef40bb590d0607fc878 | Bin 0 -> 10664 bytes .../95/95a2914724952ef40bb590d0607fc878.info | Bin 0 -> 738 bytes .../95/95b719082a664ea45bb56759eed1f271 | Bin 0 -> 4341 bytes .../95/95b719082a664ea45bb56759eed1f271.info | Bin 0 -> 656 bytes .../95/95c91abdcc1ea03458c2ea4e9626a5d8 | Bin 0 -> 5700 bytes .../95/95c91abdcc1ea03458c2ea4e9626a5d8.info | Bin 0 -> 670 bytes .../95/95cdf27b47eb82747ba9e51f41e72a35 | Bin 0 -> 4337 bytes .../95/95cdf27b47eb82747ba9e51f41e72a35.info | Bin 0 -> 653 bytes .../95/95f85adeda79e994f011eb2152cf4fc9 | Bin 0 -> 4337 bytes .../95/95f85adeda79e994f011eb2152cf4fc9.info | Bin 0 -> 607 bytes .../96/961642509dec50b44a293d26240140ec | Bin 0 -> 7764 bytes .../96/961642509dec50b44a293d26240140ec.info | Bin 0 -> 754 bytes .../96/9650d910fcaefb34cb45f121c1993892 | Bin 0 -> 5688 bytes .../96/9650d910fcaefb34cb45f121c1993892.info | Bin 0 -> 752 bytes .../96/9685354eb873b8d4699078b307b0f260 | Bin 0 -> 22760 bytes .../96/9685354eb873b8d4699078b307b0f260.info | Bin 0 -> 720 bytes .../96/968a09f153574430a6e15ae975145768 | Bin 0 -> 5972 bytes .../96/968a09f153574430a6e15ae975145768.info | Bin 0 -> 659 bytes .../96/96b44f7d98314b139324a8a87eb66067 | Bin 0 -> 87816 bytes .../96/96b44f7d98314b139324a8a87eb66067.info | Bin 0 -> 701 bytes .../96/96c503bf059df984c86eecf572370347 | Bin 0 -> 4357 bytes .../96/96c503bf059df984c86eecf572370347.info | Bin 0 -> 667 bytes .../96/96d14b71b907bb52333b2886e665aba6 | Bin 0 -> 4768 bytes .../96/96d14b71b907bb52333b2886e665aba6.info | Bin 0 -> 649 bytes .../96/96e9072453a441618754c478755b3028 | Bin 0 -> 10552 bytes .../96/96e9072453a441618754c478755b3028.info | Bin 0 -> 683 bytes .../97/970e7735a0864fd40842a36d053d08fe | Bin 0 -> 18548 bytes .../97/970e7735a0864fd40842a36d053d08fe.info | Bin 0 -> 714 bytes .../97/9713795381722eb43b623dffba25d115 | Bin 0 -> 5976 bytes .../97/9713795381722eb43b623dffba25d115.info | Bin 0 -> 659 bytes .../97/973b024861c5ae84f869aad614234b04 | Bin 0 -> 5492 bytes .../97/973b024861c5ae84f869aad614234b04.info | Bin 0 -> 707 bytes .../97/976acc75bfafe594cb01142ba21947be | Bin 0 -> 14608 bytes .../97/976acc75bfafe594cb01142ba21947be.info | Bin 0 -> 676 bytes .../97/977190a4db46de442aed27279d247df4 | Bin 0 -> 6776 bytes .../97/977190a4db46de442aed27279d247df4.info | Bin 0 -> 672 bytes .../97/97a05971510726f438153cd4987526fb | Bin 0 -> 10600 bytes .../97/97a05971510726f438153cd4987526fb.info | Bin 0 -> 688 bytes .../98/9805855c8e379ed4cad77f639aaddb73 | Bin 0 -> 40008 bytes .../98/9805855c8e379ed4cad77f639aaddb73.info | Bin 0 -> 714 bytes .../98/983c76d87fb6f4f4597a526a4b2b5fd7 | Bin 0 -> 6064 bytes .../98/983c76d87fb6f4f4597a526a4b2b5fd7.info | Bin 0 -> 673 bytes .../98/985eed4bc2fbee941b761b8816d9055d | Bin 0 -> 4313 bytes .../98/985eed4bc2fbee941b761b8816d9055d.info | Bin 0 -> 628 bytes .../98/98808b11e78f6c84a841a6b4bc5a29d2 | Bin 0 -> 5440 bytes .../98/98808b11e78f6c84a841a6b4bc5a29d2.info | Bin 0 -> 716 bytes .../98/98ba0396e4b4ee8498a8f097affcfddf | Bin 0 -> 7008 bytes .../98/98ba0396e4b4ee8498a8f097affcfddf.info | Bin 0 -> 759 bytes .../98/98d14ab1acf42df4f88a0561822ac807 | Bin 0 -> 4317 bytes .../98/98d14ab1acf42df4f88a0561822ac807.info | Bin 0 -> 634 bytes .../99/9945ffed4692c6044b6d3acf81efd694 | Bin 0 -> 7644 bytes .../99/9945ffed4692c6044b6d3acf81efd694.info | Bin 0 -> 707 bytes .../99/995c08a3305ff9f0dab5e86f340bd9a7 | Bin 0 -> 4325 bytes .../99/995c08a3305ff9f0dab5e86f340bd9a7.info | Bin 0 -> 603 bytes .../99/99c5970046bb263469514e56eb6aa519 | Bin 0 -> 11724 bytes .../99/99c5970046bb263469514e56eb6aa519.info | Bin 0 -> 682 bytes .../9a/9a0f991b6c2f45b44b92e163f9969e8e | Bin 0 -> 7760 bytes .../9a/9a0f991b6c2f45b44b92e163f9969e8e.info | Bin 0 -> 682 bytes .../9a/9a3557da07c729b4eb774b8e30e157a4 | Bin 0 -> 4313 bytes .../9a/9a3557da07c729b4eb774b8e30e157a4.info | Bin 0 -> 625 bytes .../9a/9a371bcbba2084dd0a8ebc6826aa8794 | Bin 0 -> 10000 bytes .../9a/9a371bcbba2084dd0a8ebc6826aa8794.info | Bin 0 -> 733 bytes .../9a/9a6069768ff3d8043a79348813f86cba | Bin 0 -> 4317 bytes .../9a/9a6069768ff3d8043a79348813f86cba.info | Bin 0 -> 628 bytes .../9a/9ace5095cc37ed849b52109d2ee305d4 | Bin 0 -> 9680 bytes .../9a/9ace5095cc37ed849b52109d2ee305d4.info | Bin 0 -> 699 bytes .../9a/9ad0b0c865b01af4ca1b414689e71259 | Bin 0 -> 7012 bytes .../9a/9ad0b0c865b01af4ca1b414689e71259.info | Bin 0 -> 740 bytes .../9b/9b1a3034a9e81704abdd08677a2d035f | Bin 0 -> 11860 bytes .../9b/9b1a3034a9e81704abdd08677a2d035f.info | Bin 0 -> 701 bytes .../9b/9b4f21acd14fdd445b37b76f6587539e | Bin 0 -> 4305 bytes .../9b/9b4f21acd14fdd445b37b76f6587539e.info | Bin 0 -> 615 bytes .../9b/9b5abcb38bac0c54794ad732a3fa0de3 | Bin 0 -> 6364 bytes .../9b/9b5abcb38bac0c54794ad732a3fa0de3.info | Bin 0 -> 701 bytes .../9b/9bc2b69915879416f8df18971dc98e2e | Bin 0 -> 11840 bytes .../9b/9bc2b69915879416f8df18971dc98e2e.info | Bin 0 -> 711 bytes .../9b/9bd5a110ed89025499ddee8c7e73778e | Bin 0 -> 6304 bytes .../9b/9bd5a110ed89025499ddee8c7e73778e.info | Bin 0 -> 714 bytes .../9b/9be6112c2b1c3ae44927680ba7b36e10 | Bin 0 -> 18952 bytes .../9b/9be6112c2b1c3ae44927680ba7b36e10.info | Bin 0 -> 699 bytes .../9b/9bedab6f9886aee42b33e424bffdb640 | Bin 0 -> 4317 bytes .../9b/9bedab6f9886aee42b33e424bffdb640.info | Bin 0 -> 633 bytes .../9c/9c2177aaf0fde92439246adc2dc0bfa2 | Bin 0 -> 9000 bytes .../9c/9c2177aaf0fde92439246adc2dc0bfa2.info | Bin 0 -> 716 bytes .../9c/9c21cfda3336137438c3001d40564be0 | Bin 0 -> 7072 bytes .../9c/9c21cfda3336137438c3001d40564be0.info | Bin 0 -> 738 bytes .../9c/9c4a050f089abb04ebd4125e419f4548 | Bin 0 -> 5668 bytes .../9c/9c4a050f089abb04ebd4125e419f4548.info | Bin 0 -> 712 bytes .../9c/9c7ad350fb20c854a9112cf4156d1b6e | Bin 0 -> 910360 bytes .../9c/9c7ad350fb20c854a9112cf4156d1b6e.info | Bin 0 -> 653 bytes .../9c/9c7c268fa6492449654839df69f2a2f4 | Bin 0 -> 4313 bytes .../9c/9c7c268fa6492449654839df69f2a2f4.info | Bin 0 -> 598 bytes .../9c/9c8ceb9efacb4974bb3b7e2a87137b07 | Bin 0 -> 5972 bytes .../9c/9c8ceb9efacb4974bb3b7e2a87137b07.info | Bin 0 -> 724 bytes .../9d/9d614808f9add8a4f8e4860db2c7af0d | Bin 0 -> 5448 bytes .../9d/9d614808f9add8a4f8e4860db2c7af0d.info | Bin 0 -> 703 bytes .../9d/9d816a6ab06c6834480f5f45f440e287 | Bin 0 -> 4321 bytes .../9d/9d816a6ab06c6834480f5f45f440e287.info | Bin 0 -> 633 bytes .../9d/9db19a04003fca7439552acd4de9baa1 | Bin 0 -> 5876 bytes .../9d/9db19a04003fca7439552acd4de9baa1.info | Bin 0 -> 669 bytes .../9d/9de24983a2c6cbe4f925c3e98a79b804 | Bin 0 -> 22528 bytes .../9d/9de24983a2c6cbe4f925c3e98a79b804.info | Bin 0 -> 675 bytes .../9e/9e2b7a65f0a52974193ed497d145b0bc | Bin 0 -> 31268 bytes .../9e/9e2b7a65f0a52974193ed497d145b0bc.info | Bin 0 -> 680 bytes .../9e/9ec94545c5b00344c9bd8e691f15d799 | Bin 0 -> 5360 bytes .../9e/9ec94545c5b00344c9bd8e691f15d799.info | Bin 0 -> 667 bytes .../9e/9edc9283e7d6409fab242fe8fb6a822c | Bin 0 -> 9248 bytes .../9e/9edc9283e7d6409fab242fe8fb6a822c.info | Bin 0 -> 670 bytes .../9f/9f1026265f8e3d54fb6e9f082c43debf | Bin 0 -> 7284 bytes .../9f/9f1026265f8e3d54fb6e9f082c43debf.info | Bin 0 -> 684 bytes .../9f/9fc0d4010bbf28b4594072e72b8655ab | Bin 0 -> 4301 bytes .../9f/9fc0d4010bbf28b4594072e72b8655ab.info | Bin 0 -> 615 bytes .../a0/a002d3737b873954395b7cf862873ab8 | Bin 0 -> 5360 bytes .../a0/a002d3737b873954395b7cf862873ab8.info | Bin 0 -> 711 bytes .../a0/a021b6d2ca2e9404b8a4d94343ecd068 | Bin 0 -> 5544 bytes .../a0/a021b6d2ca2e9404b8a4d94343ecd068.info | Bin 0 -> 744 bytes .../a0/a025ba7ee40d0104db8d08b1d9eabb0d | Bin 0 -> 12048 bytes .../a0/a025ba7ee40d0104db8d08b1d9eabb0d.info | Bin 0 -> 729 bytes .../a0/a04a45bbed9e1714f9902fc9443669b9 | Bin 0 -> 10080 bytes .../a0/a04a45bbed9e1714f9902fc9443669b9.info | Bin 0 -> 722 bytes .../a0/a0a02e768c802b641b6793fa864f1c2c | Bin 0 -> 15924 bytes .../a0/a0a02e768c802b641b6793fa864f1c2c.info | Bin 0 -> 708 bytes .../a0/a0b56195e00682b4594dfaeef9d5fa78 | Bin 0 -> 5964 bytes .../a0/a0b56195e00682b4594dfaeef9d5fa78.info | Bin 0 -> 722 bytes .../a0/a0bae4ff8f5baf64aad3b92b8aea0603 | Bin 0 -> 23584 bytes .../a0/a0bae4ff8f5baf64aad3b92b8aea0603.info | Bin 0 -> 673 bytes .../a1/a14a59f2a5c757e469c3e4e17b798c2e | Bin 0 -> 13664 bytes .../a1/a14a59f2a5c757e469c3e4e17b798c2e.info | Bin 0 -> 696 bytes .../a2/a2a8aecb05814e644abbb070fbd91156 | Bin 0 -> 9664 bytes .../a2/a2a8aecb05814e644abbb070fbd91156.info | Bin 0 -> 695 bytes .../a2/a2cb43d6b0c226443be7e176590837a5 | Bin 0 -> 7204 bytes .../a2/a2cb43d6b0c226443be7e176590837a5.info | Bin 0 -> 681 bytes .../a3/a3529368f4cd0424a89aa51080a16b06 | Bin 0 -> 6348 bytes .../a3/a3529368f4cd0424a89aa51080a16b06.info | Bin 0 -> 743 bytes .../a3/a36d8b72880a8004f96ac54ce4598ff9 | Bin 0 -> 4305 bytes .../a3/a36d8b72880a8004f96ac54ce4598ff9.info | Bin 0 -> 614 bytes .../a3/a3949cc8bd731bb47bedf6589367d0c9 | Bin 0 -> 14832 bytes .../a3/a3949cc8bd731bb47bedf6589367d0c9.info | Bin 0 -> 677 bytes .../a4/a429b38ee9d48c7408c8870baf406034 | Bin 0 -> 11376 bytes .../a4/a429b38ee9d48c7408c8870baf406034.info | Bin 0 -> 733 bytes .../a4/a4610cf559d77b9f256416d9ccaeac55 | Bin 0 -> 4309 bytes .../a4/a4610cf559d77b9f256416d9ccaeac55.info | Bin 0 -> 593 bytes .../a4/a483595b0257945278dc75c5ff7d82ee | Bin 0 -> 7972 bytes .../a4/a483595b0257945278dc75c5ff7d82ee.info | Bin 0 -> 717 bytes .../a5/a55fb7b4961a425381d1282fc424f966 | Bin 0 -> 11332 bytes .../a5/a55fb7b4961a425381d1282fc424f966.info | Bin 0 -> 680 bytes .../a5/a582090813554df479fb9ca03e9857d3 | Bin 0 -> 6004 bytes .../a5/a582090813554df479fb9ca03e9857d3.info | Bin 0 -> 773 bytes .../a5/a598580d0cfc7224ebed8d2b627d9e00 | Bin 0 -> 9952 bytes .../a5/a598580d0cfc7224ebed8d2b627d9e00.info | Bin 0 -> 650 bytes .../a5/a59c2e62fbd97f84f92c3b546e3903cb | Bin 0 -> 9672 bytes .../a5/a59c2e62fbd97f84f92c3b546e3903cb.info | Bin 0 -> 750 bytes .../a5/a5c214e5846a99242b348c37e49b2f59 | Bin 0 -> 18540 bytes .../a5/a5c214e5846a99242b348c37e49b2f59.info | Bin 0 -> 731 bytes .../a6/a6238e9452bfc704f82ff36791fe1a45 | Bin 0 -> 39972 bytes .../a6/a6238e9452bfc704f82ff36791fe1a45.info | Bin 0 -> 652 bytes .../a6/a62706dc421fc9b4fa368a8050a930f7 | Bin 0 -> 5808 bytes .../a6/a62706dc421fc9b4fa368a8050a930f7.info | Bin 0 -> 688 bytes .../a6/a667f6654ad7a9548b8c8e68b51c8895 | Bin 0 -> 6588 bytes .../a6/a667f6654ad7a9548b8c8e68b51c8895.info | Bin 0 -> 733 bytes .../a6/a6ab6fd2b91214e8a9c8ec2224a528de | Bin 0 -> 4317 bytes .../a6/a6ab6fd2b91214e8a9c8ec2224a528de.info | Bin 0 -> 632 bytes .../a7/a704c010bcdb1ec4a9f3417b3c393164 | Bin 0 -> 5592 bytes .../a7/a704c010bcdb1ec4a9f3417b3c393164.info | Bin 0 -> 692 bytes .../a7/a73ebdb6c1006364f8c7b37dc53d8ab7 | Bin 0 -> 4317 bytes .../a7/a73ebdb6c1006364f8c7b37dc53d8ab7.info | Bin 0 -> 628 bytes .../a7/a7842a837a4b13e41ae16193db753418 | Bin 0 -> 5636 bytes .../a7/a7842a837a4b13e41ae16193db753418.info | Bin 0 -> 679 bytes .../a7/a7c91a123806d41a0873fcdcb629b1c4 | Bin 0 -> 13592 bytes .../a7/a7c91a123806d41a0873fcdcb629b1c4.info | Bin 0 -> 725 bytes .../a7/a7ebd1239373d5f41af65ef32d67f445 | Bin 0 -> 5416 bytes .../a7/a7ebd1239373d5f41af65ef32d67f445.info | Bin 0 -> 717 bytes .../a7/a7ec9e7ad8b847b7ae4510af83c5d868 | Bin 0 -> 83216 bytes .../a7/a7ec9e7ad8b847b7ae4510af83c5d868.info | Bin 0 -> 4634 bytes .../a8/a809a4b50addbf44b9023b5e7f9fd4d2 | Bin 0 -> 7372 bytes .../a8/a809a4b50addbf44b9023b5e7f9fd4d2.info | Bin 0 -> 686 bytes .../a8/a8604e8f13b3be84b8bc0c1507d8f3f6 | Bin 0 -> 9968 bytes .../a8/a8604e8f13b3be84b8bc0c1507d8f3f6.info | Bin 0 -> 669 bytes .../a8/a8ed4063f2beecd41a234a582202f3c4 | Bin 0 -> 6272 bytes .../a8/a8ed4063f2beecd41a234a582202f3c4.info | Bin 0 -> 761 bytes .../a9/a956e5803e95df349bd35832492d4014 | Bin 0 -> 24948 bytes .../a9/a956e5803e95df349bd35832492d4014.info | Bin 0 -> 672 bytes .../aa/aa14b70e6a58c5b4fa6663623e3dca91 | Bin 0 -> 4297 bytes .../aa/aa14b70e6a58c5b4fa6663623e3dca91.info | Bin 0 -> 613 bytes .../aa/aa160f27c3fe4052a5850e21108811b6 | Bin 0 -> 18548 bytes .../aa/aa160f27c3fe4052a5850e21108811b6.info | Bin 0 -> 704 bytes .../aa/aa76955fe5bb44f7915d91db8c7043c4 | Bin 0 -> 7372 bytes .../aa/aa76955fe5bb44f7915d91db8c7043c4.info | Bin 0 -> 703 bytes .../ab/ab2114bdc8544297b417dfefe9f1e410 | Bin 0 -> 8984 bytes .../ab/ab2114bdc8544297b417dfefe9f1e410.info | Bin 0 -> 707 bytes .../ab/ab93e1a81defc3243a6e9cd0df3cb443 | Bin 0 -> 4325 bytes .../ab/ab93e1a81defc3243a6e9cd0df3cb443.info | Bin 0 -> 635 bytes .../ac/ac281230df7b14becb40b3c479f1b429 | Bin 0 -> 5284 bytes .../ac/ac281230df7b14becb40b3c479f1b429.info | Bin 0 -> 618 bytes .../ac/ac3f13489022aa34d861a0320a6917b9 | Bin 0 -> 13984 bytes .../ac/ac3f13489022aa34d861a0320a6917b9.info | Bin 0 -> 680 bytes .../ac/ac68f5ae37c8957468562b8da42f9984 | Bin 0 -> 10088 bytes .../ac/ac68f5ae37c8957468562b8da42f9984.info | Bin 0 -> 728 bytes .../ac/acc16f0c684508f44813662a300c574b | Bin 0 -> 5328 bytes .../ac/acc16f0c684508f44813662a300c574b.info | Bin 0 -> 696 bytes .../ac/acfa3573efc38c844be021fdaa8cf8a6 | Bin 0 -> 7600 bytes .../ac/acfa3573efc38c844be021fdaa8cf8a6.info | Bin 0 -> 667 bytes .../ad/ad70ff8d98b257540b683737743828cb | Bin 0 -> 4321 bytes .../ad/ad70ff8d98b257540b683737743828cb.info | Bin 0 -> 636 bytes .../ad/adf7bea9401c1834380d55601add6cfb | Bin 0 -> 6500 bytes .../ad/adf7bea9401c1834380d55601add6cfb.info | Bin 0 -> 751 bytes .../ae/ae05f0dd1cf145e4e8e905c7971ee433 | Bin 0 -> 7664 bytes .../ae/ae05f0dd1cf145e4e8e905c7971ee433.info | Bin 0 -> 679 bytes .../ae/ae242449e9279d44789513b922d3178a | Bin 0 -> 4329 bytes .../ae/ae242449e9279d44789513b922d3178a.info | Bin 0 -> 640 bytes .../ae/ae8ce3ffe04ac2c42945fd27e0291fc3 | Bin 0 -> 6860 bytes .../ae/ae8ce3ffe04ac2c42945fd27e0291fc3.info | Bin 0 -> 706 bytes .../ae/aed7ab02155e43341a2dbcb7bc17c160 | Bin 0 -> 7092 bytes .../ae/aed7ab02155e43341a2dbcb7bc17c160.info | Bin 0 -> 754 bytes .../af/af30a361ab68260438b6ec3fb7e64500 | Bin 0 -> 4309 bytes .../af/af30a361ab68260438b6ec3fb7e64500.info | Bin 0 -> 621 bytes .../af/af5042802f06c804c8abddd544b77a4a | Bin 0 -> 6124 bytes .../af/af5042802f06c804c8abddd544b77a4a.info | Bin 0 -> 730 bytes .../af/af84cf39b8fa0654badd9278cbd00d77 | Bin 0 -> 5988 bytes .../af/af84cf39b8fa0654badd9278cbd00d77.info | Bin 0 -> 669 bytes .../af/afeb55855d7a63b45ba6f8bd97599202 | Bin 0 -> 15184 bytes .../af/afeb55855d7a63b45ba6f8bd97599202.info | Bin 0 -> 718 bytes .../b0/b09be1f217d34247af54863a2f5587e1 | Bin 0 -> 46528 bytes .../b0/b09be1f217d34247af54863a2f5587e1.info | Bin 0 -> 707 bytes .../b0/b0c73ea1c5ff95e43806e9002c155070 | Bin 0 -> 7624 bytes .../b0/b0c73ea1c5ff95e43806e9002c155070.info | Bin 0 -> 688 bytes .../b0/b0eeee3cdfa56734abca5c1a4e7989ba | Bin 0 -> 17348 bytes .../b0/b0eeee3cdfa56734abca5c1a4e7989ba.info | Bin 0 -> 678 bytes .../b1/b10cb8fee5b39014d8a417bf413f5e5c | Bin 0 -> 6176 bytes .../b1/b10cb8fee5b39014d8a417bf413f5e5c.info | Bin 0 -> 655 bytes .../b1/b124f0b8ca43e6e46bdc0322fad15ea3 | Bin 0 -> 4317 bytes .../b1/b124f0b8ca43e6e46bdc0322fad15ea3.info | Bin 0 -> 630 bytes .../b1/b135ec222fdcd11468014c90d11d6821 | Bin 0 -> 7116 bytes .../b1/b135ec222fdcd11468014c90d11d6821.info | Bin 0 -> 737 bytes .../b1/b180fd8310805e44dbbef545d0231418 | Bin 0 -> 5904 bytes .../b1/b180fd8310805e44dbbef545d0231418.info | Bin 0 -> 694 bytes .../b1/b1c789407b55e3a4c9cc86135a714e33 | Bin 0 -> 41636 bytes .../b1/b1c789407b55e3a4c9cc86135a714e33.info | Bin 0 -> 664 bytes .../b1/b1d8465ba1376b148bdab58965101f47 | Bin 0 -> 4345 bytes .../b1/b1d8465ba1376b148bdab58965101f47.info | Bin 0 -> 659 bytes .../b2/b219c86ce508e478367c0a46e1aa9fe4 | Bin 0 -> 4329 bytes .../b2/b219c86ce508e478367c0a46e1aa9fe4.info | Bin 0 -> 604 bytes .../b2/b222f61a1f7253e4d8e8cc82bfde9e42 | Bin 0 -> 7444 bytes .../b2/b222f61a1f7253e4d8e8cc82bfde9e42.info | Bin 0 -> 674 bytes .../b2/b250be9db55288b48ac121c074d795e6 | Bin 0 -> 9248 bytes .../b2/b250be9db55288b48ac121c074d795e6.info | Bin 0 -> 701 bytes .../b3/b33687803b08daf418e5315de17658b8 | Bin 0 -> 9572 bytes .../b3/b33687803b08daf418e5315de17658b8.info | Bin 0 -> 687 bytes .../b3/b3cdabf2f1e76854d8aab5930305d70d | Bin 0 -> 4325 bytes .../b3/b3cdabf2f1e76854d8aab5930305d70d.info | Bin 0 -> 637 bytes .../b4/b42e1db66fe9c634798674cb9e1df2ca | Bin 0 -> 9788 bytes .../b4/b42e1db66fe9c634798674cb9e1df2ca.info | Bin 0 -> 741 bytes .../b4/b43128d62b2ba454f9720a08135e57b6 | Bin 0 -> 4281 bytes .../b4/b43128d62b2ba454f9720a08135e57b6.info | Bin 0 -> 596 bytes .../b4/b458b2c7f196bdc4581b2f9fd6a5d931 | Bin 0 -> 8820 bytes .../b4/b458b2c7f196bdc4581b2f9fd6a5d931.info | Bin 0 -> 689 bytes .../b4/b46e36075dd1c124a8422c228e75e1fb | Bin 0 -> 5764 bytes .../b4/b46e36075dd1c124a8422c228e75e1fb.info | Bin 0 -> 673 bytes .../b4/b477d1f29b65a674e9d5cdab4eb72b01 | Bin 0 -> 4345 bytes .../b4/b477d1f29b65a674e9d5cdab4eb72b01.info | Bin 0 -> 662 bytes .../b4/b4a5ce78107bc38409a3bb5e8b3289ac | Bin 0 -> 5672 bytes .../b4/b4a5ce78107bc38409a3bb5e8b3289ac.info | Bin 0 -> 668 bytes .../b5/b52bde26a83564960bcb90217f72b910 | Bin 0 -> 10080 bytes .../b5/b52bde26a83564960bcb90217f72b910.info | Bin 0 -> 775 bytes .../b5/b5489bb3cd68836439785588fffc67a4 | Bin 0 -> 7856 bytes .../b5/b5489bb3cd68836439785588fffc67a4.info | Bin 0 -> 723 bytes .../b5/b557515fff172984e8c4400b43f1c631 | Bin 0 -> 8052 bytes .../b5/b557515fff172984e8c4400b43f1c631.info | Bin 0 -> 765 bytes .../b5/b57629d89799e004182564256307b0cc | Bin 0 -> 9904 bytes .../b5/b57629d89799e004182564256307b0cc.info | Bin 0 -> 669 bytes .../b5/b5d6c28ed7b94775be9e2560f300247c | Bin 0 -> 4313 bytes .../b5/b5d6c28ed7b94775be9e2560f300247c.info | Bin 0 -> 626 bytes .../b5/b5f0881228e5827438f74e9b7b33c2dc | Bin 0 -> 5876 bytes .../b5/b5f0881228e5827438f74e9b7b33c2dc.info | Bin 0 -> 670 bytes .../b5/b5f31b7e60df3e64796fb7ab6f54f489 | Bin 0 -> 15800 bytes .../b5/b5f31b7e60df3e64796fb7ab6f54f489.info | Bin 0 -> 700 bytes .../b5/b5f70efd2f7b286498ca6c00adbb4a13 | Bin 0 -> 6256 bytes .../b5/b5f70efd2f7b286498ca6c00adbb4a13.info | Bin 0 -> 694 bytes .../b6/b611b0a598aeada419afa9737807c598 | Bin 0 -> 11156 bytes .../b6/b611b0a598aeada419afa9737807c598.info | Bin 0 -> 658 bytes .../b6/b6e75d7f429a4e7e9e1ffb4f85cff49f | Bin 0 -> 6652 bytes .../b6/b6e75d7f429a4e7e9e1ffb4f85cff49f.info | Bin 0 -> 659 bytes .../b7/b7468a027a77337478e133b40b42b4f9 | Bin 0 -> 12256 bytes .../b7/b7468a027a77337478e133b40b42b4f9.info | Bin 0 -> 743 bytes .../b7/b759d61544e231c41bc88530b1d94ee8 | Bin 0 -> 16908 bytes .../b7/b759d61544e231c41bc88530b1d94ee8.info | Bin 0 -> 658 bytes .../b7/b77b1ad9c05af0412725856c6c53b037 | Bin 0 -> 4313 bytes .../b7/b77b1ad9c05af0412725856c6c53b037.info | Bin 0 -> 597 bytes .../b7/b7abcd1a72bb7174ca58e813c6eee9c2 | Bin 0 -> 7964 bytes .../b7/b7abcd1a72bb7174ca58e813c6eee9c2.info | Bin 0 -> 705 bytes .../b7/b7cabea05434bb9479aee1e121b0d103 | Bin 0 -> 10940 bytes .../b7/b7cabea05434bb9479aee1e121b0d103.info | Bin 0 -> 678 bytes .../b7/b7ff2b2e91321ff4381d4ab45870a32e | Bin 0 -> 7728 bytes .../b7/b7ff2b2e91321ff4381d4ab45870a32e.info | Bin 0 -> 726 bytes .../b8/b8046f5b741868b458cdb9b358311fa1 | Bin 0 -> 4305 bytes .../b8/b8046f5b741868b458cdb9b358311fa1.info | Bin 0 -> 613 bytes .../b8/b825fd5f27403b84f97726dd9c5a5e6f | Bin 0 -> 7684 bytes .../b8/b825fd5f27403b84f97726dd9c5a5e6f.info | Bin 0 -> 689 bytes .../b8/b83f06ac0c0696e9563230865ca72b81 | Bin 0 -> 4700 bytes .../b8/b83f06ac0c0696e9563230865ca72b81.info | Bin 0 -> 648 bytes .../b8/b846f69b139b3a341a5699a09fa52b2c | Bin 0 -> 8708 bytes .../b8/b846f69b139b3a341a5699a09fa52b2c.info | Bin 0 -> 687 bytes .../b8/b86b117346968ac4d9cc63e4385becb7 | Bin 0 -> 4313 bytes .../b8/b86b117346968ac4d9cc63e4385becb7.info | Bin 0 -> 624 bytes .../b8/b88caca58e05ee74486d86fb404c48e2 | Bin 0 -> 7588 bytes .../b8/b88caca58e05ee74486d86fb404c48e2.info | Bin 0 -> 738 bytes .../b8/b8abb41ceb6f62c45a00197ae59224c1 | Bin 0 -> 22140 bytes .../b8/b8abb41ceb6f62c45a00197ae59224c1.info | Bin 0 -> 688 bytes .../b8/b8c3bda3a988b5f4c910a5c3f722d0be | Bin 0 -> 6588 bytes .../b8/b8c3bda3a988b5f4c910a5c3f722d0be.info | Bin 0 -> 696 bytes .../b8/b8c5993172f27e4419d7d4ed5ef77840 | Bin 0 -> 4313 bytes .../b8/b8c5993172f27e4419d7d4ed5ef77840.info | Bin 0 -> 623 bytes .../b9/b90311a8f07b00f4bbeb2fff3b128d25 | Bin 0 -> 7416 bytes .../b9/b90311a8f07b00f4bbeb2fff3b128d25.info | Bin 0 -> 706 bytes .../b9/b926af22079e00e4a8c073321194cea1 | Bin 0 -> 6988 bytes .../b9/b926af22079e00e4a8c073321194cea1.info | Bin 0 -> 696 bytes .../b9/b9ba34e0b1884454fbc4257260e22b64 | Bin 0 -> 6304 bytes .../b9/b9ba34e0b1884454fbc4257260e22b64.info | Bin 0 -> 685 bytes .../b9/b9c2a6302985d3846b7b9f6fd9e2da9a | Bin 0 -> 5920 bytes .../b9/b9c2a6302985d3846b7b9f6fd9e2da9a.info | Bin 0 -> 702 bytes .../b9/b9d7bb79ed0c2854a8a5ed7decc3e44f | Bin 0 -> 4325 bytes .../b9/b9d7bb79ed0c2854a8a5ed7decc3e44f.info | Bin 0 -> 635 bytes .../b9/b9eb962217e00bf4fbc734e109991fca | Bin 0 -> 19656 bytes .../b9/b9eb962217e00bf4fbc734e109991fca.info | Bin 0 -> 681 bytes .../ba/ba72b974bd5e43240bd91ade68574875 | Bin 0 -> 4736 bytes .../ba/ba72b974bd5e43240bd91ade68574875.info | Bin 0 -> 703 bytes .../ba/bae197be297529d4fa735fbe7c91828d | Bin 0 -> 4313 bytes .../ba/bae197be297529d4fa735fbe7c91828d.info | Bin 0 -> 629 bytes .../bb/bb05cab7d802aa5468f8f2f86840d984 | Bin 0 -> 4604 bytes .../bb/bb05cab7d802aa5468f8f2f86840d984.info | Bin 0 -> 695 bytes .../bb/bb32bccaf32a6db448d1c0cc99c78688 | Bin 0 -> 4329 bytes .../bb/bb32bccaf32a6db448d1c0cc99c78688.info | Bin 0 -> 642 bytes .../bb/bb42b2d967d6427983c901a4ffc8ecd9 | Bin 0 -> 18500 bytes .../bb/bb42b2d967d6427983c901a4ffc8ecd9.info | Bin 0 -> 3165 bytes .../bc/bc00e25696e4132499f56528d3fed2e3 | Bin 0 -> 4369 bytes .../bc/bc00e25696e4132499f56528d3fed2e3.info | Bin 0 -> 8878 bytes .../bc/bc98484caab3b6d4facbcff38be93380 | Bin 0 -> 9192 bytes .../bc/bc98484caab3b6d4facbcff38be93380.info | Bin 0 -> 661 bytes .../bc/bc9aa6d5a7945f34882c442e9e201537 | Bin 0 -> 4329 bytes .../bc/bc9aa6d5a7945f34882c442e9e201537.info | Bin 0 -> 639 bytes .../bd/bd1af0a6633ee94ae21c7d1d702cdc12 | Bin 0 -> 4640 bytes .../bd/bd1af0a6633ee94ae21c7d1d702cdc12.info | Bin 0 -> 654 bytes .../bd/bd3e81baa10021f4d877fa36382bab16 | Bin 0 -> 5628 bytes .../bd/bd3e81baa10021f4d877fa36382bab16.info | Bin 0 -> 756 bytes .../bd/bd3ffb9a97575a44a82f9ca086813154 | Bin 0 -> 4317 bytes .../bd/bd3ffb9a97575a44a82f9ca086813154.info | Bin 0 -> 631 bytes .../bd/bdb4f6935641b574b984da8dc27cab45 | Bin 0 -> 4317 bytes .../bd/bdb4f6935641b574b984da8dc27cab45.info | Bin 0 -> 629 bytes .../bd/bdbd564a9fdad0b738e76d030cad1204 | Bin 0 -> 7028 bytes .../bd/bdbd564a9fdad0b738e76d030cad1204.info | Bin 0 -> 692 bytes .../be/be07f70ee67e6d74e851a9333719bbb6 | Bin 0 -> 7448 bytes .../be/be07f70ee67e6d74e851a9333719bbb6.info | Bin 0 -> 717 bytes .../be/be156cc527d606b4aaac403e9843186e | Bin 0 -> 13716 bytes .../be/be156cc527d606b4aaac403e9843186e.info | Bin 0 -> 712 bytes .../be/bea62e1faac8f9a48a4cb919ea05cb6a | Bin 0 -> 7948 bytes .../be/bea62e1faac8f9a48a4cb919ea05cb6a.info | Bin 0 -> 692 bytes .../be/bede4033d9f359b41878c4cda6a910b3 | Bin 0 -> 6596 bytes .../be/bede4033d9f359b41878c4cda6a910b3.info | Bin 0 -> 725 bytes .../be/bee384ad5b4d1a843a018082e7db53cd | Bin 0 -> 4297 bytes .../be/bee384ad5b4d1a843a018082e7db53cd.info | Bin 0 -> 611 bytes .../bf/bf87e20fb5440ec498f441167b5291f8 | Bin 0 -> 40648 bytes .../bf/bf87e20fb5440ec498f441167b5291f8.info | Bin 0 -> 676 bytes .../bf/bfb788a43e03363419155b8af77da971 | Bin 0 -> 18196 bytes .../bf/bfb788a43e03363419155b8af77da971.info | Bin 0 -> 691 bytes .../bf/bfd567a3d1631a761bca9e99fa53d86d | Bin 0 -> 4656 bytes .../bf/bfd567a3d1631a761bca9e99fa53d86d.info | Bin 0 -> 646 bytes .../bf/bfda56da833e2384a9677cd3c976a436 | Bin 0 -> 21296 bytes .../bf/bfda56da833e2384a9677cd3c976a436.info | Bin 0 -> 672 bytes .../c0/c060426bfd6e82575228df6656368eaa | Bin 0 -> 4313 bytes .../c0/c060426bfd6e82575228df6656368eaa.info | Bin 0 -> 598 bytes .../c0/c072e5b741a87974385c270827879cbf | Bin 0 -> 11780 bytes .../c0/c072e5b741a87974385c270827879cbf.info | Bin 0 -> 674 bytes .../c1/c16c54fe03afb5740bcc0a2a295cb79d | Bin 0 -> 4317 bytes .../c1/c16c54fe03afb5740bcc0a2a295cb79d.info | Bin 0 -> 632 bytes .../c1/c171b9ca03610ea4faa426e082a1075d | Bin 0 -> 12184 bytes .../c1/c171b9ca03610ea4faa426e082a1075d.info | Bin 0 -> 678 bytes .../c1/c18288a8d31fc9043a807ee8a9f1ae64 | Bin 0 -> 7248 bytes .../c1/c18288a8d31fc9043a807ee8a9f1ae64.info | Bin 0 -> 710 bytes .../c1/c18cb9388313e4287ad5895ee735c47d | Bin 0 -> 4313 bytes .../c1/c18cb9388313e4287ad5895ee735c47d.info | Bin 0 -> 626 bytes .../c2/c2f7f6a88b4c4f20a53deb72f3d9144c | Bin 0 -> 18484 bytes .../c2/c2f7f6a88b4c4f20a53deb72f3d9144c.info | Bin 0 -> 3128 bytes .../c3/c32df609537c54c46adf92992a673693 | Bin 0 -> 8396 bytes .../c3/c32df609537c54c46adf92992a673693.info | Bin 0 -> 696 bytes .../c3/c346a7445959bba46a96de0747e77c2a | Bin 0 -> 5644 bytes .../c3/c346a7445959bba46a96de0747e77c2a.info | Bin 0 -> 798 bytes .../c3/c35a186b967e6a24d9d844d412fe08a3 | Bin 0 -> 17436 bytes .../c3/c35a186b967e6a24d9d844d412fe08a3.info | Bin 0 -> 659 bytes .../c3/c38ae0585d6a55042a2d678330689685 | Bin 0 -> 6712 bytes .../c3/c38ae0585d6a55042a2d678330689685.info | Bin 0 -> 748 bytes .../c3/c3a595c9a8ed19040bb2612fe168759d | Bin 0 -> 7296 bytes .../c3/c3a595c9a8ed19040bb2612fe168759d.info | Bin 0 -> 699 bytes .../c3/c3a75354f6ceac94ca15ca9d96593290 | Bin 0 -> 5504 bytes .../c3/c3a75354f6ceac94ca15ca9d96593290.info | Bin 0 -> 749 bytes .../c3/c3de99f9efc582a48995bc8e8c2df418 | Bin 0 -> 4345 bytes .../c3/c3de99f9efc582a48995bc8e8c2df418.info | Bin 0 -> 662 bytes .../c3/c3efd39f2cfb43a4c830d4fd5689900f | Bin 0 -> 9556 bytes .../c3/c3efd39f2cfb43a4c830d4fd5689900f.info | Bin 0 -> 737 bytes .../c4/c4095d72f77fbb64ea39b8b3ca246622 | Bin 0 -> 15804 bytes .../c4/c4095d72f77fbb64ea39b8b3ca246622.info | Bin 0 -> 691 bytes .../c4/c459424081436584c8cec10767f9ac38 | Bin 0 -> 17500 bytes .../c4/c459424081436584c8cec10767f9ac38.info | Bin 0 -> 675 bytes .../c4/c46b007a3762fc84cb1ee7ca30060f0b | Bin 0 -> 6576 bytes .../c4/c46b007a3762fc84cb1ee7ca30060f0b.info | Bin 0 -> 715 bytes .../c4/c4777500b5da6094e956c3d4f04de4db | Bin 0 -> 10904 bytes .../c4/c4777500b5da6094e956c3d4f04de4db.info | Bin 0 -> 713 bytes .../c4/c488c389c17bd8d42b57e25edfc92ebf | Bin 0 -> 5732 bytes .../c4/c488c389c17bd8d42b57e25edfc92ebf.info | Bin 0 -> 648 bytes .../c4/c49b4cc203aa6414fae5c798d1d0e7d6 | Bin 0 -> 12776 bytes .../c4/c49b4cc203aa6414fae5c798d1d0e7d6.info | Bin 0 -> 704 bytes .../c4/c4c1445ee948a4124bfa9fb818a17e36 | Bin 0 -> 12876 bytes .../c4/c4c1445ee948a4124bfa9fb818a17e36.info | Bin 0 -> 705 bytes .../c4/c4df1124e2787ee0c8d1a911de17ee73 | Bin 0 -> 4313 bytes .../c4/c4df1124e2787ee0c8d1a911de17ee73.info | Bin 0 -> 598 bytes .../c5/c50a694a8232898498c1cdd47ce9873f | Bin 0 -> 7412 bytes .../c5/c50a694a8232898498c1cdd47ce9873f.info | Bin 0 -> 694 bytes .../c5/c522a644a29fcab2eaf63298c118a65b | Bin 0 -> 4341 bytes .../c5/c522a644a29fcab2eaf63298c118a65b.info | Bin 0 -> 608 bytes .../c5/c545241cf2e56ec4997d7677f01ef43d | Bin 0 -> 4305 bytes .../c5/c545241cf2e56ec4997d7677f01ef43d.info | Bin 0 -> 619 bytes .../c5/c5535d742ea2e4941850b421f9c70a1f | Bin 0 -> 4337 bytes .../c5/c5535d742ea2e4941850b421f9c70a1f.info | Bin 0 -> 646 bytes .../c5/c55a64c7570474f47a94abe39ebfef04 | Bin 0 -> 10196 bytes .../c5/c55a64c7570474f47a94abe39ebfef04.info | Bin 0 -> 713 bytes .../c5/c5acba6181d845c4e92146009bd4480f | Bin 0 -> 5464 bytes .../c5/c5acba6181d845c4e92146009bd4480f.info | Bin 0 -> 719 bytes .../c6/c606041f02fc7d542b1429806872292b | Bin 0 -> 5996 bytes .../c6/c606041f02fc7d542b1429806872292b.info | Bin 0 -> 711 bytes .../c6/c67ac6e40bbb6fe47a095b949b609ce0 | Bin 0 -> 10996 bytes .../c6/c67ac6e40bbb6fe47a095b949b609ce0.info | Bin 0 -> 682 bytes .../c6/c68f34993bfe85e489158a29c99a20b5 | Bin 0 -> 7492 bytes .../c6/c68f34993bfe85e489158a29c99a20b5.info | Bin 0 -> 661 bytes .../c7/c7137daaeb11e8647bf1ade9b7e9aa97 | Bin 0 -> 6196 bytes .../c7/c7137daaeb11e8647bf1ade9b7e9aa97.info | Bin 0 -> 676 bytes .../c7/c754112a02f354a6696fa4f2b99e95a5 | Bin 0 -> 10152 bytes .../c7/c754112a02f354a6696fa4f2b99e95a5.info | Bin 0 -> 620 bytes .../c7/c76700ea0062413d9f69409b4e9e151b | Bin 0 -> 18040 bytes .../c7/c76700ea0062413d9f69409b4e9e151b.info | Bin 0 -> 2889 bytes .../c7/c7cfda246e604b945b12b7afedb094ce | Bin 0 -> 10400 bytes .../c7/c7cfda246e604b945b12b7afedb094ce.info | Bin 0 -> 759 bytes .../c8/c825bad77a42dd341a8f0a5ef9cd5f4c | Bin 0 -> 6632 bytes .../c8/c825bad77a42dd341a8f0a5ef9cd5f4c.info | Bin 0 -> 727 bytes .../c8/c851bee4305bddf438cc6ffc515991ce | Bin 0 -> 4644 bytes .../c8/c851bee4305bddf438cc6ffc515991ce.info | Bin 0 -> 616 bytes .../c8/c890977a36bfdc849872b9337ab89098 | Bin 0 -> 9068 bytes .../c8/c890977a36bfdc849872b9337ab89098.info | Bin 0 -> 664 bytes .../c9/c9219e99d466b7741a057132d1994f35 | Bin 0 -> 19672 bytes .../c9/c9219e99d466b7741a057132d1994f35.info | Bin 0 -> 719 bytes .../c9/c97b794b51780d349a16826a4c7898d7 | Bin 0 -> 6500 bytes .../c9/c97b794b51780d349a16826a4c7898d7.info | Bin 0 -> 693 bytes .../c9/c9aabac5924106d4790d7b3a924ca34d | Bin 0 -> 5400 bytes .../c9/c9aabac5924106d4790d7b3a924ca34d.info | Bin 0 -> 618 bytes .../c9/c9b23632c77de204abfe8bf7168d48c0 | Bin 0 -> 5912 bytes .../c9/c9b23632c77de204abfe8bf7168d48c0.info | Bin 0 -> 776 bytes .../ca/ca51b19024094d1b87f3e07edb0a75fb | Bin 0 -> 18036 bytes .../ca/ca51b19024094d1b87f3e07edb0a75fb.info | Bin 0 -> 2835 bytes .../ca/ca819640f53b48919bf7774744f7f15e | Bin 0 -> 5864 bytes .../ca/ca819640f53b48919bf7774744f7f15e.info | Bin 0 -> 683 bytes .../ca/cabaa672b0e3ee91fa7b6da4daab7970 | Bin 0 -> 4313 bytes .../ca/cabaa672b0e3ee91fa7b6da4daab7970.info | Bin 0 -> 596 bytes .../ca/cad095eccea17b741bc4cd264e7441cd | Bin 0 -> 5352 bytes .../ca/cad095eccea17b741bc4cd264e7441cd.info | Bin 0 -> 661 bytes .../ca/cae60a41b37427b48a00027b3e0fc1e6 | Bin 0 -> 4317 bytes .../ca/cae60a41b37427b48a00027b3e0fc1e6.info | Bin 0 -> 634 bytes .../cb/cb281723220c9964094e6c52e0ece792 | Bin 0 -> 13172 bytes .../cb/cb281723220c9964094e6c52e0ece792.info | Bin 0 -> 709 bytes .../cb/cb319974ad8ebd44aa1e1fbb02640b5b | Bin 0 -> 9712 bytes .../cb/cb319974ad8ebd44aa1e1fbb02640b5b.info | Bin 0 -> 736 bytes .../cb/cb7c939a806f03341b682c180dc13f08 | Bin 0 -> 20468 bytes .../cb/cb7c939a806f03341b682c180dc13f08.info | Bin 0 -> 671 bytes .../cb/cbab8835092323a4389f2dc7d8f6c781 | Bin 0 -> 20844 bytes .../cb/cbab8835092323a4389f2dc7d8f6c781.info | Bin 0 -> 712 bytes .../cb/cbbca1d8a0434be4bbc7f165523763ac | Bin 0 -> 12524 bytes .../cb/cbbca1d8a0434be4bbc7f165523763ac.info | Bin 0 -> 736 bytes .../cc/cc22cc13b69c1094c85e176c008b9ef8 | Bin 0 -> 5900 bytes .../cc/cc22cc13b69c1094c85e176c008b9ef8.info | Bin 0 -> 669 bytes .../cc/cc313cc004395df4a9884390556690a5 | Bin 0 -> 4313 bytes .../cc/cc313cc004395df4a9884390556690a5.info | Bin 0 -> 625 bytes .../cc/cc456ba93311a3a43ad896449fee9868 | Bin 0 -> 11248 bytes .../cc/cc456ba93311a3a43ad896449fee9868.info | Bin 0 -> 753 bytes .../cc/cc6401f13df54ba44bfd7cdc93c7d64d | Bin 0 -> 5456 bytes .../cc/cc6401f13df54ba44bfd7cdc93c7d64d.info | Bin 0 -> 739 bytes .../cc/cce613d1538e76a4785658931c7db093 | Bin 0 -> 4313 bytes .../cc/cce613d1538e76a4785658931c7db093.info | Bin 0 -> 624 bytes .../ce/ce4ec0f498d1b1a4f90fe94e115b6f9a | Bin 0 -> 64798 bytes .../ce/ce4ec0f498d1b1a4f90fe94e115b6f9a.info | Bin 0 -> 726 bytes .../ce/ce4ff17ca867d2b48b5c8a4181611901 | Bin 0 -> 4369 bytes .../ce/ce4ff17ca867d2b48b5c8a4181611901.info | Bin 0 -> 8882 bytes .../ce/ce567ddbf30368344bc7b80e20cac36e | Bin 0 -> 9092 bytes .../ce/ce567ddbf30368344bc7b80e20cac36e.info | Bin 0 -> 739 bytes .../ce/ce87c287371edde43a4b5fcfdee7b9ef | Bin 0 -> 8564 bytes .../ce/ce87c287371edde43a4b5fcfdee7b9ef.info | Bin 0 -> 769 bytes .../ce/ce8da628f68c7594b8b9a597fa52db7b | Bin 0 -> 4357 bytes .../ce/ce8da628f68c7594b8b9a597fa52db7b.info | Bin 0 -> 672 bytes .../ce/ceb629fc661813d40986b4abbefe72c6 | Bin 0 -> 5452 bytes .../ce/ceb629fc661813d40986b4abbefe72c6.info | Bin 0 -> 631 bytes .../cf/cf1fe50a641faac4691bf49eb32ce333 | Bin 0 -> 13660 bytes .../cf/cf1fe50a641faac4691bf49eb32ce333.info | Bin 0 -> 1043 bytes .../cf/cf6aca931950a4a6a886e214e9e649c4 | Bin 0 -> 7160 bytes .../cf/cf6aca931950a4a6a886e214e9e649c4.info | Bin 0 -> 720 bytes .../cf/cf97e54bcd5479a46bdbade48da047cc | Bin 0 -> 4317 bytes .../cf/cf97e54bcd5479a46bdbade48da047cc.info | Bin 0 -> 626 bytes .../cf/cfa73a847eeff06448bb50a8ac6a94e0 | Bin 0 -> 4329 bytes .../cf/cfa73a847eeff06448bb50a8ac6a94e0.info | Bin 0 -> 645 bytes .../cf/cfabb0440166ab443bba8876756fdfa9 | Bin 0 -> 9548 bytes .../cf/cfabb0440166ab443bba8876756fdfa9.info | Bin 0 -> 665 bytes .../d0/d0080567f62c3f94cb75b2927a349e22 | Bin 0 -> 7480 bytes .../d0/d0080567f62c3f94cb75b2927a349e22.info | Bin 0 -> 702 bytes .../d0/d0138170d24533e47b8e6c250c6d7fbc | Bin 0 -> 9140 bytes .../d0/d0138170d24533e47b8e6c250c6d7fbc.info | Bin 0 -> 701 bytes .../d0/d029640460cf8ff47bbbfe69f49ddf29 | Bin 0 -> 14632 bytes .../d0/d029640460cf8ff47bbbfe69f49ddf29.info | Bin 0 -> 683 bytes .../d0/d061ada5d3169454daf54243390b5fdb | Bin 0 -> 8908 bytes .../d0/d061ada5d3169454daf54243390b5fdb.info | Bin 0 -> 725 bytes .../d0/d0663d520c26b7c48a4135599e66acf8 | Bin 0 -> 6984 bytes .../d0/d0663d520c26b7c48a4135599e66acf8.info | Bin 0 -> 728 bytes .../d0/d09858396dd7adb4bbdb22ea0c8c3a37 | Bin 0 -> 7912 bytes .../d0/d09858396dd7adb4bbdb22ea0c8c3a37.info | Bin 0 -> 762 bytes .../d0/d0abdd8cb6b29a24c8ee19626ef741b9 | Bin 0 -> 5560 bytes .../d0/d0abdd8cb6b29a24c8ee19626ef741b9.info | Bin 0 -> 693 bytes .../d0/d0b148fe25e99eb48b9724523833bab1 | Bin 0 -> 16928 bytes .../d0/d0b148fe25e99eb48b9724523833bab1.info | Bin 0 -> 681 bytes .../d0/d0ca7b2e84542bf4ab9987087e8d79ad | Bin 0 -> 6708 bytes .../d0/d0ca7b2e84542bf4ab9987087e8d79ad.info | Bin 0 -> 676 bytes .../d0/d0cd29fb1ad218b48b814bc3e6d8ac0e | Bin 0 -> 4317 bytes .../d0/d0cd29fb1ad218b48b814bc3e6d8ac0e.info | Bin 0 -> 631 bytes .../d0/d0e3ad91972c66f5238f5b9b7d5ae58a | Bin 0 -> 4860 bytes .../d0/d0e3ad91972c66f5238f5b9b7d5ae58a.info | Bin 0 -> 666 bytes .../d0/d0fc6f5187a81dc47999eefade6f0935 | Bin 0 -> 5832 bytes .../d0/d0fc6f5187a81dc47999eefade6f0935.info | Bin 0 -> 663 bytes .../d1/d1207768d96c479488b6b81f3483e0c1 | Bin 0 -> 9432 bytes .../d1/d1207768d96c479488b6b81f3483e0c1.info | Bin 0 -> 674 bytes .../d1/d143f3edd0494bc4c98a421bd59564fa | Bin 0 -> 8788 bytes .../d1/d143f3edd0494bc4c98a421bd59564fa.info | Bin 0 -> 662 bytes .../d1/d199490a83bb2b844b9695cbf13b01ef | Bin 0 -> 124688 bytes .../d1/d199490a83bb2b844b9695cbf13b01ef.info | Bin 0 -> 661 bytes .../d1/d19b75372f4e44d4fa4b2cffbb54124b | Bin 0 -> 4313 bytes .../d1/d19b75372f4e44d4fa4b2cffbb54124b.info | Bin 0 -> 621 bytes .../d1/d1a0a27327b54c3bac52a08929c33f81 | Bin 0 -> 4321 bytes .../d1/d1a0a27327b54c3bac52a08929c33f81.info | Bin 0 -> 638 bytes .../d1/d1b534518943030499685344fd1d476d | Bin 0 -> 5912 bytes .../d1/d1b534518943030499685344fd1d476d.info | Bin 0 -> 701 bytes .../d1/d1b7ce919aa8864409412e809073cf96 | Bin 0 -> 5792 bytes .../d1/d1b7ce919aa8864409412e809073cf96.info | Bin 0 -> 720 bytes .../d1/d1c9c1ed454d0594b951eb6a76ac62ad | Bin 0 -> 15156 bytes .../d1/d1c9c1ed454d0594b951eb6a76ac62ad.info | Bin 0 -> 708 bytes .../d2/d208a1684f8aa6a40ad91d6aa9600c14 | Bin 0 -> 5420 bytes .../d2/d208a1684f8aa6a40ad91d6aa9600c14.info | Bin 0 -> 721 bytes .../d2/d20e4e177b86a2843805dd3894f41b42 | Bin 0 -> 10808 bytes .../d2/d20e4e177b86a2843805dd3894f41b42.info | Bin 0 -> 718 bytes .../d2/d2146428d3f1ad54eb7326c9a44b3284 | Bin 0 -> 6672 bytes .../d2/d2146428d3f1ad54eb7326c9a44b3284.info | Bin 0 -> 748 bytes .../d2/d21dcc2386d650c4597f3633c75a1f98 | Bin 0 -> 38516 bytes .../d2/d21dcc2386d650c4597f3633c75a1f98.info | Bin 0 -> 685 bytes .../d2/d256fa541faf5d4409992c631adb98a1 | Bin 0 -> 22148 bytes .../d2/d256fa541faf5d4409992c631adb98a1.info | Bin 0 -> 773 bytes .../d3/d31dfeaa131921f4eae00783cc48146f | Bin 0 -> 6340 bytes .../d3/d31dfeaa131921f4eae00783cc48146f.info | Bin 0 -> 636 bytes .../d3/d31e5d760880a4e52a3a75322481d0d2 | Bin 0 -> 4305 bytes .../d3/d31e5d760880a4e52a3a75322481d0d2.info | Bin 0 -> 619 bytes .../d3/d3217d58bbd1d2b4aaee933e2e8b9195 | Bin 0 -> 10080 bytes .../d3/d3217d58bbd1d2b4aaee933e2e8b9195.info | Bin 0 -> 728 bytes .../d3/d36a7c7a1ed377c4b8008e53032d7dcf | Bin 0 -> 8004 bytes .../d3/d36a7c7a1ed377c4b8008e53032d7dcf.info | Bin 0 -> 661 bytes .../d3/d3721d5c6afa8e545995dfaada328476 | Bin 0 -> 7732 bytes .../d3/d3721d5c6afa8e545995dfaada328476.info | Bin 0 -> 668 bytes .../d3/d3cbe921f7b3d9a3257e7c61a5761796 | Bin 0 -> 4808 bytes .../d3/d3cbe921f7b3d9a3257e7c61a5761796.info | Bin 0 -> 658 bytes .../d3/d3d14fa8f6934e14d92e37279e40e89b | Bin 0 -> 17524 bytes .../d3/d3d14fa8f6934e14d92e37279e40e89b.info | Bin 0 -> 729 bytes .../d4/d40a0edbdcdcf9747a420f3bbe0f18db | Bin 0 -> 4321 bytes .../d4/d40a0edbdcdcf9747a420f3bbe0f18db.info | Bin 0 -> 633 bytes .../d4/d437fe60bb34f45728664a5d930c1635 | Bin 0 -> 4325 bytes .../d4/d437fe60bb34f45728664a5d930c1635.info | Bin 0 -> 641 bytes .../d4/d44e6804bc58be84ea71a619b468f150 | Bin 0 -> 6332 bytes .../d4/d44e6804bc58be84ea71a619b468f150.info | Bin 0 -> 741 bytes .../d4/d49b2ed20045e034f9cdf6a6d95e6183 | Bin 0 -> 17916 bytes .../d4/d49b2ed20045e034f9cdf6a6d95e6183.info | Bin 0 -> 678 bytes .../d4/d4ef26aa386b44923b61c9c4b505a67c | Bin 0 -> 5296 bytes .../d4/d4ef26aa386b44923b61c9c4b505a67c.info | Bin 0 -> 651 bytes .../d5/d51458b261e0ecc4a98904e53924dc1c | Bin 0 -> 6632 bytes .../d5/d51458b261e0ecc4a98904e53924dc1c.info | Bin 0 -> 654 bytes .../d5/d528c8c98d269ca44a06cd9624a03945 | Bin 0 -> 4532 bytes .../d5/d528c8c98d269ca44a06cd9624a03945.info | Bin 0 -> 684 bytes .../d5/d548f82e7e9c0ed49ae5b4a5eecfb2f7 | Bin 0 -> 10568 bytes .../d5/d548f82e7e9c0ed49ae5b4a5eecfb2f7.info | Bin 0 -> 703 bytes .../d5/d56dbb97f857c8040beef6dd1bfc97df | Bin 0 -> 9292 bytes .../d5/d56dbb97f857c8040beef6dd1bfc97df.info | Bin 0 -> 670 bytes .../d5/d5718b3fe3a758b4a9ec29170290d4f6 | Bin 0 -> 6324 bytes .../d5/d5718b3fe3a758b4a9ec29170290d4f6.info | Bin 0 -> 658 bytes .../d5/d59cefc45e3c31d4a90563364e7258fa | Bin 0 -> 5628 bytes .../d5/d59cefc45e3c31d4a90563364e7258fa.info | Bin 0 -> 675 bytes .../d5/d5f0b0adc6826e9dd3b72e292e8438be | Bin 0 -> 4357 bytes .../d5/d5f0b0adc6826e9dd3b72e292e8438be.info | Bin 0 -> 619 bytes .../d6/d6105bc8cf5ce544487daca4cbc62583 | Bin 0 -> 6408 bytes .../d6/d6105bc8cf5ce544487daca4cbc62583.info | Bin 0 -> 730 bytes .../d6/d63dd1a776d383248a21ec2a8a6e7868 | Bin 0 -> 4313 bytes .../d6/d63dd1a776d383248a21ec2a8a6e7868.info | Bin 0 -> 629 bytes .../d6/d64d92e4f04a13e4b99ea8d48e9e8ae9 | Bin 0 -> 4345 bytes .../d6/d64d92e4f04a13e4b99ea8d48e9e8ae9.info | Bin 0 -> 658 bytes .../d6/d685d97a1eb004f49afea0cc982ff728 | Bin 0 -> 7412 bytes .../d6/d685d97a1eb004f49afea0cc982ff728.info | Bin 0 -> 722 bytes .../d6/d691174143fd3774ba63d7c493633b99 | Bin 0 -> 6236 bytes .../d6/d691174143fd3774ba63d7c493633b99.info | Bin 0 -> 626 bytes .../d6/d6a2e6e4803de7b43baacdc355fc144d | Bin 0 -> 4960 bytes .../d6/d6a2e6e4803de7b43baacdc355fc144d.info | Bin 0 -> 650 bytes .../d6/d6c6a000a805f00649b36b542e8426c2 | Bin 0 -> 4337 bytes .../d6/d6c6a000a805f00649b36b542e8426c2.info | Bin 0 -> 607 bytes .../d6/d6db7caf2e852b75ebb9c6098418179c | Bin 0 -> 4325 bytes .../d6/d6db7caf2e852b75ebb9c6098418179c.info | Bin 0 -> 600 bytes .../d6/d6e23541e3b2fea489be46f704b64707 | Bin 0 -> 7876 bytes .../d6/d6e23541e3b2fea489be46f704b64707.info | Bin 0 -> 746 bytes .../d6/d6fa2d92fc1b3f34da284357edf89c3b | Bin 0 -> 5844 bytes .../d6/d6fa2d92fc1b3f34da284357edf89c3b.info | Bin 0 -> 681 bytes .../d7/d72ccd2c66ea846fc842adf682b11526 | Bin 0 -> 14644 bytes .../d7/d72ccd2c66ea846fc842adf682b11526.info | Bin 0 -> 675 bytes .../d7/d79cb9ecc0d4a6d428ab98a681a33897 | Bin 0 -> 9552 bytes .../d7/d79cb9ecc0d4a6d428ab98a681a33897.info | Bin 0 -> 715 bytes .../d7/d7b5b883d3aae8d479647d5ae6182974 | Bin 0 -> 20992 bytes .../d7/d7b5b883d3aae8d479647d5ae6182974.info | Bin 0 -> 674 bytes .../d8/d850db319a63d2546932ff76fe55a498 | Bin 0 -> 4297 bytes .../d8/d850db319a63d2546932ff76fe55a498.info | Bin 0 -> 609 bytes .../d8/d85e5eeaf8f135aeaaebdc8aa3cff6c3 | Bin 0 -> 4652 bytes .../d8/d85e5eeaf8f135aeaaebdc8aa3cff6c3.info | Bin 0 -> 649 bytes .../d8/d8c4a920f001ca64680ed6fdb52d1753 | Bin 0 -> 6700 bytes .../d8/d8c4a920f001ca64680ed6fdb52d1753.info | Bin 0 -> 699 bytes .../d9/d912d4873af534bd4a9d44bf1b52f14e | Bin 0 -> 6948 bytes .../d9/d912d4873af534bd4a9d44bf1b52f14e.info | Bin 0 -> 729 bytes .../d9/d925cabd9ecd5074aadab0726b96c38f | Bin 0 -> 23592 bytes .../d9/d925cabd9ecd5074aadab0726b96c38f.info | Bin 0 -> 670 bytes .../d9/d9647b571c5e44729b71d756b3d55317 | Bin 0 -> 6764 bytes .../d9/d9647b571c5e44729b71d756b3d55317.info | Bin 0 -> 722 bytes .../d9/d9682e749d3efc642af54d789d9090a6 | Bin 0 -> 4345 bytes .../d9/d9682e749d3efc642af54d789d9090a6.info | Bin 0 -> 659 bytes .../d9/d973fc1524e4d724081553934c55958c | Bin 0 -> 13264 bytes .../d9/d973fc1524e4d724081553934c55958c.info | Bin 0 -> 722 bytes .../da/dab656c79e1985c40b31faebcda44442 | Bin 0 -> 18956 bytes .../da/dab656c79e1985c40b31faebcda44442.info | Bin 0 -> 667 bytes .../db/db339ef553721e94999125c0b9f909dc | Bin 0 -> 6200 bytes .../db/db339ef553721e94999125c0b9f909dc.info | Bin 0 -> 675 bytes .../db/db34f310723c62440a05d3e69f262a70 | Bin 0 -> 4333 bytes .../db/db34f310723c62440a05d3e69f262a70.info | Bin 0 -> 641 bytes .../db/db7dd43fe1278a9459cd6036f096b91d | Bin 0 -> 5400 bytes .../db/db7dd43fe1278a9459cd6036f096b91d.info | Bin 0 -> 653 bytes .../db/dbd43d8a3b8122d4e89b055f53382b11 | Bin 0 -> 5516 bytes .../db/dbd43d8a3b8122d4e89b055f53382b11.info | Bin 0 -> 740 bytes .../dc/dc42784cf147c0c48a680349fa168899 | Bin 0 -> 18964 bytes .../dc/dc42784cf147c0c48a680349fa168899.info | Bin 0 -> 679 bytes .../dc/dc99dfeec967f2644b25dd6bace59b7e | Bin 0 -> 9248 bytes .../dc/dc99dfeec967f2644b25dd6bace59b7e.info | Bin 0 -> 692 bytes .../dc/dcb49b07db5e5f64e876b498105314f1 | Bin 0 -> 6880 bytes .../dc/dcb49b07db5e5f64e876b498105314f1.info | Bin 0 -> 682 bytes .../dc/dcc8c6e92b172a65719af5ddf47dd968 | Bin 0 -> 4341 bytes .../dc/dcc8c6e92b172a65719af5ddf47dd968.info | Bin 0 -> 611 bytes .../dc/dcf00682bef4d264d84a5c92c8f5a40f | Bin 0 -> 6756 bytes .../dc/dcf00682bef4d264d84a5c92c8f5a40f.info | Bin 0 -> 685 bytes .../dd/dd2fe74169b54bf58fca17288513ef38 | Bin 0 -> 8140 bytes .../dd/dd2fe74169b54bf58fca17288513ef38.info | Bin 0 -> 698 bytes .../dd/dd85a35169d313840a0874aea1a28629 | Bin 0 -> 7068 bytes .../dd/dd85a35169d313840a0874aea1a28629.info | Bin 0 -> 770 bytes .../de/de86b4ed8106fd84a8bc2f5d69798d53 | Bin 0 -> 18416 bytes .../de/de86b4ed8106fd84a8bc2f5d69798d53.info | Bin 0 -> 682 bytes .../de/de9eb5e2046ffc9448f07e495c436506 | Bin 0 -> 4317 bytes .../de/de9eb5e2046ffc9448f07e495c436506.info | Bin 0 -> 629 bytes .../de/dec586c160776104da4d9a4e472662bc | Bin 0 -> 4321 bytes .../de/dec586c160776104da4d9a4e472662bc.info | Bin 0 -> 639 bytes .../de/dec9066d4afefe444be0dad3f137730d | Bin 0 -> 6356 bytes .../de/dec9066d4afefe444be0dad3f137730d.info | Bin 0 -> 716 bytes .../df/df1ba932d4ce4534e97a0f10c85cd3c9 | Bin 0 -> 5880 bytes .../df/df1ba932d4ce4534e97a0f10c85cd3c9.info | Bin 0 -> 735 bytes .../df/df308f4e4481d5a44aef66f971a9b995 | Bin 0 -> 4285 bytes .../df/df308f4e4481d5a44aef66f971a9b995.info | Bin 0 -> 600 bytes .../df/df8df80bb65e9ec4280229a9921c4f3c | Bin 0 -> 37892 bytes .../df/df8df80bb65e9ec4280229a9921c4f3c.info | Bin 0 -> 671 bytes .../df/dfc336f10b83bd74eaded16a658275c7 | Bin 0 -> 6192 bytes .../df/dfc336f10b83bd74eaded16a658275c7.info | Bin 0 -> 775 bytes .../df/dfd084fea478f3148b7de3d83bab1d8c | Bin 0 -> 16800 bytes .../df/dfd084fea478f3148b7de3d83bab1d8c.info | Bin 0 -> 669 bytes .../df/dff73c4907c95264c8fc095a81f9d51e | Bin 0 -> 38768 bytes .../df/dff73c4907c95264c8fc095a81f9d51e.info | Bin 0 -> 696 bytes .../e0/e00a5dea786950546a21b0e2d817e466 | Bin 0 -> 8464 bytes .../e0/e00a5dea786950546a21b0e2d817e466.info | Bin 0 -> 709 bytes .../e0/e05ace3bd15740cda0bad60d89092a5b | Bin 0 -> 18048 bytes .../e0/e05ace3bd15740cda0bad60d89092a5b.info | Bin 0 -> 2888 bytes .../e0/e086b15460c228c4f9b116f0e3e2f175 | Bin 0 -> 6416 bytes .../e0/e086b15460c228c4f9b116f0e3e2f175.info | Bin 0 -> 700 bytes .../e0/e091bb444874ef244b1ba4a813fc1e34 | Bin 0 -> 4305 bytes .../e0/e091bb444874ef244b1ba4a813fc1e34.info | Bin 0 -> 620 bytes .../e0/e0ae6629cc70b514889df37fccb76832 | Bin 0 -> 4612 bytes .../e0/e0ae6629cc70b514889df37fccb76832.info | Bin 0 -> 610 bytes .../e0/e0db3f3921670cd4ca2e925737c3fba4 | Bin 0 -> 7068 bytes .../e0/e0db3f3921670cd4ca2e925737c3fba4.info | Bin 0 -> 740 bytes .../e1/e165a99d845c10e4ea0f546e542e8684 | Bin 0 -> 7552 bytes .../e1/e165a99d845c10e4ea0f546e542e8684.info | Bin 0 -> 713 bytes .../e1/e177382a693dea644acd34e3e7a3feb3 | Bin 0 -> 5696 bytes .../e1/e177382a693dea644acd34e3e7a3feb3.info | Bin 0 -> 702 bytes .../e1/e17c88b021c2a4c409b3f15b0d80ac62 | Bin 0 -> 9752 bytes .../e1/e17c88b021c2a4c409b3f15b0d80ac62.info | Bin 0 -> 747 bytes .../e1/e19747de3f5aca642ab2be37e372fb86 | Bin 0 -> 6660 bytes .../e1/e19747de3f5aca642ab2be37e372fb86.info | Bin 0 -> 668 bytes .../e1/e1e957d39ca70834f9212a1289b6a0d5 | Bin 0 -> 6868 bytes .../e1/e1e957d39ca70834f9212a1289b6a0d5.info | Bin 0 -> 720 bytes .../e1/e1ef8466c8fd01a549f10baa4d51fa17 | Bin 0 -> 4700 bytes .../e1/e1ef8466c8fd01a549f10baa4d51fa17.info | Bin 0 -> 655 bytes .../e1/e1f640f1769d6274194cf97b0e24602c | Bin 0 -> 17056 bytes .../e1/e1f640f1769d6274194cf97b0e24602c.info | Bin 0 -> 692 bytes .../e2/e210c8bf2e9c6514d90a1bd77586af1f | Bin 0 -> 4313 bytes .../e2/e210c8bf2e9c6514d90a1bd77586af1f.info | Bin 0 -> 625 bytes .../e2/e21bec35f48a44298911b25ead550ce3 | Bin 0 -> 30576 bytes .../e2/e21bec35f48a44298911b25ead550ce3.info | Bin 0 -> 659 bytes .../e2/e2cd16a2d73fe7a4c9affa2b790eb5e0 | Bin 0 -> 10628 bytes .../e2/e2cd16a2d73fe7a4c9affa2b790eb5e0.info | Bin 0 -> 696 bytes .../e3/e3882522a08b6f5459b4dea6f8791278 | Bin 0 -> 7596 bytes .../e3/e3882522a08b6f5459b4dea6f8791278.info | Bin 0 -> 722 bytes .../e3/e3b0f810fdea84e40ab4ba20f256f7e8 | Bin 0 -> 18488 bytes .../e3/e3b0f810fdea84e40ab4ba20f256f7e8.info | Bin 0 -> 2862 bytes .../e4/e4e0b1de1aee400d81ed4273141e7823 | Bin 0 -> 6772 bytes .../e4/e4e0b1de1aee400d81ed4273141e7823.info | Bin 0 -> 707 bytes .../e4/e4e290d31ab7fb54880746bb8f818e0d | Bin 0 -> 8536 bytes .../e4/e4e290d31ab7fb54880746bb8f818e0d.info | Bin 0 -> 674 bytes .../e5/e52de21a22b6dd44c9cc19f810c65059 | Bin 0 -> 14072 bytes .../e5/e52de21a22b6dd44c9cc19f810c65059.info | Bin 0 -> 690 bytes .../e6/e6323ebef616fee4486ee155cd56d191 | Bin 0 -> 8388 bytes .../e6/e6323ebef616fee4486ee155cd56d191.info | Bin 0 -> 689 bytes .../e6/e6413f4090046814d802ddbff9890878 | Bin 0 -> 8652 bytes .../e6/e6413f4090046814d802ddbff9890878.info | Bin 0 -> 667 bytes .../e6/e69259f6ff914146ad610be5491eb44a | Bin 0 -> 6732 bytes .../e6/e69259f6ff914146ad610be5491eb44a.info | Bin 0 -> 665 bytes .../e6/e6a1d1e3d2384453a7371b4a07a41ca4 | Bin 0 -> 4305 bytes .../e6/e6a1d1e3d2384453a7371b4a07a41ca4.info | Bin 0 -> 620 bytes .../e7/e74ddf4132f3401409c824bed60280ee | Bin 0 -> 7384 bytes .../e7/e74ddf4132f3401409c824bed60280ee.info | Bin 0 -> 702 bytes .../e7/e763a90581e2d8143bc9a0e384ce6f0f | Bin 0 -> 8008 bytes .../e7/e763a90581e2d8143bc9a0e384ce6f0f.info | Bin 0 -> 693 bytes .../e7/e7a505b341283e14696e86433a5b1ae9 | Bin 0 -> 6088 bytes .../e7/e7a505b341283e14696e86433a5b1ae9.info | Bin 0 -> 682 bytes .../e8/e801faa3b0dd2478dbe801a2441b679e | Bin 0 -> 7212 bytes .../e8/e801faa3b0dd2478dbe801a2441b679e.info | Bin 0 -> 708 bytes .../e8/e88a766c2b8b47841936c136f4afbba9 | Bin 0 -> 11872 bytes .../e8/e88a766c2b8b47841936c136f4afbba9.info | Bin 0 -> 667 bytes .../e8/e8c30efa89029e447b0dc0efc75b294c | Bin 0 -> 13188 bytes .../e8/e8c30efa89029e447b0dc0efc75b294c.info | Bin 0 -> 695 bytes .../e9/e90cc37a5ccf4a44dbecc5b7172ec512 | Bin 0 -> 4317 bytes .../e9/e90cc37a5ccf4a44dbecc5b7172ec512.info | Bin 0 -> 632 bytes .../e9/e9253e696cd45794d9aec6d4de366b6e | Bin 0 -> 22784 bytes .../e9/e9253e696cd45794d9aec6d4de366b6e.info | Bin 0 -> 673 bytes .../e9/e93ec7eb6de342aabd156833e253f838 | Bin 0 -> 4321 bytes .../e9/e93ec7eb6de342aabd156833e253f838.info | Bin 0 -> 635 bytes .../e9/e9745f6a32442194c8dc5a43e9ab86f9 | Bin 0 -> 4560 bytes .../e9/e9745f6a32442194c8dc5a43e9ab86f9.info | Bin 0 -> 682 bytes .../e9/e9a32780b69dcdb438da3e3f43202f54 | Bin 0 -> 9404 bytes .../e9/e9a32780b69dcdb438da3e3f43202f54.info | Bin 0 -> 692 bytes .../e9/e9cac674d67385249b2805670e618c24 | Bin 0 -> 9352 bytes .../e9/e9cac674d67385249b2805670e618c24.info | Bin 0 -> 670 bytes .../e9/e9df95f53f1c1d0c9199e235d6c42b50 | Bin 0 -> 4640 bytes .../e9/e9df95f53f1c1d0c9199e235d6c42b50.info | Bin 0 -> 649 bytes .../ea/ea28dc637ae40484da709200d3328587 | Bin 0 -> 5748 bytes .../ea/ea28dc637ae40484da709200d3328587.info | Bin 0 -> 727 bytes .../ea/ea5aa18a49e4f29d74984ea0ea11a238 | Bin 0 -> 4309 bytes .../ea/ea5aa18a49e4f29d74984ea0ea11a238.info | Bin 0 -> 594 bytes .../ea/ea5e2240e8a7d9046a651557deec40b2 | Bin 0 -> 8064 bytes .../ea/ea5e2240e8a7d9046a651557deec40b2.info | Bin 0 -> 707 bytes .../ea/ea944378afa086f438b3352ad7b0e835 | Bin 0 -> 6812 bytes .../ea/ea944378afa086f438b3352ad7b0e835.info | Bin 0 -> 673 bytes .../ea/ea998292f45ea494d9e100f5f6362f91 | Bin 0 -> 4313 bytes .../ea/ea998292f45ea494d9e100f5f6362f91.info | Bin 0 -> 625 bytes .../eb/ebc4d20cc106cea49b1df1153f0b3b5e | Bin 0 -> 4361 bytes .../eb/ebc4d20cc106cea49b1df1153f0b3b5e.info | Bin 0 -> 672 bytes .../eb/ebcc5f899d9277642868aeda9a17cbaf | Bin 0 -> 6924 bytes .../eb/ebcc5f899d9277642868aeda9a17cbaf.info | Bin 0 -> 756 bytes .../eb/ebeedaa04bb53e24ba2e7fb6745e3fd3 | Bin 0 -> 6532 bytes .../eb/ebeedaa04bb53e24ba2e7fb6745e3fd3.info | Bin 0 -> 770 bytes .../ec/ec02776fe29df900b897106d61977735 | Bin 0 -> 4724 bytes .../ec/ec02776fe29df900b897106d61977735.info | Bin 0 -> 652 bytes .../ec/ec35c13a8280a8d4e817bc4afd8a95de | Bin 0 -> 7268 bytes .../ec/ec35c13a8280a8d4e817bc4afd8a95de.info | Bin 0 -> 717 bytes .../ec/ec7c645d93308c04d8840982af12101e | Bin 0 -> 83012 bytes .../ec/ec7c645d93308c04d8840982af12101e.info | Bin 0 -> 6186 bytes .../ec/ec817e5e5781e0a4983a1dc8875d1974 | Bin 0 -> 4317 bytes .../ec/ec817e5e5781e0a4983a1dc8875d1974.info | Bin 0 -> 631 bytes .../ec/ece36bb2bc4128d42911bbc757a56860 | Bin 0 -> 4317 bytes .../ec/ece36bb2bc4128d42911bbc757a56860.info | Bin 0 -> 632 bytes .../ed/ed041e68439749a69d0efa0e3d896c2e | Bin 0 -> 18040 bytes .../ed/ed041e68439749a69d0efa0e3d896c2e.info | Bin 0 -> 2839 bytes .../ed/edc553b1b3c8a25438b62783410b26ae | Bin 0 -> 26620 bytes .../ed/edc553b1b3c8a25438b62783410b26ae.info | Bin 0 -> 712 bytes .../ed/edd2a1fe1acbbde43aad39862bb3f4a8 | Bin 0 -> 7776 bytes .../ed/edd2a1fe1acbbde43aad39862bb3f4a8.info | Bin 0 -> 759 bytes .../ed/edd4f4b395430604d935bcf0b14c7d42 | Bin 0 -> 6232 bytes .../ed/edd4f4b395430604d935bcf0b14c7d42.info | Bin 0 -> 699 bytes .../ed/ede0462698a4a5643aa9872c074acd38 | Bin 0 -> 4313 bytes .../ed/ede0462698a4a5643aa9872c074acd38.info | Bin 0 -> 598 bytes .../ee/ee148e281f3c41c5b4ff5f8a5afe5a6c | Bin 0 -> 83004 bytes .../ee/ee148e281f3c41c5b4ff5f8a5afe5a6c.info | Bin 0 -> 5182 bytes .../ee/ee83d5e1ad2ac4c9aa39e3a6f256062e | Bin 0 -> 7440 bytes .../ee/ee83d5e1ad2ac4c9aa39e3a6f256062e.info | Bin 0 -> 707 bytes .../ee/eea34a28297f9bc4c9f4c573bc8d5d1c | Bin 0 -> 5488 bytes .../ee/eea34a28297f9bc4c9f4c573bc8d5d1c.info | Bin 0 -> 725 bytes .../ee/eebde5009793ce948bf5d4c4435b89b9 | Bin 0 -> 14896 bytes .../ee/eebde5009793ce948bf5d4c4435b89b9.info | Bin 0 -> 704 bytes .../ef/ef4c81c9368d5a340b14c2fec1cad345 | Bin 0 -> 24744 bytes .../ef/ef4c81c9368d5a340b14c2fec1cad345.info | Bin 0 -> 693 bytes .../ef/ef563c5a6ecf64d4193dc144cb7d472a | Bin 0 -> 6640 bytes .../ef/ef563c5a6ecf64d4193dc144cb7d472a.info | Bin 0 -> 764 bytes .../ef/ef5fa6e2005defb4ab5142723827b58e | Bin 0 -> 7172 bytes .../ef/ef5fa6e2005defb4ab5142723827b58e.info | Bin 0 -> 684 bytes .../ef/ef97f39912c138b4cabdccedfb24093b | Bin 0 -> 8772 bytes .../ef/ef97f39912c138b4cabdccedfb24093b.info | Bin 0 -> 686 bytes .../ef/efad3ddb7270ac241b9b1357ec5ee2f2 | Bin 0 -> 4325 bytes .../ef/efad3ddb7270ac241b9b1357ec5ee2f2.info | Bin 0 -> 637 bytes .../ef/efcf753a96a07b24dbe5f23a8ad5963d | Bin 0 -> 4305 bytes .../ef/efcf753a96a07b24dbe5f23a8ad5963d.info | Bin 0 -> 617 bytes .../ef/effb76e1937b45ff8adf45e51a4c08cf | Bin 0 -> 15848 bytes .../ef/effb76e1937b45ff8adf45e51a4c08cf.info | Bin 0 -> 680 bytes .../f0/f06555f75b070af458a003d92f9efb00 | Bin 0 -> 4448 bytes .../f0/f06555f75b070af458a003d92f9efb00.info | Bin 0 -> 668 bytes .../f0/f079e3afd077fb94fa2bda74d6409499 | Bin 0 -> 5496 bytes .../f0/f079e3afd077fb94fa2bda74d6409499.info | Bin 0 -> 703 bytes .../f0/f0f13f2ab3d6d13cfc6e4656824bfca8 | Bin 0 -> 4644 bytes .../f0/f0f13f2ab3d6d13cfc6e4656824bfca8.info | Bin 0 -> 646 bytes .../f1/f136f1f122a53c64c9af51baecaa9c96 | Bin 0 -> 4345 bytes .../f1/f136f1f122a53c64c9af51baecaa9c96.info | Bin 0 -> 8856 bytes .../f1/f15cbb987069826429540d0ea0937442 | Bin 0 -> 6576 bytes .../f1/f15cbb987069826429540d0ea0937442.info | Bin 0 -> 731 bytes .../f1/f1605f5534186904fa2c4c42acbfe01e | Bin 0 -> 6296 bytes .../f1/f1605f5534186904fa2c4c42acbfe01e.info | Bin 0 -> 659 bytes .../f1/f16e09785c984c445a0467e30f845636 | Bin 0 -> 9200 bytes .../f1/f16e09785c984c445a0467e30f845636.info | Bin 0 -> 698 bytes .../f1/f1b6399349763114d9361bc6dfcd025b | Bin 0 -> 6020 bytes .../f1/f1b6399349763114d9361bc6dfcd025b.info | Bin 0 -> 734 bytes .../f1/f1ea944dcf8849ebab391e461b99ccb7 | Bin 0 -> 14108 bytes .../f1/f1ea944dcf8849ebab391e461b99ccb7.info | Bin 0 -> 697 bytes .../f3/f33e570b8b9af1048b80a27e7848cb09 | Bin 0 -> 7436 bytes .../f3/f33e570b8b9af1048b80a27e7848cb09.info | Bin 0 -> 731 bytes .../f3/f3a361a6ad1aff14ba8f48976e94ad76 | Bin 0 -> 5520 bytes .../f3/f3a361a6ad1aff14ba8f48976e94ad76.info | Bin 0 -> 747 bytes .../f3/f3e1b3cbf3fac6a459b1a602167ad311 | Bin 0 -> 6136 bytes .../f3/f3e1b3cbf3fac6a459b1a602167ad311.info | Bin 0 -> 752 bytes .../f4/f445ca0c614a846449fcd8ae648c24e2 | Bin 0 -> 5400 bytes .../f4/f445ca0c614a846449fcd8ae648c24e2.info | Bin 0 -> 705 bytes .../f4/f4688fdb7df04437aeb418b961361dc5 | Bin 0 -> 26732 bytes .../f4/f4688fdb7df04437aeb418b961361dc5.info | Bin 0 -> 800 bytes .../f4/f4935fb862d54980b1bcbca942962642 | Bin 0 -> 8192 bytes .../f4/f4935fb862d54980b1bcbca942962642.info | Bin 0 -> 722 bytes .../f4/f49bbe06ffa5ae24abe32abdab430c24 | Bin 0 -> 4724 bytes .../f4/f49bbe06ffa5ae24abe32abdab430c24.info | Bin 0 -> 621 bytes .../f4/f4f988528bbbb0846a4cb50efb4587a5 | Bin 0 -> 14312 bytes .../f4/f4f988528bbbb0846a4cb50efb4587a5.info | Bin 0 -> 705 bytes .../f5/f525580684527b147b70cf94aaa70dbc | Bin 0 -> 4317 bytes .../f5/f525580684527b147b70cf94aaa70dbc.info | Bin 0 -> 628 bytes .../f5/f5600e6ae5a1464da659eca36bef9d64 | Bin 0 -> 4313 bytes .../f5/f5600e6ae5a1464da659eca36bef9d64.info | Bin 0 -> 626 bytes .../f5/f5a0cc9645f0e2d4fb816156dcf3f4dd | Bin 0 -> 7048 bytes .../f5/f5a0cc9645f0e2d4fb816156dcf3f4dd.info | Bin 0 -> 688 bytes .../f6/f601c0d674119f74db9c15166b3a58c4 | Bin 0 -> 4317 bytes .../f6/f601c0d674119f74db9c15166b3a58c4.info | Bin 0 -> 630 bytes .../f6/f603edd7163537f44927ad2808147a25 | Bin 0 -> 12092 bytes .../f6/f603edd7163537f44927ad2808147a25.info | Bin 0 -> 712 bytes .../f6/f648a3df441ef4243bc2d3b59166e6ca | Bin 0 -> 7312 bytes .../f6/f648a3df441ef4243bc2d3b59166e6ca.info | Bin 0 -> 639 bytes .../f6/f65646ef159c91441bff704a5f7f419b | Bin 0 -> 15388 bytes .../f6/f65646ef159c91441bff704a5f7f419b.info | Bin 0 -> 714 bytes .../f6/f66454863bc106549a6b53849ee63b41 | Bin 0 -> 4936 bytes .../f6/f66454863bc106549a6b53849ee63b41.info | Bin 0 -> 614 bytes .../f6/f68c7f7359094f045930a108c444e7a4 | Bin 0 -> 4337 bytes .../f6/f68c7f7359094f045930a108c444e7a4.info | Bin 0 -> 647 bytes .../f6/f695b5f9415c40b39ae877eaff41c96e | Bin 0 -> 20468 bytes .../f6/f695b5f9415c40b39ae877eaff41c96e.info | Bin 0 -> 680 bytes .../f6/f6ba30c492ac73742bc0cfee6817045a | Bin 0 -> 6792 bytes .../f6/f6ba30c492ac73742bc0cfee6817045a.info | Bin 0 -> 694 bytes .../f6/f6bb32665bcc91b41a7177fd6af08ad6 | Bin 0 -> 7240 bytes .../f6/f6bb32665bcc91b41a7177fd6af08ad6.info | Bin 0 -> 702 bytes .../f6/f6bd368ab00d75c459e2582e017191e6 | Bin 0 -> 14912 bytes .../f6/f6bd368ab00d75c459e2582e017191e6.info | Bin 0 -> 695 bytes .../f6/f6c189a159d3bde4c964cee562e508ea | Bin 0 -> 6204 bytes .../f6/f6c189a159d3bde4c964cee562e508ea.info | Bin 0 -> 748 bytes .../f6/f6d64d8648793944dbadfd71f0f4b0a1 | Bin 0 -> 4317 bytes .../f6/f6d64d8648793944dbadfd71f0f4b0a1.info | Bin 0 -> 631 bytes .../f7/f700f31b2e40d7f4bb69753fdbbbc2b5 | Bin 0 -> 9952 bytes .../f7/f700f31b2e40d7f4bb69753fdbbbc2b5.info | Bin 0 -> 670 bytes .../f7/f73fc901e4b0f2d4daf11f46506054ba | Bin 0 -> 5776 bytes .../f7/f73fc901e4b0f2d4daf11f46506054ba.info | Bin 0 -> 759 bytes .../f7/f779e779d62b5ca49b658236c337845d | Bin 0 -> 13156 bytes .../f7/f779e779d62b5ca49b658236c337845d.info | Bin 0 -> 676 bytes .../f7/f7852b99951997645ae7adaac5f0b083 | Bin 0 -> 19880 bytes .../f7/f7852b99951997645ae7adaac5f0b083.info | Bin 0 -> 736 bytes .../f7/f7a8357347c80dc69c08d0b1a05e2122 | Bin 0 -> 4664 bytes .../f7/f7a8357347c80dc69c08d0b1a05e2122.info | Bin 0 -> 653 bytes .../f7/f7e61a6fdb34813479ec9e958a030910 | Bin 0 -> 5688 bytes .../f7/f7e61a6fdb34813479ec9e958a030910.info | Bin 0 -> 688 bytes .../f7/f7fed0d9d0f7a7f41a8525aa79e790b1 | Bin 0 -> 8204 bytes .../f7/f7fed0d9d0f7a7f41a8525aa79e790b1.info | Bin 0 -> 726 bytes .../f8/f817a38900380be47942905e17e7d39b | Bin 0 -> 23284 bytes .../f8/f817a38900380be47942905e17e7d39b.info | Bin 0 -> 681 bytes .../f8/f867743975592a743a3581ff042bcc25 | Bin 0 -> 23084 bytes .../f8/f867743975592a743a3581ff042bcc25.info | Bin 0 -> 658 bytes .../f8/f8730045d7da0f84cb11c0d868899577 | Bin 0 -> 4317 bytes .../f8/f8730045d7da0f84cb11c0d868899577.info | Bin 0 -> 629 bytes .../f8/f8964ef46e1d446dc9eb17a36a3e1f14 | Bin 0 -> 5632 bytes .../f8/f8964ef46e1d446dc9eb17a36a3e1f14.info | Bin 0 -> 728 bytes .../f8/f8e6a2d47aba4c6c9b3c5a72d9f48da5 | Bin 0 -> 4321 bytes .../f8/f8e6a2d47aba4c6c9b3c5a72d9f48da5.info | Bin 0 -> 639 bytes .../f8/f8ed4321a98682942b9980996131cf26 | Bin 0 -> 4345 bytes .../f8/f8ed4321a98682942b9980996131cf26.info | Bin 0 -> 659 bytes .../f9/f91a00d2dca52b843b2d50ccf750737d | Bin 0 -> 5372 bytes .../f9/f91a00d2dca52b843b2d50ccf750737d.info | Bin 0 -> 617 bytes .../f9/f944311c8fff2479fa3ba741f6039fc8 | Bin 0 -> 5792 bytes .../f9/f944311c8fff2479fa3ba741f6039fc8.info | Bin 0 -> 693 bytes .../f9/f96d0ea807c081145a1170ed1b6d71e0 | Bin 0 -> 5644 bytes .../f9/f96d0ea807c081145a1170ed1b6d71e0.info | Bin 0 -> 746 bytes .../f9/f9bd02a3a916be64c9b47b1305149423 | Bin 0 -> 9696 bytes .../f9/f9bd02a3a916be64c9b47b1305149423.info | Bin 0 -> 697 bytes .../f9/f9d8c8b21846a654092a24f25aa41421 | Bin 0 -> 10960 bytes .../f9/f9d8c8b21846a654092a24f25aa41421.info | Bin 0 -> 698 bytes .../fa/fa27413e9edb06a6058d6c894eca0338 | Bin 0 -> 5044 bytes .../fa/fa27413e9edb06a6058d6c894eca0338.info | Bin 0 -> 662 bytes .../fa/fa423365b1ce06a4dbdc6fb4a8597bfa | Bin 0 -> 4325 bytes .../fa/fa423365b1ce06a4dbdc6fb4a8597bfa.info | Bin 0 -> 638 bytes .../fa/fa6bd40a216346b783a4cce741d277a5 | Bin 0 -> 18052 bytes .../fa/fa6bd40a216346b783a4cce741d277a5.info | Bin 0 -> 2850 bytes .../fb/fb27f3049fe06c246803a4a4c5b7fda3 | Bin 0 -> 8796 bytes .../fb/fb27f3049fe06c246803a4a4c5b7fda3.info | Bin 0 -> 689 bytes .../fb/fb461734117c80c43ab595d699f801eb | Bin 0 -> 7324 bytes .../fb/fb461734117c80c43ab595d699f801eb.info | Bin 0 -> 688 bytes .../fb/fb5730e24283d0c489e5c7d0bee023d9 | Bin 0 -> 18488 bytes .../fb/fb5730e24283d0c489e5c7d0bee023d9.info | Bin 0 -> 2893 bytes .../fb/fb593906b7b6d824087dcaebf6c082e0 | Bin 0 -> 5556 bytes .../fb/fb593906b7b6d824087dcaebf6c082e0.info | Bin 0 -> 735 bytes .../fb/fb660d86885d89a499a31c6ab6f26269 | Bin 0 -> 5744 bytes .../fb/fb660d86885d89a499a31c6ab6f26269.info | Bin 0 -> 687 bytes .../fc/fc34cd6ea308f3940a729e1a44cd0e82 | Bin 0 -> 6188 bytes .../fc/fc34cd6ea308f3940a729e1a44cd0e82.info | Bin 0 -> 654 bytes .../fc/fc3a810351931f5e6183e16b9beb5563 | Bin 0 -> 4329 bytes .../fc/fc3a810351931f5e6183e16b9beb5563.info | Bin 0 -> 606 bytes .../fc/fc46f91ea1e8e4ca2ab693fef9156dbe | Bin 0 -> 9736 bytes .../fc/fc46f91ea1e8e4ca2ab693fef9156dbe.info | Bin 0 -> 726 bytes .../fc/fc748d99f1f0d484a811a566fc7915ec | Bin 0 -> 6592 bytes .../fc/fc748d99f1f0d484a811a566fc7915ec.info | Bin 0 -> 687 bytes .../fc/fc8d686a4c18b8d49bb1db4150de0459 | Bin 0 -> 8664 bytes .../fc/fc8d686a4c18b8d49bb1db4150de0459.info | Bin 0 -> 657 bytes .../fc/fcae021c30eccf74790a4e816ba97c19 | Bin 0 -> 9536 bytes .../fc/fcae021c30eccf74790a4e816ba97c19.info | Bin 0 -> 705 bytes .../fc/fcb9be00baf924c4183fc0313e6185c5 | Bin 0 -> 4800 bytes .../fc/fcb9be00baf924c4183fc0313e6185c5.info | Bin 0 -> 628 bytes .../fc/fcc60c1d6bb544d9b712b652f418ff3a | Bin 0 -> 12732 bytes .../fc/fcc60c1d6bb544d9b712b652f418ff3a.info | Bin 0 -> 713 bytes .../fc/fcd66bf74cbeb264aa99679c7df84427 | Bin 0 -> 35144 bytes .../fc/fcd66bf74cbeb264aa99679c7df84427.info | Bin 0 -> 680 bytes .../fd/fd0a39b4d296d4d509b4f1dbd08d0630 | Bin 0 -> 4321 bytes .../fd/fd0a39b4d296d4d509b4f1dbd08d0630.info | Bin 0 -> 631 bytes .../fd/fd57cf917f61bbb42b8f030436426ddd | Bin 0 -> 5604 bytes .../fd/fd57cf917f61bbb42b8f030436426ddd.info | Bin 0 -> 667 bytes .../fd/fd6ede1d2f47ab146b2ec0a3969a37cc | Bin 0 -> 10820 bytes .../fd/fd6ede1d2f47ab146b2ec0a3969a37cc.info | Bin 0 -> 721 bytes .../fd/fd871a8be47119612f7c254e96a822b7 | Bin 0 -> 4309 bytes .../fd/fd871a8be47119612f7c254e96a822b7.info | Bin 0 -> 595 bytes .../fd/fda82b5ca7a4c5f40b497c4f5f4bd950 | Bin 0 -> 21908 bytes .../fd/fda82b5ca7a4c5f40b497c4f5f4bd950.info | Bin 0 -> 655 bytes .../fd/fdb35ef8fc437e14fa4b6c74a0609e86 | Bin 0 -> 5928 bytes .../fd/fdb35ef8fc437e14fa4b6c74a0609e86.info | Bin 0 -> 752 bytes .../fd/fdd19c82588da3e498a0c98951efa6c4 | Bin 0 -> 16844 bytes .../fd/fdd19c82588da3e498a0c98951efa6c4.info | Bin 0 -> 690 bytes .../fd/fde0d25a170598d46a0b9dc16b4527a5 | Bin 0 -> 6080 bytes .../fd/fde0d25a170598d46a0b9dc16b4527a5.info | Bin 0 -> 713 bytes .../fe/fe03a7b0ba57a4d488b6c327ae16c335 | Bin 0 -> 10036 bytes .../fe/fe03a7b0ba57a4d488b6c327ae16c335.info | Bin 0 -> 679 bytes .../fe/fe4aef60e4ace544c8430da8ef8acba2 | Bin 0 -> 5396 bytes .../fe/fe4aef60e4ace544c8430da8ef8acba2.info | Bin 0 -> 722 bytes .../fe/fe87c0e1cc204ed48ad3b37840f39efc | Bin 0 -> 79908 bytes .../fe/fe87c0e1cc204ed48ad3b37840f39efc.info | Bin 0 -> 646 bytes .../fe/fea12beeeb5a7a448b5e60f50e40975d | Bin 0 -> 28924 bytes .../fe/fea12beeeb5a7a448b5e60f50e40975d.info | Bin 0 -> 683 bytes .../fe/fea49a0730244a98bf1087f7ca9410a8 | Bin 0 -> 29512 bytes .../fe/fea49a0730244a98bf1087f7ca9410a8.info | Bin 0 -> 680 bytes .../fe/fed9dda667cab45d398d06402bba03f4 | Bin 0 -> 15504 bytes .../fe/fed9dda667cab45d398d06402bba03f4.info | Bin 0 -> 691 bytes .../fe/fedb0f9e5006b1943abae52f52f08a1a | Bin 0 -> 6812 bytes .../fe/fedb0f9e5006b1943abae52f52f08a1a.info | Bin 0 -> 736 bytes .../ff/ff67c526455160f4690a44f74dee4cbe | Bin 0 -> 5332 bytes .../ff/ff67c526455160f4690a44f74dee4cbe.info | Bin 0 -> 690 bytes .../ff/ff97302ee78d6ad478b433ec557ee303 | Bin 0 -> 4317 bytes .../ff/ff97302ee78d6ad478b433ec557ee303.info | Bin 0 -> 631 bytes .../ff/ffb335140c799c4408411d81789fb05c | Bin 0 -> 5956 bytes .../ff/ffb335140c799c4408411d81789fb05c.info | Bin 0 -> 752 bytes .../ff/ffc6271f08270b64ca0aae9c49235d81 | Bin 0 -> 4948 bytes .../ff/ffc6271f08270b64ca0aae9c49235d81.info | Bin 0 -> 646 bytes .../ff/ffcbe86028d681144b703991885c535a | Bin 0 -> 4313 bytes .../ff/ffcbe86028d681144b703991885c535a.info | Bin 0 -> 626 bytes ...hadercompiler-UnityShaderCompiler.exe0.log | 2 + ...hadercompiler-UnityShaderCompiler.exe1.log | 10 + ...hadercompiler-UnityShaderCompiler.exe2.log | 10 + ...hadercompiler-UnityShaderCompiler.exe3.log | 12 + ...hadercompiler-UnityShaderCompiler.exe4.log | 12 + ...hadercompiler-UnityShaderCompiler.exe5.log | 10 + ...hadercompiler-UnityShaderCompiler.exe6.log | 6 + ...hadercompiler-UnityShaderCompiler.exe7.log | 6 + Logs/Packages-Update.log | 18 + Packages/manifest.json | 44 + ProjectSettings/AudioManager.asset | Bin 0 -> 4144 bytes ProjectSettings/ClusterInputManager.asset | Bin 0 -> 4104 bytes ProjectSettings/DynamicsManager.asset | 34 + ProjectSettings/EditorBuildSettings.asset | Bin 0 -> 4108 bytes ProjectSettings/EditorSettings.asset | Bin 0 -> 4208 bytes ProjectSettings/GraphicsSettings.asset | Bin 0 -> 4406 bytes ProjectSettings/InputManager.asset | Bin 0 -> 5520 bytes ProjectSettings/NavMeshAreas.asset | Bin 0 -> 4464 bytes ProjectSettings/Physics2DSettings.asset | 56 + ProjectSettings/PresetManager.asset | Bin 0 -> 4104 bytes ProjectSettings/ProjectSettings.asset | 651 + ProjectSettings/ProjectVersion.txt | 2 + ProjectSettings/QualitySettings.asset | 231 + ProjectSettings/TagManager.asset | 44 + ProjectSettings/TimeManager.asset | Bin 0 -> 4116 bytes ProjectSettings/UnityConnectSettings.asset | Bin 0 -> 4328 bytes ProjectSettings/VFXManager.asset | Bin 0 -> 4116 bytes ProjectSettings/XRSettings.asset | 10 + 3583 files changed, 101769 insertions(+) create mode 100644 Assets/Materials.meta create mode 100644 Assets/Materials/Prototype Grey.mat create mode 100644 Assets/Materials/Prototype Grey.mat.meta create mode 100644 Assets/Scenes.meta create mode 100644 Assets/Scenes/Test Scene.unity create mode 100644 Assets/Scenes/Test Scene.unity.meta create mode 100644 Assets/Scripts.meta create mode 100644 Assets/Scripts/CameraController.cs create mode 100644 Assets/Scripts/CameraController.cs.meta create mode 100644 Assets/Scripts/PlayerController.cs create mode 100644 Assets/Scripts/PlayerController.cs.meta create mode 100644 Library/APIUpdater/project-dependencies.graph create mode 100644 Library/AnnotationManager create mode 100644 Library/AssetImportState create mode 100644 Library/BuildPlayer.prefs create mode 100644 Library/BuildSettings.asset create mode 100644 Library/CurrentLayout-default.dwlt create mode 100644 Library/CurrentMaximizeLayout.dwlt create mode 100644 Library/EditorUserBuildSettings.asset create mode 100644 Library/EditorUserSettings.asset create mode 100644 Library/InspectorExpandedItems.asset create mode 100644 Library/LastSceneManagerSetup.txt create mode 100644 Library/LibraryFormatVersion.txt create mode 100644 Library/MonoManager.asset create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/.npmignore create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/CHANGELOG.md create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/CHANGELOG.md.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/DEPENDENCIES.md create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/DEPENDENCIES.md.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Documentation~/collab-proxy.md create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/AssemblyInfo.cs create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/AssemblyInfo.cs.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Bootstrap.cs create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Bootstrap.cs.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabAnalytics.cs create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabAnalytics.cs.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabHistoryWindow.cs create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabHistoryWindow.cs.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabToolbarButton.cs create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabToolbarButton.cs.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabToolbarWindow.cs create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabToolbarWindow.cs.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Presenters.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Presenters/CollabHistoryPresenter.cs create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Presenters/CollabHistoryPresenter.cs.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/BuildStatusButton.cs create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/BuildStatusButton.cs.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryDropDown.cs create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryDropDown.cs.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryDropDownItem.cs create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryDropDownItem.cs.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryItem.cs create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryItem.cs.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryItemFactory.cs create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryItemFactory.cs.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryRevisionLine.cs create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryRevisionLine.cs.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/HistoryProgressSpinner.cs create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/HistoryProgressSpinner.cs.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/ICollabHistoryItemFactory.cs create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/ICollabHistoryItemFactory.cs.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/PagedListView.cs create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/PagedListView.cs.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/StatusView.cs create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/StatusView.cs.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryCommon.uss create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryCommon.uss.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryDark.uss create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryDark.uss.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryLight.uss create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryLight.uss.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Unity.CollabProxy.Editor.asmdef create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Unity.CollabProxy.Editor.asmdef.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/LICENSE.md create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/LICENSE.md.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/README.md create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/README.md.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests/Editor.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests/Editor/HistoryTests.cs create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests/Editor/HistoryTests.cs.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests/Editor/Unity.CollabProxy.EditorTests.asmdef create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests/Editor/Unity.CollabProxy.EditorTests.asmdef.meta create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/package.json create mode 100644 Library/PackageCache/com.unity.collab-proxy@1.2.16/package.json.meta create mode 100644 Library/PackageCache/com.unity.ext.nunit@1.0.0/.gitlab-ci.yml create mode 100644 Library/PackageCache/com.unity.ext.nunit@1.0.0/CHANGELOG.md create mode 100644 Library/PackageCache/com.unity.ext.nunit@1.0.0/CHANGELOG.md.meta create mode 100644 Library/PackageCache/com.unity.ext.nunit@1.0.0/Documentation~/ext.nunit.md create mode 100644 Library/PackageCache/com.unity.ext.nunit@1.0.0/LICENSE.md create mode 100644 Library/PackageCache/com.unity.ext.nunit@1.0.0/LICENSE.md.meta create mode 100644 Library/PackageCache/com.unity.ext.nunit@1.0.0/README.md create mode 100644 Library/PackageCache/com.unity.ext.nunit@1.0.0/README.md.meta create mode 100644 Library/PackageCache/com.unity.ext.nunit@1.0.0/net35.meta create mode 100644 Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom.meta create mode 100644 Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/This is a custom build DONT include.txt create mode 100644 Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/This is a custom build DONT include.txt.meta create mode 100644 Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.dll create mode 100644 Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.dll.mdb create mode 100644 Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.dll.mdb.meta create mode 100644 Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.dll.meta create mode 100644 Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.pdb create mode 100644 Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.pdb.meta create mode 100644 Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.xml create mode 100644 Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.xml.meta create mode 100644 Library/PackageCache/com.unity.ext.nunit@1.0.0/package.json create mode 100644 Library/PackageCache/com.unity.ext.nunit@1.0.0/package.json.meta create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/.editorconfig create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/CHANGELOG.md create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/CHANGELOG.md.meta create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/CONTRIBUTING.md create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/CONTRIBUTING.md.meta create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Documentation~/README.md create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/LICENSE.md create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/LICENSE.md.meta create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider.meta create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor.meta create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Discovery.cs create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Discovery.cs.meta create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/EditorPluginInterop.cs create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/EditorPluginInterop.cs.meta create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/LoggingLevel.cs create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/LoggingLevel.cs.meta create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/PluginSettings.cs create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/PluginSettings.cs.meta create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/ProjectGeneration.cs create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/ProjectGeneration.cs.meta create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderInitializer.cs create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderInitializer.cs.meta create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderScriptEditor.cs create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderScriptEditor.cs.meta create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderScriptEditorData.cs create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderScriptEditorData.cs.meta create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util.meta create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/FileSystemUtil.cs create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/FileSystemUtil.cs.meta create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/LibcNativeInterop.cs create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/LibcNativeInterop.cs.meta create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/UnityUtils.cs create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/UnityUtils.cs.meta create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/com.unity.ide.rider.asmdef create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/com.unity.ide.rider.asmdef.meta create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/package.json create mode 100644 Library/PackageCache/com.unity.ide.rider@1.1.0/package.json.meta create mode 100644 Library/PackageCache/com.unity.ide.vscode@1.1.0/CHANGELOG.md create mode 100644 Library/PackageCache/com.unity.ide.vscode@1.1.0/CHANGELOG.md.meta create mode 100644 Library/PackageCache/com.unity.ide.vscode@1.1.0/CONTRIBUTING.md create mode 100644 Library/PackageCache/com.unity.ide.vscode@1.1.0/CONTRIBUTING.md.meta create mode 100644 Library/PackageCache/com.unity.ide.vscode@1.1.0/Documentation~/README.md create mode 100644 Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor.meta create mode 100644 Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/ProjectGeneration.cs create mode 100644 Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/ProjectGeneration.cs.meta create mode 100644 Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/Unity.com.unity.vscode.Editor.asmdef create mode 100644 Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/Unity.com.unity.vscode.Editor.asmdef.meta create mode 100644 Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/Utility.cs create mode 100644 Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/Utility.cs.meta create mode 100644 Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/VSCodeDiscovery.cs create mode 100644 Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/VSCodeDiscovery.cs.meta create mode 100644 Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/VSCodeScriptEditor.cs create mode 100644 Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/VSCodeScriptEditor.cs.meta create mode 100644 Library/PackageCache/com.unity.ide.vscode@1.1.0/LICENSE.md create mode 100644 Library/PackageCache/com.unity.ide.vscode@1.1.0/LICENSE.md.meta create mode 100644 Library/PackageCache/com.unity.ide.vscode@1.1.0/package.json create mode 100644 Library/PackageCache/com.unity.ide.vscode@1.1.0/package.json.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/CHANGELOG.md create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/CHANGELOG.md.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/CONTRIBUTING.md create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/CONTRIBUTING.md.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/Documentation~/PlaymodeTestFramework.md create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/Documentation~/UnityTestRunner-0.png create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/Documentation~/UnityTestRunner-1.png create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/Documentation~/UnityTestRunner-2.png create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/Documentation~/UnityTestRunner-3.png create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/Documentation~/UnityTestRunner-4.png create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/Documentation~/com.unity.test-framework.md create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/LICENSE.md create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/LICENSE.md.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksDelegator.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksDelegator.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksDelegatorListener.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksDelegatorListener.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksHolder.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksHolder.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ExecutionSettings.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ExecutionSettings.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/Filter.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/Filter.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ICallbacks.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ICallbacks.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestAdaptor.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestAdaptor.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestAdaptorFactory.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestAdaptorFactory.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestResultAdaptor.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestResultAdaptor.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestRunSettings.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestRunSettings.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestRunnerApi.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestRunnerApi.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/RunState.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/RunState.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestAdaptor.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestAdaptor.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestAdaptorFactory.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestAdaptorFactory.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestLauncherFactory.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestLauncherFactory.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestMode.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestMode.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestResultAdaptor.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestResultAdaptor.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestRunData.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestRunData.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestRunnerApi.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestRunnerApi.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestStatus.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestStatus.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/AssemblyInfo.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/AssemblyInfo.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/CommandLineOption.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/CommandLineOption.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/CommandLineOptionSet.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/CommandLineOptionSet.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/ICommandLineOption.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/ICommandLineOption.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/Executer.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/Executer.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ExecutionSettings.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ExecutionSettings.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ExitCallbacks.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ExitCallbacks.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ISettingsBuilder.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ISettingsBuilder.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/LogSavingCallbacks.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/LogSavingCallbacks.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/LogWriter.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/LogWriter.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ResultsSavingCallbacks.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ResultsSavingCallbacks.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ResultsWriter.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ResultsWriter.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/RunData.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/RunData.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/RunSettings.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/RunSettings.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/SettingsBuilder.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/SettingsBuilder.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/SetupException.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/SetupException.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/TestStarter.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/TestStarter.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/TimeoutCallbacks.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/TimeoutCallbacks.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/AssetsDatabaseHelper.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/AssetsDatabaseHelper.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/GuiHelper.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/GuiHelper.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/IAssetsDatabaseHelper.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/IAssetsDatabaseHelper.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/IGuiHelper.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/IGuiHelper.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/RenderingOptions.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/RenderingOptions.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/ResultSummarizer.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/ResultSummarizer.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/TestFilterSettings.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/TestFilterSettings.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/TestTreeViewBuilder.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/TestTreeViewBuilder.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListGuiHelper.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListGuiHelper.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/Icons.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/Icons.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestListTreeViewDataSource.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestListTreeViewDataSource.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestListTreeViewGUI.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestListTreeViewGUI.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestTreeViewItem.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestTreeViewItem.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestRunnerResult.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestRunnerResult.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestRunnerUIFilter.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestRunnerUIFilter.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/EditModeTestListGUI.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/EditModeTestListGUI.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/PlayModeTestListGUI.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/PlayModeTestListGUI.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/TestListGUIBase.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/TestListGUIBase.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension/Attributes.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension/Attributes/AssetPipelineIgnore.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension/Attributes/AssetPipelineIgnore.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension/TestRunnerStateSerializer.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension/TestRunnerStateSerializer.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/RequireApiProfileAttribute.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/RequireApiProfileAttribute.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/RequirePlatformSupportAttribute.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/RequirePlatformSupportAttribute.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestBuildAssemblyFilter.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestBuildAssemblyFilter.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/AttributeFinderBase.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/AttributeFinderBase.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/EditModeLauncher.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/EditModeLauncher.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/EditModeLauncherContextSettings.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/EditModeLauncherContextSettings.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/AndroidPlatformSetup.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/AndroidPlatformSetup.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/ApplePlatformSetup.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/ApplePlatformSetup.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/IPlatformSetup.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/IPlatformSetup.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/LuminPlatformSetup.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/LuminPlatformSetup.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/PlatformSpecificSetup.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/PlatformSpecificSetup.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/SwitchPlatformSetup.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/SwitchPlatformSetup.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/UwpPlatformSetup.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/UwpPlatformSetup.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/XboxOnePlatformSetup.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/XboxOnePlatformSetup.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncher.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncher.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncherBuildOptions.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncherBuildOptions.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncherContextSettings.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncherContextSettings.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlaymodeLauncher.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlaymodeLauncher.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PostbuildCleanupAttributeFinder.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PostbuildCleanupAttributeFinder.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PrebuildSetupAttributeFinder.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PrebuildSetupAttributeFinder.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemotePlayerLogController.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemotePlayerLogController.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemotePlayerTestController.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemotePlayerTestController.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemoteTestResultReciever.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemoteTestResultReciever.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RuntimeTestLauncherBase.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RuntimeTestLauncherBase.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/TestLauncherBase.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/TestLauncherBase.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestResultSerializer.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestResultSerializer.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/EditModeRunnerCallback.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/EditModeRunnerCallback.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallback.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallback.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallbackData.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallbackData.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallbackInitializer.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallbackInitializer.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/TestRunnerCallback.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/TestRunnerCallback.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/WindowResultUpdater.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/WindowResultUpdater.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditModePCHelper.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditModePCHelper.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditModeRunner.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditModeRunner.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditmodeWorkItemFactory.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditmodeWorkItemFactory.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditorEnumeratorTestWorkItem.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditorEnumeratorTestWorkItem.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EnumeratorStepHelper.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EnumeratorStepHelper.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/EnterPlayMode.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/EnterPlayMode.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/ExitPlayMode.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/ExitPlayMode.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/RecompileScripts.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/RecompileScripts.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/WaitForDomainReload.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/WaitForDomainReload.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/TestFileCleanupVerifier.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/TestFileCleanupVerifier.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/CachingTestListProvider.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/CachingTestListProvider.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorAssembliesProxy.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorAssembliesProxy.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorAssemblyWrapper.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorAssemblyWrapper.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorCompilationInterfaceProxy.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorCompilationInterfaceProxy.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorLoadedTestAssemblyProvider.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorLoadedTestAssemblyProvider.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/IEditorAssembliesProxy.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/IEditorAssembliesProxy.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/IEditorCompilationInterfaceProxy.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/IEditorCompilationInterfaceProxy.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListCache.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListCache.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListCacheData.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListCacheData.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListProvider.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListProvider.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListCache.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListCache.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListCacheData.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListCacheData.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListJob.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListJob.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListProvider.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListProvider.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunnerWindow.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunnerWindow.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunnerWindowSettings.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunnerWindowSettings.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/ITestSettings.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/ITestSettings.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/ITestSettingsDeserializer.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/ITestSettingsDeserializer.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/TestSettings.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/TestSettings.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/TestSettingsDeserializer.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/TestSettingsDeserializer.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityEditor.TestRunner.asmdef create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityEditor.TestRunner.asmdef.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/AssemblyCompilationErrorsMessage.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/AssemblyCompilationErrorsMessage.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/ITestRunnerApiMapper.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/ITestRunnerApiMapper.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/IUtpLogger.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/IUtpLogger.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/IUtpMessageReporter.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/IUtpMessageReporter.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/Message.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/Message.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestFinishedMessage.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestFinishedMessage.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestPlanMessage.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestPlanMessage.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestRunnerApiMapper.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestRunnerApiMapper.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestStartedMessage.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestStartedMessage.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestState.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestState.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UnityTestProtocolListener.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UnityTestProtocolListener.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UnityTestProtocolStarter.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UnityTestProtocolStarter.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UtpDebuglogger.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UtpDebuglogger.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UtpMessageReporter.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UtpMessageReporter.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/AssemblyInfo.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/AssemblyInfo.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/AllocatingGCMemoryConstraint.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/AllocatingGCMemoryConstraint.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/ConstraintsExtensions.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/ConstraintsExtensions.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/InvalidSignatureException.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/InvalidSignatureException.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/Is.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/Is.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogAssert.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogAssert.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/ILogScope.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/ILogScope.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogEvent.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogEvent.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogMatch.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogMatch.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogScope.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogScope.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnexpectedLogMessageException.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnexpectedLogMessageException.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnhandledLogMessageException.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnhandledLogMessageException.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnityTestTimeoutException.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnityTestTimeoutException.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/ActionDelegator.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/ActionDelegator.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/TestEnumerator.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/TestEnumerator.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityCombinatorialStrategy.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityCombinatorialStrategy.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityPlatformAttribute.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityPlatformAttribute.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnitySetUpAttribute.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnitySetUpAttribute.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityTearDownAttribute.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityTearDownAttribute.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityTestAttribute.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityTestAttribute.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/BaseDelegator.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/BaseDelegator.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/BeforeAfterTestCommandBase.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/BeforeAfterTestCommandBase.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/BeforeAfterTestCommandState.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/BeforeAfterTestCommandState.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableApplyChangesToContextCommand.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableApplyChangesToContextCommand.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableSetUpTearDownCommand.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableSetUpTearDownCommand.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableTestMethodCommand.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableTestMethodCommand.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/ImmediateEnumerableCommand.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/ImmediateEnumerableCommand.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/OuterUnityTestActionCommand.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/OuterUnityTestActionCommand.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/SetUpTearDownCommand.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/SetUpTearDownCommand.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/TestActionCommand.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/TestActionCommand.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/TestCommandPcHelper.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/TestCommandPcHelper.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/ConstructDelegator.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/ConstructDelegator.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Filters.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Filters/AssemblyNameFilter.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Filters/AssemblyNameFilter.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Filters/CategoryFilterExtended.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Filters/CategoryFilterExtended.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/IStateSerializer.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/IStateSerializer.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/CompositeWorkItem.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/CompositeWorkItem.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/CoroutineTestWorkItem.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/CoroutineTestWorkItem.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/DefaultTestWorkItem.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/DefaultTestWorkItem.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/FailCommand.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/FailCommand.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/IEnumerableTestMethodCommand.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/IEnumerableTestMethodCommand.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/PlaymodeWorkItemFactory.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/PlaymodeWorkItemFactory.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/RestoreTestContextAfterDomainReload.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/RestoreTestContextAfterDomainReload.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityLogCheckDelegatingCommand.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityLogCheckDelegatingCommand.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityTestAssemblyRunner.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityTestAssemblyRunner.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityTestExecutionContext.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityTestExecutionContext.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityWorkItem.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityWorkItem.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityWorkItemDataHolder.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityWorkItemDataHolder.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/WorkItemFactory.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/WorkItemFactory.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/TestExtensions.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/TestExtensions.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/TestResultExtensions.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/TestResultExtensions.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/UnityTestAssemblyBuilder.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/UnityTestAssemblyBuilder.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/PlayModeRunnerCallback.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/PlayModeRunnerCallback.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/RemoteTestResultSender.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/RemoteTestResultSender.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/TestResultRenderer.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/TestResultRenderer.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/TestResultRendererCallback.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/TestResultRendererCallback.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/ITestRunnerListener.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/ITestRunnerListener.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Messages.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Messages/IEditModeTestYieldInstruction.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Messages/IEditModeTestYieldInstruction.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/PlaymodeTestsController.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/PlaymodeTestsController.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/PlaymodeTestsControllerSettings.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/PlaymodeTestsControllerSettings.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/IRemoteTestResultDataFactory.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/IRemoteTestResultDataFactory.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/PlayerConnectionMessageIds.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/PlayerConnectionMessageIds.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestData.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestData.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultData.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultData.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultDataFactory.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultDataFactory.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultDataWithTestData.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultDataWithTestData.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestEnumeratorWrapper.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestEnumeratorWrapper.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestListenerWrapper.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestListenerWrapper.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestPlatform.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestPlatform.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestRunnerFilter.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestRunnerFilter.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/UnityEngine.TestRunner.asmdef create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/UnityEngine.TestRunner.asmdef.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/AssemblyLoadProxy.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/AssemblyLoadProxy.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/AssemblyWrapper.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/AssemblyWrapper.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IAssemblyLoadProxy.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IAssemblyLoadProxy.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IAssemblyWrapper.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IAssemblyWrapper.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IScriptingRuntimeProxy.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IScriptingRuntimeProxy.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/ITestAssemblyProvider.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/ITestAssemblyProvider.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/PlayerTestAssemblyProvider.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/PlayerTestAssemblyProvider.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/ScriptingRuntimeProxy.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/ScriptingRuntimeProxy.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AttributeHelper.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AttributeHelper.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/ColorEqualityComparer.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/ColorEqualityComparer.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/CoroutineRunner.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/CoroutineRunner.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/FloatEqualityComparer.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/FloatEqualityComparer.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IOuterUnityTestAction.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IOuterUnityTestAction.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IPostBuildCleanup.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IPostBuildCleanup.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IPrebuildSceneSetup.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IPrebuildSceneSetup.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/MonoBehaviourTest.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/MonoBehaviourTest/IMonoBehaviourTest.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/MonoBehaviourTest/IMonoBehaviourTest.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/MonoBehaviourTest/MonoBehaviourTest.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/MonoBehaviourTest/MonoBehaviourTest.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/PostBuildCleanupAttribute.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/PostBuildCleanupAttribute.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/PrebuildSceneSetupAttribute.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/PrebuildSceneSetupAttribute.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/QuaternionEqualityComparer.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/QuaternionEqualityComparer.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/StacktraceFilter.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/StacktraceFilter.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Utils.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Utils.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector2ComparerWithEqualsOperator.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector2ComparerWithEqualsOperator.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector2EqualityComparer.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector2EqualityComparer.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector3ComparerWithEqualsOperator.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector3ComparerWithEqualsOperator.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector3EqualityComparer.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector3EqualityComparer.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector4ComparerWithEqualsOperator.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector4ComparerWithEqualsOperator.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector4EqualityComparer.cs create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector4EqualityComparer.cs.meta create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/package.json create mode 100644 Library/PackageCache/com.unity.test-framework@1.0.13/package.json.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/.gitlab-ci.yml create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/CHANGELOG.md create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/CHANGELOG.md.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Documentation~/TextMeshPro.md create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Documentation~/TextMeshPro.md.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Dropdown Icon.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Dropdown Icon.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Font Asset Icon.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Font Asset Icon.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Input Field Icon.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Input Field Icon.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Sprite Asset Icon.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Sprite Asset Icon.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Text Component Icon.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Text Component Icon.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Shaders.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Shaders/TMP_Properties.cginc create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Shaders/TMP_Properties.cginc.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Shaders/TMP_SDF Internal SSD.shader create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Shaders/TMP_SDF Internal SSD.shader.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/SectionHeader_Dark.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/SectionHeader_Dark.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/SectionHeader_Light.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/SectionHeader_Light.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignBaseLine.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignBaseLine.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignBaseLine_Light.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignBaseLine_Light.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignBottom.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignBottom.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignBottom_Light.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignBottom_Light.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCapLine.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCapLine.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCapLine_Light.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCapLine_Light.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCenter.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCenter.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCenterGeo.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCenterGeo.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCenterGeo_Light.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCenterGeo_Light.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCenter_Light.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCenter_Light.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignFlush.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignFlush.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignFlush_Light.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignFlush_Light.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignJustified.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignJustified.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignJustified_Light.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignJustified_Light.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignLeft.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignLeft.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignLeft_Light.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignLeft_Light.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMidLine.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMidLine.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMiddle.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMiddle.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMiddle_Light.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMiddle_Light.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMidline_Light.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMidline_Light.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignRight.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignRight.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignRight_Light.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignRight_Light.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignTop.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignTop.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignTop_Light.psd create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignTop_Light.psd.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/LICENSE.md create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/LICENSE.md.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Package Resources.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Package Resources/TMP Essential Resources.unitypackage create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Package Resources/TMP Essential Resources.unitypackage.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Package Resources/TMP Examples & Extras.unitypackage create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Package Resources/TMP Examples & Extras.unitypackage.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/PackageConversionData.json create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/PackageConversionData.json.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/PackageConversionData_Assets.json create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/PackageConversionData_Assets.json.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/DropdownOptionListDrawer.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/DropdownOptionListDrawer.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/GlyphInfoDrawer.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/GlyphInfoDrawer.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/GlyphMetricsPropertyDrawer.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/GlyphMetricsPropertyDrawer.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/GlyphRectPropertyDrawer.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/GlyphRectPropertyDrawer.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BaseEditorPanel.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BaseEditorPanel.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BaseShaderGUI.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BaseShaderGUI.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BitmapShaderGUI.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BitmapShaderGUI.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_CharacterPropertyDrawer.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_CharacterPropertyDrawer.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ColorGradientAssetMenu.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ColorGradientAssetMenu.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ColorGradientEditor.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ColorGradientEditor.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_DropdownEditor.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_DropdownEditor.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorCoroutine.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorCoroutine.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorPanel.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorPanel.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorUtility.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorUtility.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_FontAssetEditor.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_FontAssetEditor.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_FontAsset_CreationMenu.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_FontAsset_CreationMenu.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_GlyphPairAdjustmentRecordPropertyDrawer.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_GlyphPairAdjustmentRecordPropertyDrawer.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_GlyphPropertyDrawer.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_GlyphPropertyDrawer.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_InputFieldEditor.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_InputFieldEditor.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_MeshRendererEditor.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_MeshRendererEditor.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_PackageUtilities.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_PackageUtilities.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_PostBuildProcessHandler.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_PostBuildProcessHandler.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ProjectTextSettings.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ProjectTextSettings.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ResourcesLoader.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ResourcesLoader.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SDFShaderGUI.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SDFShaderGUI.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SerializedPropertyHolder.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SerializedPropertyHolder.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SettingsEditor.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SettingsEditor.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetEditor.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetEditor.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetImporter.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetImporter.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetMenu.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetMenu.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteCharacterPropertyDrawer.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteCharacterPropertyDrawer.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteGlyphPropertyDrawer.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteGlyphPropertyDrawer.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_StyleAssetMenu.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_StyleAssetMenu.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_StyleSheetEditor.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_StyleSheetEditor.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SubMeshUI_Editor.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SubMeshUI_Editor.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SubMesh_Editor.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SubMesh_Editor.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_TextAlignmentDrawer.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_TextAlignmentDrawer.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_UIStyleManager.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_UIStyleManager.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_UiEditorPanel.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_UiEditorPanel.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_ContextMenus.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_ContextMenus.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_CreateObjectMenu.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_CreateObjectMenu.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_EditorShaderUtilities.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_EditorShaderUtilities.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_FontAssetCreatorWindow.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_FontAssetCreatorWindow.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_FontPlugin.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_FontPlugin.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_SortingLayerHelper.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_SortingLayerHelper.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_TextContainerEditor.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_TextContainerEditor.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_TexturePostProcessor.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_TexturePostProcessor.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/Unity.TextMeshPro.Editor.asmdef create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/Unity.TextMeshPro.Editor.asmdef.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/AssemblyInfo.cs.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/AssemblyInfo.cs.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/FastAction.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/FastAction.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/MaterialReferenceManager.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/MaterialReferenceManager.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Asset.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Asset.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Character.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Character.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_CharacterInfo.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_CharacterInfo.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_ColorGradient.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_ColorGradient.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_CoroutineTween.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_CoroutineTween.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_DefaultControls.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_DefaultControls.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Dropdown.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Dropdown.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_EditorResourceManager.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_EditorResourceManager.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_FontAsset.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_FontAsset.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_FontAssetCommon.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_FontAssetCommon.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_FontAssetUtilities.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_FontAssetUtilities.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_FontFeatureTable.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_FontFeatureTable.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_FontFeaturesCommon.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_FontFeaturesCommon.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_InputField.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_InputField.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_InputValidator.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_InputValidator.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_LineInfo.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_LineInfo.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_ListPool.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_ListPool.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_MaterialManager.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_MaterialManager.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_MeshInfo.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_MeshInfo.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_ObjectPool.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_ObjectPool.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_PackageResourceImporter.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_PackageResourceImporter.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_RichTextTagStack.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_RichTextTagStack.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_RichTextTagsCommon.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_RichTextTagsCommon.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_ScrollbarEventHandler.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_ScrollbarEventHandler.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_SelectionCaret.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_SelectionCaret.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Settings.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Settings.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_ShaderUtilities.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_ShaderUtilities.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Sprite.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Sprite.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_SpriteAnimator.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_SpriteAnimator.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_SpriteAsset.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_SpriteAsset.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_SpriteAssetImportFormats.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_SpriteAssetImportFormats.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_SpriteCharacter.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_SpriteCharacter.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_SpriteGlyph.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_SpriteGlyph.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Style.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Style.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_StyleSheet.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_StyleSheet.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_SubMesh.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_SubMesh.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_SubMeshUI.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_SubMeshUI.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Text.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Text.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_TextElement.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_TextElement.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_TextElement_Legacy.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_TextElement_Legacy.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_TextInfo.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_TextInfo.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_TextParsingUtilities.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_TextParsingUtilities.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_TextUtilities.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_TextUtilities.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_UpdateManager.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_UpdateManager.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_UpdateRegistery.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_UpdateRegistery.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMPro_EventManager.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMPro_EventManager.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMPro_ExtensionMethods.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMPro_ExtensionMethods.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMPro_MeshUtilities.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMPro_MeshUtilities.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMPro_Private.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMPro_Private.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMPro_UGUI_Private.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMPro_UGUI_Private.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TextContainer.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TextContainer.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TextMeshPro.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TextMeshPro.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TextMeshProUGUI.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TextMeshProUGUI.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/Unity.TextMeshPro.asmdef create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/Unity.TextMeshPro.asmdef.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Tests.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Tests/Editor.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Tests/Editor/TMP_EditorTests.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Tests/Editor/TMP_EditorTests.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Tests/Editor/Unity.TextMeshPro.Editor.Tests.asmdef create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Tests/Editor/Unity.TextMeshPro.Editor.Tests.asmdef.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Tests/Runtime.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Tests/Runtime/TMP_RuntimeTests.cs create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Tests/Runtime/TMP_RuntimeTests.cs.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Tests/Runtime/Unity.TextMeshPro.Tests.asmdef create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/Tests/Runtime/Unity.TextMeshPro.Tests.asmdef.meta create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/package.json create mode 100644 Library/PackageCache/com.unity.textmeshpro@2.0.1/package.json.meta create mode 100644 Library/ProjectSettings.asset create mode 100644 Library/SceneVisibilityState.asset create mode 100644 Library/ScriptAssemblies/Assembly-CSharp.dll create mode 100644 Library/ScriptAssemblies/Assembly-CSharp.pdb create mode 100644 Library/ScriptAssemblies/BuiltinAssemblies.stamp create mode 100644 Library/ScriptAssemblies/Unity.CollabProxy.Editor.dll create mode 100644 Library/ScriptAssemblies/Unity.CollabProxy.Editor.pdb create mode 100644 Library/ScriptAssemblies/Unity.Rider.Editor.dll create mode 100644 Library/ScriptAssemblies/Unity.Rider.Editor.pdb create mode 100644 Library/ScriptAssemblies/Unity.TextMeshPro.Editor.dll create mode 100644 Library/ScriptAssemblies/Unity.TextMeshPro.Editor.pdb create mode 100644 Library/ScriptAssemblies/Unity.TextMeshPro.dll create mode 100644 Library/ScriptAssemblies/Unity.TextMeshPro.pdb create mode 100644 Library/ScriptAssemblies/Unity.Timeline.Editor.dll create mode 100644 Library/ScriptAssemblies/Unity.Timeline.Editor.pdb create mode 100644 Library/ScriptAssemblies/Unity.Timeline.dll create mode 100644 Library/ScriptAssemblies/Unity.Timeline.pdb create mode 100644 Library/ScriptAssemblies/Unity.VSCode.Editor.dll create mode 100644 Library/ScriptAssemblies/Unity.VSCode.Editor.pdb create mode 100644 Library/ScriptAssemblies/UnityEditor.TestRunner.dll create mode 100644 Library/ScriptAssemblies/UnityEditor.TestRunner.pdb create mode 100644 Library/ScriptAssemblies/UnityEditor.UI.dll create mode 100644 Library/ScriptAssemblies/UnityEditor.UI.pdb create mode 100644 Library/ScriptAssemblies/UnityEngine.TestRunner.dll create mode 100644 Library/ScriptAssemblies/UnityEngine.TestRunner.pdb create mode 100644 Library/ScriptAssemblies/UnityEngine.UI.dll create mode 100644 Library/ScriptAssemblies/UnityEngine.UI.pdb create mode 100644 Library/ScriptMapper create mode 100644 Library/ShaderCache.db create mode 100644 Library/ShaderCache/0/02ed06672a6348b30d1d44efd614795d.bin create mode 100644 Library/ShaderCache/0/0583fe67b70726e287f1d57f78a5a868.bin create mode 100644 Library/ShaderCache/0/07bea87863102800bec50e9fffb40a71.bin create mode 100644 Library/ShaderCache/0/082ad42da370253bc6c3a0b660fc3b7f.bin create mode 100644 Library/ShaderCache/0/0a9b85e4f8ed4c73a774e925f1742e14.bin create mode 100644 Library/ShaderCache/0/0abadb9cf36ab36e048bfba92ed35ad5.bin create mode 100644 Library/ShaderCache/1/1392a3de4c9813fff53cd0b10f5a0455.bin create mode 100644 Library/ShaderCache/1/16b141565de26b0e0cbb50ced6e6552a.bin create mode 100644 Library/ShaderCache/1/179e4e2d80fb4f708a26c9abef2c6cdf.bin create mode 100644 Library/ShaderCache/1/189b0bd74b1e6b7e72266ac6293f598e.bin create mode 100644 Library/ShaderCache/1/1c014959408e045481bc4b3c0811b0bf.bin create mode 100644 Library/ShaderCache/1/1d174f239170da53990e977b596f704f.bin create mode 100644 Library/ShaderCache/2/22001ae7332dad6cf930a1937da98ec9.bin create mode 100644 Library/ShaderCache/2/242ba449865173ddfcd13d0fa2ec2bd7.bin create mode 100644 Library/ShaderCache/2/256f0f6ce5ca6deec0da9a30768e8245.bin create mode 100644 Library/ShaderCache/2/269f66d12817c7bf2c343709329722ed.bin create mode 100644 Library/ShaderCache/2/2981c6704c3bdf3ddad2b0304b26ccf6.bin create mode 100644 Library/ShaderCache/2/2beafb00d638337ac28301a7bd526144.bin create mode 100644 Library/ShaderCache/2/2c912bd3b1e10b21fcf3189fbd39c6b8.bin create mode 100644 Library/ShaderCache/2/2d563b4233112413ce3e2b109ca13adf.bin create mode 100644 Library/ShaderCache/2/2f4cdeb51658d591357ab234b3b673f7.bin create mode 100644 Library/ShaderCache/3/30dacaf052b35455cc90f751423e688f.bin create mode 100644 Library/ShaderCache/3/33823dd99b143b652b02c2c901d4b4e4.bin create mode 100644 Library/ShaderCache/3/3b9b75cc7f33677702c25b2fa8143fc5.bin create mode 100644 Library/ShaderCache/3/3ebe5912738b017eecedf8df8d96e169.bin create mode 100644 Library/ShaderCache/4/409b19a137b7f036c7bdcbabbf173029.bin create mode 100644 Library/ShaderCache/4/417ddc9451fc7dbcafb7cc7581f78639.bin create mode 100644 Library/ShaderCache/4/4398d074462e0966bef7eae54e4ad72e.bin create mode 100644 Library/ShaderCache/4/44ec77e2f086a61d135f75bf4ecbbfb2.bin create mode 100644 Library/ShaderCache/4/4534eb33d234a7ccb1a625f313c72100.bin create mode 100644 Library/ShaderCache/4/46400903e576562eef046b621f16b596.bin create mode 100644 Library/ShaderCache/5/50d6dd97358e8aca1f0e099225234f6f.bin create mode 100644 Library/ShaderCache/5/51c2a30fa51d9d25ce00548c4e591bd1.bin create mode 100644 Library/ShaderCache/5/5334948754e37d87a59cbc75eb1f2f03.bin create mode 100644 Library/ShaderCache/5/54554ca0164082a036921129efa0f99c.bin create mode 100644 Library/ShaderCache/5/54fe8956b3e70206533d183c756b5222.bin create mode 100644 Library/ShaderCache/5/5954de7be96a0ecbeb9ed9ca917c8465.bin create mode 100644 Library/ShaderCache/5/5e1ce4fc03df82a113734462bb969fd5.bin create mode 100644 Library/ShaderCache/6/6032ea2449115f08b7ec8d2a53712586.bin create mode 100644 Library/ShaderCache/6/65576104833da9b13327818c2aa8f6b2.bin create mode 100644 Library/ShaderCache/6/65e0da327bab24c05389893b5981573d.bin create mode 100644 Library/ShaderCache/6/66ac3ebe46783069ebc4b20a3cd2cacd.bin create mode 100644 Library/ShaderCache/6/683cc8dda6649302480f24cffc14d6ad.bin create mode 100644 Library/ShaderCache/6/6fcb6f1e2b27d5fb355a47bd1e742df4.bin create mode 100644 Library/ShaderCache/7/7076ea48c5a0669e70fd368fb56e06ab.bin create mode 100644 Library/ShaderCache/7/71d96f9a325e45e95567dfd42f230299.bin create mode 100644 Library/ShaderCache/7/76949eac9d6a6fbdca6f4c8832eb7680.bin create mode 100644 Library/ShaderCache/7/7c590c0172d3171c9183f616a85a45d5.bin create mode 100644 Library/ShaderCache/8/823f5007cb1aef5f1033735b829c53b8.bin create mode 100644 Library/ShaderCache/8/842d01dd4d405079b8488869290585b5.bin create mode 100644 Library/ShaderCache/8/8950646e3436c3dd2e349c77df9fb20c.bin create mode 100644 Library/ShaderCache/8/8a95407a02d2024ff5b5a2bd7dd9d575.bin create mode 100644 Library/ShaderCache/8/8ed329ad561a623f3121821b2a94275c.bin create mode 100644 Library/ShaderCache/9/901cdb032916c9211accdd4019a2ce02.bin create mode 100644 Library/ShaderCache/9/90b34f4df5811605e54756368c99c346.bin create mode 100644 Library/ShaderCache/9/93b473421a46ba755c93940dbc5ac689.bin create mode 100644 Library/ShaderCache/9/947b894082757f2457bb2b2bb76a35cd.bin create mode 100644 Library/ShaderCache/9/94d276a929eca2da6b1022331e3b87bd.bin create mode 100644 Library/ShaderCache/9/955653980dc79ae92a430e22b57c9631.bin create mode 100644 Library/ShaderCache/9/95da310e476b5840926fb19d24732953.bin create mode 100644 Library/ShaderCache/EditorEncounteredVariants create mode 100644 Library/ShaderCache/a/a4b0d92e061bb92a51bb08787c120d8d.bin create mode 100644 Library/ShaderCache/a/abaa3c39d7580688fb05a9a724538c16.bin create mode 100644 Library/ShaderCache/a/acdfe1e222eb03b7e9c37fe6fb62eb22.bin create mode 100644 Library/ShaderCache/a/ad6540778021856608bedef2060a64ea.bin create mode 100644 Library/ShaderCache/b/b29d90c7437e033c3fd0c1aa9b09ee2d.bin create mode 100644 Library/ShaderCache/b/b689b8e6d5c75da134a641614c015b01.bin create mode 100644 Library/ShaderCache/b/b9a11144ece6f990a73c35d5c58b83a5.bin create mode 100644 Library/ShaderCache/b/be8a954a0375946ac054f9aed818cf99.bin create mode 100644 Library/ShaderCache/d/d0608dd0c980f8e3db87a9ead9fadf7e.bin create mode 100644 Library/ShaderCache/d/d41a1c9b1cefdf2751500e16e815908f.bin create mode 100644 Library/ShaderCache/d/d55d4116ea3a368ed99f41c4f669bd29.bin create mode 100644 Library/ShaderCache/d/d705bf1633b946dc27ba522409657777.bin create mode 100644 Library/ShaderCache/d/d8f94a8ffca2b832a00669f76ccb66c6.bin create mode 100644 Library/ShaderCache/d/db718221bb06a8bd32f41024f9a821e1.bin create mode 100644 Library/ShaderCache/d/dd5b50a47edddd48a39e43b9c0506cd9.bin create mode 100644 Library/ShaderCache/e/e0b1b68fc370f6e3d5accef350d4983e.bin create mode 100644 Library/ShaderCache/e/e2bcec9ec1c39549fc84d8d45a3ee4e6.bin create mode 100644 Library/ShaderCache/e/e7fee8892885a360e1c2bdea12b62ba1.bin create mode 100644 Library/ShaderCache/e/e8722ab1fae7e48db6da9ccd328bcb61.bin create mode 100644 Library/ShaderCache/e/ec1bb518b943ab220d7ca1c326705d1d.bin create mode 100644 Library/ShaderCache/e/efad374a78c531dcfca563af23f5c965.bin create mode 100644 Library/ShaderCache/f/fa7dff6fc3774de030f8a48cccc9189c.bin create mode 100644 Library/ShaderCache/f/fbc3f82a85c763205e4f1a53b7c226bd.bin create mode 100644 Library/ShaderCache/f/fcdaf21e9dc47ce49467329fe33b5c59.bin create mode 100644 Library/ShaderCache/f/fd800eeaa00a46d1e64088df31813f39.bin create mode 100644 Library/ShaderCache/f/fdd5ff5f279fe4054e8d69039eecb998.bin create mode 100644 Library/ShaderCache/f/fe58b26f1ff40ef45dd1a7d361c600f6.bin create mode 100644 Library/SpriteAtlasDatabase.asset create mode 100644 Library/StateCache/Hierarchy/02f821-mainStage.json create mode 100644 Library/StateCache/SceneView/43c225-mainStage.json create mode 100644 Library/assetDatabase3 create mode 100644 Library/expandedItems create mode 100644 Library/metadata/00/00000000000000001000000000000000 create mode 100644 Library/metadata/00/00000000000000001000000000000000.info create mode 100644 Library/metadata/00/00000000000000002000000000000000 create mode 100644 Library/metadata/00/00000000000000002000000000000000.info create mode 100644 Library/metadata/00/00000000000000003000000000000000 create mode 100644 Library/metadata/00/00000000000000003000000000000000.info create mode 100644 Library/metadata/00/00000000000000004000000000000000 create mode 100644 Library/metadata/00/00000000000000004000000000000000.info create mode 100644 Library/metadata/00/00000000000000004100000000000000 create mode 100644 Library/metadata/00/00000000000000004100000000000000.info create mode 100644 Library/metadata/00/00000000000000005000000000000000 create mode 100644 Library/metadata/00/00000000000000005000000000000000.info create mode 100644 Library/metadata/00/00000000000000005100000000000000 create mode 100644 Library/metadata/00/00000000000000005100000000000000.info create mode 100644 Library/metadata/00/00000000000000006000000000000000 create mode 100644 Library/metadata/00/00000000000000006000000000000000.info create mode 100644 Library/metadata/00/00000000000000006100000000000000 create mode 100644 Library/metadata/00/00000000000000006100000000000000.info create mode 100644 Library/metadata/00/00000000000000007000000000000000 create mode 100644 Library/metadata/00/00000000000000007000000000000000.info create mode 100644 Library/metadata/00/00000000000000007100000000000000 create mode 100644 Library/metadata/00/00000000000000007100000000000000.info create mode 100644 Library/metadata/00/00000000000000008000000000000000 create mode 100644 Library/metadata/00/00000000000000008000000000000000.info create mode 100644 Library/metadata/00/00000000000000009000000000000000 create mode 100644 Library/metadata/00/00000000000000009000000000000000.info create mode 100644 Library/metadata/00/0000000000000000a100000000000000 create mode 100644 Library/metadata/00/0000000000000000a100000000000000.info create mode 100644 Library/metadata/00/0000000000000000b000000000000000 create mode 100644 Library/metadata/00/0000000000000000b000000000000000.info create mode 100644 Library/metadata/00/0000000000000000b100000000000000 create mode 100644 Library/metadata/00/0000000000000000b100000000000000.info create mode 100644 Library/metadata/00/0000000000000000c000000000000000 create mode 100644 Library/metadata/00/0000000000000000c000000000000000.info create mode 100644 Library/metadata/00/0000000000000000c100000000000000 create mode 100644 Library/metadata/00/0000000000000000c100000000000000.info create mode 100644 Library/metadata/00/00187582b67e7654b914b5a0d37daafb create mode 100644 Library/metadata/00/00187582b67e7654b914b5a0d37daafb.info create mode 100644 Library/metadata/00/006633c8a6f4ae94aa9babf72234e1a2 create mode 100644 Library/metadata/00/006633c8a6f4ae94aa9babf72234e1a2.info create mode 100644 Library/metadata/00/00f9a68859b850648902e0c98c25b590 create mode 100644 Library/metadata/00/00f9a68859b850648902e0c98c25b590.info create mode 100644 Library/metadata/01/01ada73c4792aba4c937ff5d92cce866 create mode 100644 Library/metadata/01/01ada73c4792aba4c937ff5d92cce866.info create mode 100644 Library/metadata/01/01cd96d8687272f4898cfd1562079dd7 create mode 100644 Library/metadata/01/01cd96d8687272f4898cfd1562079dd7.info create mode 100644 Library/metadata/01/01df650e1b86e9f4a8e2b5dc9782506f create mode 100644 Library/metadata/01/01df650e1b86e9f4a8e2b5dc9782506f.info create mode 100644 Library/metadata/02/020ee4c1798a3d243a4b8cbfee6cac2d create mode 100644 Library/metadata/02/020ee4c1798a3d243a4b8cbfee6cac2d.info create mode 100644 Library/metadata/02/0217a80286f79419daa202f69409f19b create mode 100644 Library/metadata/02/0217a80286f79419daa202f69409f19b.info create mode 100644 Library/metadata/02/02893ffb522b490a9fa28eedd2584309 create mode 100644 Library/metadata/02/02893ffb522b490a9fa28eedd2584309.info create mode 100644 Library/metadata/02/02e1fe0a338b35545a5fed1345848332 create mode 100644 Library/metadata/02/02e1fe0a338b35545a5fed1345848332.info create mode 100644 Library/metadata/02/02f771204943f4a40949438e873e3eff create mode 100644 Library/metadata/02/02f771204943f4a40949438e873e3eff.info create mode 100644 Library/metadata/03/030f85c3f73729f4f976f66ffb23b875 create mode 100644 Library/metadata/03/030f85c3f73729f4f976f66ffb23b875.info create mode 100644 Library/metadata/03/0336a32a79bfaed43a3fd2d88b91e974 create mode 100644 Library/metadata/03/0336a32a79bfaed43a3fd2d88b91e974.info create mode 100644 Library/metadata/03/033c884ba52437d49bc55935939ef1c6 create mode 100644 Library/metadata/03/033c884ba52437d49bc55935939ef1c6.info create mode 100644 Library/metadata/03/0386b6eb838c47138cd51d1c1b879a35 create mode 100644 Library/metadata/03/0386b6eb838c47138cd51d1c1b879a35.info create mode 100644 Library/metadata/03/03e4d63665d06f04c8a6cf68133c1592 create mode 100644 Library/metadata/03/03e4d63665d06f04c8a6cf68133c1592.info create mode 100644 Library/metadata/04/046c3854296c5ec48bac50da6ca248ec create mode 100644 Library/metadata/04/046c3854296c5ec48bac50da6ca248ec.info create mode 100644 Library/metadata/04/04cc958f40f350044a432c012f320305 create mode 100644 Library/metadata/04/04cc958f40f350044a432c012f320305.info create mode 100644 Library/metadata/05/056819c66570ca54cadb72330a354050 create mode 100644 Library/metadata/05/056819c66570ca54cadb72330a354050.info create mode 100644 Library/metadata/05/05778dd1de4433d418793b6f3d3c18cf create mode 100644 Library/metadata/05/05778dd1de4433d418793b6f3d3c18cf.info create mode 100644 Library/metadata/05/058cba836c1846c3aa1c5fd2e28aea77 create mode 100644 Library/metadata/05/058cba836c1846c3aa1c5fd2e28aea77.info create mode 100644 Library/metadata/05/05f582d4fbc8e0c40afccb76bbbe0935 create mode 100644 Library/metadata/05/05f582d4fbc8e0c40afccb76bbbe0935.info create mode 100644 Library/metadata/05/05f5bfd584002f948982a1498890f9a9 create mode 100644 Library/metadata/05/05f5bfd584002f948982a1498890f9a9.info create mode 100644 Library/metadata/05/05f7f519769978b79b31d063a7fc6fa1 create mode 100644 Library/metadata/05/05f7f519769978b79b31d063a7fc6fa1.info create mode 100644 Library/metadata/05/05f92e4a2414cb144a92157752dfa324 create mode 100644 Library/metadata/05/05f92e4a2414cb144a92157752dfa324.info create mode 100644 Library/metadata/06/066619c9c9c84f89acb1b48c11a7efe2 create mode 100644 Library/metadata/06/066619c9c9c84f89acb1b48c11a7efe2.info create mode 100644 Library/metadata/06/06ae1baf5524b314fa65b173b9eca869 create mode 100644 Library/metadata/06/06ae1baf5524b314fa65b173b9eca869.info create mode 100644 Library/metadata/07/071c17858dc6c47ada7b2a1f1ded5402 create mode 100644 Library/metadata/07/071c17858dc6c47ada7b2a1f1ded5402.info create mode 100644 Library/metadata/07/077690d334440b044bdd51b26b3e9413 create mode 100644 Library/metadata/07/077690d334440b044bdd51b26b3e9413.info create mode 100644 Library/metadata/07/07994bfe8b0e4adb97d706de5dea48d5 create mode 100644 Library/metadata/07/07994bfe8b0e4adb97d706de5dea48d5.info create mode 100644 Library/metadata/07/07a967d2fca95324f8922df8394a5655 create mode 100644 Library/metadata/07/07a967d2fca95324f8922df8394a5655.info create mode 100644 Library/metadata/07/07ea0326ed848fb4489187cb58f96113 create mode 100644 Library/metadata/07/07ea0326ed848fb4489187cb58f96113.info create mode 100644 Library/metadata/08/083c6a3a5426382449369ddc12b691d8 create mode 100644 Library/metadata/08/083c6a3a5426382449369ddc12b691d8.info create mode 100644 Library/metadata/08/087cba9fa6ac867479a0b0fdc0a5864b create mode 100644 Library/metadata/08/087cba9fa6ac867479a0b0fdc0a5864b.info create mode 100644 Library/metadata/08/08d23c0b73905c148b525c3c93fff580 create mode 100644 Library/metadata/08/08d23c0b73905c148b525c3c93fff580.info create mode 100644 Library/metadata/08/08e9894bdf0834710b22d3c0aa245ac0 create mode 100644 Library/metadata/08/08e9894bdf0834710b22d3c0aa245ac0.info create mode 100644 Library/metadata/09/09e28640d754a611467eebfb261ed749 create mode 100644 Library/metadata/09/09e28640d754a611467eebfb261ed749.info create mode 100644 Library/metadata/09/09e68d8a529a36340b752b99a1b70f83 create mode 100644 Library/metadata/09/09e68d8a529a36340b752b99a1b70f83.info create mode 100644 Library/metadata/09/09f4db536a377bc40a9ac110af702bfa create mode 100644 Library/metadata/09/09f4db536a377bc40a9ac110af702bfa.info create mode 100644 Library/metadata/0a/0a017569bfe174e4890797b4d64cbabc create mode 100644 Library/metadata/0a/0a017569bfe174e4890797b4d64cbabc.info create mode 100644 Library/metadata/0a/0aaa057ce5566e940b18a0ccd0344693 create mode 100644 Library/metadata/0a/0aaa057ce5566e940b18a0ccd0344693.info create mode 100644 Library/metadata/0a/0acc523941302664db1f4e527237feb3 create mode 100644 Library/metadata/0a/0acc523941302664db1f4e527237feb3.info create mode 100644 Library/metadata/0b/0b2706df6fdff50448f84a3f6629b40f create mode 100644 Library/metadata/0b/0b2706df6fdff50448f84a3f6629b40f.info create mode 100644 Library/metadata/0b/0bb74b1c097396c49b1691e6a938f814 create mode 100644 Library/metadata/0b/0bb74b1c097396c49b1691e6a938f814.info create mode 100644 Library/metadata/0c/0c04c8cb23b78e04492e0f310cdee93e create mode 100644 Library/metadata/0c/0c04c8cb23b78e04492e0f310cdee93e.info create mode 100644 Library/metadata/0c/0c56471f08a0f6846afc792f0b4205b9 create mode 100644 Library/metadata/0c/0c56471f08a0f6846afc792f0b4205b9.info create mode 100644 Library/metadata/0c/0ca2545d76d1fb34fa45a9f1e432d259 create mode 100644 Library/metadata/0c/0ca2545d76d1fb34fa45a9f1e432d259.info create mode 100644 Library/metadata/0c/0ca81982e37e893498abf804c12a22c7 create mode 100644 Library/metadata/0c/0ca81982e37e893498abf804c12a22c7.info create mode 100644 Library/metadata/0c/0cb14878543cf3d4f8472b15f7ecf0e3 create mode 100644 Library/metadata/0c/0cb14878543cf3d4f8472b15f7ecf0e3.info create mode 100644 Library/metadata/0c/0cd44c1031e13a943bb63640046fad76 create mode 100644 Library/metadata/0c/0cd44c1031e13a943bb63640046fad76.info create mode 100644 Library/metadata/0d/0d0b652f32a2cc243917e4028fa0f046 create mode 100644 Library/metadata/0d/0d0b652f32a2cc243917e4028fa0f046.info create mode 100644 Library/metadata/0d/0d2d0f36e67d4518a07df76235e91f9a create mode 100644 Library/metadata/0d/0d2d0f36e67d4518a07df76235e91f9a.info create mode 100644 Library/metadata/0d/0d4fc309a0784294c8ab658b53b12320 create mode 100644 Library/metadata/0d/0d4fc309a0784294c8ab658b53b12320.info create mode 100644 Library/metadata/0d/0d60a406ab64c434e9d731914e11a51e create mode 100644 Library/metadata/0d/0d60a406ab64c434e9d731914e11a51e.info create mode 100644 Library/metadata/0d/0d9a36012a224080966c7b55896aa0f9 create mode 100644 Library/metadata/0d/0d9a36012a224080966c7b55896aa0f9.info create mode 100644 Library/metadata/0d/0dc62a5955cf04ec298a2c3ca4b2edf2 create mode 100644 Library/metadata/0d/0dc62a5955cf04ec298a2c3ca4b2edf2.info create mode 100644 Library/metadata/0d/0de03ebd74e2b474fa23d05ab42d0cd8 create mode 100644 Library/metadata/0d/0de03ebd74e2b474fa23d05ab42d0cd8.info create mode 100644 Library/metadata/0e/0e0afa652c0031c48896a97b424d027b create mode 100644 Library/metadata/0e/0e0afa652c0031c48896a97b424d027b.info create mode 100644 Library/metadata/0e/0e751e877ed14d71a6b8e63ac54949cf create mode 100644 Library/metadata/0e/0e751e877ed14d71a6b8e63ac54949cf.info create mode 100644 Library/metadata/0e/0efb23ecb373b6d4bbe5217485785138 create mode 100644 Library/metadata/0e/0efb23ecb373b6d4bbe5217485785138.info create mode 100644 Library/metadata/0f/0f71aeefaa877ae4787e8356f25ad1e5 create mode 100644 Library/metadata/0f/0f71aeefaa877ae4787e8356f25ad1e5.info create mode 100644 Library/metadata/10/102e512f651ee834f951a2516c1ea3b8 create mode 100644 Library/metadata/10/102e512f651ee834f951a2516c1ea3b8.info create mode 100644 Library/metadata/10/1048a87135154606808bf2030da32d18 create mode 100644 Library/metadata/10/1048a87135154606808bf2030da32d18.info create mode 100644 Library/metadata/10/105515c1653548242b4fe973c0f375f7 create mode 100644 Library/metadata/10/105515c1653548242b4fe973c0f375f7.info create mode 100644 Library/metadata/10/1091bc2ad06e3234aac2b2fa2841c09d create mode 100644 Library/metadata/10/1091bc2ad06e3234aac2b2fa2841c09d.info create mode 100644 Library/metadata/10/10ba9bc9317e315439b0223674162c52 create mode 100644 Library/metadata/10/10ba9bc9317e315439b0223674162c52.info create mode 100644 Library/metadata/11/110d5035a36a6a34580fb65bb40cd78f create mode 100644 Library/metadata/11/110d5035a36a6a34580fb65bb40cd78f.info create mode 100644 Library/metadata/11/1158e311a3101950348dcecb1bebc42d create mode 100644 Library/metadata/11/1158e311a3101950348dcecb1bebc42d.info create mode 100644 Library/metadata/11/11a6a034ab84493cbed6af5ae7aae78b create mode 100644 Library/metadata/11/11a6a034ab84493cbed6af5ae7aae78b.info create mode 100644 Library/metadata/12/124533853216377448d786fd7c725701 create mode 100644 Library/metadata/12/124533853216377448d786fd7c725701.info create mode 100644 Library/metadata/12/127023922adddf744b59fa7b0b0c3030 create mode 100644 Library/metadata/12/127023922adddf744b59fa7b0b0c3030.info create mode 100644 Library/metadata/12/12736c98af174f91827a26b66d2b01b9 create mode 100644 Library/metadata/12/12736c98af174f91827a26b66d2b01b9.info create mode 100644 Library/metadata/12/12c42068351bb084abde965d725b9887 create mode 100644 Library/metadata/12/12c42068351bb084abde965d725b9887.info create mode 100644 Library/metadata/12/12dfd4bdbb5c8e6419432fbc54ef25d9 create mode 100644 Library/metadata/12/12dfd4bdbb5c8e6419432fbc54ef25d9.info create mode 100644 Library/metadata/13/1336690ece4db2740b4ba38873e00dfb create mode 100644 Library/metadata/13/1336690ece4db2740b4ba38873e00dfb.info create mode 100644 Library/metadata/13/1344c3c82d62a2a41a3576d8abb8e3ea create mode 100644 Library/metadata/13/1344c3c82d62a2a41a3576d8abb8e3ea.info create mode 100644 Library/metadata/13/1369382d2c5e64dc5b2ec0b6b0a94531 create mode 100644 Library/metadata/13/1369382d2c5e64dc5b2ec0b6b0a94531.info create mode 100644 Library/metadata/13/1385bc74f3945c943be16ecbb1381063 create mode 100644 Library/metadata/13/1385bc74f3945c943be16ecbb1381063.info create mode 100644 Library/metadata/13/138dbec4f8742654fbceb0a19d68b9c5 create mode 100644 Library/metadata/13/138dbec4f8742654fbceb0a19d68b9c5.info create mode 100644 Library/metadata/13/139c5eac101a4dc4fb3098e30c29f15e create mode 100644 Library/metadata/13/139c5eac101a4dc4fb3098e30c29f15e.info create mode 100644 Library/metadata/13/13a9c1b4df2e489e8eb9cacca7429596 create mode 100644 Library/metadata/13/13a9c1b4df2e489e8eb9cacca7429596.info create mode 100644 Library/metadata/13/13cd966480ec3354bb318ee1aeccff6f create mode 100644 Library/metadata/13/13cd966480ec3354bb318ee1aeccff6f.info create mode 100644 Library/metadata/13/13d161b14bb3ab74e8a9634e26fb7a5e create mode 100644 Library/metadata/13/13d161b14bb3ab74e8a9634e26fb7a5e.info create mode 100644 Library/metadata/13/13eb80ce50ac9c43cdbaf2109c0ec7db create mode 100644 Library/metadata/13/13eb80ce50ac9c43cdbaf2109c0ec7db.info create mode 100644 Library/metadata/14/14427eecd0bccea468addc3492aaef57 create mode 100644 Library/metadata/14/14427eecd0bccea468addc3492aaef57.info create mode 100644 Library/metadata/14/1489c7cdbe26c444b86705280ebdff02 create mode 100644 Library/metadata/14/1489c7cdbe26c444b86705280ebdff02.info create mode 100644 Library/metadata/14/14d748c963c7b3549bed45457cc92c4f create mode 100644 Library/metadata/14/14d748c963c7b3549bed45457cc92c4f.info create mode 100644 Library/metadata/15/1511ccae7919cfc46b603b9b337fdc94 create mode 100644 Library/metadata/15/1511ccae7919cfc46b603b9b337fdc94.info create mode 100644 Library/metadata/15/15c38f6fa1940124db1ab7f6fe7268d1 create mode 100644 Library/metadata/15/15c38f6fa1940124db1ab7f6fe7268d1.info create mode 100644 Library/metadata/15/15e0374501f39d54eb30235764636e0e create mode 100644 Library/metadata/15/15e0374501f39d54eb30235764636e0e.info create mode 100644 Library/metadata/15/15f870c6975ad6449b5b52514b90dc2b create mode 100644 Library/metadata/15/15f870c6975ad6449b5b52514b90dc2b.info create mode 100644 Library/metadata/16/16388ae022a89264b84107f0c1b44680 create mode 100644 Library/metadata/16/16388ae022a89264b84107f0c1b44680.info create mode 100644 Library/metadata/16/164c9b1458eaab743a4b45c37a4d720d create mode 100644 Library/metadata/16/164c9b1458eaab743a4b45c37a4d720d.info create mode 100644 Library/metadata/16/16548db454f7a3344b41ca2e5cdb52b2 create mode 100644 Library/metadata/16/16548db454f7a3344b41ca2e5cdb52b2.info create mode 100644 Library/metadata/16/167329c8289a3a14a9e342df49fc4104 create mode 100644 Library/metadata/16/167329c8289a3a14a9e342df49fc4104.info create mode 100644 Library/metadata/16/16950289b516d6747868e0f7bf7b37a0 create mode 100644 Library/metadata/16/16950289b516d6747868e0f7bf7b37a0.info create mode 100644 Library/metadata/16/16c6414b77a90ff4098767dce485c495 create mode 100644 Library/metadata/16/16c6414b77a90ff4098767dce485c495.info create mode 100644 Library/metadata/17/178008567c08e6d84014fa87825d10bb create mode 100644 Library/metadata/17/178008567c08e6d84014fa87825d10bb.info create mode 100644 Library/metadata/18/18775b51e3bd42299fd30bd036ea982f create mode 100644 Library/metadata/18/18775b51e3bd42299fd30bd036ea982f.info create mode 100644 Library/metadata/18/18a4fadfef534684d5af39ca8dc48fe9 create mode 100644 Library/metadata/18/18a4fadfef534684d5af39ca8dc48fe9.info create mode 100644 Library/metadata/19/197c1114eb793d24c8ef31120a134e88 create mode 100644 Library/metadata/19/197c1114eb793d24c8ef31120a134e88.info create mode 100644 Library/metadata/19/1999349e7f492c947bb6eb70f624382e create mode 100644 Library/metadata/19/1999349e7f492c947bb6eb70f624382e.info create mode 100644 Library/metadata/19/19a6f000f81e24c4a826c1abd43e77c7 create mode 100644 Library/metadata/19/19a6f000f81e24c4a826c1abd43e77c7.info create mode 100644 Library/metadata/19/19c6f364c1e81cb4f829a057824639ad create mode 100644 Library/metadata/19/19c6f364c1e81cb4f829a057824639ad.info create mode 100644 Library/metadata/1a/1a26e19d51cbfac42a02631ad1f9e39e create mode 100644 Library/metadata/1a/1a26e19d51cbfac42a02631ad1f9e39e.info create mode 100644 Library/metadata/1a/1a4266815e998967becf686f9c71f0a6 create mode 100644 Library/metadata/1a/1a4266815e998967becf686f9c71f0a6.info create mode 100644 Library/metadata/1a/1a70a790a43cd0d4a96f75746841f764 create mode 100644 Library/metadata/1a/1a70a790a43cd0d4a96f75746841f764.info create mode 100644 Library/metadata/1a/1aa08ab6e0800fa44ae55d278d1423e3 create mode 100644 Library/metadata/1a/1aa08ab6e0800fa44ae55d278d1423e3.info create mode 100644 Library/metadata/1a/1ac58cb55fc8daf4abd3945a2bbbb0c5 create mode 100644 Library/metadata/1a/1ac58cb55fc8daf4abd3945a2bbbb0c5.info create mode 100644 Library/metadata/1a/1ac677c5ece15b443b2aaf7fae5842f7 create mode 100644 Library/metadata/1a/1ac677c5ece15b443b2aaf7fae5842f7.info create mode 100644 Library/metadata/1a/1ad55f5ad04d1d045a1f287409c650dd create mode 100644 Library/metadata/1a/1ad55f5ad04d1d045a1f287409c650dd.info create mode 100644 Library/metadata/1a/1adaa8dcc4fda3d4cb4d3c8e0cb65d12 create mode 100644 Library/metadata/1a/1adaa8dcc4fda3d4cb4d3c8e0cb65d12.info create mode 100644 Library/metadata/1a/1adad61bfb44214ee3e887b5febc4396 create mode 100644 Library/metadata/1a/1adad61bfb44214ee3e887b5febc4396.info create mode 100644 Library/metadata/1b/1b393f6b29a9ee84c803af1ab4944b71 create mode 100644 Library/metadata/1b/1b393f6b29a9ee84c803af1ab4944b71.info create mode 100644 Library/metadata/1b/1bfe12aa306c0c74db4f4f1a1a0ae5ce create mode 100644 Library/metadata/1b/1bfe12aa306c0c74db4f4f1a1a0ae5ce.info create mode 100644 Library/metadata/1c/1c147d10db452eb4b854a35f84472017 create mode 100644 Library/metadata/1c/1c147d10db452eb4b854a35f84472017.info create mode 100644 Library/metadata/1c/1c5afe945b715e149a70113a4be7b32a create mode 100644 Library/metadata/1c/1c5afe945b715e149a70113a4be7b32a.info create mode 100644 Library/metadata/1c/1c61a04a5b7737c4d16673d64be4194e create mode 100644 Library/metadata/1c/1c61a04a5b7737c4d16673d64be4194e.info create mode 100644 Library/metadata/1c/1cddf785b0d07434d8e0607c97b09135 create mode 100644 Library/metadata/1c/1cddf785b0d07434d8e0607c97b09135.info create mode 100644 Library/metadata/1c/1cf2469083ffa484da4d78dd70d708e8 create mode 100644 Library/metadata/1c/1cf2469083ffa484da4d78dd70d708e8.info create mode 100644 Library/metadata/1d/1d446e57147ca9b4183edfbbfa9bf206 create mode 100644 Library/metadata/1d/1d446e57147ca9b4183edfbbfa9bf206.info create mode 100644 Library/metadata/1d/1db879070d9a45f4c86cdf5e59616df5 create mode 100644 Library/metadata/1d/1db879070d9a45f4c86cdf5e59616df5.info create mode 100644 Library/metadata/1d/1ddb9e1c877ea80479d1eab4ddaa5d0d create mode 100644 Library/metadata/1d/1ddb9e1c877ea80479d1eab4ddaa5d0d.info create mode 100644 Library/metadata/1e/1ea10891dd782154ca0fb67bce9e6f72 create mode 100644 Library/metadata/1e/1ea10891dd782154ca0fb67bce9e6f72.info create mode 100644 Library/metadata/1e/1ebc1994f9a3d5649a1201d3a84b38df create mode 100644 Library/metadata/1e/1ebc1994f9a3d5649a1201d3a84b38df.info create mode 100644 Library/metadata/1e/1ec4b8ec4b34f4344bac53c19288eaa2 create mode 100644 Library/metadata/1e/1ec4b8ec4b34f4344bac53c19288eaa2.info create mode 100644 Library/metadata/1e/1ef2923b9c5521948a04299da53ae750 create mode 100644 Library/metadata/1e/1ef2923b9c5521948a04299da53ae750.info create mode 100644 Library/metadata/1f/1f2a7e0d1b6bbba408a41e206945c23c create mode 100644 Library/metadata/1f/1f2a7e0d1b6bbba408a41e206945c23c.info create mode 100644 Library/metadata/1f/1f3a562675833b4448299e4f627b0cec create mode 100644 Library/metadata/1f/1f3a562675833b4448299e4f627b0cec.info create mode 100644 Library/metadata/1f/1f5bbb88ca730434483440cbc0278ef6 create mode 100644 Library/metadata/1f/1f5bbb88ca730434483440cbc0278ef6.info create mode 100644 Library/metadata/1f/1fe0f539450e54dbc85bfb2fa6b466fb create mode 100644 Library/metadata/1f/1fe0f539450e54dbc85bfb2fa6b466fb.info create mode 100644 Library/metadata/20/200617708f5b36a4da2e2a3f1ceacedd create mode 100644 Library/metadata/20/200617708f5b36a4da2e2a3f1ceacedd.info create mode 100644 Library/metadata/20/2011a59d3f76b3d4a85cb53f945fceee create mode 100644 Library/metadata/20/2011a59d3f76b3d4a85cb53f945fceee.info create mode 100644 Library/metadata/20/202d758d102b6854a9710c8b93db742c create mode 100644 Library/metadata/20/202d758d102b6854a9710c8b93db742c.info create mode 100644 Library/metadata/20/20793418366caf14293b29c55df5e9ec create mode 100644 Library/metadata/20/20793418366caf14293b29c55df5e9ec.info create mode 100644 Library/metadata/20/208e46d59ff6e304db0318377d20f5a1 create mode 100644 Library/metadata/20/208e46d59ff6e304db0318377d20f5a1.info create mode 100644 Library/metadata/20/20a9b557a46149dfbfa04a3a7080f5aa create mode 100644 Library/metadata/20/20a9b557a46149dfbfa04a3a7080f5aa.info create mode 100644 Library/metadata/20/20c8bb6b47a526c4c96ca73314fe2856 create mode 100644 Library/metadata/20/20c8bb6b47a526c4c96ca73314fe2856.info create mode 100644 Library/metadata/20/20cdb37e6fea6d946bbb84d2c923db85 create mode 100644 Library/metadata/20/20cdb37e6fea6d946bbb84d2c923db85.info create mode 100644 Library/metadata/20/20ff4283f687e044087714f82c4d6d3f create mode 100644 Library/metadata/20/20ff4283f687e044087714f82c4d6d3f.info create mode 100644 Library/metadata/21/21bf7f712d84d26478ebe6a299f21738 create mode 100644 Library/metadata/21/21bf7f712d84d26478ebe6a299f21738.info create mode 100644 Library/metadata/21/21c0044a7f964773be90d197a78e4703 create mode 100644 Library/metadata/21/21c0044a7f964773be90d197a78e4703.info create mode 100644 Library/metadata/21/21d2d5d6901f2ca43a8015c60ada4e2c create mode 100644 Library/metadata/21/21d2d5d6901f2ca43a8015c60ada4e2c.info create mode 100644 Library/metadata/22/220e9325710f4235a43492dd1ee4980d create mode 100644 Library/metadata/22/220e9325710f4235a43492dd1ee4980d.info create mode 100644 Library/metadata/22/22464cf7ab0243a6bf9c79851183b002 create mode 100644 Library/metadata/22/22464cf7ab0243a6bf9c79851183b002.info create mode 100644 Library/metadata/22/22899211c24eeb248b22704499dd108f create mode 100644 Library/metadata/22/22899211c24eeb248b22704499dd108f.info create mode 100644 Library/metadata/23/2300e75732d74890b38a8ff257a3ae15 create mode 100644 Library/metadata/23/2300e75732d74890b38a8ff257a3ae15.info create mode 100644 Library/metadata/23/2347243c7aa3e224f9282dc94e6fc3b2 create mode 100644 Library/metadata/23/2347243c7aa3e224f9282dc94e6fc3b2.info create mode 100644 Library/metadata/23/2359c66dee10c454c97f6aea84e3fe22 create mode 100644 Library/metadata/23/2359c66dee10c454c97f6aea84e3fe22.info create mode 100644 Library/metadata/23/23884ce4c1de32846adafea2d53a4cee create mode 100644 Library/metadata/23/23884ce4c1de32846adafea2d53a4cee.info create mode 100644 Library/metadata/23/239dd6edc8e5cd14585c03e09e86a747 create mode 100644 Library/metadata/23/239dd6edc8e5cd14585c03e09e86a747.info create mode 100644 Library/metadata/23/23a562f2cac6401f9f91251c68a1a794 create mode 100644 Library/metadata/23/23a562f2cac6401f9f91251c68a1a794.info create mode 100644 Library/metadata/23/23a56a19774ed42b6b65646af08a003c create mode 100644 Library/metadata/23/23a56a19774ed42b6b65646af08a003c.info create mode 100644 Library/metadata/24/24a158219395ebf44a60547b97784ddc create mode 100644 Library/metadata/24/24a158219395ebf44a60547b97784ddc.info create mode 100644 Library/metadata/24/24a7ce8b48db53747a4e8abbda77eac4 create mode 100644 Library/metadata/24/24a7ce8b48db53747a4e8abbda77eac4.info create mode 100644 Library/metadata/25/2537ddddebaa455409dec422eb08fd7e create mode 100644 Library/metadata/25/2537ddddebaa455409dec422eb08fd7e.info create mode 100644 Library/metadata/25/255b0c6d400fd964dab3029c8abc53f4 create mode 100644 Library/metadata/25/255b0c6d400fd964dab3029c8abc53f4.info create mode 100644 Library/metadata/25/256a0ca37fa972840bce7fca446e75e7 create mode 100644 Library/metadata/25/256a0ca37fa972840bce7fca446e75e7.info create mode 100644 Library/metadata/25/25a477c2f24db8778a4179421a32cc21 create mode 100644 Library/metadata/25/25a477c2f24db8778a4179421a32cc21.info create mode 100644 Library/metadata/25/25b01819c6e1649428db2a9b274cf364 create mode 100644 Library/metadata/25/25b01819c6e1649428db2a9b274cf364.info create mode 100644 Library/metadata/26/260b531edc40677429c0198d6961e448 create mode 100644 Library/metadata/26/260b531edc40677429c0198d6961e448.info create mode 100644 Library/metadata/26/26570be2af04195458e6f1ac1f5c48e0 create mode 100644 Library/metadata/26/26570be2af04195458e6f1ac1f5c48e0.info create mode 100644 Library/metadata/26/26721f9940339264fb14bdbfe1290e21 create mode 100644 Library/metadata/26/26721f9940339264fb14bdbfe1290e21.info create mode 100644 Library/metadata/26/26a4f29db434fd79025c91f6126382cc create mode 100644 Library/metadata/26/26a4f29db434fd79025c91f6126382cc.info create mode 100644 Library/metadata/26/26f3e7301af463c4ca72fa98d59b429e create mode 100644 Library/metadata/26/26f3e7301af463c4ca72fa98d59b429e.info create mode 100644 Library/metadata/27/2705215ac5b84b70bacc50632be6e391 create mode 100644 Library/metadata/27/2705215ac5b84b70bacc50632be6e391.info create mode 100644 Library/metadata/27/27619889b8ba8c24980f49ee34dbb44a create mode 100644 Library/metadata/27/27619889b8ba8c24980f49ee34dbb44a.info create mode 100644 Library/metadata/27/27769e9b00b038d47aefe306a4d20bec create mode 100644 Library/metadata/27/27769e9b00b038d47aefe306a4d20bec.info create mode 100644 Library/metadata/27/2799eb4c84e72e54092a292cf626936b create mode 100644 Library/metadata/27/2799eb4c84e72e54092a292cf626936b.info create mode 100644 Library/metadata/27/27a0335dab59ec542aadd6636a5b4ebd create mode 100644 Library/metadata/27/27a0335dab59ec542aadd6636a5b4ebd.info create mode 100644 Library/metadata/27/27df3b12f30d0b74a9b10a3968c402ff create mode 100644 Library/metadata/27/27df3b12f30d0b74a9b10a3968c402ff.info create mode 100644 Library/metadata/27/27ed3e221887b3544bd9d6505d4a789f create mode 100644 Library/metadata/27/27ed3e221887b3544bd9d6505d4a789f.info create mode 100644 Library/metadata/28/2808ba6bccb2478ec9c7209d8bf1f3cc create mode 100644 Library/metadata/28/2808ba6bccb2478ec9c7209d8bf1f3cc.info create mode 100644 Library/metadata/28/28375447bcea455c9b51a6650b10c9d7 create mode 100644 Library/metadata/28/28375447bcea455c9b51a6650b10c9d7.info create mode 100644 Library/metadata/28/28542eca5f1b4c64813acfbd512524b6 create mode 100644 Library/metadata/28/28542eca5f1b4c64813acfbd512524b6.info create mode 100644 Library/metadata/28/28c8fcb831e6e734a9f564bc4f495eba create mode 100644 Library/metadata/28/28c8fcb831e6e734a9f564bc4f495eba.info create mode 100644 Library/metadata/28/28e8b16370ff78c4faca58757271619f create mode 100644 Library/metadata/28/28e8b16370ff78c4faca58757271619f.info create mode 100644 Library/metadata/28/28f79a0d7e64c2345bc46f8c4cf788f8 create mode 100644 Library/metadata/28/28f79a0d7e64c2345bc46f8c4cf788f8.info create mode 100644 Library/metadata/29/29bf1d4ec1012bc45967ce95b729b8b3 create mode 100644 Library/metadata/29/29bf1d4ec1012bc45967ce95b729b8b3.info create mode 100644 Library/metadata/29/29d603e0a726a9043b3503112271844a create mode 100644 Library/metadata/29/29d603e0a726a9043b3503112271844a.info create mode 100644 Library/metadata/2a/2a0bd678385f98e4d8eabdfc07d62b4f create mode 100644 Library/metadata/2a/2a0bd678385f98e4d8eabdfc07d62b4f.info create mode 100644 Library/metadata/2a/2a16748d9461eae46a725db9776d5390 create mode 100644 Library/metadata/2a/2a16748d9461eae46a725db9776d5390.info create mode 100644 Library/metadata/2a/2a28c2fab6b1bb745a844ef6b908e7ee create mode 100644 Library/metadata/2a/2a28c2fab6b1bb745a844ef6b908e7ee.info create mode 100644 Library/metadata/2a/2a4db7a114972834c8e4117be1d82ba3 create mode 100644 Library/metadata/2a/2a4db7a114972834c8e4117be1d82ba3.info create mode 100644 Library/metadata/2a/2ae2ce6274819484fa8747a28cebdf3a create mode 100644 Library/metadata/2a/2ae2ce6274819484fa8747a28cebdf3a.info create mode 100644 Library/metadata/2a/2aff4fada0516c64a8537a20bfe1b699 create mode 100644 Library/metadata/2a/2aff4fada0516c64a8537a20bfe1b699.info create mode 100644 Library/metadata/2b/2b301b727225f1941974d69e61a55620 create mode 100644 Library/metadata/2b/2b301b727225f1941974d69e61a55620.info create mode 100644 Library/metadata/2b/2bafac87e7f4b9b418d9448d219b01ab create mode 100644 Library/metadata/2b/2bafac87e7f4b9b418d9448d219b01ab.info create mode 100644 Library/metadata/2b/2bc8a181dfd9de24388de89bb8db7713 create mode 100644 Library/metadata/2b/2bc8a181dfd9de24388de89bb8db7713.info create mode 100644 Library/metadata/2b/2bd3ca1fde4b154448ef972b0f9d292e create mode 100644 Library/metadata/2b/2bd3ca1fde4b154448ef972b0f9d292e.info create mode 100644 Library/metadata/2b/2bf68308f6cdff141ab98cd34174e4f1 create mode 100644 Library/metadata/2b/2bf68308f6cdff141ab98cd34174e4f1.info create mode 100644 Library/metadata/2c/2c03ae9aa36a4fd44a983831f44654be create mode 100644 Library/metadata/2c/2c03ae9aa36a4fd44a983831f44654be.info create mode 100644 Library/metadata/2c/2c2dfcbbb77359547bcaa7cdabd47ebb create mode 100644 Library/metadata/2c/2c2dfcbbb77359547bcaa7cdabd47ebb.info create mode 100644 Library/metadata/2c/2c814623cb42764d304be0c5ddd03ceb create mode 100644 Library/metadata/2c/2c814623cb42764d304be0c5ddd03ceb.info create mode 100644 Library/metadata/2c/2c87ec8c97244cd47945ec90a99abe35 create mode 100644 Library/metadata/2c/2c87ec8c97244cd47945ec90a99abe35.info create mode 100644 Library/metadata/2c/2ce4bbcc4722440890a03312706037fe create mode 100644 Library/metadata/2c/2ce4bbcc4722440890a03312706037fe.info create mode 100644 Library/metadata/2d/2d142b475fbfb8cf12ba3a795194300a create mode 100644 Library/metadata/2d/2d142b475fbfb8cf12ba3a795194300a.info create mode 100644 Library/metadata/2d/2d49b7c1bcd2e07499844da127be038d create mode 100644 Library/metadata/2d/2d49b7c1bcd2e07499844da127be038d.info create mode 100644 Library/metadata/2d/2d6ba5cbe47e6ad3c87474c56174d4e0 create mode 100644 Library/metadata/2d/2d6ba5cbe47e6ad3c87474c56174d4e0.info create mode 100644 Library/metadata/2d/2d8485e4e3a2bcb429fc32900ca26d9e create mode 100644 Library/metadata/2d/2d8485e4e3a2bcb429fc32900ca26d9e.info create mode 100644 Library/metadata/2d/2d9b6ff056b6f484ba6500aa8e06bcf3 create mode 100644 Library/metadata/2d/2d9b6ff056b6f484ba6500aa8e06bcf3.info create mode 100644 Library/metadata/2d/2da0c512f12947e489f739169773d7ca create mode 100644 Library/metadata/2d/2da0c512f12947e489f739169773d7ca.info create mode 100644 Library/metadata/2d/2da27f5fe80a3a549ac7331d9f52f5f0 create mode 100644 Library/metadata/2d/2da27f5fe80a3a549ac7331d9f52f5f0.info create mode 100644 Library/metadata/2d/2de8ba3b840049641897e0da7ce1d5cd create mode 100644 Library/metadata/2d/2de8ba3b840049641897e0da7ce1d5cd.info create mode 100644 Library/metadata/2e/2e0de782b8e9e4e45baeb7bb5ef4907f create mode 100644 Library/metadata/2e/2e0de782b8e9e4e45baeb7bb5ef4907f.info create mode 100644 Library/metadata/2e/2e3b9bbf2c1a3cd4f88883ca32882ec6 create mode 100644 Library/metadata/2e/2e3b9bbf2c1a3cd4f88883ca32882ec6.info create mode 100644 Library/metadata/2e/2e8066249a525704999c373210d308b9 create mode 100644 Library/metadata/2e/2e8066249a525704999c373210d308b9.info create mode 100644 Library/metadata/2f/2fa2cf7de51b0d34d9dce3747b72e49d create mode 100644 Library/metadata/2f/2fa2cf7de51b0d34d9dce3747b72e49d.info create mode 100644 Library/metadata/2f/2fafe2cfe61f6974895a912c3755e8f1 create mode 100644 Library/metadata/2f/2fafe2cfe61f6974895a912c3755e8f1.info create mode 100644 Library/metadata/2f/2fd6421f253b4ef1a19526541f9ffc0c create mode 100644 Library/metadata/2f/2fd6421f253b4ef1a19526541f9ffc0c.info create mode 100644 Library/metadata/30/305ca32be1aa5504aa182f583895dfe4 create mode 100644 Library/metadata/30/305ca32be1aa5504aa182f583895dfe4.info create mode 100644 Library/metadata/30/30649d3a9faa99c48a7b1166b86bf2a0 create mode 100644 Library/metadata/30/30649d3a9faa99c48a7b1166b86bf2a0.info create mode 100644 Library/metadata/30/3069a00b8c364df395994d7d379e0a99 create mode 100644 Library/metadata/30/3069a00b8c364df395994d7d379e0a99.info create mode 100644 Library/metadata/30/306cc8c2b49d7114eaa3623786fc2126 create mode 100644 Library/metadata/30/306cc8c2b49d7114eaa3623786fc2126.info create mode 100644 Library/metadata/30/309b0604924786544a3786ec4073c5a1 create mode 100644 Library/metadata/30/309b0604924786544a3786ec4073c5a1.info create mode 100644 Library/metadata/30/30a939dce2fd4073955f2f20e659d506 create mode 100644 Library/metadata/30/30a939dce2fd4073955f2f20e659d506.info create mode 100644 Library/metadata/30/30bed781e402439ab8ce4e3357708115 create mode 100644 Library/metadata/30/30bed781e402439ab8ce4e3357708115.info create mode 100644 Library/metadata/31/3168bf9e060ff4b46be4bf08e308ce97 create mode 100644 Library/metadata/31/3168bf9e060ff4b46be4bf08e308ce97.info create mode 100644 Library/metadata/31/3174898fbcdf12448963cdb5f5b60a33 create mode 100644 Library/metadata/31/3174898fbcdf12448963cdb5f5b60a33.info create mode 100644 Library/metadata/31/319b8889f363f5947acf209c17a94149 create mode 100644 Library/metadata/31/319b8889f363f5947acf209c17a94149.info create mode 100644 Library/metadata/31/31a19414c41e5ae4aae2af33fee712f6 create mode 100644 Library/metadata/31/31a19414c41e5ae4aae2af33fee712f6.info create mode 100644 Library/metadata/32/321dc2c0720f8dd4f9396ecdc12b8746 create mode 100644 Library/metadata/32/321dc2c0720f8dd4f9396ecdc12b8746.info create mode 100644 Library/metadata/32/322392995be44d23a3c86cfd972f838f create mode 100644 Library/metadata/32/322392995be44d23a3c86cfd972f838f.info create mode 100644 Library/metadata/32/3245ec927659c4140ac4f8d17403cc18 create mode 100644 Library/metadata/32/3245ec927659c4140ac4f8d17403cc18.info create mode 100644 Library/metadata/32/32535dd294c621e4297fba34b15b1c52 create mode 100644 Library/metadata/32/32535dd294c621e4297fba34b15b1c52.info create mode 100644 Library/metadata/32/32a4a0ea998dd6149937d2774781c436 create mode 100644 Library/metadata/32/32a4a0ea998dd6149937d2774781c436.info create mode 100644 Library/metadata/32/32d40088a6124c578ad6b428df586e2e create mode 100644 Library/metadata/32/32d40088a6124c578ad6b428df586e2e.info create mode 100644 Library/metadata/32/32da81683c22faf458026716a2b821aa create mode 100644 Library/metadata/32/32da81683c22faf458026716a2b821aa.info create mode 100644 Library/metadata/32/32e2186f4598cff489784aae586f2215 create mode 100644 Library/metadata/32/32e2186f4598cff489784aae586f2215.info create mode 100644 Library/metadata/33/3312d7739989d2b4e91e6319e9a96d76 create mode 100644 Library/metadata/33/3312d7739989d2b4e91e6319e9a96d76.info create mode 100644 Library/metadata/33/335020228a0fe124897f51f25f6350ee create mode 100644 Library/metadata/33/335020228a0fe124897f51f25f6350ee.info create mode 100644 Library/metadata/33/3371106faf8d06f47a73979a3c8d82a1 create mode 100644 Library/metadata/33/3371106faf8d06f47a73979a3c8d82a1.info create mode 100644 Library/metadata/33/3387717991705ce4e8ef033a0e543a06 create mode 100644 Library/metadata/33/3387717991705ce4e8ef033a0e543a06.info create mode 100644 Library/metadata/33/33e6b78c96bb0694e96383e3c56b7b54 create mode 100644 Library/metadata/33/33e6b78c96bb0694e96383e3c56b7b54.info create mode 100644 Library/metadata/34/3411e19edd44cfd46b548b058c3bc36c create mode 100644 Library/metadata/34/3411e19edd44cfd46b548b058c3bc36c.info create mode 100644 Library/metadata/34/342a0f8aca7f4f0691338912faec0494 create mode 100644 Library/metadata/34/342a0f8aca7f4f0691338912faec0494.info create mode 100644 Library/metadata/34/343deaaf83e0cee4ca978e7df0b80d21 create mode 100644 Library/metadata/34/343deaaf83e0cee4ca978e7df0b80d21.info create mode 100644 Library/metadata/34/3477d28057cb3e4469c7ea6b8dc23046 create mode 100644 Library/metadata/34/3477d28057cb3e4469c7ea6b8dc23046.info create mode 100644 Library/metadata/34/34d6f60b171c1004e8335d52c65928a3 create mode 100644 Library/metadata/34/34d6f60b171c1004e8335d52c65928a3.info create mode 100644 Library/metadata/34/34e150112c1c42ac83170b52d898e322 create mode 100644 Library/metadata/34/34e150112c1c42ac83170b52d898e322.info create mode 100644 Library/metadata/34/34e2c9b9d9e44953933afe37461f44e6 create mode 100644 Library/metadata/34/34e2c9b9d9e44953933afe37461f44e6.info create mode 100644 Library/metadata/34/34f6695d37a94370a3697f6b068f5d5e create mode 100644 Library/metadata/34/34f6695d37a94370a3697f6b068f5d5e.info create mode 100644 Library/metadata/35/3504aa04cda851b44a65973f9aead6f7 create mode 100644 Library/metadata/35/3504aa04cda851b44a65973f9aead6f7.info create mode 100644 Library/metadata/35/3550d8ec6f29ab34d895ae9a43d560c2 create mode 100644 Library/metadata/35/3550d8ec6f29ab34d895ae9a43d560c2.info create mode 100644 Library/metadata/35/358a618bc6bd9354d81cc206fd2ed80e create mode 100644 Library/metadata/35/358a618bc6bd9354d81cc206fd2ed80e.info create mode 100644 Library/metadata/35/35a0d10199de49f4db0128003bfd3bda create mode 100644 Library/metadata/35/35a0d10199de49f4db0128003bfd3bda.info create mode 100644 Library/metadata/35/35cb34351b19cf44ba78afbd58746610 create mode 100644 Library/metadata/35/35cb34351b19cf44ba78afbd58746610.info create mode 100644 Library/metadata/35/35d143b352678294ab0f5feb97b67f88 create mode 100644 Library/metadata/35/35d143b352678294ab0f5feb97b67f88.info create mode 100644 Library/metadata/35/35ff0937876540d3bd4b6a941df62a92 create mode 100644 Library/metadata/35/35ff0937876540d3bd4b6a941df62a92.info create mode 100644 Library/metadata/36/3664a2ade19bb7848a4d2c96ac9148e3 create mode 100644 Library/metadata/36/3664a2ade19bb7848a4d2c96ac9148e3.info create mode 100644 Library/metadata/36/368d3a0498e78014da578aa5f45e2797 create mode 100644 Library/metadata/36/368d3a0498e78014da578aa5f45e2797.info create mode 100644 Library/metadata/37/371b6b9c8adc50745ace66a6fdf67481 create mode 100644 Library/metadata/37/371b6b9c8adc50745ace66a6fdf67481.info create mode 100644 Library/metadata/37/373b4c78c0396334288fa5ff8e7b7350 create mode 100644 Library/metadata/37/373b4c78c0396334288fa5ff8e7b7350.info create mode 100644 Library/metadata/37/37472f5179ca2004489ac901814cdbc3 create mode 100644 Library/metadata/37/37472f5179ca2004489ac901814cdbc3.info create mode 100644 Library/metadata/37/376c84ea405e0f2b80562c23bb977216 create mode 100644 Library/metadata/37/376c84ea405e0f2b80562c23bb977216.info create mode 100644 Library/metadata/37/37888acc09d9ee848bf9559f06645c45 create mode 100644 Library/metadata/37/37888acc09d9ee848bf9559f06645c45.info create mode 100644 Library/metadata/37/37b164a494cd92a498526852ecceedef create mode 100644 Library/metadata/37/37b164a494cd92a498526852ecceedef.info create mode 100644 Library/metadata/37/37cea569bfefafe49a1513c4d7f0e9eb create mode 100644 Library/metadata/37/37cea569bfefafe49a1513c4d7f0e9eb.info create mode 100644 Library/metadata/37/37cff9f5a86ae494c8cb04423580480d create mode 100644 Library/metadata/37/37cff9f5a86ae494c8cb04423580480d.info create mode 100644 Library/metadata/38/380f7372e785c7d408552e2c760d269d create mode 100644 Library/metadata/38/380f7372e785c7d408552e2c760d269d.info create mode 100644 Library/metadata/38/383966e89d344865a36addd5d378ffd3 create mode 100644 Library/metadata/38/383966e89d344865a36addd5d378ffd3.info create mode 100644 Library/metadata/38/38e3a8976f0b9c586b6dfbcef4e4066c create mode 100644 Library/metadata/38/38e3a8976f0b9c586b6dfbcef4e4066c.info create mode 100644 Library/metadata/39/393b15da08c88194dbbcacd6ee15a89c create mode 100644 Library/metadata/39/393b15da08c88194dbbcacd6ee15a89c.info create mode 100644 Library/metadata/39/39728903e57c60021f80449a8bbc0096 create mode 100644 Library/metadata/39/39728903e57c60021f80449a8bbc0096.info create mode 100644 Library/metadata/39/39ab466162988eb4f83443f911bbf5c8 create mode 100644 Library/metadata/39/39ab466162988eb4f83443f911bbf5c8.info create mode 100644 Library/metadata/39/39dcddcb5895328489c92214aa73e3bb create mode 100644 Library/metadata/39/39dcddcb5895328489c92214aa73e3bb.info create mode 100644 Library/metadata/3a/3a2d94c8977984b67984caeff9fa666e create mode 100644 Library/metadata/3a/3a2d94c8977984b67984caeff9fa666e.info create mode 100644 Library/metadata/3a/3a5038547af7c7f46bd90a015862e0b3 create mode 100644 Library/metadata/3a/3a5038547af7c7f46bd90a015862e0b3.info create mode 100644 Library/metadata/3a/3a784fb721704576b3b4c3a7f3324264 create mode 100644 Library/metadata/3a/3a784fb721704576b3b4c3a7f3324264.info create mode 100644 Library/metadata/3a/3ad53269c7421084ab67f804591994e0 create mode 100644 Library/metadata/3a/3ad53269c7421084ab67f804591994e0.info create mode 100644 Library/metadata/3b/3b0c53b13a1539949b3b212e049151d1 create mode 100644 Library/metadata/3b/3b0c53b13a1539949b3b212e049151d1.info create mode 100644 Library/metadata/3b/3b28913f21577de429da928d6d05219f create mode 100644 Library/metadata/3b/3b28913f21577de429da928d6d05219f.info create mode 100644 Library/metadata/3b/3b4429eff9fcffb48b006e8edcc90338 create mode 100644 Library/metadata/3b/3b4429eff9fcffb48b006e8edcc90338.info create mode 100644 Library/metadata/3b/3bce033ee26244e419b3bb3bba95a37d create mode 100644 Library/metadata/3b/3bce033ee26244e419b3bb3bba95a37d.info create mode 100644 Library/metadata/3b/3bda1886f58f4e0ab1139400b160c3ee create mode 100644 Library/metadata/3b/3bda1886f58f4e0ab1139400b160c3ee.info create mode 100644 Library/metadata/3c/3c01b61b3a6887c49a15276fd38be918 create mode 100644 Library/metadata/3c/3c01b61b3a6887c49a15276fd38be918.info create mode 100644 Library/metadata/3c/3c09dc5cd0a70cf40856b7d406106ee1 create mode 100644 Library/metadata/3c/3c09dc5cd0a70cf40856b7d406106ee1.info create mode 100644 Library/metadata/3c/3c4ccfb0896bcf44da13e152b267aa49 create mode 100644 Library/metadata/3c/3c4ccfb0896bcf44da13e152b267aa49.info create mode 100644 Library/metadata/3c/3c6c403084eacec478a1129ce20061ea create mode 100644 Library/metadata/3c/3c6c403084eacec478a1129ce20061ea.info create mode 100644 Library/metadata/3c/3c737f7a9d78541d1ab25f28f045dd32 create mode 100644 Library/metadata/3c/3c737f7a9d78541d1ab25f28f045dd32.info create mode 100644 Library/metadata/3c/3cf5cb9e1ef590c48b1f919f2a7bd895 create mode 100644 Library/metadata/3c/3cf5cb9e1ef590c48b1f919f2a7bd895.info create mode 100644 Library/metadata/3d/3d42c4854f9093e409cd90c00ef26de0 create mode 100644 Library/metadata/3d/3d42c4854f9093e409cd90c00ef26de0.info create mode 100644 Library/metadata/3d/3d67ccdf81bed8247ad0db2d5f47a7d1 create mode 100644 Library/metadata/3d/3d67ccdf81bed8247ad0db2d5f47a7d1.info create mode 100644 Library/metadata/3d/3dde15f260b0dd1469e60d16eaa795dc create mode 100644 Library/metadata/3d/3dde15f260b0dd1469e60d16eaa795dc.info create mode 100644 Library/metadata/3e/3e29cdd1646803545b8fb18908666ec4 create mode 100644 Library/metadata/3e/3e29cdd1646803545b8fb18908666ec4.info create mode 100644 Library/metadata/3e/3e8d6af343b383544ba5743d119f4062 create mode 100644 Library/metadata/3e/3e8d6af343b383544ba5743d119f4062.info create mode 100644 Library/metadata/3e/3e99141cd5dbef844a4338bb87930b89 create mode 100644 Library/metadata/3e/3e99141cd5dbef844a4338bb87930b89.info create mode 100644 Library/metadata/3e/3ec7596410385054a9e0bc90377fbe63 create mode 100644 Library/metadata/3e/3ec7596410385054a9e0bc90377fbe63.info create mode 100644 Library/metadata/3e/3ec9edad2de6c4df3a146b543a0fbc4c create mode 100644 Library/metadata/3e/3ec9edad2de6c4df3a146b543a0fbc4c.info create mode 100644 Library/metadata/3e/3ee40aa79cd242a5b53b0b0ca4f13f0f create mode 100644 Library/metadata/3e/3ee40aa79cd242a5b53b0b0ca4f13f0f.info create mode 100644 Library/metadata/3f/3f8643c1f8dd449e85b548a14edbea2e create mode 100644 Library/metadata/3f/3f8643c1f8dd449e85b548a14edbea2e.info create mode 100644 Library/metadata/3f/3f8c1075884df0249b80e23a0598f9c1 create mode 100644 Library/metadata/3f/3f8c1075884df0249b80e23a0598f9c1.info create mode 100644 Library/metadata/3f/3f9202a39620f51418046c7754f215f0 create mode 100644 Library/metadata/3f/3f9202a39620f51418046c7754f215f0.info create mode 100644 Library/metadata/3f/3fa274f26b1574c40b949e114327022e create mode 100644 Library/metadata/3f/3fa274f26b1574c40b949e114327022e.info create mode 100644 Library/metadata/3f/3fdd83b151eb8d25c5e2f82fc39dcb04 create mode 100644 Library/metadata/3f/3fdd83b151eb8d25c5e2f82fc39dcb04.info create mode 100644 Library/metadata/3f/3ff3d24ea34f9f74cb138e435f5f491e create mode 100644 Library/metadata/3f/3ff3d24ea34f9f74cb138e435f5f491e.info create mode 100644 Library/metadata/40/4068e97704a16794ea218ba560cdc1e9 create mode 100644 Library/metadata/40/4068e97704a16794ea218ba560cdc1e9.info create mode 100644 Library/metadata/40/408674d91d506a54aac9a7f07951c018 create mode 100644 Library/metadata/40/408674d91d506a54aac9a7f07951c018.info create mode 100644 Library/metadata/40/40bf3cec17fa0b49fe04443c8332d638 create mode 100644 Library/metadata/40/40bf3cec17fa0b49fe04443c8332d638.info create mode 100644 Library/metadata/40/40c83ba6a1a64cb4baac27028dd1acc1 create mode 100644 Library/metadata/40/40c83ba6a1a64cb4baac27028dd1acc1.info create mode 100644 Library/metadata/40/40cb137d0e9816e48a4141ed13afedad create mode 100644 Library/metadata/40/40cb137d0e9816e48a4141ed13afedad.info create mode 100644 Library/metadata/41/411b7c7ffc0960249b35a2a247b66ff7 create mode 100644 Library/metadata/41/411b7c7ffc0960249b35a2a247b66ff7.info create mode 100644 Library/metadata/41/41b96614b2e6494ba995ddcd252d11ae create mode 100644 Library/metadata/41/41b96614b2e6494ba995ddcd252d11ae.info create mode 100644 Library/metadata/41/41d60936b62cc6d4ca7fe628b22b0e40 create mode 100644 Library/metadata/41/41d60936b62cc6d4ca7fe628b22b0e40.info create mode 100644 Library/metadata/41/41dcdc094b311464c8d6cb614548d89b create mode 100644 Library/metadata/41/41dcdc094b311464c8d6cb614548d89b.info create mode 100644 Library/metadata/41/41e14f40b915ca743a3dffd18ffc65ab create mode 100644 Library/metadata/41/41e14f40b915ca743a3dffd18ffc65ab.info create mode 100644 Library/metadata/42/423cd382a7804414d9bfdb2e7fb7bb62 create mode 100644 Library/metadata/42/423cd382a7804414d9bfdb2e7fb7bb62.info create mode 100644 Library/metadata/42/423fe2ef878fa1140a7e1f7f9e365815 create mode 100644 Library/metadata/42/423fe2ef878fa1140a7e1f7f9e365815.info create mode 100644 Library/metadata/42/426106349a0ff964fa4e7178c1d3a4f5 create mode 100644 Library/metadata/42/426106349a0ff964fa4e7178c1d3a4f5.info create mode 100644 Library/metadata/42/42fe78c8fe682715a2cb531422e6ccb3 create mode 100644 Library/metadata/42/42fe78c8fe682715a2cb531422e6ccb3.info create mode 100644 Library/metadata/43/4335a164bb763104c8805212c23d795f create mode 100644 Library/metadata/43/4335a164bb763104c8805212c23d795f.info create mode 100644 Library/metadata/43/438efd46088d408d8a53f707fa68d976 create mode 100644 Library/metadata/43/438efd46088d408d8a53f707fa68d976.info create mode 100644 Library/metadata/43/439c018cf4619e94d9a92110ce0aa188 create mode 100644 Library/metadata/43/439c018cf4619e94d9a92110ce0aa188.info create mode 100644 Library/metadata/43/43a3aec217baa9644a7cf34b5f93fed9 create mode 100644 Library/metadata/43/43a3aec217baa9644a7cf34b5f93fed9.info create mode 100644 Library/metadata/43/43b1467da3d29ae4597a733828cdd84a create mode 100644 Library/metadata/43/43b1467da3d29ae4597a733828cdd84a.info create mode 100644 Library/metadata/44/4402dcee6e9969549bf5b33f11533208 create mode 100644 Library/metadata/44/4402dcee6e9969549bf5b33f11533208.info create mode 100644 Library/metadata/44/44100f5f60f351348b9719b46d46cebe create mode 100644 Library/metadata/44/44100f5f60f351348b9719b46d46cebe.info create mode 100644 Library/metadata/44/44507a833d0ca8a42aaec1c3d752eb5f create mode 100644 Library/metadata/44/44507a833d0ca8a42aaec1c3d752eb5f.info create mode 100644 Library/metadata/44/445cdcfc747eba94288b97f5869aa2fb create mode 100644 Library/metadata/44/445cdcfc747eba94288b97f5869aa2fb.info create mode 100644 Library/metadata/44/44e1d646473a40178712cb2150f54cec create mode 100644 Library/metadata/44/44e1d646473a40178712cb2150f54cec.info create mode 100644 Library/metadata/45/4506ac79f5b274cb1b249ed7f4abfb9a create mode 100644 Library/metadata/45/4506ac79f5b274cb1b249ed7f4abfb9a.info create mode 100644 Library/metadata/45/452534715106564439d2240d82999d88 create mode 100644 Library/metadata/45/452534715106564439d2240d82999d88.info create mode 100644 Library/metadata/45/4545bb65ccebf8040ac212d5792979b5 create mode 100644 Library/metadata/45/4545bb65ccebf8040ac212d5792979b5.info create mode 100644 Library/metadata/45/4584db2acba045742a16942983e7fb96 create mode 100644 Library/metadata/45/4584db2acba045742a16942983e7fb96.info create mode 100644 Library/metadata/45/4585b5feb801bdb44b0e5eafdd95a3be create mode 100644 Library/metadata/45/4585b5feb801bdb44b0e5eafdd95a3be.info create mode 100644 Library/metadata/45/459f6a07ee4a58b42ba2568b097c3ec4 create mode 100644 Library/metadata/45/459f6a07ee4a58b42ba2568b097c3ec4.info create mode 100644 Library/metadata/46/46646a5562f14984690c85ee7b946bc9 create mode 100644 Library/metadata/46/46646a5562f14984690c85ee7b946bc9.info create mode 100644 Library/metadata/46/468e1bfc887161e4196f33e942fc3199 create mode 100644 Library/metadata/46/468e1bfc887161e4196f33e942fc3199.info create mode 100644 Library/metadata/47/470530e667ad4475786b28fa3187ce95 create mode 100644 Library/metadata/47/470530e667ad4475786b28fa3187ce95.info create mode 100644 Library/metadata/47/4722a1362908a1843ab03a055c5c3fa0 create mode 100644 Library/metadata/47/4722a1362908a1843ab03a055c5c3fa0.info create mode 100644 Library/metadata/47/472a6f18dd2f97c41af72271d22db869 create mode 100644 Library/metadata/47/472a6f18dd2f97c41af72271d22db869.info create mode 100644 Library/metadata/47/475e3699f219c854f8581a9838135002 create mode 100644 Library/metadata/47/475e3699f219c854f8581a9838135002.info create mode 100644 Library/metadata/48/48230e4e90fb4d14a9d56bddea898413 create mode 100644 Library/metadata/48/48230e4e90fb4d14a9d56bddea898413.info create mode 100644 Library/metadata/48/4884ccc3528cb2e40a0e6f0a19a2b35b create mode 100644 Library/metadata/48/4884ccc3528cb2e40a0e6f0a19a2b35b.info create mode 100644 Library/metadata/48/48853ae485fa386428341ac1ea122570 create mode 100644 Library/metadata/48/48853ae485fa386428341ac1ea122570.info create mode 100644 Library/metadata/48/48967a2d5427ac2489cc0ea61da5f1a0 create mode 100644 Library/metadata/48/48967a2d5427ac2489cc0ea61da5f1a0.info create mode 100644 Library/metadata/48/48b10b41f58d5b49717f376cda59eeb8 create mode 100644 Library/metadata/48/48b10b41f58d5b49717f376cda59eeb8.info create mode 100644 Library/metadata/48/48d034c499ee4697af9dd6e327110249 create mode 100644 Library/metadata/48/48d034c499ee4697af9dd6e327110249.info create mode 100644 Library/metadata/49/495e2738ac7d88a41a158cd2e237d70b create mode 100644 Library/metadata/49/495e2738ac7d88a41a158cd2e237d70b.info create mode 100644 Library/metadata/49/49679f302ac6408697f6b9314a38985c create mode 100644 Library/metadata/49/49679f302ac6408697f6b9314a38985c.info create mode 100644 Library/metadata/49/49d4c2ab7ff0f4442af256bad7c9d57c create mode 100644 Library/metadata/49/49d4c2ab7ff0f4442af256bad7c9d57c.info create mode 100644 Library/metadata/49/49f1d2c7420db4444b011955726d0046 create mode 100644 Library/metadata/49/49f1d2c7420db4444b011955726d0046.info create mode 100644 Library/metadata/4a/4a0757ee0236f39489520769ae710288 create mode 100644 Library/metadata/4a/4a0757ee0236f39489520769ae710288.info create mode 100644 Library/metadata/4a/4ac5b6a65aaeb59478e3b78660e9f134 create mode 100644 Library/metadata/4a/4ac5b6a65aaeb59478e3b78660e9f134.info create mode 100644 Library/metadata/4a/4acbfc0398bab674f922f693e58f4afc create mode 100644 Library/metadata/4a/4acbfc0398bab674f922f693e58f4afc.info create mode 100644 Library/metadata/4a/4ad09461bf994e54da846f726a23118e create mode 100644 Library/metadata/4a/4ad09461bf994e54da846f726a23118e.info create mode 100644 Library/metadata/4a/4ae64f3f72004807a9f919f9c27af0db create mode 100644 Library/metadata/4a/4ae64f3f72004807a9f919f9c27af0db.info create mode 100644 Library/metadata/4b/4b518b37798c97b0f860962cbf615533 create mode 100644 Library/metadata/4b/4b518b37798c97b0f860962cbf615533.info create mode 100644 Library/metadata/4b/4b57f909f22642d469a39e9628535312 create mode 100644 Library/metadata/4b/4b57f909f22642d469a39e9628535312.info create mode 100644 Library/metadata/4b/4b721099b5d509d4093e516f59ad9ad6 create mode 100644 Library/metadata/4b/4b721099b5d509d4093e516f59ad9ad6.info create mode 100644 Library/metadata/4b/4b8be68229770db4ea3c78ab0d854325 create mode 100644 Library/metadata/4b/4b8be68229770db4ea3c78ab0d854325.info create mode 100644 Library/metadata/4b/4ba2329b63d54f0187bcaa12486b1b0f create mode 100644 Library/metadata/4b/4ba2329b63d54f0187bcaa12486b1b0f.info create mode 100644 Library/metadata/4b/4bbc17b35884fdf468e4b52ae4222882 create mode 100644 Library/metadata/4b/4bbc17b35884fdf468e4b52ae4222882.info create mode 100644 Library/metadata/4b/4bcebd09e16291b4fb14e07f32300e83 create mode 100644 Library/metadata/4b/4bcebd09e16291b4fb14e07f32300e83.info create mode 100644 Library/metadata/4b/4bd2bc28ff24d5c488844851cb785db0 create mode 100644 Library/metadata/4b/4bd2bc28ff24d5c488844851cb785db0.info create mode 100644 Library/metadata/4c/4c1821c1816c6fa44967b8ecb79ea7e4 create mode 100644 Library/metadata/4c/4c1821c1816c6fa44967b8ecb79ea7e4.info create mode 100644 Library/metadata/4c/4c5eb52d37bb6714a98af73df7d9cf2c create mode 100644 Library/metadata/4c/4c5eb52d37bb6714a98af73df7d9cf2c.info create mode 100644 Library/metadata/4c/4c6f60d349ea37048af03504fc872f33 create mode 100644 Library/metadata/4c/4c6f60d349ea37048af03504fc872f33.info create mode 100644 Library/metadata/4c/4cb169caa67eddf4d83b39fd0917a945 create mode 100644 Library/metadata/4c/4cb169caa67eddf4d83b39fd0917a945.info create mode 100644 Library/metadata/4c/4cfe5ade9a1375e40aed87618b92bd12 create mode 100644 Library/metadata/4c/4cfe5ade9a1375e40aed87618b92bd12.info create mode 100644 Library/metadata/4d/4d2250412b81fe34abf39f246e274479 create mode 100644 Library/metadata/4d/4d2250412b81fe34abf39f246e274479.info create mode 100644 Library/metadata/4d/4d31e19fd539ac54c8d9151da43683e9 create mode 100644 Library/metadata/4d/4d31e19fd539ac54c8d9151da43683e9.info create mode 100644 Library/metadata/4d/4d3d51749e989f747b2674e0b4d9b3d7 create mode 100644 Library/metadata/4d/4d3d51749e989f747b2674e0b4d9b3d7.info create mode 100644 Library/metadata/4d/4d616d1a494edd144b262cf6cd5e5fda create mode 100644 Library/metadata/4d/4d616d1a494edd144b262cf6cd5e5fda.info create mode 100644 Library/metadata/4d/4db13e1060deaae48b30246ed63b7c9b create mode 100644 Library/metadata/4d/4db13e1060deaae48b30246ed63b7c9b.info create mode 100644 Library/metadata/4d/4dc5887d05b52fd4fb5f52909d09ffe9 create mode 100644 Library/metadata/4d/4dc5887d05b52fd4fb5f52909d09ffe9.info create mode 100644 Library/metadata/4d/4ddcdc3816429494a8bea67e973875f7 create mode 100644 Library/metadata/4d/4ddcdc3816429494a8bea67e973875f7.info create mode 100644 Library/metadata/4d/4dfcd3a631f61d248b7cc0b845d40345 create mode 100644 Library/metadata/4d/4dfcd3a631f61d248b7cc0b845d40345.info create mode 100644 Library/metadata/4e/4e29b1a8efbd4b44bb3f3716e73f07ff create mode 100644 Library/metadata/4e/4e29b1a8efbd4b44bb3f3716e73f07ff.info create mode 100644 Library/metadata/4f/4f07c137155b291429c0b3670c4defba create mode 100644 Library/metadata/4f/4f07c137155b291429c0b3670c4defba.info create mode 100644 Library/metadata/4f/4f0ca6874aa74540bb3d4fe5a0f86bcc create mode 100644 Library/metadata/4f/4f0ca6874aa74540bb3d4fe5a0f86bcc.info create mode 100644 Library/metadata/4f/4f0f9b9f3ed97ad2b9ba8f1a8e4666c2 create mode 100644 Library/metadata/4f/4f0f9b9f3ed97ad2b9ba8f1a8e4666c2.info create mode 100644 Library/metadata/4f/4f10dd60657c6004587f237a7e90f8e4 create mode 100644 Library/metadata/4f/4f10dd60657c6004587f237a7e90f8e4.info create mode 100644 Library/metadata/4f/4f231c4fb786f3946a6b90b886c48677 create mode 100644 Library/metadata/4f/4f231c4fb786f3946a6b90b886c48677.info create mode 100644 Library/metadata/4f/4f5ed95515938d14189b094f8654d0bd create mode 100644 Library/metadata/4f/4f5ed95515938d14189b094f8654d0bd.info create mode 100644 Library/metadata/4f/4f90cfe4bf5cfb44f84a5b11387f2a42 create mode 100644 Library/metadata/4f/4f90cfe4bf5cfb44f84a5b11387f2a42.info create mode 100644 Library/metadata/4f/4f939b9e23a0946439b812551e07ac81 create mode 100644 Library/metadata/4f/4f939b9e23a0946439b812551e07ac81.info create mode 100644 Library/metadata/4f/4f9ac6e545d53f94b9f09c85b9576f36 create mode 100644 Library/metadata/4f/4f9ac6e545d53f94b9f09c85b9576f36.info create mode 100644 Library/metadata/4f/4fbcc9b1f6ace8c4f8724a88dccca5f8 create mode 100644 Library/metadata/4f/4fbcc9b1f6ace8c4f8724a88dccca5f8.info create mode 100644 Library/metadata/50/505965fb9ab352b4d88882d7c8d822bf create mode 100644 Library/metadata/50/505965fb9ab352b4d88882d7c8d822bf.info create mode 100644 Library/metadata/50/5082cb99a8f99b84d84dd8b4c5233a9e create mode 100644 Library/metadata/50/5082cb99a8f99b84d84dd8b4c5233a9e.info create mode 100644 Library/metadata/50/50de529b6a28f4a7093045e08810a5df create mode 100644 Library/metadata/50/50de529b6a28f4a7093045e08810a5df.info create mode 100644 Library/metadata/51/511aa760b8728a940a41c29837945292 create mode 100644 Library/metadata/51/511aa760b8728a940a41c29837945292.info create mode 100644 Library/metadata/51/5143f58107604835ab1a5efa2d8818fd create mode 100644 Library/metadata/51/5143f58107604835ab1a5efa2d8818fd.info create mode 100644 Library/metadata/51/5151708d47edd4344ba8e7bd469d966e create mode 100644 Library/metadata/51/5151708d47edd4344ba8e7bd469d966e.info create mode 100644 Library/metadata/51/51557afa652635743b264a309f0a5c60 create mode 100644 Library/metadata/51/51557afa652635743b264a309f0a5c60.info create mode 100644 Library/metadata/51/515638b803bef8599dbd6d5c8bdaa53e create mode 100644 Library/metadata/51/515638b803bef8599dbd6d5c8bdaa53e.info create mode 100644 Library/metadata/51/51a7878f6c989394782db73339e90e46 create mode 100644 Library/metadata/51/51a7878f6c989394782db73339e90e46.info create mode 100644 Library/metadata/52/526f285e8d4fb8140b4cdfeb9102d8cb create mode 100644 Library/metadata/52/526f285e8d4fb8140b4cdfeb9102d8cb.info create mode 100644 Library/metadata/52/529fde071171dfd4e99d45ca81a3ac7b create mode 100644 Library/metadata/52/529fde071171dfd4e99d45ca81a3ac7b.info create mode 100644 Library/metadata/52/52c907c81459f324497af504b84fd557 create mode 100644 Library/metadata/52/52c907c81459f324497af504b84fd557.info create mode 100644 Library/metadata/54/5415c904c4fbc3e498253bc2866b37cd create mode 100644 Library/metadata/54/5415c904c4fbc3e498253bc2866b37cd.info create mode 100644 Library/metadata/54/543674eec776b1442a192c932e6cd9b3 create mode 100644 Library/metadata/54/543674eec776b1442a192c932e6cd9b3.info create mode 100644 Library/metadata/54/5440c1153b397e14c9c7b1d6eb83b9f9 create mode 100644 Library/metadata/54/5440c1153b397e14c9c7b1d6eb83b9f9.info create mode 100644 Library/metadata/54/5469ef0820152a4ae45d400fdc4626e4 create mode 100644 Library/metadata/54/5469ef0820152a4ae45d400fdc4626e4.info create mode 100644 Library/metadata/54/5472815444de2ce45bf2053a4af04b9d create mode 100644 Library/metadata/54/5472815444de2ce45bf2053a4af04b9d.info create mode 100644 Library/metadata/54/54d21f6ece3b46479f0c328f8c6007e0 create mode 100644 Library/metadata/54/54d21f6ece3b46479f0c328f8c6007e0.info create mode 100644 Library/metadata/55/5503f95d174761548a68a901beab13c2 create mode 100644 Library/metadata/55/5503f95d174761548a68a901beab13c2.info create mode 100644 Library/metadata/55/559482fe33c79e44882d3a6cedc55fb5 create mode 100644 Library/metadata/55/559482fe33c79e44882d3a6cedc55fb5.info create mode 100644 Library/metadata/55/5598b14661b5f4c43bed757f34b6d172 create mode 100644 Library/metadata/55/5598b14661b5f4c43bed757f34b6d172.info create mode 100644 Library/metadata/55/55a8539917657b14baf6c6a051a7df22 create mode 100644 Library/metadata/55/55a8539917657b14baf6c6a051a7df22.info create mode 100644 Library/metadata/56/5653477a5039f674da8f856adcf47172 create mode 100644 Library/metadata/56/5653477a5039f674da8f856adcf47172.info create mode 100644 Library/metadata/56/56666c5a40171f54783dd416a44f42bf create mode 100644 Library/metadata/56/56666c5a40171f54783dd416a44f42bf.info create mode 100644 Library/metadata/56/5673d7b11cb9ad04eb2368068b720c17 create mode 100644 Library/metadata/56/5673d7b11cb9ad04eb2368068b720c17.info create mode 100644 Library/metadata/56/56ba6cb160ebfc042b48224bd1a35614 create mode 100644 Library/metadata/56/56ba6cb160ebfc042b48224bd1a35614.info create mode 100644 Library/metadata/57/57a39be2178cca94ab21e15c082e3ab6 create mode 100644 Library/metadata/57/57a39be2178cca94ab21e15c082e3ab6.info create mode 100644 Library/metadata/57/57acdaad593b8d143b8fb5052a09d7d0 create mode 100644 Library/metadata/57/57acdaad593b8d143b8fb5052a09d7d0.info create mode 100644 Library/metadata/57/57b0c806ba25b48aa8a6ecb3345a4a9b create mode 100644 Library/metadata/57/57b0c806ba25b48aa8a6ecb3345a4a9b.info create mode 100644 Library/metadata/57/57d2ac5c7d5786e499d4794973fe0d4e create mode 100644 Library/metadata/57/57d2ac5c7d5786e499d4794973fe0d4e.info create mode 100644 Library/metadata/57/57ff740bce4ab0c498ada374a8ca1dc0 create mode 100644 Library/metadata/57/57ff740bce4ab0c498ada374a8ca1dc0.info create mode 100644 Library/metadata/58/58004290eb3aab44e9823d1f25c4ed73 create mode 100644 Library/metadata/58/58004290eb3aab44e9823d1f25c4ed73.info create mode 100644 Library/metadata/58/585b70cb75dd43efbfead809c30a1731 create mode 100644 Library/metadata/58/585b70cb75dd43efbfead809c30a1731.info create mode 100644 Library/metadata/58/58628227479c34542ac8c5193ccced84 create mode 100644 Library/metadata/58/58628227479c34542ac8c5193ccced84.info create mode 100644 Library/metadata/58/5882d0e4313310143acb11d1a66c597f create mode 100644 Library/metadata/58/5882d0e4313310143acb11d1a66c597f.info create mode 100644 Library/metadata/58/589533fb2413e3e4fba7df13a6a75bf2 create mode 100644 Library/metadata/58/589533fb2413e3e4fba7df13a6a75bf2.info create mode 100644 Library/metadata/58/58ad09607a0d62d458a78d7174665566 create mode 100644 Library/metadata/58/58ad09607a0d62d458a78d7174665566.info create mode 100644 Library/metadata/58/58e7d991249847640b1534192721c5ea create mode 100644 Library/metadata/58/58e7d991249847640b1534192721c5ea.info create mode 100644 Library/metadata/58/58eb69fc39be3d040b984b4498a820bb create mode 100644 Library/metadata/58/58eb69fc39be3d040b984b4498a820bb.info create mode 100644 Library/metadata/59/592f7288ed0df2c4b884e2cd9baac023 create mode 100644 Library/metadata/59/592f7288ed0df2c4b884e2cd9baac023.info create mode 100644 Library/metadata/59/59d3f5586b341a74c84c8f72144a4568 create mode 100644 Library/metadata/59/59d3f5586b341a74c84c8f72144a4568.info create mode 100644 Library/metadata/59/59f8146938fff824cb5fd77236b75775 create mode 100644 Library/metadata/59/59f8146938fff824cb5fd77236b75775.info create mode 100644 Library/metadata/59/59ff995fabb3bac45afa0f96f333e5dc create mode 100644 Library/metadata/59/59ff995fabb3bac45afa0f96f333e5dc.info create mode 100644 Library/metadata/5a/5a2e98b03511c6f43bc645238cd40857 create mode 100644 Library/metadata/5a/5a2e98b03511c6f43bc645238cd40857.info create mode 100644 Library/metadata/5a/5a31542ccf4e8584ca4f60843e9d02d0 create mode 100644 Library/metadata/5a/5a31542ccf4e8584ca4f60843e9d02d0.info create mode 100644 Library/metadata/5a/5a7f0d89a47f18c41b6ddf60dfae1bde create mode 100644 Library/metadata/5a/5a7f0d89a47f18c41b6ddf60dfae1bde.info create mode 100644 Library/metadata/5a/5a8c170a1ec28a148ab78df2460a3135 create mode 100644 Library/metadata/5a/5a8c170a1ec28a148ab78df2460a3135.info create mode 100644 Library/metadata/5a/5aa8f57287fc17149bcd798be813180b create mode 100644 Library/metadata/5a/5aa8f57287fc17149bcd798be813180b.info create mode 100644 Library/metadata/5a/5af3322745e78aa488fca5a2090f8755 create mode 100644 Library/metadata/5a/5af3322745e78aa488fca5a2090f8755.info create mode 100644 Library/metadata/5b/5b00473355622524394628f7ec51808d create mode 100644 Library/metadata/5b/5b00473355622524394628f7ec51808d.info create mode 100644 Library/metadata/5b/5b24618beecc3bf41acadfcf2246d772 create mode 100644 Library/metadata/5b/5b24618beecc3bf41acadfcf2246d772.info create mode 100644 Library/metadata/5b/5b2eeca598284bd4abb4a15c30df1576 create mode 100644 Library/metadata/5b/5b2eeca598284bd4abb4a15c30df1576.info create mode 100644 Library/metadata/5b/5b3bd7a976306c9449ba84e0591e8a0f create mode 100644 Library/metadata/5b/5b3bd7a976306c9449ba84e0591e8a0f.info create mode 100644 Library/metadata/5b/5b3e90046c38f1d4dad2e0d5a79e871c create mode 100644 Library/metadata/5b/5b3e90046c38f1d4dad2e0d5a79e871c.info create mode 100644 Library/metadata/5b/5b5c6a576605b3c4aab7d27193785f27 create mode 100644 Library/metadata/5b/5b5c6a576605b3c4aab7d27193785f27.info create mode 100644 Library/metadata/5b/5b6cac4a98010394791c66942a33caf4 create mode 100644 Library/metadata/5b/5b6cac4a98010394791c66942a33caf4.info create mode 100644 Library/metadata/5b/5b994928117e3db418da69c821da7e19 create mode 100644 Library/metadata/5b/5b994928117e3db418da69c821da7e19.info create mode 100644 Library/metadata/5b/5ba130fc1db953547a50bcf5c162a3e8 create mode 100644 Library/metadata/5b/5ba130fc1db953547a50bcf5c162a3e8.info create mode 100644 Library/metadata/5c/5c004b1354944164fb076276c289afc1 create mode 100644 Library/metadata/5c/5c004b1354944164fb076276c289afc1.info create mode 100644 Library/metadata/5c/5c15bf0966eb95847a4260d830a30d30 create mode 100644 Library/metadata/5c/5c15bf0966eb95847a4260d830a30d30.info create mode 100644 Library/metadata/5c/5c9c9f62af2efb948a1974650039e2db create mode 100644 Library/metadata/5c/5c9c9f62af2efb948a1974650039e2db.info create mode 100644 Library/metadata/5d/5d4de3d4682a8d641907cc75e4fb950e create mode 100644 Library/metadata/5d/5d4de3d4682a8d641907cc75e4fb950e.info create mode 100644 Library/metadata/5d/5d7f0d6acfced954682a89e7002c04d9 create mode 100644 Library/metadata/5d/5d7f0d6acfced954682a89e7002c04d9.info create mode 100644 Library/metadata/5d/5da62a0c1c5218c4aa16b74546a7822d create mode 100644 Library/metadata/5d/5da62a0c1c5218c4aa16b74546a7822d.info create mode 100644 Library/metadata/5d/5da77d4d078922b4c8466e9e35fb3f5e create mode 100644 Library/metadata/5d/5da77d4d078922b4c8466e9e35fb3f5e.info create mode 100644 Library/metadata/5d/5da88f348abcbd94585671a69c672781 create mode 100644 Library/metadata/5d/5da88f348abcbd94585671a69c672781.info create mode 100644 Library/metadata/5d/5ddd9f7d3cce6724696a33752ab2f5a4 create mode 100644 Library/metadata/5d/5ddd9f7d3cce6724696a33752ab2f5a4.info create mode 100644 Library/metadata/5d/5df3c21c5237c994db89660fbdfee07d create mode 100644 Library/metadata/5d/5df3c21c5237c994db89660fbdfee07d.info create mode 100644 Library/metadata/5e/5e726086cd652f82087d59d67d2c24cd create mode 100644 Library/metadata/5e/5e726086cd652f82087d59d67d2c24cd.info create mode 100644 Library/metadata/5e/5e83f8baac96eaa47bdd9ca781cd2002 create mode 100644 Library/metadata/5e/5e83f8baac96eaa47bdd9ca781cd2002.info create mode 100644 Library/metadata/5e/5ea6a8a826704f743b3b0ce3e9d3c9a9 create mode 100644 Library/metadata/5e/5ea6a8a826704f743b3b0ce3e9d3c9a9.info create mode 100644 Library/metadata/5e/5ea9f573d4b800a49b9d83a1f61c0a88 create mode 100644 Library/metadata/5e/5ea9f573d4b800a49b9d83a1f61c0a88.info create mode 100644 Library/metadata/5e/5ebb87899ca30b743bb4274bc00c02b4 create mode 100644 Library/metadata/5e/5ebb87899ca30b743bb4274bc00c02b4.info create mode 100644 Library/metadata/5e/5ec95f4d5b2d1f14e9ff8682562553f9 create mode 100644 Library/metadata/5e/5ec95f4d5b2d1f14e9ff8682562553f9.info create mode 100644 Library/metadata/5e/5ecec8cdc3ff99e4a9c65635d7e6b043 create mode 100644 Library/metadata/5e/5ecec8cdc3ff99e4a9c65635d7e6b043.info create mode 100644 Library/metadata/5f/5f31f28cc64c91042976555c016ffd5f create mode 100644 Library/metadata/5f/5f31f28cc64c91042976555c016ffd5f.info create mode 100644 Library/metadata/5f/5f603f10b9ec26841b2ecb6003dc1d0e create mode 100644 Library/metadata/5f/5f603f10b9ec26841b2ecb6003dc1d0e.info create mode 100644 Library/metadata/5f/5f7201a12d95ffc409449d95f23cf332 create mode 100644 Library/metadata/5f/5f7201a12d95ffc409449d95f23cf332.info create mode 100644 Library/metadata/5f/5f875a14565308a40a5262d2504da705 create mode 100644 Library/metadata/5f/5f875a14565308a40a5262d2504da705.info create mode 100644 Library/metadata/5f/5fc988a1d5b04aee9a5222502b201a45 create mode 100644 Library/metadata/5f/5fc988a1d5b04aee9a5222502b201a45.info create mode 100644 Library/metadata/60/600f4b74746dbf944901257f81a8af6d create mode 100644 Library/metadata/60/600f4b74746dbf944901257f81a8af6d.info create mode 100644 Library/metadata/60/6023f2b823fc19b4e4a90875281ff117 create mode 100644 Library/metadata/60/6023f2b823fc19b4e4a90875281ff117.info create mode 100644 Library/metadata/60/6055be8ebefd69e48b49212b09b47b2f create mode 100644 Library/metadata/60/6055be8ebefd69e48b49212b09b47b2f.info create mode 100644 Library/metadata/61/61a20120cddc53849bbc10fc805ffe3e create mode 100644 Library/metadata/61/61a20120cddc53849bbc10fc805ffe3e.info create mode 100644 Library/metadata/61/61d491d99e9292c4a81d7d01a74781ea create mode 100644 Library/metadata/61/61d491d99e9292c4a81d7d01a74781ea.info create mode 100644 Library/metadata/61/61e236e8570a95e4eb754fb291e102e0 create mode 100644 Library/metadata/61/61e236e8570a95e4eb754fb291e102e0.info create mode 100644 Library/metadata/62/621a76c0c3927aa45aba7d2ad0c8e1c8 create mode 100644 Library/metadata/62/621a76c0c3927aa45aba7d2ad0c8e1c8.info create mode 100644 Library/metadata/62/621fd19bcb071b64aa1d68f0271aa780 create mode 100644 Library/metadata/62/621fd19bcb071b64aa1d68f0271aa780.info create mode 100644 Library/metadata/62/623c79a1e113b4941afdbfc88d19e8fd create mode 100644 Library/metadata/62/623c79a1e113b4941afdbfc88d19e8fd.info create mode 100644 Library/metadata/63/63118a0c9ee42ac46b7f30e793177a76 create mode 100644 Library/metadata/63/63118a0c9ee42ac46b7f30e793177a76.info create mode 100644 Library/metadata/63/63572993f2104574099a48392460b211 create mode 100644 Library/metadata/63/63572993f2104574099a48392460b211.info create mode 100644 Library/metadata/63/6366ee97f6b541449155028b9487355a create mode 100644 Library/metadata/63/6366ee97f6b541449155028b9487355a.info create mode 100644 Library/metadata/63/63f2caa33e79582448112b2e286d576d create mode 100644 Library/metadata/63/63f2caa33e79582448112b2e286d576d.info create mode 100644 Library/metadata/64/640125adae259fe47a36be84e510a46e create mode 100644 Library/metadata/64/640125adae259fe47a36be84e510a46e.info create mode 100644 Library/metadata/64/645165c8169474bfbbeb8fb0bcfd26f5 create mode 100644 Library/metadata/64/645165c8169474bfbbeb8fb0bcfd26f5.info create mode 100644 Library/metadata/64/64689f8b25eadac4da519e96f514b653 create mode 100644 Library/metadata/64/64689f8b25eadac4da519e96f514b653.info create mode 100644 Library/metadata/64/647e1bbd3809b30459d946b4a1ddf22b create mode 100644 Library/metadata/64/647e1bbd3809b30459d946b4a1ddf22b.info create mode 100644 Library/metadata/64/64b9fad609434c489c32b1cdf2004a1c create mode 100644 Library/metadata/64/64b9fad609434c489c32b1cdf2004a1c.info create mode 100644 Library/metadata/65/6546d7765b4165b40850b3667f981c26 create mode 100644 Library/metadata/65/6546d7765b4165b40850b3667f981c26.info create mode 100644 Library/metadata/65/656e461844099ae43a609ff6109b0877 create mode 100644 Library/metadata/65/656e461844099ae43a609ff6109b0877.info create mode 100644 Library/metadata/65/65701ebe8bada6b4785e9c7afe7f5bee create mode 100644 Library/metadata/65/65701ebe8bada6b4785e9c7afe7f5bee.info create mode 100644 Library/metadata/65/658c1fb149e7498aa072b0c0f3bf13f0 create mode 100644 Library/metadata/65/658c1fb149e7498aa072b0c0f3bf13f0.info create mode 100644 Library/metadata/65/65b045927b3948f43afb31234936c6aa create mode 100644 Library/metadata/65/65b045927b3948f43afb31234936c6aa.info create mode 100644 Library/metadata/65/65f3a4c67e4927a478b7036bae1da0e3 create mode 100644 Library/metadata/65/65f3a4c67e4927a478b7036bae1da0e3.info create mode 100644 Library/metadata/65/65fb6da362a78334ab360a125cfafdaf create mode 100644 Library/metadata/65/65fb6da362a78334ab360a125cfafdaf.info create mode 100644 Library/metadata/66/667a99762bdf5484fbaa02573fd396e2 create mode 100644 Library/metadata/66/667a99762bdf5484fbaa02573fd396e2.info create mode 100644 Library/metadata/66/667c6ad86a0b7a548aaa5c287f2c2861 create mode 100644 Library/metadata/66/667c6ad86a0b7a548aaa5c287f2c2861.info create mode 100644 Library/metadata/66/66b2b8fd1d9b4bc4c96b07335ad822f3 create mode 100644 Library/metadata/66/66b2b8fd1d9b4bc4c96b07335ad822f3.info create mode 100644 Library/metadata/66/66c95bb3c74257f41bae2622511dc02d create mode 100644 Library/metadata/66/66c95bb3c74257f41bae2622511dc02d.info create mode 100644 Library/metadata/67/6773203120b27984d9a8572fa3564f03 create mode 100644 Library/metadata/67/6773203120b27984d9a8572fa3564f03.info create mode 100644 Library/metadata/67/67db9e8f0e2ae9c40bc1e2b64352a6b4 create mode 100644 Library/metadata/67/67db9e8f0e2ae9c40bc1e2b64352a6b4.info create mode 100644 Library/metadata/67/67e3583b91179094094c6a188b232262 create mode 100644 Library/metadata/67/67e3583b91179094094c6a188b232262.info create mode 100644 Library/metadata/67/67e9c6cf60c57a54f9f4db1bc33fd2e3 create mode 100644 Library/metadata/67/67e9c6cf60c57a54f9f4db1bc33fd2e3.info create mode 100644 Library/metadata/67/67ee43b2f6148de40861b289b0e00591 create mode 100644 Library/metadata/67/67ee43b2f6148de40861b289b0e00591.info create mode 100644 Library/metadata/68/685f63932bebd0c4db02ee14845191e2 create mode 100644 Library/metadata/68/685f63932bebd0c4db02ee14845191e2.info create mode 100644 Library/metadata/68/68993ba529ae04440916cb7c23bf3279 create mode 100644 Library/metadata/68/68993ba529ae04440916cb7c23bf3279.info create mode 100644 Library/metadata/68/68a48d1900320ed458e118415857faf6 create mode 100644 Library/metadata/68/68a48d1900320ed458e118415857faf6.info create mode 100644 Library/metadata/68/68cb547af0187634aad591a09c01cd5b create mode 100644 Library/metadata/68/68cb547af0187634aad591a09c01cd5b.info create mode 100644 Library/metadata/68/68e5dc8bfd5d72647a93b7f2e1da831a create mode 100644 Library/metadata/68/68e5dc8bfd5d72647a93b7f2e1da831a.info create mode 100644 Library/metadata/68/68eedd4e5b33b37429c02c4add0036fe create mode 100644 Library/metadata/68/68eedd4e5b33b37429c02c4add0036fe.info create mode 100644 Library/metadata/69/6901fab4d5157ac48b9f263730387c03 create mode 100644 Library/metadata/69/6901fab4d5157ac48b9f263730387c03.info create mode 100644 Library/metadata/69/691475c57a824010be0c6f474caeb7e1 create mode 100644 Library/metadata/69/691475c57a824010be0c6f474caeb7e1.info create mode 100644 Library/metadata/69/691db8cb70c4426a8ae718465c21345f create mode 100644 Library/metadata/69/691db8cb70c4426a8ae718465c21345f.info create mode 100644 Library/metadata/69/6965880f76f40194593cb53a88f74005 create mode 100644 Library/metadata/69/6965880f76f40194593cb53a88f74005.info create mode 100644 Library/metadata/69/698b660e9477f4f16abad03ec00ce38c create mode 100644 Library/metadata/69/698b660e9477f4f16abad03ec00ce38c.info create mode 100644 Library/metadata/69/69ae55f76840b2849ba56cfb53a17df0 create mode 100644 Library/metadata/69/69ae55f76840b2849ba56cfb53a17df0.info create mode 100644 Library/metadata/69/69e3979b7029e8a4da2d96b714ba5c3a create mode 100644 Library/metadata/69/69e3979b7029e8a4da2d96b714ba5c3a.info create mode 100644 Library/metadata/6a/6a4f0c91a28ece04198b200dd55145d0 create mode 100644 Library/metadata/6a/6a4f0c91a28ece04198b200dd55145d0.info create mode 100644 Library/metadata/6a/6a981cd1456bec84b86e1c66773f57f5 create mode 100644 Library/metadata/6a/6a981cd1456bec84b86e1c66773f57f5.info create mode 100644 Library/metadata/6a/6ace62d30f494c948b71d5594afce11d create mode 100644 Library/metadata/6a/6ace62d30f494c948b71d5594afce11d.info create mode 100644 Library/metadata/6a/6ad632cbcc87f634d9b86006cdffdaf5 create mode 100644 Library/metadata/6a/6ad632cbcc87f634d9b86006cdffdaf5.info create mode 100644 Library/metadata/6a/6afb166a156df2d20433d981f4bb2832 create mode 100644 Library/metadata/6a/6afb166a156df2d20433d981f4bb2832.info create mode 100644 Library/metadata/6b/6b01141ed8f74d198965c86f25eb7040 create mode 100644 Library/metadata/6b/6b01141ed8f74d198965c86f25eb7040.info create mode 100644 Library/metadata/6b/6b1ae1e78552c459d9ce27048ff51c7f create mode 100644 Library/metadata/6b/6b1ae1e78552c459d9ce27048ff51c7f.info create mode 100644 Library/metadata/6b/6b259c4003a802847b9ada90744e34c5 create mode 100644 Library/metadata/6b/6b259c4003a802847b9ada90744e34c5.info create mode 100644 Library/metadata/6b/6b32b6725087a0d4bb1670818d26996e create mode 100644 Library/metadata/6b/6b32b6725087a0d4bb1670818d26996e.info create mode 100644 Library/metadata/6b/6b72875690e0f7343911e06af3145bd5 create mode 100644 Library/metadata/6b/6b72875690e0f7343911e06af3145bd5.info create mode 100644 Library/metadata/6b/6ba7805325c426c43b8e85b5be4eae36 create mode 100644 Library/metadata/6b/6ba7805325c426c43b8e85b5be4eae36.info create mode 100644 Library/metadata/6b/6bfec54ce89b0b642a65d44def023b99 create mode 100644 Library/metadata/6b/6bfec54ce89b0b642a65d44def023b99.info create mode 100644 Library/metadata/6c/6c3d52cc5c46d7946a920e21901ff38e create mode 100644 Library/metadata/6c/6c3d52cc5c46d7946a920e21901ff38e.info create mode 100644 Library/metadata/6c/6c61ba0c209bcc74f83e3650039ebdf9 create mode 100644 Library/metadata/6c/6c61ba0c209bcc74f83e3650039ebdf9.info create mode 100644 Library/metadata/6c/6ca745fb561cbf640b6e603f95662fa0 create mode 100644 Library/metadata/6c/6ca745fb561cbf640b6e603f95662fa0.info create mode 100644 Library/metadata/6c/6cccd50ebf7384242bda4d7bcb282ebf create mode 100644 Library/metadata/6c/6cccd50ebf7384242bda4d7bcb282ebf.info create mode 100644 Library/metadata/6d/6d16f2e78a356d34c9a32108929de932 create mode 100644 Library/metadata/6d/6d16f2e78a356d34c9a32108929de932.info create mode 100644 Library/metadata/6d/6d437b997e074079b4b2f6e395394f4b create mode 100644 Library/metadata/6d/6d437b997e074079b4b2f6e395394f4b.info create mode 100644 Library/metadata/6d/6d468ee3657be7a43a2ef2178ec14239 create mode 100644 Library/metadata/6d/6d468ee3657be7a43a2ef2178ec14239.info create mode 100644 Library/metadata/6d/6d56244f8c39a851975d3c0bd432c66f create mode 100644 Library/metadata/6d/6d56244f8c39a851975d3c0bd432c66f.info create mode 100644 Library/metadata/6d/6d5833966abeadb429de247e4316eef4 create mode 100644 Library/metadata/6d/6d5833966abeadb429de247e4316eef4.info create mode 100644 Library/metadata/6d/6d6f82a762acb4417b895d3babc790f9 create mode 100644 Library/metadata/6d/6d6f82a762acb4417b895d3babc790f9.info create mode 100644 Library/metadata/6d/6d768b1bb52e2c64ba818933dbdd8452 create mode 100644 Library/metadata/6d/6d768b1bb52e2c64ba818933dbdd8452.info create mode 100644 Library/metadata/6d/6d9df2bc198c417db00037803568139c create mode 100644 Library/metadata/6d/6d9df2bc198c417db00037803568139c.info create mode 100644 Library/metadata/6d/6dbcf248c987476181a37f01a1814975 create mode 100644 Library/metadata/6d/6dbcf248c987476181a37f01a1814975.info create mode 100644 Library/metadata/6d/6de79ae237e51554da96fd28f68b66a6 create mode 100644 Library/metadata/6d/6de79ae237e51554da96fd28f68b66a6.info create mode 100644 Library/metadata/6e/6e0e62db88935c74288c97c907243bd0 create mode 100644 Library/metadata/6e/6e0e62db88935c74288c97c907243bd0.info create mode 100644 Library/metadata/6e/6e1c8b97ec8aa0464e92506ffe099558 create mode 100644 Library/metadata/6e/6e1c8b97ec8aa0464e92506ffe099558.info create mode 100644 Library/metadata/6e/6e7c80eefe2def5459e0b486b3ab96e2 create mode 100644 Library/metadata/6e/6e7c80eefe2def5459e0b486b3ab96e2.info create mode 100644 Library/metadata/6e/6ecb9e17e44feb84cb80451fa27b09fe create mode 100644 Library/metadata/6e/6ecb9e17e44feb84cb80451fa27b09fe.info create mode 100644 Library/metadata/6f/6f1c7ebc8ac78cb951be24c238cbd3ba create mode 100644 Library/metadata/6f/6f1c7ebc8ac78cb951be24c238cbd3ba.info create mode 100644 Library/metadata/6f/6f25fb081e85cb743b272c2f7fbc2f6b create mode 100644 Library/metadata/6f/6f25fb081e85cb743b272c2f7fbc2f6b.info create mode 100644 Library/metadata/6f/6f515f8ecd3b6a546b90abaae2553f99 create mode 100644 Library/metadata/6f/6f515f8ecd3b6a546b90abaae2553f99.info create mode 100644 Library/metadata/6f/6f516f1ec21a54a59a92bf99db2d9535 create mode 100644 Library/metadata/6f/6f516f1ec21a54a59a92bf99db2d9535.info create mode 100644 Library/metadata/6f/6f72aa6eab9392548b9e9d92eb6b2ef8 create mode 100644 Library/metadata/6f/6f72aa6eab9392548b9e9d92eb6b2ef8.info create mode 100644 Library/metadata/6f/6f768c3714a34a549960ea903fbadcc2 create mode 100644 Library/metadata/6f/6f768c3714a34a549960ea903fbadcc2.info create mode 100644 Library/metadata/6f/6fdea2af3daa40fe8f88e5e9cfc17abb create mode 100644 Library/metadata/6f/6fdea2af3daa40fe8f88e5e9cfc17abb.info create mode 100644 Library/metadata/70/7043e9a330ac2d84a80a965ada4589ad create mode 100644 Library/metadata/70/7043e9a330ac2d84a80a965ada4589ad.info create mode 100644 Library/metadata/70/7065397ff8184621aa3ca4f854491259 create mode 100644 Library/metadata/70/7065397ff8184621aa3ca4f854491259.info create mode 100644 Library/metadata/70/70a190a1b304d1e43995af35d09231d6 create mode 100644 Library/metadata/70/70a190a1b304d1e43995af35d09231d6.info create mode 100644 Library/metadata/70/70b265ed18dc14041bedc0263d4578ef create mode 100644 Library/metadata/70/70b265ed18dc14041bedc0263d4578ef.info create mode 100644 Library/metadata/70/70d4d75a2877243758b0750cbc75b6eb create mode 100644 Library/metadata/70/70d4d75a2877243758b0750cbc75b6eb.info create mode 100644 Library/metadata/70/70eae1897c9d308448eb3bb0b5be9f58 create mode 100644 Library/metadata/70/70eae1897c9d308448eb3bb0b5be9f58.info create mode 100644 Library/metadata/70/70f955bbb437a494888ef54d97abb474 create mode 100644 Library/metadata/70/70f955bbb437a494888ef54d97abb474.info create mode 100644 Library/metadata/71/7116e04a377b195458798657c617e324 create mode 100644 Library/metadata/71/7116e04a377b195458798657c617e324.info create mode 100644 Library/metadata/71/718966f960cb50643986195e5fe953ca create mode 100644 Library/metadata/71/718966f960cb50643986195e5fe953ca.info create mode 100644 Library/metadata/71/71bb46b59a9a7a346bbab1e185c723df create mode 100644 Library/metadata/71/71bb46b59a9a7a346bbab1e185c723df.info create mode 100644 Library/metadata/71/71c1514a6bd24e1e882cebbe1904ce04 create mode 100644 Library/metadata/71/71c1514a6bd24e1e882cebbe1904ce04.info create mode 100644 Library/metadata/72/7241c7dc25374fc1a6ab3ef9da79c363 create mode 100644 Library/metadata/72/7241c7dc25374fc1a6ab3ef9da79c363.info create mode 100644 Library/metadata/72/728d2c19676ea3743aaa087aa28c4a16 create mode 100644 Library/metadata/72/728d2c19676ea3743aaa087aa28c4a16.info create mode 100644 Library/metadata/73/7341c0cd0aad4994e8fa461cb443aa7d create mode 100644 Library/metadata/73/7341c0cd0aad4994e8fa461cb443aa7d.info create mode 100644 Library/metadata/73/735d54f21944f834f931716514c87a84 create mode 100644 Library/metadata/73/735d54f21944f834f931716514c87a84.info create mode 100644 Library/metadata/73/73deb9b8722aa284eab27c4dc90956c6 create mode 100644 Library/metadata/73/73deb9b8722aa284eab27c4dc90956c6.info create mode 100644 Library/metadata/74/740b3785866edda4b8d1e1a05570a5f8 create mode 100644 Library/metadata/74/740b3785866edda4b8d1e1a05570a5f8.info create mode 100644 Library/metadata/74/742654cad2425334696ba6ed4495cfef create mode 100644 Library/metadata/74/742654cad2425334696ba6ed4495cfef.info create mode 100644 Library/metadata/74/74374298effb78d47b85450f7f724cef create mode 100644 Library/metadata/74/74374298effb78d47b85450f7f724cef.info create mode 100644 Library/metadata/74/743879b4db4bc1a4b829aae4386f4acf create mode 100644 Library/metadata/74/743879b4db4bc1a4b829aae4386f4acf.info create mode 100644 Library/metadata/74/7496af95dfe67cf429ac65edaaf99106 create mode 100644 Library/metadata/74/7496af95dfe67cf429ac65edaaf99106.info create mode 100644 Library/metadata/75/750aad009559b814dbc27001341fc1c3 create mode 100644 Library/metadata/75/750aad009559b814dbc27001341fc1c3.info create mode 100644 Library/metadata/75/75df57ccb1e44c64085399277405e1ca create mode 100644 Library/metadata/75/75df57ccb1e44c64085399277405e1ca.info create mode 100644 Library/metadata/75/75e7d7a9a57458841a85fe42d9c9141f create mode 100644 Library/metadata/75/75e7d7a9a57458841a85fe42d9c9141f.info create mode 100644 Library/metadata/76/7602252bdb82b8d45ae3483c3a00d3e1 create mode 100644 Library/metadata/76/7602252bdb82b8d45ae3483c3a00d3e1.info create mode 100644 Library/metadata/76/7693972390a4ed841a986c0c452c1058 create mode 100644 Library/metadata/76/7693972390a4ed841a986c0c452c1058.info create mode 100644 Library/metadata/76/769f6f5dd7c8f2d4c9ab1caba0bd2628 create mode 100644 Library/metadata/76/769f6f5dd7c8f2d4c9ab1caba0bd2628.info create mode 100644 Library/metadata/76/76b6bf32a6fcf934aab8c529bddccc81 create mode 100644 Library/metadata/76/76b6bf32a6fcf934aab8c529bddccc81.info create mode 100644 Library/metadata/76/76c392e42b5098c458856cdf6ecaaaa1 create mode 100644 Library/metadata/76/76c392e42b5098c458856cdf6ecaaaa1.info create mode 100644 Library/metadata/76/76c82729ad712f14bae1a8a279c52ac3 create mode 100644 Library/metadata/76/76c82729ad712f14bae1a8a279c52ac3.info create mode 100644 Library/metadata/77/77476292f9fa4905a787e6417853846b create mode 100644 Library/metadata/77/77476292f9fa4905a787e6417853846b.info create mode 100644 Library/metadata/77/7748a1d3701ac824ea7f366ba0388f5d create mode 100644 Library/metadata/77/7748a1d3701ac824ea7f366ba0388f5d.info create mode 100644 Library/metadata/77/77f432980bb30084299a138e15c6f571 create mode 100644 Library/metadata/77/77f432980bb30084299a138e15c6f571.info create mode 100644 Library/metadata/78/782c49e6e68074dc7ba12c95537825ce create mode 100644 Library/metadata/78/782c49e6e68074dc7ba12c95537825ce.info create mode 100644 Library/metadata/78/782de34c17796430ba8d0ceddb60944e create mode 100644 Library/metadata/78/782de34c17796430ba8d0ceddb60944e.info create mode 100644 Library/metadata/78/7883cd788d83a71478342eef943e8150 create mode 100644 Library/metadata/78/7883cd788d83a71478342eef943e8150.info create mode 100644 Library/metadata/79/794f3951c48395848920fdb593a2ae38 create mode 100644 Library/metadata/79/794f3951c48395848920fdb593a2ae38.info create mode 100644 Library/metadata/79/798968d841703b54bb9d08b1da6bc52f create mode 100644 Library/metadata/79/798968d841703b54bb9d08b1da6bc52f.info create mode 100644 Library/metadata/79/79ced2556f0af814a840b86232613ff1 create mode 100644 Library/metadata/79/79ced2556f0af814a840b86232613ff1.info create mode 100644 Library/metadata/79/79ff392d1bde4ad78a3836a4a480392d create mode 100644 Library/metadata/79/79ff392d1bde4ad78a3836a4a480392d.info create mode 100644 Library/metadata/7a/7a24ec4b5c3e08e47bf50c8298c1fe0d create mode 100644 Library/metadata/7a/7a24ec4b5c3e08e47bf50c8298c1fe0d.info create mode 100644 Library/metadata/7a/7a892c920c8ad2848b469ec9579c5219 create mode 100644 Library/metadata/7a/7a892c920c8ad2848b469ec9579c5219.info create mode 100644 Library/metadata/7a/7a98125502f715b4b83cfb77b434e436 create mode 100644 Library/metadata/7a/7a98125502f715b4b83cfb77b434e436.info create mode 100644 Library/metadata/7a/7af6ac3e6b51b8d4aab04adc85b8de2f create mode 100644 Library/metadata/7a/7af6ac3e6b51b8d4aab04adc85b8de2f.info create mode 100644 Library/metadata/7b/7b743370ac3e4ec2a1668f5455a8ef8a create mode 100644 Library/metadata/7b/7b743370ac3e4ec2a1668f5455a8ef8a.info create mode 100644 Library/metadata/7b/7bd96d76711152648a736c4d28d865f2 create mode 100644 Library/metadata/7b/7bd96d76711152648a736c4d28d865f2.info create mode 100644 Library/metadata/7b/7be84a49bb2cd7e4a9ed097ba22794d0 create mode 100644 Library/metadata/7b/7be84a49bb2cd7e4a9ed097ba22794d0.info create mode 100644 Library/metadata/7c/7c04f0dfa9243c04681a55d90d3ff3fc create mode 100644 Library/metadata/7c/7c04f0dfa9243c04681a55d90d3ff3fc.info create mode 100644 Library/metadata/7c/7c6295db74da28645bf49db58b7c9c65 create mode 100644 Library/metadata/7c/7c6295db74da28645bf49db58b7c9c65.info create mode 100644 Library/metadata/7c/7cfaad4e53832d94c9421d2dd1ad82f7 create mode 100644 Library/metadata/7c/7cfaad4e53832d94c9421d2dd1ad82f7.info create mode 100644 Library/metadata/7d/7d36034e63ad8254b9b2f55280fcc040 create mode 100644 Library/metadata/7d/7d36034e63ad8254b9b2f55280fcc040.info create mode 100644 Library/metadata/7d/7d3aa106cfe752241997b3759bf80163 create mode 100644 Library/metadata/7d/7d3aa106cfe752241997b3759bf80163.info create mode 100644 Library/metadata/7d/7d7bd4bcc815cfb44b9990c29dabdb9f create mode 100644 Library/metadata/7d/7d7bd4bcc815cfb44b9990c29dabdb9f.info create mode 100644 Library/metadata/7e/7e609b27ad2caa14c83dd9951b6c13c6 create mode 100644 Library/metadata/7e/7e609b27ad2caa14c83dd9951b6c13c6.info create mode 100644 Library/metadata/7e/7ef6801a8b664544aa9f2ab1bc1f8b60 create mode 100644 Library/metadata/7e/7ef6801a8b664544aa9f2ab1bc1f8b60.info create mode 100644 Library/metadata/7e/7ef8348b8ea834d7e1bc214b07f7fb87 create mode 100644 Library/metadata/7e/7ef8348b8ea834d7e1bc214b07f7fb87.info create mode 100644 Library/metadata/7f/7f27709c942d91541be1fd6aa5cb3d78 create mode 100644 Library/metadata/7f/7f27709c942d91541be1fd6aa5cb3d78.info create mode 100644 Library/metadata/7f/7f65567c9026afb4db5de3355accc636 create mode 100644 Library/metadata/7f/7f65567c9026afb4db5de3355accc636.info create mode 100644 Library/metadata/7f/7fc2147e42d71644aad0eaf9a3526249 create mode 100644 Library/metadata/7f/7fc2147e42d71644aad0eaf9a3526249.info create mode 100644 Library/metadata/80/803abab0f7e17044db56f8760186dbd1 create mode 100644 Library/metadata/80/803abab0f7e17044db56f8760186dbd1.info create mode 100644 Library/metadata/80/806de5a9211448c8b65c8435ebb48dd4 create mode 100644 Library/metadata/80/806de5a9211448c8b65c8435ebb48dd4.info create mode 100644 Library/metadata/80/80ae83fdf1fb2c649bccb8c293b94556 create mode 100644 Library/metadata/80/80ae83fdf1fb2c649bccb8c293b94556.info create mode 100644 Library/metadata/80/80b10e1c58509a449a3c5aecc07d4455 create mode 100644 Library/metadata/80/80b10e1c58509a449a3c5aecc07d4455.info create mode 100644 Library/metadata/80/80beef77cb19e713c7c2d481b65ed485 create mode 100644 Library/metadata/80/80beef77cb19e713c7c2d481b65ed485.info create mode 100644 Library/metadata/81/811d999912a5f3f459a637aad029fbc8 create mode 100644 Library/metadata/81/811d999912a5f3f459a637aad029fbc8.info create mode 100644 Library/metadata/81/812aaaefaab404448a3e4db49dfa5206 create mode 100644 Library/metadata/81/812aaaefaab404448a3e4db49dfa5206.info create mode 100644 Library/metadata/81/8143d3a8390f2c64685e3bc272bd9e90 create mode 100644 Library/metadata/81/8143d3a8390f2c64685e3bc272bd9e90.info create mode 100644 Library/metadata/81/81a142c61a4e14d46bb21b02548ad24d create mode 100644 Library/metadata/81/81a142c61a4e14d46bb21b02548ad24d.info create mode 100644 Library/metadata/81/81ed8c76d2bc4a4c95d092c98af4e58f create mode 100644 Library/metadata/81/81ed8c76d2bc4a4c95d092c98af4e58f.info create mode 100644 Library/metadata/82/821f5482c5a3f4389885f4432433f56f create mode 100644 Library/metadata/82/821f5482c5a3f4389885f4432433f56f.info create mode 100644 Library/metadata/82/826b6becaef90fb458eedebe4c2f3664 create mode 100644 Library/metadata/82/826b6becaef90fb458eedebe4c2f3664.info create mode 100644 Library/metadata/82/828075bc53f2de84982a943870529b7b create mode 100644 Library/metadata/82/828075bc53f2de84982a943870529b7b.info create mode 100644 Library/metadata/82/82a8ce43816925d4b971951094cb755c create mode 100644 Library/metadata/82/82a8ce43816925d4b971951094cb755c.info create mode 100644 Library/metadata/82/82bf3f737dec0be43a60891958a8da87 create mode 100644 Library/metadata/82/82bf3f737dec0be43a60891958a8da87.info create mode 100644 Library/metadata/82/82cd92ffc29383742932b27ca414c80f create mode 100644 Library/metadata/82/82cd92ffc29383742932b27ca414c80f.info create mode 100644 Library/metadata/83/83088ba2132cbc940b7ca0c679a02b0d create mode 100644 Library/metadata/83/83088ba2132cbc940b7ca0c679a02b0d.info create mode 100644 Library/metadata/83/83127dd120c01de45954b99cc4d669a5 create mode 100644 Library/metadata/83/83127dd120c01de45954b99cc4d669a5.info create mode 100644 Library/metadata/83/8313ea704470a264295ec9e09aec6ebc create mode 100644 Library/metadata/83/8313ea704470a264295ec9e09aec6ebc.info create mode 100644 Library/metadata/83/833143c443f979e44ae0b8ed899e3b59 create mode 100644 Library/metadata/83/833143c443f979e44ae0b8ed899e3b59.info create mode 100644 Library/metadata/83/8349e42a2b30c7a4abd8678c203428ba create mode 100644 Library/metadata/83/8349e42a2b30c7a4abd8678c203428ba.info create mode 100644 Library/metadata/83/83eda34b7da01e04aa894f268158b0c0 create mode 100644 Library/metadata/83/83eda34b7da01e04aa894f268158b0c0.info create mode 100644 Library/metadata/84/8413ca0e506d42a1a4bd9769f204ad16 create mode 100644 Library/metadata/84/8413ca0e506d42a1a4bd9769f204ad16.info create mode 100644 Library/metadata/84/844873d1afe1c3142ab922324950e1dd create mode 100644 Library/metadata/84/844873d1afe1c3142ab922324950e1dd.info create mode 100644 Library/metadata/84/84a92b25f83d49b9bc132d206b370281 create mode 100644 Library/metadata/84/84a92b25f83d49b9bc132d206b370281.info create mode 100644 Library/metadata/84/84b5362754a9d934ba259398b757d0be create mode 100644 Library/metadata/84/84b5362754a9d934ba259398b757d0be.info create mode 100644 Library/metadata/84/84d86c98104d94063ad70bc591530f65 create mode 100644 Library/metadata/84/84d86c98104d94063ad70bc591530f65.info create mode 100644 Library/metadata/85/850af9f3bf6d14143baf2ecfbf25db52 create mode 100644 Library/metadata/85/850af9f3bf6d14143baf2ecfbf25db52.info create mode 100644 Library/metadata/85/850c54ee0b9e1aa740b1c67792eb1f26 create mode 100644 Library/metadata/85/850c54ee0b9e1aa740b1c67792eb1f26.info create mode 100644 Library/metadata/85/853edc343b78a7c4c81cbb3851d48c0a create mode 100644 Library/metadata/85/853edc343b78a7c4c81cbb3851d48c0a.info create mode 100644 Library/metadata/85/8573c56c34e616248a3881b2c56280ef create mode 100644 Library/metadata/85/8573c56c34e616248a3881b2c56280ef.info create mode 100644 Library/metadata/85/85dd7af03f02aea4aae13a3945e3b313 create mode 100644 Library/metadata/85/85dd7af03f02aea4aae13a3945e3b313.info create mode 100644 Library/metadata/85/85f3c3a3c2623cd4da1661b0479e2ef2 create mode 100644 Library/metadata/85/85f3c3a3c2623cd4da1661b0479e2ef2.info create mode 100644 Library/metadata/86/8620e97e7e9859049934889a52248435 create mode 100644 Library/metadata/86/8620e97e7e9859049934889a52248435.info create mode 100644 Library/metadata/86/8645aa9c3c74fb34ba9499e14fb332b5 create mode 100644 Library/metadata/86/8645aa9c3c74fb34ba9499e14fb332b5.info create mode 100644 Library/metadata/86/86710e43de46f6f4bac7c8e50813a599 create mode 100644 Library/metadata/86/86710e43de46f6f4bac7c8e50813a599.info create mode 100644 Library/metadata/86/86cacab070a0a46e99aedb596a32c4fe create mode 100644 Library/metadata/86/86cacab070a0a46e99aedb596a32c4fe.info create mode 100644 Library/metadata/87/871f8edd56e84b8fb295b10cc3c78f36 create mode 100644 Library/metadata/87/871f8edd56e84b8fb295b10cc3c78f36.info create mode 100644 Library/metadata/87/872e4b92d663b05489fe34966680c29d create mode 100644 Library/metadata/87/872e4b92d663b05489fe34966680c29d.info create mode 100644 Library/metadata/87/87357ff0dec4ef348a295235835c6ee4 create mode 100644 Library/metadata/87/87357ff0dec4ef348a295235835c6ee4.info create mode 100644 Library/metadata/87/874c0713cdc44f549b0161750b48d2c2 create mode 100644 Library/metadata/87/874c0713cdc44f549b0161750b48d2c2.info create mode 100644 Library/metadata/87/874e40a588dbb1e48bc128d686337d4e create mode 100644 Library/metadata/87/874e40a588dbb1e48bc128d686337d4e.info create mode 100644 Library/metadata/87/8795e0dd0041d2f44b1fe1959fc9fb53 create mode 100644 Library/metadata/87/8795e0dd0041d2f44b1fe1959fc9fb53.info create mode 100644 Library/metadata/87/87a1ae9719ec25d44a4dbec20ec0f892 create mode 100644 Library/metadata/87/87a1ae9719ec25d44a4dbec20ec0f892.info create mode 100644 Library/metadata/87/87ab1bebe13f41f89d5427e7d2c34d58 create mode 100644 Library/metadata/87/87ab1bebe13f41f89d5427e7d2c34d58.info create mode 100644 Library/metadata/87/87d720faa37005c08600090e04d8c739 create mode 100644 Library/metadata/87/87d720faa37005c08600090e04d8c739.info create mode 100644 Library/metadata/88/882f1a4147a284f028899b9c018e63eb create mode 100644 Library/metadata/88/882f1a4147a284f028899b9c018e63eb.info create mode 100644 Library/metadata/88/88338eb35defad644a48718188e8f219 create mode 100644 Library/metadata/88/88338eb35defad644a48718188e8f219.info create mode 100644 Library/metadata/88/88ed537c17c34f339121fe9a7d6d7a0e create mode 100644 Library/metadata/88/88ed537c17c34f339121fe9a7d6d7a0e.info create mode 100644 Library/metadata/89/8938e753b3f47374889d5cf3265b563c create mode 100644 Library/metadata/89/8938e753b3f47374889d5cf3265b563c.info create mode 100644 Library/metadata/89/898bc38486fc899428fbe5bd6adfe473 create mode 100644 Library/metadata/89/898bc38486fc899428fbe5bd6adfe473.info create mode 100644 Library/metadata/89/89b31ff5ca0a5eb4797ac65d43949807 create mode 100644 Library/metadata/89/89b31ff5ca0a5eb4797ac65d43949807.info create mode 100644 Library/metadata/89/89b48a03f6f43e94e87cc8d2104d3d4d create mode 100644 Library/metadata/89/89b48a03f6f43e94e87cc8d2104d3d4d.info create mode 100644 Library/metadata/8a/8a13cbeb2099aca47bb456f49845f86c create mode 100644 Library/metadata/8a/8a13cbeb2099aca47bb456f49845f86c.info create mode 100644 Library/metadata/8a/8a4b6301a5afaec4cb87d21383ceb0b3 create mode 100644 Library/metadata/8a/8a4b6301a5afaec4cb87d21383ceb0b3.info create mode 100644 Library/metadata/8a/8a8695521f0d02e499659fee002a26c2 create mode 100644 Library/metadata/8a/8a8695521f0d02e499659fee002a26c2.info create mode 100644 Library/metadata/8a/8aa8171e088f94069bbd1978a053f7dd create mode 100644 Library/metadata/8a/8aa8171e088f94069bbd1978a053f7dd.info create mode 100644 Library/metadata/8b/8b22792c3b570444eb18cb78c2af3a74 create mode 100644 Library/metadata/8b/8b22792c3b570444eb18cb78c2af3a74.info create mode 100644 Library/metadata/8b/8b7d06780fca6fc4384580d3ebed9219 create mode 100644 Library/metadata/8b/8b7d06780fca6fc4384580d3ebed9219.info create mode 100644 Library/metadata/8b/8b845b123ab418448a8be2935fa804e0 create mode 100644 Library/metadata/8b/8b845b123ab418448a8be2935fa804e0.info create mode 100644 Library/metadata/8b/8bb59cb2f66d156418ca1bd1e2703233 create mode 100644 Library/metadata/8b/8bb59cb2f66d156418ca1bd1e2703233.info create mode 100644 Library/metadata/8b/8bc2b083b068f3546a9509c805e0541c create mode 100644 Library/metadata/8b/8bc2b083b068f3546a9509c805e0541c.info create mode 100644 Library/metadata/8b/8bc445bb79654bf496c92d0407840a92 create mode 100644 Library/metadata/8b/8bc445bb79654bf496c92d0407840a92.info create mode 100644 Library/metadata/8b/8bc74398aa3944646ade4ee78cd57484 create mode 100644 Library/metadata/8b/8bc74398aa3944646ade4ee78cd57484.info create mode 100644 Library/metadata/8b/8beed9aab74505d488e6befe54c3f6ef create mode 100644 Library/metadata/8b/8beed9aab74505d488e6befe54c3f6ef.info create mode 100644 Library/metadata/8d/8d20eedbe40f0ce41a4c4f633f225de8 create mode 100644 Library/metadata/8d/8d20eedbe40f0ce41a4c4f633f225de8.info create mode 100644 Library/metadata/8d/8d34348f8b97a334291f5cf31adc5d67 create mode 100644 Library/metadata/8d/8d34348f8b97a334291f5cf31adc5d67.info create mode 100644 Library/metadata/8d/8df45492ff0815a488744d61efcecba7 create mode 100644 Library/metadata/8d/8df45492ff0815a488744d61efcecba7.info create mode 100644 Library/metadata/8e/8e78f8a8575e4a04f8337a54e241cdc5 create mode 100644 Library/metadata/8e/8e78f8a8575e4a04f8337a54e241cdc5.info create mode 100644 Library/metadata/8f/8f74c99a65464bb4b86ccb314ee95a7f create mode 100644 Library/metadata/8f/8f74c99a65464bb4b86ccb314ee95a7f.info create mode 100644 Library/metadata/8f/8f7652e09069a1943278893d4264401e create mode 100644 Library/metadata/8f/8f7652e09069a1943278893d4264401e.info create mode 100644 Library/metadata/8f/8f8b248abe6b4dcebd6cdd0d754717f4 create mode 100644 Library/metadata/8f/8f8b248abe6b4dcebd6cdd0d754717f4.info create mode 100644 Library/metadata/90/900aac3710bc14542a8d164e3f0ff820 create mode 100644 Library/metadata/90/900aac3710bc14542a8d164e3f0ff820.info create mode 100644 Library/metadata/90/900f1a451c764dc3bdcc0de815a15935 create mode 100644 Library/metadata/90/900f1a451c764dc3bdcc0de815a15935.info create mode 100644 Library/metadata/90/9014630255533ed42915965b4065cde8 create mode 100644 Library/metadata/90/9014630255533ed42915965b4065cde8.info create mode 100644 Library/metadata/90/901b761c5c1e22d4e8a3ba7d95bc1f5d create mode 100644 Library/metadata/90/901b761c5c1e22d4e8a3ba7d95bc1f5d.info create mode 100644 Library/metadata/90/906c12bc9cd95d3963c6d58f62522c78 create mode 100644 Library/metadata/90/906c12bc9cd95d3963c6d58f62522c78.info create mode 100644 Library/metadata/90/9085046f02f69544eb97fd06b6048fe2 create mode 100644 Library/metadata/90/9085046f02f69544eb97fd06b6048fe2.info create mode 100644 Library/metadata/90/90fe1c65e6bb3bc4e90862df7297719e create mode 100644 Library/metadata/90/90fe1c65e6bb3bc4e90862df7297719e.info create mode 100644 Library/metadata/91/9129183a42052cd43b9c284d6dbd541e create mode 100644 Library/metadata/91/9129183a42052cd43b9c284d6dbd541e.info create mode 100644 Library/metadata/91/91319408591cec1478efd3c62f9f418a create mode 100644 Library/metadata/91/91319408591cec1478efd3c62f9f418a.info create mode 100644 Library/metadata/91/91950f78729ab144aa36e94690b28fad create mode 100644 Library/metadata/91/91950f78729ab144aa36e94690b28fad.info create mode 100644 Library/metadata/91/919d97c1a707113409177d498d31cf51 create mode 100644 Library/metadata/91/919d97c1a707113409177d498d31cf51.info create mode 100644 Library/metadata/91/91c20d2c22b8b3a4cb6c816bd225591a create mode 100644 Library/metadata/91/91c20d2c22b8b3a4cb6c816bd225591a.info create mode 100644 Library/metadata/91/91f495459b6e34f419ac123740d798b1 create mode 100644 Library/metadata/91/91f495459b6e34f419ac123740d798b1.info create mode 100644 Library/metadata/92/92027f7f8cfc4feaa477da0dc38d3d46 create mode 100644 Library/metadata/92/92027f7f8cfc4feaa477da0dc38d3d46.info create mode 100644 Library/metadata/92/9202fbba95ea8294cb5e718f028f21b0 create mode 100644 Library/metadata/92/9202fbba95ea8294cb5e718f028f21b0.info create mode 100644 Library/metadata/92/926a61ff0dec44a5aab649acb411e9ad create mode 100644 Library/metadata/92/926a61ff0dec44a5aab649acb411e9ad.info create mode 100644 Library/metadata/92/9288066c33474b94b6ee5465f4df1cc0 create mode 100644 Library/metadata/92/9288066c33474b94b6ee5465f4df1cc0.info create mode 100644 Library/metadata/92/928dc55e2c8c3ee4dad33b6d561cb6ea create mode 100644 Library/metadata/92/928dc55e2c8c3ee4dad33b6d561cb6ea.info create mode 100644 Library/metadata/92/92a378669877c05c6071d0fed687bb95 create mode 100644 Library/metadata/92/92a378669877c05c6071d0fed687bb95.info create mode 100644 Library/metadata/93/93665e8b67658804d99c4487228cc050 create mode 100644 Library/metadata/93/93665e8b67658804d99c4487228cc050.info create mode 100644 Library/metadata/93/936bea4b2545c4a4fad2e623b0f6371f create mode 100644 Library/metadata/93/936bea4b2545c4a4fad2e623b0f6371f.info create mode 100644 Library/metadata/93/936c6340f3468444ebb1785b4c311126 create mode 100644 Library/metadata/93/936c6340f3468444ebb1785b4c311126.info create mode 100644 Library/metadata/93/9390296e78291b543b2f4a9761ef8139 create mode 100644 Library/metadata/93/9390296e78291b543b2f4a9761ef8139.info create mode 100644 Library/metadata/93/93eea84e53d0226479c9a584f19427b5 create mode 100644 Library/metadata/93/93eea84e53d0226479c9a584f19427b5.info create mode 100644 Library/metadata/93/93effba7cf7f3824ab0bd048a27a9c02 create mode 100644 Library/metadata/93/93effba7cf7f3824ab0bd048a27a9c02.info create mode 100644 Library/metadata/94/945f4ecec6df62244b9ebcc363833642 create mode 100644 Library/metadata/94/945f4ecec6df62244b9ebcc363833642.info create mode 100644 Library/metadata/94/949b7e126b3f27940885a6808a15458e create mode 100644 Library/metadata/94/949b7e126b3f27940885a6808a15458e.info create mode 100644 Library/metadata/95/9502550ba4785e3499d6c9251fa2114b create mode 100644 Library/metadata/95/9502550ba4785e3499d6c9251fa2114b.info create mode 100644 Library/metadata/95/950890083f4907541a6ed06d70959e49 create mode 100644 Library/metadata/95/950890083f4907541a6ed06d70959e49.info create mode 100644 Library/metadata/95/952b3dc7b47846947b37c8d3ae46579a create mode 100644 Library/metadata/95/952b3dc7b47846947b37c8d3ae46579a.info create mode 100644 Library/metadata/95/953fab16d15d5885b3600fcd6388b2ad create mode 100644 Library/metadata/95/953fab16d15d5885b3600fcd6388b2ad.info create mode 100644 Library/metadata/95/9541d86e2fd84c1d9990edf0852d74ab create mode 100644 Library/metadata/95/9541d86e2fd84c1d9990edf0852d74ab.info create mode 100644 Library/metadata/95/9545c9eb3bf94265810463794fec8334 create mode 100644 Library/metadata/95/9545c9eb3bf94265810463794fec8334.info create mode 100644 Library/metadata/95/95a2914724952ef40bb590d0607fc878 create mode 100644 Library/metadata/95/95a2914724952ef40bb590d0607fc878.info create mode 100644 Library/metadata/95/95b719082a664ea45bb56759eed1f271 create mode 100644 Library/metadata/95/95b719082a664ea45bb56759eed1f271.info create mode 100644 Library/metadata/95/95c91abdcc1ea03458c2ea4e9626a5d8 create mode 100644 Library/metadata/95/95c91abdcc1ea03458c2ea4e9626a5d8.info create mode 100644 Library/metadata/95/95cdf27b47eb82747ba9e51f41e72a35 create mode 100644 Library/metadata/95/95cdf27b47eb82747ba9e51f41e72a35.info create mode 100644 Library/metadata/95/95f85adeda79e994f011eb2152cf4fc9 create mode 100644 Library/metadata/95/95f85adeda79e994f011eb2152cf4fc9.info create mode 100644 Library/metadata/96/961642509dec50b44a293d26240140ec create mode 100644 Library/metadata/96/961642509dec50b44a293d26240140ec.info create mode 100644 Library/metadata/96/9650d910fcaefb34cb45f121c1993892 create mode 100644 Library/metadata/96/9650d910fcaefb34cb45f121c1993892.info create mode 100644 Library/metadata/96/9685354eb873b8d4699078b307b0f260 create mode 100644 Library/metadata/96/9685354eb873b8d4699078b307b0f260.info create mode 100644 Library/metadata/96/968a09f153574430a6e15ae975145768 create mode 100644 Library/metadata/96/968a09f153574430a6e15ae975145768.info create mode 100644 Library/metadata/96/96b44f7d98314b139324a8a87eb66067 create mode 100644 Library/metadata/96/96b44f7d98314b139324a8a87eb66067.info create mode 100644 Library/metadata/96/96c503bf059df984c86eecf572370347 create mode 100644 Library/metadata/96/96c503bf059df984c86eecf572370347.info create mode 100644 Library/metadata/96/96d14b71b907bb52333b2886e665aba6 create mode 100644 Library/metadata/96/96d14b71b907bb52333b2886e665aba6.info create mode 100644 Library/metadata/96/96e9072453a441618754c478755b3028 create mode 100644 Library/metadata/96/96e9072453a441618754c478755b3028.info create mode 100644 Library/metadata/97/970e7735a0864fd40842a36d053d08fe create mode 100644 Library/metadata/97/970e7735a0864fd40842a36d053d08fe.info create mode 100644 Library/metadata/97/9713795381722eb43b623dffba25d115 create mode 100644 Library/metadata/97/9713795381722eb43b623dffba25d115.info create mode 100644 Library/metadata/97/973b024861c5ae84f869aad614234b04 create mode 100644 Library/metadata/97/973b024861c5ae84f869aad614234b04.info create mode 100644 Library/metadata/97/976acc75bfafe594cb01142ba21947be create mode 100644 Library/metadata/97/976acc75bfafe594cb01142ba21947be.info create mode 100644 Library/metadata/97/977190a4db46de442aed27279d247df4 create mode 100644 Library/metadata/97/977190a4db46de442aed27279d247df4.info create mode 100644 Library/metadata/97/97a05971510726f438153cd4987526fb create mode 100644 Library/metadata/97/97a05971510726f438153cd4987526fb.info create mode 100644 Library/metadata/98/9805855c8e379ed4cad77f639aaddb73 create mode 100644 Library/metadata/98/9805855c8e379ed4cad77f639aaddb73.info create mode 100644 Library/metadata/98/983c76d87fb6f4f4597a526a4b2b5fd7 create mode 100644 Library/metadata/98/983c76d87fb6f4f4597a526a4b2b5fd7.info create mode 100644 Library/metadata/98/985eed4bc2fbee941b761b8816d9055d create mode 100644 Library/metadata/98/985eed4bc2fbee941b761b8816d9055d.info create mode 100644 Library/metadata/98/98808b11e78f6c84a841a6b4bc5a29d2 create mode 100644 Library/metadata/98/98808b11e78f6c84a841a6b4bc5a29d2.info create mode 100644 Library/metadata/98/98ba0396e4b4ee8498a8f097affcfddf create mode 100644 Library/metadata/98/98ba0396e4b4ee8498a8f097affcfddf.info create mode 100644 Library/metadata/98/98d14ab1acf42df4f88a0561822ac807 create mode 100644 Library/metadata/98/98d14ab1acf42df4f88a0561822ac807.info create mode 100644 Library/metadata/99/9945ffed4692c6044b6d3acf81efd694 create mode 100644 Library/metadata/99/9945ffed4692c6044b6d3acf81efd694.info create mode 100644 Library/metadata/99/995c08a3305ff9f0dab5e86f340bd9a7 create mode 100644 Library/metadata/99/995c08a3305ff9f0dab5e86f340bd9a7.info create mode 100644 Library/metadata/99/99c5970046bb263469514e56eb6aa519 create mode 100644 Library/metadata/99/99c5970046bb263469514e56eb6aa519.info create mode 100644 Library/metadata/9a/9a0f991b6c2f45b44b92e163f9969e8e create mode 100644 Library/metadata/9a/9a0f991b6c2f45b44b92e163f9969e8e.info create mode 100644 Library/metadata/9a/9a3557da07c729b4eb774b8e30e157a4 create mode 100644 Library/metadata/9a/9a3557da07c729b4eb774b8e30e157a4.info create mode 100644 Library/metadata/9a/9a371bcbba2084dd0a8ebc6826aa8794 create mode 100644 Library/metadata/9a/9a371bcbba2084dd0a8ebc6826aa8794.info create mode 100644 Library/metadata/9a/9a6069768ff3d8043a79348813f86cba create mode 100644 Library/metadata/9a/9a6069768ff3d8043a79348813f86cba.info create mode 100644 Library/metadata/9a/9ace5095cc37ed849b52109d2ee305d4 create mode 100644 Library/metadata/9a/9ace5095cc37ed849b52109d2ee305d4.info create mode 100644 Library/metadata/9a/9ad0b0c865b01af4ca1b414689e71259 create mode 100644 Library/metadata/9a/9ad0b0c865b01af4ca1b414689e71259.info create mode 100644 Library/metadata/9b/9b1a3034a9e81704abdd08677a2d035f create mode 100644 Library/metadata/9b/9b1a3034a9e81704abdd08677a2d035f.info create mode 100644 Library/metadata/9b/9b4f21acd14fdd445b37b76f6587539e create mode 100644 Library/metadata/9b/9b4f21acd14fdd445b37b76f6587539e.info create mode 100644 Library/metadata/9b/9b5abcb38bac0c54794ad732a3fa0de3 create mode 100644 Library/metadata/9b/9b5abcb38bac0c54794ad732a3fa0de3.info create mode 100644 Library/metadata/9b/9bc2b69915879416f8df18971dc98e2e create mode 100644 Library/metadata/9b/9bc2b69915879416f8df18971dc98e2e.info create mode 100644 Library/metadata/9b/9bd5a110ed89025499ddee8c7e73778e create mode 100644 Library/metadata/9b/9bd5a110ed89025499ddee8c7e73778e.info create mode 100644 Library/metadata/9b/9be6112c2b1c3ae44927680ba7b36e10 create mode 100644 Library/metadata/9b/9be6112c2b1c3ae44927680ba7b36e10.info create mode 100644 Library/metadata/9b/9bedab6f9886aee42b33e424bffdb640 create mode 100644 Library/metadata/9b/9bedab6f9886aee42b33e424bffdb640.info create mode 100644 Library/metadata/9c/9c2177aaf0fde92439246adc2dc0bfa2 create mode 100644 Library/metadata/9c/9c2177aaf0fde92439246adc2dc0bfa2.info create mode 100644 Library/metadata/9c/9c21cfda3336137438c3001d40564be0 create mode 100644 Library/metadata/9c/9c21cfda3336137438c3001d40564be0.info create mode 100644 Library/metadata/9c/9c4a050f089abb04ebd4125e419f4548 create mode 100644 Library/metadata/9c/9c4a050f089abb04ebd4125e419f4548.info create mode 100644 Library/metadata/9c/9c7ad350fb20c854a9112cf4156d1b6e create mode 100644 Library/metadata/9c/9c7ad350fb20c854a9112cf4156d1b6e.info create mode 100644 Library/metadata/9c/9c7c268fa6492449654839df69f2a2f4 create mode 100644 Library/metadata/9c/9c7c268fa6492449654839df69f2a2f4.info create mode 100644 Library/metadata/9c/9c8ceb9efacb4974bb3b7e2a87137b07 create mode 100644 Library/metadata/9c/9c8ceb9efacb4974bb3b7e2a87137b07.info create mode 100644 Library/metadata/9d/9d614808f9add8a4f8e4860db2c7af0d create mode 100644 Library/metadata/9d/9d614808f9add8a4f8e4860db2c7af0d.info create mode 100644 Library/metadata/9d/9d816a6ab06c6834480f5f45f440e287 create mode 100644 Library/metadata/9d/9d816a6ab06c6834480f5f45f440e287.info create mode 100644 Library/metadata/9d/9db19a04003fca7439552acd4de9baa1 create mode 100644 Library/metadata/9d/9db19a04003fca7439552acd4de9baa1.info create mode 100644 Library/metadata/9d/9de24983a2c6cbe4f925c3e98a79b804 create mode 100644 Library/metadata/9d/9de24983a2c6cbe4f925c3e98a79b804.info create mode 100644 Library/metadata/9e/9e2b7a65f0a52974193ed497d145b0bc create mode 100644 Library/metadata/9e/9e2b7a65f0a52974193ed497d145b0bc.info create mode 100644 Library/metadata/9e/9ec94545c5b00344c9bd8e691f15d799 create mode 100644 Library/metadata/9e/9ec94545c5b00344c9bd8e691f15d799.info create mode 100644 Library/metadata/9e/9edc9283e7d6409fab242fe8fb6a822c create mode 100644 Library/metadata/9e/9edc9283e7d6409fab242fe8fb6a822c.info create mode 100644 Library/metadata/9f/9f1026265f8e3d54fb6e9f082c43debf create mode 100644 Library/metadata/9f/9f1026265f8e3d54fb6e9f082c43debf.info create mode 100644 Library/metadata/9f/9fc0d4010bbf28b4594072e72b8655ab create mode 100644 Library/metadata/9f/9fc0d4010bbf28b4594072e72b8655ab.info create mode 100644 Library/metadata/a0/a002d3737b873954395b7cf862873ab8 create mode 100644 Library/metadata/a0/a002d3737b873954395b7cf862873ab8.info create mode 100644 Library/metadata/a0/a021b6d2ca2e9404b8a4d94343ecd068 create mode 100644 Library/metadata/a0/a021b6d2ca2e9404b8a4d94343ecd068.info create mode 100644 Library/metadata/a0/a025ba7ee40d0104db8d08b1d9eabb0d create mode 100644 Library/metadata/a0/a025ba7ee40d0104db8d08b1d9eabb0d.info create mode 100644 Library/metadata/a0/a04a45bbed9e1714f9902fc9443669b9 create mode 100644 Library/metadata/a0/a04a45bbed9e1714f9902fc9443669b9.info create mode 100644 Library/metadata/a0/a0a02e768c802b641b6793fa864f1c2c create mode 100644 Library/metadata/a0/a0a02e768c802b641b6793fa864f1c2c.info create mode 100644 Library/metadata/a0/a0b56195e00682b4594dfaeef9d5fa78 create mode 100644 Library/metadata/a0/a0b56195e00682b4594dfaeef9d5fa78.info create mode 100644 Library/metadata/a0/a0bae4ff8f5baf64aad3b92b8aea0603 create mode 100644 Library/metadata/a0/a0bae4ff8f5baf64aad3b92b8aea0603.info create mode 100644 Library/metadata/a1/a14a59f2a5c757e469c3e4e17b798c2e create mode 100644 Library/metadata/a1/a14a59f2a5c757e469c3e4e17b798c2e.info create mode 100644 Library/metadata/a2/a2a8aecb05814e644abbb070fbd91156 create mode 100644 Library/metadata/a2/a2a8aecb05814e644abbb070fbd91156.info create mode 100644 Library/metadata/a2/a2cb43d6b0c226443be7e176590837a5 create mode 100644 Library/metadata/a2/a2cb43d6b0c226443be7e176590837a5.info create mode 100644 Library/metadata/a3/a3529368f4cd0424a89aa51080a16b06 create mode 100644 Library/metadata/a3/a3529368f4cd0424a89aa51080a16b06.info create mode 100644 Library/metadata/a3/a36d8b72880a8004f96ac54ce4598ff9 create mode 100644 Library/metadata/a3/a36d8b72880a8004f96ac54ce4598ff9.info create mode 100644 Library/metadata/a3/a3949cc8bd731bb47bedf6589367d0c9 create mode 100644 Library/metadata/a3/a3949cc8bd731bb47bedf6589367d0c9.info create mode 100644 Library/metadata/a4/a429b38ee9d48c7408c8870baf406034 create mode 100644 Library/metadata/a4/a429b38ee9d48c7408c8870baf406034.info create mode 100644 Library/metadata/a4/a4610cf559d77b9f256416d9ccaeac55 create mode 100644 Library/metadata/a4/a4610cf559d77b9f256416d9ccaeac55.info create mode 100644 Library/metadata/a4/a483595b0257945278dc75c5ff7d82ee create mode 100644 Library/metadata/a4/a483595b0257945278dc75c5ff7d82ee.info create mode 100644 Library/metadata/a5/a55fb7b4961a425381d1282fc424f966 create mode 100644 Library/metadata/a5/a55fb7b4961a425381d1282fc424f966.info create mode 100644 Library/metadata/a5/a582090813554df479fb9ca03e9857d3 create mode 100644 Library/metadata/a5/a582090813554df479fb9ca03e9857d3.info create mode 100644 Library/metadata/a5/a598580d0cfc7224ebed8d2b627d9e00 create mode 100644 Library/metadata/a5/a598580d0cfc7224ebed8d2b627d9e00.info create mode 100644 Library/metadata/a5/a59c2e62fbd97f84f92c3b546e3903cb create mode 100644 Library/metadata/a5/a59c2e62fbd97f84f92c3b546e3903cb.info create mode 100644 Library/metadata/a5/a5c214e5846a99242b348c37e49b2f59 create mode 100644 Library/metadata/a5/a5c214e5846a99242b348c37e49b2f59.info create mode 100644 Library/metadata/a6/a6238e9452bfc704f82ff36791fe1a45 create mode 100644 Library/metadata/a6/a6238e9452bfc704f82ff36791fe1a45.info create mode 100644 Library/metadata/a6/a62706dc421fc9b4fa368a8050a930f7 create mode 100644 Library/metadata/a6/a62706dc421fc9b4fa368a8050a930f7.info create mode 100644 Library/metadata/a6/a667f6654ad7a9548b8c8e68b51c8895 create mode 100644 Library/metadata/a6/a667f6654ad7a9548b8c8e68b51c8895.info create mode 100644 Library/metadata/a6/a6ab6fd2b91214e8a9c8ec2224a528de create mode 100644 Library/metadata/a6/a6ab6fd2b91214e8a9c8ec2224a528de.info create mode 100644 Library/metadata/a7/a704c010bcdb1ec4a9f3417b3c393164 create mode 100644 Library/metadata/a7/a704c010bcdb1ec4a9f3417b3c393164.info create mode 100644 Library/metadata/a7/a73ebdb6c1006364f8c7b37dc53d8ab7 create mode 100644 Library/metadata/a7/a73ebdb6c1006364f8c7b37dc53d8ab7.info create mode 100644 Library/metadata/a7/a7842a837a4b13e41ae16193db753418 create mode 100644 Library/metadata/a7/a7842a837a4b13e41ae16193db753418.info create mode 100644 Library/metadata/a7/a7c91a123806d41a0873fcdcb629b1c4 create mode 100644 Library/metadata/a7/a7c91a123806d41a0873fcdcb629b1c4.info create mode 100644 Library/metadata/a7/a7ebd1239373d5f41af65ef32d67f445 create mode 100644 Library/metadata/a7/a7ebd1239373d5f41af65ef32d67f445.info create mode 100644 Library/metadata/a7/a7ec9e7ad8b847b7ae4510af83c5d868 create mode 100644 Library/metadata/a7/a7ec9e7ad8b847b7ae4510af83c5d868.info create mode 100644 Library/metadata/a8/a809a4b50addbf44b9023b5e7f9fd4d2 create mode 100644 Library/metadata/a8/a809a4b50addbf44b9023b5e7f9fd4d2.info create mode 100644 Library/metadata/a8/a8604e8f13b3be84b8bc0c1507d8f3f6 create mode 100644 Library/metadata/a8/a8604e8f13b3be84b8bc0c1507d8f3f6.info create mode 100644 Library/metadata/a8/a8ed4063f2beecd41a234a582202f3c4 create mode 100644 Library/metadata/a8/a8ed4063f2beecd41a234a582202f3c4.info create mode 100644 Library/metadata/a9/a956e5803e95df349bd35832492d4014 create mode 100644 Library/metadata/a9/a956e5803e95df349bd35832492d4014.info create mode 100644 Library/metadata/aa/aa14b70e6a58c5b4fa6663623e3dca91 create mode 100644 Library/metadata/aa/aa14b70e6a58c5b4fa6663623e3dca91.info create mode 100644 Library/metadata/aa/aa160f27c3fe4052a5850e21108811b6 create mode 100644 Library/metadata/aa/aa160f27c3fe4052a5850e21108811b6.info create mode 100644 Library/metadata/aa/aa76955fe5bb44f7915d91db8c7043c4 create mode 100644 Library/metadata/aa/aa76955fe5bb44f7915d91db8c7043c4.info create mode 100644 Library/metadata/ab/ab2114bdc8544297b417dfefe9f1e410 create mode 100644 Library/metadata/ab/ab2114bdc8544297b417dfefe9f1e410.info create mode 100644 Library/metadata/ab/ab93e1a81defc3243a6e9cd0df3cb443 create mode 100644 Library/metadata/ab/ab93e1a81defc3243a6e9cd0df3cb443.info create mode 100644 Library/metadata/ac/ac281230df7b14becb40b3c479f1b429 create mode 100644 Library/metadata/ac/ac281230df7b14becb40b3c479f1b429.info create mode 100644 Library/metadata/ac/ac3f13489022aa34d861a0320a6917b9 create mode 100644 Library/metadata/ac/ac3f13489022aa34d861a0320a6917b9.info create mode 100644 Library/metadata/ac/ac68f5ae37c8957468562b8da42f9984 create mode 100644 Library/metadata/ac/ac68f5ae37c8957468562b8da42f9984.info create mode 100644 Library/metadata/ac/acc16f0c684508f44813662a300c574b create mode 100644 Library/metadata/ac/acc16f0c684508f44813662a300c574b.info create mode 100644 Library/metadata/ac/acfa3573efc38c844be021fdaa8cf8a6 create mode 100644 Library/metadata/ac/acfa3573efc38c844be021fdaa8cf8a6.info create mode 100644 Library/metadata/ad/ad70ff8d98b257540b683737743828cb create mode 100644 Library/metadata/ad/ad70ff8d98b257540b683737743828cb.info create mode 100644 Library/metadata/ad/adf7bea9401c1834380d55601add6cfb create mode 100644 Library/metadata/ad/adf7bea9401c1834380d55601add6cfb.info create mode 100644 Library/metadata/ae/ae05f0dd1cf145e4e8e905c7971ee433 create mode 100644 Library/metadata/ae/ae05f0dd1cf145e4e8e905c7971ee433.info create mode 100644 Library/metadata/ae/ae242449e9279d44789513b922d3178a create mode 100644 Library/metadata/ae/ae242449e9279d44789513b922d3178a.info create mode 100644 Library/metadata/ae/ae8ce3ffe04ac2c42945fd27e0291fc3 create mode 100644 Library/metadata/ae/ae8ce3ffe04ac2c42945fd27e0291fc3.info create mode 100644 Library/metadata/ae/aed7ab02155e43341a2dbcb7bc17c160 create mode 100644 Library/metadata/ae/aed7ab02155e43341a2dbcb7bc17c160.info create mode 100644 Library/metadata/af/af30a361ab68260438b6ec3fb7e64500 create mode 100644 Library/metadata/af/af30a361ab68260438b6ec3fb7e64500.info create mode 100644 Library/metadata/af/af5042802f06c804c8abddd544b77a4a create mode 100644 Library/metadata/af/af5042802f06c804c8abddd544b77a4a.info create mode 100644 Library/metadata/af/af84cf39b8fa0654badd9278cbd00d77 create mode 100644 Library/metadata/af/af84cf39b8fa0654badd9278cbd00d77.info create mode 100644 Library/metadata/af/afeb55855d7a63b45ba6f8bd97599202 create mode 100644 Library/metadata/af/afeb55855d7a63b45ba6f8bd97599202.info create mode 100644 Library/metadata/b0/b09be1f217d34247af54863a2f5587e1 create mode 100644 Library/metadata/b0/b09be1f217d34247af54863a2f5587e1.info create mode 100644 Library/metadata/b0/b0c73ea1c5ff95e43806e9002c155070 create mode 100644 Library/metadata/b0/b0c73ea1c5ff95e43806e9002c155070.info create mode 100644 Library/metadata/b0/b0eeee3cdfa56734abca5c1a4e7989ba create mode 100644 Library/metadata/b0/b0eeee3cdfa56734abca5c1a4e7989ba.info create mode 100644 Library/metadata/b1/b10cb8fee5b39014d8a417bf413f5e5c create mode 100644 Library/metadata/b1/b10cb8fee5b39014d8a417bf413f5e5c.info create mode 100644 Library/metadata/b1/b124f0b8ca43e6e46bdc0322fad15ea3 create mode 100644 Library/metadata/b1/b124f0b8ca43e6e46bdc0322fad15ea3.info create mode 100644 Library/metadata/b1/b135ec222fdcd11468014c90d11d6821 create mode 100644 Library/metadata/b1/b135ec222fdcd11468014c90d11d6821.info create mode 100644 Library/metadata/b1/b180fd8310805e44dbbef545d0231418 create mode 100644 Library/metadata/b1/b180fd8310805e44dbbef545d0231418.info create mode 100644 Library/metadata/b1/b1c789407b55e3a4c9cc86135a714e33 create mode 100644 Library/metadata/b1/b1c789407b55e3a4c9cc86135a714e33.info create mode 100644 Library/metadata/b1/b1d8465ba1376b148bdab58965101f47 create mode 100644 Library/metadata/b1/b1d8465ba1376b148bdab58965101f47.info create mode 100644 Library/metadata/b2/b219c86ce508e478367c0a46e1aa9fe4 create mode 100644 Library/metadata/b2/b219c86ce508e478367c0a46e1aa9fe4.info create mode 100644 Library/metadata/b2/b222f61a1f7253e4d8e8cc82bfde9e42 create mode 100644 Library/metadata/b2/b222f61a1f7253e4d8e8cc82bfde9e42.info create mode 100644 Library/metadata/b2/b250be9db55288b48ac121c074d795e6 create mode 100644 Library/metadata/b2/b250be9db55288b48ac121c074d795e6.info create mode 100644 Library/metadata/b3/b33687803b08daf418e5315de17658b8 create mode 100644 Library/metadata/b3/b33687803b08daf418e5315de17658b8.info create mode 100644 Library/metadata/b3/b3cdabf2f1e76854d8aab5930305d70d create mode 100644 Library/metadata/b3/b3cdabf2f1e76854d8aab5930305d70d.info create mode 100644 Library/metadata/b4/b42e1db66fe9c634798674cb9e1df2ca create mode 100644 Library/metadata/b4/b42e1db66fe9c634798674cb9e1df2ca.info create mode 100644 Library/metadata/b4/b43128d62b2ba454f9720a08135e57b6 create mode 100644 Library/metadata/b4/b43128d62b2ba454f9720a08135e57b6.info create mode 100644 Library/metadata/b4/b458b2c7f196bdc4581b2f9fd6a5d931 create mode 100644 Library/metadata/b4/b458b2c7f196bdc4581b2f9fd6a5d931.info create mode 100644 Library/metadata/b4/b46e36075dd1c124a8422c228e75e1fb create mode 100644 Library/metadata/b4/b46e36075dd1c124a8422c228e75e1fb.info create mode 100644 Library/metadata/b4/b477d1f29b65a674e9d5cdab4eb72b01 create mode 100644 Library/metadata/b4/b477d1f29b65a674e9d5cdab4eb72b01.info create mode 100644 Library/metadata/b4/b4a5ce78107bc38409a3bb5e8b3289ac create mode 100644 Library/metadata/b4/b4a5ce78107bc38409a3bb5e8b3289ac.info create mode 100644 Library/metadata/b5/b52bde26a83564960bcb90217f72b910 create mode 100644 Library/metadata/b5/b52bde26a83564960bcb90217f72b910.info create mode 100644 Library/metadata/b5/b5489bb3cd68836439785588fffc67a4 create mode 100644 Library/metadata/b5/b5489bb3cd68836439785588fffc67a4.info create mode 100644 Library/metadata/b5/b557515fff172984e8c4400b43f1c631 create mode 100644 Library/metadata/b5/b557515fff172984e8c4400b43f1c631.info create mode 100644 Library/metadata/b5/b57629d89799e004182564256307b0cc create mode 100644 Library/metadata/b5/b57629d89799e004182564256307b0cc.info create mode 100644 Library/metadata/b5/b5d6c28ed7b94775be9e2560f300247c create mode 100644 Library/metadata/b5/b5d6c28ed7b94775be9e2560f300247c.info create mode 100644 Library/metadata/b5/b5f0881228e5827438f74e9b7b33c2dc create mode 100644 Library/metadata/b5/b5f0881228e5827438f74e9b7b33c2dc.info create mode 100644 Library/metadata/b5/b5f31b7e60df3e64796fb7ab6f54f489 create mode 100644 Library/metadata/b5/b5f31b7e60df3e64796fb7ab6f54f489.info create mode 100644 Library/metadata/b5/b5f70efd2f7b286498ca6c00adbb4a13 create mode 100644 Library/metadata/b5/b5f70efd2f7b286498ca6c00adbb4a13.info create mode 100644 Library/metadata/b6/b611b0a598aeada419afa9737807c598 create mode 100644 Library/metadata/b6/b611b0a598aeada419afa9737807c598.info create mode 100644 Library/metadata/b6/b6e75d7f429a4e7e9e1ffb4f85cff49f create mode 100644 Library/metadata/b6/b6e75d7f429a4e7e9e1ffb4f85cff49f.info create mode 100644 Library/metadata/b7/b7468a027a77337478e133b40b42b4f9 create mode 100644 Library/metadata/b7/b7468a027a77337478e133b40b42b4f9.info create mode 100644 Library/metadata/b7/b759d61544e231c41bc88530b1d94ee8 create mode 100644 Library/metadata/b7/b759d61544e231c41bc88530b1d94ee8.info create mode 100644 Library/metadata/b7/b77b1ad9c05af0412725856c6c53b037 create mode 100644 Library/metadata/b7/b77b1ad9c05af0412725856c6c53b037.info create mode 100644 Library/metadata/b7/b7abcd1a72bb7174ca58e813c6eee9c2 create mode 100644 Library/metadata/b7/b7abcd1a72bb7174ca58e813c6eee9c2.info create mode 100644 Library/metadata/b7/b7cabea05434bb9479aee1e121b0d103 create mode 100644 Library/metadata/b7/b7cabea05434bb9479aee1e121b0d103.info create mode 100644 Library/metadata/b7/b7ff2b2e91321ff4381d4ab45870a32e create mode 100644 Library/metadata/b7/b7ff2b2e91321ff4381d4ab45870a32e.info create mode 100644 Library/metadata/b8/b8046f5b741868b458cdb9b358311fa1 create mode 100644 Library/metadata/b8/b8046f5b741868b458cdb9b358311fa1.info create mode 100644 Library/metadata/b8/b825fd5f27403b84f97726dd9c5a5e6f create mode 100644 Library/metadata/b8/b825fd5f27403b84f97726dd9c5a5e6f.info create mode 100644 Library/metadata/b8/b83f06ac0c0696e9563230865ca72b81 create mode 100644 Library/metadata/b8/b83f06ac0c0696e9563230865ca72b81.info create mode 100644 Library/metadata/b8/b846f69b139b3a341a5699a09fa52b2c create mode 100644 Library/metadata/b8/b846f69b139b3a341a5699a09fa52b2c.info create mode 100644 Library/metadata/b8/b86b117346968ac4d9cc63e4385becb7 create mode 100644 Library/metadata/b8/b86b117346968ac4d9cc63e4385becb7.info create mode 100644 Library/metadata/b8/b88caca58e05ee74486d86fb404c48e2 create mode 100644 Library/metadata/b8/b88caca58e05ee74486d86fb404c48e2.info create mode 100644 Library/metadata/b8/b8abb41ceb6f62c45a00197ae59224c1 create mode 100644 Library/metadata/b8/b8abb41ceb6f62c45a00197ae59224c1.info create mode 100644 Library/metadata/b8/b8c3bda3a988b5f4c910a5c3f722d0be create mode 100644 Library/metadata/b8/b8c3bda3a988b5f4c910a5c3f722d0be.info create mode 100644 Library/metadata/b8/b8c5993172f27e4419d7d4ed5ef77840 create mode 100644 Library/metadata/b8/b8c5993172f27e4419d7d4ed5ef77840.info create mode 100644 Library/metadata/b9/b90311a8f07b00f4bbeb2fff3b128d25 create mode 100644 Library/metadata/b9/b90311a8f07b00f4bbeb2fff3b128d25.info create mode 100644 Library/metadata/b9/b926af22079e00e4a8c073321194cea1 create mode 100644 Library/metadata/b9/b926af22079e00e4a8c073321194cea1.info create mode 100644 Library/metadata/b9/b9ba34e0b1884454fbc4257260e22b64 create mode 100644 Library/metadata/b9/b9ba34e0b1884454fbc4257260e22b64.info create mode 100644 Library/metadata/b9/b9c2a6302985d3846b7b9f6fd9e2da9a create mode 100644 Library/metadata/b9/b9c2a6302985d3846b7b9f6fd9e2da9a.info create mode 100644 Library/metadata/b9/b9d7bb79ed0c2854a8a5ed7decc3e44f create mode 100644 Library/metadata/b9/b9d7bb79ed0c2854a8a5ed7decc3e44f.info create mode 100644 Library/metadata/b9/b9eb962217e00bf4fbc734e109991fca create mode 100644 Library/metadata/b9/b9eb962217e00bf4fbc734e109991fca.info create mode 100644 Library/metadata/ba/ba72b974bd5e43240bd91ade68574875 create mode 100644 Library/metadata/ba/ba72b974bd5e43240bd91ade68574875.info create mode 100644 Library/metadata/ba/bae197be297529d4fa735fbe7c91828d create mode 100644 Library/metadata/ba/bae197be297529d4fa735fbe7c91828d.info create mode 100644 Library/metadata/bb/bb05cab7d802aa5468f8f2f86840d984 create mode 100644 Library/metadata/bb/bb05cab7d802aa5468f8f2f86840d984.info create mode 100644 Library/metadata/bb/bb32bccaf32a6db448d1c0cc99c78688 create mode 100644 Library/metadata/bb/bb32bccaf32a6db448d1c0cc99c78688.info create mode 100644 Library/metadata/bb/bb42b2d967d6427983c901a4ffc8ecd9 create mode 100644 Library/metadata/bb/bb42b2d967d6427983c901a4ffc8ecd9.info create mode 100644 Library/metadata/bc/bc00e25696e4132499f56528d3fed2e3 create mode 100644 Library/metadata/bc/bc00e25696e4132499f56528d3fed2e3.info create mode 100644 Library/metadata/bc/bc98484caab3b6d4facbcff38be93380 create mode 100644 Library/metadata/bc/bc98484caab3b6d4facbcff38be93380.info create mode 100644 Library/metadata/bc/bc9aa6d5a7945f34882c442e9e201537 create mode 100644 Library/metadata/bc/bc9aa6d5a7945f34882c442e9e201537.info create mode 100644 Library/metadata/bd/bd1af0a6633ee94ae21c7d1d702cdc12 create mode 100644 Library/metadata/bd/bd1af0a6633ee94ae21c7d1d702cdc12.info create mode 100644 Library/metadata/bd/bd3e81baa10021f4d877fa36382bab16 create mode 100644 Library/metadata/bd/bd3e81baa10021f4d877fa36382bab16.info create mode 100644 Library/metadata/bd/bd3ffb9a97575a44a82f9ca086813154 create mode 100644 Library/metadata/bd/bd3ffb9a97575a44a82f9ca086813154.info create mode 100644 Library/metadata/bd/bdb4f6935641b574b984da8dc27cab45 create mode 100644 Library/metadata/bd/bdb4f6935641b574b984da8dc27cab45.info create mode 100644 Library/metadata/bd/bdbd564a9fdad0b738e76d030cad1204 create mode 100644 Library/metadata/bd/bdbd564a9fdad0b738e76d030cad1204.info create mode 100644 Library/metadata/be/be07f70ee67e6d74e851a9333719bbb6 create mode 100644 Library/metadata/be/be07f70ee67e6d74e851a9333719bbb6.info create mode 100644 Library/metadata/be/be156cc527d606b4aaac403e9843186e create mode 100644 Library/metadata/be/be156cc527d606b4aaac403e9843186e.info create mode 100644 Library/metadata/be/bea62e1faac8f9a48a4cb919ea05cb6a create mode 100644 Library/metadata/be/bea62e1faac8f9a48a4cb919ea05cb6a.info create mode 100644 Library/metadata/be/bede4033d9f359b41878c4cda6a910b3 create mode 100644 Library/metadata/be/bede4033d9f359b41878c4cda6a910b3.info create mode 100644 Library/metadata/be/bee384ad5b4d1a843a018082e7db53cd create mode 100644 Library/metadata/be/bee384ad5b4d1a843a018082e7db53cd.info create mode 100644 Library/metadata/bf/bf87e20fb5440ec498f441167b5291f8 create mode 100644 Library/metadata/bf/bf87e20fb5440ec498f441167b5291f8.info create mode 100644 Library/metadata/bf/bfb788a43e03363419155b8af77da971 create mode 100644 Library/metadata/bf/bfb788a43e03363419155b8af77da971.info create mode 100644 Library/metadata/bf/bfd567a3d1631a761bca9e99fa53d86d create mode 100644 Library/metadata/bf/bfd567a3d1631a761bca9e99fa53d86d.info create mode 100644 Library/metadata/bf/bfda56da833e2384a9677cd3c976a436 create mode 100644 Library/metadata/bf/bfda56da833e2384a9677cd3c976a436.info create mode 100644 Library/metadata/c0/c060426bfd6e82575228df6656368eaa create mode 100644 Library/metadata/c0/c060426bfd6e82575228df6656368eaa.info create mode 100644 Library/metadata/c0/c072e5b741a87974385c270827879cbf create mode 100644 Library/metadata/c0/c072e5b741a87974385c270827879cbf.info create mode 100644 Library/metadata/c1/c16c54fe03afb5740bcc0a2a295cb79d create mode 100644 Library/metadata/c1/c16c54fe03afb5740bcc0a2a295cb79d.info create mode 100644 Library/metadata/c1/c171b9ca03610ea4faa426e082a1075d create mode 100644 Library/metadata/c1/c171b9ca03610ea4faa426e082a1075d.info create mode 100644 Library/metadata/c1/c18288a8d31fc9043a807ee8a9f1ae64 create mode 100644 Library/metadata/c1/c18288a8d31fc9043a807ee8a9f1ae64.info create mode 100644 Library/metadata/c1/c18cb9388313e4287ad5895ee735c47d create mode 100644 Library/metadata/c1/c18cb9388313e4287ad5895ee735c47d.info create mode 100644 Library/metadata/c2/c2f7f6a88b4c4f20a53deb72f3d9144c create mode 100644 Library/metadata/c2/c2f7f6a88b4c4f20a53deb72f3d9144c.info create mode 100644 Library/metadata/c3/c32df609537c54c46adf92992a673693 create mode 100644 Library/metadata/c3/c32df609537c54c46adf92992a673693.info create mode 100644 Library/metadata/c3/c346a7445959bba46a96de0747e77c2a create mode 100644 Library/metadata/c3/c346a7445959bba46a96de0747e77c2a.info create mode 100644 Library/metadata/c3/c35a186b967e6a24d9d844d412fe08a3 create mode 100644 Library/metadata/c3/c35a186b967e6a24d9d844d412fe08a3.info create mode 100644 Library/metadata/c3/c38ae0585d6a55042a2d678330689685 create mode 100644 Library/metadata/c3/c38ae0585d6a55042a2d678330689685.info create mode 100644 Library/metadata/c3/c3a595c9a8ed19040bb2612fe168759d create mode 100644 Library/metadata/c3/c3a595c9a8ed19040bb2612fe168759d.info create mode 100644 Library/metadata/c3/c3a75354f6ceac94ca15ca9d96593290 create mode 100644 Library/metadata/c3/c3a75354f6ceac94ca15ca9d96593290.info create mode 100644 Library/metadata/c3/c3de99f9efc582a48995bc8e8c2df418 create mode 100644 Library/metadata/c3/c3de99f9efc582a48995bc8e8c2df418.info create mode 100644 Library/metadata/c3/c3efd39f2cfb43a4c830d4fd5689900f create mode 100644 Library/metadata/c3/c3efd39f2cfb43a4c830d4fd5689900f.info create mode 100644 Library/metadata/c4/c4095d72f77fbb64ea39b8b3ca246622 create mode 100644 Library/metadata/c4/c4095d72f77fbb64ea39b8b3ca246622.info create mode 100644 Library/metadata/c4/c459424081436584c8cec10767f9ac38 create mode 100644 Library/metadata/c4/c459424081436584c8cec10767f9ac38.info create mode 100644 Library/metadata/c4/c46b007a3762fc84cb1ee7ca30060f0b create mode 100644 Library/metadata/c4/c46b007a3762fc84cb1ee7ca30060f0b.info create mode 100644 Library/metadata/c4/c4777500b5da6094e956c3d4f04de4db create mode 100644 Library/metadata/c4/c4777500b5da6094e956c3d4f04de4db.info create mode 100644 Library/metadata/c4/c488c389c17bd8d42b57e25edfc92ebf create mode 100644 Library/metadata/c4/c488c389c17bd8d42b57e25edfc92ebf.info create mode 100644 Library/metadata/c4/c49b4cc203aa6414fae5c798d1d0e7d6 create mode 100644 Library/metadata/c4/c49b4cc203aa6414fae5c798d1d0e7d6.info create mode 100644 Library/metadata/c4/c4c1445ee948a4124bfa9fb818a17e36 create mode 100644 Library/metadata/c4/c4c1445ee948a4124bfa9fb818a17e36.info create mode 100644 Library/metadata/c4/c4df1124e2787ee0c8d1a911de17ee73 create mode 100644 Library/metadata/c4/c4df1124e2787ee0c8d1a911de17ee73.info create mode 100644 Library/metadata/c5/c50a694a8232898498c1cdd47ce9873f create mode 100644 Library/metadata/c5/c50a694a8232898498c1cdd47ce9873f.info create mode 100644 Library/metadata/c5/c522a644a29fcab2eaf63298c118a65b create mode 100644 Library/metadata/c5/c522a644a29fcab2eaf63298c118a65b.info create mode 100644 Library/metadata/c5/c545241cf2e56ec4997d7677f01ef43d create mode 100644 Library/metadata/c5/c545241cf2e56ec4997d7677f01ef43d.info create mode 100644 Library/metadata/c5/c5535d742ea2e4941850b421f9c70a1f create mode 100644 Library/metadata/c5/c5535d742ea2e4941850b421f9c70a1f.info create mode 100644 Library/metadata/c5/c55a64c7570474f47a94abe39ebfef04 create mode 100644 Library/metadata/c5/c55a64c7570474f47a94abe39ebfef04.info create mode 100644 Library/metadata/c5/c5acba6181d845c4e92146009bd4480f create mode 100644 Library/metadata/c5/c5acba6181d845c4e92146009bd4480f.info create mode 100644 Library/metadata/c6/c606041f02fc7d542b1429806872292b create mode 100644 Library/metadata/c6/c606041f02fc7d542b1429806872292b.info create mode 100644 Library/metadata/c6/c67ac6e40bbb6fe47a095b949b609ce0 create mode 100644 Library/metadata/c6/c67ac6e40bbb6fe47a095b949b609ce0.info create mode 100644 Library/metadata/c6/c68f34993bfe85e489158a29c99a20b5 create mode 100644 Library/metadata/c6/c68f34993bfe85e489158a29c99a20b5.info create mode 100644 Library/metadata/c7/c7137daaeb11e8647bf1ade9b7e9aa97 create mode 100644 Library/metadata/c7/c7137daaeb11e8647bf1ade9b7e9aa97.info create mode 100644 Library/metadata/c7/c754112a02f354a6696fa4f2b99e95a5 create mode 100644 Library/metadata/c7/c754112a02f354a6696fa4f2b99e95a5.info create mode 100644 Library/metadata/c7/c76700ea0062413d9f69409b4e9e151b create mode 100644 Library/metadata/c7/c76700ea0062413d9f69409b4e9e151b.info create mode 100644 Library/metadata/c7/c7cfda246e604b945b12b7afedb094ce create mode 100644 Library/metadata/c7/c7cfda246e604b945b12b7afedb094ce.info create mode 100644 Library/metadata/c8/c825bad77a42dd341a8f0a5ef9cd5f4c create mode 100644 Library/metadata/c8/c825bad77a42dd341a8f0a5ef9cd5f4c.info create mode 100644 Library/metadata/c8/c851bee4305bddf438cc6ffc515991ce create mode 100644 Library/metadata/c8/c851bee4305bddf438cc6ffc515991ce.info create mode 100644 Library/metadata/c8/c890977a36bfdc849872b9337ab89098 create mode 100644 Library/metadata/c8/c890977a36bfdc849872b9337ab89098.info create mode 100644 Library/metadata/c9/c9219e99d466b7741a057132d1994f35 create mode 100644 Library/metadata/c9/c9219e99d466b7741a057132d1994f35.info create mode 100644 Library/metadata/c9/c97b794b51780d349a16826a4c7898d7 create mode 100644 Library/metadata/c9/c97b794b51780d349a16826a4c7898d7.info create mode 100644 Library/metadata/c9/c9aabac5924106d4790d7b3a924ca34d create mode 100644 Library/metadata/c9/c9aabac5924106d4790d7b3a924ca34d.info create mode 100644 Library/metadata/c9/c9b23632c77de204abfe8bf7168d48c0 create mode 100644 Library/metadata/c9/c9b23632c77de204abfe8bf7168d48c0.info create mode 100644 Library/metadata/ca/ca51b19024094d1b87f3e07edb0a75fb create mode 100644 Library/metadata/ca/ca51b19024094d1b87f3e07edb0a75fb.info create mode 100644 Library/metadata/ca/ca819640f53b48919bf7774744f7f15e create mode 100644 Library/metadata/ca/ca819640f53b48919bf7774744f7f15e.info create mode 100644 Library/metadata/ca/cabaa672b0e3ee91fa7b6da4daab7970 create mode 100644 Library/metadata/ca/cabaa672b0e3ee91fa7b6da4daab7970.info create mode 100644 Library/metadata/ca/cad095eccea17b741bc4cd264e7441cd create mode 100644 Library/metadata/ca/cad095eccea17b741bc4cd264e7441cd.info create mode 100644 Library/metadata/ca/cae60a41b37427b48a00027b3e0fc1e6 create mode 100644 Library/metadata/ca/cae60a41b37427b48a00027b3e0fc1e6.info create mode 100644 Library/metadata/cb/cb281723220c9964094e6c52e0ece792 create mode 100644 Library/metadata/cb/cb281723220c9964094e6c52e0ece792.info create mode 100644 Library/metadata/cb/cb319974ad8ebd44aa1e1fbb02640b5b create mode 100644 Library/metadata/cb/cb319974ad8ebd44aa1e1fbb02640b5b.info create mode 100644 Library/metadata/cb/cb7c939a806f03341b682c180dc13f08 create mode 100644 Library/metadata/cb/cb7c939a806f03341b682c180dc13f08.info create mode 100644 Library/metadata/cb/cbab8835092323a4389f2dc7d8f6c781 create mode 100644 Library/metadata/cb/cbab8835092323a4389f2dc7d8f6c781.info create mode 100644 Library/metadata/cb/cbbca1d8a0434be4bbc7f165523763ac create mode 100644 Library/metadata/cb/cbbca1d8a0434be4bbc7f165523763ac.info create mode 100644 Library/metadata/cc/cc22cc13b69c1094c85e176c008b9ef8 create mode 100644 Library/metadata/cc/cc22cc13b69c1094c85e176c008b9ef8.info create mode 100644 Library/metadata/cc/cc313cc004395df4a9884390556690a5 create mode 100644 Library/metadata/cc/cc313cc004395df4a9884390556690a5.info create mode 100644 Library/metadata/cc/cc456ba93311a3a43ad896449fee9868 create mode 100644 Library/metadata/cc/cc456ba93311a3a43ad896449fee9868.info create mode 100644 Library/metadata/cc/cc6401f13df54ba44bfd7cdc93c7d64d create mode 100644 Library/metadata/cc/cc6401f13df54ba44bfd7cdc93c7d64d.info create mode 100644 Library/metadata/cc/cce613d1538e76a4785658931c7db093 create mode 100644 Library/metadata/cc/cce613d1538e76a4785658931c7db093.info create mode 100644 Library/metadata/ce/ce4ec0f498d1b1a4f90fe94e115b6f9a create mode 100644 Library/metadata/ce/ce4ec0f498d1b1a4f90fe94e115b6f9a.info create mode 100644 Library/metadata/ce/ce4ff17ca867d2b48b5c8a4181611901 create mode 100644 Library/metadata/ce/ce4ff17ca867d2b48b5c8a4181611901.info create mode 100644 Library/metadata/ce/ce567ddbf30368344bc7b80e20cac36e create mode 100644 Library/metadata/ce/ce567ddbf30368344bc7b80e20cac36e.info create mode 100644 Library/metadata/ce/ce87c287371edde43a4b5fcfdee7b9ef create mode 100644 Library/metadata/ce/ce87c287371edde43a4b5fcfdee7b9ef.info create mode 100644 Library/metadata/ce/ce8da628f68c7594b8b9a597fa52db7b create mode 100644 Library/metadata/ce/ce8da628f68c7594b8b9a597fa52db7b.info create mode 100644 Library/metadata/ce/ceb629fc661813d40986b4abbefe72c6 create mode 100644 Library/metadata/ce/ceb629fc661813d40986b4abbefe72c6.info create mode 100644 Library/metadata/cf/cf1fe50a641faac4691bf49eb32ce333 create mode 100644 Library/metadata/cf/cf1fe50a641faac4691bf49eb32ce333.info create mode 100644 Library/metadata/cf/cf6aca931950a4a6a886e214e9e649c4 create mode 100644 Library/metadata/cf/cf6aca931950a4a6a886e214e9e649c4.info create mode 100644 Library/metadata/cf/cf97e54bcd5479a46bdbade48da047cc create mode 100644 Library/metadata/cf/cf97e54bcd5479a46bdbade48da047cc.info create mode 100644 Library/metadata/cf/cfa73a847eeff06448bb50a8ac6a94e0 create mode 100644 Library/metadata/cf/cfa73a847eeff06448bb50a8ac6a94e0.info create mode 100644 Library/metadata/cf/cfabb0440166ab443bba8876756fdfa9 create mode 100644 Library/metadata/cf/cfabb0440166ab443bba8876756fdfa9.info create mode 100644 Library/metadata/d0/d0080567f62c3f94cb75b2927a349e22 create mode 100644 Library/metadata/d0/d0080567f62c3f94cb75b2927a349e22.info create mode 100644 Library/metadata/d0/d0138170d24533e47b8e6c250c6d7fbc create mode 100644 Library/metadata/d0/d0138170d24533e47b8e6c250c6d7fbc.info create mode 100644 Library/metadata/d0/d029640460cf8ff47bbbfe69f49ddf29 create mode 100644 Library/metadata/d0/d029640460cf8ff47bbbfe69f49ddf29.info create mode 100644 Library/metadata/d0/d061ada5d3169454daf54243390b5fdb create mode 100644 Library/metadata/d0/d061ada5d3169454daf54243390b5fdb.info create mode 100644 Library/metadata/d0/d0663d520c26b7c48a4135599e66acf8 create mode 100644 Library/metadata/d0/d0663d520c26b7c48a4135599e66acf8.info create mode 100644 Library/metadata/d0/d09858396dd7adb4bbdb22ea0c8c3a37 create mode 100644 Library/metadata/d0/d09858396dd7adb4bbdb22ea0c8c3a37.info create mode 100644 Library/metadata/d0/d0abdd8cb6b29a24c8ee19626ef741b9 create mode 100644 Library/metadata/d0/d0abdd8cb6b29a24c8ee19626ef741b9.info create mode 100644 Library/metadata/d0/d0b148fe25e99eb48b9724523833bab1 create mode 100644 Library/metadata/d0/d0b148fe25e99eb48b9724523833bab1.info create mode 100644 Library/metadata/d0/d0ca7b2e84542bf4ab9987087e8d79ad create mode 100644 Library/metadata/d0/d0ca7b2e84542bf4ab9987087e8d79ad.info create mode 100644 Library/metadata/d0/d0cd29fb1ad218b48b814bc3e6d8ac0e create mode 100644 Library/metadata/d0/d0cd29fb1ad218b48b814bc3e6d8ac0e.info create mode 100644 Library/metadata/d0/d0e3ad91972c66f5238f5b9b7d5ae58a create mode 100644 Library/metadata/d0/d0e3ad91972c66f5238f5b9b7d5ae58a.info create mode 100644 Library/metadata/d0/d0fc6f5187a81dc47999eefade6f0935 create mode 100644 Library/metadata/d0/d0fc6f5187a81dc47999eefade6f0935.info create mode 100644 Library/metadata/d1/d1207768d96c479488b6b81f3483e0c1 create mode 100644 Library/metadata/d1/d1207768d96c479488b6b81f3483e0c1.info create mode 100644 Library/metadata/d1/d143f3edd0494bc4c98a421bd59564fa create mode 100644 Library/metadata/d1/d143f3edd0494bc4c98a421bd59564fa.info create mode 100644 Library/metadata/d1/d199490a83bb2b844b9695cbf13b01ef create mode 100644 Library/metadata/d1/d199490a83bb2b844b9695cbf13b01ef.info create mode 100644 Library/metadata/d1/d19b75372f4e44d4fa4b2cffbb54124b create mode 100644 Library/metadata/d1/d19b75372f4e44d4fa4b2cffbb54124b.info create mode 100644 Library/metadata/d1/d1a0a27327b54c3bac52a08929c33f81 create mode 100644 Library/metadata/d1/d1a0a27327b54c3bac52a08929c33f81.info create mode 100644 Library/metadata/d1/d1b534518943030499685344fd1d476d create mode 100644 Library/metadata/d1/d1b534518943030499685344fd1d476d.info create mode 100644 Library/metadata/d1/d1b7ce919aa8864409412e809073cf96 create mode 100644 Library/metadata/d1/d1b7ce919aa8864409412e809073cf96.info create mode 100644 Library/metadata/d1/d1c9c1ed454d0594b951eb6a76ac62ad create mode 100644 Library/metadata/d1/d1c9c1ed454d0594b951eb6a76ac62ad.info create mode 100644 Library/metadata/d2/d208a1684f8aa6a40ad91d6aa9600c14 create mode 100644 Library/metadata/d2/d208a1684f8aa6a40ad91d6aa9600c14.info create mode 100644 Library/metadata/d2/d20e4e177b86a2843805dd3894f41b42 create mode 100644 Library/metadata/d2/d20e4e177b86a2843805dd3894f41b42.info create mode 100644 Library/metadata/d2/d2146428d3f1ad54eb7326c9a44b3284 create mode 100644 Library/metadata/d2/d2146428d3f1ad54eb7326c9a44b3284.info create mode 100644 Library/metadata/d2/d21dcc2386d650c4597f3633c75a1f98 create mode 100644 Library/metadata/d2/d21dcc2386d650c4597f3633c75a1f98.info create mode 100644 Library/metadata/d2/d256fa541faf5d4409992c631adb98a1 create mode 100644 Library/metadata/d2/d256fa541faf5d4409992c631adb98a1.info create mode 100644 Library/metadata/d3/d31dfeaa131921f4eae00783cc48146f create mode 100644 Library/metadata/d3/d31dfeaa131921f4eae00783cc48146f.info create mode 100644 Library/metadata/d3/d31e5d760880a4e52a3a75322481d0d2 create mode 100644 Library/metadata/d3/d31e5d760880a4e52a3a75322481d0d2.info create mode 100644 Library/metadata/d3/d3217d58bbd1d2b4aaee933e2e8b9195 create mode 100644 Library/metadata/d3/d3217d58bbd1d2b4aaee933e2e8b9195.info create mode 100644 Library/metadata/d3/d36a7c7a1ed377c4b8008e53032d7dcf create mode 100644 Library/metadata/d3/d36a7c7a1ed377c4b8008e53032d7dcf.info create mode 100644 Library/metadata/d3/d3721d5c6afa8e545995dfaada328476 create mode 100644 Library/metadata/d3/d3721d5c6afa8e545995dfaada328476.info create mode 100644 Library/metadata/d3/d3cbe921f7b3d9a3257e7c61a5761796 create mode 100644 Library/metadata/d3/d3cbe921f7b3d9a3257e7c61a5761796.info create mode 100644 Library/metadata/d3/d3d14fa8f6934e14d92e37279e40e89b create mode 100644 Library/metadata/d3/d3d14fa8f6934e14d92e37279e40e89b.info create mode 100644 Library/metadata/d4/d40a0edbdcdcf9747a420f3bbe0f18db create mode 100644 Library/metadata/d4/d40a0edbdcdcf9747a420f3bbe0f18db.info create mode 100644 Library/metadata/d4/d437fe60bb34f45728664a5d930c1635 create mode 100644 Library/metadata/d4/d437fe60bb34f45728664a5d930c1635.info create mode 100644 Library/metadata/d4/d44e6804bc58be84ea71a619b468f150 create mode 100644 Library/metadata/d4/d44e6804bc58be84ea71a619b468f150.info create mode 100644 Library/metadata/d4/d49b2ed20045e034f9cdf6a6d95e6183 create mode 100644 Library/metadata/d4/d49b2ed20045e034f9cdf6a6d95e6183.info create mode 100644 Library/metadata/d4/d4ef26aa386b44923b61c9c4b505a67c create mode 100644 Library/metadata/d4/d4ef26aa386b44923b61c9c4b505a67c.info create mode 100644 Library/metadata/d5/d51458b261e0ecc4a98904e53924dc1c create mode 100644 Library/metadata/d5/d51458b261e0ecc4a98904e53924dc1c.info create mode 100644 Library/metadata/d5/d528c8c98d269ca44a06cd9624a03945 create mode 100644 Library/metadata/d5/d528c8c98d269ca44a06cd9624a03945.info create mode 100644 Library/metadata/d5/d548f82e7e9c0ed49ae5b4a5eecfb2f7 create mode 100644 Library/metadata/d5/d548f82e7e9c0ed49ae5b4a5eecfb2f7.info create mode 100644 Library/metadata/d5/d56dbb97f857c8040beef6dd1bfc97df create mode 100644 Library/metadata/d5/d56dbb97f857c8040beef6dd1bfc97df.info create mode 100644 Library/metadata/d5/d5718b3fe3a758b4a9ec29170290d4f6 create mode 100644 Library/metadata/d5/d5718b3fe3a758b4a9ec29170290d4f6.info create mode 100644 Library/metadata/d5/d59cefc45e3c31d4a90563364e7258fa create mode 100644 Library/metadata/d5/d59cefc45e3c31d4a90563364e7258fa.info create mode 100644 Library/metadata/d5/d5f0b0adc6826e9dd3b72e292e8438be create mode 100644 Library/metadata/d5/d5f0b0adc6826e9dd3b72e292e8438be.info create mode 100644 Library/metadata/d6/d6105bc8cf5ce544487daca4cbc62583 create mode 100644 Library/metadata/d6/d6105bc8cf5ce544487daca4cbc62583.info create mode 100644 Library/metadata/d6/d63dd1a776d383248a21ec2a8a6e7868 create mode 100644 Library/metadata/d6/d63dd1a776d383248a21ec2a8a6e7868.info create mode 100644 Library/metadata/d6/d64d92e4f04a13e4b99ea8d48e9e8ae9 create mode 100644 Library/metadata/d6/d64d92e4f04a13e4b99ea8d48e9e8ae9.info create mode 100644 Library/metadata/d6/d685d97a1eb004f49afea0cc982ff728 create mode 100644 Library/metadata/d6/d685d97a1eb004f49afea0cc982ff728.info create mode 100644 Library/metadata/d6/d691174143fd3774ba63d7c493633b99 create mode 100644 Library/metadata/d6/d691174143fd3774ba63d7c493633b99.info create mode 100644 Library/metadata/d6/d6a2e6e4803de7b43baacdc355fc144d create mode 100644 Library/metadata/d6/d6a2e6e4803de7b43baacdc355fc144d.info create mode 100644 Library/metadata/d6/d6c6a000a805f00649b36b542e8426c2 create mode 100644 Library/metadata/d6/d6c6a000a805f00649b36b542e8426c2.info create mode 100644 Library/metadata/d6/d6db7caf2e852b75ebb9c6098418179c create mode 100644 Library/metadata/d6/d6db7caf2e852b75ebb9c6098418179c.info create mode 100644 Library/metadata/d6/d6e23541e3b2fea489be46f704b64707 create mode 100644 Library/metadata/d6/d6e23541e3b2fea489be46f704b64707.info create mode 100644 Library/metadata/d6/d6fa2d92fc1b3f34da284357edf89c3b create mode 100644 Library/metadata/d6/d6fa2d92fc1b3f34da284357edf89c3b.info create mode 100644 Library/metadata/d7/d72ccd2c66ea846fc842adf682b11526 create mode 100644 Library/metadata/d7/d72ccd2c66ea846fc842adf682b11526.info create mode 100644 Library/metadata/d7/d79cb9ecc0d4a6d428ab98a681a33897 create mode 100644 Library/metadata/d7/d79cb9ecc0d4a6d428ab98a681a33897.info create mode 100644 Library/metadata/d7/d7b5b883d3aae8d479647d5ae6182974 create mode 100644 Library/metadata/d7/d7b5b883d3aae8d479647d5ae6182974.info create mode 100644 Library/metadata/d8/d850db319a63d2546932ff76fe55a498 create mode 100644 Library/metadata/d8/d850db319a63d2546932ff76fe55a498.info create mode 100644 Library/metadata/d8/d85e5eeaf8f135aeaaebdc8aa3cff6c3 create mode 100644 Library/metadata/d8/d85e5eeaf8f135aeaaebdc8aa3cff6c3.info create mode 100644 Library/metadata/d8/d8c4a920f001ca64680ed6fdb52d1753 create mode 100644 Library/metadata/d8/d8c4a920f001ca64680ed6fdb52d1753.info create mode 100644 Library/metadata/d9/d912d4873af534bd4a9d44bf1b52f14e create mode 100644 Library/metadata/d9/d912d4873af534bd4a9d44bf1b52f14e.info create mode 100644 Library/metadata/d9/d925cabd9ecd5074aadab0726b96c38f create mode 100644 Library/metadata/d9/d925cabd9ecd5074aadab0726b96c38f.info create mode 100644 Library/metadata/d9/d9647b571c5e44729b71d756b3d55317 create mode 100644 Library/metadata/d9/d9647b571c5e44729b71d756b3d55317.info create mode 100644 Library/metadata/d9/d9682e749d3efc642af54d789d9090a6 create mode 100644 Library/metadata/d9/d9682e749d3efc642af54d789d9090a6.info create mode 100644 Library/metadata/d9/d973fc1524e4d724081553934c55958c create mode 100644 Library/metadata/d9/d973fc1524e4d724081553934c55958c.info create mode 100644 Library/metadata/da/dab656c79e1985c40b31faebcda44442 create mode 100644 Library/metadata/da/dab656c79e1985c40b31faebcda44442.info create mode 100644 Library/metadata/db/db339ef553721e94999125c0b9f909dc create mode 100644 Library/metadata/db/db339ef553721e94999125c0b9f909dc.info create mode 100644 Library/metadata/db/db34f310723c62440a05d3e69f262a70 create mode 100644 Library/metadata/db/db34f310723c62440a05d3e69f262a70.info create mode 100644 Library/metadata/db/db7dd43fe1278a9459cd6036f096b91d create mode 100644 Library/metadata/db/db7dd43fe1278a9459cd6036f096b91d.info create mode 100644 Library/metadata/db/dbd43d8a3b8122d4e89b055f53382b11 create mode 100644 Library/metadata/db/dbd43d8a3b8122d4e89b055f53382b11.info create mode 100644 Library/metadata/dc/dc42784cf147c0c48a680349fa168899 create mode 100644 Library/metadata/dc/dc42784cf147c0c48a680349fa168899.info create mode 100644 Library/metadata/dc/dc99dfeec967f2644b25dd6bace59b7e create mode 100644 Library/metadata/dc/dc99dfeec967f2644b25dd6bace59b7e.info create mode 100644 Library/metadata/dc/dcb49b07db5e5f64e876b498105314f1 create mode 100644 Library/metadata/dc/dcb49b07db5e5f64e876b498105314f1.info create mode 100644 Library/metadata/dc/dcc8c6e92b172a65719af5ddf47dd968 create mode 100644 Library/metadata/dc/dcc8c6e92b172a65719af5ddf47dd968.info create mode 100644 Library/metadata/dc/dcf00682bef4d264d84a5c92c8f5a40f create mode 100644 Library/metadata/dc/dcf00682bef4d264d84a5c92c8f5a40f.info create mode 100644 Library/metadata/dd/dd2fe74169b54bf58fca17288513ef38 create mode 100644 Library/metadata/dd/dd2fe74169b54bf58fca17288513ef38.info create mode 100644 Library/metadata/dd/dd85a35169d313840a0874aea1a28629 create mode 100644 Library/metadata/dd/dd85a35169d313840a0874aea1a28629.info create mode 100644 Library/metadata/de/de86b4ed8106fd84a8bc2f5d69798d53 create mode 100644 Library/metadata/de/de86b4ed8106fd84a8bc2f5d69798d53.info create mode 100644 Library/metadata/de/de9eb5e2046ffc9448f07e495c436506 create mode 100644 Library/metadata/de/de9eb5e2046ffc9448f07e495c436506.info create mode 100644 Library/metadata/de/dec586c160776104da4d9a4e472662bc create mode 100644 Library/metadata/de/dec586c160776104da4d9a4e472662bc.info create mode 100644 Library/metadata/de/dec9066d4afefe444be0dad3f137730d create mode 100644 Library/metadata/de/dec9066d4afefe444be0dad3f137730d.info create mode 100644 Library/metadata/df/df1ba932d4ce4534e97a0f10c85cd3c9 create mode 100644 Library/metadata/df/df1ba932d4ce4534e97a0f10c85cd3c9.info create mode 100644 Library/metadata/df/df308f4e4481d5a44aef66f971a9b995 create mode 100644 Library/metadata/df/df308f4e4481d5a44aef66f971a9b995.info create mode 100644 Library/metadata/df/df8df80bb65e9ec4280229a9921c4f3c create mode 100644 Library/metadata/df/df8df80bb65e9ec4280229a9921c4f3c.info create mode 100644 Library/metadata/df/dfc336f10b83bd74eaded16a658275c7 create mode 100644 Library/metadata/df/dfc336f10b83bd74eaded16a658275c7.info create mode 100644 Library/metadata/df/dfd084fea478f3148b7de3d83bab1d8c create mode 100644 Library/metadata/df/dfd084fea478f3148b7de3d83bab1d8c.info create mode 100644 Library/metadata/df/dff73c4907c95264c8fc095a81f9d51e create mode 100644 Library/metadata/df/dff73c4907c95264c8fc095a81f9d51e.info create mode 100644 Library/metadata/e0/e00a5dea786950546a21b0e2d817e466 create mode 100644 Library/metadata/e0/e00a5dea786950546a21b0e2d817e466.info create mode 100644 Library/metadata/e0/e05ace3bd15740cda0bad60d89092a5b create mode 100644 Library/metadata/e0/e05ace3bd15740cda0bad60d89092a5b.info create mode 100644 Library/metadata/e0/e086b15460c228c4f9b116f0e3e2f175 create mode 100644 Library/metadata/e0/e086b15460c228c4f9b116f0e3e2f175.info create mode 100644 Library/metadata/e0/e091bb444874ef244b1ba4a813fc1e34 create mode 100644 Library/metadata/e0/e091bb444874ef244b1ba4a813fc1e34.info create mode 100644 Library/metadata/e0/e0ae6629cc70b514889df37fccb76832 create mode 100644 Library/metadata/e0/e0ae6629cc70b514889df37fccb76832.info create mode 100644 Library/metadata/e0/e0db3f3921670cd4ca2e925737c3fba4 create mode 100644 Library/metadata/e0/e0db3f3921670cd4ca2e925737c3fba4.info create mode 100644 Library/metadata/e1/e165a99d845c10e4ea0f546e542e8684 create mode 100644 Library/metadata/e1/e165a99d845c10e4ea0f546e542e8684.info create mode 100644 Library/metadata/e1/e177382a693dea644acd34e3e7a3feb3 create mode 100644 Library/metadata/e1/e177382a693dea644acd34e3e7a3feb3.info create mode 100644 Library/metadata/e1/e17c88b021c2a4c409b3f15b0d80ac62 create mode 100644 Library/metadata/e1/e17c88b021c2a4c409b3f15b0d80ac62.info create mode 100644 Library/metadata/e1/e19747de3f5aca642ab2be37e372fb86 create mode 100644 Library/metadata/e1/e19747de3f5aca642ab2be37e372fb86.info create mode 100644 Library/metadata/e1/e1e957d39ca70834f9212a1289b6a0d5 create mode 100644 Library/metadata/e1/e1e957d39ca70834f9212a1289b6a0d5.info create mode 100644 Library/metadata/e1/e1ef8466c8fd01a549f10baa4d51fa17 create mode 100644 Library/metadata/e1/e1ef8466c8fd01a549f10baa4d51fa17.info create mode 100644 Library/metadata/e1/e1f640f1769d6274194cf97b0e24602c create mode 100644 Library/metadata/e1/e1f640f1769d6274194cf97b0e24602c.info create mode 100644 Library/metadata/e2/e210c8bf2e9c6514d90a1bd77586af1f create mode 100644 Library/metadata/e2/e210c8bf2e9c6514d90a1bd77586af1f.info create mode 100644 Library/metadata/e2/e21bec35f48a44298911b25ead550ce3 create mode 100644 Library/metadata/e2/e21bec35f48a44298911b25ead550ce3.info create mode 100644 Library/metadata/e2/e2cd16a2d73fe7a4c9affa2b790eb5e0 create mode 100644 Library/metadata/e2/e2cd16a2d73fe7a4c9affa2b790eb5e0.info create mode 100644 Library/metadata/e3/e3882522a08b6f5459b4dea6f8791278 create mode 100644 Library/metadata/e3/e3882522a08b6f5459b4dea6f8791278.info create mode 100644 Library/metadata/e3/e3b0f810fdea84e40ab4ba20f256f7e8 create mode 100644 Library/metadata/e3/e3b0f810fdea84e40ab4ba20f256f7e8.info create mode 100644 Library/metadata/e4/e4e0b1de1aee400d81ed4273141e7823 create mode 100644 Library/metadata/e4/e4e0b1de1aee400d81ed4273141e7823.info create mode 100644 Library/metadata/e4/e4e290d31ab7fb54880746bb8f818e0d create mode 100644 Library/metadata/e4/e4e290d31ab7fb54880746bb8f818e0d.info create mode 100644 Library/metadata/e5/e52de21a22b6dd44c9cc19f810c65059 create mode 100644 Library/metadata/e5/e52de21a22b6dd44c9cc19f810c65059.info create mode 100644 Library/metadata/e6/e6323ebef616fee4486ee155cd56d191 create mode 100644 Library/metadata/e6/e6323ebef616fee4486ee155cd56d191.info create mode 100644 Library/metadata/e6/e6413f4090046814d802ddbff9890878 create mode 100644 Library/metadata/e6/e6413f4090046814d802ddbff9890878.info create mode 100644 Library/metadata/e6/e69259f6ff914146ad610be5491eb44a create mode 100644 Library/metadata/e6/e69259f6ff914146ad610be5491eb44a.info create mode 100644 Library/metadata/e6/e6a1d1e3d2384453a7371b4a07a41ca4 create mode 100644 Library/metadata/e6/e6a1d1e3d2384453a7371b4a07a41ca4.info create mode 100644 Library/metadata/e7/e74ddf4132f3401409c824bed60280ee create mode 100644 Library/metadata/e7/e74ddf4132f3401409c824bed60280ee.info create mode 100644 Library/metadata/e7/e763a90581e2d8143bc9a0e384ce6f0f create mode 100644 Library/metadata/e7/e763a90581e2d8143bc9a0e384ce6f0f.info create mode 100644 Library/metadata/e7/e7a505b341283e14696e86433a5b1ae9 create mode 100644 Library/metadata/e7/e7a505b341283e14696e86433a5b1ae9.info create mode 100644 Library/metadata/e8/e801faa3b0dd2478dbe801a2441b679e create mode 100644 Library/metadata/e8/e801faa3b0dd2478dbe801a2441b679e.info create mode 100644 Library/metadata/e8/e88a766c2b8b47841936c136f4afbba9 create mode 100644 Library/metadata/e8/e88a766c2b8b47841936c136f4afbba9.info create mode 100644 Library/metadata/e8/e8c30efa89029e447b0dc0efc75b294c create mode 100644 Library/metadata/e8/e8c30efa89029e447b0dc0efc75b294c.info create mode 100644 Library/metadata/e9/e90cc37a5ccf4a44dbecc5b7172ec512 create mode 100644 Library/metadata/e9/e90cc37a5ccf4a44dbecc5b7172ec512.info create mode 100644 Library/metadata/e9/e9253e696cd45794d9aec6d4de366b6e create mode 100644 Library/metadata/e9/e9253e696cd45794d9aec6d4de366b6e.info create mode 100644 Library/metadata/e9/e93ec7eb6de342aabd156833e253f838 create mode 100644 Library/metadata/e9/e93ec7eb6de342aabd156833e253f838.info create mode 100644 Library/metadata/e9/e9745f6a32442194c8dc5a43e9ab86f9 create mode 100644 Library/metadata/e9/e9745f6a32442194c8dc5a43e9ab86f9.info create mode 100644 Library/metadata/e9/e9a32780b69dcdb438da3e3f43202f54 create mode 100644 Library/metadata/e9/e9a32780b69dcdb438da3e3f43202f54.info create mode 100644 Library/metadata/e9/e9cac674d67385249b2805670e618c24 create mode 100644 Library/metadata/e9/e9cac674d67385249b2805670e618c24.info create mode 100644 Library/metadata/e9/e9df95f53f1c1d0c9199e235d6c42b50 create mode 100644 Library/metadata/e9/e9df95f53f1c1d0c9199e235d6c42b50.info create mode 100644 Library/metadata/ea/ea28dc637ae40484da709200d3328587 create mode 100644 Library/metadata/ea/ea28dc637ae40484da709200d3328587.info create mode 100644 Library/metadata/ea/ea5aa18a49e4f29d74984ea0ea11a238 create mode 100644 Library/metadata/ea/ea5aa18a49e4f29d74984ea0ea11a238.info create mode 100644 Library/metadata/ea/ea5e2240e8a7d9046a651557deec40b2 create mode 100644 Library/metadata/ea/ea5e2240e8a7d9046a651557deec40b2.info create mode 100644 Library/metadata/ea/ea944378afa086f438b3352ad7b0e835 create mode 100644 Library/metadata/ea/ea944378afa086f438b3352ad7b0e835.info create mode 100644 Library/metadata/ea/ea998292f45ea494d9e100f5f6362f91 create mode 100644 Library/metadata/ea/ea998292f45ea494d9e100f5f6362f91.info create mode 100644 Library/metadata/eb/ebc4d20cc106cea49b1df1153f0b3b5e create mode 100644 Library/metadata/eb/ebc4d20cc106cea49b1df1153f0b3b5e.info create mode 100644 Library/metadata/eb/ebcc5f899d9277642868aeda9a17cbaf create mode 100644 Library/metadata/eb/ebcc5f899d9277642868aeda9a17cbaf.info create mode 100644 Library/metadata/eb/ebeedaa04bb53e24ba2e7fb6745e3fd3 create mode 100644 Library/metadata/eb/ebeedaa04bb53e24ba2e7fb6745e3fd3.info create mode 100644 Library/metadata/ec/ec02776fe29df900b897106d61977735 create mode 100644 Library/metadata/ec/ec02776fe29df900b897106d61977735.info create mode 100644 Library/metadata/ec/ec35c13a8280a8d4e817bc4afd8a95de create mode 100644 Library/metadata/ec/ec35c13a8280a8d4e817bc4afd8a95de.info create mode 100644 Library/metadata/ec/ec7c645d93308c04d8840982af12101e create mode 100644 Library/metadata/ec/ec7c645d93308c04d8840982af12101e.info create mode 100644 Library/metadata/ec/ec817e5e5781e0a4983a1dc8875d1974 create mode 100644 Library/metadata/ec/ec817e5e5781e0a4983a1dc8875d1974.info create mode 100644 Library/metadata/ec/ece36bb2bc4128d42911bbc757a56860 create mode 100644 Library/metadata/ec/ece36bb2bc4128d42911bbc757a56860.info create mode 100644 Library/metadata/ed/ed041e68439749a69d0efa0e3d896c2e create mode 100644 Library/metadata/ed/ed041e68439749a69d0efa0e3d896c2e.info create mode 100644 Library/metadata/ed/edc553b1b3c8a25438b62783410b26ae create mode 100644 Library/metadata/ed/edc553b1b3c8a25438b62783410b26ae.info create mode 100644 Library/metadata/ed/edd2a1fe1acbbde43aad39862bb3f4a8 create mode 100644 Library/metadata/ed/edd2a1fe1acbbde43aad39862bb3f4a8.info create mode 100644 Library/metadata/ed/edd4f4b395430604d935bcf0b14c7d42 create mode 100644 Library/metadata/ed/edd4f4b395430604d935bcf0b14c7d42.info create mode 100644 Library/metadata/ed/ede0462698a4a5643aa9872c074acd38 create mode 100644 Library/metadata/ed/ede0462698a4a5643aa9872c074acd38.info create mode 100644 Library/metadata/ee/ee148e281f3c41c5b4ff5f8a5afe5a6c create mode 100644 Library/metadata/ee/ee148e281f3c41c5b4ff5f8a5afe5a6c.info create mode 100644 Library/metadata/ee/ee83d5e1ad2ac4c9aa39e3a6f256062e create mode 100644 Library/metadata/ee/ee83d5e1ad2ac4c9aa39e3a6f256062e.info create mode 100644 Library/metadata/ee/eea34a28297f9bc4c9f4c573bc8d5d1c create mode 100644 Library/metadata/ee/eea34a28297f9bc4c9f4c573bc8d5d1c.info create mode 100644 Library/metadata/ee/eebde5009793ce948bf5d4c4435b89b9 create mode 100644 Library/metadata/ee/eebde5009793ce948bf5d4c4435b89b9.info create mode 100644 Library/metadata/ef/ef4c81c9368d5a340b14c2fec1cad345 create mode 100644 Library/metadata/ef/ef4c81c9368d5a340b14c2fec1cad345.info create mode 100644 Library/metadata/ef/ef563c5a6ecf64d4193dc144cb7d472a create mode 100644 Library/metadata/ef/ef563c5a6ecf64d4193dc144cb7d472a.info create mode 100644 Library/metadata/ef/ef5fa6e2005defb4ab5142723827b58e create mode 100644 Library/metadata/ef/ef5fa6e2005defb4ab5142723827b58e.info create mode 100644 Library/metadata/ef/ef97f39912c138b4cabdccedfb24093b create mode 100644 Library/metadata/ef/ef97f39912c138b4cabdccedfb24093b.info create mode 100644 Library/metadata/ef/efad3ddb7270ac241b9b1357ec5ee2f2 create mode 100644 Library/metadata/ef/efad3ddb7270ac241b9b1357ec5ee2f2.info create mode 100644 Library/metadata/ef/efcf753a96a07b24dbe5f23a8ad5963d create mode 100644 Library/metadata/ef/efcf753a96a07b24dbe5f23a8ad5963d.info create mode 100644 Library/metadata/ef/effb76e1937b45ff8adf45e51a4c08cf create mode 100644 Library/metadata/ef/effb76e1937b45ff8adf45e51a4c08cf.info create mode 100644 Library/metadata/f0/f06555f75b070af458a003d92f9efb00 create mode 100644 Library/metadata/f0/f06555f75b070af458a003d92f9efb00.info create mode 100644 Library/metadata/f0/f079e3afd077fb94fa2bda74d6409499 create mode 100644 Library/metadata/f0/f079e3afd077fb94fa2bda74d6409499.info create mode 100644 Library/metadata/f0/f0f13f2ab3d6d13cfc6e4656824bfca8 create mode 100644 Library/metadata/f0/f0f13f2ab3d6d13cfc6e4656824bfca8.info create mode 100644 Library/metadata/f1/f136f1f122a53c64c9af51baecaa9c96 create mode 100644 Library/metadata/f1/f136f1f122a53c64c9af51baecaa9c96.info create mode 100644 Library/metadata/f1/f15cbb987069826429540d0ea0937442 create mode 100644 Library/metadata/f1/f15cbb987069826429540d0ea0937442.info create mode 100644 Library/metadata/f1/f1605f5534186904fa2c4c42acbfe01e create mode 100644 Library/metadata/f1/f1605f5534186904fa2c4c42acbfe01e.info create mode 100644 Library/metadata/f1/f16e09785c984c445a0467e30f845636 create mode 100644 Library/metadata/f1/f16e09785c984c445a0467e30f845636.info create mode 100644 Library/metadata/f1/f1b6399349763114d9361bc6dfcd025b create mode 100644 Library/metadata/f1/f1b6399349763114d9361bc6dfcd025b.info create mode 100644 Library/metadata/f1/f1ea944dcf8849ebab391e461b99ccb7 create mode 100644 Library/metadata/f1/f1ea944dcf8849ebab391e461b99ccb7.info create mode 100644 Library/metadata/f3/f33e570b8b9af1048b80a27e7848cb09 create mode 100644 Library/metadata/f3/f33e570b8b9af1048b80a27e7848cb09.info create mode 100644 Library/metadata/f3/f3a361a6ad1aff14ba8f48976e94ad76 create mode 100644 Library/metadata/f3/f3a361a6ad1aff14ba8f48976e94ad76.info create mode 100644 Library/metadata/f3/f3e1b3cbf3fac6a459b1a602167ad311 create mode 100644 Library/metadata/f3/f3e1b3cbf3fac6a459b1a602167ad311.info create mode 100644 Library/metadata/f4/f445ca0c614a846449fcd8ae648c24e2 create mode 100644 Library/metadata/f4/f445ca0c614a846449fcd8ae648c24e2.info create mode 100644 Library/metadata/f4/f4688fdb7df04437aeb418b961361dc5 create mode 100644 Library/metadata/f4/f4688fdb7df04437aeb418b961361dc5.info create mode 100644 Library/metadata/f4/f4935fb862d54980b1bcbca942962642 create mode 100644 Library/metadata/f4/f4935fb862d54980b1bcbca942962642.info create mode 100644 Library/metadata/f4/f49bbe06ffa5ae24abe32abdab430c24 create mode 100644 Library/metadata/f4/f49bbe06ffa5ae24abe32abdab430c24.info create mode 100644 Library/metadata/f4/f4f988528bbbb0846a4cb50efb4587a5 create mode 100644 Library/metadata/f4/f4f988528bbbb0846a4cb50efb4587a5.info create mode 100644 Library/metadata/f5/f525580684527b147b70cf94aaa70dbc create mode 100644 Library/metadata/f5/f525580684527b147b70cf94aaa70dbc.info create mode 100644 Library/metadata/f5/f5600e6ae5a1464da659eca36bef9d64 create mode 100644 Library/metadata/f5/f5600e6ae5a1464da659eca36bef9d64.info create mode 100644 Library/metadata/f5/f5a0cc9645f0e2d4fb816156dcf3f4dd create mode 100644 Library/metadata/f5/f5a0cc9645f0e2d4fb816156dcf3f4dd.info create mode 100644 Library/metadata/f6/f601c0d674119f74db9c15166b3a58c4 create mode 100644 Library/metadata/f6/f601c0d674119f74db9c15166b3a58c4.info create mode 100644 Library/metadata/f6/f603edd7163537f44927ad2808147a25 create mode 100644 Library/metadata/f6/f603edd7163537f44927ad2808147a25.info create mode 100644 Library/metadata/f6/f648a3df441ef4243bc2d3b59166e6ca create mode 100644 Library/metadata/f6/f648a3df441ef4243bc2d3b59166e6ca.info create mode 100644 Library/metadata/f6/f65646ef159c91441bff704a5f7f419b create mode 100644 Library/metadata/f6/f65646ef159c91441bff704a5f7f419b.info create mode 100644 Library/metadata/f6/f66454863bc106549a6b53849ee63b41 create mode 100644 Library/metadata/f6/f66454863bc106549a6b53849ee63b41.info create mode 100644 Library/metadata/f6/f68c7f7359094f045930a108c444e7a4 create mode 100644 Library/metadata/f6/f68c7f7359094f045930a108c444e7a4.info create mode 100644 Library/metadata/f6/f695b5f9415c40b39ae877eaff41c96e create mode 100644 Library/metadata/f6/f695b5f9415c40b39ae877eaff41c96e.info create mode 100644 Library/metadata/f6/f6ba30c492ac73742bc0cfee6817045a create mode 100644 Library/metadata/f6/f6ba30c492ac73742bc0cfee6817045a.info create mode 100644 Library/metadata/f6/f6bb32665bcc91b41a7177fd6af08ad6 create mode 100644 Library/metadata/f6/f6bb32665bcc91b41a7177fd6af08ad6.info create mode 100644 Library/metadata/f6/f6bd368ab00d75c459e2582e017191e6 create mode 100644 Library/metadata/f6/f6bd368ab00d75c459e2582e017191e6.info create mode 100644 Library/metadata/f6/f6c189a159d3bde4c964cee562e508ea create mode 100644 Library/metadata/f6/f6c189a159d3bde4c964cee562e508ea.info create mode 100644 Library/metadata/f6/f6d64d8648793944dbadfd71f0f4b0a1 create mode 100644 Library/metadata/f6/f6d64d8648793944dbadfd71f0f4b0a1.info create mode 100644 Library/metadata/f7/f700f31b2e40d7f4bb69753fdbbbc2b5 create mode 100644 Library/metadata/f7/f700f31b2e40d7f4bb69753fdbbbc2b5.info create mode 100644 Library/metadata/f7/f73fc901e4b0f2d4daf11f46506054ba create mode 100644 Library/metadata/f7/f73fc901e4b0f2d4daf11f46506054ba.info create mode 100644 Library/metadata/f7/f779e779d62b5ca49b658236c337845d create mode 100644 Library/metadata/f7/f779e779d62b5ca49b658236c337845d.info create mode 100644 Library/metadata/f7/f7852b99951997645ae7adaac5f0b083 create mode 100644 Library/metadata/f7/f7852b99951997645ae7adaac5f0b083.info create mode 100644 Library/metadata/f7/f7a8357347c80dc69c08d0b1a05e2122 create mode 100644 Library/metadata/f7/f7a8357347c80dc69c08d0b1a05e2122.info create mode 100644 Library/metadata/f7/f7e61a6fdb34813479ec9e958a030910 create mode 100644 Library/metadata/f7/f7e61a6fdb34813479ec9e958a030910.info create mode 100644 Library/metadata/f7/f7fed0d9d0f7a7f41a8525aa79e790b1 create mode 100644 Library/metadata/f7/f7fed0d9d0f7a7f41a8525aa79e790b1.info create mode 100644 Library/metadata/f8/f817a38900380be47942905e17e7d39b create mode 100644 Library/metadata/f8/f817a38900380be47942905e17e7d39b.info create mode 100644 Library/metadata/f8/f867743975592a743a3581ff042bcc25 create mode 100644 Library/metadata/f8/f867743975592a743a3581ff042bcc25.info create mode 100644 Library/metadata/f8/f8730045d7da0f84cb11c0d868899577 create mode 100644 Library/metadata/f8/f8730045d7da0f84cb11c0d868899577.info create mode 100644 Library/metadata/f8/f8964ef46e1d446dc9eb17a36a3e1f14 create mode 100644 Library/metadata/f8/f8964ef46e1d446dc9eb17a36a3e1f14.info create mode 100644 Library/metadata/f8/f8e6a2d47aba4c6c9b3c5a72d9f48da5 create mode 100644 Library/metadata/f8/f8e6a2d47aba4c6c9b3c5a72d9f48da5.info create mode 100644 Library/metadata/f8/f8ed4321a98682942b9980996131cf26 create mode 100644 Library/metadata/f8/f8ed4321a98682942b9980996131cf26.info create mode 100644 Library/metadata/f9/f91a00d2dca52b843b2d50ccf750737d create mode 100644 Library/metadata/f9/f91a00d2dca52b843b2d50ccf750737d.info create mode 100644 Library/metadata/f9/f944311c8fff2479fa3ba741f6039fc8 create mode 100644 Library/metadata/f9/f944311c8fff2479fa3ba741f6039fc8.info create mode 100644 Library/metadata/f9/f96d0ea807c081145a1170ed1b6d71e0 create mode 100644 Library/metadata/f9/f96d0ea807c081145a1170ed1b6d71e0.info create mode 100644 Library/metadata/f9/f9bd02a3a916be64c9b47b1305149423 create mode 100644 Library/metadata/f9/f9bd02a3a916be64c9b47b1305149423.info create mode 100644 Library/metadata/f9/f9d8c8b21846a654092a24f25aa41421 create mode 100644 Library/metadata/f9/f9d8c8b21846a654092a24f25aa41421.info create mode 100644 Library/metadata/fa/fa27413e9edb06a6058d6c894eca0338 create mode 100644 Library/metadata/fa/fa27413e9edb06a6058d6c894eca0338.info create mode 100644 Library/metadata/fa/fa423365b1ce06a4dbdc6fb4a8597bfa create mode 100644 Library/metadata/fa/fa423365b1ce06a4dbdc6fb4a8597bfa.info create mode 100644 Library/metadata/fa/fa6bd40a216346b783a4cce741d277a5 create mode 100644 Library/metadata/fa/fa6bd40a216346b783a4cce741d277a5.info create mode 100644 Library/metadata/fb/fb27f3049fe06c246803a4a4c5b7fda3 create mode 100644 Library/metadata/fb/fb27f3049fe06c246803a4a4c5b7fda3.info create mode 100644 Library/metadata/fb/fb461734117c80c43ab595d699f801eb create mode 100644 Library/metadata/fb/fb461734117c80c43ab595d699f801eb.info create mode 100644 Library/metadata/fb/fb5730e24283d0c489e5c7d0bee023d9 create mode 100644 Library/metadata/fb/fb5730e24283d0c489e5c7d0bee023d9.info create mode 100644 Library/metadata/fb/fb593906b7b6d824087dcaebf6c082e0 create mode 100644 Library/metadata/fb/fb593906b7b6d824087dcaebf6c082e0.info create mode 100644 Library/metadata/fb/fb660d86885d89a499a31c6ab6f26269 create mode 100644 Library/metadata/fb/fb660d86885d89a499a31c6ab6f26269.info create mode 100644 Library/metadata/fc/fc34cd6ea308f3940a729e1a44cd0e82 create mode 100644 Library/metadata/fc/fc34cd6ea308f3940a729e1a44cd0e82.info create mode 100644 Library/metadata/fc/fc3a810351931f5e6183e16b9beb5563 create mode 100644 Library/metadata/fc/fc3a810351931f5e6183e16b9beb5563.info create mode 100644 Library/metadata/fc/fc46f91ea1e8e4ca2ab693fef9156dbe create mode 100644 Library/metadata/fc/fc46f91ea1e8e4ca2ab693fef9156dbe.info create mode 100644 Library/metadata/fc/fc748d99f1f0d484a811a566fc7915ec create mode 100644 Library/metadata/fc/fc748d99f1f0d484a811a566fc7915ec.info create mode 100644 Library/metadata/fc/fc8d686a4c18b8d49bb1db4150de0459 create mode 100644 Library/metadata/fc/fc8d686a4c18b8d49bb1db4150de0459.info create mode 100644 Library/metadata/fc/fcae021c30eccf74790a4e816ba97c19 create mode 100644 Library/metadata/fc/fcae021c30eccf74790a4e816ba97c19.info create mode 100644 Library/metadata/fc/fcb9be00baf924c4183fc0313e6185c5 create mode 100644 Library/metadata/fc/fcb9be00baf924c4183fc0313e6185c5.info create mode 100644 Library/metadata/fc/fcc60c1d6bb544d9b712b652f418ff3a create mode 100644 Library/metadata/fc/fcc60c1d6bb544d9b712b652f418ff3a.info create mode 100644 Library/metadata/fc/fcd66bf74cbeb264aa99679c7df84427 create mode 100644 Library/metadata/fc/fcd66bf74cbeb264aa99679c7df84427.info create mode 100644 Library/metadata/fd/fd0a39b4d296d4d509b4f1dbd08d0630 create mode 100644 Library/metadata/fd/fd0a39b4d296d4d509b4f1dbd08d0630.info create mode 100644 Library/metadata/fd/fd57cf917f61bbb42b8f030436426ddd create mode 100644 Library/metadata/fd/fd57cf917f61bbb42b8f030436426ddd.info create mode 100644 Library/metadata/fd/fd6ede1d2f47ab146b2ec0a3969a37cc create mode 100644 Library/metadata/fd/fd6ede1d2f47ab146b2ec0a3969a37cc.info create mode 100644 Library/metadata/fd/fd871a8be47119612f7c254e96a822b7 create mode 100644 Library/metadata/fd/fd871a8be47119612f7c254e96a822b7.info create mode 100644 Library/metadata/fd/fda82b5ca7a4c5f40b497c4f5f4bd950 create mode 100644 Library/metadata/fd/fda82b5ca7a4c5f40b497c4f5f4bd950.info create mode 100644 Library/metadata/fd/fdb35ef8fc437e14fa4b6c74a0609e86 create mode 100644 Library/metadata/fd/fdb35ef8fc437e14fa4b6c74a0609e86.info create mode 100644 Library/metadata/fd/fdd19c82588da3e498a0c98951efa6c4 create mode 100644 Library/metadata/fd/fdd19c82588da3e498a0c98951efa6c4.info create mode 100644 Library/metadata/fd/fde0d25a170598d46a0b9dc16b4527a5 create mode 100644 Library/metadata/fd/fde0d25a170598d46a0b9dc16b4527a5.info create mode 100644 Library/metadata/fe/fe03a7b0ba57a4d488b6c327ae16c335 create mode 100644 Library/metadata/fe/fe03a7b0ba57a4d488b6c327ae16c335.info create mode 100644 Library/metadata/fe/fe4aef60e4ace544c8430da8ef8acba2 create mode 100644 Library/metadata/fe/fe4aef60e4ace544c8430da8ef8acba2.info create mode 100644 Library/metadata/fe/fe87c0e1cc204ed48ad3b37840f39efc create mode 100644 Library/metadata/fe/fe87c0e1cc204ed48ad3b37840f39efc.info create mode 100644 Library/metadata/fe/fea12beeeb5a7a448b5e60f50e40975d create mode 100644 Library/metadata/fe/fea12beeeb5a7a448b5e60f50e40975d.info create mode 100644 Library/metadata/fe/fea49a0730244a98bf1087f7ca9410a8 create mode 100644 Library/metadata/fe/fea49a0730244a98bf1087f7ca9410a8.info create mode 100644 Library/metadata/fe/fed9dda667cab45d398d06402bba03f4 create mode 100644 Library/metadata/fe/fed9dda667cab45d398d06402bba03f4.info create mode 100644 Library/metadata/fe/fedb0f9e5006b1943abae52f52f08a1a create mode 100644 Library/metadata/fe/fedb0f9e5006b1943abae52f52f08a1a.info create mode 100644 Library/metadata/ff/ff67c526455160f4690a44f74dee4cbe create mode 100644 Library/metadata/ff/ff67c526455160f4690a44f74dee4cbe.info create mode 100644 Library/metadata/ff/ff97302ee78d6ad478b433ec557ee303 create mode 100644 Library/metadata/ff/ff97302ee78d6ad478b433ec557ee303.info create mode 100644 Library/metadata/ff/ffb335140c799c4408411d81789fb05c create mode 100644 Library/metadata/ff/ffb335140c799c4408411d81789fb05c.info create mode 100644 Library/metadata/ff/ffc6271f08270b64ca0aae9c49235d81 create mode 100644 Library/metadata/ff/ffc6271f08270b64ca0aae9c49235d81.info create mode 100644 Library/metadata/ff/ffcbe86028d681144b703991885c535a create mode 100644 Library/metadata/ff/ffcbe86028d681144b703991885c535a.info create mode 100644 Library/shadercompiler-UnityShaderCompiler.exe0.log create mode 100644 Library/shadercompiler-UnityShaderCompiler.exe1.log create mode 100644 Library/shadercompiler-UnityShaderCompiler.exe2.log create mode 100644 Library/shadercompiler-UnityShaderCompiler.exe3.log create mode 100644 Library/shadercompiler-UnityShaderCompiler.exe4.log create mode 100644 Library/shadercompiler-UnityShaderCompiler.exe5.log create mode 100644 Library/shadercompiler-UnityShaderCompiler.exe6.log create mode 100644 Library/shadercompiler-UnityShaderCompiler.exe7.log create mode 100644 Logs/Packages-Update.log create mode 100644 Packages/manifest.json create mode 100644 ProjectSettings/AudioManager.asset create mode 100644 ProjectSettings/ClusterInputManager.asset create mode 100644 ProjectSettings/DynamicsManager.asset create mode 100644 ProjectSettings/EditorBuildSettings.asset create mode 100644 ProjectSettings/EditorSettings.asset create mode 100644 ProjectSettings/GraphicsSettings.asset create mode 100644 ProjectSettings/InputManager.asset create mode 100644 ProjectSettings/NavMeshAreas.asset create mode 100644 ProjectSettings/Physics2DSettings.asset create mode 100644 ProjectSettings/PresetManager.asset create mode 100644 ProjectSettings/ProjectSettings.asset create mode 100644 ProjectSettings/ProjectVersion.txt create mode 100644 ProjectSettings/QualitySettings.asset create mode 100644 ProjectSettings/TagManager.asset create mode 100644 ProjectSettings/TimeManager.asset create mode 100644 ProjectSettings/UnityConnectSettings.asset create mode 100644 ProjectSettings/VFXManager.asset create mode 100644 ProjectSettings/XRSettings.asset diff --git a/Assets/Materials.meta b/Assets/Materials.meta new file mode 100644 index 0000000..29a3efc --- /dev/null +++ b/Assets/Materials.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: df308f4e4481d5a44aef66f971a9b995 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Materials/Prototype Grey.mat b/Assets/Materials/Prototype Grey.mat new file mode 100644 index 0000000..0cad85c --- /dev/null +++ b/Assets/Materials/Prototype Grey.mat @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Prototype Grey + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: _SPECULARHIGHLIGHTS_OFF + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 0 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.4433962, g: 0.4433962, b: 0.4433962, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} diff --git a/Assets/Materials/Prototype Grey.mat.meta b/Assets/Materials/Prototype Grey.mat.meta new file mode 100644 index 0000000..c2b891d --- /dev/null +++ b/Assets/Materials/Prototype Grey.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2e8066249a525704999c373210d308b9 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes.meta b/Assets/Scenes.meta new file mode 100644 index 0000000..136f17d --- /dev/null +++ b/Assets/Scenes.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4bcebd09e16291b4fb14e07f32300e83 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/Test Scene.unity b/Assets/Scenes/Test Scene.unity new file mode 100644 index 0000000..80fe64c --- /dev/null +++ b/Assets/Scenes/Test Scene.unity @@ -0,0 +1,785 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 0 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 705507994} + m_IndirectSpecularColor: {r: 0.44657898, g: 0.4964133, b: 0.5748178, a: 1} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 11 + m_GIWorkflowMode: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 1 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 500 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 500 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 2 + m_PVRDenoiserTypeDirect: 0 + m_PVRDenoiserTypeIndirect: 0 + m_PVRDenoiserTypeAO: 0 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 0 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightingDataAsset: {fileID: 0} + m_UseShadowmask: 1 +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 2 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + accuratePlacement: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &150911451 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 150911452} + - component: {fileID: 150911455} + - component: {fileID: 150911454} + - component: {fileID: 150911453} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &150911452 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 150911451} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0.5, z: 0.5} + m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} + m_Children: [] + m_Father: {fileID: 741217456} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &150911453 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 150911451} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &150911454 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 150911451} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 2e8066249a525704999c373210d308b9, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!33 &150911455 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 150911451} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &548631447 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 548631448} + m_Layer: 0 + m_Name: Environment + m_TagString: Environment + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &548631448 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 548631447} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 733056326} + - {fileID: 876326173} + m_Father: {fileID: 0} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &705507993 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 705507995} + - component: {fileID: 705507994} + m_Layer: 0 + m_Name: Directional Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!108 &705507994 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 705507993} + m_Enabled: 1 + serializedVersion: 9 + m_Type: 1 + m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} + m_Intensity: 1 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize: 10 + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 1 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!4 &705507995 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 705507993} + m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} + m_LocalPosition: {x: 0, y: 3, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} +--- !u!1 &733056325 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 733056326} + - component: {fileID: 733056329} + - component: {fileID: 733056328} + - component: {fileID: 733056327} + m_Layer: 0 + m_Name: Floor + m_TagString: Environment + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &733056326 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 733056325} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 100, y: 0.5, z: 100} + m_Children: [] + m_Father: {fileID: 548631448} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &733056327 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 733056325} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &733056328 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 733056325} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 2e8066249a525704999c373210d308b9, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!33 &733056329 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 733056325} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &741217452 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 741217456} + - component: {fileID: 741217455} + - component: {fileID: 741217454} + - component: {fileID: 741217453} + - component: {fileID: 741217458} + - component: {fileID: 741217457} + m_Layer: 0 + m_Name: Player + m_TagString: Player + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!136 &741217453 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 741217452} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + m_Radius: 0.5 + m_Height: 2 + m_Direction: 1 + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &741217454 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 741217452} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!33 &741217455 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 741217452} + m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &741217456 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 741217452} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 2, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 150911452} + m_Father: {fileID: 0} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &741217457 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 741217452} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 83127dd120c01de45954b99cc4d669a5, type: 3} + m_Name: + m_EditorClassIdentifier: + speed: 20 + jumpSpeed: 20 + gravity: 5 +--- !u!143 &741217458 +CharacterController: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 741217452} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Height: 2 + m_Radius: 0.5 + m_SlopeLimit: 45 + m_StepOffset: 0.3 + m_SkinWidth: 0.08 + m_MinMoveDistance: 0.001 + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &876326172 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 876326173} + - component: {fileID: 876326176} + - component: {fileID: 876326175} + - component: {fileID: 876326174} + m_Layer: 0 + m_Name: Slope + m_TagString: Environment + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &876326173 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 876326172} + m_LocalRotation: {x: 0, y: 0, z: 0.38268343, w: 0.92387956} + m_LocalPosition: {x: 15, y: 7, z: 40} + m_LocalScale: {x: 25, y: 5, z: 7} + m_Children: [] + m_Father: {fileID: 548631448} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 45} +--- !u!65 &876326174 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 876326172} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &876326175 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 876326172} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 2e8066249a525704999c373210d308b9, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!33 &876326176 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 876326172} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &963194225 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 963194228} + - component: {fileID: 963194227} + - component: {fileID: 963194226} + - component: {fileID: 963194229} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &963194226 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 963194225} + m_Enabled: 1 +--- !u!20 &963194227 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 963194225} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 0 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &963194228 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 963194225} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 3, z: -7} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1402695046} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &963194229 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 963194225} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f648a3df441ef4243bc2d3b59166e6ca, type: 3} + m_Name: + m_EditorClassIdentifier: + useOffsetValues: 0 + invertY: 0 + rotateSpeed: 1 + maxViewAngle: 50 + minViewAngle: -50 + player: {fileID: 741217456} + pivot: {fileID: 1402695046} + offset: {x: 0, y: 1, z: 7} +--- !u!1 &1402695045 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1402695046} + m_Layer: 0 + m_Name: Pivot + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1402695046 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1402695045} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 963194228} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} diff --git a/Assets/Scenes/Test Scene.unity.meta b/Assets/Scenes/Test Scene.unity.meta new file mode 100644 index 0000000..952bd1e --- /dev/null +++ b/Assets/Scenes/Test Scene.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 9fc0d4010bbf28b4594072e72b8655ab +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts.meta b/Assets/Scripts.meta new file mode 100644 index 0000000..6621742 --- /dev/null +++ b/Assets/Scripts.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b43128d62b2ba454f9720a08135e57b6 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/CameraController.cs b/Assets/Scripts/CameraController.cs new file mode 100644 index 0000000..dd98a01 --- /dev/null +++ b/Assets/Scripts/CameraController.cs @@ -0,0 +1,68 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class CameraController : MonoBehaviour +{ + public bool useOffsetValues; + public bool invertY = false; + public float rotateSpeed = 1.0f; + public float maxViewAngle; + public float minViewAngle; + public Transform player; + public Transform pivot; + public Vector3 offset; + + void Start () { + if(!useOffsetValues){ + offset = player.position - transform.position; + } + + pivot.position = player.position; + pivot.parent = player.transform; + + Cursor.visible = !Cursor.visible; + Cursor.lockState = CursorLockMode.Locked; + } + + void LateUpdate(){ + float camX = Input.GetAxisRaw("Mouse X") * rotateSpeed; + player.Rotate(0, camX, 0); + + float camY = Input.GetAxisRaw("Mouse Y") * rotateSpeed; + if (invertY){ + pivot.Rotate(camY, 0, 0); + } else { + pivot.Rotate(-camY, 0, 0); + } + + if(pivot.rotation.eulerAngles.x > maxViewAngle && pivot.rotation.eulerAngles.x < 180f) + { + pivot.rotation = Quaternion.Euler(maxViewAngle, 0, 0); + } + + if(pivot.rotation.eulerAngles.x > 180f && pivot.rotation.eulerAngles.x < (360 + minViewAngle)) + { + pivot.rotation = Quaternion.Euler(minViewAngle, 0, 0); + } + + float camZ = Input.GetAxisRaw("Mouse ScrollWheel"); + + float angleX = pivot.eulerAngles.x; + float angleY = player.eulerAngles.y; + float cameraAngle = transform.eulerAngles.y; + + //if (Mathf.Abs(cameraAngle - angleY) <= 45){ Potential start for camera following similar to banjo/mario64 + + Quaternion rotation = Quaternion.Euler(angleX, angleY, 0); + transform.position = player.position - (rotation * offset); + + //} + + if(transform.position.y < player.position.y){ + transform.position = new Vector3(transform.position.x, player.position.y - 0.5f, transform.position.z); + } + + transform.LookAt(player.position); + } +} diff --git a/Assets/Scripts/CameraController.cs.meta b/Assets/Scripts/CameraController.cs.meta new file mode 100644 index 0000000..95ecdcc --- /dev/null +++ b/Assets/Scripts/CameraController.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f648a3df441ef4243bc2d3b59166e6ca +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/PlayerController.cs b/Assets/Scripts/PlayerController.cs new file mode 100644 index 0000000..d183f21 --- /dev/null +++ b/Assets/Scripts/PlayerController.cs @@ -0,0 +1,66 @@ +using UnityEngine; +using System.Collections; + +// This script moves the character controller forward +// and sideways based on the arrow keys. +// It also jumps when pressing space. +// Make sure to attach a character controller to the same game object. +// It is recommended that you make only one call to Move or SimpleMove per frame. + +public class PlayerController : MonoBehaviour +{ + CharacterController characterController; + + public float speed = 20.0f; + public float jumpSpeed = 15.0f; + public float gravity = 5.0f; + + private bool extraJump = true; + private Vector3 moveDirection; + + void Start() + { + characterController = GetComponent(); + } + + void Update() + { + + float yStore = moveDirection.y; + moveDirection = (transform.forward * Input.GetAxisRaw("Vertical")) + (transform.right * Input.GetAxisRaw("Horizontal")); + + if (extraJump == true) + { + moveDirection = moveDirection.normalized * speed; //Remove this line to make running diagonal the fastest standard run + } else + { + moveDirection = (moveDirection.normalized * speed)/4; //Remove this line to make running diagonal the fastest standard run + } + + moveDirection.y = yStore; + + if (characterController.isGrounded) + { + extraJump = true; + moveDirection.y = 0.0f; + + if (Input.GetButtonDown("Jump")) + { + moveDirection.y = jumpSpeed; + } + + } else { + if (Input.GetButtonDown("Jump") && extraJump == true) + { + moveDirection.y = jumpSpeed; + extraJump = false; + } + + } + + moveDirection.y = moveDirection.y + (Physics.gravity.y * gravity * Time.deltaTime); + + // Move the controller + characterController.Move(moveDirection * Time.deltaTime); + } +} diff --git a/Assets/Scripts/PlayerController.cs.meta b/Assets/Scripts/PlayerController.cs.meta new file mode 100644 index 0000000..3033983 --- /dev/null +++ b/Assets/Scripts/PlayerController.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 83127dd120c01de45954b99cc4d669a5 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/APIUpdater/project-dependencies.graph b/Library/APIUpdater/project-dependencies.graph new file mode 100644 index 0000000000000000000000000000000000000000..eed72162b36db9c2a9d4d40a5e7a84e2236663d2 GIT binary patch literal 2089 zcmdT_J8u&~5Wd5YyR}1jiUN_imY|x@$7dqJKxNX9izK`y;}Y9Zu)Tb z_v=QUza5*JefIV8bNl6srz6Ju`=!xKhDo?pTKL8q*hgYwL5id^T^C79Rh&hxV$qV- z3$FfDoXIpyQpKy1r-|~ziZhqiLJ{2Lox80jmsOdDVF3=WWc;}EffDUR$c8&UcYUE< z_Y^b zk$2mV_+aF%H=N+{(AD|GPttg->3I`=(4^aOP4KX8=JI>6Y0m$1sk&LCB6y1XNepIR zUcAEw$yWGDlWC`3_3T*j!<2iTVZ%R`iK3&b#e*d5C=OaG6g74Tdp{@)LXmEmXbcTJ zLP|MvDs~jx-+Nd%Hqk#Cdu#(M8$xn6gzaxxEZR(CkCSphrZi&Rhl+aQaZ5GX3E)3x z&w-BA_>-iR*GHh@>=dw{vRE{(#-1jn*u^pju#Z`oZfzjWkSO(B-ityu4Csd}6!fES z+1Z`~T1>E|ts|tYEfc(KwSs}IR^+Lzqom-b<1vxZR;;tFb$C0gg=6ZWp?&u4>Y~b< Z=0(ZU$*=uk_IE&8pyj{j@%NxB{{e=eSQ-ET literal 0 HcmV?d00001 diff --git a/Library/AnnotationManager b/Library/AnnotationManager new file mode 100644 index 0000000000000000000000000000000000000000..4520bf85a60d04de0f0fed3404a7802150cde75f GIT binary patch literal 4116 zcmeH~J#W)M7{{M$5=wb3@03tjnWCl{5E4Rx0Hsn9FA>VX5V^^b7&$hwU7?ocz5wdN z%D}?Hf*6=9c1BhtJ_HgI=K0^*itQ3U0J=xI$G-pXxflQMGK8qMM6`ICh`25CgJ^Z7 zd9AV9XgzDv?<7ftU~Q?&DM@yR%gL{WTaCuY*7o>K@5*IXe{e$y;wq8iA&KrNoplmi z@xDUplOTneP@j!K0r)rOC;1)Y=O8L16N2VMlNB`Z3gkV*kOfufJF_~^f%(z$0p4Qa zc{;uZsE|wu9HvS0sCJ7 zP)H^O)e7Hth-J}EA>MgM`R_ZdwIYASGvfQO|0DZ&RgaHY$Nr9T%SYz_D;BZ8V}J_D zMA`r2koOEjF8gmTQjzEVKLMojyy!pfLD^rNPv-xrzwo^OxX<}0`+o*dO)JX&pJntf z|IdL>hwJmn`+t5PFZ$2FxkAAIcf6z5tm1qw6e!jb`hLD;9qZO-@DC}!ID>yq`SJ|@ zHRYGU+ejvE`hE~Qu^agJ9p4$rkS6`kRv1b@ei+I~#{EfuTC?FsF-^N%yFLi~JHE5& z$szaF+?`1y4=ng{nMXdYWyX!flh@X$;fY-Er`8Ep)LGUc1th18n`lR_wVx>I-tu4W%|Uf1u?Hlo?^4)&c8)b-+4c Y9k32q2do3uf&ayU-7i0{3;wtN2i!r)KL7v# literal 0 HcmV?d00001 diff --git a/Library/AssetImportState b/Library/AssetImportState new file mode 100644 index 0000000..6b75fc6 --- /dev/null +++ b/Library/AssetImportState @@ -0,0 +1 @@ +5;0;4;0;0 \ No newline at end of file diff --git a/Library/BuildPlayer.prefs b/Library/BuildPlayer.prefs new file mode 100644 index 0000000..e69de29 diff --git a/Library/BuildSettings.asset b/Library/BuildSettings.asset new file mode 100644 index 0000000000000000000000000000000000000000..e14295c98121c40a74dda8c82040ba3e81942146 GIT binary patch literal 4152 zcmeH}OK;Oa5XZ+&3*}wjk3xa+ew8NWeL!hR1r>#cw3I_tp^d$5OdY%OIz_$t0{~wE zgn%nj??}0D=fVLFaN!#OSHjGCO>9TbnL}3c?)v}RncdkPuME)p9H8$S0PMmR8-Uz! z_WDq6Xk;M^e;SR3rlE#|02+kw)ADDR2+Ur)S=vEKs^&?EULy|;x2@$E*P*1v&leX4?z zjBg{!^?*@L>yO5_sflDS8Q*47eTih1jBg97?c$?zXcynM79PZR5_O7CCX$aYswCsv zPI_HIY?ATqXd>B5#puiwUK1qoy+tEtvIB zs+PHdt3!hs*JPITTq|3qsGwoVT&#G4wCM^noTow8S@0sSla9`;Ng5atM~xL`>lme4 zVGwj-)n-*wA7h?Q-f_+XFW1!aYJ!U?`<{dC_zJg!X>VCIfpL|%ZE%-Ns*i8GY`J3U tVzf9RWEuv^7@h_Fgmg-02Rb{@*@4aubatS#1OLYk;6E7_O_g9xe*t(fO*;Sp literal 0 HcmV?d00001 diff --git a/Library/CurrentLayout-default.dwlt b/Library/CurrentLayout-default.dwlt new file mode 100644 index 0000000..fba3fc2 --- /dev/null +++ b/Library/CurrentLayout-default.dwlt @@ -0,0 +1,733 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &1 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12004, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_PixelRect: + serializedVersion: 2 + x: 0 + y: 43 + width: 1920 + height: 997 + m_ShowMode: 4 + m_Title: + m_RootView: {fileID: 2} + m_MinSize: {x: 950, y: 394} + m_MaxSize: {x: 10000, y: 10000} +--- !u!114 &2 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12008, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 3} + - {fileID: 5} + - {fileID: 4} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1920 + height: 997 + m_MinSize: {x: 950, y: 394} + m_MaxSize: {x: 10000, y: 10000} +--- !u!114 &3 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12011, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1920 + height: 30 + m_MinSize: {x: 0, y: 0} + m_MaxSize: {x: 0, y: 0} + m_LastLoadedLayoutName: +--- !u!114 &4 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12042, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 977 + width: 1920 + height: 20 + m_MinSize: {x: 0, y: 0} + m_MaxSize: {x: 0, y: 0} +--- !u!114 &5 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 6} + - {fileID: 11} + m_Position: + serializedVersion: 2 + x: 0 + y: 30 + width: 1920 + height: 947 + m_MinSize: {x: 683, y: 344} + m_MaxSize: {x: 12008, y: 8044} + vertical: 0 + controlID: 38450 +--- !u!114 &6 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 7} + - {fileID: 10} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1472 + height: 947 + m_MinSize: {x: 406, y: 344} + m_MaxSize: {x: 8006, y: 8044} + vertical: 1 + controlID: 38451 +--- !u!114 &7 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 8} + - {fileID: 9} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1472 + height: 574 + m_MinSize: {x: 406, y: 222} + m_MaxSize: {x: 8006, y: 4022} + vertical: 0 + controlID: 38452 +--- !u!114 &8 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 455 + height: 574 + m_MinSize: {x: 202, y: 222} + m_MaxSize: {x: 4002, y: 4022} + m_ActualView: {fileID: 13} + m_Panes: + - {fileID: 13} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &9 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 455 + y: 0 + width: 1017 + height: 574 + m_MinSize: {x: 204, y: 222} + m_MaxSize: {x: 4004, y: 4022} + m_ActualView: {fileID: 12} + m_Panes: + - {fileID: 14} + - {fileID: 12} + - {fileID: 15} + m_Selected: 1 + m_LastSelected: 0 +--- !u!114 &10 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 574 + width: 1472 + height: 373 + m_MinSize: {x: 102, y: 122} + m_MaxSize: {x: 4002, y: 4022} + m_ActualView: {fileID: 17} + m_Panes: + - {fileID: 16} + - {fileID: 17} + m_Selected: 1 + m_LastSelected: 0 +--- !u!114 &11 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 1472 + y: 0 + width: 448 + height: 947 + m_MinSize: {x: 277, y: 72} + m_MaxSize: {x: 4002, y: 4022} + m_ActualView: {fileID: 18} + m_Panes: + - {fileID: 18} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &12 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12015, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Game + m_Image: {fileID: -2087823869225018852, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 455 + y: 73 + width: 1015 + height: 555 + m_ViewDataDictionary: {fileID: 0} + m_VSyncEnabled: 0 + m_MaximizeOnPlay: 1 + m_Gizmos: 0 + m_Stats: 0 + m_SelectedSizes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_TargetDisplay: 0 + m_ZoomArea: + m_HRangeLocked: 0 + m_VRangeLocked: 0 + hZoomLockedByDefault: 0 + vZoomLockedByDefault: 0 + m_HBaseRangeMin: -507.5 + m_HBaseRangeMax: 507.5 + m_VBaseRangeMin: -269 + m_VBaseRangeMax: 269 + m_HAllowExceedBaseRangeMin: 1 + m_HAllowExceedBaseRangeMax: 1 + m_VAllowExceedBaseRangeMin: 1 + m_VAllowExceedBaseRangeMax: 1 + m_ScaleWithWindow: 0 + m_HSlider: 0 + m_VSlider: 0 + m_IgnoreScrollWheelUntilClicked: 0 + m_EnableMouseInput: 1 + m_EnableSliderZoomHorizontal: 0 + m_EnableSliderZoomVertical: 0 + m_UniformScale: 1 + m_UpDirection: 1 + m_DrawArea: + serializedVersion: 2 + x: 0 + y: 17 + width: 1015 + height: 538 + m_Scale: {x: 1, y: 1} + m_Translation: {x: 507.5, y: 269} + m_MarginLeft: 0 + m_MarginRight: 0 + m_MarginTop: 0 + m_MarginBottom: 0 + m_LastShownAreaInsideMargins: + serializedVersion: 2 + x: -507.5 + y: -269 + width: 1015 + height: 538 + m_MinimalGUI: 1 + m_defaultScale: 1 + m_TargetTexture: {fileID: 0} + m_CurrentColorSpace: 0 + m_LastWindowPixelSize: {x: 1015, y: 555} + m_ClearInEditMode: 1 + m_NoCameraWarning: 1 + m_LowResolutionForAspectRatios: 01000000000000000000 + m_XRRenderMode: 0 +--- !u!114 &13 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12061, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Hierarchy + m_Image: {fileID: -590624980919486359, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 73 + width: 455 + height: 555 + m_ViewDataDictionary: {fileID: 0} + m_SceneHierarchy: + m_TreeViewState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: 8a350000 + m_LastClickedID: 13706 + m_ExpandedIDs: 2efaffff723500008a350000 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 0 + m_ClientGUIView: {fileID: 8} + m_SearchString: + m_ExpandedScenes: [] + m_CurrenRootInstanceID: 0 + m_LockTracker: + m_IsLocked: 0 + m_CurrentSortingName: TransformSorting + m_WindowGUID: 02f8212fc16d0a74faa141f10681d290 +--- !u!114 &14 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12013, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Scene + m_Image: {fileID: 2318424515335265636, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 455 + y: 73 + width: 1015 + height: 555 + m_ViewDataDictionary: {fileID: 0} + m_ShowContextualTools: 0 + m_WindowGUID: 43c22526bca3f0f4f9e1759054a95864 + m_Gizmos: 1 + m_SceneIsLit: 1 + m_SceneLighting: 1 + m_2DMode: 0 + m_isRotationLocked: 0 + m_PlayAudio: 0 + m_AudioPlay: 0 + m_Position: + m_Target: {x: -0.05109787, y: 4.503795, z: -0.88748455} + speed: 2 + m_Value: {x: -0.05109787, y: 4.503795, z: -0.88748455} + m_RenderMode: 0 + m_CameraMode: + drawMode: 0 + name: Shaded + section: Shading Mode + m_ValidateTrueMetals: 0 + m_DoValidateTrueMetals: 0 + m_SceneViewState: + showFog: 1 + showMaterialUpdate: 0 + showSkybox: 1 + showFlares: 1 + showImageEffects: 1 + showParticleSystems: 1 + grid: + xGrid: + m_Target: 0 + speed: 2 + m_Value: 0 + yGrid: + m_Target: 1 + speed: 2 + m_Value: 1 + zGrid: + m_Target: 0 + speed: 2 + m_Value: 0 + m_Rotation: + m_Target: {x: 0.15095386, y: 0.49731448, z: -0.08834605, w: 0.8497627} + speed: 2 + m_Value: {x: 0.15095386, y: 0.49731445, z: -0.08834604, w: 0.8497627} + m_Size: + m_Target: 17.936657 + speed: 2 + m_Value: 17.936657 + m_Ortho: + m_Target: 0 + speed: 2 + m_Value: 0 + m_CameraSettings: + m_Speed: 1 + m_SpeedNormalized: 0.5 + m_SpeedMin: 0.01 + m_SpeedMax: 2 + m_EasingEnabled: 1 + m_EasingDuration: 0.4 + m_AccelerationEnabled: 1 + m_FieldOfView: 90 + m_NearClip: 0.03 + m_FarClip: 10000 + m_DynamicClip: 1 + m_OcclusionCulling: 0 + m_ShowGlobalGrid: 1 + m_LastSceneViewRotation: {x: 0, y: 0, z: 0, w: 0} + m_LastSceneViewOrtho: 0 + m_ReplacementShader: {fileID: 0} + m_ReplacementString: + m_SceneVisActive: 1 + m_LastLockedObject: {fileID: 0} + m_ViewIsLockedToObject: 0 +--- !u!114 &15 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12111, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 400, y: 100} + m_MaxSize: {x: 2048, y: 2048} + m_TitleContent: + m_Text: Asset Store + m_Image: {fileID: 357073275683767465, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 468 + y: 181 + width: 973 + height: 501 + m_ViewDataDictionary: {fileID: 0} +--- !u!114 &16 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12014, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 230, y: 250} + m_MaxSize: {x: 10000, y: 10000} + m_TitleContent: + m_Text: Project + m_Image: {fileID: -7501376956915960154, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 647 + width: 1472 + height: 354 + m_ViewDataDictionary: {fileID: 0} + m_SearchFilter: + m_NameFilter: + m_ClassNames: [] + m_AssetLabels: [] + m_AssetBundleNames: [] + m_VersionControlStates: [] + m_SoftLockControlStates: [] + m_ReferencingInstanceIDs: + m_SceneHandles: + m_ShowAllHits: 0 + m_SkipHidden: 0 + m_SearchArea: 1 + m_Folders: + - Assets/Scripts + m_ViewMode: 1 + m_StartGridSize: 64 + m_LastFolders: + - Assets/Scripts + m_LastFoldersGridSize: -1 + m_LastProjectPath: E:\GregoryCampbell\Projects\Unity\Speed Platformer Prototype + m_LockTracker: + m_IsLocked: 0 + m_FolderTreeState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: be330000 + m_LastClickedID: 13246 + m_ExpandedIDs: 00000000a432000000ca9a3b + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_AssetTreeState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: + m_LastClickedID: 0 + m_ExpandedIDs: 00000000a432000000ca9a3b + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_ListAreaState: + m_SelectedInstanceIDs: 8a350000 + m_LastClickedInstanceID: 13706 + m_HadKeyboardFocusLastEvent: 0 + m_ExpandedInstanceIDs: c6230000 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 10} + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_NewAssetIndexInList: -1 + m_ScrollPosition: {x: 0, y: 0} + m_GridSize: 64 + m_SkipHiddenPackages: 0 + m_DirectoriesAreaWidth: 115 +--- !u!114 &17 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12003, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 100, y: 100} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Console + m_Image: {fileID: 111653112392082826, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 647 + width: 1472 + height: 354 + m_ViewDataDictionary: {fileID: 0} +--- !u!114 &18 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12019, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 275, y: 50} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Inspector + m_Image: {fileID: -6905738622615590433, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 1472 + y: 73 + width: 446 + height: 928 + m_ViewDataDictionary: {fileID: 0} + m_OpenAddComponentMenu: 0 + m_ObjectsLockedBeforeSerialization: [] + m_InstanceIDsLockedBeforeSerialization: + m_LockTracker: + m_IsLocked: 0 + m_PreviewResizer: + m_CachedPref: 160 + m_ControlHash: -371814159 + m_PrefName: Preview_InspectorPreview + m_PreviewWindow: {fileID: 0} diff --git a/Library/CurrentMaximizeLayout.dwlt b/Library/CurrentMaximizeLayout.dwlt new file mode 100644 index 0000000..d841ae2 --- /dev/null +++ b/Library/CurrentMaximizeLayout.dwlt @@ -0,0 +1,643 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &1 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 3} + - {fileID: 13} + m_Position: + serializedVersion: 2 + x: 0 + y: 30 + width: 1920 + height: 947 + m_MinSize: {x: 683, y: 344} + m_MaxSize: {x: 12008, y: 8044} + vertical: 0 + controlID: 12731 +--- !u!114 &2 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12015, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Game + m_Image: {fileID: -2087823869225018852, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 455 + y: 73 + width: 1015 + height: 555 + m_ViewDataDictionary: {fileID: 0} + m_VSyncEnabled: 0 + m_MaximizeOnPlay: 1 + m_Gizmos: 0 + m_Stats: 0 + m_SelectedSizes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_TargetDisplay: 0 + m_ZoomArea: + m_HRangeLocked: 0 + m_VRangeLocked: 0 + hZoomLockedByDefault: 0 + vZoomLockedByDefault: 0 + m_HBaseRangeMin: -507.5 + m_HBaseRangeMax: 507.5 + m_VBaseRangeMin: -269 + m_VBaseRangeMax: 269 + m_HAllowExceedBaseRangeMin: 1 + m_HAllowExceedBaseRangeMax: 1 + m_VAllowExceedBaseRangeMin: 1 + m_VAllowExceedBaseRangeMax: 1 + m_ScaleWithWindow: 0 + m_HSlider: 0 + m_VSlider: 0 + m_IgnoreScrollWheelUntilClicked: 0 + m_EnableMouseInput: 1 + m_EnableSliderZoomHorizontal: 0 + m_EnableSliderZoomVertical: 0 + m_UniformScale: 1 + m_UpDirection: 1 + m_DrawArea: + serializedVersion: 2 + x: 0 + y: 17 + width: 1015 + height: 538 + m_Scale: {x: 1, y: 1} + m_Translation: {x: 507.5, y: 269} + m_MarginLeft: 0 + m_MarginRight: 0 + m_MarginTop: 0 + m_MarginBottom: 0 + m_LastShownAreaInsideMargins: + serializedVersion: 2 + x: -507.5 + y: -269 + width: 1015 + height: 538 + m_MinimalGUI: 1 + m_defaultScale: 1 + m_TargetTexture: {fileID: 0} + m_CurrentColorSpace: 0 + m_LastWindowPixelSize: {x: 1015, y: 555} + m_ClearInEditMode: 1 + m_NoCameraWarning: 1 + m_LowResolutionForAspectRatios: 01000000000000000000 + m_XRRenderMode: 0 +--- !u!114 &3 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 4} + - {fileID: 10} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1472 + height: 947 + m_MinSize: {x: 406, y: 344} + m_MaxSize: {x: 8006, y: 8044} + vertical: 1 + controlID: 12709 +--- !u!114 &4 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 5} + - {fileID: 7} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1472 + height: 574 + m_MinSize: {x: 406, y: 222} + m_MaxSize: {x: 8006, y: 4022} + vertical: 0 + controlID: 12710 +--- !u!114 &5 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 455 + height: 574 + m_MinSize: {x: 202, y: 222} + m_MaxSize: {x: 4002, y: 4022} + m_ActualView: {fileID: 6} + m_Panes: + - {fileID: 6} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &6 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12061, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Hierarchy + m_Image: {fileID: -590624980919486359, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 73 + width: 455 + height: 555 + m_ViewDataDictionary: {fileID: 0} + m_SceneHierarchy: + m_TreeViewState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: + m_LastClickedID: 0 + m_ExpandedIDs: 2efaffff723500008a350000 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 0 + m_ClientGUIView: {fileID: 5} + m_SearchString: + m_ExpandedScenes: [] + m_CurrenRootInstanceID: 0 + m_LockTracker: + m_IsLocked: 0 + m_CurrentSortingName: TransformSorting + m_WindowGUID: 02f8212fc16d0a74faa141f10681d290 +--- !u!114 &7 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 455 + y: 0 + width: 1017 + height: 574 + m_MinSize: {x: 204, y: 222} + m_MaxSize: {x: 4004, y: 4022} + m_ActualView: {fileID: 2} + m_Panes: + - {fileID: 8} + - {fileID: 2} + - {fileID: 9} + m_Selected: 1 + m_LastSelected: 0 +--- !u!114 &8 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12013, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Scene + m_Image: {fileID: 2318424515335265636, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 455 + y: 73 + width: 1015 + height: 555 + m_ViewDataDictionary: {fileID: 0} + m_ShowContextualTools: 0 + m_WindowGUID: 43c22526bca3f0f4f9e1759054a95864 + m_Gizmos: 1 + m_SceneIsLit: 1 + m_SceneLighting: 1 + m_2DMode: 0 + m_isRotationLocked: 0 + m_PlayAudio: 0 + m_AudioPlay: 0 + m_Position: + m_Target: {x: -0.05109787, y: 4.503795, z: -0.88748455} + speed: 2 + m_Value: {x: -0.05109787, y: 4.503795, z: -0.88748455} + m_RenderMode: 0 + m_CameraMode: + drawMode: 0 + name: Shaded + section: Shading Mode + m_ValidateTrueMetals: 0 + m_DoValidateTrueMetals: 0 + m_SceneViewState: + showFog: 1 + showMaterialUpdate: 0 + showSkybox: 1 + showFlares: 1 + showImageEffects: 1 + showParticleSystems: 1 + grid: + xGrid: + m_Target: 0 + speed: 2 + m_Value: 0 + yGrid: + m_Target: 1 + speed: 2 + m_Value: 1 + zGrid: + m_Target: 0 + speed: 2 + m_Value: 0 + m_Rotation: + m_Target: {x: 0.15095386, y: 0.49731448, z: -0.08834605, w: 0.8497627} + speed: 2 + m_Value: {x: 0.15095308, y: 0.49731192, z: -0.088345595, w: 0.8497583} + m_Size: + m_Target: 17.936657 + speed: 2 + m_Value: 17.936657 + m_Ortho: + m_Target: 0 + speed: 2 + m_Value: 0 + m_CameraSettings: + m_Speed: 1 + m_SpeedNormalized: 0.5 + m_SpeedMin: 0.01 + m_SpeedMax: 2 + m_EasingEnabled: 1 + m_EasingDuration: 0.4 + m_AccelerationEnabled: 1 + m_FieldOfView: 90 + m_NearClip: 0.03 + m_FarClip: 10000 + m_DynamicClip: 1 + m_OcclusionCulling: 0 + m_ShowGlobalGrid: 1 + m_LastSceneViewRotation: {x: 0, y: 0, z: 0, w: 0} + m_LastSceneViewOrtho: 0 + m_ReplacementShader: {fileID: 0} + m_ReplacementString: + m_SceneVisActive: 1 + m_LastLockedObject: {fileID: 0} + m_ViewIsLockedToObject: 0 +--- !u!114 &9 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12111, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 400, y: 100} + m_MaxSize: {x: 2048, y: 2048} + m_TitleContent: + m_Text: Asset Store + m_Image: {fileID: 357073275683767465, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 468 + y: 181 + width: 973 + height: 501 + m_ViewDataDictionary: {fileID: 0} +--- !u!114 &10 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 574 + width: 1472 + height: 373 + m_MinSize: {x: 100, y: 100} + m_MaxSize: {x: 4000, y: 4000} + m_ActualView: {fileID: 12} + m_Panes: + - {fileID: 11} + - {fileID: 12} + m_Selected: 1 + m_LastSelected: 0 +--- !u!114 &11 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12014, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 230, y: 250} + m_MaxSize: {x: 10000, y: 10000} + m_TitleContent: + m_Text: Project + m_Image: {fileID: -7501376956915960154, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 647 + width: 1472 + height: 354 + m_ViewDataDictionary: {fileID: 0} + m_SearchFilter: + m_NameFilter: + m_ClassNames: [] + m_AssetLabels: [] + m_AssetBundleNames: [] + m_VersionControlStates: [] + m_SoftLockControlStates: [] + m_ReferencingInstanceIDs: + m_SceneHandles: + m_ShowAllHits: 0 + m_SkipHidden: 0 + m_SearchArea: 1 + m_Folders: + - Assets/Scripts + m_ViewMode: 1 + m_StartGridSize: 64 + m_LastFolders: + - Assets/Scripts + m_LastFoldersGridSize: -1 + m_LastProjectPath: E:\GregoryCampbell\Projects\Unity\Speed Platformer Prototype + m_LockTracker: + m_IsLocked: 0 + m_FolderTreeState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: be330000 + m_LastClickedID: 13246 + m_ExpandedIDs: 00000000a432000000ca9a3b + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_AssetTreeState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: + m_LastClickedID: 0 + m_ExpandedIDs: 00000000a432000000ca9a3b + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_ListAreaState: + m_SelectedInstanceIDs: 8a350000 + m_LastClickedInstanceID: 13706 + m_HadKeyboardFocusLastEvent: 0 + m_ExpandedInstanceIDs: c6230000 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 10} + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_NewAssetIndexInList: -1 + m_ScrollPosition: {x: 0, y: 0} + m_GridSize: 64 + m_SkipHiddenPackages: 0 + m_DirectoriesAreaWidth: 115 +--- !u!114 &12 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12003, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 100, y: 100} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Console + m_Image: {fileID: 111653112392082826, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 647 + width: 1472 + height: 354 + m_ViewDataDictionary: {fileID: 0} +--- !u!114 &13 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 1472 + y: 0 + width: 448 + height: 947 + m_MinSize: {x: 277, y: 72} + m_MaxSize: {x: 4002, y: 4022} + m_ActualView: {fileID: 14} + m_Panes: + - {fileID: 14} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &14 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12019, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 275, y: 50} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Inspector + m_Image: {fileID: -6905738622615590433, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 1472 + y: 73 + width: 446 + height: 928 + m_ViewDataDictionary: {fileID: 0} + m_OpenAddComponentMenu: 0 + m_ObjectsLockedBeforeSerialization: [] + m_InstanceIDsLockedBeforeSerialization: + m_LockTracker: + m_IsLocked: 0 + m_PreviewResizer: + m_CachedPref: 160 + m_ControlHash: -371814159 + m_PrefName: Preview_InspectorPreview + m_PreviewWindow: {fileID: 0} diff --git a/Library/EditorUserBuildSettings.asset b/Library/EditorUserBuildSettings.asset new file mode 100644 index 0000000000000000000000000000000000000000..01dfbdd72fe2175b7be37a1807a2995b20a71654 GIT binary patch literal 5932 zcmbW5O>87b6@aVP_AXgMNS3f0SRf$@yO5t{cM}2$e;&`+Ym>D-aeM6~B-xa^%QGGK zbPd%#_D=X~MG->EB^NGm;ebdkAcS(@h=dSPF65FMS}BThu+v}z?c=9fkS_vzf%In( z=4B6$OUW!CxW%2?zfT@mn1HPsBgz;D0B6tAoEs{5A*wAMq0oegcAv@%fa4 zpCt~tY?UH@j}ia0Ma%eZ5j|A5E0$^Tublw)N|-TxO+ zoEwI9egEEFBHcoM=aF*%-hxa!KbzUaXNo+pH~a!ALhsV6rZmk%*!72_}mA`9-o~b_aiUWp>5{}p653A z*k$wx2P?`StmtAB$A|nD;^!P3) z_`?qVOX6R1@HdD*;^1!*hxeRSit+!G_%|$Cj{gSnM;-jcl!@81@YjgXI{06Sw;cRB@i_GMpO`lB>p1us;`0tZ zPkh0_uM)rH;4c$jL_S+~!uaC*{TIODk1dr*w+j9T;@@-dzY%}@0FLL&yTI}MgT0Kq zeNyV@%Q6sec7kDa_W81cyu_MU?>DOrZqB#=l7D@V%u54x|6uD-|7#8V_W9;Fxbc58 zT*zYi%9Of)yhj~2{|)4%i;w#Gy4m2y{~7ZCBr4@tnNs)v6o?P=|1@&a#Yf%$ z_Z!^g*DUylC1B5>(kxb{V18kK2pZqBD9#PTx<0<=P&SLilzM(#1@U3yd%nSq|Ch)= zN3%Irrqum!f%q{00dmsCM?F4agPZvLn&KlWx<=pdw}@{$_`itv4&ZqInSmb;n16lb zdD*Exzo^0O{Rh7ztb+5a-hXx)`u6=NZgBhlGXQSK*S`NG$k7Is`u#_O+~(8l4wyUM ze{lZzJH(#hG6jz_Umu@Vyme(XPsG%tm@7}ka+E~dQ5h~{q$9RQy&5Xq zlArnY_QeGr$6GwuDIImhZWIV#20J2ag`pBDE()o%M@oq#>xf}2#{+1YNG*lXrLf+X zgCT0c>d|;T!a+!b92A@7NG*@@C%bp#6YVGm6e3JWlY zbSa^J0ASpKpkWr7K7VZ(M?sXWjN-W67r_p?EQFnCHwwkv_-UbJ1Gbdn<2gA>!n9-w z--^Ye;339!S%x?s9S=WH(J)I_lXz?#NR_qHOH%e?K?@CGe*vNoxUB>Pz?bm|_an{& zhVJi0SUx5(qxjwikE3uBlVTP_2-XmW zBrQAh8fzn69#%c9i7-;oe^bE*hNN4RX|@az!i<>=Ux%YL9L_=HVvJ9b#1w{uHtnY0 za)_^NcB|XDumuW0{LbSQ`yhkOd62kzKqa>7j zumrfNyRgnYE;sc75D(;p4=@yXXssr~&maK?u;D0KFY{3n^xOSWva`k$o#e$tNy7|b zS!8`#Jr^w6QE;Y%6WF`iwp4@3`Ck{{xxmum?Lcps>Wk(dm6y(8O}HoN7ZmDZyZR5i z!X7^Ha|AvgsT77lxzhYlQ`i^(flFDZb@3mLJ%yVWkE65=XMF;%I6ZbawNnB71B7)K AEC2ui literal 0 HcmV?d00001 diff --git a/Library/EditorUserSettings.asset b/Library/EditorUserSettings.asset new file mode 100644 index 0000000..a66c287 --- /dev/null +++ b/Library/EditorUserSettings.asset @@ -0,0 +1,21 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!162 &1 +EditorUserSettings: + m_ObjectHideFlags: 0 + serializedVersion: 4 + m_ConfigSettings: + vcSharedLogLevel: + value: 0d5e400f0650 + flags: 0 + m_VCAutomaticAdd: 1 + m_VCDebugCom: 0 + m_VCDebugCmd: 0 + m_VCDebugOut: 0 + m_SemanticMergeMode: 2 + m_VCShowFailedCheckout: 1 + m_VCOverwriteFailedCheckoutAssets: 1 + m_VCAllowAsyncUpdate: 0 + m_AssetPipelineMode: 0 + m_CacheServerMode: 0 + m_CacheServers: [] diff --git a/Library/InspectorExpandedItems.asset b/Library/InspectorExpandedItems.asset new file mode 100644 index 0000000000000000000000000000000000000000..ec2dda66f3c27a2f97d8272620bb42b96d0d1f79 GIT binary patch literal 4156 zcmeHKJxc>Y5S`5>CVqc{f{m46VK7lp!6ITr10qVWKF;LSh)IsSD^l*C(ZKz)2k1HZ|@BcDNj4y1(BCOG4QkzL-R zuL-~vIBnq9vn0=Wi`w}C9xvd}`R;25P`>~|!f6wfOZ7j=u&4}3#C&72|0#u~d9E$d zKl+;<T8$NQ=iI+WV9?Xe_2fAZu6L9NPB zz2UdKQ0)_SuKcd&`eDlrbbrYv@h3566fg=H1&jhl0i%FXz$jo8FbWt2{<8uYwlU{i c4jzFRLvHBY2Z+_M$SYzD#%=q!$MX^W0i{!nvH$=8 literal 0 HcmV?d00001 diff --git a/Library/LastSceneManagerSetup.txt b/Library/LastSceneManagerSetup.txt new file mode 100644 index 0000000..8e6733b --- /dev/null +++ b/Library/LastSceneManagerSetup.txt @@ -0,0 +1,5 @@ +sceneSetups: +- path: Assets/Scenes/Test Scene.unity + isLoaded: 1 + isActive: 1 + isSubScene: 0 diff --git a/Library/LibraryFormatVersion.txt b/Library/LibraryFormatVersion.txt new file mode 100644 index 0000000..6185f09 --- /dev/null +++ b/Library/LibraryFormatVersion.txt @@ -0,0 +1,2 @@ +unityRebuildLibraryVersion: 11 +unityForwardCompatibleVersion: 40 diff --git a/Library/MonoManager.asset b/Library/MonoManager.asset new file mode 100644 index 0000000000000000000000000000000000000000..968cb216e9dc9ede06c6b805e61ede1f3c969f22 GIT binary patch literal 4100 zcmZQzU|7n)Ai%=Fz#syoffNISk%6J5o{^q$njyo#|Ns9pG6Ka)KobA|R|@`FQ6>?2 zZMh;x-!-wHCz*hvJV4A0k_G~E28ITZS?GX~fstVuGeg5BMuCq4v4S~@R7!85Z5Eu=C(GVC7fzc2c4S~@R7!85Z5Eu;s;z9rb D6LJ{x literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/.npmignore b/Library/PackageCache/com.unity.collab-proxy@1.2.16/.npmignore new file mode 100644 index 0000000..1586aea --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/.npmignore @@ -0,0 +1,6 @@ + +automation/** +utr_output/** +.Editor/** +.yamato/** +*.zip* \ No newline at end of file diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/CHANGELOG.md b/Library/PackageCache/com.unity.collab-proxy@1.2.16/CHANGELOG.md new file mode 100644 index 0000000..3c6c85d --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/CHANGELOG.md @@ -0,0 +1,31 @@ +# Changelog +All notable changes to this package will be documented in this file. + +The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) +and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). + +## [1.2.16] - 2019-02-11 +Update stylesheet to pass USS validation + +## [1.2.15] - 2018-11-16 +Added support for non-experimental UIElements. + +## [1.2.11] - 2018-09-04 +Made some performance improvements to reduce impact on ReloadAssemblies. + +## [1.2.9] - 2018-08-13 +Test issues for the Collab History Window are now fixed. + +## [1.2.7] - 2018-08-07 +Toolbar drop-down will no longer show up when package is uninstalled. + +## [1.2.6] - 2018-06-15 +Fixed an issue where Collab's History window wouldn't load properly. + +## [1.2.5] - 2018-05-21 +This is the first release of *Unity Package CollabProxy*. + +### Added +- Collab history and toolbar windows +- Collab view and presenter classes +- Collab Editor tests for view and presenter diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/CHANGELOG.md.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/CHANGELOG.md.meta new file mode 100644 index 0000000..38274a6 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/CHANGELOG.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 782c49e6e68074dc7ba12c95537825ce +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/DEPENDENCIES.md b/Library/PackageCache/com.unity.collab-proxy@1.2.16/DEPENDENCIES.md new file mode 100644 index 0000000..57808d5 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/DEPENDENCIES.md @@ -0,0 +1,9 @@ + + + + Unity.CollabProxy.Dependencies + 1.1.0-experimental + Rohit Garg + Dependencies for the CollabProxy package + + diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/DEPENDENCIES.md.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/DEPENDENCIES.md.meta new file mode 100644 index 0000000..24e45c2 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/DEPENDENCIES.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 470530e667ad4475786b28fa3187ce95 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Documentation~/collab-proxy.md b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Documentation~/collab-proxy.md new file mode 100644 index 0000000..c1800d6 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Documentation~/collab-proxy.md @@ -0,0 +1,5 @@ +# About Unity Collaborate + +Collaborate is a simple way for teams to save, share, and sync their Unity project. + +Please refer to the online documentation [here.](https://docs.unity3d.com/Manual/UnityCollaborate.html) \ No newline at end of file diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor.meta new file mode 100644 index 0000000..b54ca87 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d31e5d760880a4e52a3a75322481d0d2 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/AssemblyInfo.cs b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/AssemblyInfo.cs new file mode 100644 index 0000000..d7266b6 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/AssemblyInfo.cs @@ -0,0 +1,4 @@ +using System.Runtime.CompilerServices; +using UnityEngine; + +[assembly: InternalsVisibleTo("Unity.CollabProxy.EditorTests")] diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/AssemblyInfo.cs.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/AssemblyInfo.cs.meta new file mode 100644 index 0000000..e384b31 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/AssemblyInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d4ef26aa386b44923b61c9c4b505a67c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab.meta new file mode 100644 index 0000000..694fc4e --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c18cb9388313e4287ad5895ee735c47d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Bootstrap.cs b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Bootstrap.cs new file mode 100644 index 0000000..029ce1c --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Bootstrap.cs @@ -0,0 +1,24 @@ +using UnityEditor; +using UnityEditor.Collaboration; +using UnityEngine; + +namespace CollabProxy.UI +{ + [InitializeOnLoad] + public class Bootstrap + { + private const float kCollabToolbarButtonWidth = 78.0f; + + static Bootstrap() + { + Collab.ShowHistoryWindow = CollabHistoryWindow.ShowHistoryWindow; + Collab.ShowToolbarAtPosition = CollabToolbarWindow.ShowCenteredAtPosition; + Collab.IsToolbarVisible = CollabToolbarWindow.IsVisible; + Collab.CloseToolbar = CollabToolbarWindow.CloseToolbar; + Toolbar.AddSubToolbar(new CollabToolbarButton + { + Width = kCollabToolbarButtonWidth + }); + } + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Bootstrap.cs.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Bootstrap.cs.meta new file mode 100644 index 0000000..641d54b --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Bootstrap.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8aa8171e088f94069bbd1978a053f7dd +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabAnalytics.cs b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabAnalytics.cs new file mode 100644 index 0000000..c7f90aa --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabAnalytics.cs @@ -0,0 +1,21 @@ +using System; + +namespace UnityEditor.Collaboration +{ + internal static class CollabAnalytics + { + [Serializable] + private struct CollabUserActionAnalyticsEvent + { + public string category; + public string action; + } + + public static void SendUserAction(string category, string action) + { + EditorAnalytics.SendCollabUserAction(new CollabUserActionAnalyticsEvent() { category = category, action = action }); + } + + public static readonly string historyCategoryString = "History"; + }; +} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabAnalytics.cs.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabAnalytics.cs.meta new file mode 100644 index 0000000..2f46e9b --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabAnalytics.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f944311c8fff2479fa3ba741f6039fc8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabHistoryWindow.cs b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabHistoryWindow.cs new file mode 100644 index 0000000..b855bce --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabHistoryWindow.cs @@ -0,0 +1,330 @@ +using System; +using System.Linq; +using System.Collections.Generic; +using UnityEditor.Collaboration; + +#if UNITY_2019_1_OR_NEWER +using UnityEditor.UIElements; +using UnityEngine.UIElements; +#else +using UnityEditor.Experimental.UIElements; +using UnityEngine.Experimental.UIElements; +using UnityEngine.Experimental.UIElements.StyleEnums; +#endif + +using UnityEngine; +using UnityEditor.Connect; + +namespace UnityEditor +{ + internal class CollabHistoryWindow : EditorWindow, ICollabHistoryWindow + { +#if UNITY_2019_1_OR_NEWER + private const string ResourcesPath = "Packages/com.unity.collab-proxy/Editor/Resources/Styles/"; +#else + private const string ResourcesPath = "StyleSheets/"; +#endif + + + const string kWindowTitle = "Collab History"; + const string kServiceUrl = "developer.cloud.unity3d.com"; + + [MenuItem("Window/Asset Management/Collab History", false, 1)] + public static void ShowHistoryWindow() + { + EditorWindow.GetWindow(kWindowTitle); + } + + [MenuItem("Window/Asset Management/Collab History", true)] + public static bool ValidateShowHistoryWindow() + { + return Collab.instance.IsCollabEnabledForCurrentProject(); + } + + CollabHistoryPresenter m_Presenter; + Dictionary m_Views; + List m_HistoryItems = new List(); + HistoryState m_State; + VisualElement m_Container; + PagedListView m_Pager; + ScrollView m_HistoryView; + int m_ItemsPerPage = 5; + string m_InProgressRev; + bool m_RevisionActionsEnabled; + + public CollabHistoryWindow() + { + minSize = new Vector2(275, 50); + } + + public void OnEnable() + { + SetupGUI(); + name = "CollabHistory"; + + if (m_Presenter == null) + { + m_Presenter = new CollabHistoryPresenter(this, new CollabHistoryItemFactory(), new RevisionsService(Collab.instance, UnityConnect.instance)); + } + m_Presenter.OnWindowEnabled(); + } + + public void OnDisable() + { + m_Presenter.OnWindowDisabled(); + } + + public bool revisionActionsEnabled + { + get { return m_RevisionActionsEnabled; } + set + { + if (m_RevisionActionsEnabled == value) + return; + + m_RevisionActionsEnabled = value; + foreach (var historyItem in m_HistoryItems) + { + historyItem.RevisionActionsEnabled = value; + } + } + } + + private void AddStyleSheetPath(VisualElement root, string path) + { +#if UNITY_2019_1_OR_NEWER + root.styleSheets.Add(EditorGUIUtility.Load(path) as StyleSheet); +#else + root.AddStyleSheetPath(path); +#endif + } + + + public void SetupGUI() + { +#if UNITY_2019_1_OR_NEWER + var root = this.rootVisualElement; +#else + var root = this.GetRootVisualContainer(); +#endif + AddStyleSheetPath(root, ResourcesPath + "CollabHistoryCommon.uss"); + if (EditorGUIUtility.isProSkin) + { + AddStyleSheetPath(root, ResourcesPath + "CollabHistoryDark.uss"); + } + else + { + AddStyleSheetPath(root, ResourcesPath + "CollabHistoryLight.uss"); + } + + m_Container = new VisualElement(); + m_Container.StretchToParentSize(); + root.Add(m_Container); + + m_Pager = new PagedListView() + { + name = "PagedElement", + pageSize = m_ItemsPerPage + }; + + var errorView = new StatusView() + { + message = "An Error Occurred", + icon = EditorGUIUtility.LoadIconRequired("Collab.Warning") as Texture, + }; + + var noInternetView = new StatusView() + { + message = "No Internet Connection", + icon = EditorGUIUtility.LoadIconRequired("Collab.NoInternet") as Texture, + }; + + var maintenanceView = new StatusView() + { + message = "Maintenance", + }; + + var loginView = new StatusView() + { + message = "Sign in to access Collaborate", + buttonText = "Sign in...", + callback = SignInClick, + }; + + var noSeatView = new StatusView() + { + message = "Ask your project owner for access to Unity Teams", + buttonText = "Learn More", + callback = NoSeatClick, + }; + + var waitingView = new StatusView() + { + message = "Updating...", + }; + + m_HistoryView = new ScrollView() { name = "HistoryContainer", showHorizontal = false}; + m_HistoryView.contentContainer.StretchToParentWidth(); + m_HistoryView.Add(m_Pager); + + m_Views = new Dictionary() + { + {HistoryState.Error, errorView}, + {HistoryState.Offline, noInternetView}, + {HistoryState.Maintenance, maintenanceView}, + {HistoryState.LoggedOut, loginView}, + {HistoryState.NoSeat, noSeatView}, + {HistoryState.Waiting, waitingView}, + {HistoryState.Ready, m_HistoryView} + }; + } + + public void UpdateState(HistoryState state, bool force) + { + if (state == m_State && !force) + return; + + m_State = state; + switch (state) + { + case HistoryState.Ready: + UpdateHistoryView(m_Pager); + break; + case HistoryState.Disabled: + Close(); + return; + } + + m_Container.Clear(); + m_Container.Add(m_Views[m_State]); + } + + public void UpdateRevisions(IEnumerable datas, string tip, int totalRevisions, int currentPage) + { + var elements = new List(); + var isFullDateObtained = false; // Has everything from this date been obtained? + m_HistoryItems.Clear(); + + if (datas != null) + { + DateTime currentDate = DateTime.MinValue; + foreach (var data in datas) + { + if (data.timeStamp.Date != currentDate.Date) + { + elements.Add(new CollabHistoryRevisionLine(data.timeStamp, isFullDateObtained)); + currentDate = data.timeStamp; + } + + var item = new CollabHistoryItem(data); + m_HistoryItems.Add(item); + + var container = new VisualElement(); + container.style.flexDirection = FlexDirection.Row; + if (data.current) + { + isFullDateObtained = true; + container.AddToClassList("currentRevision"); + container.AddToClassList("obtainedRevision"); + } + else if (data.obtained) + { + container.AddToClassList("obtainedRevision"); + } + else + { + container.AddToClassList("absentRevision"); + } + // If we use the index as-is, the latest commit will become #1, but we want it to be last + container.Add(new CollabHistoryRevisionLine(data.index)); + container.Add(item); + elements.Add(container); + } + } + + m_HistoryView.scrollOffset = new Vector2(0, 0); + m_Pager.totalItems = totalRevisions; + m_Pager.curPage = currentPage; + m_Pager.items = elements; + } + + public string inProgressRevision + { + get { return m_InProgressRev; } + set + { + m_InProgressRev = value; + foreach (var historyItem in m_HistoryItems) + { + historyItem.SetInProgressStatus(value); + } + } + } + + public int itemsPerPage + { + set + { + if (m_ItemsPerPage == value) + return; + m_Pager.pageSize = m_ItemsPerPage; + } + } + + public PageChangeAction OnPageChangeAction + { + set { m_Pager.OnPageChanged = value; } + } + + public RevisionAction OnGoBackAction + { + set { CollabHistoryItem.s_OnGoBack = value; } + } + + public RevisionAction OnUpdateAction + { + set { CollabHistoryItem.s_OnUpdate = value; } + } + + public RevisionAction OnRestoreAction + { + set { CollabHistoryItem.s_OnRestore = value; } + } + + public ShowBuildAction OnShowBuildAction + { + set { CollabHistoryItem.s_OnShowBuild = value; } + } + + public Action OnShowServicesAction + { + set { CollabHistoryItem.s_OnShowServices = value; } + } + + void UpdateHistoryView(VisualElement history) + { + } + + void NoSeatClick() + { + var connection = UnityConnect.instance; + var env = connection.GetEnvironment(); + // Map environment to url - prod is special + if (env == "production") + env = ""; + else + env += "-"; + + var url = "https://" + env + kServiceUrl + + "/orgs/" + connection.GetOrganizationId() + + "/projects/" + connection.GetProjectName() + + "/unity-teams/"; + Application.OpenURL(url); + } + + void SignInClick() + { + UnityConnect.instance.ShowLogin(); + } + } +} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabHistoryWindow.cs.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabHistoryWindow.cs.meta new file mode 100644 index 0000000..74358d4 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabHistoryWindow.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fed9dda667cab45d398d06402bba03f4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabToolbarButton.cs b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabToolbarButton.cs new file mode 100644 index 0000000..eebe4ac --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabToolbarButton.cs @@ -0,0 +1,297 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using UnityEditor.Collaboration; +using UnityEditor.Connect; +using UnityEditor.Web; +using UnityEngine; + +namespace UnityEditor +{ + internal class CollabToolbarButton : SubToolbar, IDisposable + { + // Must match s_CollabIcon array + enum CollabToolbarState + { + NeedToEnableCollab, + UpToDate, + Conflict, + OperationError, + ServerHasChanges, + FilesToPush, + InProgress, + Disabled, + Offline + } + + private class CollabToolbarContent + { + readonly string m_iconName; + readonly string m_toolTip; + readonly CollabToolbarState m_state; + + static Dictionary m_CollabIcons; + + public CollabToolbarState RegisteredForState + { + get { return m_state; } + } + + public GUIContent GuiContent + { + get + { + if (m_CollabIcons == null) + { + m_CollabIcons = new Dictionary(); + } + + if (!m_CollabIcons.ContainsKey(this)) + { + m_CollabIcons.Add(this, EditorGUIUtility.TrTextContentWithIcon("Collab", m_toolTip, m_iconName)); + } + + return m_CollabIcons[this]; + } + } + + public CollabToolbarContent(CollabToolbarState state, string iconName, string toolTip) + { + m_state = state; + m_iconName = iconName; + m_toolTip = toolTip; + } + } + + CollabToolbarContent[] m_toolbarContents; + CollabToolbarState m_CollabToolbarState = CollabToolbarState.UpToDate; + const float kCollabButtonWidth = 78.0f; + ButtonWithAnimatedIconRotation m_CollabButton; + string m_DynamicTooltip; + static bool m_ShowCollabTooltip = false; + + private GUIContent currentCollabContent + { + get + { + CollabToolbarContent toolbarContent = + m_toolbarContents.FirstOrDefault(c => c.RegisteredForState.Equals(m_CollabToolbarState)); + GUIContent content = new GUIContent(toolbarContent == null? m_toolbarContents.First().GuiContent : toolbarContent.GuiContent); + if (!m_ShowCollabTooltip) + { + content.tooltip = null; + } + else if (m_DynamicTooltip != "") + { + content.tooltip = m_DynamicTooltip; + } + + if (Collab.instance.AreTestsRunning()) + { + content.text = "CTF"; + } + + return content; + } + } + + public CollabToolbarButton() + { + m_toolbarContents = new[] + { + new CollabToolbarContent(CollabToolbarState.NeedToEnableCollab, "CollabNew", " You need to enable collab."), + new CollabToolbarContent(CollabToolbarState.UpToDate, "Collab", " You are up to date."), + new CollabToolbarContent(CollabToolbarState.Conflict, "CollabConflict", " Please fix your conflicts prior to publishing."), + new CollabToolbarContent(CollabToolbarState.OperationError, "CollabError", " Last operation failed. Please retry later."), + new CollabToolbarContent(CollabToolbarState.ServerHasChanges, "CollabPull", " Please update, there are server changes."), + new CollabToolbarContent(CollabToolbarState.FilesToPush, "CollabPush", " You have files to publish."), + new CollabToolbarContent(CollabToolbarState.InProgress, "CollabProgress", " Operation in progress."), + new CollabToolbarContent(CollabToolbarState.Disabled, "CollabNew", " Collab is disabled."), + new CollabToolbarContent(CollabToolbarState.Offline, "CollabNew", " Please check your network connection.") + }; + + Collab.instance.StateChanged += OnCollabStateChanged; + UnityConnect.instance.StateChanged += OnUnityConnectStateChanged; + UnityConnect.instance.UserStateChanged += OnUnityConnectUserStateChanged; + } + + void OnUnityConnectUserStateChanged(UserInfo state) + { + UpdateCollabToolbarState(); + } + + void OnUnityConnectStateChanged(ConnectInfo state) + { + UpdateCollabToolbarState(); + } + + public override void OnGUI(Rect rect) + { + DoCollabDropDown(rect); + } + + Rect GUIToScreenRect(Rect guiRect) + { + Vector2 screenPoint = GUIUtility.GUIToScreenPoint(new Vector2(guiRect.x, guiRect.y)); + guiRect.x = screenPoint.x; + guiRect.y = screenPoint.y; + return guiRect; + } + + void ShowPopup(Rect rect) + { + // window should be centered on the button + ReserveRight(kCollabButtonWidth / 2, ref rect); + ReserveBottom(5, ref rect); + // calculate screen rect before saving assets since it might open the AssetSaveDialog window + var screenRect = GUIToScreenRect(rect); + // save all the assets + AssetDatabase.SaveAssets(); + if (Collab.ShowToolbarAtPosition != null && Collab.ShowToolbarAtPosition(screenRect)) + { + GUIUtility.ExitGUI(); + } + } + + void DoCollabDropDown(Rect rect) + { + UpdateCollabToolbarState(); + GUIStyle collabButtonStyle = "OffsetDropDown"; + bool showPopup = Toolbar.requestShowCollabToolbar; + Toolbar.requestShowCollabToolbar = false; + + bool enable = !EditorApplication.isPlaying; + + using (new EditorGUI.DisabledScope(!enable)) + { + bool animate = m_CollabToolbarState == CollabToolbarState.InProgress; + + EditorGUIUtility.SetIconSize(new Vector2(12, 12)); + if (GetCollabButton().OnGUI(rect, currentCollabContent, animate, collabButtonStyle)) + { + showPopup = true; + } + EditorGUIUtility.SetIconSize(Vector2.zero); + } + + if (m_CollabToolbarState == CollabToolbarState.Disabled) + return; + + if (showPopup) + { + ShowPopup(rect); + } + } + + public void OnCollabStateChanged(CollabInfo info) + { + UpdateCollabToolbarState(); + } + + public void UpdateCollabToolbarState() + { + var currentCollabState = CollabToolbarState.UpToDate; + bool networkAvailable = UnityConnect.instance.connectInfo.online && UnityConnect.instance.connectInfo.loggedIn; + m_DynamicTooltip = ""; + + if (UnityConnect.instance.isDisableCollabWindow) + { + currentCollabState = CollabToolbarState.Disabled; + } + else if (networkAvailable) + { + Collab collab = Collab.instance; + CollabInfo currentInfo = collab.collabInfo; + UnityErrorInfo errInfo; + bool error = false; + if (collab.GetError((UnityConnect.UnityErrorFilter.ByContext | UnityConnect.UnityErrorFilter.ByChild), out errInfo)) + { + error = (errInfo.priority <= (int)UnityConnect.UnityErrorPriority.Error); + m_DynamicTooltip = errInfo.shortMsg; + } + + if (!currentInfo.ready) + { + currentCollabState = CollabToolbarState.InProgress; + } + else if (error) + { + currentCollabState = CollabToolbarState.OperationError; + } + else if (currentInfo.inProgress) + { + currentCollabState = CollabToolbarState.InProgress; + } + else + { + bool collabEnable = Collab.instance.IsCollabEnabledForCurrentProject(); + + if (UnityConnect.instance.projectInfo.projectBound == false || !collabEnable) + { + currentCollabState = CollabToolbarState.NeedToEnableCollab; + } + else if (currentInfo.update) + { + currentCollabState = CollabToolbarState.ServerHasChanges; + } + else if (currentInfo.conflict) + { + currentCollabState = CollabToolbarState.Conflict; + } + else if (currentInfo.publish) + { + currentCollabState = CollabToolbarState.FilesToPush; + } + } + } + else + { + currentCollabState = CollabToolbarState.Offline; + } + + if (Collab.IsToolbarVisible != null) + { + if (currentCollabState != m_CollabToolbarState || + Collab.IsToolbarVisible() == m_ShowCollabTooltip) + { + m_CollabToolbarState = currentCollabState; + m_ShowCollabTooltip = !Collab.IsToolbarVisible(); + Toolbar.RepaintToolbar(); + } + } + } + + void ReserveRight(float width, ref Rect pos) + { + pos.x += width; + } + + void ReserveBottom(float height, ref Rect pos) + { + pos.y += height; + } + + ButtonWithAnimatedIconRotation GetCollabButton() + { + if (m_CollabButton == null) + { + const int repaintsPerSecond = 20; + const float animSpeed = 500f; + const bool mouseDownButton = true; + m_CollabButton = new ButtonWithAnimatedIconRotation(() => (float)EditorApplication.timeSinceStartup * animSpeed, Toolbar.RepaintToolbar, repaintsPerSecond, mouseDownButton); + } + + return m_CollabButton; + } + + public void Dispose() + { + Collab.instance.StateChanged -= OnCollabStateChanged; + UnityConnect.instance.StateChanged -= OnUnityConnectStateChanged; + UnityConnect.instance.UserStateChanged -= OnUnityConnectUserStateChanged; + + if (m_CollabButton != null) + m_CollabButton.Clear(); + } + } +} // namespace \ No newline at end of file diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabToolbarButton.cs.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabToolbarButton.cs.meta new file mode 100644 index 0000000..949d8db --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabToolbarButton.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 882f1a4147a284f028899b9c018e63eb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabToolbarWindow.cs b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabToolbarWindow.cs new file mode 100644 index 0000000..2793875 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabToolbarWindow.cs @@ -0,0 +1,137 @@ +using UnityEngine; +using UnityEditor.Collaboration; +using UnityEditor.Web; +using UnityEditor.Connect; + +namespace UnityEditor +{ + [InitializeOnLoad] + internal class WebViewStatic : ScriptableSingleton + { + [SerializeField] + WebView m_WebView; + + static public WebView GetWebView() + { + return instance.m_WebView; + } + + static public void SetWebView(WebView webView) + { + instance.m_WebView = webView; + } + } + + [InitializeOnLoad] + internal class CollabToolbarWindow : WebViewEditorStaticWindow, IHasCustomMenu + { + internal override WebView webView + { + get {return WebViewStatic.GetWebView(); } + set {WebViewStatic.SetWebView(value); } + } + + private const string kWindowName = "Unity Collab Toolbar"; + + private static long s_LastClosedTime; + private static CollabToolbarWindow s_CollabToolbarWindow; + + public static bool s_ToolbarIsVisible = false; + + const int kWindowWidth = 320; + const int kWindowHeight = 350; + + public static void CloseToolbar() + { + foreach (CollabToolbarWindow window in Resources.FindObjectsOfTypeAll()) + window.Close(); + } + + [MenuItem("Window/Asset Management/Collab Toolbar", false /*IsValidateFunction*/, 2, true /* IsInternalMenu */)] + public static CollabToolbarWindow ShowToolbarWindow() + { + //Create a new window if it does not exist + if (s_CollabToolbarWindow == null) + { + s_CollabToolbarWindow = GetWindow(false, kWindowName) as CollabToolbarWindow; + } + + return s_CollabToolbarWindow; + } + + [MenuItem("Window/Asset Management/Collab Toolbar", true /*IsValidateFunction*/)] + public static bool ValidateShowToolbarWindow() + { + return true; + } + + public static bool IsVisible() + { + return s_ToolbarIsVisible; + } + + public static bool ShowCenteredAtPosition(Rect buttonRect) + { + buttonRect.x -= kWindowWidth / 2; + // We could not use realtimeSinceStartUp since it is set to 0 when entering/exitting playmode, we assume an increasing time when comparing time. + long nowMilliSeconds = System.DateTime.Now.Ticks / System.TimeSpan.TicksPerMillisecond; + bool justClosed = nowMilliSeconds < s_LastClosedTime + 50; + if (!justClosed) + { + // Method may have been triggered programmatically, without a user event to consume. + if (Event.current.type != EventType.Layout) + { + Event.current.Use(); + } + if (s_CollabToolbarWindow == null) + s_CollabToolbarWindow = CreateInstance() as CollabToolbarWindow; + var windowSize = new Vector2(kWindowWidth, kWindowHeight); + s_CollabToolbarWindow.initialOpenUrl = "file:///" + EditorApplication.userJavascriptPackagesPath + "unityeditor-collab-toolbar/dist/index.html"; + s_CollabToolbarWindow.Init(); + s_CollabToolbarWindow.ShowAsDropDown(buttonRect, windowSize); + s_CollabToolbarWindow.OnFocus(); + return true; + } + return false; + } + + // Receives HTML title + public void OnReceiveTitle(string title) + { + titleContent.text = title; + } + + public new void OnInitScripting() + { + base.OnInitScripting(); + } + + public override void OnEnable() + { + minSize = new Vector2(kWindowWidth, kWindowHeight); + maxSize = new Vector2(kWindowWidth, kWindowHeight); + initialOpenUrl = "file:///" + EditorApplication.userJavascriptPackagesPath + "unityeditor-collab-toolbar/dist/index.html"; + base.OnEnable(); + s_ToolbarIsVisible = true; + } + + internal new void OnDisable() + { + s_LastClosedTime = System.DateTime.Now.Ticks / System.TimeSpan.TicksPerMillisecond; + if (s_CollabToolbarWindow) + { + s_ToolbarIsVisible = false; + NotifyVisibility(s_ToolbarIsVisible); + } + s_CollabToolbarWindow = null; + + base.OnDisable(); + } + + public new void OnDestroy() + { + OnLostFocus(); + base.OnDestroy(); + } + } +} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabToolbarWindow.cs.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabToolbarWindow.cs.meta new file mode 100644 index 0000000..b08bf2a --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/CollabToolbarWindow.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6f516f1ec21a54a59a92bf99db2d9535 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Presenters.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Presenters.meta new file mode 100644 index 0000000..9133153 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Presenters.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d437fe60bb34f45728664a5d930c1635 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Presenters/CollabHistoryPresenter.cs b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Presenters/CollabHistoryPresenter.cs new file mode 100644 index 0000000..91d500b --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Presenters/CollabHistoryPresenter.cs @@ -0,0 +1,228 @@ +using System.Collections.Generic; +using UnityEditor.Connect; +using UnityEditor.Web; + +namespace UnityEditor.Collaboration +{ + internal class CollabHistoryPresenter + { + public const int ItemsPerPage = 5; + ICollabHistoryWindow m_Window; + ICollabHistoryItemFactory m_Factory; + IRevisionsService m_Service; + ConnectInfo m_ConnectState; + CollabInfo m_CollabState; + bool m_IsCollabError; + int m_TotalRevisions; + int m_CurrentPage; + int m_RequestedPage; + bool m_FetchInProgress; + + BuildAccess m_BuildAccess; + string m_ProgressRevision; + public bool BuildServiceEnabled {get; set; } + + public CollabHistoryPresenter(ICollabHistoryWindow window, ICollabHistoryItemFactory factory, IRevisionsService service) + { + m_Window = window; + m_Factory = factory; + m_Service = service; + m_CurrentPage = 0; + m_BuildAccess = new BuildAccess(); + m_Service.FetchRevisionsCallback += OnFetchRevisions; + } + + public void OnWindowEnabled() + { + UnityConnect.instance.StateChanged += OnConnectStateChanged; + Collab.instance.StateChanged += OnCollabStateChanged; + Collab.instance.RevisionUpdated += OnCollabRevisionUpdated; + Collab.instance.JobsCompleted += OnCollabJobsCompleted; + Collab.instance.ErrorOccurred += OnCollabError; + Collab.instance.ErrorCleared += OnCollabErrorCleared; + EditorApplication.playModeStateChanged += OnPlayModeStateChanged; + m_ConnectState = UnityConnect.instance.GetConnectInfo(); + m_CollabState = Collab.instance.GetCollabInfo(); + + m_Window.revisionActionsEnabled = !EditorApplication.isPlayingOrWillChangePlaymode; + + // Setup window callbacks + m_Window.OnPageChangeAction = OnUpdatePage; + m_Window.OnUpdateAction = OnUpdate; + m_Window.OnRestoreAction = OnRestore; + m_Window.OnGoBackAction = OnGoBack; + m_Window.OnShowBuildAction = ShowBuildForCommit; + m_Window.OnShowServicesAction = ShowServicePage; + m_Window.itemsPerPage = ItemsPerPage; + + // Initialize data + UpdateBuildServiceStatus(); + var state = RecalculateState(); + // Only try to load the page if we're ready + if (state == HistoryState.Ready) + OnUpdatePage(m_CurrentPage); + m_Window.UpdateState(state, true); + } + + public void OnWindowDisabled() + { + UnityConnect.instance.StateChanged -= OnConnectStateChanged; + Collab.instance.StateChanged -= OnCollabStateChanged; + Collab.instance.RevisionUpdated -= OnCollabRevisionUpdated; + Collab.instance.JobsCompleted -= OnCollabJobsCompleted; + EditorApplication.playModeStateChanged -= OnPlayModeStateChanged; + } + + private void OnConnectStateChanged(ConnectInfo state) + { + m_ConnectState = state; + + m_Window.UpdateState(RecalculateState(), false); + } + + private void OnCollabStateChanged(CollabInfo state) + { + // Sometimes a collab state change will trigger even though everything is the same + if (m_CollabState.Equals(state)) + return; + + if (m_CollabState.tip != state.tip) + OnUpdatePage(m_CurrentPage); + + m_CollabState = state; + m_Window.UpdateState(RecalculateState(), false); + if (state.inProgress) + { + m_Window.inProgressRevision = m_ProgressRevision; + } + else + { + m_Window.inProgressRevision = null; + } + } + + private void OnCollabRevisionUpdated(CollabInfo state) + { + OnUpdatePage(m_CurrentPage); + } + + private void OnCollabJobsCompleted(CollabInfo state) + { + m_ProgressRevision = null; + } + + private void OnCollabError() + { + m_IsCollabError = true; + m_Window.UpdateState(RecalculateState(), false); + } + + private void OnCollabErrorCleared() + { + m_IsCollabError = false; + m_FetchInProgress = true; + m_Service.GetRevisions(m_CurrentPage * ItemsPerPage, ItemsPerPage); + m_Window.UpdateState(RecalculateState(), false); + } + + private void OnPlayModeStateChanged(PlayModeStateChange stateChange) + { + // If entering play mode, disable + if (stateChange == PlayModeStateChange.ExitingEditMode || + stateChange == PlayModeStateChange.EnteredPlayMode) + { + m_Window.revisionActionsEnabled = false; + } + // If exiting play mode, enable! + else if (stateChange == PlayModeStateChange.EnteredEditMode || + stateChange == PlayModeStateChange.ExitingPlayMode) + { + m_Window.revisionActionsEnabled = true; + } + } + + private HistoryState RecalculateState() + { + if (!m_ConnectState.online) + return HistoryState.Offline; + if (m_ConnectState.maintenance || m_CollabState.maintenance) + return HistoryState.Maintenance; + if (!m_ConnectState.loggedIn) + return HistoryState.LoggedOut; + if (!m_CollabState.seat) + return HistoryState.NoSeat; + if (!Collab.instance.IsCollabEnabledForCurrentProject()) + return HistoryState.Disabled; + if (!Collab.instance.IsConnected() || !m_CollabState.ready || m_FetchInProgress) + return HistoryState.Waiting; + if (m_ConnectState.error || m_IsCollabError) + return HistoryState.Error; + + return HistoryState.Ready; + } + + // TODO: Eventually this can be a listener on the build service status + public void UpdateBuildServiceStatus() + { + foreach (var service in UnityConnectServiceCollection.instance.GetAllServiceInfos()) + { + if (service.name.Equals("Build")) + { + BuildServiceEnabled = service.enabled; + } + } + } + + public void ShowBuildForCommit(string revisionID) + { + m_BuildAccess.ShowBuildForCommit(revisionID); + } + + public void ShowServicePage() + { + m_BuildAccess.ShowServicePage(); + } + + public void OnUpdatePage(int page) + { + m_FetchInProgress = true; + m_Service.GetRevisions(page * ItemsPerPage, ItemsPerPage); + m_Window.UpdateState(RecalculateState(), false); + m_RequestedPage = page; + } + + private void OnFetchRevisions(RevisionsResult data) + { + m_FetchInProgress = false; + IEnumerable items = null; + if (data != null) + { + m_CurrentPage = m_RequestedPage; + m_TotalRevisions = data.RevisionsInRepo; + items = m_Factory.GenerateElements(data.Revisions, m_TotalRevisions, m_CurrentPage * ItemsPerPage, m_Service.tipRevision, m_Window.inProgressRevision, m_Window.revisionActionsEnabled, BuildServiceEnabled, m_Service.currentUser); + } + + // State must be recalculated prior to inserting items + m_Window.UpdateState(RecalculateState(), false); + m_Window.UpdateRevisions(items, m_Service.tipRevision, m_TotalRevisions, m_CurrentPage); + } + + private void OnRestore(string revisionId, bool updatetorevision) + { + m_ProgressRevision = revisionId; + Collab.instance.ResyncToRevision(revisionId); + } + + private void OnGoBack(string revisionId, bool updatetorevision) + { + m_ProgressRevision = revisionId; + Collab.instance.GoBackToRevision(revisionId, false); + } + + private void OnUpdate(string revisionId, bool updatetorevision) + { + m_ProgressRevision = revisionId; + Collab.instance.Update(revisionId, updatetorevision); + } + } +} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Presenters/CollabHistoryPresenter.cs.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Presenters/CollabHistoryPresenter.cs.meta new file mode 100644 index 0000000..9c37ecd --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Presenters/CollabHistoryPresenter.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a7c91a123806d41a0873fcdcb629b1c4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views.meta new file mode 100644 index 0000000..f62ac6b --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: fd0a39b4d296d4d509b4f1dbd08d0630 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/BuildStatusButton.cs b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/BuildStatusButton.cs new file mode 100644 index 0000000..ac3754d --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/BuildStatusButton.cs @@ -0,0 +1,53 @@ +using System; +using UnityEditor; +using UnityEditor.Collaboration; +using UnityEngine; + +#if UNITY_2019_1_OR_NEWER +using UnityEngine.UIElements; +#else +using UnityEngine.Experimental.UIElements; +#endif + +namespace UnityEditor.Collaboration +{ + internal class BuildStatusButton : Button + { + private readonly string iconPrefix = "Icons/Collab.Build"; + private readonly string iconSuffix = ".png"; + Label labelElement = new Label(); + Image iconElement = new Image() {name = "BuildIcon"}; + + public BuildStatusButton(Action clickEvent) : base(clickEvent) + { + iconElement.image = EditorGUIUtility.Load(iconPrefix + iconSuffix) as Texture; + labelElement.text = "Build Now"; + Add(iconElement); + Add(labelElement); + } + + public BuildStatusButton(Action clickEvent, BuildState state, int failures) : base(clickEvent) + { + switch (state) + { + case BuildState.InProgress: + iconElement.image = EditorGUIUtility.Load(iconPrefix + iconSuffix) as Texture; + labelElement.text = "In progress"; + break; + + case BuildState.Failed: + iconElement.image = EditorGUIUtility.Load(iconPrefix + "Failed" + iconSuffix) as Texture; + labelElement.text = failures + ((failures == 1) ? " failure" : " failures"); + break; + + case BuildState.Success: + iconElement.image = EditorGUIUtility.Load(iconPrefix + "Succeeded" + iconSuffix) as Texture; + labelElement.text = "success"; + break; + } + + Add(iconElement); + Add(labelElement); + } + } +} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/BuildStatusButton.cs.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/BuildStatusButton.cs.meta new file mode 100644 index 0000000..d74a58a --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/BuildStatusButton.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0217a80286f79419daa202f69409f19b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryDropDown.cs b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryDropDown.cs new file mode 100644 index 0000000..e3bb05a --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryDropDown.cs @@ -0,0 +1,78 @@ +using UnityEngine; +using System.Collections.Generic; +using UnityEditor.Connect; + +#if UNITY_2019_1_OR_NEWER +using UnityEngine.UIElements; +#else +using UnityEngine.Experimental.UIElements; +#endif + + +namespace UnityEditor.Collaboration +{ + internal class CollabHistoryDropDown : VisualElement + { + private readonly VisualElement m_FilesContainer; + private readonly Label m_ToggleLabel; + private int m_ChangesTotal; + private string m_RevisionId; + + public CollabHistoryDropDown(ICollection changes, int changesTotal, bool changesTruncated, string revisionId) + { + m_FilesContainer = new VisualElement(); + m_ChangesTotal = changesTotal; + m_RevisionId = revisionId; + + m_ToggleLabel = new Label(ToggleText(false)); + m_ToggleLabel.AddManipulator(new Clickable(ToggleDropdown)); + Add(m_ToggleLabel); + + foreach (ChangeData change in changes) + { + m_FilesContainer.Add(new CollabHistoryDropDownItem(change.path, change.action)); + } + + if (changesTruncated) + { + m_FilesContainer.Add(new Button(ShowAllClick) + { + text = "Show all on dashboard" + }); + } + } + + private void ToggleDropdown() + { + if (Contains(m_FilesContainer)) + { + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "CollapseAssets"); + Remove(m_FilesContainer); + m_ToggleLabel.text = ToggleText(false); + } + else + { + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "ExpandAssets"); + Add(m_FilesContainer); + m_ToggleLabel.text = ToggleText(true); + } + } + + private string ToggleText(bool open) + { + var icon = open ? "\u25bc" : "\u25b6"; + var change = m_ChangesTotal == 1 ? "Change" : "Changes"; + return string.Format("{0} {1} Asset {2}", icon, m_ChangesTotal, change); + } + + private void ShowAllClick() + { + var host = UnityConnect.instance.GetConfigurationURL(CloudConfigUrl.CloudServicesDashboard); + var org = UnityConnect.instance.GetOrganizationId(); + var proj = UnityConnect.instance.GetProjectGUID(); + var url = string.Format("{0}/collab/orgs/{1}/projects/{2}/commits?commit={3}", host, org, proj, m_RevisionId); + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "ShowAllOnDashboard"); + Application.OpenURL(url); + } + } +} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryDropDown.cs.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryDropDown.cs.meta new file mode 100644 index 0000000..513b66b --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryDropDown.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a483595b0257945278dc75c5ff7d82ee +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryDropDownItem.cs b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryDropDownItem.cs new file mode 100644 index 0000000..3ad43f2 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryDropDownItem.cs @@ -0,0 +1,53 @@ +using System; +using System.IO; +using System.Linq; +using UnityEngine; + +#if UNITY_2019_1_OR_NEWER +using UnityEngine.UIElements; +#else +using UnityEngine.Experimental.UIElements; +#endif + + +namespace UnityEditor.Collaboration +{ + internal class CollabHistoryDropDownItem : VisualElement + { + public CollabHistoryDropDownItem(string path, string action) + { + var fileName = Path.GetFileName(path); + var isFolder = Path.GetFileNameWithoutExtension(path).Equals(fileName); + var fileIcon = GetIconElement(action, fileName, isFolder); + var metaContainer = new VisualElement(); + var fileNameLabel = new Label + { + name = "FileName", + text = fileName + }; + var filePathLabel = new Label + { + name = "FilePath", + text = path + }; + metaContainer.Add(fileNameLabel); + metaContainer.Add(filePathLabel); + Add(fileIcon); + Add(metaContainer); + } + + private Image GetIconElement(string action, string fileName, bool isFolder) + { + var prefix = isFolder ? "Folder" : "File"; + var actionName = action.First().ToString().ToUpper() + action.Substring(1); + // Use the same icon for renamed and moved files + actionName = actionName.Equals("Renamed") ? "Moved" : actionName; + var iconElement = new Image + { + name = "FileIcon", + image = EditorGUIUtility.LoadIcon("Icons/Collab." + prefix + actionName + ".png") + }; + return iconElement; + } + } +} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryDropDownItem.cs.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryDropDownItem.cs.meta new file mode 100644 index 0000000..10bf40e --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryDropDownItem.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d912d4873af534bd4a9d44bf1b52f14e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryItem.cs b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryItem.cs new file mode 100644 index 0000000..24e5d1d --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryItem.cs @@ -0,0 +1,229 @@ +using System; +using System.Linq; +using System.Security.Cryptography; +using UnityEditor.Connect; +using UnityEditor.Web; +using UnityEngine; + +#if UNITY_2019_1_OR_NEWER +using UnityEngine.UIElements; +#else +using UnityEngine.Experimental.UIElements; +using UnityEngine.Experimental.UIElements.StyleEnums; +#endif + +namespace UnityEditor.Collaboration +{ + internal class CollabHistoryItem : VisualElement + { + public static RevisionAction s_OnRestore; + public static RevisionAction s_OnGoBack; + public static RevisionAction s_OnUpdate; + public static ShowBuildAction s_OnShowBuild; + public static Action s_OnShowServices; + + private readonly string m_RevisionId; + private readonly string m_FullDescription; + private readonly DateTime m_TimeStamp; + private readonly Button m_Button; + private readonly HistoryProgressSpinner m_ProgressSpinner; + private VisualElement m_ActionsTray; + private VisualElement m_Details; + private Label m_Description; + private Label m_TimeAgo; + private readonly Button m_ExpandCollapseButton; + private bool m_Expanded; + + private const int kMaxDescriptionChars = 500; + + public bool RevisionActionsEnabled + { + set + { + m_Button.SetEnabled(value); + } + } + + public DateTime timeStamp + { + get { return m_TimeStamp; } + } + + public CollabHistoryItem(RevisionData data) + { + m_RevisionId = data.id; + m_TimeStamp = data.timeStamp; + name = "HistoryItem"; + m_ActionsTray = new VisualElement {name = "HistoryItemActionsTray"}; + m_ProgressSpinner = new HistoryProgressSpinner(); + m_Details = new VisualElement {name = "HistoryDetail"}; + var author = new Label(data.authorName) {name = "Author"}; + m_TimeAgo = new Label(TimeAgo.GetString(m_TimeStamp)); + m_FullDescription = data.comment; + var shouldTruncate = ShouldTruncateDescription(m_FullDescription); + if (shouldTruncate) + { + m_Description = new Label(GetTruncatedDescription(m_FullDescription)); + } + else + { + m_Description = new Label(m_FullDescription); + } + m_Description.name = "RevisionDescription"; + var dropdown = new CollabHistoryDropDown(data.changes, data.changesTotal, data.changesTruncated, data.id); + if (data.current) + { + m_Button = new Button(Restore) {name = "ActionButton", text = "Restore"}; + } + else if (data.obtained) + { + m_Button = new Button(GoBackTo) {name = "ActionButton", text = "Go back to..."}; + } + else + { + m_Button = new Button(UpdateTo) {name = "ActionButton", text = "Update"}; + } + m_Button.SetEnabled(data.enabled); + m_ProgressSpinner.ProgressEnabled = data.inProgress; + + m_ActionsTray.Add(m_ProgressSpinner); + m_ActionsTray.Add(m_Button); + + m_Details.Add(author); + m_Details.Add(m_TimeAgo); + m_Details.Add(m_Description); + + if (shouldTruncate) + { + m_ExpandCollapseButton = new Button(ToggleDescription) { name = "ToggleDescription", text = "Show More" }; + m_Details.Add(m_ExpandCollapseButton); + } + + if (data.buildState != BuildState.None) + { + BuildStatusButton buildButton; + if (data.buildState == BuildState.Configure) + buildButton = new BuildStatusButton(ShowServicePage); + else + buildButton = new BuildStatusButton(ShowBuildForCommit, data.buildState, data.buildFailures); + + m_Details.Add(buildButton); + } + + m_Details.Add(m_ActionsTray); + m_Details.Add(dropdown); + + Add(m_Details); + + this.schedule.Execute(UpdateTimeAgo).Every(1000 * 20); + } + + public static void SetUpCallbacks(RevisionAction Restore, RevisionAction GoBack, RevisionAction Update) + { + s_OnRestore = Restore; + s_OnGoBack = GoBack; + s_OnUpdate = Update; + } + + public void SetInProgressStatus(string revisionIdInProgress) + { + if (String.IsNullOrEmpty(revisionIdInProgress)) + { + m_Button.SetEnabled(true); + m_ProgressSpinner.ProgressEnabled = false; + } + else + { + m_Button.SetEnabled(false); + if (m_RevisionId.Equals(revisionIdInProgress)) + { + m_ProgressSpinner.ProgressEnabled = true; + } + } + } + + void ShowBuildForCommit() + { + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "ShowBuild"); + if (s_OnShowBuild != null) + { + s_OnShowBuild(m_RevisionId); + } + } + + void ShowServicePage() + { + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "ShowServices"); + if (s_OnShowServices != null) + { + s_OnShowServices(); + } + } + + void Restore() + { + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "Restore"); + if (s_OnRestore != null) + { + s_OnRestore(m_RevisionId, false); + } + } + + void GoBackTo() + { + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "GoBackTo"); + if (s_OnGoBack != null) + { + s_OnGoBack(m_RevisionId, false); + } + } + + void UpdateTo() + { + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "Update"); + if (s_OnUpdate != null) + { + s_OnUpdate(m_RevisionId, true); + } + } + + void UpdateTimeAgo() + { + m_TimeAgo.text = TimeAgo.GetString(m_TimeStamp); + } + + bool ShouldTruncateDescription(string description) + { + return description.Contains(Environment.NewLine) || description.Length > kMaxDescriptionChars; + } + + string GetTruncatedDescription(string description) + { + string result = description.Contains(Environment.NewLine) ? + description.Substring(0, description.IndexOf(Environment.NewLine)) : description; + if (result.Length > kMaxDescriptionChars) + { + result = result.Substring(0, kMaxDescriptionChars) + "..."; + } + return result; + } + + void ToggleDescription() + { + if (m_Expanded) + { + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "CollapseDescription"); + m_Expanded = false; + m_ExpandCollapseButton.text = "Show More"; + m_Description.text = GetTruncatedDescription(m_FullDescription); + } + else + { + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "ExpandDescription"); + m_Expanded = true; + m_ExpandCollapseButton.text = "Show Less"; + m_Description.text = m_FullDescription; + } + } + } +} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryItem.cs.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryItem.cs.meta new file mode 100644 index 0000000..290bd28 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryItem.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c4c1445ee948a4124bfa9fb818a17e36 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryItemFactory.cs b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryItemFactory.cs new file mode 100644 index 0000000..e7d7aa6 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryItemFactory.cs @@ -0,0 +1,121 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using UnityEditor.Collaboration; +using UnityEngine; + +#if UNITY_2019_1_OR_NEWER +using UnityEngine.UIElements; +#else +using UnityEngine.Experimental.UIElements; +using UnityEngine.Experimental.UIElements.StyleEnums; +#endif + + +namespace UnityEditor.Collaboration +{ + internal class CollabHistoryItemFactory : ICollabHistoryItemFactory + { + const int k_MaxChangesPerRevision = 10; + + public IEnumerable GenerateElements(IEnumerable revisions, int totalRevisions, int startIndex, string tipRev, string inProgressRevision, bool revisionActionsEnabled, bool buildServiceEnabled, string currentUser) + { + int index = startIndex; + + foreach (var rev in revisions) + { + index++; + var current = rev.revisionID == tipRev; + + // Calculate build status + BuildState buildState = BuildState.None; + int buildFailures = 0; + if (rev.buildStatuses != null && rev.buildStatuses.Length > 0) + { + bool inProgress = false; + foreach (CloudBuildStatus buildStatus in rev.buildStatuses) + { + if (buildStatus.complete) + { + if (!buildStatus.success) + { + buildFailures++; + } + } + else + { + inProgress = true; + break; + } + } + + if (inProgress) + { + buildState = BuildState.InProgress; + } + else if (buildFailures > 0) + { + buildState = BuildState.Failed; + } + else + { + buildState = BuildState.Success; + } + } + else if (current && !buildServiceEnabled) + { + buildState = BuildState.Configure; + } + + // Calculate the number of changes performed on files and folders (not meta files) + var paths = new Dictionary(); + foreach (ChangeAction change in rev.entries) + { + if (change.path.EndsWith(".meta")) + { + var path = change.path.Substring(0, change.path.Length - 5); + // Actions taken on meta files are secondary to any actions taken on the main file + if (!paths.ContainsKey(path)) + paths[path] = new ChangeData() {path = path, action = change.action}; + } + else + { + paths[change.path] = new ChangeData() {path = change.path, action = change.action}; + } + } + + var displayName = (rev.author != currentUser) ? rev.authorName : "You"; + + var item = new RevisionData + { + id = rev.revisionID, + index = totalRevisions - index + 1, + timeStamp = TimeStampToDateTime(rev.timeStamp), + authorName = displayName, + comment = rev.comment, + + obtained = rev.isObtained, + current = current, + inProgress = (rev.revisionID == inProgressRevision), + enabled = revisionActionsEnabled, + + buildState = buildState, + buildFailures = buildFailures, + + changes = paths.Values.Take(k_MaxChangesPerRevision).ToList(), + changesTotal = paths.Values.Count, + changesTruncated = paths.Values.Count > k_MaxChangesPerRevision, + }; + + yield return item; + } + } + + private static DateTime TimeStampToDateTime(double timeStamp) + { + DateTime dateTime = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc); + dateTime = dateTime.AddSeconds(timeStamp).ToLocalTime(); + return dateTime; + } + } +} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryItemFactory.cs.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryItemFactory.cs.meta new file mode 100644 index 0000000..3250d96 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryItemFactory.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fc46f91ea1e8e4ca2ab693fef9156dbe +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryRevisionLine.cs b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryRevisionLine.cs new file mode 100644 index 0000000..2b8fe65 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryRevisionLine.cs @@ -0,0 +1,94 @@ +using System; +using UnityEditor; +using UnityEditor.Collaboration; +using UnityEngine; + +#if UNITY_2019_1_OR_NEWER +using UnityEngine.UIElements; +#else +using UnityEngine.Experimental.UIElements; +#endif + +namespace UnityEditor.Collaboration +{ + internal class CollabHistoryRevisionLine : VisualElement + { + public CollabHistoryRevisionLine(int number) + { + AddNumber(number); + AddLine("topLine"); + AddLine("bottomLine"); + AddIndicator(); + } + + public CollabHistoryRevisionLine(DateTime date, bool isFullDateObtained) + { + AddLine(isFullDateObtained ? "obtainedDateLine" : "absentDateLine"); + AddHeader(GetFormattedHeader(date)); + AddToClassList("revisionLineHeader"); + } + + private void AddHeader(string content) + { + Add(new Label + { + text = content + }); + } + + private void AddIndicator() + { + Add(new VisualElement + { + name = "RevisionIndicator" + }); + } + + private void AddLine(string className = null) + { + var line = new VisualElement + { + name = "RevisionLine" + }; + if (!String.IsNullOrEmpty(className)) + { + line.AddToClassList(className); + } + Add(line); + } + + private void AddNumber(int number) + { + Add(new Label + { + text = number.ToString(), + name = "RevisionIndex" + }); + } + + private string GetFormattedHeader(DateTime date) + { + string result = "Commits on " + date.ToString("MMM d"); + switch (date.Day) + { + case 1: + case 21: + case 31: + result += "st"; + break; + case 2: + case 22: + result += "nd"; + break; + case 3: + case 23: + result += "rd"; + break; + default: + result += "th"; + break; + } + return result; + } + } +} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryRevisionLine.cs.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryRevisionLine.cs.meta new file mode 100644 index 0000000..2659a3c --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/CollabHistoryRevisionLine.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3c737f7a9d78541d1ab25f28f045dd32 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/HistoryProgressSpinner.cs b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/HistoryProgressSpinner.cs new file mode 100644 index 0000000..fad3b82 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/HistoryProgressSpinner.cs @@ -0,0 +1,69 @@ +using UnityEngine; + +#if UNITY_2019_1_OR_NEWER +using UnityEngine.UIElements; +#else +using UnityEngine.Experimental.UIElements; +#endif + +namespace UnityEditor.Collaboration +{ + internal class HistoryProgressSpinner : Image + { + private readonly Texture2D[] m_StatusWheelTextures; + private bool m_ProgressEnabled; + private IVisualElementScheduledItem m_Animation; + + public bool ProgressEnabled + { + set + { + if (m_ProgressEnabled == value) + return; + + m_ProgressEnabled = value; + visible = value; + + + if (value) + { + if (m_Animation == null) + { + m_Animation = this.schedule.Execute(AnimateProgress).Every(33); + } + else + { + m_Animation.Resume(); + } + } + else + { + if (m_Animation != null) + { + m_Animation.Pause(); + } + } + } + } + + public HistoryProgressSpinner() + { + m_StatusWheelTextures = new Texture2D[12]; + for (int i = 0; i < 12; i++) + { + m_StatusWheelTextures[i] = EditorGUIUtility.LoadIcon("WaitSpin" + i.ToString("00")); + } + image = m_StatusWheelTextures[0]; + style.width = m_StatusWheelTextures[0].width; + style.height = m_StatusWheelTextures[0].height; + visible = false; + } + + private void AnimateProgress(TimerState obj) + { + int frame = (int)Mathf.Repeat(Time.realtimeSinceStartup * 10, 11.99f); + image = m_StatusWheelTextures[frame]; + MarkDirtyRepaint(); + } + } +} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/HistoryProgressSpinner.cs.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/HistoryProgressSpinner.cs.meta new file mode 100644 index 0000000..0ded4e8 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/HistoryProgressSpinner.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: cf6aca931950a4a6a886e214e9e649c4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/ICollabHistoryItemFactory.cs b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/ICollabHistoryItemFactory.cs new file mode 100644 index 0000000..03239a3 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/ICollabHistoryItemFactory.cs @@ -0,0 +1,17 @@ +using System; +using System.Collections.Generic; +using UnityEditor.Collaboration; + +#if UNITY_2019_1_OR_NEWER +using UnityEngine.UIElements; +#else +using UnityEngine.Experimental.UIElements; +#endif + +namespace UnityEditor.Collaboration +{ + internal interface ICollabHistoryItemFactory + { + IEnumerable GenerateElements(IEnumerable revsRevisions, int mTotalRevisions, int startIndex, string tipRev, string inProgressRevision, bool revisionActionsEnabled, bool buildServiceEnabled, string currentUser); + } +} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/ICollabHistoryItemFactory.cs.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/ICollabHistoryItemFactory.cs.meta new file mode 100644 index 0000000..08e9085 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/ICollabHistoryItemFactory.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 821f5482c5a3f4389885f4432433f56f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/PagedListView.cs b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/PagedListView.cs new file mode 100644 index 0000000..472a70e --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/PagedListView.cs @@ -0,0 +1,192 @@ +using System; +using System.Collections.Generic; + +#if UNITY_2019_1_OR_NEWER +using UnityEngine.UIElements; +#else +using UnityEngine.Experimental.UIElements; +using UnityEngine.Experimental.UIElements.StyleEnums; +#endif + +namespace UnityEditor.Collaboration +{ + internal interface IPagerData + { + int curPage { get; } + int totalPages { get; } + PageChangeAction OnPageChanged { get; } + } + + internal class PagerElement : VisualElement + { + IPagerData m_Data; + readonly Label m_PageText; + readonly Button m_DownButton; + readonly Button m_UpButton; + + public PagerElement(IPagerData dataSource) + { + m_Data = dataSource; + + this.style.flexDirection = FlexDirection.Row; + this.style.alignSelf = Align.Center; + + Add(m_DownButton = new Button(OnPageDownClicked) {text = "\u25c5 Newer"}); + m_DownButton.AddToClassList("PagerDown"); + + m_PageText = new Label(); + m_PageText.AddToClassList("PagerLabel"); + Add(m_PageText); + + Add(m_UpButton = new Button(OnPageUpClicked) {text = "Older \u25bb"}); + m_UpButton.AddToClassList("PagerUp"); + + UpdateControls(); + } + + void OnPageDownClicked() + { + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "NewerPage"); + m_Data.OnPageChanged(m_Data.curPage - 1); + } + + void OnPageUpClicked() + { + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "OlderPage"); + m_Data.OnPageChanged(m_Data.curPage + 1); + } + + public void Refresh() + { + UpdateControls(); + } + + void UpdateControls() + { + var curPage = m_Data.curPage; + var totalPages = m_Data.totalPages; + + m_PageText.text = (curPage + 1) + " / " + totalPages; + m_DownButton.SetEnabled(curPage > 0); + m_UpButton.SetEnabled(curPage < totalPages - 1); + } + } + + internal enum PagerLocation + { + Top, + Bottom, + } + + internal class PagedListView : VisualElement, IPagerData + { + public const int DefaultItemsPerPage = 10; + + readonly VisualElement m_ItemContainer; + readonly PagerElement m_PagerTop, m_PagerBottom; + int m_PageSize = DefaultItemsPerPage; + IEnumerable m_Items; + int m_TotalItems; + int m_CurPage; + + public int pageSize + { + set { m_PageSize = value; } + } + + public IEnumerable items + { + set + { + m_Items = value; + LayoutItems(); + } + } + + public int totalItems + { + set + { + if (m_TotalItems == value) + return; + + m_TotalItems = value; + UpdatePager(); + } + } + + public PageChangeAction OnPageChanged { get; set; } + + public PagedListView() + { + m_PagerTop = new PagerElement(this); + + m_ItemContainer = new VisualElement() + { + name = "PagerItems", + }; + Add(m_ItemContainer); + m_Items = new List(); + + m_PagerBottom = new PagerElement(this); + } + + void LayoutItems() + { + m_ItemContainer.Clear(); + foreach (var item in m_Items) + { + m_ItemContainer.Add(item); + } + } + + void UpdatePager() + { + if (m_PagerTop.parent != this && totalPages > 1 && curPage > 0) + Insert(0, m_PagerTop); + if (m_PagerTop.parent == this && (totalPages <= 1 || curPage == 0)) + Remove(m_PagerTop); + + if (m_PagerBottom.parent != this && totalPages > 1) + Add(m_PagerBottom); + if (m_PagerBottom.parent == this && totalPages <= 1) + Remove(m_PagerBottom); + + m_PagerTop.Refresh(); + m_PagerBottom.Refresh(); + } + + int pageCount + { + get + { + var pages = m_TotalItems / m_PageSize; + if (m_TotalItems % m_PageSize > 0) + pages++; + + return pages; + } + } + + public int curPage + { + get { return m_CurPage; } + set + { + m_CurPage = value; + UpdatePager(); + } + } + + public int totalPages + { + get + { + var extraPage = 0; + if (m_TotalItems % m_PageSize > 0) + extraPage = 1; + return m_TotalItems / m_PageSize + extraPage; + } + } + } +} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/PagedListView.cs.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/PagedListView.cs.meta new file mode 100644 index 0000000..565f7a2 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/PagedListView.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 50de529b6a28f4a7093045e08810a5df +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/StatusView.cs b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/StatusView.cs new file mode 100644 index 0000000..9b50e7a --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/StatusView.cs @@ -0,0 +1,88 @@ +using System; +using UnityEditor; +using UnityEngine; + +#if UNITY_2019_1_OR_NEWER +using UnityEngine.UIElements; +#else +using UnityEngine.Experimental.UIElements; +using UnityEngine.Experimental.UIElements.StyleEnums; +#endif + +namespace UnityEditor.Collaboration +{ + internal class StatusView : VisualElement + { + Image m_Image; + Label m_Message; + Button m_Button; + Action m_Callback; + + public Texture icon + { + get { return m_Image.image; } + set + { + m_Image.image = value; + m_Image.visible = value != null; + // Until "display: hidden" is added, this is the only way to hide an element + m_Image.style.height = value != null ? 150 : 0; + } + } + + public string message + { + get { return m_Message.text; } + set + { + m_Message.text = value; + m_Message.visible = value != null; + } + } + + public string buttonText + { + get { return m_Button.text; } + set + { + m_Button.text = value; + UpdateButton(); + } + } + + public Action callback + { + get { return m_Callback; } + set + { + m_Callback = value; + UpdateButton(); + } + } + + public StatusView() + { + name = "StatusView"; + + this.StretchToParentSize(); + + m_Image = new Image() { name = "StatusIcon", visible = false, style = { height = 0f }}; + m_Message = new Label() { name = "StatusMessage", visible = false}; + m_Button = new Button(InternalCallaback) { name = "StatusButton", visible = false}; + + Add(m_Image); + Add(m_Message); + Add(m_Button); + } + + private void UpdateButton() + { + m_Button.visible = m_Button.text != null && m_Callback != null; + } + + private void InternalCallaback() + { + m_Callback(); + } + } +} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/StatusView.cs.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/StatusView.cs.meta new file mode 100644 index 0000000..bb634b1 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Collab/Views/StatusView.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 08e9894bdf0834710b22d3c0aa245ac0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources.meta new file mode 100644 index 0000000..01229c2 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a6ab6fd2b91214e8a9c8ec2224a528de +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles.meta new file mode 100644 index 0000000..0ff0382 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6b1ae1e78552c459d9ce27048ff51c7f +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryCommon.uss b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryCommon.uss new file mode 100644 index 0000000..b20f08e --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryCommon.uss @@ -0,0 +1,259 @@ +.unity-button { + min-height:0; + -unity-text-align:middle-center; + margin-left:4px; + margin-top:3px; + margin-right:4px; + margin-bottom:3px; + border-left-width:6px; + border-top-width:4px; + border-right-width:6px; + border-bottom-width:4px; + padding-left:6px; + padding-top:2px; + padding-right:6px; + padding-bottom:3px; +} + +.unity-label { + overflow: hidden; + margin-left:4px; + margin-top:2px; + margin-right:4px; + margin-bottom:2px; + padding-left:2px; + padding-top:1px; + min-height: 0; +} + +#HistoryContainer { + flex: 1 0 0; +} + +#HistoryItem { + flex: 1 0 0; + flex-direction: row; +} + +#HistoryDetail { + margin-top: 10px; + margin-left: 10px; + margin-bottom: 10px; + margin-right: 10px; + padding-top: 4px; + flex: 1 0 0; +} + +#Author { + -unity-font-style: bold; + font-size: 12px; +} + +#HistoryDetail > Button { + align-self: flex-end; +} + +CollabHistoryRevisionLine { + width: 40px; +} + +#RevisionLine { + flex: 1 0 0; + margin-left: 35px; + width: 1.5px; +} + +#RevisionLine.topLine { + height: 20px; + flex: 0 0 auto; +} + +#RevisionLine.absentDateLine { + background-color: #797676; +} + +.absentRevision #RevisionLine { + background-color: #797676; +} + +.currentRevision #RevisionLine.topLine { + background-color: #797676; +} + +#RevisionIndex { + position: absolute; + min-width: 23px; + -unity-text-align: middle-right; + top: 15.8px; + font-size: 9px; +} + +#RevisionIndicator { + position: absolute; + background-color: #000; + border-radius: 3px; + width: 8px; + height: 8px; + border-bottom-width: 2px; + border-left-width: 2px; + border-right-width: 2px; + border-top-width: 2px; + top: 20px; + left: 32px; +} + +.revisionLineHeader { + width: 200px; + height: 20px; +} + +.revisionLineHeader > .unity-label { + position: absolute; + margin-left: 47px; + margin-top: 3px; +} + +#PagerItems { + flex-direction: column; +} + +PagerElement > .unity-label { + margin-top: 8px; +} + +.absentRevision #RevisionIndicator { + border-color: #797676; +} + +.absentRevision #RevisionIndex { + color: #797676; +} + +.currentRevision #HistoryDetail { + border-top-width: 2px; +} + +#HistoryItem #RevisionDescription { + white-space: normal; +} + +#HistoryItem #ToggleDescription { + align-self: flex-start; + padding-top: 0; + padding-left: 0; + padding-right: 0; + padding-bottom: 2px; +} + +#HistoryItem #ActionButton { + position: absolute; + right: 0; +} + +#HistoryItem #BuildIcon { + width: 16px; + height: 13px; +} + +#HistoryItemActionsTray { + flex: 1 0 0; + flex-direction: row; + align-items: center; + height: 38px; + margin-left: 10px; + margin-right: 10px; +} + +CollabHistoryDropDown { + border-top-width: 1px; +} + +CollabHistoryDropDown > .unity-label { + padding-top: 10px; + padding-bottom: 10px; +} + +CollabHistoryDropDownItem { + flex-direction: row; + border-top-width: 1px; + overflow: hidden; +} + +#FileIcon { + align-self: center; + width: 26px; + height: 26px; +} + +#FileName { + -unity-font-style: bold; + padding-bottom: 0; + margin-bottom: 0; +} + +#FileIcon { + padding-top: 0; + margin-top: 0; +} + +#ErrorBar { + height: 24px; + background-color: #ff0000; + color: #000; + font-size: 12px; +} + +#ErrorBar > #CloseButton { + position: absolute; + right: 0; + top: 0; + width: 24px; + height: 24px; + color: #000; + font-size: 18px; + -unity-font-style: bold; +} + +#StatusView { + flex-direction: column; + justify-content: center; + align-self: center; + align-items: center; + flex: 1 0 0; +} + +#StatusView > #StatusIcon { + width: 115px; + height: 150px; +} + +#StatusView > #StatusMessage { + font-size: 22px; + width: 230px; + white-space: normal; + -unity-text-align: middle-center; +} + +#StatusView > #StatusButton { + font-size: 12px; + margin-top: 20px; + background-image: none; + width: 108px; + height: 29px; +} + +BuildStatusButton.unity-button { + flex-direction: row; + align-self: flex-end; + align-items: center; + margin-right: 10px; + padding-left:0; + padding-top:0; + padding-right:0; + padding-bottom:0; +} + +BuildStatusButton.unity-button .unity-label { + padding-left: 2px; +} + diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryCommon.uss.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryCommon.uss.meta new file mode 100644 index 0000000..035b662 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryCommon.uss.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 3a2d94c8977984b67984caeff9fa666e +ScriptedImporter: + fileIDToRecycleName: + 11400000: stylesheet + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryDark.uss b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryDark.uss new file mode 100644 index 0000000..de436f8 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryDark.uss @@ -0,0 +1,86 @@ +#HistoryContainer { + background-color: #292929; +} + +.obtainedRevision #HistoryDetail { + background-color: #333; +} + +.absentRevision #HistoryDetail { + background-color: #595959; +} + +#StatusView { + background-color: #292929; +} + +#StatusView > #StatusMessage { + color: #959995; +} + +BuildStatusButton.unity-button { + color: #B4B4B4; + background-image: resource("Builtin Skins/DarkSkin/Images/btn.png"); +} + +BuildStatusButton.unity-button:hover { + color: #FFF; +} + +BuildStatusButton.unity-button:hover:active { + background-image: resource("Builtin Skins/DarkSkin/Images/btn act.png"); +} + +BuildStatusButton.unity-button:checked { + color: #F0F0F0; + background-image: resource("Builtin Skins/DarkSkin/Images/btn on.png"); +} + +BuildStatusButton.unity-button:hover:checked { + color: #FFF; +} + +BuildStatusButton.unity-button:hover:active:checked { + background-image: resource("Builtin Skins/DarkSkin/Images/btn onact.png"); +} + +BuildStatusButton.unity-button:focus:checked { + background-image: resource("Builtin Skins/DarkSkin/Images/btn on focus.png"); +} + +CollabHistoryDropDown { + border-color: #292929; +} + +CollabHistoryDropDownItem { + border-color: #292929; +} + +#RevisionLine.obtainedDateLine { + background-color: #0cb4cc; +} + +.obtainedRevision #RevisionLine { + background-color: #0cb4cc; +} + +#RevisionIndex { + color: #0cb4cc; +} + +#RevisionIndicator { + border-color: #0cb4cc; +} + +.currentRevision #RevisionIndicator { + background-color: #0cb4cc; +} + +.currentRevision #HistoryDetail { + border-color: #0cb4cc; +} + +#StatusView > #StatusButton { + background-color: #0cb4cc; + border-color: #0cb4cc; +} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryDark.uss.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryDark.uss.meta new file mode 100644 index 0000000..35a7d09 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryDark.uss.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 70d4d75a2877243758b0750cbc75b6eb +ScriptedImporter: + fileIDToRecycleName: + 11400000: stylesheet + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryLight.uss b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryLight.uss new file mode 100644 index 0000000..3f9b85f --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryLight.uss @@ -0,0 +1,86 @@ +#HistoryContainer { + background-color: #a2a2a2; +} + +.obtainedRevision #HistoryDetail { + background-color: #c2c2c2; +} + +.absentRevision #HistoryDetail { + background-color: #dedede; +} + +#StatusView { + background-color: #a2a2a3; +} + +#StatusView > #StatusMessage { + color: #000; +} + +BuildStatusButton.unity-button { + color: #111; + background-image: resource("Builtin Skins/LightSkin/Images/btn.png"); +} + +BuildStatusButton.unity-button:hover { + color: #000; +} + +BuildStatusButton.unity-button:hover:active { + background-image: resource("Builtin Skins/LightSkin/Images/btn act.png"); +} + +BuildStatusButton.unity-button:checked { + color: #F0F0F0; + background-image: resource("Builtin Skins/LightSkin/Images/btn on.png"); +} + +BuildStatusButton.unity-button:hover:checked { + color: #000; +} + +BuildStatusButton.unity-button:hover:active:checked { + background-image: resource("Builtin Skins/LightSkin/Images/btn onact.png"); +} + +BuildStatusButton.unity-button:focus:checked { + background-image: resource("Builtin Skins/LightSkin/Images/btn on focus.png"); +} + +CollabHistoryDropDown { + border-color: #a2a2a2; +} + +CollabHistoryDropDownItem { + border-color: #a2a2a2; +} + +#RevisionLine.obtainedDateLine { + background-color: #018d98; +} + +.obtainedRevision #RevisionLine { + background-color: #018d98; +} + +#RevisionIndex { + color: #018d98; +} + +#RevisionIndicator { + border-color: #018d98; +} + +.currentRevision #RevisionIndicator { + background-color: #018d98; +} + +.currentRevision #HistoryDetail { + border-color: #018d98; +} + +#StatusView > #StatusButton { + background-color: #018d98; + border-color: #018d98; +} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryLight.uss.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryLight.uss.meta new file mode 100644 index 0000000..28c860e --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Resources/Styles/CollabHistoryLight.uss.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: b52bde26a83564960bcb90217f72b910 +ScriptedImporter: + fileIDToRecycleName: + 11400000: stylesheet + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Unity.CollabProxy.Editor.asmdef b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Unity.CollabProxy.Editor.asmdef new file mode 100644 index 0000000..66511e1 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Unity.CollabProxy.Editor.asmdef @@ -0,0 +1,7 @@ +{ + "name": "Unity.CollabProxy.Editor", + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [] +} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Unity.CollabProxy.Editor.asmdef.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Unity.CollabProxy.Editor.asmdef.meta new file mode 100644 index 0000000..03ebeca --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Editor/Unity.CollabProxy.Editor.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 645165c8169474bfbbeb8fb0bcfd26f5 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/LICENSE.md b/Library/PackageCache/com.unity.collab-proxy@1.2.16/LICENSE.md new file mode 100644 index 0000000..31bde4e --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/LICENSE.md @@ -0,0 +1,31 @@ +**Unity Companion Package License v1.0 ("_License_")** + +Copyright © 2017 Unity Technologies ApS ("**_Unity_**") + +Unity hereby grants to you a worldwide, non-exclusive, no-charge, and royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute the software that is made available with this License ("**_Software_**"), subject to the following terms and conditions: + +1. *Unity Companion Use Only*. Exercise of the license granted herein is limited to exercise for the creation, use, and/or distribution of applications, software, or other content pursuant to a valid Unity development engine software license ("**_Engine License_**"). That means while use of the Software is not limited to use in the software licensed under the Engine License, the Software may not be used for any purpose other than the creation, use, and/or distribution of Engine License-dependent applications, software, or other content. No other exercise of the license granted herein is permitted. + +1. *No Modification of Engine License*. Neither this License nor any exercise of the license granted herein modifies the Engine License in any way. + +1. *Ownership & Grant Back to You*. + + 3.1. You own your content. In this License, "derivative works" means derivatives of the Software itself--works derived only from the Software by you under this License (for example, modifying the code of the Software itself to improve its efficacy); “derivative works†of the Software do not include, for example, games, apps, or content that you create using the Software. You keep all right, title, and interest to your own content. + + 3.2. Unity owns its content. While you keep all right, title, and interest to your own content per the above, as between Unity and you, Unity will own all right, title, and interest to all intellectual property rights (including patent, trademark, and copyright) in the Software and derivative works of the Software, and you hereby assign and agree to assign all such rights in those derivative works to Unity. + + 3.3. You have a license to those derivative works. Subject to this License, Unity grants to you the same worldwide, non-exclusive, no-charge, and royalty-free copyright license to derivative works of the Software you create as is granted to you for the Software under this License. + +1. *Trademarks*. You are not granted any right or license under this License to use any trademarks, service marks, trade names, products names, or branding of Unity or its affiliates ("**_Trademarks_**"). Descriptive uses of Trademarks are permitted; see, for example, Unity’s Branding Usage Guidelines at [https://unity3d.com/public-relations/brand](https://unity3d.com/public-relations/brand). + +1. *Notices & Third-Party Rights*. This License, including the copyright notice above, must be provided in all substantial portions of the Software and derivative works thereof (or, if that is impracticable, in any other location where such notices are customarily placed). Further, if the Software is accompanied by a Unity "third-party notices" or similar file, you acknowledge and agree that software identified in that file is governed by those separate license terms. + +1. *DISCLAIMER, LIMITATION OF LIABILITY*. THE SOFTWARE AND ANY DERIVATIVE WORKS THEREOF IS PROVIDED ON AN "AS IS" BASIS, AND IS PROVIDED WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND/OR NONINFRINGEMENT. IN NO EVENT SHALL ANY COPYRIGHT HOLDER OR AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES (WHETHER DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL, INCLUDING PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, LOSS OF USE, DATA, OR PROFITS, AND BUSINESS INTERRUPTION), OR OTHER LIABILITY WHATSOEVER, WHETHER IN AN ACTION OF CONTRACT, TORT, OR OTHERWISE, ARISING FROM OR OUT OF, OR IN CONNECTION WITH, THE SOFTWARE OR ANY DERIVATIVE WORKS THEREOF OR THE USE OF OR OTHER DEALINGS IN SAME, EVEN WHERE ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +1. *USE IS ACCEPTANCE and License Versions*. Your receipt and use of the Software constitutes your acceptance of this License and its terms and conditions. Software released by Unity under this License may be modified or updated and the License with it; upon any such modification or update, you will comply with the terms of the updated License for any use of any of the Software under the updated License. + +1. *Use in Compliance with Law and Termination*. Your exercise of the license granted herein will at all times be in compliance with applicable law and will not infringe any proprietary rights (including intellectual property rights); this License will terminate immediately on any breach by you of this License. + +1. *Severability*. If any provision of this License is held to be unenforceable or invalid, that provision will be enforced to the maximum extent possible and the other provisions will remain in full force and effect. + +1. *Governing Law and Venue*. This License is governed by and construed in accordance with the laws of Denmark, except for its conflict of laws rules; the United Nations Convention on Contracts for the International Sale of Goods will not apply. If you reside (or your principal place of business is) within the United States, you and Unity agree to submit to the personal and exclusive jurisdiction of and venue in the state and federal courts located in San Francisco County, California concerning any dispute arising out of this License ("**_Dispute_**"). If you reside (or your principal place of business is) outside the United States, you and Unity agree to submit to the personal and exclusive jurisdiction of and venue in the courts located in Copenhagen, Denmark concerning any Dispute. diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/LICENSE.md.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/LICENSE.md.meta new file mode 100644 index 0000000..30f5c3a --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/LICENSE.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: c754112a02f354a6696fa4f2b99e95a5 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/README.md b/Library/PackageCache/com.unity.collab-proxy@1.2.16/README.md new file mode 100644 index 0000000..5cfbd88 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/README.md @@ -0,0 +1,16 @@ +# Collab Proxy UPM Package +This is the packaged version of Collab, currently limited to containing the History and Toolbar windows, along with supporting classes. + +## Development +Check this repository out in your {$PROJECT}/Packages/ folder, under the name com.unity.collab-proxy. The classes will be built by Unity. + +## Testing +In order to run the tests, you will need to add this project to the testables key in your manifest.json - once you have done this, the tests will be picked up by the Unity Test Runner window. + +## Building +You may build this project using msbuild. The commands to do so can be seen under .gitlab-ci.yml. + +## Deploying +Gitlab will automatically build your project when you deploy. You can download the resulting artifact, which will be a dll, and place it in your Editor/bin/ folder. Open the package in Unity to generate the meta files, and then you will be able to publish. + +We're currently looking into a way to avoid this manual process. diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/README.md.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/README.md.meta new file mode 100644 index 0000000..b3ad993 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/README.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ac281230df7b14becb40b3c479f1b429 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests.meta new file mode 100644 index 0000000..f43ddd3 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1369382d2c5e64dc5b2ec0b6b0a94531 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests/Editor.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests/Editor.meta new file mode 100644 index 0000000..b80cefd --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests/Editor.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4506ac79f5b274cb1b249ed7f4abfb9a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests/Editor/HistoryTests.cs b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests/Editor/HistoryTests.cs new file mode 100644 index 0000000..ba79a20 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests/Editor/HistoryTests.cs @@ -0,0 +1,583 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using UnityEngine; +using UnityEditor.Collaboration; +using UnityEngine.TestTools; +using NUnit.Framework; + +namespace UnityEditor.Collaboration.Tests +{ + [TestFixture] + internal class HistoryTests + { + private TestHistoryWindow _window; + private TestRevisionsService _service; + private CollabHistoryPresenter _presenter; + + [SetUp] + public void SetUp() + { + _window = new TestHistoryWindow(); + _service = new TestRevisionsService(); + _presenter = new CollabHistoryPresenter(_window, new CollabHistoryItemFactory(), _service); + } + + [TearDown] + public void TearDown() + { + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__PropagatesRevisionResult() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(authorName: "authorName", comment: "comment", revisionID: "revisionID"), + } + }; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual("revisionID", item.id); + Assert.AreEqual("authorName", item.authorName); + Assert.AreEqual("comment", item.comment); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__RevisionNumberingIsInOrder() + { + _service.result = new RevisionsResult() + { + RevisionsInRepo = 4, + Revisions = new List() + { + new Revision(revisionID: "0"), + new Revision(revisionID: "1"), + new Revision(revisionID: "2"), + new Revision(revisionID: "3"), + } + }; + + _presenter.OnUpdatePage(0); + var items = _window.items.ToArray(); + + Assert.AreEqual(4, items[0].index); + Assert.AreEqual(3, items[1].index); + Assert.AreEqual(2, items[2].index); + Assert.AreEqual(1, items[3].index); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__RevisionNumberingChangesForMorePages() + { + _service.result = new RevisionsResult() + { + RevisionsInRepo = 12, + Revisions = new List() + { + new Revision(revisionID: "0"), + new Revision(revisionID: "1"), + new Revision(revisionID: "2"), + new Revision(revisionID: "3"), + new Revision(revisionID: "4"), + } + }; + + _presenter.OnUpdatePage(1); + var items = _window.items.ToArray(); + + Assert.AreEqual(12, items[0].index); + Assert.AreEqual(11, items[1].index); + Assert.AreEqual(10, items[2].index); + Assert.AreEqual(9, items[3].index); + Assert.AreEqual(8, items[4].index); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__ObtainedIsCalculated() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(isObtained: false), + new Revision(isObtained: true), + } + }; + + _presenter.OnUpdatePage(0); + var items = _window.items.ToArray(); + + Assert.IsFalse(items[0].obtained); + Assert.IsTrue(items[1].obtained); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__CurrentIsCalculated() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "1"), + new Revision(revisionID: "2"), + new Revision(revisionID: "3"), + } + }; + _service.tipRevision = "2"; + + _presenter.OnUpdatePage(0); + var items = _window.items.ToArray(); + + Assert.AreEqual(false, items[0].current); + Assert.AreEqual(true, items[1].current); + Assert.AreEqual(false, items[2].current); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__InProgressIsCalculated() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "1"), + new Revision(revisionID: "2"), + new Revision(revisionID: "3"), + } + }; + _window.inProgressRevision = "2"; + + _presenter.OnUpdatePage(0); + var items = _window.items.ToArray(); + + Assert.IsFalse(items[0].inProgress); + Assert.IsTrue(items[1].inProgress); + Assert.IsFalse(items[2].inProgress); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__EnabledIsCalculated() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "0"), + } + }; + _window.revisionActionsEnabled = true; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(true, item.enabled); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__DisabledIsCalculated() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "0"), + } + }; + _window.revisionActionsEnabled = false; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(false, item.enabled); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__BuildStateHasNoneWhenNotTip() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "1"), + } + }; + _service.tipRevision = "0"; + _presenter.BuildServiceEnabled = false; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(BuildState.None, item.buildState); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__BuildStateTipHasNoneWhenEnabled() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "0"), + } + }; + _service.tipRevision = "0"; + _presenter.BuildServiceEnabled = true; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(BuildState.None, item.buildState); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__BuildStateHasConfigureWhenTip() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "0"), + } + }; + _service.tipRevision = "0"; + _presenter.BuildServiceEnabled = false; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(BuildState.Configure, item.buildState); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__BuildStateHasConfigureWhenZeroBuildStatus() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "0"), + } + }; + _service.tipRevision = "0"; + _presenter.BuildServiceEnabled = false; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(BuildState.Configure, item.buildState); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__BuildStateHasNoneWhenZeroBuildStatuses() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "0"), + } + }; + _service.tipRevision = "0"; + _presenter.BuildServiceEnabled = true; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(BuildState.None, item.buildState); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__BuildStateHasSuccessWhenCompleteAndSucceeded() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision + ( + revisionID: "0", + buildStatuses: new CloudBuildStatus[1] + { + new CloudBuildStatus(complete: true, success: true), + } + ), + } + }; + _service.tipRevision = "0"; + _presenter.BuildServiceEnabled = true; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(BuildState.Success, item.buildState); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__BuildStateHasInProgress() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision + ( + revisionID: "0", + buildStatuses: new CloudBuildStatus[1] + { + new CloudBuildStatus(complete: false), + } + ), + } + }; + _service.tipRevision = "0"; + _presenter.BuildServiceEnabled = true; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(BuildState.InProgress, item.buildState); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__BuildStateHasFailure() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision + ( + revisionID: "0", + buildStatuses: new CloudBuildStatus[1] + { + new CloudBuildStatus(complete: true, success: false), + } + ), + } + }; + _service.tipRevision = "0"; + _presenter.BuildServiceEnabled = true; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(BuildState.Failed, item.buildState); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__BuildStateHasFailureWhenAnyBuildsFail() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision + ( + revisionID: "0", + buildStatuses: new CloudBuildStatus[3] + { + new CloudBuildStatus(complete: true, success: false), + new CloudBuildStatus(complete: true, success: false), + new CloudBuildStatus(complete: true, success: true), + } + ), + } + }; + _service.tipRevision = "0"; + _presenter.BuildServiceEnabled = true; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(BuildState.Failed, item.buildState); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__ChangesPropagateThrough() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "0", entries: GenerateChangeActions(3)), + } + }; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + var changes = item.changes.ToList(); + + Assert.AreEqual("Path0", changes[0].path); + Assert.AreEqual("Path1", changes[1].path); + Assert.AreEqual("Path2", changes[2].path); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__ChangesTotalIsCalculated() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "0", entries: GenerateChangeActions(3)), + } + }; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(3, item.changes.Count); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__ChangesTruncatedIsCalculated() + { + for (var i = 0; i < 20; i++) + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "0", entries: GenerateChangeActions(i)), + } + }; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(i > 10, item.changesTruncated); + } + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__OnlyKeeps10ChangeActions() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(authorName: "Test", author: "test", entries: GenerateChangeActions(12)), + } + }; + + _presenter.OnUpdatePage(1); + var item = _window.items.First(); + + Assert.AreEqual(10, item.changes.Count); + Assert.AreEqual(12, item.changesTotal); + Assert.AreEqual(true, item.changesTruncated); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__DeduplicatesMetaFiles() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision + ( + authorName: "Test", + author: "test", + revisionID: "", + entries: new ChangeAction[2] + { + new ChangeAction(path: "Path1", action: "Action1"), + new ChangeAction(path: "Path1.meta", action: "Action1"), + } + ), + } + }; + + _presenter.OnUpdatePage(1); + var item = _window.items.First(); + + Assert.AreEqual(1, item.changes.Count); + Assert.AreEqual(1, item.changesTotal); + Assert.AreEqual("Path1", item.changes.First().path); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__FolderMetaFilesAreCounted() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision + ( + authorName: "Test", + author: "test", + entries: new ChangeAction[1] + { + new ChangeAction(path: "Folder1.meta", action: "Action1"), + } + ), + } + }; + + _presenter.OnUpdatePage(1); + var item = _window.items.First(); + + Assert.AreEqual(1, item.changes.Count); + Assert.AreEqual(1, item.changesTotal); + Assert.AreEqual("Folder1", item.changes.First().path); + } + + private static ChangeAction[] GenerateChangeActions(int count) + { + var entries = new ChangeAction[count]; + for (var i = 0; i < count; i++) + entries[i] = new ChangeAction(path: "Path" + i, action: "Action" + i); + return entries; + } + } + + internal class TestRevisionsService : IRevisionsService + { + public RevisionsResult result; + public event RevisionsDelegate FetchRevisionsCallback; + + public string tipRevision { get; set; } + public string currentUser { get; set; } + + public void GetRevisions(int offset, int count) + { + if(FetchRevisionsCallback != null) + { + FetchRevisionsCallback(result); + } + } + } + + internal class TestHistoryWindow : ICollabHistoryWindow + { + public IEnumerable items; + + public bool revisionActionsEnabled { get; set; } + public int itemsPerPage { get; set; } + public string errMessage { get; set; } + public string inProgressRevision { get; set; } + public PageChangeAction OnPageChangeAction { get; set; } + public RevisionAction OnGoBackAction { get; set; } + public RevisionAction OnUpdateAction { get; set; } + public RevisionAction OnRestoreAction { get; set; } + public ShowBuildAction OnShowBuildAction { get; set; } + public Action OnShowServicesAction { get; set; } + + public void UpdateState(HistoryState state, bool force) + { + } + + public void UpdateRevisions(IEnumerable items, string tip, int totalRevisions, int currPage) + { + this.items = items; + } + } +} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests/Editor/HistoryTests.cs.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests/Editor/HistoryTests.cs.meta new file mode 100644 index 0000000..d648a7f --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests/Editor/HistoryTests.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 23a56a19774ed42b6b65646af08a003c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests/Editor/Unity.CollabProxy.EditorTests.asmdef b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests/Editor/Unity.CollabProxy.EditorTests.asmdef new file mode 100644 index 0000000..3467a9e --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests/Editor/Unity.CollabProxy.EditorTests.asmdef @@ -0,0 +1,13 @@ +{ + "name": "Unity.CollabProxy.EditorTests", + "references": [ + "Unity.CollabProxy.Editor" + ], + "optionalUnityReferences": [ + "TestAssemblies" + ], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [] +} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests/Editor/Unity.CollabProxy.EditorTests.asmdef.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests/Editor/Unity.CollabProxy.EditorTests.asmdef.meta new file mode 100644 index 0000000..57db5c7 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/Tests/Editor/Unity.CollabProxy.EditorTests.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 782de34c17796430ba8d0ceddb60944e +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/package.json b/Library/PackageCache/com.unity.collab-proxy@1.2.16/package.json new file mode 100644 index 0000000..3402274 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/package.json @@ -0,0 +1,21 @@ +{ + "name": "com.unity.collab-proxy", + "displayName": "Unity Collaborate", + "version": "1.2.16", + "unity": "2018.3", + "description": "Collaborate is a simple way for teams to save, share, and sync their Unity project", + "keywords": [ + "collab", + "collaborate", + "teams", + "team", + "cloud", + "backup" + ], + "dependencies": {}, + "repository": { + "type": "git", + "url": "https://gitlab.cds.internal.unity3d.com/upm-packages/cloud-services/collab-proxy.git", + "revision": "070e173b6a36e1d6097b1d95e09c08840c23f6ca" + } +} diff --git a/Library/PackageCache/com.unity.collab-proxy@1.2.16/package.json.meta b/Library/PackageCache/com.unity.collab-proxy@1.2.16/package.json.meta new file mode 100644 index 0000000..c52d0c6 --- /dev/null +++ b/Library/PackageCache/com.unity.collab-proxy@1.2.16/package.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 57b0c806ba25b48aa8a6ecb3345a4a9b +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ext.nunit@1.0.0/.gitlab-ci.yml b/Library/PackageCache/com.unity.ext.nunit@1.0.0/.gitlab-ci.yml new file mode 100644 index 0000000..4c64e22 --- /dev/null +++ b/Library/PackageCache/com.unity.ext.nunit@1.0.0/.gitlab-ci.yml @@ -0,0 +1,15 @@ +image: node:6.10.0 + +stages: + - push_to_packman_staging + +push_to_packman_staging: + stage: push_to_packman_staging + only: + - tags + script: + - sed -i "s/0.0.1-PLACEHOLDERVERSION/$CI_COMMIT_TAG/g" package.json + - sed -i "s/PLACEHOLDERSHA/$CI_COMMIT_SHA/g" package.json + - sed -i "s/0.0.1-PLACEHOLDERVERSION/$CI_COMMIT_TAG/g" CHANGELOG.md + - curl -u $USER_NAME:$API_KEY https://staging-packages.unity.com/auth > .npmrc + - npm publish diff --git a/Library/PackageCache/com.unity.ext.nunit@1.0.0/CHANGELOG.md b/Library/PackageCache/com.unity.ext.nunit@1.0.0/CHANGELOG.md new file mode 100644 index 0000000..225baea --- /dev/null +++ b/Library/PackageCache/com.unity.ext.nunit@1.0.0/CHANGELOG.md @@ -0,0 +1,11 @@ +# Changelog +All notable changes to this package will be documented in this file. + +The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) +and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). + +## [1.0.0] - 2019-02-21 + +### This is the first release of *Unity Package com.unity.ext.nunit*. + +- Migrated the custom version of nunit from inside of unity. diff --git a/Library/PackageCache/com.unity.ext.nunit@1.0.0/CHANGELOG.md.meta b/Library/PackageCache/com.unity.ext.nunit@1.0.0/CHANGELOG.md.meta new file mode 100644 index 0000000..d91fbde --- /dev/null +++ b/Library/PackageCache/com.unity.ext.nunit@1.0.0/CHANGELOG.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f49bbe06ffa5ae24abe32abdab430c24 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ext.nunit@1.0.0/Documentation~/ext.nunit.md b/Library/PackageCache/com.unity.ext.nunit@1.0.0/Documentation~/ext.nunit.md new file mode 100644 index 0000000..2a38b9d --- /dev/null +++ b/Library/PackageCache/com.unity.ext.nunit@1.0.0/Documentation~/ext.nunit.md @@ -0,0 +1,6 @@ +# Custom Nunit build to work with Unity + +This version of nunit works with all platforms, il2cpp and Mono AOT. + +For Nunit Documentation: +https://github.com/nunit/docs/wiki/NUnit-Documentation diff --git a/Library/PackageCache/com.unity.ext.nunit@1.0.0/LICENSE.md b/Library/PackageCache/com.unity.ext.nunit@1.0.0/LICENSE.md new file mode 100644 index 0000000..ccc1f59 --- /dev/null +++ b/Library/PackageCache/com.unity.ext.nunit@1.0.0/LICENSE.md @@ -0,0 +1,19 @@ +Copyright (c) 2018 Charlie Poole, Rob Prouse + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. \ No newline at end of file diff --git a/Library/PackageCache/com.unity.ext.nunit@1.0.0/LICENSE.md.meta b/Library/PackageCache/com.unity.ext.nunit@1.0.0/LICENSE.md.meta new file mode 100644 index 0000000..90df748 --- /dev/null +++ b/Library/PackageCache/com.unity.ext.nunit@1.0.0/LICENSE.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f91a00d2dca52b843b2d50ccf750737d +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ext.nunit@1.0.0/README.md b/Library/PackageCache/com.unity.ext.nunit@1.0.0/README.md new file mode 100644 index 0000000..2a38b9d --- /dev/null +++ b/Library/PackageCache/com.unity.ext.nunit@1.0.0/README.md @@ -0,0 +1,6 @@ +# Custom Nunit build to work with Unity + +This version of nunit works with all platforms, il2cpp and Mono AOT. + +For Nunit Documentation: +https://github.com/nunit/docs/wiki/NUnit-Documentation diff --git a/Library/PackageCache/com.unity.ext.nunit@1.0.0/README.md.meta b/Library/PackageCache/com.unity.ext.nunit@1.0.0/README.md.meta new file mode 100644 index 0000000..e9a7f9f --- /dev/null +++ b/Library/PackageCache/com.unity.ext.nunit@1.0.0/README.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 5da62a0c1c5218c4aa16b74546a7822d +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35.meta b/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35.meta new file mode 100644 index 0000000..278a2fa --- /dev/null +++ b/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a36d8b72880a8004f96ac54ce4598ff9 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom.meta b/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom.meta new file mode 100644 index 0000000..750f82c --- /dev/null +++ b/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2347243c7aa3e224f9282dc94e6fc3b2 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/This is a custom build DONT include.txt b/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/This is a custom build DONT include.txt new file mode 100644 index 0000000..0839eb9 --- /dev/null +++ b/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/This is a custom build DONT include.txt @@ -0,0 +1,4 @@ +This is a custom nUnit build meant to be used by Unity editor and players. It shoul not be included or referenced from anywhere (unless you know what you're doing) + +Build from this repo +https://github.com/Unity-Technologies/nunit \ No newline at end of file diff --git a/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/This is a custom build DONT include.txt.meta b/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/This is a custom build DONT include.txt.meta new file mode 100644 index 0000000..5e251ee --- /dev/null +++ b/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/This is a custom build DONT include.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 3d67ccdf81bed8247ad0db2d5f47a7d1 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.dll b/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.dll new file mode 100644 index 0000000000000000000000000000000000000000..3af863c6d22c05083dd52fa383a550f56db76888 GIT binary patch literal 339968 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℘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 a{`p5V1N&M%UQ+J8!{=5%{`to@1OEpTse)Dj literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.dll.mdb b/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.dll.mdb new file mode 100644 index 0000000000000000000000000000000000000000..cb688df07514d85550a8c032998b732f6fbe7962 GIT binary patch literal 176962 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�=JxH@nRlHkA$Af4Pp_M$=MH& z8R(9%Xm^wZ0aaonFuqarrNqR9HmVM&dUw=LTmi|924A!10Hc2Z_R}5xqNue*^&zTe z7bHL0(*wqS59AF2mHZ@(ZwxdV7BP_+lL}m#2g)Zdf%M1Fx6*`cA@Z08fEqne)1b&u zQ^wNg(agaYw6ULo>i0l@23-NU9|!XkW&Db9UY-c^_C&!D;D5j@h1|>HHE~=Tfa#tn zgW@*PCOYBFbAYNnQ4PV6^%!A%7$9ds{%<+D1ZwJz0e~v1%jW<=7|fsfO+SIx(8h# zMkV0vjW8E)7VK+-X_*}AJIw>J8yz34b_8IxaPT7T3*>Jp}F(csQBU~UE=%q;-9 zLqOz0n0|o0EEA3aC^i7aQ4FlU67e_>04feZB@|;t6KcSjR)Agvpf-xR1eW6clkj)I zegvSO6mrCMJ1BDUIX?f z5WS_Se4qqzw+mkkf;CSNvW0-7tQ@$HIOPvmKoAO~s0N^Ha4HqBv>=pDQ7?gF;Zzl1 z&w|i%g5uOZ*yiM$h_C97!xa;IfO;QMMXnpg->Q80QyF(=qAp4bdfOE7Asm~$NFD?s0Z(RYf$mn+eDayLVu z0)!xU2sl{?A*oov;zH0}ib@6wFU^T1fR%=zhZL1dQtg1f3_-6bs*+6bH(-B4(1lR0 zu11pb0n9fP`BBt+prDER;tjS?P!!ji1Z;9Bx=&s71uh~ySqE5sC~6=mvJ}Q+e3R(& z*;$_S38>GZ=r4949sdJ9N@ZfL?{6*A&C#Fuwu%6NWC_=IXIz*StyI0QuZTz7%tw!z2KdcpD{A%r!8X z$aXnkk8Y#K6y-xwZvcCH8+A|=KAXW?)TB${F#8Edb`Wrk#hVR5`2!XZjshvF04Tz! zRKU{0Q94E8ogG0{0ro5$J*TK9pzsDYsRyw4;i#9Q-jI}I1j4RHASVc@{t-4!CgZIJ zZ*r5vfVv%l;)pAtf1OOH)| zdMa?o96r;>xTw`GY7>lk$Kq#C-huTV{ zb_bxySQJGuh8!jzpn_ObNHNfd5OEp-YKle86ypHCB&dGCzQm%h6h(IbQ*Oi|>}DKt zgMgEV2r^a-V6ky1j-v3Mf=I9!u#z}bN>N25)dpC59C}GnWcNSi7hu2R&>xDzH>QaM zz3)N?co+FXz{v*Q{S#CoU`cmTGDTg4V!?aBDUSiGxQm`plnY690M>aIbx~9(P(*@u z@i6genTu3Spu>5Z_a#U-G-6xBddC4iMCpobLohNRj7dzpYigLQ$0@^#riW6!es$nnT)W=uB0Ld2skGHBB@}&LQ+vEMO_o%*p&%bRw~M-C_j>_0jxF^)lpO|N%aBtF%^BH zs5FvtNkf=x8oCAnCmUrXbqBD>G!#WqH6&F4SYa9}qNom_i1KO%tR)S#Qq*UX`Ucqd zH1va@$PoK$O+8K{S%@D(RPUCD$U&rIY90Vfamij$y101M4TVH9Ml6no;n{4!!qS8p}Vh+r0bC4|r99<7d>K0)BIVgalo|9Ax zV5vDMjiTB}>M3AVIp`Th;Ug@O`EI~^a?pE<`b|;}xd?O2MOPudS#_9p=eF5sFs4g;=Vgl$wnF(D;ltvA{0we56D;#04pv+B@|Uj#(Du*TM=rfD14wNa`+Rl zUq$FQMRk#}ydJ>D{{!R$0qG4gRsvv&4^R?C*}_;!*!2jo#}7~iMO_Dq(DfFujt8id zqWs8Mw#9JpSB&f-;OM$T#tHx|uowkVR3aHG4Y2fLltEF2KoRBj46x_LsG6cGfFjE4 zJz%}X=mSOJ(*q*b)e?j`l^|ybIN9hRW8DTUyaYv1R6iLj7qGk%luuC?VT2`gH2~IF zf|@7_pE(e^`T_e=g1%A|K64;q-6)0iS1EFXfb<3#D+aLGQWQr~iDax|z)DI{DMjUy zvDyG@FGVjY3ZGOEx_$xnyA=JQs9G|X_d{5JJw(0`aI(=(#!3V%=^;v{s83|9$ADEl zL{BK{4;iZiu+E35i=tcvIo_}@IfMdgsOdI9@ThWaR~jEv<}4(qRSyq&^wBN!&98FeGIMdF|vn%P$xpy zBeq#r!j6l$HvA)wJKz${W7JMD zPA~z1Wd9@mA8^sn$LJSzExv!Lf+rJE0qdU%6bS(*m-wbMp&=izf(lefQTQb6zcn<$ zMa>ncg}OF})Zq98`u``$2?CA=eE*Bk5C+)oCn%hvYW}Ypa^RxeCn%4)_7$n23$S-j zP&Y;OkQy#m!uq2UIY7Ws{u?M;-11<+LMl-xMLEEng`hG4%c?}#1VvT{F^o?X-{R&t zV0Hl{B3c8N)K;PwWFn&YT^Fik;S!fzd;=_ z#}yBNDt?Mes4HOqip+=%p2l0CI-a6V;tDd$6EVJNa0*7;VKD7#6?DT@$Q=SAAJgCz z%ncHuO^X32whF~j%r;sg!8`z{xC)g}j0&xaU|IosQH9zlW+&7r2|T&)fc>aKKPl=U zP<{mG@eC%w&yW`coJ_#NgTvheFyR?WBskK9Q5fHJ{LCK`p8g1!$Inm=8F@N=Bb(>} za0Os6eG*t!k%GU3msrBvWI|B zID@{O!}tRfP>TX729Dgc@zhcPO07j{6a)2xU@8H6T8pYE21lcW*vvg11P@^6%Y)WD)?j;-oo+P zFslKm#ya$hj5~|IiNpK?=yx6ZLou)sZHve8s)y-cJ@SEo$jK~xBU%qt;=7*g|RV!;||1*o6jkv4N}TI#9U3X88i<*MM#j z6loc>Gco*_4lWQ&2IhVP$|2*5!QJTuQ4L5<1FEG6I7G$m5_=C&Zv*;(GylJ55|ZpQ ziRl~3GYK&|+^8%IUE-h<2{Fe;*r91e=@4N5j}r+A+*%q~0v;NW5PlvZ_6p+vY((}= z9FK_6UBDxFNs7e)7Tbj4D9VeZiUBKWLZuWH3KR>E)dpC56M9Ke_@OP{uEl-<_PYuF zp(uPfBq;A@nEy2+UkHdAAVz-(lph`|5wN6YluS{0;{|`v#2y1y(Ttu@6x@D6l(bj} zV4cmV3#a~nUB8X(dhxB4>+$UiS+Hxc@9kP(iQa;eA^3m!emQOs?t3>FMhB!sIR6DC z@U;b9Y$YyYYlnxC_{8a};J&BhV4`>=a8a!&k+=lTi^QQh$>3|8Z8t$?6X(+6<-k5_ zMUSbA6loLw4|DGwm(`W74L^IYwe^XnjgQIXs5x^cm@^YGWz@;cs53E=G6vJcm}15m zMN|Y!Kr=BWIf#fN3JO?3ML?>GV((HE1p#}*N>v0bfMS2Id+oKKMVa!x=lkb_-{#(2 z*DCkweeFSH{U)GWm-ITtVBm+yzx#1XT$x z8K5>?)^|2D@e3R8%3jty$B5ow*W(~hT-GlLGtgCV>`82P65G4FHiEc&S-+?FK2(DG zWtggDlPX;ommnvU=u06)PUy-nCa_!Xzfn7j z-E#jO4=SNdU(?J4-1rri{OE9s_N#rM_Lu2J!UUrGS0dNA5mgE7N|}CDQJ67>o+2iw z?3npk#Q3iQ%P}KTt_MLVT~Me0TI{|f_kNuYZe6*)O&Eb!zh=KTGuW?>0yJ0%vK=qT+jgI5huyb}y9nm5x5Lq#3jLJu)~etUp|2p1 zi$r;4VI`)aD)m?hq1Y>E5Y5e#uWSXjty15vs6J+BUO5Knc%^A zQopX4ccq<~SJ3~uqK808kKU7ZRsxE) zakv}nCbw;NyAJNg75%Pdxf?at)1hRyh^rX>UDcx?RN^C6T$zg*E3T_St+}diZe{{? zLwBog=w1k_=&F9YnF;JQdzE$7%&Otl8{lqU)$a)-NOPi8&G2eu71n^N^aT(iLSCi4 z7Dz;UZ~S@L;eL%W{HqzDH&p2xEmN;SM`j);p$6-<(;&`N>1UhqKNEW`ML#lgXort91X9?4 zO}Ouaa8UMii4>Zif*Y0B^hV{=Ff*B7i>t=;f3=%CL5Q@D^o!qA2jmpS+DZMBzcEW@FYQ2p7!T;vwZxs61 zku%IZ|9V0V24FS%S_lyxuVY~0Cb|Z%=K?!WqaRe1n?;oXE3MJX6yn zuthDdMby{oOCh9RUt81$U>j@oO^Wies6t>xwfbR2jkBn$z^ZEXYl@m|Q9;)+|8rdr zhLC>!Xi+PG#a`D}Dk@mBxa|OUT-SFJr`hbZ1GCw-ZLHxU&0lAcI7QV~*TgPyXVvsQ z;@)Kk{y1N#b#f)-|HBJ%wP~GR{K&zCNEZk@>YskDj>wLzoq1y7^^?%LvoB9F>l{--8->}O38(E;TZ|aB01hW~Qbn;)<3~$`H zg3X}}Io6q9$C|mTt(5P3o82oNuKfm)Yxi>Z=?won;px1Dn%5q9xA#d8exv-KLwS2cj)y*{&7!{q&fl%qBO2g~fg>^=le{LPPMS2qSJ!2V zGnwMNS&CyYAS#r$*30*CVmCB8Qc#y8;W3?tu$Q~}e%WlMuhj0+)S9 zKO~Hx;Qz)t3Gth9KoxiN%4U}T%f@?%vl!WMug7C>0gZY{Be@UDJyEW3dRNaBMxghb)Q^aU^KYI7RD4%IXEDEX zTKZi*u!g((ZAD2-zYD*I<;Q#adwz&R~I^de#vg0?zOws4wCCzmHdz$*9LpWdI zadA-b@e^ytKBOapn_fU_5P)UwU5TF=lr4R-?h0jF{7+btmlisPYnD$WLBlAM|v=X46L6}as`0cNBYW^_!angMv-3-c}$SA z0+=l%fX#*wvCx~1Cgpms0+1NMl3L=s0PGH6dlc>~%%1>oGJu_GiPr$A4Pe(5{*5p{ zV;ZvsPh&G7q`xM<48ZbfY=y$V73Mbq*gTDGX^9sAD4fQM6ds6UCxa*m<-jVYu}Vc@ zz-A_X?|?vNn-<6dA*AOh6!lOL0QwXdmkR4VOw$XH0 zO4LF_;KS-`S`SdO9&gA&nk9@vE-c2Q9nF`EHv1a>!w-BVOCC=sy88O#w^8q?+( zlWp^?=H0e~=52pYni>dGPdu-Aw|fx>uG+UZ18iGum@gW3eu&2E%@TPQ>${_}`AXER znUYi5B}rb==E%3@`XTvtTc5*CHx{u#`L@tVFmN>zDq8BQiNkBSh~-IKo%A#=PI?x1 zCOwC{l3qlV2kP4MXadofavejHjvjO>Z@YNMpWb*d5W!#MP`nL|_i^+U6Hubd zH--2>Jg>TW;;+Cm3HyLBcaP2v2VHpLhsVt^bQi=|c*Ke75qNR+r8eq&dYj|vU=4^5 zx`l%rK-TVu2?nlth`|{Cvv(tNqERCo-5om|bRdrmyZYk*pu0H#*E?(`vmKnpHijU( z7&aXB))+Db)7#;e#nE1760^2Aaq%r~gJn-XA>Rg1;4%hn*w!QxMtdM%>{sPWrM`;M zsX#MwpF||y#H=tB=!B=I! zr(GR&P2Pu6=qN^A9rhnWUnWCeiT~mqtU$&TMF~YU>!r69rF2&)vt0{i^XE`uw0em+ z_u2>DIdOg;?HBMqJLWRm&be$K1pSzNM={mmE~<_`rJ%~@vhrpoej!be6Enil5QVXs z5Xy;HOasIxf=CKu$%_9gsn};ffZQ;4pe23*z{N0jN#UNt{A~bt!dPQVJS?2q!o%4- z2~u@K7Qppzc7t&A-~Z)FTDy6YwwT#D#8COm z6EFS_hokGiKS8`&79Q9kPuOS8PZ0MBo`;^)d^Rfr3E#%n&OAG9P8B(i6C2iX;x_U) zaa(nq*xuwg@iiI2gUfZ?XonayYh*j(i%u$8HKI$*3}`|n*{#WmV!iJ(6jdVpdcS8r zbG{FHS}cI{c^t`XTcTKA6f|wsvwnkm)_qtkYN$T$(f(BQQWh{<#sanj0v60>x?Ry5)*#)drn1KDhSn}7~ffloQ5HiGL z&F)&?WI!p4S*l|Eq@654*^60@V*I6@bAZk-W)~DQ)$HN*y$$HjV%De_+*#&^lB4yV zw}jc|FJTc7QU#m|6#c@!X~0%5VQUnHZ5^WL+IK&&+$HRQqM~G%t?y-EB}-VTqOjvb z^g;VR0QPVRd!(opmS2mOGTY*%Yzc%^W2Myx?VAB`!&0_Uap|x&mb5PfR1kYP4i0JhfeMya_aJ|l4tSx$*J-LZ{*J)2D~OZ`ie|QiXtoF9U-n=7GW6m9N&mHP zNDQ;hi(xAvRH1vt#{Y;lI6GZHqW!TDTu}@=-OLE4tNtWrhTLG}PdCBciedMK5rpYa zbUu&@^`D}aG24P=Y$1elAB)g$;rxZU2>sStaOum~R$&B|-@>$on>fG!))8Pwm$74t z`ZK6BIQ&*Mu$pD8R#6_H@`;+coY`hAXCV;u0|#lkpA>y74p{thmOzwdYtrj--gba- zDcQhA5K4p+JTBrY2=lFMD7mr=*7KLMayDuwPtyaF+PwFBfFsyis zO={9Rqt00m@{BrScIuLKcX&|mOf(+!LJ5z%DBh&rnK0n$i?={R?bI1FJ856z?Ips} z*jd?hJkiU{0QaDbZ zlj8kK0F|y}WyE0L#XoHP^mf!4@(}m-I8$|u2q|K{9~-GT%58FXFK7lOa&J7Yjy~f4 zoPH1B_R2Vx8V4J=oX5PE1J_E4dpR`S*^p{X8|QRBzsY53{pcb-xJc>MZD4m~JLv&l zs2ID>>C>?pNQvzl)dCbI0rsR|UxYFN@oaXyGh&yaL=#g7s6L)G2*zqNv9IWDY(XRg zZ_iC&wy*@Y2tuUE+veJ*_V!vJ=?QF|BHlB1=DeK?=s*HHs2J?(pfdONWk4kftW+`B zL*`G+eLxQq*h9r&LXHaK+Y44<0KSSXf{+SepOCPV4rtvfwq7xq;}I)>ZyyAfw~FN} zigr?=3#PqY2CRG)t56ih#dM+`0}DuG(-NIt;aU`vS_&*Wk;N!#8>k&*YZI`|iEN9a zFi~Rqbr{%@M0QkB7zCRRUISL0$Z8aI(Xths#B4K@*enPc;%k0YNT4Wl7Xcp zvs6WG1|{M!8(2;<+oz~(%hm;87n9i~MOkNr-@Xg%UNXC{sB@OBs1!5+DQqExRO1RL zpMMI~FdHUry|%C;(Mqvh8TU`JEgF-2urwyJ^Eq_SE?<%1F#duAHipEMQ%A=Nky zDxQ)u4p@8|OHkBh%hoPnyVKYnMb%nsC}zhp=G&0wdfuQLjMXtm8;nm#mLR4 z{R7q@`q!{P2;pIWYx8OUrGTQ>uo%Hu{$abQo3&lkZ6l~nYuIkft{a*nv0c>dB%o7k z*lESc?V@fs0Nq@}ZYidp*@bkQy_VTR*RnYfLX&rJO_ciGJ64Krn4-?xS9UEdlpb}Iy+}E?^)q_uO3iCI=ihH8E@}}twZv!WAh+{ z2JfLqCp3638BoePma3SyO@H3Y0+hXu-!7WV+6FGErt+!ywAQebK(2z0IgroGKkS_cCYX7jc2dn<8)kA>S?|@ zJI`;L!$Ix0rnLWBEUrK=Y*lu{g;M34BpT z-!A}GxPcWB^}mfB+UD9?)hlrF@dmbdqf;NcTbU|`_p^XyZ)7<{{ckc z+RSD{$OxyyyTVpHu!PNQm7+31<&%TEf$iDM_9`mhvULX7+0Cq2QD-e%^}rf7v)hU) zvuuTL!PsgGn-8J7*_hDyGip6}_~%p*X=R|n0cU`n-NuR)h2gT;8Ze+9Si?4UTTyfXom#2^;oA}a+u3{wp~eSRync`h zC~Z4itr!`vALIbqx1H@*47OFGGp>Db0no+m?2=+Wl}sa`yW814#r#Dw5j&VIatDio zkQ!ii2K{~QgVli6>|kpZGg&hG0p;#s2NW|6F(fQq0(N-^D^V1-)0^7e2likGd#ETJ zH#4b)J5d4eWQ!rB5{VYI9$3aswn0(21jn>>2w1^RR;Z{d^6Whc9;r~(<~9|Z2g z5O5a@f{=bu)k3N9!7^aWcd-?Us<5c7z_#sT+Z9!3QOAHC-^ETS>VZYo0=vG8-B45r zN}lj5WH+<^E8fk{DQXj_XbM*Y zu-m)Y9YtkXw&v}@{MQ~90U_0(8b#Pj1Gah(TcfDcmaYB3a`&(UilPg5gsscKO7^f) zMPXvW4A%o-5BIP~in?RjTC^AK&tA3!LaH$X-A54{8NfE|Wg8V0VNnIZ3iq-iMbUKt z!qydFSNF0iMXhEs+f2`7wxCQl148<>&9b!|*osURtEgOy+6HWUCflK?6BczG*ojPb zQc(J0+yJ?k`xt+Zm|g0USOG7EK5<#KnuJ{!5 zhVpWH=A2w`_Im=PL(j|0&tLqKT*u-moP85h=QKAs7EdQP2j&FLiH2p<*&Vfr@D*Sz zPdq1XJ|DOPUZ2TkbX_h_!5`16#MBtydKF%V?1K zVIHvj{p^sUsKF6_l>@8T&ngu~y)5BZKrRMAxhxPu`i1*wO_=e-F%CJ% z7DEVaKC;fhezXqI`hzS(G4c%TM|ptq53)mwk!N5(Dg#u0kX0xKhfBp7*pD6odwh@u zWX;$Xd|#qd2F+ya1_U+ihv!?V@DJvGMunh1@KxPt5#eD zQYKz-!TIQc<+E83GQ`WBTpYmoe3qa%G{!Ojy8-UWXL}WgwFr4q_oK5wi}TqzMbb#Y zJjVOc9iWZ*?5-fKR6yPHvGdT*$5Dq+4i2&95JIVsu>dCeT_0}&wDl0%rkH_}IRfbD zA$CkLURnn`^@cva2CVuJt5MWAiwZ74@C(>12yIH_)DGFmQlL{?lwmF4tE`(Hq zwqc>F)ILrGmQ=`+6_sRBnZU9NS+=4ugJ{}12kd+yyP&8w7Ig<$Vhuwy2H3HXUZ06@~t@X{!j>;lu2RqEOSBd8P{3wZp7hQRo7iF+bx7 zc3vD|Ga+P<4}-!wh4yhQu$4zxoT83d4(Dhpv5m64Afy_&C&8rF0!u%})+y?yMI8i|cZ}sLs@|f? zfR!I(6^g<*+H~+Suz=%i+Ht2}=qsDlQee@?S&X6{gQCIO$D4p{KF+o%3VW~2q&y7l z$Z>X5QD|e#q`U^K`Z%jm6mD`b9SlB!@_&NOf{;O;kJbXETKjknUq>!K0QB$#dn6dE2E>xqC#<6xm`@g- z#4zY2i-izseZsm(W-Fj=C)swzylgg?pBx2r>?Av`m^ZWz=uv5(R0FCx$!ZmYGi9a3 z1fN3iPqA4L(jUx^QsetcETEOASR64pQ-xjQ&e{(f4M|sgUdr9xlgw_1q0Cb(kIdo+ z9M-_7#r>oLP~|Ch#dO6wSL$@>1Jk9yX^ybS$S7)$J_$ID&hTj#1tHyfism0a$pEn7 zG~1|f@dcGn@&M$YW`_iB#U#{?v4B>dWpRp`fhIJXsO`XZoMk%|g+|7-bpqJQv+R_jFtRpn z-2is;EW1S%4sChjlTiJK`+GUlLVW*f5PCu{&@y9xJT8N=(5np!Ek<4}X0Z@L$3b+n z4e2;22hhG^wqG$rwC9DL3xF;bvrEJv_t2-Nth9NL(tHrDJC1`NRpieL|KmZ~wLo=_2|q9e2VxG+6yyXptGsF1`UH4m(HC zt7}J3a_aybIdYDjwY>2_zXP~O)OmC|&a;IOBAgb!8o-+KY^}hpQ25!nhk5IP*k9@5 z=nEg>$QOraaYwhVJIKWxSlM@;6)G2T^CHX)66TuNu)B2>2bnz{!RX`jEZ~Au2P{oe z40x;qwEhCiP|P=GDtP1p%D=!45re~+_%Jl)r9W?e<8=>nD!M}timJivml`tSs7zLjMBKaaqQ9Kqes8=&M7tn!=?4V*W(wa)smttk#oy=SY zS#pt;Dl>!03^-+G#w9ewm)J}Q5&44|Dh0Tr4Nd`+dWoee22ouZMkUXC!w{8tKW!u3NL7$1O1#WJk$mL=g+$9YT zd^YDYGRS3?2qAR*jLtcE5K{oC@G>h>%m8yJ{#hlUE0@_-#e6O8Oe9e%cCjVi0N{2RyQ6Tit!~KNax6ZVvv3Fz3q#E9c0*PHNGxYb z3U@bi{g7RNc9*j~it&)lDL|*o*%`$QmCQ{*x5`Y{r8c~DnN-9 zEJ-og;zs3e$R0p@D_Evtu*D7ak2d5CptBXMm>6t3!Qou%15wTk@tc0OtFIaF&-W6E zfK4Yu*mR_x52|tVAf$IUyis%Ta!+!;4(^6kvK5t1Wv#|%$WdU&D%o*GMZ+cWt&br! z0BbARb;Ti%Ja2!JoD8{w3D7Gn6hej{L&@il6SWFh;uV&psNHZfl&HPHGOw^KMePSA zGDb15b641TL0K8=KWzMSagBr67xejUkaw=IfUDBe&vBcGh}zGW0*b!MViY4znti?z zz^1Egb4&aXfP$;6P~qaF+2>^d%CEADmiPkz53jOE3di*Yl&GIaRiT2ZVhbTeM0}3b zM>CE-Ukfa~img-BC^L#aKL{wViscK&3M{T1_yXM=H-{(O{h}0HSrx0XEPo-+ZBfns zMesFrK(4V_5W>qZ@Oeqo(n>&a*H}C;y3P451^Xz!;iKs|hc0)C+2nEBUhcHa$>6Wq z$cc(Ks&5D69BPp}xlhC25qM@$)$_#;xO?~-yG+j8ZBJOP`eXN!*}Cg(d_5=o`Qp%j z8$a`f8K%%2X^yieVaS-Ey!MJ$7irn`D0EJ z`=w~}^;6Jyq~@T_(4Fw~605Vl@#fkKYN{g$0^0clASw>}ZsRGRUh3B$la_|&A1dtF z{mA+Yj(mLe$HfKjRCvVR>JR8;PJEZ=roQOP)~IPuiWT;`ICo&~oJ*jh_Qld_)MM3b zMvXIVT&aHhVplC{pIWvDLe-lu+W42^=&Uc*n_r#)d9s#W6lPFwera}czPtMbDy@XmR+b_{1RV4bVjzMOjlmC6kk4k29|F6|@%O1{BT6oW;nIPxbGP}U8W zt(b2lQw-?b4R&5J=nD9dod!U+Z?HRxnTC<2a4!5N*57Wj`4Cct5Q|C$mUfe^RuoO@ z2wVGr?Z3%#6@~tG2RdD%eR&Ds<(sTTaj~+3`tkv=hd0?HMJ0ox#`McYx3KEs>HX`$zH6mZ`fTPFi zSQ)wfFNW6QV_sjPaEPIGgGNJZ`yWLt)uU5b&o)3vz3JLUf1*wUJ5$fjDk>NwdJ&{L zVDrv}4mGd> zVsKRtK5OmW37og!RVb`ZY>#Kf>8PQ9p3% zskfnG|5Z8Mzuv$CZi`53YkGqOktGz{R7t5O_dX83mf%4a55dN%+w2lqL`pg>b{Og9 z={wxdYvh3O_<-c7;rMi<*7hlH>mMrr&PpDwHS~G>%&_l71mQbwUp2X|)Wx~GcW~dF zcSwB-OeZ(|K{3I{=3;~*Gwz_$xWjTGsQPvKgg`t^HBJ*f^navWn}4DlR^^3qU;bo$ zytob2!w8eq%EROG^$yVxQ3c$|gCg4xkE@6CE2Q{u1fE&cG<_A;h?(R@RtABV;+aw2 zzK9;Lk#CE1_1ADlQoIdl`i*8!Q-hz0OU`uoP8)B;idTQQixn^FgG;k7WK-gg!6TCX z9pU+=yI4ZJ%PJs5&i;ytPLwMtmT?aiz&*ARLS<4k^+QoFo3{%MEd*C|kDV4q5X(fd zr*%4Y0)Lj`5#9QsH(}t`Jyxg84KWWp3|(>`)35hgG=xxKD6*8e#cAjUKpXF~O^U(B zbGX=pT*X7_-gzwkP~>*SL+>tw{b5EMS^!&x_gRs$j7nK_#fHv)fGM8`Yz~CS_ad&k>GN>&<^y(LdApBPB44*Y#01bowjDxhTL=m+X+w_z zJN}TJP}EsaRP_w41$O-*yP+tmAV~pjXvib2%OhHs2a9pY%-gv%JX@B~w${t& z5Y5~b_cbb5H^HIODw)3UYzsH%1LV13N0aECfbjO=0f)2M(hjTTZqLA_hdZt_qx4#YwA}sj0v$HSD?f7P^-|$Hj{PZ?#^rVrj9sPBN6bsp+ z6?sP9&h#s9^ZyxIw!AfmzJJ^fUSpA8G;$Qjoq9rJ^H}n8D6;*`-oHD69q_Q*)M_FL zZ~~i}agipj&!HxfCVO`D!MkVxdf`p`x(wl1JcI9?f#BeOp^^>P(ESAy+Wq0A_LmL8 z+_o{8?}88+_Al%Wb0hCxP5?R?%ugvsZlnFnbwD?Q`Ax<2(*_CGLS}N??3p|iLivYt z&ckRkMJTmN!{Wgu%;al?5k&qlhD-WBAZ9 zh46SqVO7>4sGY!eh49@(;c5WC;p0bRBHi%y9_Kv?w=?(+|GP7{eq@$f3MtlL#f76i zD6G9+{i8#)$&~cnk#n?Rr{G*|2*0B|JO~>iGS|#TftbzHA*7l|EL{!&J2;!?DGDo& zVz@J`6j<48Ualx=bcBPCfIXhg145k+Ubh@v0&Hn0k5&|Iex1S96BS!gu%3gsk+Jn*%h;MRhudQ2@Kq2pO4h@M zKj~5o?A#oFUQydEU2X%rGlw@4^>1|fROv#;N^+>4rNnaiZ7W^o&*iq{xqLl@)a4>< zh={HPc4aQVs;Ej(A{PaQaohAT9t0t6UANR+25fm4U!kZ67PS@FwlKb3QM5r$ICu=$ z@i2ZuQDLA&%GCn99>#AdYAGm@av|ZU0K$1Fgj56P+a2~f!d?QYRgx@^D_OoIC_mqN0hK$88Jd@r4jlmE)j< zBI&@^&ExA8bq>^2O71*h`SbW8qM(QuZU|7rqW_}SVi>yu!)`msbUBRG&f|BKL$nbu zpQyHxv5qt)Oq*j3nB~_LKTM@xyiDEY9I{`Hc8|OVz z)A<_#x}tV6Py8pHwdIu{>=Ab~l3GGhMcl?H|@%JJ7yUlv3q& z2=@2uZ$E`_q2@>Z^`ZSmvq%oYzuhB6{6%tGY9!wX0b6ZGOdd7L%g?DQE)S;ASHU4S zcahw+FxVK$r$zlM^EZ|G3$&$o{r*||E2lI%KRf3oV9?@UjTiK zW|6Ls@zz*7Z`_PCdiW&oZ@n~b_o_hDZyyp(35v!od>@_yuwo zJtlv|iSGY*oWS<=980*&nE4QWieJb(mgzR3epQs) z*b~U5j;YPYmU+Nm#}wqN9!Q$M1}{XfVj)k35LxZ7tSfa|{~EFgg?|wbg+P+w^SR@& zVBn3bhMggMo|5fv=zKiyJ`y(mwh~6u7xArR13#cJDM;n;Z^r-~U&K!c#)=s9T!y2I zFB;iK;e3LhuT&x_`^`O!QALb_w($pBKKd8)!E3G;gaWJdF>miTD^ zXQKI8g-;RYZveO%&2P2DXT@+^NDQA1VZ&Xi6m`7C9luLu6!r*`FCTfKZpPJ_BNz}W z9)5USnnWo@?ovGFk^@C<)BAo$#KN=m7@kLd;s@^FUIvP^sAXt@z=f*OrfB%{cmnq z_nf^PS}*5`5Qvtx-s3%eCyzwM)Yj`e`6jEVF=o5v$#B@s?LD|m8PLTMN!Q2+;=$!q zs7JWCp3$=u&NVLQ(^km1@WgmajN8bh3&lFsFDEHUq(!yoKl>SLcn(L5GUCwGUBJ+#$?AXT0t zE8%WKET6UVpE@5Vo$umJkxZ_S#Oz~Jw|%00{MlXELx6uY{zY^@qX{4O!|CHIc?J1^ zAK0Iwb#x4NP?T#UljBed<9I3rMVtJrxs?(7n9+u+#=)L42bq-TT^#<=9VtOZ?uWg@ zar_Kf$N$a|rI$6L^qLXRZNc$8971^SWsNAkk^m*g^AyF%5v5lqpsaYFtr$6?^eP5) zE}oyam{IV@4RN83Y5;UQp5IYS4|C)?Dm(%8e*&KmAv73;%{Afx=%^GxsR=wyG4Glq z*HPJkauWDH!C2wKM&i*7J4F29-{|w8E+p_uGSS9n*39-1lf8XM;>adrhInP%7&mrg=C7R|v2uksnrEl`M6mtAJfg;Y%Q-8fBKP3}749@QsS9wx|MNg==_`qUtRNuK>HchF2-- zfn{s@T8#hJ@);1)uOKcpTn=o-S{|z?Tu^B$zYW;-wS0%7qAcn-uoG+fNkzq2)OBDt z*7BQ*N&sa??$t)mPUp7JbUp_{>aoVjB?3%J=gEqDU1KhKC+)4jV$*~+ItxU0I?oZj zRSBchKL-70(di#k0;)8fS6eQO!Ti1G+K&lZ$89s#@n8ty?-*42CbJySigi3zF>dJe zqj({M^>guu$78mF+qRBxS4OZ0i-I$z7|^+O{JdhYBSl=eJf;EI?RET)qQs45W9F?# z=3CDrAfzTHo(v#mJx>+56}oOV?u|PQnEAa7Pfz&iy%#1j*YiBf0b$@*V%<&D-QHKh zRITUNlmSe9ZXm0(GZ6b3d=A9F?!a|1J8<4~-;>)r!rKH`+Lpny{_pMjJMCVArG^at zi0o<%7pppJz42x6J%?=gAe#0h?ryhb{EdyUUp!9fq7+z%v2>oHH>7QJyX$)K-% z@@cin=AXY^>*e!X{Jx0aF5>Cp^Isk>dZ0I?YwjpFw#ZF93Ibv1h+9pm_4k@`j8@Hq3A58LMd^|}F$zqrliVU<1ovCdX zS=7|Gb|W{V zFmC4SAVfCx#*G$)7XdiDnI9n>XO-wuU8g(ZTJW*hcR>0q#pB}WBR1b^V=H0)`exqv zkE~&K-p0o=H?5`fV#;0MW{Qv2l4U`>uH?DC><~1M{1<^4(<3^ePY; zN@!dLtb8l4P!w%eOe0&5fdy>i)3(7D_9Dnn*mz?LMDt;&!HIG%5@Bbe=mK_$kT1RD z_P4%%SOn9=eGUZc`k$v``OG?H%9pm$CLq=gDYp5_A>Q$>2FOg`OqpN zdlmzR=^da0d1tZNP!KWc)eH+NJ{wUM$ZW-TNfo&z^~ zC{s!uD6H>N^zf~aJ_ODZzNAB#eLWbSQY+n*^TMs-FzE_jkP|N#5FJMMD%hFS+IFT zFoH{RpXa3Iihvy6!;iEgt^m2ZhgT_LrfFl^UTzEA%cn!gAWC8>km$WUMiIZ&-X%Xa z0NJ>gZxV#n7QcmjkJ%FTOVQN2Pr%H9=6eW63ik4omJ`0rpS1M74dBjR-q;ck%f#R# zlh1NJ(MMv|$?RB8BTLB*5% zc$EsoOe}0s#pqkTALVvGuZ57|n{QDwb20wQR^?CGg%{Yw%8=uP) zl%WFHhtHzEz#NtNVy9U}0i7x!Z*yV(KrTP1tX2L)Yu{Sd>_4|ZMHU~y#^YQbZ~#g% zTYGcD%VW~;N$5;sC#t{yaIClM?XXeY(`T?BHZD3_iCv;{qvpq#&BV%%A~pCl^IxTeXeY1?|glHMqk^85xoyWmo&y0Z z?MDsw_Qhv=n%Vi3+AUwU9(K_GGovTQ`9jsI?_L$%;0rfNk>d_8a~jE_4DbH#bQ%yMTO+kzr!>Cp%J z^v7fWoqTD4`~c5n`#2PRGrFe6cX8|TVtf}N?Bl3kO-4{Rn=-yj7pf-4h2&#NDW8Wz z2$jb%+CM-{J)nksep@jQ!Q{Kch3$A;gr;GKP#GWM^B|;k+NA4G_BR0Ac!+OO6mH5P zq7X>YA%3_OQ3>SAA%0a6*ziU+0t&coS^*D)kiJM_36P})JX#UB_M2>E0NGH$H?|`3 zfgCE}1&T;Uy%I-u%7B#@@Crp?utCIQAOVGZTA|Z>Nh}7kq>wKq0+%)W;ahUvG=y@F z6LdKM;cdUgNk3d?@2r9L%UtmCU&&Dv0j!aXW4jP}o%=>3dMSZj9LIV>e2>S~-35P_ z(woDdUMVqM9obzSZXG>I$Mw+RbRn-IRj>=WrFZh%i@(MK4}(7!;13)yJ*lBJdo$Pk zU>{75?JUAPO%Xp0A>+Hzv>-mv_cB$5q>2l@WY9}@{qIy2j0-u8+;o_SLLf}f{IgTo zIKqj%4~wEd6VAj|aRgNxmj#``Wm5K-VAP8H#k*Xh=7%07&5xUL**sEdFHUY_Tu<{7MVL2qs^%3UYp%r`|fBzVtapNYLi}~Xh9!0BslrM%r6wtlRlbRl=6+^G_ z>@JEDm17YaM;{+C_dk9gEFC_|&yZdGKqVY~r-Ty5CLx)$@zai>D|U=ehmdBLzznjC zHhvYb#A7^3QJAq64e54dK+Sm^y_ar~iins{m(n)?<5tw>@4#_UcR+I;M*9h|N zNq$e6sX=^Db^a9|G08SQ<`lOrJH?knNR@C)xag~n-wQ1B6wgu=%|xU8YvYT7ojb+P zD{49uA-oOb&MDs5iU>cA<)71hK7{lq#I%tNB;_76<2Ns z>o|}T#r$L|q6SE9F~6<|d=G^b4?c(9|2aMjLTVt16+mLo@s*0W4gWp8Mv|?qK)0Ra z+Z8zjJFy}cj&mdS1mKhB_$kFMr0yC~b-?P+@diaL=g>opz+d#18NVx;3_Fib$ay{w zLMoO5N8*L=z_y*|+ZDAHlq*rkfE_>2Pbdm|iixNNa{WBNAqcC1z~!0~FfAt*xhBlK zfNuB&J|9AOI02Vu!sdh&0I3&vT1z|=K-LAGt#Hid*io@-6V3oTdw~}#3M<_^h^YtE zaDm@ej3+En#Wx}BA_9Do&x1f?-(qYt!kk0+<@?msPoTZHRwdEB1Ky}1HBY!u?c(a% zbP=7Zk}(uH6H?%G#zme@KHwD6qzMzvZnF9LRLmur=WLukc`s}4*#!0zaxC15z~eH~ z*Z#)9p5$QYB{U9~_&NwI?zZ*zALKRK>pP7-F?{^U_r#eUo!ck)$ybAqr>|4DeL@V| z$ZOV4y*uak&bKkcn#uOaw^IyPTZ=iAB)*5!axa}7#in;`1)o4$M;v9)i~2qKa`v=1 z^5chpI(baN-w}9%K6Im4GQnvU_}RW?=g*(tx6kUCxgLA5ltOh5!C7{h@4M{G2-WZ+ zji`(g^gv7aMhKZl#CgyO1po?5c#*)Z+=brXL@ZLkXKi9Rn2Hj9-Lg0l7w8EhxD@5D zl+S_?E>5KUNH$ggi7n+T74bWBHD}^hK-)_BcE$Y3+zUSOD4=7d{J3B&HLx824SX~2 z6#S+dTumvzO-49fRe`zmcg+vRVFDa8>sWM0PVn=hwE~^iB%Bjjxb{jU!i!T(IWQ&rE{<2lZ93nCSD-Dd;PWA*p>X5?{o`jTL>qx_s^FUyDfaPwa|FQA z3VuxBR^x3cb?oa#vpttDp(-eT{PY)Dk^I_;vB`+Ye*7*(RIORvv1N)B@ zMU$`vPweJ1I~_h#;ZP5Xjg66!@O9E1I1zA#&%e@CHJo*xj7wq5?=|6~Cg0#iotNKmxAu zY1f>dOJXsQCD-^;B5)4eId5*|ipi8{li5lHgQ{fFQ>0uVUdr5PjY%Y5FFSgh+T`_c zXV*2pU-`2G6Pn$K3aG{iyqX6>$au|?;Rg~^&6l+zHUimH%{MC|PfnapE&x_o&5IOu z2pWo&*U47^UajU;io@I_X%JL{<>wk63?Vg;#4;euYxoL9l)tS2($&>Z%>?vOCYQb zwY|&&`vL~NI`SdiY>o!2Un-tX9{BSC9`Ui$$s6Fnt{c2ic~Awz+0oSCirlJRXycM_ zLd-x-z7H!8Zt#c7W*|DBX{7b0n`lsO@+}Zlu}zpXrpX5PZf4n70>e}`L^+6M=m(ZRl*}4HYwLNsVg^Yj7tn!veo!&^$`3Mv_T6PbCH1^iF=Nbv z`rUm%59;|tVyKR@ru3}@5NB7u!c$uQ2Kv6aF-9uoH8u(*DS^mCc<5RHXA8V%VWeQJOd>hsAZ5{_9 zJQn&&W;}gb)XX7ME`hjwo0l}>>C2-2ru~3BsD$tEKnU!=7MGmr z%Z~5#F?HULZCvAX#^Lwjwr}HqHVmzRSnJx3zkZ}|#9FcMvj{C%T(2__eJT6p& zium!T6(y=1y?T-d=i%~=dpz(yJU~_4VzD1vDMXL_KY|f(ifc4pqB72a17g>@y$WyG zmxV)6#w3P*7{5C0y0*XPl*)V^Q!0Mn2U zcshiLpYO4SOsrCiYGtsyi{t0-z6|&M@X!>p_I)ml9(ceHl8yGZw)7q9krU{nhhh|H zee|%+v!k7-pv5<;{q?rb$j!evc_AR(j)P$O6Hkxw_Vb_Q28aATyl@H8)9uG2<9Uq~ z2>aPHP5z@zPrSoZI8H4baHEXM9h$cxmk4dxq9_9S3NEP^FX>v4e7mOMCVYXd)UWF8 zDZwz-#PF6bNwPi^%cnN&d()~CrCuM0yC(!CUpHUp+a&j{?}!A>0^UQMIPHcv*GXM1 zBlxo6&`H!7zJy17P@1~*u9LFm6(r_Yq(1ZE(lx0{26nzGX$hx3L`ODM> zMEumdi1ENje8VF|Jic&Chp#C<=)}_qjpI0-A&$MbX*<%qtHD{#;9Q{y_iykSEb;P( z8S)F!A_fp<+;vS=3x(C?op*d7NMmvSnl$d_+h;XI9v)ZJGv*@4RD1hAcqcpE;;om^ zmM_9QWggcZ@f|(b6%no`U(fyz>`C*bk~;O)W6aP67#jlUycZH@Dx;fwU~>?jmncfb z%SgQRAcPd|ji;OQg}MfDctlbJT9kMp>i?Gr>PS7-%-skQFWucKrjATA zY)7XV#~@@(l^~|{#TxGIBL4n#!}egh@el$T#rbvdCifvU`Qjxvtj|?CXKFB6EwV`m zY@8M^|8YjX^g6ARpO~zo!hW7`iQ5|%FU zTde~Wqh#rUo#_zY<1z0xqdscLa`xO92<)@&oVL;Ev{~zS_I(mEaQm4o3tQ5pdT$drax4Ix-!eSY1#Y%UDgg6@bZU{ z5W_Y*#0Z5DUj9HA0SYD_P(p~YN-_Anj$n2H+8tu-Q4FpJP9@h)0XiLGoKXz!)j|Hy zez*zfR)|rjm|R4Lkzt6(N^wvjH3 zqWbv}Ckn0IGCv*$dSte7RFT6KSp&3owsBpNQxrKn)Ubty8gn2-9Q?@8xI5iV0-PLb zq$n13-t)Bb@Z&yU`$LUfMbW+RgNV8W>~g44LKGHm#k4Et_ulp&K%WtD_SkUbU1Vwv zdj=^y**HPj7TH0pAooBfa`}4X3pA||fu|4Ev}5s{#4{U@tM4!HH;&$-XwOU*z2UKU z5>S_p@$}PG?Bx3KK2!;tW5mvB8qYts@t@2IO4QKWPjlzO%v@s;goufsFtgafP6_za zdSDrIjSWO$PqV+*q|YXPC~ie_2F9BG`xR<9INJ{c!46P_H16c~DgIJnp@jVD5L_vq zYgChCy4*h4e8SVijFKMp21omfiHQm~YzxATg%Bzu_O$W;p|gy1VX(VHTnF?& zYhfZi+}KJ64c)r&tc`rZ9IQ8QhgnhMDb2f$oJO}@mCbrDt3SG5!<}s+?Zfn3nG4SA z*s~ruQr! z${2BY5adX(O!*r=}ei9BGLAUuJ1Obe8# z-MgSyr2Wq+#K@g+BV(S7^#F~^uvjn;&~D5(Y&Yi{w;)84fb5AbjXx{~XmcZw@gj_H z2#franqM`|q=HO~FjfmQRyBuvfl3Qq!ArS8e7`nQ`>7mitaSBqrVq6Lf}F|qrI2!@QMCjBL`!njI$&zlnT8aChzW{GkOMj`=<6n z-%0L6F|H6v=qffr`QblT`(MNtjHhdfP^3J{Xe51{A;WxlkVfYsu?*@XW)_3A%?k|M zmIcOM2pdK@=-f8B^D02*>Dk&gsmyk*PBZm@OE}^SPbo_KP~1{>a&g!_oUhT2Y%2$L z&IH;UPj@QtFX3sDQz_pCX&0fwl?6udLQ)wO=?o1=>!B*8!VK*y;HrhjHDV20dojM3 zk*c-aQiCY;W^FiT0LJkrs1RGDmT(y!`)wJVXWlmR&)?)0_(pA}?08YJeS&o8?aab| zq|j1v>UdS$b*ZG3J4pco~Bs&K~g#Uk~uO&`s-$h z-j!EC1!x;JS_r~)13BBr9CV6MP?CsHG%p)KDScE;LBS@Za|$J31fK2=QC9?OGnN>( z$R)-W2o(T~duM8>Z{1;0o2e~ZYS@-9HIg7uMw^xfsj|(y-41r%FsB_!yV~e3^qc=8 zDk?aV3EM?WjWgs3e#iq{(^Mz8;Aq1(GuoI1VR0W?TpYmoXd}VmW@)0Obce-R+HRnG zqK&;xNSqlVrWnws&Cq!0YKCmC6g~u4Sc`?Qk2!y%iac5ld zAT0br>qupog6k5qz(d&F1S@-Dj00p7KjiNF+6z=dLbU4uZ^Rfkn{Xp>T7{xHL32VI(ynvDRvGSpc(F7&%QiaRYm(b^*}E6~?93Oe3JXD~x-@G`Ut< zuKqjg?~l!RdZ`D^Sus)x$K@z;I^j_hR?be9n6L`fB4Q2Os#s$)gi1#=H*;jojUdg@ zZh*ZRYuqD4PywGdnT#_WjJ|Q=^j}s0FT0uk!#-9!X+TJ2UijailtBcF!Ii7*Qy7#4 zlx&-O3a=Kdggz^c%@F?}E5Afp8BU|Xd5Eug&CvqlFdB(7A|dF9SX`3)fpBa+z>GL! zgW#;vgZg4FHMk;^&eaM)7RDK;Ec@V)tER*LTnTX9BR6AqnQa(k{eHy+)Ocq1G_ z_#5VQGfYbXm>O@SHQ`)@g~PQtfbj`NLK99Z9IovKxF^BbE4U_+F^{Se5gGHevmlETj55nU zxYxDk(xC4=?GeDo2}Zyw=`XlGroQvEr2wN>88H?&U&9Rsur*)X3~0+LV{2>XFrXu= zjH6AM*G)TBfUd1Fs#`NbiH2=Pq7e+yEVshH-=YAz3on<0U6E)c3q!~eATh2$%u@z* zIY+TSU&{uYlW6QCL#?Y!aRdKgq}?4qG_PJv`1*B&Xw_rPVHS5?y#WDe7#|D<45Y zkVVHi!ysnlBectK@>-Jd;2*mzFU5Qo-y#w&Vb-!)6>-V zb;F^D(G&dWU?O8UgzAi2c{^p-{$>pYXMStWa`m7{rO5cdsG%aYboiBP-VCNsuKYzrqDimp$dG^H zhD=gm6!L>@;HyGjk07@$arXVsLVmCfd{xMkm!i@vb(X{Ma>{K3L@2oppuh|8BbD-6sX5GIH!5VtLJwln61joqDzR8p=6 zm5Jgs;4{mdt6m5|@fI42UqPBaP%{2Q3-}MC z7@ps>lPd2-F*yfYF*!~i3=3kFP~g@Z@{hPMq8I*&LN=oy-$+c1@7>i9q}b$U(Z{oR zg@XnY#Mb-^e7|}J#nAiLBo#qPj>Z_HErWOqnfjIQUZKS)WmQ4z>KK>Z$oKzF&tnbS@ zeEm5!)CX|S^vpkLvr~6IN2H)A!fvAFTP+Y{62529!|;6VJ3o4hiIe~yiQa+b-+qCz zl?;aD41IE63}S2JTj5c?KS^o#G3(4p_2 z`sf`(+$z`ivjbWP(OpVguBL_7Kh-SLxjN#2HmPu2C-CwrzGo>qeL1J&eHx_dKxTzq zNEGt_0Qg8-=}cV-b})AI{wyxCK?#PQ>it=#2UzkN$+NnKA>zf@*NyE+>!nHJGy)pE z%9*l?!_(Y9bO!8-OFs1i1z{8KxG)-KUHeo^IBRJ-><#iEbX7b*eqS?PfY8fVIkglC zV$~zee_6rF0{gCCbKORD3dd~n?EQP9;)%&(MxJBM%ySmP;G%&Kh&lIUY#)gG^PB?) z_IuIti?A04EnoBqz~??~@fVho2=p3!T+efE7#@E^W7%Y}bT!T`Ry)}+B8)<~bqci^ zy}>s{Yz11n+S$pDP$>ZZKnr|K5$8ZWzuLJ#*ds3Su)HYTV^`=ku)}S95!e({#IStq z%H})MV0@KNEFvECxe;Ef@|~LhgU`+n`)q`lp#{#E0yDXIdOMx=&v<`7UE~2=UEmb4 z8>AK(Qj202>EZy0wFS;W13QL;oENZ%99RiGsZa1`a?DuXpGp@u;O=IDbIWj!mjvlJ zlqyeqeDsj->rv(S`3N5lq}qsageT$CTE@G=hW>;_H+RQiIqZl~?l(c0MLLffAiMhNMnt&00!3{@Q&vLse({|QQ-pCYLYG{t#z!)Yn>@DEXQiWZQN@{^!@`H zR@2C95SXHQd*Q)m=&*Wy)~RnC%hEVa-9I~_FZO$`nQk}mTRghLRsZ+3?rx<%xdd0F zmB9Xy7AvQezZ{Du4|P?43DNf1bNHfZRm_(3z-ffyirah+YT#@36Cx8+ex!HP7)AA4!)=kUqo>j!`5SHUhm9=fiC7T-r#Vz zV;{IN0O?CkQ2P-=Pfrmpy)1+FsaMe5Bib=&r%U&5Z89^`qfI>+RHje}^91!8)E83u zQeWQY4g65mcpiR{xJqzzbiH$(855ou6Z7Y1Hl$OSr6{D2Ek7y+Z*-&r-spyEcM5q7 zJ}o7Y09*TTVt*L>@I{kl3R%Kme97u#=@hAKet5M;YxKC&|<86G=$zlIM7k^T=;^3GM>C;64qTf;EoH3Z(Zi}z= zO6MdL7CTl^u~Q7gYeu-4#ygAY;t;5Zi=86|c*F}t zTuM)1z{T_jWpomrzhDWFm%(CGIFk|(dX?<`{eC=_`I@{Dv-OS6Y8bf9V&<72{%kk= zIFerCI)IyPTtAZ#B5%J@X-9RS+#7?B$1=jA!v*H%8|RmPO_Srkjz|Y@awczz>w8u(gLVhIeH_E8s58X0 zEm+lVapuF|QU>e}0vTcxh?}=KTMP{MLEb@V8R7_tbz7Wz1H%%9`Og6lQ9TW2GQ?dt zYuw`8GhAb72R8^QtHiMul{kxGL>T=yD>#)lq_NdM90Les@$Vb)1a%s(&(L^vFZEtB{7n-hwmR0ttoB?ok52IO$ zJCI=|oEY0HbdB9^hNCT8of5L zrH-|v)L9C{W57kWfK*cIY&DSoMtebMM?k78b?P5RZi95E)VXUQ5NBminjtq z*%i*5M?mX9TVLU9AP5T$x}@K?Ka_4gfhm8d51~4u`#bSnNR4(V&^z%1yGfHSq&JM- zP4ow(ZSLq_EucJ;+um5a%GL`32>S(5%kYvzOS;sak1qcydS_xzcrzd8{v7yK!YJ_iFUCv&rL7Ch+s&_un!>6lRKQ7_i^w`D>#FX8R3pQ z@aMfyz6Z;j_@bWAg!dUDZzq-pJDnmJB)R&2k5BtSEea;fTKO&%>)AoY%6H?TZdbXu zmKka4{VAJK)A8j;pr3;qiSkaMPfcxUxl9W+9E&k+@a6 zoO8R7Mw}1p!Nm5M_nVCSzHWcx>M8<+Leumh;8y(ed=N=5O?sVzb zF9CZ8p+EKL_aO-f(qpJB3;{LiEC6pe36h(@6Kwbg+N0c@XzQ&k-t4S1X`v`JR2Da} zo}i3D7f(%u82V?{978R)eJlKMR{Wd~Ac^L$=fNyzqAyDGOW!dp#ks^PdR7~lJ2zkTz5E_h#tF0#XEcD}9# zbCDXS3I;bQpi$JIW{9&OovU%qGvc*X+_RZU4eCR!!F{F}vKM{hUS~86THesMncls@ zrtZfH@u;PK?Bi{{XMzB*eRzm^j$!zs{xkuT|PDbW-(dT_=lAyoc&6-{_eto z-Xb)%KAj+QDw;OIr~~P1JbPt-y*Y`YA_y($9%wE4`qgEgE924SzjZAc8XV$M76og9 zO}HuXBovF_rqX?z({>Bd)2J`#L3O*K8bb}vy%GYUab<_Z z^R3%~rt>MLpPy&n2k~=!(Xn4chOT#G4R zty2Oc(p|TulC;s>rAHs=4dRUn zze4jlI|uxGh@??{eit8JN#v03B8c&aoN0$5AwBRY+i!Gx0AqdNzZib0>u4JnmxT;Q z>bAh^?nBN&3c>MuOHXa0dO~0QrhRXHKR4uF2FJvSJ61ycF7=Sxf+vbHce{jdM^LWd zF)&0+<=VDa2ugc&)#AGXui~$0UOsjuTc^Z!;m)1Ab&hMvr$DpB(8G>Zc-Ywu!&q;- zeE5?#Z}54toi306T8I&!7LbU1GGu0{etm@RnV!Dz9RA|G#HJOr7(%UDPf#>B>6n@& z#)eycq08%tW34^n)W9J5De8Y>aD9UInCMNTc;5ELXy9gjfX@oLcj?y!g8?$IcOn{8 z1M|T7AOB6t3ovi9Xm=?T%%tP3aQiso7T-VPBktRfo=M%3V$J(olq$5@ zAPH*o6t49jDG{i=ufM><<8!d_lC%^Sni>%N99CW&?Dwh1%M^?2upX#$lIoF049@79 z@T#y7&Ha9g`z`zNNIhjj2rhefH6}OpZlXS_5Z=~#C^(yECozbTia3fUimzY77u~TZ zr7QuT)>FZ|2G4^dy??+qa^WtS(K$Vayd;iii_u4MT71;0fr0xsk5PVq+!v1wqF5f} zx~V&nVU`__W#zozBfeMnK(kPfJ`io}(=9&OT$6&2)2t2W8vQ;CKH=s?utkufa9TC_ zAl@B*O4bitr6J4a%a96tarJA6o{0gGkT-vpw+9hS%c)pBjSM4LNbnW86 zde=5HnCrT$bPhX@yETN=TQswpBf(EtEv#17*Q{r(Z&3bXN&Z^QILa%k4=?jR$wJto z`II7uZTNYIEaS3RAr-;AKa)U~R&jAuvY|8#Z0V3L6~jV1si42G4V7=yr?I z`aLaU5Ek@b@J!-mguw3(P!2{>TO{f9*Q2{rKRa8@J%ycuQ_dWL%;i&~BT|eVYl`z_qg`-tF7qhoz+?G(@XntG!po%e!t)8T5KT}yvS3s$( zxL}T`Kq`lwah9GzVr{Fb?x^&b`M{l1S778D-_Uq_t;}@PgUvmGT$2Nc1Ay_a|^pe zyms;hvW>f`h2n^7%M;%EWu|@E^*1}v=yqKj1GRx>$PEm?m{agI0d!a`tT4K(zY8MG z5E<-6b4n_O_S_Q5788!5dO%H)XMt3Qp2IwcM?rrY_zR-6#ixfksz5K`qX5u(;Fqx; z6bj|(3tB?H2-fGrap9H}Ep;i;;oR6z|5%z)cBMbLR!o8InK)u%A=`%Hm(bO&`H5>r zqoAmVm@B5A#}WB?XZHmZ6i)edZ8WreJKV7RS&FM8=O^y*a%>;!l;|!TG6fso-uyNy z99!`0Ux<(A@Im``cNlNtLvJ32L5Mpf2BB9;U)P;0N-jB8{UzrP46cg^6pA>)A>hp?Y;0j%%xJtj?gb7 z*n5|qF;^mSAEmgPGP)h)9ao&42Fe%2=8E$mUAW?0G!Pc)n=6K1MMJ;p42MB?Y>io0 zh$TaDj1E<^-Lb*fhn@q#8Q)VMcj=Mvryhy%o%|V^^W=jxTk`a*1IF@z($h1(7vnYq ztI*Ac??Ukk=f`WF<>x6P#I>3xYVO_N;5-qy3^ilzV>?FrvoFGF$egzLT8GR0d+k&s zDf?cGiwj)kF)-3EHn*SVSF#phU>wOA>ygb91Mq`)1H{uX&Q)2=Ip( zyQno$R{=HnWc{41{*4EW%(}VV;Ua^+eQNmg#RkM&bJMv<446zVpuG)da)Btkg;Tg& zP8kg36W%}Vm+%?pDBf(-9}0e^*J$vHC)PTiLyRxui&{?Eu|OPy_nWtzq}vpV`--8z zspu!NyUwSU?ya;oKeEyN+ChZrZZA@MMNyCSLcdQ3L|0I;hIm4B<0!Kb*V@}oHARVk z6v{Vg!)Ae)b_YjJcbpk8FcUQ!<^4+`)YhQ-pl?5JX1GI(21#WUkZy}JUoyv0IybZ@ zU(n`@-gxuFzv|6Ge!KxQ8x>qg0>9zc;wUZnT6f{9(-zjh4@bQRgRHc&p#1-y|1pc+N|u-iC^Gp~yqRZrpLw?^4RWx`!R!EGiqEC&gm)5m{nV zBg79HomntAg8)Nk*G|UPgSes5DKs#=1V_I1gLI(LseKr^3evSk=emKsuKkR>huw#J z&S)53OfIqjq=omKECYE<`zZ!#<2`57!$>Vi2k$wD3fSQ{mmlODq`k{|$rGR|Gdf#7lw0+)w zw<#yD3Vv#m3K}>u+9F?uB};2~vP^@4fJs$@S1vS4bFc^C`T%P1K73K>_<5Hs zA<_nc0OrHzl4O}j0pK6;(Mf#p!N`&H(LZ+80Qgk0Jk74W7`|f#7i$^K*q%M%Y_S+Q zNLr%?$;mJ{Fu?7_yJ$YZR)V-{kjyi%4mbkl2D4b~0D0#ixywMIf1UhY0O{f&dFf$f zSPIgfBGX`av9ZwCVlf+}IVp1P!^k?2)~Cn~2GUu_Qv=f86uIwVEF*W(LcP~x$CvNWh*R8(qt#DB+{V^qJ-%*PnP@mX6 zjx&4o5NYKNky~M)It9A-?dI1f>|b(uc8!D~Lp>h!n zuaHUrXEG~gpq3An6$GMTlA=j0jomqg$HXo;@3@xTpM=AUL**^)K1A;6R=n@UOD@(( z;r1+$xmZjZCau}Sc-50lr418woRK@O^N+kuB;HT8a*68v&fRxx(({T-uw#3b#B?74;yJ#t51cnKTm0z*ieWwF?Yl%;95_l^Nuy*k4635M z)bJa?*WHE-9ouvc$rbc@-F`FRVa_PIg!~~OE+)E_vV``t^)2`%Vi(ZeqvSz$gxmx8 zeJy*xMBD`N)+l+~z@YM@6k#n9<40rOFF>j2t=8usJ zU@%9(UeYO9DvCkeI7V(Vuz%AjSt<^JczBFFLKtoickj`S9 z5zY*CYZn^Mp`?tL*2wX4CJg-D%zf(RS9BEMhqc-bD=H5habOUU;%8rIS=2uK=YBAz z5O>${Lv0H3G0C{tp3K`D%S0JM-#=cSqeviXlK9rAczuvxO;m|*bnDk2JE~r3l%Zz_ zC&V$0ZZQZ9RhVXEh82W&@I@au&1qOR0khQ!ayty{bu^E6Lw_S7p$n=7Nirh_{g>U$ zL*MDrrzZ|XG{}DhoAytP|79P%sMZ|{x1A?Em-xF!H*~d1B-l-xYY#5X?_wKV{(t<5 zu7yj*Nn^VMdsOJnn^K}^aE3_BOG0Bm zs9iWY#4=CI#K?)LJ`?4XNt~%p7f!7c=-c%pzu-KX%Q&dQzyT%2Puohgi$^6FH4Z=A z2MuZg+uQh9+h|ugxirSwtSz6;J%egTAW_@w@=f2t7tu6PA+7e~d791k; z`)mmIHo_Y|MP^Jvu=q!uMvM3KKaO_?keyTHE_UEmmZnxPTLhZvej{6426$zPyi0C` z)dVla$A7G!w{*J(?tbB;70Li3vB(w^(=q!Lv<`Uofq2yeVlp(F;44DRl0|$s}axs*Vxndru^E2cE1AIdypd5g0 z1aVV_+-zV!b9Im8io>8D$&hsh_#1B9Z=#f<_%y|}#d2VG;jl47-Xr(Wr-P{OPj5!&dm%3b7l+>gjTihpqInmEt0Z zm!`|hjCq-e+kdM>pq;(}yGndHLs}zd$cZpGUSQBwkB&{O64@Z;%#gVThAXcjswJyL z1*nxXWEF#6;HdU_w4=h8?()PbfTw53E93@~xo$Ljg-Aq~{vUkU?=8O#-1ijjZ*_zC z`)}(xQGmjG301QVvW|mC0a*8P6Yygp*G#XO`aGrQ(B8>%5^Z%z#dew;`iaa z7|KKA*K>ldm=o|_{XB64K8Mee<7QDlc*%isoz;3~fMSPMnbkn^XUSrAguVbE^!KB8 z0(KC@L$l;z!Z1b00&*ivu9mX3B#G27PO!Uk>06P;X|+TLfZXw^#i8o`xUM zG@%E|;vKE;$4mB)^+1R4v5lG-`WK2mUyPqEt?bz{A4VjH@TLZu$Uo}tp+M{hcwn|X z#%{nOFl_CH+9QAhaSzl1bL7A|F8^zMk84B*h*RgtX$D3fsViI~@<3fZN9KDV-kc+a zGcjk7H>^UB`T((3?1qEtIdTuV!vt5$@_C8E`_fhrK9M9=djBfr^wGF1_IVdx2G5lv z=en%H9rn*KV?wB_K+KyfS9{nxn)Z(6p(+yjIoJ$H2NkXStIl?W{|50GJ1CkxPnd`9c%ICL!NtCw?&s!)dv@rFZbz&aI|1yPCwDXM zr4|iw1LYD|&JE%+z$^3QU2+2r9O(SwyY$92ki`Do@JbfRyLldeubF^n>@OpWP=j8N z>fZj@@Soosjw82r!x85OF>yYc+kCka2J-~x5LAd|>;#A>=gS5I`!;Gad?hcC)}RG4 z1;%|fsF3138{AVlEyy)ozNsJqstET0Spp^^ys%A*0PFt}LYyc7CD%8X)B0_xT!vXnuu z;k2}Z8);nq;7zKm8^tl8$Ct?SUI+|g#oknpyc@-^r5JIR$}|`p1sp)Mm7~}wvOrz5 zR4z6^T;(aI_&16YP`56Xr3Q#KpbH)Y_4rbG!T@pK)CH54Vcxe)4uavui6xv1P6u_y zGC9)#Av*1XYd~GQOs+G)KjDUeW@s;{`NkpqImKtl%a(m52$)$0CSLVhiAsY`NVF0_YpM zc5D)7K|Gf&&l}jkbBC5h<=u_5d6O8LBduXMaySgm4}|dBhg~fNyevm%8?L$;uF^S+ zHi_N9t8?TY!&%=)IJ*P1%p_kWRoZbUY0A% z4QE(eg=48;Hi?TMU&@u23B|jv*p};-(8FDMcv6i)Xx0AMpQ?CgbYEvZStMwQJeiFU zUt>uio~Y0&gnQ2CNMN8VzUYmfrKi6;r=WY88M}HSLMq3bDMF~PXyiT5?K=F^F zk4N>V4BslIu1ED>FQ>!sz>j?}AJl^Na*Y9E%y50~0kvkm+{>Vsx_`2QrId4cnHsXy zU!!Sbskj0sSJ%r%FBrIh9_`N=o3;V@zCq4_!SMs@qQvi~xn;~$UNMfvi)9H6FePZS8rxcK!)mRUa^R#A zUR$@;S#ln3ZxqXc8^7AiUc<{QxXs!qmy;J1RU`(S5pp)s)@^H@sk`B5-$q%l-FkNp zeV+KKA8>R9KG37<76K`|mi*d7sTjCPT4|f)co<&oNOd2;EfpI;E!-rF2!!OVd!O;4 zu<;DnBg3wRzmuEfMI-DiIAwv~QjxJ4J@95Z4Tcvp-aZb8zRMY%4|2g~xyC@Z09UCd zyy(_y+%$x&#~8e>5zlR>*Y*c*zI%g1WCl z?l(Z3?6?eF1NC}^ykUT8D0CY2%Ej1992!;1@i07waH-klb{VMIl`_WwX9CpaSpjNg zrK~c*C4R7{Ks{Y4&lq4nd{PfwE{0TLFQrNjh2h1C3qx+4vq7CxCFdI8HUvA1eHMaR zR3(cI5b9rC@F1v%s^nn_z=Jq_O7q-cZ21t*4YcOp)M6kBY5iqDl-8J?ax4swp_x9o1k|NF z$t{nEpZf_QAdJZ@nB>0tv7p!+)@lVEu9VUiJt#8ik35T_oH(+mt( zyET>v;_3r3-@tIE$W6p9P43a!fHQn>L@nkYwQ>{;kDbLnm<8&h zTDjN&A?xEZR08VOT3KpWqVO zrU9Pt!8M?+Jt)^1;AMbR+7)6isQV7e{RZgGKPtpEP_G}9Hw>hvi`dyx@bkLA`TW-Zj9xJ~-(J<{wAo z6c`>uq(n%^xdPOcN8~C49P5KSK;3yn?lQm`K6oC~3rFNd16<&PX?2)?)X5Pryf|0- z-~vz=*2ydb#P#iPI+x03P`A{{5(C8i!{xRf)T4Fsm;vtgeGaHc1FV-xFuXYHe4kT6 zomMZW8{lc*XFjL}^>U2?-tc|y0kx)H?lr)H7+p2DS3td5FRvNkNPs$TM<2!f}VY zK+QZRXB*%FA6yUWhGVkO08jbg0Z?m?$%6)X#RqSKdh3|HZGbez&>hBvc>`SL$2sf-<{u|y8VoPawZ6}J zpw2%b7Z~7XAKVD)rW10r0n+?Kb9)5Tx)ZYA01x_cHiCNZgdA`(66a~(XF8}EC*@QF zyyAm-psqeC^9``k2X}*7eNyf*z%-1mI&Uw5dikWhVt`WsYHmk1VE)k{N5k+kVV(~z z0(EhNTw;LBeQ+zNr46#o0BMTRncL@aP){_-lO9+}Vlw)9tV)r53iFRsG6e?52@rem zp+WFjDQ18=^OT%rfNwy-E_TNOt_5}7DY>3NJd*`|8IYoYW|xRC>VN8ex5xjD_9hVU z+mWpazMl6cHX@>8V%m*M<^cC0q?4!QO^(f*B0%MD6$w1?<(n#zbsEFqX}JOhvkR;} z3jw-Y%d~|gszep=ZKvgS!`Z*P(mz$=8mQM#%Nqm+tw5i?e}dp!cf8^C*;~+C9tib; zaQd$xN?`|GffQeK6q_r&MgJUjmDuw7Y*+aQgt>@MY@gg|g8s74_7&dCAi|4(HhA50e1 z*y^&Vag+7eHGWx0N)xWSJ)$taPdvJXF(+K+rKy0^bm4(C(W9b~G=}yc(|LJ> zSjIn!iuQB(oTN(ZxPSrpg4_keLw5nC^;wm;0P4jH@{$1_a_4DP;>(K=JiI7J!iem) zK{#=nKJG&R+r&bESr_GUc7wQqxpJ=CL?wt-7v(ksb4BsDiBlk+z9`QS_7$S|2<{k=QLVK%IJ3PBXyoab@IQGt@GdU9AS3e^nN+D=#13u!7Z;4CiQK*g*Pv;oSi7<~4cCz;JlS`?u9%+;!yhbvXfs#|Vjeu>3}~$Obv* zy394u@jzX_RUmJ>F1H)#OrR*tB&s~!`FyZioCSXFx;$?<<70woWGNW90S0c!2{1ec z&~t{zYBUGr+#7PafzrKH7u^Q(_8W4Cfi^_Yb0D9;AukvxX>oJ?rrksd+>|3=c=0A< zMc|?fLC(4<7a8cN2wDR2)|;}_K&M8~;~<~7DNh>c!U#I(mb6lC$-ywZc%f5Oi#b(` zSs-WLlCur8FoJFXx$u@OGElnv#qvMZ;vmR}Zpp(2N=qjfy#w;yTe8tW>muls+c*HY zEi+(vT#*LWI2N|97I~nrzAf_!zW=&#Az#Ho^`+$$-I~}(MIY{23}cG6hFbGuq6zpb znvWZ+#U2Dydt08M@EoCVj!7!CY`fJ5@qOYGdUT_|I>f&Zy>)a;!4Bfd&v??MOZ0%F zZ*<_zN)plcXA1>xdwe?Iwe(qyaTnZT)P+_JYNJr6-4a|-?S!WHjW9x*$IhM0E)$ce zkMr)J^zO*yyOa}N6aTRl+{1F<@REa%6*6fH)zdwq2+oV|%5wIF4jHcB&>iv~aRbDg zcjYYugU&tbtoMj!E#V58fB#c(n*H)*#PRP zMtRx*spe~N@I7e_xhGR$L=p%&>KYnf__VA>WCEOhPcCLRNDi>?=`OZLYyq+4p4@6+ zcpwnvjhmD8ARfIZk9pW$5%?Cu>2O(P7d z@JK}b*L_g*nCY^FxcKft03$Z?QPq^Oe*BLfC2Yv5p&1jCE1 zm-aISr1Zfm<6&euNGk@bl?IY1T42hLm?}Z68mzV%*k^jguN9|2JUv*QF|faS*x(_` z8Ztzs!tnSQMdiSO&H^=ah?;GH82}R*To3AoA*zr;uTi1nI7kyr?l=yL0|0A>sN-G$ zz+CybgJM7`av)VD!QhyIy{b2}4~h&Br>3fD9(Kqt#X}+w#MP-P-@^|3*kQ2?#NDZ? znlXYcZlZFm(Lj_j7#QLB30t*2Q0h zO?g`)BAu;}PQB>s=GIPc&FWss=sn9NeBxO~ zVPi!*t`{?HEmTXx19SqpVzrN3Pf>>F=nU_Q^hEcH>ChG?eXS?sCkfvRt=prr@kLR{ z(!%yCzUW?2_+@vr8_HKzpX=$%hLDpt@qO>l&;O6yz4(y4?blJIs2PPE|4m#@vMHHI1W%BrfUBtY`1xDfUx@ni zpE;5VBhgWfREuDIbubroZvBm5YT>_bq`FMO;2*_10Fy^v(btLDqtF6IsktybGzDlD zb5I0o@hG*?0CAS#f`>poJW3rQ5GsfDwO_%~#OC}_;7K;9jS^I;ynKM12RDHp3;eAb zXx$^uNE#ysdBEklu{~Lz!Pf?tRsDj*-*4l4F)^=DP;S16?;U*4 z_Q21(_+HRyy92&6N2`^i!M;swV}GifKfAr^vfAvdYk78;ZKI0_5|bp`fqkJjKx{QR(|5%U!<=EvhnSSN! zkDhwGItl}+e5_lq9v^p%@AE;w4hN#5kV;;Xzh3S;Y43`ImD@xdr~(- z)hs%#qfX?K3Cb#*pvqua0qY5&2wW%9=b`O@V=q&1DgHZ;$G&z@DHT6)S+QoUGQfBZLmno!J}} z`#{`3Ssfq@R~PQPdyAuLPU`o5M|~`OL4qDkC*XVF?(GyJJ@W4DQE?4HH%?ZgrnqT4 zruVLhwPT_N)V)*GJ_51b*cCd&AGlHbPc(0UA3Ute7tD@{t8kp0uF}%o0FOsjYRAO_ zP#31FECa+!E%pnj~ z+D7}9Fs$N)7?Od7R)!i1gNqRU-t_(P4nO;&Uf8#E#UJ$i8Vg@OM?o^>|Cz;&e?21J zkf92V__0(+kW>x%HA3G)kwkUJPd>irU7lsl!_4p+I zt%QWWk&X==IaikHA`eP)9Lm$rIQ}UJHtJ{i*+-V}U+{a0Y~%3r4!*O0Ig8)V@kMv< z8G3ddc5soMQ>G~^YnoaQ<8Q~A>&Kbx#W~9uzkiA_|7N6D0lrI-cI$c8jdR3wWlf*1 za$#W1coNUI_UPTES10dEo^Ah)q(dnzC;b~$={aP|)j5w98b@ZDp3qc6fRx=(b& zdgSfsF-pD9EPT;_#!pwW%=RpcVmhGz(e4lUwxcv;pA^%;NZwpkMEroj?T>hFpbJ~f zbAwni4_iO;R2~dYG%(!RL7yWU#10U5&QrS#43c1|kigD?cz&L`U|_%V{0*CrjGV91 zV0dBvhv#oDi1X&F`3Ba_^H&67@qD$>!2alA2SGeEUmZ5EztDQSLEHlA_I!2cVPxC_ zto|3M2{5cDA1aThKmF;WcB4h$>CYYw1fRrWG(MqEmtHY^eoERsHCz?S; zdZZyf8T>Rh{xkcj;AdpCke~8pQ9CR@)0Stv^Vil*K7Awcm#o1m(5A^}zWwiIm)?E* zV+q{WwfI*^>)p2^1_vO8!$mq$E>POGMxJmN$0h1O=t*S0ZqT$t{sgk%DT}nJKV!AF z+E{;YwWW%H`AfKaELF9SsAAn`;U?EHrbF?@&cL`MN`ocz7`gNt7A9G`g^`6Hu6sTl zla-aVDDVv(PhRbyx#=_m^V)RNtbCjp5hHqSwYo)E8ei7DFN<#QG{g019vUyj~4h`#l=|Z zk$(4AILT|5V70YGHNf!NBVJz%^TV_aV&ziw-Ah#-47gTZx_9}Q-k0*&aMwalVvZ?@ ziP`W;5pmjMVIdB@c`Z-cyMn;)&NYZ#2=vfWb%DZ0X7hd!ExNqG|3jy-O{|~BWeC0l z0!W}xpU2NL_*&!3!RP7b(pO5UdVUu}GzxXuGG(n_U24KMR#^lu`Iz(a%g#zHu)SA|iT%II1IUiOTyY&#^7}`{rgB z(E@*GL*|RzzKQR-ju9IQA0@m6c~y|BPUUh5+lepH8v12FmtWHI2H7u^?Wr4i>K5_jDshCTq3j8(40u`!*ZC_{F?ss`YvGKheFPNFTgc1*4+`ff z@~UQ~8nOymhJRE&HtVz4P$@Y0cKExz`_~{Q<|%7Zo|+5;nhhTB+MlNFZ~00Qn`y!u zS`5o>Ne|B?e1?}-@eZc%D$v3tyKZT0)~XeM)i;q(m4)-TuJ=Bnd5GR|ee<(^@%H0- zBO32wqt$p%IN&}GSNVbVcGot~&T(xU?8$-q-_4`Pl%AxNk^n9e`6^di{80bEI%NNb zg@({s?6_O^m=3W&4<`?zzwo^h{(?rew)l9DD+v}nah4c6Ja#x*%w=##GGY`Hg&lYt zJLiG3E|n-B5w#_#?ZRRw?J8I3sfZxub}@~&%y?*!RgN$l?1~>UK4?x0i2Ss&nW=X*Qg8+ zKSdi7`bFwfA|KR(HEN9kLSH|%;ZtG{h&5}}UdFsh>^H68X*$o23IAj`T%8t|0bg08 z?s_2rg<2*gVjm@BQ5id$yjEFL)~a+EG)nLhGSuhNsj}aZd_#96XIRf&OiVI7o)PQd zqjIgBy#M4YJIBp%LpzG8G80_;b9d5<6;v>qlA{*qK zbt>0G&xrt(dcA`<&xtA!x2;p#4GaQkZ!&fo#53#ESp$P4srENyJ@#1EtD!JBMuhpM z=Pwh)+3VFD1B>W%g4rU7C%DUPvm z8<6}BY61*q=0c>@FNkHJW^YhA2I!Xh1yKQFiM+oc%ua;aAGeMqJs4@){`r7WRC6~l{pc@KRq37r_7unNXWS7NJ zkdGCr;|7YV;05vLbR_$-NGihaTag+BgSoguTa`GNrUB-PmB&m?u8O;$HWsOS1Y#=kNKF#B)ocY3A{LvW&NL^z zDy9@;E3jDQ!l3Sf`#%e<>zbRDg|Y0t}qGJ=F^xFuhe7PwxXlx+f9KV_40j!BFCdJ>Dm+^*F)lW;eqGJt6YO zHfD#+;t%?1bGo=^$W`EtJ7Nv0^-vyT@I`0vbeTHLXS(^saBdXl6y|JM(gT4_#hELc z)Vt-Fez>;C9E4~0g4j;Ns)7gXw-IO*?Z5A!h+YW2#vv})tgLmL)fO0Br{Du`=2Bd@ zLAtY9-DSipL+o!~*9Z4h>8^|MTa-0ni<%At^@Fv|`+XkQ3%GtoJUxz&6t9bXxGUPC z%E&qXQCJ-~TN8-6&};P^XanF=ThwXK)eUOiKyHYUCCVCAqDI4D{}E&XNDE6;mVt0O zZir%#HkPPO4g+!_RUajUw`u_GJd1*+6`GPbM~-CwE7fx%gHi-fSCB?jOvQ4VTFsj4(UXrG(K zSObWsO4Vt?pg#K{{-6ca3L-QVSg)R7>0K(aUW+o>b4nQmamv&b7+$Qu)*b6DQ3PUf zncB#hms-3Mew(Tq1Rk1-TvFanEi0-!cV@T6K{!5CrcQd{!R?Rq-R|3BOgT<$%GEd+ zV6=IU#DB+=TixT|AvF(v<@<=Zg|DA-^(v*X(?Xfu!0c_Y1U}c7s}c$T|Hv5>9h|NH^RH$uU z2mm259Qp?^c1N5B^-P62>w$M^7w}E=2I8(rtyI>~N;M1yM-A+IS}EUMF&o4=m1?em zxjLHeiVYwZR;nTc`>~elxhoEUSX-$M8W_|oe!=nG0P$v}y5(VwlnN;E0N5zTRiXc_ zQWIb>GXRl_IL5L;%&Ahj28MP+fi{W?5G$)xm4W@l^Vb04sVa5a!|qXpy5imwDcdjr zZ&O2HaD)IMT8LsrPdy97%x!8mVSj6kVolZX1O+DVQ6;!1*1>t@HnoRC^hyho`~z$Z zs&7-C53sKQyt+*_vKv$sV6K|s0rsTrIR4wNrodp1fRUPE%7X#+a!^-nS1UbmpdTn! z0U++!u67!j8|Xm$EQsf}tMi0mD*17jejlQDXEV~bzoF-n2vg5RUqTWkfyD z9=Zdw(H$xiMxa%t=OTe*%1;3&^?w+vM+*oX@|N@*jFD*!q@-B zv1F3{4~f(#+iAPd5O=8&FlgK%6@h-!$4w?H zILJmX8a|Dz!QA%sC~n+?>>Rky-=&Jl8~%~27_Gx~klg^{sa@){fxYe4zd?4&Zq&cs zY6uL^Bc`!DRT*T@0yT5DnoXdv-1XrbiTcp|A-4Wgi-vS1w$jF;%m&%(;dA?Lwa*JZ zC6Xa2_JC?EfvQy!42~Kg=5=1eLLKT6M2bBX@U&_*on0B#d9aPE+gzOo+rmzqCKjZF^@AG7YwnzBaR_1Y(+lV-h}ZV2>jsARCV1JHYLDKhtTFr4SQs7$189;*Ig)BG0eR^@wah@jB$RrG zRJ$DHihZimK=FK;hn@oY^geaQK<7o!)cqKN_N!qqym*&K(77Pb+pp#uXki512=b== zYO{foXtB#x9mw_j)lmb5CNCCQO|=IcK>a_Ul3;MOLv73kwRHGUdn%~Y4yfq{=t_qV zwevwNIH1-r=2g6xt>7@K_83^Gb`7(u0q;4W4tpU0#o{f!fWbSU-aVii?+XHTceo9y z1wQH;Zcna7hg+*MVOS98=|vAT*>>NT?4aHEW&eP9n9IOZuKZKf>vT+q&1(t^OTCE1 zWK2XeVH|1;^%LGkvHy5PN^IbkyFmk(W@4B}X}y@k?X}>fs#Y}+Lr8^Qe1YjS8`q7P z=`_3YAlw{OH88-$SE<(SuSXkr#+55XM59eq_t%~ckJGxfJ@wjY_9XP| zbkKs}?4R(`t^4}hW4KD(Exu#?C-Jz3+x$;`6MA;=Ucd-As#o6+NQ<1`0@k~W>_6jp zgzMx!vDPL*E;IrNt$^nt=n*=`*uQRuJQ#zoeK{+;IgAIP3eYN#swxA5xeM5k1D%VFU2O)l-@x_$&5IGz4#MqCJdCUg7UrY(5vll5&P4j?z&$=NKhSu z2e=;*R5`*pd_px)P!MbPgL1pH7hFzo$r%2rHy>qBJc+HilPU{_mq{A{Co)(HYS~Fu zZh)oam%4*d_6d+ro>UD6y4&}f(t!D2gBk+E3wIxRMe=plUFI-m0ncnuv&q@RS@#Do z>&WMQ>DBygg}0pz>VOf+O>(M}Hsln#*HdaJ437oqJLCR!lsyO3xu?`T155!(qu40B z2-M6`*WyuK|$!Xv17-MD<~Kj&7Kdz*YQ*8f)Vmu zxTOwil$~)J7cfq%X)sXO&Af*p^@D%+os+(+3++4nN{3Aq2xlOOu?2GQBYe-q40Nj! zPMDht9rtR4TXk9;rr=Ql+~9rYd7_VyiYcVT44sLS&Y%d+s6{Z~$*n3-!amx@W#>Q` za>}}EA8nVzNyQme%`TA(aPb~BwbAx9kglImHy%btoy9)KSv3X*7Xti1&SVGsS_op+ zS+&T(Frh=@5aMPKx13ca28KI1rx>dPvHq+&YG7Y@SR;t{&Z+_DBJmC6{$R8{1+?^Y zD&rB*3eZ-bQ>zRJ0vR0HHqf@8Q#&33od)g9Id#^6hP%E7pU3r|^C}gFmuwH33EHgl zD${`QL^(edMCBT_<^adL2Kd_ZYMtS1!F|s5v$J~ON6)KchBG{p7Iv#fRQKWRYS;yI zg%?yB438ZgEJJQOj^SmXXJ1e`228gc;aB&E-FtP+OfQdRw^eYo?Sk5FxIK&O3?mr4 z4eFf>>aGFa(%igBNejLfDyj8dNa|5j~ErZ+8Li~Ii+rd&$ z%NcENfZM{0s>tv{9TkZK>hUhhx3%+a-=ByOnu~E9!ew~9a#3A1La4X3+J>IJd$N-i zmrxHbsZ}r{)2X0-fzy{@aBp)&y+s{zkXpedFoHOF?07yhpF)N)&6`j8Fa5k9&9T)W znubg27R5$EA*APZrQ3WNwg0jzfe~qw&`~3&3SND29I>{pNY2f7@bP=j)(M1VxS3~OLXZSe9VsjqtlG{%VqPxCtZ5UC%~I> z1+J`WcZw8%xFpY&UOVA-Wq?#dK9|xQ0AZ^g5c(1-#lrg+hDZ^lUKMF(rmQ$gi;z-NwW0Fi8DF zKq=Q_FobOJh13SPx$!H^q&QoC=UG0%DwZiz#R`F_QG<9|Njy;U>2d7#X`Mnp_MbSw z&9q-r;%NAe4kyQT4kI1uQGxTEPU`o#vg7onsR*U$#FbrF*0>w0_y%H-kO$(_c!%G@ z;o`JqQG5#e$#5{@ls z7w!-n)AARgHpe^Y)->`qHcM`+^)Tok`S}iY7h~+JAYHqyt~26>Y$c*^LU8mdYAA41 zVDpJeZwx*bYS;%$jGH_zyiyRpjo^YK@8Hbnj+zW3()qNtf}sFZiorps7RbRn>co8x z@KWsKP$jRQ^m)7y*u6U{^)AAIguQz?Qr9@^9qN=G4``8p8W^4p&&F>)zNm1Uz>P?S zdIu!*-~kbbcpsmM&=%fRxfCe==IU#m!fqzDH=WMDb`$I=w;=*6ntlcoy4P8XV&GBO zo`bg**Wmy9T{W=L&Bqr5wLEISxE7RkjcWZvKs6|P8dVJgUc^wn|6<^@pxIG}u?Y9Y z^MEfjs+$q-P#p*~#>L0q!x7j$H4z5=gYWSq){H7AUR(j<%6n>61jC|_SH>@H2W`ha zwKD=?++)R2FP;JI>^*fZ0u^H<`ho%+G9YB74hRi};YL;hXgEQ$K+7BunjL{~gHy+~ z7PNH(LhB_bTtCidU1^y7_vqV42^=}vH@kqI<5tv zEgTriia@8lxHf{eX<%q`1j2PZovuTm9Ud4u5`k#&<#gQw?e@UXod^VF89J`e$u*SLV2hZ&$vO%6?qKoh;VR)Ln699kWL=&l{dwF9)B$)Q~lXr33>S1yP2G0d; zUTSE51X>z&3$qZkqSR1v1j_LkIRIL1YUp4DB5l;n$aTzG0!G_XX0)3POOy4WrH*jzbA<%&$!w9{#oL%VgpJ`i6EfTDu^@&AZ5@9JdC#fBO~Y;t2;Yt$<&;G+qlOPO-v@?AQt&_53SOoO7w~v1EHH54!0@8@ai`<1 zw#%^H1H*gbM_q~=b&g8%$@yXSocBU9)s@Qna}jb?BptpH*mtB@Wl9W zHh(c!TVdE2gTgE0M@@+vbe~sNv8Z%AV_QpPo>355EOtVvm&li5a{C*sg5+{hp0amm42kEx5Nx6#mz^&T-=+@$Yf}*Y)m>`@gOi zGcJp}h|I!ZDfEoHzep60oB^Tgerw)+u-Qm#s{l72ZV9Cct+ z_#j1|&{Y#Ug!>289!>VQIQEbZP=O7;j{6hR>f`Ms@^g1uhHSZNNv@85_PHjEntM!Fx_Y&^qSHp1NxAVp#$YppTt#up`VHJj`fsps zB7c$wgEBW?`meJP1ka1yRZ`RlCUD?5NAcsrvnY1jCr75DWH9n~LvM}?--;jkS+Lu$ z6^t7(J{&c2e0UVa?^}~aC90P2_sCy<)fO4Eczk%(zb@eQkOtnv^-K#jIAF}d@!?~^ z1)Sj__NON+`f_=r)@^-RC_!sq9!u1^-TUz;UpO7R?aMwr6!St^!bFXI2J5k69#Q10 zds&i~oe(@LBgYXrx9ka?CvB1Qv35^R%;#Pk|Kje3P6$t*5Sg{nE%OAgka%aPW!{*G znYU48V%`~Q9{kLl>j%%Z%()_82nwD*k?-nP4kA}hH`@H7Tl-@|xYxwkx!63Rm&$?> zYYka9F}yx9B5qgYi~}tb4oMhXpygp>zL^+46`j?)(!4{ePmJW{$*6i zSL7mln$JUi{wY#FC-^M(H$8(dng?IU3{F9Gzt{Yddzf#8QZ=uiFMsetso4>{Rh1c$ zt#}UcVU~1RvZM>v-QXEoGWm#LW(S!w_&|JYiD{8RS+WGnGp>^-4=$V;?SjFZku!Og z6yb+shvtl&1*k+Y_-qOr=upew&E7TYo$y9MyYDcrXS3Gb(udGFS^*&oXTGl<=JRQODv&Z8mJnl^-AD4@SpKa`&0xs2(%JJt^+dtqsP` zi(L0pgD1}nPq}C8R_j;&$jG&ZuA3QNf6qwAkg+4bHT2lb@bP;_dgU(WBet_bzZ-mW zX82Yx)~XS|Aub!U97Cmp{i4}%)(v{RX(BVjf5O4jE=%%UcRwK%JlTTJE^lm zBR{kE{wzF~q7wS)YcI!_jJzBlO5DCfn-;z;9C=wj7%?U3doA=oHksvy< zjM^ni6tl4IzNheB%%p{4zkL^7CFb8rUy5;-!f~ffN))U&pEw$FZ!vS~ZZuHUk;S{I zFD3jvb^!*H))SFQyZg?;-3fl!Q!QqK$IT5#Eu9-aL7v_Z)C=D8iCwuup~yc=wtnBw ztox*X0_$|byQ^8kMB)0eW9}~S(lOJWIQAX7`<{#65JVoqryfDtbS5k2F_fz*gOxvL z^0Zl!$G%||vmGlGO#6d(r*ii^FKNvWPn`cBmUR4ToTr_4figvtbNiTKRUGLuW zmVYhQW`@UaG{edNHL{+O&&ABEYwo`1g7Aa|rXoqygY8>8B)B_wLXWoW5IJ!`DaRwe z-{6NELJ5K|Wi+;4wzEbyO_<0ZvWfpSPZLE4AJB@sjk|{sJ!5wP55}EyAa(^wS1t0+ zgJ)Xo!9%cGc<~_e?%wMrG=1`P!5@_|vp4_z_WAuI7;Xk9zx(74)`DQ5Z@or7VHeEn zoXPViyb$-~PwUAad3OKqk?vU-zPvE9Hs5`MC2!jDKRi}zhX;6fU5H&6j}?wt7=_#Z zYhAu*al912JbL|WmRC1H!ScwA$bos~$P`vdes>EQOmb(~LMDow8gW+W;v%o~FAmRM z99cz7OeoYWVS-TncgCKJnUK)4u`6lDdp3(+1&x1d)z4Wt=iPe>W>&C@Mt-w8GE+t@ z2}ey?5?)17-ntH+F=ZOo4cbUr*u1 zkAF{JFg9}Dy?<>=f{S_&+?g=q_HK9QV6YjCEYsf0%)e#fZDcE$pg|sIW^9l*VS)sW z@+3-_pi$n$v0LuD=Nw%f_lW#lSY*-O_i1cA(mOUDi~G~F`v2Gp?u>tU`GUt8OituM z{f`G6>=uLNkTdz#f9(V#3;(|00mZz&| zAHF<1ZG{K#-PO2bi@V1Wv0L@~v$}Y&c)m0J$=pf_#GEenb#?CnjDOaHb>-p6JJhp6 z`@Zn%TOICUU8PIpYNG-jfhb0#~zj=ZL z(T$q6@cE8}31d&(b9b}lfG)B;lf=bS&NS^tZE_PW2qnB0ycS-niU|lFbKzj|eS(|= zyUY&;ZjSWQa7iOV3qo_<>-JUQGr^q)6XphDUl1Daf|1jjRF6dD6f6ruvsU|~XmxlF z#a-UJrjeUEV%X8u;cp|O;^v7nATJDl9>*mXhOQg+>+0~Ge_g_Pn^%SsHjDYn%*xQn zHQ}gHYr>yWd>gQUQAgV9z*eKga@=al(1TG zZ<|9~jM}<3yzgI^NFSAGTPUGl-|-4%a~IndI&b`iwc)FgivZ>un+)B&A-v_D zk&Z}$bv^i!xlahj*YU_bedm&=HiW;w=L#buf2~Ev4%z5cq>bTW6gM4{{?D6R;F1eB zh8IPy5ckM^`pge;KND&ad2a0qeP`^cjo}~SZq-O%78>pz_k?$y9eBO9ZXpMnuH-*>TGtL(xf(^-@&=CWVZVG>U&$tG`hxhJ} zoo#zUzZ!L8Q~0-gF7bZc6ph+!ZQmRoLvd5o-8^U)JQwzamKgl`=J3*BY{&^>@BZl5 z-K}5RVC&~$40NUDWphTZ^`(oS+#J3Txy`uQWSe>qvc zIj!k#;7Dk$f%CS6=if7~@!czKH+09A@XmWi+EfI8^&JVFHSpY)@cDbj^)+F^WE~0p zV`%rS;T~J#?{SEc!J2X;G||vWTf?8;Gjc@SnsOwx%HY*o!)xvtJHu5IlzAX>_~}gScK%H0m{G^KhtI`b-c7(g{jK81AuH#H-tU=>;hR5GCra{bgJ~wFT&hWB(#x#lM1F>fUR_U45PF9oQZI_P@J&t+=b-alIjX!ejURSNC2g z?&@n?Z~va~k^k=Mb>pu7hwBa68y>y)zqd?>iO^(bErtEZ2ds>jmCyxrw4C%8)=YEKeMk-TKCX10}m(qFUI4PPQ0{*~7dzY5Qx_|?pQ-4|!>?nZ_tIBE2EUxhD5E@ka9 zHrS20g`o+09di70DBPPO57xNg!N#q5?IIVNZ0wXn;i>mr$g46XW50T})!=Q1!rSi| zdnXth91IOjaK_-Xhr;LX85{ZBSIpS%U)%qE9qvhScRwq5qcmphrv^{{Iy~i`v1{YU zt~Gew*WvZ|j6D=T_L#xPzYd?cXKc*ZT81XLW!UYn!+-pTQ6mmJ{yrQYMe#Fqiw{)= zztIr$p{jqpMiP4LoPP&@tfWPP3Q7I9c<|TVTm<(qdzFtdB2aO5{xr>QK6oD9+IkNG6U|Nj9s?!8LzY$_YvTI4U!$n6JH z=;$lvyrW(f`O&uN;ovMp2~!4pzZ}8D-!#>?4u^05&xsEw9G}RG3CY8y)@*gzxW^xP zSK{u&e=@j*Wke!PdGG^)wy} zC%ldRgZJQ3oua4PKr;OtKZ)e}buNk&x*k`@W4bqY#^ZVsPe)3QepzQI2rwNBS7 zD(V5G(apIu((0SM80mEKk3CkT*Q>b^p3nt*M@9XmGw8~?3^MALTo0LaKmHI|^tU_* zPwH3uL`D6rv+DY~DxT8axE-?TaXc8=^-`XLr}ci`f*kr1e}~*Ud0)#GdGwq767uTz zxdrm;u{;<-B4Q3<8dgX_wyFKqJQA;@VZVqASx;fWpysj zjB@%_ehKAuJ+6v3bT96V3VI@sKt;WR=cBUzj`yRA{)eyNO`Tz&^%QUE=lMCjtt;>= zctAL(jTI*ii32pQw9)b7t7rX#%^+Dc&cKRnijrKb6u&Ag%bqAeM zKZf^pVa|T~dURcW8&<{WuKXUXLeXOa!zvWLiWk8u5q*ev!6J*k%x7UXMkg6* zd!;?h=uA2#Oh$BJ&I6;O-{P|H|LCRuGajS#9X^lII;8;*V2sYo*)Ud@=MosFn{X|R z*V}mkCg_LVz%4yd=g=82NtfnA_*6IMT9~YRa7Rqh6L=V=>g7BS)AX0T4b$}{K7|=N zkqNx5XX*?(1wPY-_&LndZ}IDxt=n)z%+Uk5JLc-ocmn3>O}qm0^$9+R1^OocjD*x4Me4}6I zqBx=(a&;Wl-MIt4)f0Fqj_DOV56AUE-i{OcXFiRSI*BL29sQktT4%s1U6NnK_qrBW z!D-!*TjGo!#(i;C&*P~$r?>GMoY$xLFfQmn_$n^y$2{SZ;s>3Zv*MC2%f;}cZp1b4 zlkUOq<7YjQhvBmRg6HFk{)%_ts=mx;a7~9jq5smq=qx%FuIraMAAZ%<_zm39?YSv_ z(?j@U{I2KnWZcx-cr|Y6@A)up>p%G#{?L!xc-)Uabsl~ScXT-}j=ywcu8F^OPwt3+ z^dugRC})^h$qV2kkI{#CC%hLBeTC1$M_Z!rvvK-cdvh}SNu3(rk&iCQ`4O$Fa|L)0 zFS-LaLs$>x-ndWC<0(k0xAPj@uTS$gctGFbU*MIo=#(~u58xr4m$TtvU7kze5#5Aq z;Zfa-KR`15DUU#My^0sYR}Z4U=3Vfm`sk~C4t^jrI;joqKic0X(OGpGIOkt36)i?MI%ITDL)QM1DzsT9}hOWV{p@RO9o5PFG(UW-;D(O|c z2;P8=KE%6FMPKH#@Uncg^GHPfrQgy|>Qs1Jdj%jWKfFL6U6-o{=+68eyayURl0QLp zy^v?XNnN9N@_N+NXZR?b?0jQAg+F?08qd!6i{wH|5%>r$6RSsIMpU zNHox^c@Y}w6Z{n#>EHQhG}ey<2QqN-_~;y*5lwX|E`(;fHouAH`U7r-7J57nMN7Sm z=c1L~&s)(^U*ik-Kqqye6dWvd(ob?4bk;9(ess}Q`3-c{ZMg|P)PuMuy6M?G3ElNB z-iRLh41bHB`VL=5FJ09^S#f-;Mu{SM-S1G)bCDNc(| zba5_-0lFqv!a&`TTVRm>n%82mP8S>iVyG_4`7um4;0hS7yK#Gr&@*{3M(Q2B4x{u> zdF-OnishF#`^BT<4-}5(^ zum9j{SfEolC{Bun`dNMwi}b7fG8XH4Top@nZ|;oG^<*A}rFs*8fo1wEe~aZh+JW|; zdWFuaAIBHEEEm8^-JEM+l^(!duv*XK30R|d2gX|cm;?4d^*a5W&WiPV3^&CFy_y$c zqdv^Lu}NR!^VqEKcd#EE@NdyiaawHE#knB1>6%;#+jU27fgO4{_r*@VfTv-X-o@*% zTlet?#8tgVFV~~7S0CYh0s5s??ic&@+guJ`>NPwb2lQdygM+%zYR3ZjO25Ug<4|yU z9*3{>3u_!};ILlK!|;th%KLCcU*{iiR6n-XI)HC=ZqABhx-!3tJnTCH*^|Tl!DFg4;UPM#q)-L+9q~_*1{i#c)Tz%T@80{(#%yZ#|Uz;U7Jlry$A+ zE;sT@g!EB9fCTzi{s9T~!KFNGWYU%RHDuOJxh}Hk9^45}>Tx^_S@ja0gQxT^-h^!WG=Gci`ZoUp zZyiQo-(@^<>WRA@2O*c<%j@xszQX75tbTNl^+i9YpVpa>TNmdS;fJ51t8pdd)$egr z#tS;M*E+6W)M@pjD5MK;P88M^xHMkUO}P$= z=w93jFY8Zv1e{JUdKE83G5s~~LUDbS&!L1)y3cagC3RMv2BmayE`ZXyCRaik-H}`1 z6@7P$Kn>gqzA2le!u{5tCER@@*!_v3D8sHgE*G}3GN zb2QdRcrTjh>wFPS^@E3OpU_Na=k#c3k zr_b{-wAH~2OTX!MI<0;L?R7!+6U9-^032P3%iw+8g6pEA?#o^Afu6==&`Gc3&(T>Q z<$dU)f8`(0RX=pt_7)%Nr}+tV)1~-De5C8}o9M1Pb8Ga_qxci_)Qfp0dg(p95g+Rd zd>p-X=o`yX_tEL}qv)%j=UnKot8oQDdI7aG*Tmz%@N8ACU^*A1aF?uP_!C1YIw_u#U$R{yghmP8> z>IpineiRdR0nUj@x&oKRr@9R{#$?@}yJL!;&f_puuj8edrXT;-HbhU?x%E?+p+Dia zn5k#-czmWe@^Z}5$N2ze>jKBD&zPeta%s%fb9p%C>216k^Y!<97z^~Dd<_fr>Z}U}rp_8AmZ^ugg3}?YA z{R$VsYF(G#!5ZC#-@{rxng?K=Uc#SYz23{4ut8ts6WFK|oU|N+aXP(DhAsMeeg<20 zC4L3lbaSqY?YcL2!45r{M`5R4#fz{@9}0}!`U;=L9(~_;_KAA0ep08#K3$aaW52G> z74W6*z|C+#59QuCsORw%e5JSZ8XVH6`5Sz#@9-};tW%zHOoVTAUe1Oix;&S_QQd@V z;alB{Kfp2lDUZN$y^0s&g#Ma$;iSIG=kT3Q`n`2npVC=%8ho#daRHpxHMk3p0WKk7HQB!1FOxi+ro0o()E z^g^DFUv%y>j*InmT}i)+Uv)FCiyQi5?u_5`r#uqB>y^9^H}zM%6Swrwd~jgZhEk|At9?`Y9G9J~PxFwS5QQRNN^%9vQ}q^5}o~2J-4Omn7xY?Qf*17>-it!|I$uO#{os$*Q@o_Jb9xlfCHV!stZQ=>6xE%$6^iMR+#kjD zBA$T~`YInsNqyf>o-4YP&Z#q@v@XqsQAXF{xA2PY#I5nF9>M+bnqI)u@w)z&_o1x* zl`o;3&ib=;5ao3dE`T@mTfs0?&>guYD(Yd}7nSrpo{GwP8?QkXeTom`O?{iM;w_#0 zvgak<*3WPjyrW;`BB-kC2SzpBjoYDy{(`5Yras6!P)q;Br%_vHyyE$dI=V3D#=E*N z*FsZ0na7}+{(={wx&DQ}L<^nes&yDGbrH^oR{9+-kJfrT_d^@Kn&;v@{Wb4KTYZbq zp`A{5&ELOhuM2W6bkMc94BpotaZ7a68+i^s(8u@yI_VqyBRcDcez9Fd7oDA-Kv!LY zU%-dDCRau`-H}`1BR!n^qPt$s)6hd7WKR`b{mWQIhUd*%ciQdf{F+iW=V;HFa<{KEKQ~he&g~2*6XU7m-j!R&uZp1Y) zOmE}QFkFAnhcQCm;cFPFQ{Axb$0(hTvtzV=gG*wJZpyVWRuAGH7^i3PB#hS^_zO(X zNBB!j)K~c;Cg~)ll4oS2UGOhTnH6uj*o$rCad3n5{qNu9%}I@<`0pdwCP)=?i=U^L6kB_3wItPNN^eLY<#; zV3B@V*aX}32V5W9b?A=E=pA~tZi$^b>tCip@6yF}0qoHYxEl8Af!rSZ^k+N~ z`}Ia%fiLx6d>}xl`r9!J4(j}z9bf5+TndNuJnn|C^>$u^!}>IT6QJ+#FF2x8{o{Fo zqdFgF$G5s6m&7sMlRMzJp3K8>La*UPIH`~E9(<>tj|%y$YbffJcDg{Hiws45uN!k6 zoYsEg$LHfhQD^iR9)h!a5zoRoy@NO4ygtQ8a6#YXtGK8?3WdBk8;bft=SUFp`g$np zl72^*!;ku@gdu+eg`$4auj-fav#!Tgaaniewz#54^FUnH&VS~45Q@5{ou}3E3`PB- zukcx1*Ete}qEg^jU5X3ghOW(T;y2xiTj6&-lKbPPc52e78Mvi)^9J13854)1{?>o! z!a6tp)NgZH+|loGBmAWYau58iXYoY*qc`&xh)NU{eUiUINZ;biNTA<{4n^fcLfw>W z!}+zNKjuzItdH?ZMC;%9Mpt8WDfCnxjmPxwydRJ2NAL4EkW%O3 zOh~1hb1kISeYgwK=+nFgY4xK?%^RfC#W_FH>-V?;p3qZyBr<5Hi;TL2jJoUnp{P8_ zq(|~VWY*hx4YKI(`5R=_2_CRs=%;i#oebG@LC%Hjx)PVc)4D0wMGoDAJ0Yi@#KVwF zujU1KMjz$fcvfeA(0YOAbQLax+`2i}M;_gayCAQgz$1`PFXeg2ulMj46wqh+I11`N z`ByxzlRso#zze!BSHO#U3Xee{y^0s(C4G_)qKN*BFXLtX_QM`Git72?2gUS7UW?*7 z!6Tk$x`ZyKv!bM~&J|Hgui`-{t->02*WyZeTYtbU z@s1wB{ZLge@qk@ChM=R)#hLJdeuZB`CtZ)gaU#b$XP}s2|5@{SFt$7~Pf|W2_#;JuyzdklwaekJlCTtC*m-@?cEVnV+zq*OPQz zT@s(_Z9EZ^b&d@7rFx1ktqWnQ-ps==O&{m4FkRo^pD;r|n9=?MGxbxP9-rx=ToAK# zQ+@}tbr0@@IeHuq!(6>07>0TJAaBQf{WG7&0-Yq2d8HTX%sM3&>6bY#7VCHT4J^@Z zxG_H0{kc1q>S;U<%k)P69Lx1_K7bYaHvfb#bc)RO`B((u%YT-JH{XogkOn(EsSPIvJvziZwsyg!5NMm*-MQpc`>5B-9`A`$(jx^AIG~>v<`n^%35W zB>Ea(L|EVVjQhcTIy0w6QeA}e;(lF?%i{svo}1!9J(NGjLwX)h!NYn7ufZewdp?3k z^=-a}WIEZi?i0y%PR@)J`c*EB$8;mEipO;iejh3IJRXKrdONQ{YJHl&K^pxB|AMqS z-E-~}>2!Y1h4i`{m%7&*N#xrMK}KJflzXVLYo7p1G)1~-%c#Q9@VaiYTeua#NJj1Gpzj>lr)& zW%RGS3$N&h3VKf9Rh^BWz-zh~KabaS4X%i?x+6D7IX#s7qP(8NQ&2%~vAgtv9=U>K_Ej@$~>^ib}L>Us`OK@Gi`SD~gp&R?OH zzQI4Cwtnyh&wJF-PjPzG)vdS^>gn0s4fXXFUWtbK4?d4ZI@yb!_h_sOat<`nmADL= z>ZV*5&2$g$gywnz4?_#RiI<|KKFi;tm5wfCTdP~^jQVl3(Su9T6aRao| z{kR+2>(#sf9rR(|jra96K97$2{=&9t_(135Ea;@Ga7lF5?YKU==n>otU3K^+>%9I@ zKdDopn=Z=v@sXauZP8sX<9Xa$r;+U6D(p zuU--u{dB6A?IU!5T}bD~C%Of{jsg07QH_CmYcbC`4ANJMTUYg9{ZI+}8UG%lf7Bf@ zR3|EB8J4vCbQYZg!*vPHhmpEESH>vamD^&p9?b(WMla^iFjnv8jTooT@iC0ofAbAY z(5Xt>Z(yP>$+J7XMpXmo)@%+`ZbW2?tvvpto5OefY9)r1hH?P7xefCw`In3Ap@UK{))4gWDhlRQr zKZ8ZOAy>m)w8)5mg$4M3Cnejvi8YXp*wL4e4*bcXWyz< z>W;cGR_TY!`}FWrI+z+?A8Z(8}{fQ`84+GL=_!d z=>xi+E{v~qU+#iK`Z}+{*E&lj+Z-I$ML9pd(e=41j_8lLJ&x)LJQUyRFL*wV=@YyY z$Mr3~j1xLVWydo(sdIBye5cECah%d^xFNpR1GxuI>)AXBXY^)Xg|qquAHq5PJ730m z{YVwZak!uh@YA@ct8*Frphs{w{HVX+`S?j6;+^+zQ!z_swVKF?p^A04XdKDEChqOP9?}bVG9K2+YFaOJGF?vRL~`APYaxZ6%AN3-Uc;Z`as54ijg{k#R~^pAWB>2>PbmV5V)CnRT^y zEjOJ-|Dwm@N&Qe=^9Nb=Gn@fW>81Q0vgw1o71{L_K7*(A{q-zookKU(FCnKs&l8bL zC#-KB(9h_hx+tF2U+^3}rw{Q?e)i3h1$fxUYW#rf0xeW^Fl{_5< z^*P>!=XHjLo(H;+eo^N}VO@n^$4j~;H$V~Hm%HI*J&nhrs9wiQQA{7@{V1+~oLjs$R^W;WfR7H{o^NtFd{8vU(bi zL^++kiPt%Fd0k$=h&S{X+zu7>Lrrambfw_(Is+=}H@G;e=(*e#Z|O_C1#jzp&Fq)) zj?U8DV?34N{oeXt#YknQ|^eUc?`ua~kiw1g98`ncao#8$E1l>p{Z0q>Tznkdgx-OdPrR~kz zc8;rcst&fn{@q;H*M-nh_vNl=rKj^)wALGV8QSRi?^}=Xo=(!ywpX{+h4nLNr{Cgo zXs?HHXLQhoI=Sr+Z2R;M-3uM{c|M8{bji-PG3cc0@|)u9&B-Wvx_W3$mXV+?h5!UtiE!?NOayul|qj?bS*Nb@;9?-ja z6CTv(_&6TYfAep6Sf}d6ctq#rr}3yR$0dgHSr&*{G06}k0v9*aDB1202fow~neh2D*suq2I>K z!Q}_qm!hb?%=1u8ml|Z=ptx?xZ=rgbwW5%22m+yQmreF%T?UhN_KDVo3I0|IhU*%bsu%DSOw(WSc1+h-_$+4Vq?7EM z^i2JfPK(cUNq!!)^k8m=*?KNd#vFZ;4`Qw^{Hgs9=INna5A*dho`VJY0B^%W{WG7& zA|0M=+pa&?g>)t?)kC;7mg)IC10w2Q~{m2xLMX%MlbSA9RWw;2|>v#Db zY|x$gJ#5q?c>p%)g*+3R^-kV^t@<2)i)}hI)&5a$*H7qV*rCgDQS8)nxhr<*)4T_} zb&6^B;n<^J;TN%2x8p|Gr$6Vh*ss6jE%;JDG~GI&59nMv0}krfxd^_}jkyL6>6JVV zU+YtR5QlYmhV@f_qjT%jIHCvedpN3B@AADJ17`d%N?&+1G#uB-4XIHB8c1DwFvB4-|Mq{1gCXyVul;~j83l~#aUg5pT#--4wuDw-JYA^f*!`baZxYi zY4}0!;SIQ?f8Z1NQ74||_)h<%Gwa9kvo6Z{a9P*ninyXXaZ6m)qxlnD(@S|4e$fYb zE3WIyd>X&%q_b^@^$nd(r^Ro&6u*GqbzOc7H+45|i(7gE55aA{lIP&?6Z59m{T2oLHzd<_rj)bk9(!@3~n zz$3Z}zk)|~8*YGPdJy+Oay^$nMGC!x*WfXIj*sGT9hz^M=#=^ioeZgTVSWy&byY5h zG`a&fMOrI&Z1KylP<>jky+Q`O30!+b1OWl zKjjg~s#o(OJf*+kJ;+?IvrMq)`JfkP^Fg&YQ z^FlnQkMJJk);IVE7=kpZ2rg!l=ysj_sF_hH_Kli-X<#a}! z0_AlP&Vx5}^}wj0J92YW)FZhcD(NLW6P5LT-i#{xCq9KYb$F@mgnmnB)v58eF2M!y zj;_O1P*r#3HmIh@@gP*!D|jwy=tH~%HT5+DycZ4iZ+r=jb+YBQLujI(<1A>Z%W*L@)04O>n(Ixx0xk3p z{1sa2#4BuTbt}C@*G6mI<_p^iw9&)32j0`AR@$HFwz{5v3+?nrfze)1) zQ@7>D=%oh-MsGcjC!>!($ZOG8|II(5pH8#Ja{>KzLC%R!bVYsz19UU4i-EcicflY% zoyTCX-o(o=M4#fXFjPmcwawSV^piRzhU*es03-CfTm>U_H+~PJ^h6$l(Rwv6z!-g$ z_h794oiAaWPO;AZ3gdNN&WZ`TBA3KO-HPjCk{-w(;Zr>~7>3Du7q7t-oqD}_rKjp; zdN8KzA9){U=;#gh+j^$XtW)AM{W9mnEM0>uV7C5%TVReJ#r-i)ui}N6uMhKXEYQF3 z1uWDLZL~kfBAtUXV6ooGld(iM-eh};&-GaT1WWZUUV~-&5B?d;bg#+7>+}O#?6a_5KgH>>K^Noau~FCLO4y`7 z;Fj2|M{<8`(MxzHw(9-78Qb)AzKHGmp{?!R=hxZrqprlI@sn=F_3*QPW|#S-FYArE5w7S$yWNhyswe6uxTZ7iF--rW zd+3U|t}pW*{Hj~+bzFcO`V;;Lzv)>#0XOwt-iTZJ2R@10`t^N|%kYP8%r)?*p1?zJ zN3Z1h_)8z=UHDty<}3I|=h^QV08Z#1y@X33q#yXwvepT7cU=Mr^$lKuM7r4l#|22N zLkDetbhK`-Uqup~^ecbg=&=Z;vu z{+(LS)~%36Z|7A=t1}<9Jasz#iLQ+FI`pmQoPI*TsB z^?fI7YmeLa=)5`&p42l>n)k@6uk%4Xr62gt@kBZnTq-H=l+ z=84FqFYyUHqoYq*zx1;@i%y9=x;W=YUR{eTBcJZXt&m@j;!jXOFX7KnQ19c-cwS%P z?@&lbfA79@VVzm0#7nv;=R*-)gDc`?-H}_MxE{g%P(m-^87Qg0;ms(mZ}3Hw(Wy^c z$MA}No^#+;T_rGH)2+DyUe^P;JId-UyaMI)B|d@jI{J+1*Kg=7IwdOTv}f&Cbw%A$ zmqR7pm%E{|p3hTIMIYz=cvFYY+4ktSbXuJZZ|ee_3-9O(Tn1HjQ+^lKbYJd_>Usu` zMGd{1*P*7)eBSdOwe-uJ54Cj-u7EnaBe%f2dKphbU44MJp`K23!FE*F*BSL=XrSwI zSv1t$xGfs#2|NUi^-7+PCi)~FL{t3-UqLhd_(j_WG}n1K8(Qc$xFlNYW?ToYbRX{W z|4OGD8uLip;W3 zI9HMVy#KFWujkwQ<9V+0AHVfT7RAOs&kbM z&}CS}2I{VCV}tZW#@S%KjPq@X-p$Q6RG(vl#p(x4vSB*vn%AZMPruDpHeAPXfQ`@> zxYFYEVFU*RE}qf_4S^-#~%`E^#Cr=wWb=IeHBW(#yId)X&?4ky_{y@@Mq zkxt-#`&1|Mk}cL5Z+fgOUYBBi`%E`vbz7o)^DSGdCo#@G*I#mpE!Q<~IR^Af-C4)j zD!qlX>}Z?yM;v8abm3&z9r|lsLszt|x(%D#Ha(C%ZM&Yz@%D{g#l^Nm@8fpcsW0$n z`&K_>vVEs>{N?Ml?b78~+;;02*0DW$BzxFiy@N|^pML6Z=LfxCSJRR9y^diMJD>-% zhaJ>2Il&I;ZCq+U=zBb8Kk6L+xE`^?x&n*a5&bIb*-v^h``b~yii_-+PJhQSqmSz- zUD^_KH@319dNhaHNxgtG>}S1&tL+z^zytQHPU0myr8C@hU1q0sG3K$~bZu6$GrB!r zv$J{#d)qlZgCE#=y@pHdfc+Z~UDsO}XMgHrJYWy>U0%0`y8M0T4SS^La+E#R-#l<1?TMcE z(CsmAK$T|HBiBflLSNw?3+WV(ohx)&-CXCk4EjBGvuE^7eqa&$8aG*HUFM0;VL5dp z*0fx@6JzXoJ%O>7M=$3bE1>sqixtx6m|%tVecrMnI$IEO(?dZ~U4})hn0|#dt+?*W zwpK!q;vg%j7jT-rpf~diE2WQdzrCn$@S;WPbSXl?BVAe-(mAb+j$(N$t7F*I%IN{@ zZsqk9j}CCcNmfZ`4~6`!)=*Gcmt|3_qN7>Ms_J*x&Z_Cr z9BkF~C!B6kdJ9)u4Sk&7TTOkFzgsQ+RLYQ_n-vOb>%uyh)zLLr!RqQZY-aWJK=!cu zdMd|R1HFo$T0^~$+pLkkz?0TkKjdwDMdwNt^1b+>poy-)64q2VV_j>ed+<$buE#Of zUe(L_iM7xVdC=a_(Wyhe?&b()ZWKQt8d*7!Yi& zjP=#67;W$AetgIJ>5n+t`s)?^#0Ka+{MrWUb4;*7`aW;jV4W?kW7vl1GAv?4^((At zvAQeU+W+(tPPY;I8*a2XeV!+5l&+O7qA^%Jt3dZQm`k0N?>7Nb-cl0=2 zS?9L*_3Lb86LcSTwuyQY<7|>%#`*T4KFz&0S>NGxo2p;T;4!r6x*@CEO#L=n+bkW& z{x(}*;}pHAr3w39_vC@b1+xkWO zL7(Lc`%ypOEjz4-WOY2-5&d+wP_RY+q_^uXc2sxD?mTM8^i{^&as6u!$Dk$XaXFpy z?1a9_Z|$TWoy&R1e%5!n(|*yra(hkNuX^WmZl|5ng`N)uH}r41p{{0U^hox!vw8ui z**TpnPssOEhl2CEkuGV!>&|Rrm-KiJx667Z7ugkkgxliCf9cfuLcs(5x6ZG#+dsN0%i0~?lF@co z$Fh(8t7mhP-P0Sm-0th2xW^vo6!}BJ1^rOx(^>41Zq73HSPx`(d!natyaiADcQY7o zDf9vEu#mpQQwVV%CP$I^=G!hFt(>nK*VlDajU z*^9a#yIZ7Q$3<3JC-JP6(WQ%of;?7M_hvgQr&n{nmDhjrlvU6#6!o>+D(W6=Z7=B+ zoNX`bt2}9yb&g_gvsKa6S=_4XHf(Cu^m@*>>N>Kx<4Z^BXk8;b-JR{NrXJ5&tD~22 zw$;_U_?6Yu=Xl)e>r^Ei@4A6*rb}5vJ&@h3k)Fo!)>v<1yhZB-?zbj7nU}1o4!?(U zN^7PgS-_g>Xx6Y-bq}_;*Y!9Kvp4jooMo+bBDY#c{rL-Cf4aNArZ<}_=%BB8MTOsw zEJ$hX{FkZdj~;^5jP*aJ;c=#AeIJyLewJ786s!B-^z`!)yexwtzrQI1eScf{Jz>M& zrx8SOG&AxxGqIOXmYM!tlpqUZe9~u`z^tt6lV_uURt~@4Ymmurl7p^W!te7MKCg%0 z<2C$zhu_~di05;B%;y>7M&#iR=4Bx_CLf10Ka*L2t=zbR+`vLC;zkzc0v6#jZfsEw zV=*SNI6JxVC3uV_+1Q~W%;H%S&m0oo^{;W3f#hq zEaOhU#3g*0Io`sloNE$$}oFTAa<=e8f6z z>p`o_!>q?B4_`P7ii-4&|#n z!xpUU!GDd*_&RfY65ilUwqy!VMl1GWYyQR# zJF<-@?=9|TC%)`Se49(ynOQuUT{x0md7tm_9ZzmI{>1LA`c$}lz%0V@T2^`DDl|9GY%kivJ#bd~woWOEbgWv-$ zefpQs@Gex<=>PU9Oj{7gLlz!|Jo({s*s{Fnu5 zc}zH!vzfYf5Pm<>U>xW2A?I;;9p@b0<^uMt8-(9`G`PrxjHwp{i+GTqvO)bISj=6F zXH5b*gfBOA-?)~`7}+QYKIdvKXOYH1u!76El6hY79B?+jU?|$hvNzW-fnTyk z6Q7eOxQ@|Hy(W2(8(6cM*BZa$SFF_BvCXyI%;K*)H*h|`X7(0tGbeHz?{Pc(zvkyT z@;Z00YDED;j~2e^O- znWc@-#S#30xA`OAY3o?!DIQ_dc3wODjz?L$y>lqP;c-TG@K|veGE6x+V#zVR4;W1~*aE!@wuto-(WU*k6Lyk8gV90V5_&x_35B?x}! zF#f?rUShkhj#VDw6;^#G2(EG|uQ6*kAInL+&QSLt{Qj9i9B=R*Z*p)C=K}u2B);3z zW5kP0X1jNT@Oxwi3H+N)d-+)I;~iG$?dOei3IAoTK0Y@m@jjpM0f+YWnqVRyvF&@l zCh|0&uvtHUN#XHl3RdjzHghdgvd93BG3PTipBd=uKSwhy|7JS&8szIge_?ty9PH~q zw=e@s5ApYMB_o)BsB;1rG81#eddxYNS@;hTbRYKL^~k$S>DPUjiv5_H1DS?Hn3lts zjwARKM=?Fe@@c-$44lYk_z@#Gl^HpMnK+A?IhR?ufX{LfvofC9xRlwsoH@9PIk|?p zxQ@BGkA!U_!i@4xGj)O^XW)A40K%}R`5WoBj- zW@T08U^V7ub>?9d^RosEu_lYM7E7=;OR)}1vo6cA9xJjwE3pBqvLU0`h_%?5b@>V# zFq)0ogiY9#&Do5vu{m4vRmQLd+wnEN$=BJ5Z?FqnvKw2mCtI^OWB4B1Z~)tKFxxSf z?KzwsIFe3j!5DVrc)rCC*ohzVZBAilPG=W>OsAq?4xNI6`E=?D7SgFESWKswUFEMpWu|g4Cfh+;CaUJcaG#`j$$H5^CrhInPYi}<9MIr z`IzrB_pDnn6E%^!Ca3MQz5j*iycI9IBU_5*CGxp;W4&qYAav4YPbB^Y6 zj^_$a8vIEbt6VJ0NFR%wMvNwNcKmNf%yu?^u<_KQlXkO)bUgJb2ax$-TI{)M> z-rzjmVye8f|H z%(HyLiwu9^zs&IUNFu}6BR3ho9!X~SdgKnn*CY2Cz8-nZ@byS2?!W7iGz?#lq-Xeg qB!c1Vkt_^fk7Q@~dL%c)*CTluz8)#a@byShhOb9TGJHJ}$^QeqHeyQv literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.dll.mdb.meta b/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.dll.mdb.meta new file mode 100644 index 0000000..1e81d1e --- /dev/null +++ b/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.dll.mdb.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 6f768c3714a34a549960ea903fbadcc2 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.dll.meta b/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.dll.meta new file mode 100644 index 0000000..2870dbc --- /dev/null +++ b/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.dll.meta @@ -0,0 +1,37 @@ +fileFormatVersion: 2 +guid: f1605f5534186904fa2c4c42acbfe01e +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: ["UNITY_INCLUDE_TESTS"] + isPreloaded: 0 + isOverridable: 1 + isExplicitlyReferenced: 1 + platformData: + - first: + '': Any + second: + enabled: 0 + settings: {} + - first: + Any: + second: + enabled: 1 + settings: {} + - first: + Editor: Editor + second: + enabled: 0 + settings: + DefaultValueInitialized: true + - first: + Windows Store Apps: WindowsStoreApps + second: + enabled: 0 + settings: + CPU: AnyCPU + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.pdb b/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.pdb new file mode 100644 index 0000000000000000000000000000000000000000..cae9b3931bc28a30f4da0809d424bf614c170afb GIT binary patch literal 1531392 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 m&cwR~L7hN@Kv|&Kpp~HiEy1huzrNSS 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 z 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

!Y80|BWvES*i>EG$F>ECId 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

M* zot`?_JW!oFiz*#bXo9(lkpJjHt|?Jq!NqGdy}O8;Iv#AcYE#ct7V@xder^vdolu@w zV?y&Q^(1(ar@8t0%O;tdwvKfs_rv^E6CN@waHZrYn7Y3v-Gj5v&FcJgvb{Fl#}#)Y zLEPLd?xI8P6e66D6w}ic*Wg@|sk^1J*Mvj*33Q=l8;Lz9sDH)WK^y1yzie^o%VC9V zaB-^LduA_YuVXEaQ^@YyyN^r1TE}$qD_tj7qQfD&`_Q6pPs~rUgMkuUcucGV@;`5y z=vlVfTEuI&s&qB-H^H- zmg+W$KUl}irLWhm@ccqkZ~?b$A`zZ*R^}p z97_w@w(`1#(hnWP6V|aX)~Y6DqZ1rwBJ|O=EoSGFy}2n|pcqzK_y9_AB~9JzlzUh? zp1zJn7T3e{o~N*TZt}}L+j!JLVhv>96`HGDcR)IS>zGb{#!@#->(;S|a%G#k;ks

bV%hS$LOa$+jkbxvhOcAQPW4A0n<*x{yM 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 U;NKGXw*>wzfqzTj|4s?~50&ozxBvhE literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.pdb.meta b/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.pdb.meta new file mode 100644 index 0000000..dc02745 --- /dev/null +++ b/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.pdb.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f136f1f122a53c64c9af51baecaa9c96 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.xml b/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.xml new file mode 100644 index 0000000..aea2099 --- /dev/null +++ b/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.xml @@ -0,0 +1,18101 @@ + + + + nunit.framework + + + +

+ Basic Asserts on strings. + + + + + The Equals method throws an InvalidOperationException. This is done + to make sure there is no mistake by calling this function. + + + + + + + override the default ReferenceEquals to throw an InvalidOperationException. This + implementation makes sure there is no mistake in calling this function + as part of Assert. + + + + + + + Asserts that a string is found within another string. + + The expected string + The string to be examined + The message to display in case of failure + Arguments used in formatting the message + + + + Asserts that a string is found within another string. + + The expected string + The string to be examined + + + + Asserts that a string is not found within another string. + + The expected string + The string to be examined + The message to display in case of failure + Arguments used in formatting the message + + + + Asserts that a string is found within another string. + + The expected string + The string to be examined + + + + Asserts that a string starts with another string. + + The expected string + The string to be examined + The message to display in case of failure + Arguments used in formatting the message + + + + Asserts that a string starts with another string. + + The expected string + The string to be examined + + + + Asserts that a string does not start with another string. + + The expected string + The string to be examined + The message to display in case of failure + Arguments used in formatting the message + + + + Asserts that a string does not start with another string. + + The expected string + The string to be examined + + + + Asserts that a string ends with another string. + + The expected string + The string to be examined + The message to display in case of failure + Arguments used in formatting the message + + + + Asserts that a string ends with another string. + + The expected string + The string to be examined + + + + Asserts that a string does not end with another string. + + The expected string + The string to be examined + The message to display in case of failure + Arguments used in formatting the message + + + + Asserts that a string does not end with another string. + + The expected string + The string to be examined + + + + Asserts that two strings are equal, without regard to case. + + The expected string + The actual string + The message to display in case of failure + Arguments used in formatting the message + + + + Asserts that two strings are equal, without regard to case. + + The expected string + The actual string + + + + Asserts that two strings are not equal, without regard to case. + + The expected string + The actual string + The message to display in case of failure + Arguments used in formatting the message + + + + Asserts that two strings are not equal, without regard to case. + + The expected string + The actual string + + + + Asserts that a string matches an expected regular expression pattern. + + The regex pattern to be matched + The actual string + The message to display in case of failure + Arguments used in formatting the message + + + + Asserts that a string matches an expected regular expression pattern. + + The regex pattern to be matched + The actual string + + + + Asserts that a string does not match an expected regular expression pattern. + + The regex pattern to be used + The actual string + The message to display in case of failure + Arguments used in formatting the message + + + + Asserts that a string does not match an expected regular expression pattern. + + The regex pattern to be used + The actual string + + + + Combines multiple filters so that a test must pass all + of them in order to pass this filter. + + + + + A base class for multi-part filters + + + + + Interface to be implemented by filters applied to tests. + The filter applies when running the test, after it has been + loaded, since this is the only time an ITest exists. + + + + + Interface to be implemented by filters applied to tests. + The filter applies when running the test, after it has been + loaded, since this is the only time an ITest exists. + + + + + An object implementing IXmlNodeBuilder is able to build + an XML representation of itself and any children. + + + + + Returns a TNode representing the current object. + + If true, children are included where applicable + A TNode representing the result + + + + Returns a TNode representing the current object after + adding it as a child of the supplied parent node. + + The parent node. + If true, children are included, where applicable + + + + + Determine if a particular test passes the filter criteria. Pass + may examine the parents and/or descendants of a test, depending + on the semantics of the particular filter + + The test to which the filter is applied + True if the test passes the filter, otherwise false + + + + Determine if a test matches the filter expicitly. That is, it must + be a direct match of the test itself or one of it's children. + + The test to which the filter is applied + True if the test matches the filter explicityly, otherwise false + + + + Unique Empty filter. + + + + + Determine if a particular test passes the filter criteria. The default + implementation checks the test itself, its parents and any descendants. + + Derived classes may override this method or any of the Match methods + to change the behavior of the filter. + + The test to which the filter is applied + True if the test passes the filter, otherwise false + + + + Determine if a test matches the filter expicitly. That is, it must + be a direct match of the test itself or one of it's children. + + The test to which the filter is applied + True if the test matches the filter explicityly, otherwise false + + + + Determine whether the test itself matches the filter criteria, without + examining either parents or descendants. This is overridden by each + different type of filter to perform the necessary tests. + + The test to which the filter is applied + True if the filter matches the any parent of the test + + + + Determine whether any ancestor of the test matches the filter criteria + + The test to which the filter is applied + True if the filter matches the an ancestor of the test + + + + Determine whether any descendant of the test matches the filter criteria. + + The test to be matched + True if at least one descendant matches the filter criteria + + + + Create a TestFilter instance from an xml representation. + + + + + Create a TestFilter from it's TNode representation + + + + + Adds an XML node + + True if recursive + The added XML node + + + + Adds an XML node + + Parent node + True if recursive + The added XML node + + + + Indicates whether this is the EmptyFilter + + + + + Indicates whether this is a top-level filter, + not contained in any other filter. + + + + + Nested class provides an empty filter - one that always + returns true when called. It never matches explicitly. + + + + + Constructs an empty CompositeFilter + + + + + Constructs a CompositeFilter from an array of filters + + + + + + Adds a filter to the list of filters + + The filter to be added + + + + Checks whether the CompositeFilter is matched by a test. + + The test to be matched + + + + Checks whether the CompositeFilter is matched by a test. + + The test to be matched + + + + Checks whether the CompositeFilter is explicit matched by a test. + + The test to be matched + + + + Adds an XML node + + Parent node + True if recursive + The added XML node + + + + Return a list of the composing filters. + + + + + Gets the element name + + Element name + + + + Constructs an empty AndFilter + + + + + Constructs an AndFilter from an array of filters + + + + + + Checks whether the AndFilter is matched by a test + + The test to be matched + True if all the component filters pass, otherwise false + + + + Checks whether the AndFilter is matched by a test + + The test to be matched + True if all the component filters match, otherwise false + + + + Checks whether the AndFilter is explicit matched by a test. + + The test to be matched + True if all the component filters explicit match, otherwise false + + + + Gets the element name + + Element name + + + + SubstringConstraint can test whether a string contains + the expected substring. + + + + + StringConstraint is the abstract base for constraints + that operate on strings. It supports the IgnoreCase + modifier for string operations. + + + + + The Constraint class is the base of all built-in constraints + within NUnit. It provides the operator overloads used to combine + constraints. + + + + + Interface for all constraints + + + + + The IResolveConstraint interface is implemented by all + complete and resolvable constraints and expressions. + + + + + Return the top-level constraint for this expression + + + + + + Applies the constraint to an actual value, returning a ConstraintResult. + + The value to be tested + A ConstraintResult + + + + Applies the constraint to an ActualValueDelegate that returns + the value to be tested. The default implementation simply evaluates + the delegate but derived classes may override it to provide for + delayed processing. + + An ActualValueDelegate + A ConstraintResult + + + + Test whether the constraint is satisfied by a given reference. + The default implementation simply dereferences the value but + derived classes may override it to provide for delayed processing. + + A reference to the value to be tested + A ConstraintResult + + + + The display name of this Constraint for use by ToString(). + + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + Arguments provided to this Constraint, for use in + formatting the description. + + + + + The ConstraintBuilder holding this constraint + + + + + Construct a constraint with optional arguments + + Arguments to be saved + + + + Applies the constraint to an actual value, returning a ConstraintResult. + + The value to be tested + A ConstraintResult + + + + Applies the constraint to an ActualValueDelegate that returns + the value to be tested. The default implementation simply evaluates + the delegate but derived classes may override it to provide for + delayed processing. + + An ActualValueDelegate + A ConstraintResult + + + + Test whether the constraint is satisfied by a given reference. + The default implementation simply dereferences the value but + derived classes may override it to provide for delayed processing. + + A reference to the value to be tested + A ConstraintResult + + + + Retrieves the value to be tested from an ActualValueDelegate. + The default implementation simply evaluates the delegate but derived + classes may override it to provide for delayed processing. + + An ActualValueDelegate + Delegate evaluation result + + + + Default override of ToString returns the constraint DisplayName + followed by any arguments within angle brackets. + + + + + + Returns the string representation of this constraint + + + + + This operator creates a constraint that is satisfied only if both + argument constraints are satisfied. + + + + + This operator creates a constraint that is satisfied if either + of the argument constraints is satisfied. + + + + + This operator creates a constraint that is satisfied if the + argument constraint is not satisfied. + + + + + Returns a DelayedConstraint with the specified delay time. + + The delay in milliseconds. + + + + + Returns a DelayedConstraint with the specified delay time + and polling interval. + + The delay in milliseconds. + The interval at which to test the constraint. + + + + + Resolves any pending operators and returns the resolved constraint. + + + + + The display name of this Constraint for use by ToString(). + The default value is the name of the constraint with + trailing "Constraint" removed. Derived classes may set + this to another name in their constructors. + + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + Arguments provided to this Constraint, for use in + formatting the description. + + + + + The ConstraintBuilder holding this constraint + + + + + Returns a ConstraintExpression by appending And + to the current constraint. + + + + + Returns a ConstraintExpression by appending And + to the current constraint. + + + + + Returns a ConstraintExpression by appending Or + to the current constraint. + + + + + The expected value + + + + + Indicates whether tests should be case-insensitive + + + + + Description of this constraint + + + + + Constructs a StringConstraint without an expected value + + + + + Constructs a StringConstraint given an expected value + + The expected value + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True for success, false for failure + + + + Test whether the constraint is satisfied by a given string + + The string to be tested + True for success, false for failure + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + Modify the constraint to ignore case in matching. + + + + + Initializes a new instance of the class. + + The expected. + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True for success, false for failure + + + + Abstract base class used for prefixes + + + + + Construct given a base constraint + + + + + + The base constraint + + + + + Prefix used in forming the constraint description + + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + AssignableToConstraint is used to test that an object + can be assigned to a given Type. + + + + + TypeConstraint is the abstract base for constraints + that take a Type as their expected value. + + + + + The expected Type used by the constraint + + + + + The type of the actual argument to which the constraint was applied + + + + + Construct a TypeConstraint for a given Type + + The expected type for the constraint + Prefix used in forming the constraint description + + + + Applies the constraint to an actual value, returning a ConstraintResult. + + The value to be tested + A ConstraintResult + + + + Apply the constraint to an actual value, returning true if it succeeds + + The actual argument + True if the constraint succeeds, otherwise false. + + + + Construct an AssignableToConstraint for the type provided + + + + + + Apply the constraint to an actual value, returning true if it succeeds + + The actual argument + True if the constraint succeeds, otherwise false. + + + + Summary description for MaxTimeAttribute. + + + + + PropertyAttribute is used to attach information to a test as a name/value pair.. + + + + + The abstract base class for all custom attributes defined by NUnit. + + + + + Default constructor + + + + + The IApplyToTest interface is implemented by self-applying + attributes that modify the state of a test in some way. + + + + + Modifies a test as defined for the specific attribute. + + The test to modify + + + + Construct a PropertyAttribute with a name and string value + + The name of the property + The property value + + + + Construct a PropertyAttribute with a name and int value + + The name of the property + The property value + + + + Construct a PropertyAttribute with a name and double value + + The name of the property + The property value + + + + Constructor for derived classes that set the + property dictionary directly. + + + + + Constructor for use by derived classes that use the + name of the type as the property name. Derived classes + must ensure that the Type of the property value is + a standard type supported by the BCL. Any custom + types will cause a serialization Exception when + in the client. + + + + + Modifies a test by adding properties to it. + + The test to modify + + + + Gets the property dictionary for this attribute + + + + + Objects implementing this interface are used to wrap + the entire test, including SetUp and TearDown. + + + + + ICommandWrapper is implemented by attributes and other + objects able to wrap a TestCommand with another command. + + + Attributes or other objects should implement one of the + derived interfaces, rather than this one, since they + indicate in which part of the command chain the wrapper + should be applied. + + + + + Wrap a command and return the result. + + The command to be wrapped + The wrapped command + + + + Construct a MaxTimeAttribute, given a time in milliseconds. + + The maximum elapsed time in milliseconds + + + + Randomizer returns a set of random _values in a repeatable + way, to allow re-running of tests if necessary. It extends + the .NET Random class, providing random values for a much + wider range of types. + + The class is used internally by the framework to generate + test case data and is also exposed for use by users through + the TestContext.Random property. + + + For consistency with the underlying Random Type, methods + returning a single value use the prefix "Next..." Those + without an argument return a non-negative value up to + the full positive range of the Type. Overloads are provided + for specifying a maximum or a range. Methods that return + arrays or strings use the prefix "Get..." to avoid + confusion with the single-value methods. + + + + + Default characters for random functions. + + Default characters are the English alphabet (uppercase & lowercase), arabic numerals, and underscore + + + + Get a Randomizer for a particular member, returning + one that has already been created if it exists. + This ensures that the same _values are generated + each time the tests are reloaded. + + + + + Get a randomizer for a particular parameter, returning + one that has already been created if it exists. + This ensures that the same values are generated + each time the tests are reloaded. + + + + + Create a new Randomizer using the next seed + available to ensure that each randomizer gives + a unique sequence of values. + + + + + + Default constructor + + + + + Construct based on seed value + + + + + + Returns a random unsigned int. + + + + + Returns a random unsigned int less than the specified maximum. + + + + + Returns a random unsigned int within a specified range. + + + + + Returns a non-negative random short. + + + + + Returns a non-negative random short less than the specified maximum. + + + + + Returns a non-negative random short within a specified range. + + + + + Returns a random unsigned short. + + + + + Returns a random unsigned short less than the specified maximum. + + + + + Returns a random unsigned short within a specified range. + + + + + Returns a random long. + + + + + Returns a random long less than the specified maximum. + + + + + Returns a non-negative random long within a specified range. + + + + + Returns a random ulong. + + + + + Returns a random ulong less than the specified maximum. + + + + + Returns a non-negative random long within a specified range. + + + + + Returns a random Byte + + + + + Returns a random Byte less than the specified maximum. + + + + + Returns a random Byte within a specified range + + + + + Returns a random SByte + + + + + Returns a random sbyte less than the specified maximum. + + + + + Returns a random sbyte within a specified range + + + + + Returns a random bool + + + + + Returns a random bool based on the probablility a true result + + + + + Returns a random double between 0.0 and the specified maximum. + + + + + Returns a random double within a specified range. + + + + + Returns a random float. + + + + + Returns a random float between 0.0 and the specified maximum. + + + + + Returns a random float within a specified range. + + + + + Returns a random enum value of the specified Type as an object. + + + + + Returns a random enum value of the specified Type. + + + + + Generate a random string based on the characters from the input string. + + desired length of output string. + string representing the set of characters from which to construct the resulting string + A random string of arbitrary length + + + + Generate a random string based on the characters from the input string. + + desired length of output string. + A random string of arbitrary length + Uses DefaultStringChars as the input character set + + + + Generate a random string based on the characters from the input string. + + A random string of the default length + Uses DefaultStringChars as the input character set + + + + Returns a random decimal. + + + + + Returns a random decimal between positive zero and the specified maximum. + + + + + Returns a random decimal within a specified range, which is not + permitted to exceed decimal.MaxVal in the current implementation. + + + A limitation of this implementation is that the range from min + to max must not exceed decimal.MaxVal. + + + + + Initial seed used to create randomizers for this run + + + + + The IFixtureBuilder interface is exposed by a class that knows how to + build a TestFixture from one or more Types. In general, it is exposed + by an attribute, but may be implemented in a helper class used by the + attribute in some cases. + + + + + Build one or more TestFixtures from type provided. At least one + non-null TestSuite must always be returned, since the method is + generally called because the user has marked the target class as + a fixture. If something prevents the fixture from being used, it + will be returned nonetheless, labelled as non-runnable. + + The type info of the fixture to be used. + A TestSuite object or one derived from TestSuite. + + + + The ITestBuilder interface is exposed by a class that knows how to + build one or more TestMethods from a MethodInfo. In general, it is exposed + by an attribute, which has additional information available to provide + the necessary test parameters to distinguish the test cases built. + + + + + Build one or more TestMethods from the provided MethodInfo. + + The method to be used as a test + The TestSuite to which the method will be added + A TestMethod object + + + + The IReflectionInfo interface is implemented by NUnit wrapper objects that perform reflection. + + + + + Returns an array of custom attributes of the specified type applied to this object + + + + + Returns a value indicating whether an attribute of the specified type is defined on this object. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents the result of running a test suite + + + + + The TestResult class represents the result of a test. + + + + + The ITestResult interface represents the result of a test. + + + + + Gets the ResultState of the test result, which + indicates the success or failure of the test. + + + + + Gets the name of the test result + + + + + Gets the full name of the test result + + + + + Gets the elapsed time for running the test in seconds + + + + + Gets or sets the time the test started running. + + + + + Gets or sets the time the test finished running. + + + + + Gets the message associated with a test + failure or with not running the test + + + + + Gets any stacktrace associated with an + error or failure. Not available in + the Compact Framework 1.0. + + + + + Gets the number of asserts executed + when running the test and all its children. + + + + + Gets the number of test cases that failed + when running the test and all its children. + + + + + Gets the number of test cases that passed + when running the test and all its children. + + + + + Gets the number of test cases that were skipped + when running the test and all its children. + + + + + Gets the number of test cases that were inconclusive + when running the test and all its children. + + + + + Indicates whether this result has any child results. + Accessing HasChildren should not force creation of the + Children collection in classes implementing this interface. + + + + + Gets the the collection of child results. + + + + + Gets the Test to which this result applies. + + + + + Gets any text output written to this result. + + + + + The minimum duration for tests + + + + + Error message for when child tests have errors + + + + + Error message for when child tests are ignored + + + + + Aggregate assertion count + + + + + Construct a test result given a Test + + The test to be used + + + + Returns the Xml representation of the result. + + If true, descendant results are included + An XmlNode representing the result + + + + Adds the XML representation of the result as a child of the + supplied parent node.. + + The parent node. + If true, descendant results are included + + + + + Set the result of the test + + The ResultState to use in the result + + + + Set the result of the test + + The ResultState to use in the result + A message associated with the result state + + + + Set the result of the test + + The ResultState to use in the result + A message associated with the result state + Stack trace giving the location of the command + + + + Set the test result based on the type of exception thrown + + The exception that was thrown + + + + Set the test result based on the type of exception thrown + + The exception that was thrown + THe FailureSite to use in the result + + + + RecordTearDownException appends the message and stacktrace + from an exception arising during teardown of the test + to any previously recorded information, so that any + earlier failure information is not lost. Note that + calling Assert.Ignore, Assert.Inconclusive, etc. during + teardown is treated as an error. If the current result + represents a suite, it may show a teardown error even + though all contained tests passed. + + The Exception to be recorded + + + + Adds a reason element to a node and returns it. + + The target node. + The new reason element. + + + + Adds a failure element to a node and returns it. + + The target node. + The new failure element. + + + + Gets the test with which this result is associated. + + + + + Gets the ResultState of the test result, which + indicates the success or failure of the test. + + + + + Gets the name of the test result + + + + + Gets the full name of the test result + + + + + Gets or sets the elapsed time for running the test in seconds + + + + + Gets or sets the time the test started running. + + + + + Gets or sets the time the test finished running. + + + + + Gets the message associated with a test + failure or with not running the test + + + + + Gets any stacktrace associated with an + error or failure. + + + + + Gets or sets the count of asserts executed + when running the test. + + + + + Gets the number of test cases that failed + when running the test and all its children. + + + + + Gets the number of test cases that passed + when running the test and all its children. + + + + + Gets the number of test cases that were skipped + when running the test and all its children. + + + + + Gets the number of test cases that were inconclusive + when running the test and all its children. + + + + + Indicates whether this result has any child results. + + + + + Gets the collection of child results. + + + + + Gets a TextWriter, which will write output to be included in the result. + + + + + Gets any text output written to this result. + + + + + Construct a TestSuiteResult base on a TestSuite + + The TestSuite to which the result applies + + + + Adds a child result to this result, setting this result's + ResultState to Failure if the child result failed. + + The result to be added + + + + Gets the number of test cases that failed + when running the test and all its children. + + + + + Gets the number of test cases that passed + when running the test and all its children. + + + + + Gets the number of test cases that were skipped + when running the test and all its children. + + + + + Gets the number of test cases that were inconclusive + when running the test and all its children. + + + + + Indicates whether this result has any child results. + + + + + Gets the collection of child results. + + + + + TestSuite represents a composite test, which contains other tests. + + + + + The Test abstract class represents a test within the framework. + + + + + Common interface supported by all representations + of a test. Only includes informational fields. + The Run method is specifically excluded to allow + for data-only representations of a test. + + + + + Gets the id of the test + + + + + Gets the name of the test + + + + + Gets the fully qualified name of the test + + + + + Gets the name of the class containing this test. Returns + null if the test is not associated with a class. + + + + + Gets the name of the method implementing this test. + Returns null if the test is not implemented as a method. + + + + + Gets the Type of the test fixture, if applicable, or + null if no fixture type is associated with this test. + + + + + Gets an IMethod for the method implementing this test. + Returns null if the test is not implemented as a method. + + + + + Gets the RunState of the test, indicating whether it can be run. + + + + + Count of the test cases ( 1 if this is a test case ) + + + + + Gets the properties of the test + + + + + Gets the parent test, if any. + + The parent test or null if none exists. + + + + Returns true if this is a test suite + + + + + Gets a bool indicating whether the current test + has any descendant tests. + + + + + Gets this test's child tests + + A list of child tests + + + + Gets a fixture object for running this test. + + + + + Static value to seed ids. It's started at 1000 so any + uninitialized ids will stand out. + + + + + The SetUp methods. + + + + + The teardown methods + + + + + Used to cache the declaring type for this MethodInfo + + + + + Method property backing field + + + + + Constructs a test given its name + + The name of the test + + + + Constructs a test given the path through the + test hierarchy to its parent and a name. + + The parent tests full name + The name of the test + + + + TODO: Documentation needed for constructor + + + + + + Construct a test from a MethodInfo + + + + + + Creates a TestResult for this test. + + A TestResult suitable for this type of test. + + + + Modify a newly constructed test by applying any of NUnit's common + attributes, based on a supplied ICustomAttributeProvider, which is + usually the reflection element from which the test was constructed, + but may not be in some instances. The attributes retrieved are + saved for use in subsequent operations. + + An object implementing ICustomAttributeProvider + + + + Add standard attributes and members to a test node. + + + + + + + Returns the Xml representation of the test + + If true, include child tests recursively + + + + + Returns an XmlNode representing the current result after + adding it as a child of the supplied parent node. + + The parent node. + If true, descendant results are included + + + + + Compares this test to another test for sorting purposes + + The other test + Value of -1, 0 or +1 depending on whether the current test is less than, equal to or greater than the other test + + + + Gets or sets the id of the test + + + + + + Gets or sets the name of the test + + + + + Gets or sets the fully qualified name of the test + + + + + + Gets the name of the class where this test was declared. + Returns null if the test is not associated with a class. + + + + + Gets the name of the method implementing this test. + Returns null if the test is not implemented as a method. + + + + + Gets the TypeInfo of the fixture used in running this test + or null if no fixture type is associated with it. + + + + + Gets a MethodInfo for the method implementing this test. + Returns null if the test is not implemented as a method. + + + + + Whether or not the test should be run + + + + + Gets the name used for the top-level element in the + XML representation of this test + + + + + Gets a string representing the type of test. Used as an attribute + value in the XML representation of a test and has no other + function in the framework. + + + + + Gets a count of test cases represented by + or contained under this test. + + + + + Gets the properties for this test + + + + + Returns true if this is a TestSuite + + + + + Gets a bool indicating whether the current test + has any descendant tests. + + + + + Gets the parent as a Test object. + Used by the core to set the parent. + + + + + Gets this test's child tests + + A list of child tests + + + + Gets or sets a fixture object for running this test. + + + + + Static prefix used for ids in this AppDomain. + Set by FrameworkController. + + + + + Gets or Sets the Int value representing the seed for the RandomGenerator + + + + + + Our collection of child tests + + + + + Initializes a new instance of the class. + + The name of the suite. + + + + Initializes a new instance of the class. + + Name of the parent suite. + The name of the suite. + + + + Initializes a new instance of the class. + + Type of the fixture. + + + + Initializes a new instance of the class. + + Type of the fixture. + + + + Sorts tests under this suite. + + + + + Adds a test to the suite. + + The test. + + + + Overridden to return a TestSuiteResult. + + A TestResult for this test. + + + + Returns an XmlNode representing the current result after + adding it as a child of the supplied parent node. + + The parent node. + If true, descendant results are included + + + + + Check that setup and teardown methods marked by certain attributes + meet NUnit's requirements and mark the tests not runnable otherwise. + + The attribute type to check for + + + + Gets this test's child tests + + The list of child tests + + + + Gets a count of test cases represented by + or contained under this test. + + + + + + The arguments to use in creating the fixture + + + + + Set to true to suppress sorting this suite's contents + + + + + Gets a bool indicating whether the current test + has any descendant tests. + + + + + Gets the name used for the top-level element in the + XML representation of this test + + + + + A PropertyBag represents a collection of name value pairs + that allows duplicate entries with the same key. Methods + are provided for adding a new pair as well as for setting + a key to a single value. All keys are strings but _values + may be of any type. Null _values are not permitted, since + a null entry represents the absence of the key. + + + + + A PropertyBag represents a collection of name/value pairs + that allows duplicate entries with the same key. Methods + are provided for adding a new pair as well as for setting + a key to a single value. All keys are strings but _values + may be of any type. Null _values are not permitted, since + a null entry represents the absence of the key. + + The entries in a PropertyBag are of two kinds: those that + take a single value and those that take multiple _values. + However, the PropertyBag has no knowledge of which entries + fall into each category and the distinction is entirely + up to the code using the PropertyBag. + + When working with multi-valued properties, client code + should use the Add method to add name/value pairs and + indexing to retrieve a list of all _values for a given + key. For example: + + bag.Add("Tag", "one"); + bag.Add("Tag", "two"); + Assert.That(bag["Tag"], + Is.EqualTo(new string[] { "one", "two" })); + + When working with single-valued propeties, client code + should use the Set method to set the value and Get to + retrieve the value. The GetSetting methods may also be + used to retrieve the value in a type-safe manner while + also providing default. For example: + + bag.Set("Priority", "low"); + bag.Set("Priority", "high"); // replaces value + Assert.That(bag.Get("Priority"), + Is.EqualTo("high")); + Assert.That(bag.GetSetting("Priority", "low"), + Is.EqualTo("high")); + + + + + Adds a key/value pair to the property bag + + The key + The value + + + + Sets the value for a key, removing any other + _values that are already in the property set. + + + + + + + Gets a single value for a key, using the first + one if multiple _values are present and returning + null if the value is not found. + + + + + Gets a flag indicating whether the specified key has + any entries in the property set. + + The key to be checked + True if their are _values present, otherwise false + + + + Gets or sets the list of _values for a particular key + + The key for which the _values are to be retrieved or set + + + + Gets a collection containing all the keys in the property set + + + + + Adds a key/value pair to the property set + + The key + The value + + + + Sets the value for a key, removing any other + _values that are already in the property set. + + + + + + + Gets a single value for a key, using the first + one if multiple _values are present and returning + null if the value is not found. + + + + + + + Gets a flag indicating whether the specified key has + any entries in the property set. + + The key to be checked + + True if their are _values present, otherwise false + + + + + Returns an XmlNode representating the current PropertyBag. + + Not used + An XmlNode representing the PropertyBag + + + + Returns an XmlNode representing the PropertyBag after + adding it as a child of the supplied parent node. + + The parent node. + Not used + + + + + Gets a collection containing all the keys in the property set + + + + + + Gets or sets the list of _values for a particular key + + + + + Thrown when an assertion failed. Here to preserve the inner + exception and hence its stack trace. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The error message that explains + the reason for the exception + + + + Initializes a new instance of the class. + + The error message that explains + the reason for the exception + The exception that caused the + current exception + + + + Serialization Constructor + + + + + FullName filter selects tests based on their FullName + + + + + ValueMatchFilter selects tests based on some value, which + is expected to be contained in the test. + + + + + Construct a ValueMatchFilter for a single value. + + The value to be included. + + + + Match the input provided by the derived class + + The value to be matchedT + True for a match, false otherwise. + + + + Adds an XML node + + Parent node + True if recursive + The added XML node + + + + Returns the value matched by the filter - used for testing + + + + + Indicates whether the value is a regular expression + + + + + Gets the element name + + Element name + + + + Construct a FullNameFilter for a single name + + The name the filter will recognize. + + + + Match a test against a single value. + + + + + Gets the element name + + Element name + + + + NotFilter negates the operation of another filter + + + + + Construct a not filter on another filter + + The filter to be negated + + + + Determine if a particular test passes the filter criteria. The default + implementation checks the test itself, its parents and any descendants. + + Derived classes may override this method or any of the Match methods + to change the behavior of the filter. + + The test to which the filter is applied + True if the test passes the filter, otherwise false + + + + Check whether the filter matches a test + + The test to be matched + True if it matches, otherwise false + + + + Determine if a test matches the filter expicitly. That is, it must + be a direct match of the test itself or one of it's children. + + The test to which the filter is applied + True if the test matches the filter explicityly, otherwise false + + + + Adds an XML node + + Parent node + True if recursive + The added XML node + + + + Gets the base filter + + + + + SequentialStrategy creates test cases by using all of the + parameter data sources in parallel, substituting null + when any of them run out of data. + + + + + CombiningStrategy is the abstract base for classes that + know how to combine values provided for individual test + parameters to create a set of test cases. + + + + + Gets the test cases generated by the CombiningStrategy. + + The test cases. + + + + Gets the test cases generated by the CombiningStrategy. + + The test cases. + + + + NUnitTestFixtureBuilder is able to build a fixture given + a class marked with a TestFixtureAttribute or an unmarked + class containing test methods. In the first case, it is + called by the attribute and in the second directly by + NUnitSuiteBuilder. + + + + + Build a TestFixture from type provided. A non-null TestSuite + must always be returned, since the method is generally called + because the user has marked the target class as a fixture. + If something prevents the fixture from being used, it should + be returned nonetheless, labelled as non-runnable. + + An ITypeInfo for the fixture to be used. + A TestSuite object or one derived from TestSuite. + + + + Overload of BuildFrom called by tests that have arguments. + Builds a fixture using the provided type and information + in the ITestFixtureData object. + + The TypeInfo for which to construct a fixture. + An object implementing ITestFixtureData or null. + + + + + Method to add test cases to the newly constructed fixture. + + The fixture to which cases should be added + + + + Method to create a test case from a MethodInfo and add + it to the fixture being built. It first checks to see if + any global TestCaseBuilder addin wants to build the + test case. If not, it uses the internal builder + collection maintained by this fixture builder. + + The default implementation has no test case builders. + Derived classes should add builders to the collection + in their constructor. + + The method for which a test is to be created + The test suite being built. + A newly constructed Test + + + + UniqueItemsConstraint tests whether all the items in a + collection are unique. + + + + + CollectionItemsEqualConstraint is the abstract base class for all + collection constraints that apply some notion of item equality + as a part of their operation. + + + + + CollectionConstraint is the abstract base class for + constraints that operate on collections. + + + + + Construct an empty CollectionConstraint + + + + + Construct a CollectionConstraint + + + + + + Determines whether the specified enumerable is empty. + + The enumerable. + + true if the specified enumerable is empty; otherwise, false. + + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True for success, false for failure + + + + Protected method to be implemented by derived classes + + + + + + + Construct an empty CollectionConstraint + + + + + Construct a CollectionConstraint + + + + + + Flag the constraint to use the supplied IComparer object. + + The IComparer object to use. + Self. + + + + Flag the constraint to use the supplied IComparer object. + + The IComparer object to use. + Self. + + + + Flag the constraint to use the supplied Comparison object. + + The IComparer object to use. + Self. + + + + Flag the constraint to use the supplied IEqualityComparer object. + + The IComparer object to use. + Self. + + + + Flag the constraint to use the supplied IEqualityComparer object. + + The IComparer object to use. + Self. + + + + Compares two collection members for equality + + + + + Return a new CollectionTally for use in making tests + + The collection to be included in the tally + + + + Flag the constraint to ignore case and return self. + + + + + Check that all items are unique. + + + + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + SamePathOrUnderConstraint tests that one path is under another + + + + + PathConstraint serves as the abstract base of constraints + that operate on paths and provides several helper methods. + + + + + Construct a PathConstraint for a give expected path + + The expected path + + + + Returns the string representation of this constraint + + + + + Canonicalize the provided path + + + The path in standardized form + + + + Test whether one path in canonical form is a subpath of another path + + The first path - supposed to be the parent path + The second path - supposed to be the child path + + + + + Modifies the current instance to be case-sensitive + and returns it. + + + + + Initializes a new instance of the class. + + The expected path + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True for success, false for failure + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + NoItemConstraint applies another constraint to each + item in a collection, failing if any of them succeeds. + + + + + Construct a SomeItemsConstraint on top of an existing constraint + + + + + + Apply the item constraint to each item in the collection, + failing if any item fails. + + + + + + + The display name of this Constraint for use by ToString(). + The default value is the name of the constraint with + trailing "Constraint" removed. Derived classes may set + this to another name in their constructors. + + + + + EndsWithConstraint can test whether a string ends + with an expected substring. + + + + + Initializes a new instance of the class. + + The expected string + + + + Test whether the constraint is matched by the actual value. + This is a template method, which calls the IsMatch method + of the derived class. + + + + + + + ValuesAttribute is used to provide literal arguments for + an individual parameter of a test. + + + + + The abstract base class for all data-providing attributes + defined by NUnit. Used to select all data sources for a + method, class or parameter. + + + + + Default constructor + + + + + The IParameterDataSource interface is implemented by types + that can provide data for a test method parameter. + + + + + Gets an enumeration of data items for use as arguments + for a test method parameter. + + The parameter for which data is needed + An enumeration containing individual data items + + + + The collection of data to be returned. Must + be set by any derived attribute classes. + We use an object[] so that the individual + elements may have their type changed in GetData + if necessary + + + + + Constructs for use with an Enum parameter. Will pass every enum + value in to the test. + + + + + Construct with one argument + + + + + + Construct with two arguments + + + + + + + Construct with three arguments + + + + + + + + Construct with an array of arguments + + + + + + Get the collection of _values to be used as arguments + + + + + Marks a test to use a pairwise join of any argument + data provided. Arguments will be combined in such a + way that all possible pairs of arguments are used. + + + + + Marks a test to use a particular CombiningStrategy to join + any parameter data provided. Since this is the default, the + attribute is optional. + + + + + Construct a CombiningStrategyAttribute incorporating an + ICombiningStrategy and an IParamterDataProvider. + + Combining strategy to be used in combining data + An IParameterDataProvider to supply data + + + + Construct a CombiningStrategyAttribute incorporating an object + that implements ICombiningStrategy and an IParameterDataProvider. + This constructor is provided for CLS compliance. + + Combining strategy to be used in combining data + An IParameterDataProvider to supply data + + + + Construct one or more TestMethods from a given MethodInfo, + using available parameter data. + + The MethodInfo for which tests are to be constructed. + The suite to which the tests will be added. + One or more TestMethods + + + + Modify the test by adding the name of the combining strategy + to the properties. + + The test to modify + + + + Default constructor + + + + + CultureAttribute is used to mark a test fixture or an + individual method as applying to a particular Culture only. + + + + + Abstract base for Attributes that are used to include tests + in the test run based on environmental settings. + + + + + Constructor with no included items specified, for use + with named property syntax. + + + + + Constructor taking one or more included items + + Comma-delimited list of included items + + + + Name of the item that is needed in order for + a test to run. Multiple items may be given, + separated by a comma. + + + + + Name of the item to be excluded. Multiple items + may be given, separated by a comma. + + + + + The reason for including or excluding the test + + + + + Constructor with no cultures specified, for use + with named property syntax. + + + + + Constructor taking one or more cultures + + Comma-deliminted list of cultures + + + + Causes a test to be skipped if this CultureAttribute is not satisfied. + + The test to modify + + + + Tests to determine if the current culture is supported + based on the properties of this attribute. + + True, if the current culture is supported + + + + Test to determine if the a particular culture or comma- + delimited set of cultures is in use. + + Name of the culture or comma-separated list of culture ids + True if the culture is in use on the system + + + + Test to determine if one of a collection of cultures + is being used currently. + + + + + + + The current state of a work item + + + + + Ready to run or continue + + + + + Work Item is executing + + + + + Complete + + + + + A WorkItem may be an individual test case, a fixture or + a higher level grouping of tests. All WorkItems inherit + from the abstract WorkItem class, which uses the template + pattern to allow derived classes to perform work in + whatever way is needed. + + A WorkItem is created with a particular TestExecutionContext + and is responsible for re-establishing that context in the + current thread before it begins or resumes execution. + + + + + Creates a work item. + + The test for which this WorkItem is being created. + The filter to be used in selecting any child Tests. + + + + + Construct a WorkItem for a particular test. + + The test that the WorkItem will run + + + + Initialize the TestExecutionContext. This must be done + before executing the WorkItem. + + + Originally, the context was provided in the constructor + but delaying initialization of the context until the item + is about to be dispatched allows changes in the parent + context during OneTimeSetUp to be reflected in the child. + + The TestExecutionContext to use + + + + Execute the current work item, including any + child work items. + + + + + Cancel (abort or stop) a WorkItem + + true if the WorkItem should be aborted, false if it should run to completion + + + + Method that performs actually performs the work. It should + set the State to WorkItemState.Complete when done. + + + + + Method called by the derived class when all work is complete + + + + + Event triggered when the item is complete + + + + + Gets the current state of the WorkItem + + + + + The test being executed by the work item + + + + + The execution context + + + + + The unique id of the worker executing this item. + + + + + The test actions to be performed before and after this test + + + + + The test result + + + + + TODO: Documentation needed for class + + + + + TODO: Documentation needed for class + + + + + TestCommand is the abstract base class for all test commands + in the framework. A TestCommand represents a single stage in + the execution of a test, e.g.: SetUp/TearDown, checking for + Timeout, verifying the returned result from a method, etc. + + TestCommands may decorate other test commands so that the + execution of a lower-level command is nested within that + of a higher level command. All nested commands are executed + synchronously, as a single unit. Scheduling test execution + on separate threads is handled at a higher level, using the + task dispatcher. + + + + + Construct a TestCommand for a test. + + The test to be executed + + + + Runs the test in a specified context, returning a TestResult. + + The TestExecutionContext to be used for running the test. + A TestResult + + + + Gets the test associated with this command. + + + + TODO: Documentation needed for field + + + TODO: Documentation needed for method + + + + TODO: Documentation needed for constructor + + + + + + Initializes a new instance of the class. + + The inner command. + The max time allowed in milliseconds + + + + Runs the test, saving a TestResult in the supplied TestExecutionContext + + The context in which the test should run. + A TestResult + + + + The ITestListener interface is used internally to receive + notifications of significant events while a test is being + run. The events are propagated to clients by means of an + AsyncCallback. NUnit extensions may also monitor these events. + + + + + Called when a test has just started + + The test that is starting + + + + Called when a test has finished + + The result of the test + + + + Called when a test produces output for immediate display + + A TestOutput object containing the text to display + + + + The ITestAssemblyBuilder interface is implemented by a class + that is able to build a suite of tests given an assembly or + an assembly filename. + + + + + Build a suite of tests from a provided assembly + + The assembly from which tests are to be built + A dictionary of options to use in building the suite + A TestSuite containing the tests found in the assembly + + + + Build a suite of tests given the filename of an assembly + + The filename of the assembly from which tests are to be built + A dictionary of options to use in building the suite + A TestSuite containing the tests found in the assembly + + + + InternalTrace provides facilities for tracing the execution + of the NUnit framework. Tests and classes under test may make use + of Console writes, System.Diagnostics.Trace or various loggers and + NUnit itself traps and processes each of them. For that reason, a + separate internal trace is needed. + + Note: + InternalTrace uses a global lock to allow multiple threads to write + trace messages. This can easily make it a bottleneck so it must be + used sparingly. Keep the trace Level as low as possible and only + insert InternalTrace writes where they are needed. + TODO: add some buffering and a separate writer thread as an option. + TODO: figure out a way to turn on trace in specific classes only. + + + + + Initialize the internal trace facility using the name of the log + to be written to and the trace level. + + The log name + The trace level + + + + Initialize the internal trace using a provided TextWriter and level + + A TextWriter + The InternalTraceLevel + + + + Get a named Logger + + + + + + Get a logger named for a particular Type. + + + + + Gets a flag indicating whether the InternalTrace is initialized + + + + + The ITypeInfo interface is an abstraction of a .NET Type + + + + + Returns true if the Type wrapped is equal to the argument + + + + + Get the display name for this typeInfo. + + + + + Get the display name for an oject of this type, constructed with specific arguments + + + + + Returns a Type representing a generic type definition from which this Type can be constructed. + + + + + Returns a new ITypeInfo representing an instance of this generic Type using the supplied Type arguments + + + + + Returns a value indicating whether this type has a method with a specified public attribute + + + + + Returns an array of IMethodInfos for methods of this Type + that match the specified flags. + + + + + Gets the public constructor taking the specified argument Types + + + + + Returns a value indicating whether this Type has a public constructor taking the specified argument Types. + + + + + Construct an object of this Type, using the specified arguments. + + + + + Gets the underlying Type on which this ITypeInfo is based + + + + + Gets the base type of this type as an ITypeInfo + + + + + Gets the Name of the Type + + + + + Gets the FullName of the Type + + + + + Gets the assembly in which the type is declared + + + + + Gets the Namespace of the Type + + + + + Gets a value indicating whether the type is abstract. + + + + + Gets a value indicating whether the Type is a generic Type + + + + + Gets a value indicating whether the Type has generic parameters that have not been replaced by specific Types. + + + + + Gets a value indicating whether the Type is a generic Type definition + + + + + Gets a value indicating whether the type is sealed. + + + + + Gets a value indicating whether this type is a static class. + + + + + Applies the constraint to an actual value, returning a ConstraintResult. + + The value to be tested + A ConstraintResult + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + Defines methods to manipulate thread-safe collections intended for producer/consumer usage. + + Specifies the type of elements in the collection. + + All implementations of this interface must enable all members of this interface + to be used concurrently from multiple threads. + + + + + Attempts to add an object to the . + + The object to add to the . + true if the object was added successfully; otherwise, false. + The was invalid for this collection. + + + + Attempts to remove and return an object from the . + + + When this method returns, if the object was removed and returned successfully, contains the removed object. If no object was available to be removed, the value is + unspecified. + + true if an object was removed and returned successfully; otherwise, false. + + + + Copies the elements contained in the to a new array. + + A new array containing the elements copied from the . + + + + Copies the elements of the to + an + , starting at a specified index. + + The one-dimensional that is the destination of + the elements copied from the . + The array must have zero-based indexing. + The zero-based index in at which copying + begins. + is a null reference (Nothing in + Visual Basic). + is less than + zero. + is equal to or greater than the + length of the + -or- The number of elements in the source is greater than the + available space from to the end of the destination . + + + + + Provide the context information of the current test. + This is an adapter for the internal ExecutionContext + class, hiding the internals from the user test. + + + + + + + + + + Construct a TestContext for an ExecutionContext + + The ExecutionContext to adapt + + + + Gets a TextWriter that will send output directly to Console.Error + + + + + Gets a TextWriter for use in displaying immediate progress messages + + + + + TestParameters object holds parameters for the test run, if any are specified + + + + Write the string representation of a boolean value to the current result + + + Write a char to the current result + + + Write a char array to the current result + + + Write the string representation of a double to the current result + + + Write the string representation of an Int32 value to the current result + + + Write the string representation of an Int64 value to the current result + + + Write the string representation of a decimal value to the current result + + + Write the string representation of an object to the current result + + + Write the string representation of a Single value to the current result + + + Write a string to the current result + + + Write the string representation of a UInt32 value to the current result + + + Write the string representation of a UInt64 value to the current result + + + Write a formatted string to the current result + + + Write a formatted string to the current result + + + Write a formatted string to the current result + + + Write a formatted string to the current result + + + Write a line terminator to the current result + + + Write the string representation of a boolean value to the current result followed by a line terminator + + + Write a char to the current result followed by a line terminator + + + Write a char array to the current result followed by a line terminator + + + Write the string representation of a double to the current result followed by a line terminator + + + Write the string representation of an Int32 value to the current result followed by a line terminator + + + Write the string representation of an Int64 value to the current result followed by a line terminator + + + Write the string representation of a decimal value to the current result followed by a line terminator + + + Write the string representation of an object to the current result followed by a line terminator + + + Write the string representation of a Single value to the current result followed by a line terminator + + + Write a string to the current result followed by a line terminator + + + Write the string representation of a UInt32 value to the current result followed by a line terminator + + + Write the string representation of a UInt64 value to the current result followed by a line terminator + + + Write a formatted string to the current result followed by a line terminator + + + Write a formatted string to the current result followed by a line terminator + + + Write a formatted string to the current result followed by a line terminator + + + Write a formatted string to the current result followed by a line terminator + + + + This method adds the a new ValueFormatterFactory to the + chain of responsibility used for fomatting values in messages. + The scope of the change is the current TestContext. + + The factory delegate + + + + This method provides a simplified way to add a ValueFormatter + delegate to the chain of responsibility, creating the factory + delegate internally. It is useful when the Type of the object + is the only criterion for selection of the formatter, since + it can be used without getting involved with a compould function. + + The type supported by this formatter + The ValueFormatter delegate + + + + Get the current test context. This is created + as needed. The user may save the context for + use within a test, but it should not be used + outside the test for which it is created. + + + + + Gets a TextWriter that will send output to the current test result. + + + + + Get a representation of the current test. + + + + + Gets a Representation of the TestResult for the current test. + + + + + Gets the unique name of the Worker that is executing this test. + + + + + Gets the directory containing the current test assembly. + + + + + Gets the directory to be used for outputting files created + by this test run. + + + + + Gets the random generator. + + + The random generator. + + + + + TestAdapter adapts a Test for consumption by + the user test code. + + + + + Construct a TestAdapter for a Test + + The Test to be adapted + + + + Gets the unique Id of a test + + + + + The name of the test, which may or may not be + the same as the method name. + + + + + The name of the method representing the test. + + + + + The FullName of the test + + + + + The ClassName of the test + + + + + The properties of the test. + + + + + ResultAdapter adapts a TestResult for consumption by + the user test code. + + + + + Construct a ResultAdapter for a TestResult + + The TestResult to be adapted + + + + Gets a ResultState representing the outcome of the test. + + + + + Gets the message associated with a test + failure or with not running the test + + + + + Gets any stacktrace associated with an + error or failure. + + + + + Gets the number of test cases that failed + when running the test and all its children. + + + + + Gets the number of test cases that passed + when running the test and all its children. + + + + + Gets the number of test cases that were skipped + when running the test and all its children. + + + + + Gets the number of test cases that were inconclusive + when running the test and all its children. + + + + + ExceptionHelper provides static methods for working with exceptions + + + + + Rethrows an exception, preserving its stack trace + + The exception to rethrow + + + + Builds up a message, using the Message field of the specified exception + as well as any InnerExceptions. + + The exception. + A combined message string. + + + + Builds up a message, using the Message field of the specified exception + as well as any InnerExceptions. + + The exception. + A combined stack trace. + + + + Gets the stack trace of the exception. + + The exception. + A string representation of the stack trace. + + + + CultureDetector is a helper class used by NUnit to determine + whether a test should be run based on the current culture. + + + + + Default constructor uses the current culture. + + + + + Construct a CultureDetector for a particular culture for testing. + + The culture to be used + + + + Test to determine if one of a collection of cultures + is being used currently. + + + + + + + Tests to determine if the current culture is supported + based on a culture attribute. + + The attribute to examine + + + + + Test to determine if the a particular culture or comma- + delimited set of cultures is in use. + + Name of the culture or comma-separated list of culture ids + True if the culture is in use on the system + + + + Return the last failure reason. Results are not + defined if called before IsSupported( Attribute ) + is called. + + + + + PairwiseStrategy creates test cases by combining the parameter + data so that all possible pairs of data items are used. + + + + The number of test cases that cover all possible pairs of test function + parameters values is significantly less than the number of test cases + that cover all possible combination of test function parameters values. + And because different studies show that most of software failures are + caused by combination of no more than two parameters, pairwise testing + can be an effective ways to test the system when it's impossible to test + all combinations of parameters. + + + The PairwiseStrategy code is based on "jenny" tool by Bob Jenkins: + http://burtleburtle.net/bob/math/jenny.html + + + + + + Gets the test cases generated by this strategy instance. + + A set of test cases. + + + + FleaRand is a pseudo-random number generator developed by Bob Jenkins: + http://burtleburtle.net/bob/rand/talksmall.html#flea + + + + + Initializes a new instance of the FleaRand class. + + The seed. + + + + FeatureInfo represents coverage of a single value of test function + parameter, represented as a pair of indices, Dimension and Feature. In + terms of unit testing, Dimension is the index of the test parameter and + Feature is the index of the supplied value in that parameter's list of + sources. + + + + + Initializes a new instance of FeatureInfo class. + + Index of a dimension. + Index of a feature. + + + + A FeatureTuple represents a combination of features, one per test + parameter, which should be covered by a test case. In the + PairwiseStrategy, we are only trying to cover pairs of features, so the + tuples actually may contain only single feature or pair of features, but + the algorithm itself works with triplets, quadruples and so on. + + + + + Initializes a new instance of FeatureTuple class for a single feature. + + Single feature. + + + + Initializes a new instance of FeatureTuple class for a pair of features. + + First feature. + Second feature. + + + + TestCase represents a single test case covering a list of features. + + + + + Initializes a new instance of TestCaseInfo class. + + A number of features in the test case. + + + + PairwiseTestCaseGenerator class implements an algorithm which generates + a set of test cases which covers all pairs of possible values of test + function. + + + + The algorithm starts with creating a set of all feature tuples which we + will try to cover (see method). This set + includes every single feature and all possible pairs of features. We + store feature tuples in the 3-D collection (where axes are "dimension", + "feature", and "all combinations which includes this feature"), and for + every two feature (e.g. "A" and "B") we generate both ("A", "B") and + ("B", "A") pairs. This data structure extremely reduces the amount of + time needed to calculate coverage for a single test case (this + calculation is the most time-consuming part of the algorithm). + + + Then the algorithm picks one tuple from the uncovered tuple, creates a + test case that covers this tuple, and then removes this tuple and all + other tuples covered by this test case from the collection of uncovered + tuples. + + + Picking a tuple to cover + + + There are no any special rules defined for picking tuples to cover. We + just pick them one by one, in the order they were generated. + + + Test generation + + + Test generation starts from creating a completely random test case which + covers, nevertheless, previously selected tuple. Then the algorithm + tries to maximize number of tuples which this test covers. + + + Test generation and maximization process repeats seven times for every + selected tuple and then the algorithm picks the best test case ("seven" + is a magic number which provides good results in acceptable time). + + Maximizing test coverage + + To maximize tests coverage, the algorithm walks thru the list of mutable + dimensions (mutable dimension is a dimension that are not included in + the previously selected tuple). Then for every dimension, the algorithm + walks thru the list of features and checks if this feature provides + better coverage than randomly selected feature, and if yes keeps this + feature. + + + This process repeats while it shows progress. If the last iteration + doesn't improve coverage, the process ends. + + + In addition, for better results, before start every iteration, the + algorithm "scrambles" dimensions - so for every iteration dimension + probes in a different order. + + + + + + Creates a set of test cases for specified dimensions. + + + An array which contains information about dimensions. Each element of + this array represents a number of features in the specific dimension. + + + A set of test cases. + + + + + Provides data from fields marked with the DatapointAttribute or the + DatapointsAttribute. + + + + + The IDataPointProvider interface is used by extensions + that provide data for a single test parameter. + + + + + Determine whether any data is available for a parameter. + + An IParameterInfo representing one + argument to a parameterized test + True if any data is available, otherwise false. + + + + Return an IEnumerable providing data for use with the + supplied parameter. + + An IParameterInfo representing one + argument to a parameterized test + An IEnumerable providing the required data + + + + Determine whether any data is available for a parameter. + + A ParameterInfo representing one + argument to a parameterized test + + True if any data is available, otherwise false. + + + + + Return an IEnumerable providing data for use with the + supplied parameter. + + A ParameterInfo representing one + argument to a parameterized test + + An IEnumerable providing the required data + + + + + CombinatorialStrategy creates test cases by using all possible + combinations of the parameter data. + + + + + Gets the test cases generated by the CombiningStrategy. + + The test cases. + + + + ThrowsNothingConstraint tests that a delegate does not + throw an exception. + + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True if no exception is thrown, otherwise false + + + + Applies the constraint to an ActualValueDelegate that returns + the value to be tested. The default implementation simply evaluates + the delegate but derived classes may override it to provide for + delayed processing. + + An ActualValueDelegate + A ConstraintResult + + + + Gets text describing a constraint + + + + + Operator that requires at least one of it's arguments to succeed + + + + + Abstract base class for all binary operators + + + + + The ConstraintOperator class is used internally by a + ConstraintBuilder to represent an operator that + modifies or combines constraints. + + Constraint operators use left and right precedence + _values to determine whether the top operator on the + stack should be reduced before pushing a new operator. + + + + + The precedence value used when the operator + is about to be pushed to the stack. + + + + + The precedence value used when the operator + is on the top of the stack. + + + + + Reduce produces a constraint from the operator and + any arguments. It takes the arguments from the constraint + stack and pushes the resulting constraint on it. + + + + + + The syntax element preceding this operator + + + + + The syntax element following this operator + + + + + The precedence value used when the operator + is about to be pushed to the stack. + + + + + The precedence value used when the operator + is on the top of the stack. + + + + + Reduce produces a constraint from the operator and + any arguments. It takes the arguments from the constraint + stack and pushes the resulting constraint on it. + + + + + + Abstract method that produces a constraint by applying + the operator to its left and right constraint arguments. + + + + + Gets the left precedence of the operator + + + + + Gets the right precedence of the operator + + + + + Construct an OrOperator + + + + + Apply the operator to produce an OrConstraint + + + + + The Numerics class contains common operations on numeric _values. + + + + + Checks the type of the object, returning true if + the object is a numeric type. + + The object to check + true if the object is a numeric type + + + + Checks the type of the object, returning true if + the object is a floating point numeric type. + + The object to check + true if the object is a floating point numeric type + + + + Checks the type of the object, returning true if + the object is a fixed point numeric type. + + The object to check + true if the object is a fixed point numeric type + + + + Test two numeric _values for equality, performing the usual numeric + conversions and using a provided or default tolerance. If the tolerance + provided is Empty, this method may set it to a default tolerance. + + The expected value + The actual value + A reference to the tolerance in effect + True if the _values are equal + + + + Compare two numeric _values, performing the usual numeric conversions. + + The expected value + The actual value + The relationship of the _values to each other + + + + FalseConstraint tests that the actual value is false + + + + + Initializes a new instance of the class. + + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True for success, false for failure + + + + TestFixtureAttribute is used to mark a class that represents a TestFixture. + + + + + The ITestCaseData interface is implemented by a class + that is able to return the data required to create an + instance of a parameterized test fixture. + + + + + The ITestData interface is implemented by a class that + represents a single instance of a parameterized test. + + + + + Gets the name to be used for the test + + + + + Gets the RunState for this test case. + + + + + Gets the argument list to be provided to the test + + + + + Gets the property dictionary for the test case + + + + + Get the TypeArgs if separately set + + + + + Default constructor + + + + + Construct with a object[] representing a set of arguments. + In .NET 2.0, the arguments may later be separated into + type arguments and constructor arguments. + + + + + + Build a fixture from type provided. Normally called for a Type + on which the attribute has been placed. + + The type info of the fixture to be used. + A an IEnumerable holding one TestFixture object. + + + + Gets or sets the name of the test. + + The name of the test. + + + + Gets or sets the RunState of this test fixture. + + + + + The arguments originally provided to the attribute + + + + + Properties pertaining to this fixture + + + + + Get or set the type arguments. If not set + explicitly, any leading arguments that are + Types are taken as type arguments. + + + + + Descriptive text for this fixture + + + + + The author of this fixture + + + + + The type that this fixture is testing + + + + + Gets or sets the ignore reason. May set RunState as a side effect. + + The ignore reason. + + + + Gets or sets the reason for not running the fixture. + + The reason. + + + + Gets or sets the ignore reason. When set to a non-null + non-empty value, the test is marked as ignored. + + The ignore reason. + + + + Gets or sets a value indicating whether this is explicit. + + + true if explicit; otherwise, false. + + + + + Gets and sets the category for this fixture. + May be a comma-separated list of categories. + + + + + TestCaseAttribute is used to mark parameterized test cases + and provide them with their arguments. + + + + + The ITestCaseData interface is implemented by a class + that is able to return complete testcases for use by + a parameterized test method. + + + + + Gets the expected result of the test case + + + + + Returns true if an expected result has been set + + + + + IImplyFixture is an empty marker interface used by attributes like + TestAttribute that cause the class where they are used to be treated + as a TestFixture even without a TestFixtureAttribute. + + Marker interfaces are not usually considered a good practice, but + we use it here to avoid cluttering the attribute hierarchy with + classes that don't contain any extra implementation. + + + + + Construct a TestCaseAttribute with a list of arguments. + This constructor is not CLS-Compliant + + + + + + Construct a TestCaseAttribute with a single argument + + + + + + Construct a TestCaseAttribute with a two arguments + + + + + + + Construct a TestCaseAttribute with a three arguments + + + + + + + + Performs several special conversions allowed by NUnit in order to + permit arguments with types that cannot be used in the constructor + of an Attribute such as TestCaseAttribute or to simplify their use. + + The arguments to be converted + The ParameterInfo array for the method + + + + Construct one or more TestMethods from a given MethodInfo, + using available parameter data. + + The MethodInfo for which tests are to be constructed. + The suite to which the tests will be added. + One or more TestMethods + + + + Gets or sets the name of the test. + + The name of the test. + + + + Gets or sets the RunState of this test case. + + + + + Gets the list of arguments to a test case + + + + + Gets the properties of the test case + + + + + Gets or sets the expected result. + + The result. + + + + Returns true if the expected result has been set + + + + + Gets or sets the description. + + The description. + + + + The author of this test + + + + + The type that this test is testing + + + + + Gets or sets the reason for ignoring the test + + + + + Gets or sets a value indicating whether this is explicit. + + + true if explicit; otherwise, false. + + + + + Gets or sets the reason for not running the test. + + The reason. + + + + Gets or sets the ignore reason. When set to a non-null + non-empty value, the test is marked as ignored. + + The ignore reason. + + + + Comma-delimited list of platforms to run the test for + + + + + Comma-delimited list of platforms to not run the test for + + + + + Gets and sets the category for this test case. + May be a comma-separated list of categories. + + + + + GenericMethodHelper is able to deduce the Type arguments for + a generic method from the actual arguments provided. + + + + + Construct a GenericMethodHelper for a method + + MethodInfo for the method to examine + + + + Return the type argments for the method, deducing them + from the arguments actually provided. + + The arguments to the method + An array of type arguments. + + + + TestActionCommand runs the BeforeTest actions for a test, + then runs the test and finally runs the AfterTestActions. + + + + + Initializes a new instance of the class. + + The inner command. + + + + Runs the test, saving a TestResult in the supplied TestExecutionContext. + + The context in which the test should run. + A TestResult + + + + Provides internal logging to the NUnit framework + + + + + Interface for logging within the engine + + + + + Logs the specified message at the error level. + + The message. + + + + Logs the specified message at the error level. + + The message. + The arguments. + + + + Logs the specified message at the warning level. + + The message. + + + + Logs the specified message at the warning level. + + The message. + The arguments. + + + + Logs the specified message at the info level. + + The message. + + + + Logs the specified message at the info level. + + The message. + The arguments. + + + + Logs the specified message at the debug level. + + The message. + + + + Logs the specified message at the debug level. + + The message. + The arguments. + + + + Initializes a new instance of the class. + + The name. + The log level. + The writer where logs are sent. + + + + Logs the message at error level. + + The message. + + + + Logs the message at error level. + + The message. + The message arguments. + + + + Logs the message at warm level. + + The message. + + + + Logs the message at warning level. + + The message. + The message arguments. + + + + Logs the message at info level. + + The message. + + + + Logs the message at info level. + + The message. + The message arguments. + + + + Logs the message at debug level. + + The message. + + + + Logs the message at debug level. + + The message. + The message arguments. + + + + ClassName filter selects tests based on the class FullName + + + + + Construct a FullNameFilter for a single name + + The name the filter will recognize. + + + + Match a test against a single value. + + + + + Gets the element name + + Element name + + + + PropertyFilter is able to select or exclude tests + based on their properties. + + + + + + Construct a PropertyFilter using a property name and expected value + + A property name + The expected value of the property + + + + Check whether the filter matches a test + + The test to be matched + + + + + Adds an XML node + + Parent node + True if recursive + The added XML node + + + + Gets the element name + + Element name + + + + Env is a static class that provides some of the features of + System.Environment that are not available under all runtimes + + + + + The newline sequence in the current environment. + + + + + Path to the 'My Documents' folder + + + + + Directory used for file output if not specified on commandline. + + + + + The Assert class contains a collection of static methods that + implement the most common assertions used in NUnit. + + + The Assert class contains a collection of static methods that + implement the most common assertions used in NUnit. + + + + + Asserts that a condition is true. If the condition is false the method throws + an . + + The evaluated condition + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a condition is true. If the condition is false the method throws + an . + + The evaluated condition + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a condition is true. If the condition is false the method throws + an . + + The evaluated condition + + + + Asserts that a condition is true. If the condition is false the method throws + an . + + The evaluated condition + + + + Asserts that a condition is true. If the condition is false the method throws + an . + + The evaluated condition + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a condition is true. If the condition is false the method throws + an . + + The evaluated condition + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a condition is true. If the condition is false the method throws + an . + + The evaluated condition + + + + Asserts that a condition is true. If the condition is false the method throws + an . + + The evaluated condition + + + + Asserts that a condition is false. If the condition is true the method throws + an . + + The evaluated condition + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a condition is false. If the condition is true the method throws + an . + + The evaluated condition + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a condition is false. If the condition is true the method throws + an . + + The evaluated condition + + + + Asserts that a condition is false. If the condition is true the method throws + an . + + The evaluated condition + + + + Asserts that a condition is false. If the condition is true the method throws + an . + + The evaluated condition + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a condition is false. If the condition is true the method throws + an . + + The evaluated condition + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a condition is false. If the condition is true the method throws + an . + + The evaluated condition + + + + Asserts that a condition is false. If the condition is true the method throws + an . + + The evaluated condition + + + + Verifies that the object that is passed in is not equal to null + If the object is null then an + is thrown. + + The object that is to be tested + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the object that is passed in is not equal to null + If the object is null then an + is thrown. + + The object that is to be tested + + + + Verifies that the object that is passed in is not equal to null + If the object is null then an + is thrown. + + The object that is to be tested + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the object that is passed in is not equal to null + If the object is null then an + is thrown. + + The object that is to be tested + + + + Verifies that the object that is passed in is equal to null + If the object is not null then an + is thrown. + + The object that is to be tested + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the object that is passed in is equal to null + If the object is not null then an + is thrown. + + The object that is to be tested + + + + Verifies that the object that is passed in is equal to null + If the object is not null then an + is thrown. + + The object that is to be tested + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the object that is passed in is equal to null + If the object is not null then an + is thrown. + + The object that is to be tested + + + + Verifies that the double that is passed in is an NaN value. + If the object is not NaN then an + is thrown. + + The value that is to be tested + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the double that is passed in is an NaN value. + If the object is not NaN then an + is thrown. + + The value that is to be tested + + + + Verifies that the double that is passed in is an NaN value. + If the object is not NaN then an + is thrown. + + The value that is to be tested + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the double that is passed in is an NaN value. + If the object is not NaN then an + is thrown. + + The value that is to be tested + + + + Assert that a string is empty - that is equal to string.Empty + + The string to be tested + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Assert that a string is empty - that is equal to string.Empty + + The string to be tested + + + + Assert that an array, list or other collection is empty + + An array, list or other collection implementing ICollection + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Assert that an array, list or other collection is empty + + An array, list or other collection implementing ICollection + + + + Assert that a string is not empty - that is not equal to string.Empty + + The string to be tested + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Assert that a string is not empty - that is not equal to string.Empty + + The string to be tested + + + + Assert that an array, list or other collection is not empty + + An array, list or other collection implementing ICollection + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Assert that an array, list or other collection is not empty + + An array, list or other collection implementing ICollection + + + + Asserts that an int is zero. + + The number to be examined + + + + Asserts that an int is zero. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that an unsigned int is zero. + + The number to be examined + + + + Asserts that an unsigned int is zero. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a Long is zero. + + The number to be examined + + + + Asserts that a Long is zero. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that an unsigned Long is zero. + + The number to be examined + + + + Asserts that an unsigned Long is zero. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a decimal is zero. + + The number to be examined + + + + Asserts that a decimal is zero. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a double is zero. + + The number to be examined + + + + Asserts that a double is zero. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a float is zero. + + The number to be examined + + + + Asserts that a float is zero. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that an int is not zero. + + The number to be examined + + + + Asserts that an int is not zero. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that an unsigned int is not zero. + + The number to be examined + + + + Asserts that an unsigned int is not zero. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a Long is not zero. + + The number to be examined + + + + Asserts that a Long is not zero. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that an unsigned Long is not zero. + + The number to be examined + + + + Asserts that an unsigned Long is not zero. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a decimal is zero. + + The number to be examined + + + + Asserts that a decimal is zero. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a double is zero. + + The number to be examined + + + + Asserts that a double is zero. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a float is zero. + + The number to be examined + + + + Asserts that a float is zero. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that an int is negative. + + The number to be examined + + + + Asserts that an int is negative. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that an unsigned int is negative. + + The number to be examined + + + + Asserts that an unsigned int is negative. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a Long is negative. + + The number to be examined + + + + Asserts that a Long is negative. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that an unsigned Long is negative. + + The number to be examined + + + + Asserts that an unsigned Long is negative. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a decimal is negative. + + The number to be examined + + + + Asserts that a decimal is negative. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a double is negative. + + The number to be examined + + + + Asserts that a double is negative. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a float is negative. + + The number to be examined + + + + Asserts that a float is negative. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that an int is negative. + + The number to be examined + + + + Asserts that an int is negative. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that an unsigned int is negative. + + The number to be examined + + + + Asserts that an unsigned int is negative. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a Long is negative. + + The number to be examined + + + + Asserts that a Long is negative. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that an unsigned Long is negative. + + The number to be examined + + + + Asserts that an unsigned Long is negative. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a decimal is negative. + + The number to be examined + + + + Asserts that a decimal is negative. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a double is negative. + + The number to be examined + + + + Asserts that a double is negative. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that a float is negative. + + The number to be examined + + + + Asserts that a float is negative. + + The number to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that an object may be assigned a value of a given Type. + + The expected Type. + The object under examination + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that an object may be assigned a value of a given Type. + + The expected Type. + The object under examination + + + + Asserts that an object may be assigned a value of a given Type. + + The expected Type. + The object under examination + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that an object may be assigned a value of a given Type. + + The expected Type. + The object under examination + + + + Asserts that an object may not be assigned a value of a given Type. + + The expected Type. + The object under examination + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that an object may not be assigned a value of a given Type. + + The expected Type. + The object under examination + + + + Asserts that an object may not be assigned a value of a given Type. + + The expected Type. + The object under examination + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that an object may not be assigned a value of a given Type. + + The expected Type. + The object under examination + + + + Asserts that an object is an instance of a given type. + + The expected Type + The object being examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that an object is an instance of a given type. + + The expected Type + The object being examined + + + + Asserts that an object is an instance of a given type. + + The expected Type + The object being examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that an object is an instance of a given type. + + The expected Type + The object being examined + + + + Asserts that an object is not an instance of a given type. + + The expected Type + The object being examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that an object is not an instance of a given type. + + The expected Type + The object being examined + + + + Asserts that an object is not an instance of a given type. + + The expected Type + The object being examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that an object is not an instance of a given type. + + The expected Type + The object being examined + + + + Verifies that a delegate throws a particular exception when called. + + A constraint to be satisfied by the exception + A TestSnippet delegate + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Verifies that a delegate throws a particular exception when called. + + A constraint to be satisfied by the exception + A TestSnippet delegate + + + + Verifies that a delegate throws a particular exception when called. + + The exception Type expected + A TestDelegate + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Verifies that a delegate throws a particular exception when called. + + The exception Type expected + A TestDelegate + + + + Verifies that a delegate throws a particular exception when called. + + Type of the expected exception + A TestDelegate + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Verifies that a delegate throws a particular exception when called. + + Type of the expected exception + A TestDelegate + + + + Verifies that a delegate throws an exception when called + and returns it. + + A TestDelegate + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Verifies that a delegate throws an exception when called + and returns it. + + A TestDelegate + + + + Verifies that a delegate throws an exception of a certain Type + or one derived from it when called and returns it. + + The expected Exception Type + A TestDelegate + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Verifies that a delegate throws an exception of a certain Type + or one derived from it when called and returns it. + + The expected Exception Type + A TestDelegate + + + + Verifies that a delegate throws an exception of a certain Type + or one derived from it when called and returns it. + + A TestDelegate + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Verifies that a delegate throws an exception of a certain Type + or one derived from it when called and returns it. + + A TestDelegate + + + + Verifies that a delegate does not throw an exception + + A TestDelegate + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Verifies that a delegate does not throw an exception. + + A TestDelegate + + + + Asserts that a condition is true. If the condition is false the method throws + an . + + The evaluated condition + The message to display if the condition is false + Arguments to be used in formatting the message + + + + Asserts that a condition is true. If the condition is false the method throws + an . + + The evaluated condition + + + + Asserts that a condition is true. If the condition is false the method throws + an . + + The evaluated condition + A function to build the message included with the Exception + + + + Asserts that a condition is true. If the condition is false the method throws + an . + + A lambda that returns a Boolean + The message to display if the condition is false + Arguments to be used in formatting the message + + + + Asserts that a condition is true. If the condition is false the method throws + an . + + A lambda that returns a Boolean + + + + Asserts that a condition is true. If the condition is false the method throws + an . + + A lambda that returns a Boolean + A function to build the message included with the Exception + + + + Apply a constraint to an actual value, succeeding if the constraint + is satisfied and throwing an assertion exception on failure. + + The Type being compared. + An ActualValueDelegate returning the value to be tested + A Constraint expression to be applied + + + + Apply a constraint to an actual value, succeeding if the constraint + is satisfied and throwing an assertion exception on failure. + + The Type being compared. + An ActualValueDelegate returning the value to be tested + A Constraint expression to be applied + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Apply a constraint to an actual value, succeeding if the constraint + is satisfied and throwing an assertion exception on failure. + + The Type being compared. + An ActualValueDelegate returning the value to be tested + A Constraint expression to be applied + A function to build the message included with the Exception + + + + Asserts that the code represented by a delegate throws an exception + that satisfies the constraint provided. + + A TestDelegate to be executed + A ThrowsConstraint used in the test + + + + Asserts that the code represented by a delegate throws an exception + that satisfies the constraint provided. + + A TestDelegate to be executed + A ThrowsConstraint used in the test + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Asserts that the code represented by a delegate throws an exception + that satisfies the constraint provided. + + A TestDelegate to be executed + A ThrowsConstraint used in the test + A function to build the message included with the Exception + + + + Apply a constraint to an actual value, succeeding if the constraint + is satisfied and throwing an assertion exception on failure. + + The Type being compared. + The actual value to test + A Constraint to be applied + + + + Apply a constraint to an actual value, succeeding if the constraint + is satisfied and throwing an assertion exception on failure. + + The Type being compared. + The actual value to test + A Constraint expression to be applied + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Apply a constraint to an actual value, succeeding if the constraint + is satisfied and throwing an assertion exception on failure. + + The Type being compared. + The actual value to test + A Constraint expression to be applied + A function to build the message included with the Exception + + + + Apply a constraint to an actual value, succeeding if the constraint + is satisfied and throwing an assertion exception on failure. + Used as a synonym for That in rare cases where a private setter + causes a Visual Basic compilation error. + + The actual value to test + A Constraint to be applied + + + + Apply a constraint to an actual value, succeeding if the constraint + is satisfied and throwing an assertion exception on failure. + Used as a synonym for That in rare cases where a private setter + causes a Visual Basic compilation error. + + + This method is provided for use by VB developers needing to test + the value of properties with private setters. + + The actual value to test + A Constraint expression to be applied + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + We don't actually want any instances of this object, but some people + like to inherit from it to add other static methods. Hence, the + protected constructor disallows any instances of this object. + + + + + The Equals method throws an InvalidOperationException. This is done + to make sure there is no mistake by calling this function. + + + + + + + override the default ReferenceEquals to throw an InvalidOperationException. This + implementation makes sure there is no mistake in calling this function + as part of Assert. + + + + + + + Throws a with the message and arguments + that are passed in. This allows a test to be cut short, with a result + of success returned to NUnit. + + The message to initialize the with. + Arguments to be used in formatting the message + + + + Throws a with the message and arguments + that are passed in. This allows a test to be cut short, with a result + of success returned to NUnit. + + The message to initialize the with. + + + + Throws a with the message and arguments + that are passed in. This allows a test to be cut short, with a result + of success returned to NUnit. + + + + + Throws an with the message and arguments + that are passed in. This is used by the other Assert functions. + + The message to initialize the with. + Arguments to be used in formatting the message + + + + Throws an with the message that is + passed in. This is used by the other Assert functions. + + The message to initialize the with. + + + + Throws an . + This is used by the other Assert functions. + + + + + Throws an with the message and arguments + that are passed in. This causes the test to be reported as ignored. + + The message to initialize the with. + Arguments to be used in formatting the message + + + + Throws an with the message that is + passed in. This causes the test to be reported as ignored. + + The message to initialize the with. + + + + Throws an . + This causes the test to be reported as ignored. + + + + + Throws an with the message and arguments + that are passed in. This causes the test to be reported as inconclusive. + + The message to initialize the with. + Arguments to be used in formatting the message + + + + Throws an with the message that is + passed in. This causes the test to be reported as inconclusive. + + The message to initialize the with. + + + + Throws an . + This causes the test to be reported as Inconclusive. + + + + + Asserts that an object is contained in a list. + + The expected object + The list to be examined + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that an object is contained in a list. + + The expected object + The list to be examined + + + + Verifies that the first int is greater than the second + int. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first int is greater than the second + int. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + + + + Verifies that the first value is greater than the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is greater than the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + + + + Verifies that the first value is greater than the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is greater than the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + + + + Verifies that the first value is greater than the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is greater than the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + + + + Verifies that the first value is greater than the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is greater than the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + + + + Verifies that the first value is greater than the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is greater than the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + + + + Verifies that the first value is greater than the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is greater than the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + + + + Verifies that the first value is greater than the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is greater than the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + + + + Verifies that the first value is less than the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is less than the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + + + + Verifies that the first value is less than the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is less than the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + + + + Verifies that the first value is less than the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is less than the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + + + + Verifies that the first value is less than the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is less than the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + + + + Verifies that the first value is less than the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is less than the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + + + + Verifies that the first value is less than the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is less than the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + + + + Verifies that the first value is less than the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is less than the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + + + + Verifies that the first value is less than the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is less than the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + + + + Verifies that the first value is greater than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is greater than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + + + + Verifies that the first value is greater than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is greater than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + + + + Verifies that the first value is greater than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is greater than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + + + + Verifies that the first value is greater than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is greater than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + + + + Verifies that the first value is greater than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is greater than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + + + + Verifies that the first value is greater than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is greater than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + + + + Verifies that the first value is greater than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is greater than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + + + + Verifies that the first value is greater than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is greater than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be greater + The second value, expected to be less + + + + Verifies that the first value is less than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is less than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + + + + Verifies that the first value is less than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is less than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + + + + Verifies that the first value is less than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is less than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + + + + Verifies that the first value is less than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is less than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + + + + Verifies that the first value is less than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is less than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + + + + Verifies that the first value is less than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is less than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + + + + Verifies that the first value is less than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is less than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + + + + Verifies that the first value is less than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that the first value is less than or equal to the second + value. If it is not, then an + is thrown. + + The first value, expected to be less + The second value, expected to be greater + + + + Verifies that two doubles are equal considering a delta. If the + expected value is infinity then the delta value is ignored. If + they are not equal then an is + thrown. + + The expected value + The actual value + The maximum acceptable difference between the + the expected and the actual + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that two doubles are equal considering a delta. If the + expected value is infinity then the delta value is ignored. If + they are not equal then an is + thrown. + + The expected value + The actual value + The maximum acceptable difference between the + the expected and the actual + + + + Verifies that two doubles are equal considering a delta. If the + expected value is infinity then the delta value is ignored. If + they are not equal then an is + thrown. + + The expected value + The actual value + The maximum acceptable difference between the + the expected and the actual + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that two doubles are equal considering a delta. If the + expected value is infinity then the delta value is ignored. If + they are not equal then an is + thrown. + + The expected value + The actual value + The maximum acceptable difference between the + the expected and the actual + + + + Verifies that two objects are equal. Two objects are considered + equal if both are null, or if both have the same value. NUnit + has special semantics for some object types. + If they are not equal an is thrown. + + The value that is expected + The actual value + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that two objects are equal. Two objects are considered + equal if both are null, or if both have the same value. NUnit + has special semantics for some object types. + If they are not equal an is thrown. + + The value that is expected + The actual value + + + + Verifies that two objects are not equal. Two objects are considered + equal if both are null, or if both have the same value. NUnit + has special semantics for some object types. + If they are equal an is thrown. + + The value that is expected + The actual value + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Verifies that two objects are not equal. Two objects are considered + equal if both are null, or if both have the same value. NUnit + has special semantics for some object types. + If they are equal an is thrown. + + The value that is expected + The actual value + + + + Asserts that two objects refer to the same object. If they + are not the same an is thrown. + + The expected object + The actual object + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that two objects refer to the same object. If they + are not the same an is thrown. + + The expected object + The actual object + + + + Asserts that two objects do not refer to the same object. If they + are the same an is thrown. + + The expected object + The actual object + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Asserts that two objects do not refer to the same object. If they + are the same an is thrown. + + The expected object + The actual object + + + + Helper for Assert.AreEqual(double expected, double actual, ...) + allowing code generation to work consistently. + + The expected value + The actual value + The maximum acceptable difference between the + the expected and the actual + The message to display in case of failure + Array of objects to be used in formatting the message + + + + Represents a constraint that succeeds if all the + members of a collection match a base constraint. + + + + + Abstract base for operators that indicate how to + apply a constraint to items in a collection. + + + + + PrefixOperator takes a single constraint and modifies + it's action in some way. + + + + + Reduce produces a constraint from the operator and + any arguments. It takes the arguments from the constraint + stack and pushes the resulting constraint on it. + + + + + + Returns the constraint created by applying this + prefix to another constraint. + + + + + + + Constructs a CollectionOperator + + + + + Returns a constraint that will apply the argument + to the members of a collection, succeeding if + they all succeed. + + + + + FileExistsConstraint is used to determine if a file exists + + + + + FileOrDirectoryExistsConstraint is used to determine if a file or directory exists + + + + + Initializes a new instance of the class that + will check files and directories. + + + + + Initializes a new instance of the class that + will only check files if ignoreDirectories is true. + + if set to true [ignore directories]. + + + + Applies the constraint to an actual value, returning a ConstraintResult. + + The value to be tested + A ConstraintResult + + + + If true, the constraint will only check if files exist, not directories + + + + + If true, the constraint will only check if directories exist, not files + + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + Initializes a new instance of the class. + + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + TestAssemblyDirectoryResolveAttribute is used to mark a test assembly as needing a + special assembly resolution hook that will explicitly search the test assembly's + directory for dependent assemblies. This works around a conflict between mixed-mode + assembly initialization and tests running in their own AppDomain in some cases. + + + + + Helper methods for inspecting a type by reflection. + + Many of these methods take ICustomAttributeProvider as an + argument to avoid duplication, even though certain attributes can + only appear on specific types of members, like MethodInfo or Type. + + In the case where a type is being examined for the presence of + an attribute, interface or named member, the Reflect methods + operate with the full name of the member being sought. This + removes the necessity of the caller having a reference to the + assembly that defines the item being sought and allows the + NUnit core to inspect assemblies that reference an older + version of the NUnit framework. + + + + + Examine a fixture type and return an array of methods having a + particular attribute. The array is order with base methods first. + + The type to examine + The attribute Type to look for + Specifies whether to search the fixture type inheritance chain + The array of methods found + + + + Examine a fixture type and return true if it has a method with + a particular attribute. + + The type to examine + The attribute Type to look for + True if found, otherwise false + + + + Invoke the default constructor on a Type + + The Type to be constructed + An instance of the Type + + + + Invoke a constructor on a Type with arguments + + The Type to be constructed + Arguments to the constructor + An instance of the Type + + + + Returns an array of types from an array of objects. + Used because the compact framework doesn't support + Type.GetTypeArray() + + An array of objects + An array of Types + + + + Invoke a parameterless method returning void on an object. + + A MethodInfo for the method to be invoked + The object on which to invoke the method + + + + Invoke a method, converting any TargetInvocationException to an NUnitException. + + A MethodInfo for the method to be invoked + The object on which to invoke the method + The argument list for the method + The return value from the invoked method + + + + + + + + + Constructor delegate, makes it possible to use a factory to create objects + + + + + InvalidTestFixtureException is thrown when an appropriate test + fixture constructor using the provided arguments cannot be found. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The message. + + + + Initializes a new instance of the class. + + The message. + The inner. + + + + Serialization Constructor + + + + + Class to build ether a parameterized or a normal NUnitTestMethod. + There are four cases that the builder must deal with: + 1. The method needs no params and none are provided + 2. The method needs params and they are provided + 3. The method needs no params but they are provided in error + 4. The method needs params but they are not provided + This could have been done using two different builders, but it + turned out to be simpler to have just one. The BuildFrom method + takes a different branch depending on whether any parameters are + provided, but all four cases are dealt with in lower-level methods + + + + + The ITestCaseBuilder interface is exposed by a class that knows how to + build a test case from certain methods. + + + This interface is not the same as the ITestCaseBuilder interface in NUnit 2.x. + We have reused the name because the two products don't interoperate at all. + + + + + Examine the method and determine if it is suitable for + this builder to use in building a TestCase to be + included in the suite being populated. + + Note that returning false will cause the method to be ignored + in loading the tests. If it is desired to load the method + but label it as non-runnable, ignored, etc., then this + method must return true. + + The test method to examine + The suite being populated + True is the builder can use this method + + + + Build a TestCase from the provided MethodInfo for + inclusion in the suite being constructed. + + The method to be used as a test case + The test suite being populated, or null + A TestCase or null + + + + Determines if the method can be used to build an NUnit test + test method of some kind. The method must normally be marked + with an identifying attribute for this to be true. + + Note that this method does not check that the signature + of the method for validity. If we did that here, any + test methods with invalid signatures would be passed + over in silence in the test run. Since we want such + methods to be reported, the check for validity is made + in BuildFrom rather than here. + + An IMethodInfo for the method being used as a test method + True if the builder can create a test case from this method + + + + Build a Test from the provided MethodInfo. Depending on + whether the method takes arguments and on the availability + of test case data, this method may return a single test + or a group of tests contained in a ParameterizedMethodSuite. + + The method for which a test is to be built + A Test representing one or more method invocations + + + + Determines if the method can be used to build an NUnit test + test method of some kind. The method must normally be marked + with an identifying attribute for this to be true. + + Note that this method does not check that the signature + of the method for validity. If we did that here, any + test methods with invalid signatures would be passed + over in silence in the test run. Since we want such + methods to be reported, the check for validity is made + in BuildFrom rather than here. + + An IMethodInfo for the method being used as a test method + The test suite being built, to which the new test would be added + True if the builder can create a test case from this method + + + + Build a Test from the provided MethodInfo. Depending on + whether the method takes arguments and on the availability + of test case data, this method may return a single test + or a group of tests contained in a ParameterizedMethodSuite. + + The method for which a test is to be built + The test fixture being populated, or null + A Test representing one or more method invocations + + + + Builds a ParameterizedMethodSuite containing individual test cases. + + The method for which a test is to be built. + The list of test cases to include. + A ParameterizedMethodSuite populated with test cases + + + + Build a simple, non-parameterized TestMethod for this method. + + The MethodInfo for which a test is to be built + The test suite for which the method is being built + A TestMethod. + + + + Abstract base class for operators that are able to reduce to a + constraint whether or not another syntactic element follows. + + + + + NUnitEqualityComparer encapsulates NUnit's handling of + equality tests between objects. + + + + + If true, all string comparisons will ignore case + + + + + If true, arrays will be treated as collections, allowing + those of different dimensions to be compared + + + + + Comparison objects used in comparisons for some constraints. + + + + + List of points at which a failure occurred. + + + + + Compares two objects for equality within a tolerance. + + + + + Helper method to compare two arrays + + + + + Method to compare two DirectoryInfo objects + + first directory to compare + second directory to compare + true if equivalent, false if not + + + + Returns the default NUnitEqualityComparer + + + + + Gets and sets a flag indicating whether case should + be ignored in determining equality. + + + + + Gets and sets a flag indicating that arrays should be + compared as collections, without regard to their shape. + + + + + Gets the list of external comparers to be used to + test for equality. They are applied to members of + collections, in place of NUnit's own logic. + + + + + Gets the list of failure points for the last Match performed. + The list consists of objects to be interpreted by the caller. + This generally means that the caller may only make use of + objects it has placed on the list at a particular depthy. + + + + + Flags the comparer to include + property in comparison of two values. + + + Using this modifier does not allow to use the + modifier. + + + + + FailurePoint class represents one point of failure + in an equality test. + + + + + The location of the failure + + + + + The expected value + + + + + The actual value + + + + + Indicates whether the expected value is valid + + + + + Indicates whether the actual value is valid + + + + + NullConstraint tests that the actual value is null + + + + + Initializes a new instance of the class. + + + + + Applies the constraint to an actual value, returning a ConstraintResult. + + The value to be tested + A ConstraintResult + + + + CollectionSubsetConstraint is used to determine whether + one collection is a subset of another + + + + + Construct a CollectionSubsetConstraint + + The collection that the actual value is expected to be a subset of + + + + Test whether the actual collection is a subset of + the expected collection provided. + + + + + + + Flag the constraint to use the supplied predicate function + + The comparison function to use. + Self. + + + + The display name of this Constraint for use by ToString(). + The default value is the name of the constraint with + trailing "Constraint" removed. Derived classes may set + this to another name in their constructors. + + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + AndConstraint succeeds only if both members succeed. + + + + + BinaryConstraint is the abstract base of all constraints + that combine two other constraints in some fashion. + + + + + The first constraint being combined + + + + + The second constraint being combined + + + + + Construct a BinaryConstraint from two other constraints + + The first constraint + The second constraint + + + + Create an AndConstraint from two other constraints + + The first constraint + The second constraint + + + + Apply both member constraints to an actual value, succeeding + succeeding only if both of them succeed. + + The actual value + True if the constraints both succeeded + + + + Gets text describing a constraint + + + + + Contain the result of matching a against an actual value. + + + + + Constructs a for a particular . + + The Constraint to which this result applies. + The actual value to which the Constraint was applied. + + + + Constructs a for a particular . + + The Constraint to which this result applies. + The actual value to which the Constraint was applied. + The status of the new ConstraintResult. + + + + Constructs a for a particular . + + The Constraint to which this result applies. + The actual value to which the Constraint was applied. + If true, applies a status of Success to the result, otherwise Failure. + + + + Write the failure message to the MessageWriter provided + as an argument. The default implementation simply passes + the result and the actual value to the writer, which + then displays the constraint description and the value. + + Constraints that need to provide additional details, + such as where the error occured can override this. + + The MessageWriter on which to display the message + + + + Write the actual value for a failing constraint test to a + MessageWriter. The default implementation simply writes + the raw value of actual, leaving it to the writer to + perform any formatting. + + The writer on which the actual value is displayed + + + + The actual value that was passed to the method. + + + + + Gets and sets the ResultStatus for this result. + + + + + True if actual value meets the Constraint criteria otherwise false. + + + + + Display friendly name of the constraint. + + + + + Description of the constraint may be affected by the state the constraint had + when was performed against the actual value. + + + + + Write the actual value for a failing constraint test to a + MessageWriter. The default implementation simply writes + the raw value of actual, leaving it to the writer to + perform any formatting. + + The writer on which the actual value is displayed + + + + Attribute used to identify a method that is called after + all the tests in a fixture have run. The method is + guaranteed to be called, even if an exception is thrown. + + + + + Attribute used to identify a method that is called once + after all the child tests have run. The method is + guaranteed to be called, even if an exception is thrown. + + + + + PlatformAttribute is used to mark a test fixture or an + individual method as applying to a particular platform only. + + + + + Constructor with no platforms specified, for use + with named property syntax. + + + + + Constructor taking one or more platforms + + Comma-delimited list of platforms + + + + Causes a test to be skipped if this PlatformAttribute is not satisfied. + + The test to modify + + + + Attribute used to mark a test that is to be ignored. + Ignored tests result in a warning message when the + tests are run. + + + + + Constructs the attribute giving a reason for ignoring the test + GetActionsFromAttributeProvider + The reason for ignoring the test + + + + Modifies a test by marking it as Ignored. + + The test to modify + + + + + + + + + The date in the future to stop ignoring the test as a string in UTC time. + For example for a date and time, "2014-12-25 08:10:00Z" or for just a date, + "2014-12-25". If just a date is given, the Ignore will expire at midnight UTC. + + + Once the ignore until date has passed, the test will be marked + as runnable. Tests with an ignore until date will have an IgnoreUntilDate + property set which will appear in the test results. + + The string does not contain a valid string representation of a date and time. + + + + The IApplyToContext interface is implemented by attributes + that want to make changes to the execution context before + a test is run. + + + + + Apply changes to the execution context + + The execution context + + + + A SimpleWorkItem represents a single test case and is + marked as completed immediately upon execution. This + class is also used for skipped or ignored test suites. + + + + + Construct a simple work item for a test. + + The test to be executed + The filter used to select this test + + + + Method that performs actually performs the work. + + + + + ContextSettingsCommand applies specified changes to the + TestExecutionContext prior to running a test. No special + action is needed after the test runs, since the prior + context will be restored automatically. + + + + + Initializes a new instance of the class. + + + + + + + + + + + + + + + + + + + + The RunState enum indicates whether a test can be executed. + + + + + The test is not runnable. + + + + + The test is runnable. + + + + + The test can only be run explicitly + + + + + The test has been skipped. This value may + appear on a Test when certain attributes + are used to skip the test. + + + + + The test has been ignored. May appear on + a Test, when the IgnoreAttribute is used. + + + + + Helper class with properties and methods that supply + a number of constraints used in Asserts. + + + + + Returns a new CollectionContainsConstraint checking for the + presence of a particular object in the collection. + + + + + Returns a new ContainsConstraint. This constraint + will, in turn, make use of the appropriate second-level + constraint, depending on the type of the actual argument. + This overload is only used if the item sought is a string, + since any other type implies that we are looking for a + collection member. + + + + + Returns a constraint that succeeds if the actual + value starts with the substring supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value ends with the substring supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value matches the regular expression supplied as an argument. + + + + + Returns a ConstraintExpression that negates any + following constraint. + + + + + Returns a constraint that succeeds if the value + is a file or directory and it exists. + + + + + AssemblyHelper provides static methods for working + with assemblies. + + + + + Gets the path from which an assembly was loaded. + For builds where this is not possible, returns + the name of the assembly. + + The assembly. + The path. + + + + Gets the path to the directory from which an assembly was loaded. + + The assembly. + The path. + + + + Gets the AssemblyName of an assembly. + + The assembly + An AssemblyName + + + + Loads an assembly given a string, which may be the + path to the assembly or the AssemblyName + + + + + + + Gets the assembly path from code base. + + Public for testing purposes + The code base. + + + + + FrameworkController provides a facade for use in loading, browsing + and running tests without requiring a reference to the NUnit + framework. All calls are encapsulated in constructors for + this class and its nested classes, which only require the + types of the Common Type System as arguments. + + The controller supports four actions: Load, Explore, Count and Run. + They are intended to be called by a driver, which should allow for + proper sequencing of calls. Load must be called before any of the + other actions. The driver may support other actions, such as + reload on run, by combining these calls. + + + + + A MarshalByRefObject that lives forever + + + + + Obtains a lifetime service object to control the lifetime policy for this instance. + + + + + Construct a FrameworkController using the default builder and runner. + + The AssemblyName or path to the test assembly + A prefix used for all test ids created under this controller. + A Dictionary of settings to use in loading and running the tests + + + + Construct a FrameworkController using the default builder and runner. + + The test assembly + A prefix used for all test ids created under this controller. + A Dictionary of settings to use in loading and running the tests + + + + Construct a FrameworkController, specifying the types to be used + for the runner and builder. This constructor is provided for + purposes of development. + + The full AssemblyName or the path to the test assembly + A prefix used for all test ids created under this controller. + A Dictionary of settings to use in loading and running the tests + The Type of the test runner + The Type of the test builder + + + + Construct a FrameworkController, specifying the types to be used + for the runner and builder. This constructor is provided for + purposes of development. + + The test assembly + A prefix used for all test ids created under this controller. + A Dictionary of settings to use in loading and running the tests + The Type of the test runner + The Type of the test builder + + + + Loads the tests in the assembly + + + + + + Returns info about the tests in an assembly + + A string containing the XML representation of the filter to use + The XML result of exploring the tests + + + + Runs the tests in an assembly + + A string containing the XML representation of the filter to use + The XML result of the test run + + + + Runs the tests in an assembly syncronously reporting back the test results through the callback + or through the return value + + The callback that receives the test results + A string containing the XML representation of the filter to use + The XML result of the test run + + + + Runs the tests in an assembly asyncronously reporting back the test results through the callback + + The callback that receives the test results + A string containing the XML representation of the filter to use + + + + Stops the test run + + True to force the stop, false for a cooperative stop + + + + Counts the number of test cases in the loaded TestSuite + + A string containing the XML representation of the filter to use + The number of tests + + + + Inserts environment element + + Target node + The new node + + + + Inserts settings element + + Target node + Settings dictionary + The new node + + + + Gets the ITestAssemblyBuilder used by this controller instance. + + The builder. + + + + Gets the ITestAssemblyRunner used by this controller instance. + + The runner. + + + + Gets the AssemblyName or the path for which this FrameworkController was created + + + + + Gets the Assembly for which this + + + + + Gets a dictionary of settings for the FrameworkController + + + + + A shim of the .NET interface for platforms that do not support it. + Used to indicate that a control can be the target of a callback event on the server. + + + + + Processes a callback event that targets a control. + + + + + + Returns the results of a callback event that targets a control. + + + + + + FrameworkControllerAction is the base class for all actions + performed against a FrameworkController. + + + + + LoadTestsAction loads a test into the FrameworkController + + + + + LoadTestsAction loads the tests in an assembly. + + The controller. + The callback handler. + + + + ExploreTestsAction returns info about the tests in an assembly + + + + + Initializes a new instance of the class. + + The controller for which this action is being performed. + Filter used to control which tests are included (NYI) + The callback handler. + + + + CountTestsAction counts the number of test cases in the loaded TestSuite + held by the FrameworkController. + + + + + Construct a CountsTestAction and perform the count of test cases. + + A FrameworkController holding the TestSuite whose cases are to be counted + A string containing the XML representation of the filter to use + A callback handler used to report results + + + + RunTestsAction runs the loaded TestSuite held by the FrameworkController. + + + + + Construct a RunTestsAction and run all tests in the loaded TestSuite. + + A FrameworkController holding the TestSuite to run + A string containing the XML representation of the filter to use + A callback handler used to report results + + + + RunAsyncAction initiates an asynchronous test run, returning immediately + + + + + Construct a RunAsyncAction and run all tests in the loaded TestSuite. + + A FrameworkController holding the TestSuite to run + A string containing the XML representation of the filter to use + A callback handler used to report results + + + + StopRunAction stops an ongoing run. + + + + + Construct a StopRunAction and stop any ongoing run. If no + run is in process, no error is raised. + + The FrameworkController for which a run is to be stopped. + True the stop should be forced, false for a cooperative stop. + >A callback handler used to report results + A forced stop will cause threads and processes to be killed as needed. + + + + ExceptionTypeConstraint is a special version of ExactTypeConstraint + used to provided detailed info about the exception thrown in + an error message. + + + + + ExactTypeConstraint is used to test that an object + is of the exact type provided in the constructor + + + + + Construct an ExactTypeConstraint for a given Type + + The expected Type. + + + + Apply the constraint to an actual value, returning true if it succeeds + + The actual argument + True if the constraint succeeds, otherwise false. + + + + The display name of this Constraint for use by ToString(). + The default value is the name of the constraint with + trailing "Constraint" removed. Derived classes may set + this to another name in their constructors. + + + + + Constructs an ExceptionTypeConstraint + + + + + Applies the constraint to an actual value, returning a ConstraintResult. + + The value to be tested + A ConstraintResult + + + + TestProgressReporter translates ITestListener events into + the async callbacks that are used to inform the client + software about the progress of a test run. + + + + + Initializes a new instance of the class. + + The callback handler to be used for reporting progress. + + + + Called when a test has just started + + The test that is starting + + + + Called when a test has finished. Sends a result summary to the callback. + to + + The result of the test + + + + Called when a test produces output for immediate display + + A TestOutput object containing the text to display + + + + Returns the parent test item for the targer test item if it exists + + + parent test item + + + + Makes a string safe for use as an attribute, replacing + characters characters that can't be used with their + corresponding xml representations. + + The string to be used + A new string with the _values replaced + + + + Operator used to test for the presence of a named Property + on an object and optionally apply further tests to the + value of that property. + + + + + Constructs a PropOperator for a particular named property + + + + + Reduce produces a constraint from the operator and + any arguments. It takes the arguments from the constraint + stack and pushes the resulting constraint on it. + + + + + + Gets the name of the property to which the operator applies + + + + + NaNConstraint tests that the actual value is a double or float NaN + + + + + Test that the actual value is an NaN + + + + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + CollectionContainsConstraint is used to test whether a collection + contains an expected object as a member. + + + + + Construct a CollectionContainsConstraint + + + + + + Test whether the expected item is contained in the collection + + + + + + + Flag the constraint to use the supplied predicate function + + The comparison function to use. + Self. + + + + The display name of this Constraint for use by ToString(). + The default value is the name of the constraint with + trailing "Constraint" removed. Derived classes may set + this to another name in their constructors. + + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + Gets the expected object + + + + + Attribute used to mark a class that contains one-time SetUp + and/or TearDown methods that apply to all the tests in a + namespace or an assembly. + + + + + Attribute used to mark a class that contains one-time SetUp + and/or TearDown methods that apply to all the tests in a + namespace or an assembly. + + + + + Attribute used to mark a class that contains one-time SetUp + and/or TearDown methods that apply to all the tests in a + namespace or an assembly. + + + + + RepeatAttribute may be applied to test case in order + to run it multiple times. + + + + + Construct a RepeatAttribute + + The number of times to run the test + + + + Wrap a command and return the result. + + The command to be wrapped + The wrapped command + + + + The test command for the RepeatAttribute + + + + + Initializes a new instance of the class. + + The inner command. + The number of repetitions + + + + Runs the test, saving a TestResult in the supplied TestExecutionContext. + + The context in which the test should run. + A TestResult + + + + A simplified implementation of .NET 4 CountdownEvent + for use in earlier versions of .NET. Only the methods + used by NUnit are implemented. + + + + + Construct a CountdownEvent + + The initial count + + + + Decrement the count by one + + + + + Block the thread until the count reaches zero + + + + + Gets the initial count established for the CountdownEvent + + + + + Gets the current count remaining for the CountdownEvent + + + + + TheoryResultCommand adjusts the result of a Theory so that + it fails if all the results were inconclusive. + + + + + Constructs a TheoryResultCommand + + The command to be wrapped by this one + + + + Overridden to call the inner command and adjust the result + in case all chlid results were inconclusive. + + + + + + + NUnitTestCaseBuilder is a utility class used by attributes + that build test cases. + + + + + Constructs an + + + + + Builds a single NUnitTestMethod, either as a child of the fixture + or as one of a set of test cases under a ParameterizedTestMethodSuite. + + The MethodInfo from which to construct the TestMethod + The suite or fixture to which the new test will be added + The ParameterSet to be used, or null + + + + + Helper method that checks the signature of a TestMethod and + any supplied parameters to determine if the test is valid. + + Currently, NUnitTestMethods are required to be public, + non-abstract methods, either static or instance, + returning void. They may take arguments but the _values must + be provided or the TestMethod is not considered runnable. + + Methods not meeting these criteria will be marked as + non-runnable and the method will return false in that case. + + The TestMethod to be checked. If it + is found to be non-runnable, it will be modified. + Parameters to be used for this test, or null + True if the method signature is valid, false if not + + The return value is no longer used internally, but is retained + for testing purposes. + + + + + The TestStatus enum indicates the result of running a test + + + + + The test was inconclusive + + + + + The test has skipped + + + + + The test succeeded + + + + + The test failed + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + TestNameGenerator is able to create test names according to + a coded pattern. + + + + + Default pattern used to generate names + + + + + Construct a TestNameGenerator + + + + + Construct a TestNameGenerator + + The pattern used by this generator. + + + + Get the display name for a TestMethod and it's arguments + + A TestMethod + The display name + + + + Get the display name for a TestMethod and it's arguments + + A TestMethod + Arguments to be used + The display name + + + + The EqualConstraintResult class is tailored for formatting + and displaying the result of an EqualConstraint. + + + + + Construct an EqualConstraintResult + + + + + Write a failure message. Overridden to provide custom + failure messages for EqualConstraint. + + The MessageWriter to write to + + + + Display the failure information for two collections that did not match. + + The MessageWriter on which to display + The expected collection. + The actual collection + The depth of this failure in a set of nested collections + + + + Displays a single line showing the types and sizes of the expected + and actual collections or arrays. If both are identical, the value is + only shown once. + + The MessageWriter on which to display + The expected collection or array + The actual collection or array + The indentation level for the message line + + + + Displays a single line showing the point in the expected and actual + arrays at which the comparison failed. If the arrays have different + structures or dimensions, both _values are shown. + + The MessageWriter on which to display + The expected array + The actual array + Index of the failure point in the underlying collections + The indentation level for the message line + + + + Display the failure information for two IEnumerables that did not match. + + The MessageWriter on which to display + The expected enumeration. + The actual enumeration + The depth of this failure in a set of nested collections + + + + Provides NUnit specific extensions to aid in Reflection + across multiple frameworks + + + This version of the class supplies GetTypeInfo() on platforms + that don't support it. + + + + + GetTypeInfo gives access to most of the Type information we take for granted + on .NET Core and Windows Runtime. Rather than #ifdef different code for different + platforms, it is easiest to just code all platforms as if they worked this way, + thus the simple passthrough. + + + + + + + Extensions for Assembly that are not available in pre-4.5 .NET releases + + + + + An easy way to get a single custom attribute from an assembly + + The attribute Type + The assembly + An attribute of Type T + + + + Type extensions that apply to all target frameworks + + + + + Determines if the given array is castable/matches the array. + + + + + + + + Determines if one type can be implicitly converted from another + + + + + + + + This class is used as a flag when we get a parameter list for a method/constructor, but + we do not know one of the types because null was passed in. + + + + + The TestCaseData class represents a set of arguments + and other parameter info to be used for a parameterized + test case. It is derived from TestCaseParameters and adds a + fluent syntax for use in initializing the test case. + + + + + The TestCaseParameters class encapsulates method arguments and + other selected parameters needed for constructing + a parameterized test case. + + + + + TestParameters is the abstract base class for all classes + that know how to provide data for constructing a test. + + + + + Default Constructor creates an empty parameter set + + + + + Construct a parameter set with a list of arguments + + + + + + Construct a non-runnable ParameterSet, specifying + the provider exception that made it invalid. + + + + + Construct a ParameterSet from an object implementing ITestData + + + + + + Applies ParameterSet _values to the test itself. + + A test. + + + + The RunState for this set of parameters. + + + + + The arguments to be used in running the test, + which must match the method signature. + + + + + A name to be used for this test case in lieu + of the standard generated name containing + the argument list. + + + + + Gets the property dictionary for this test + + + + + The original arguments provided by the user, + used for display purposes. + + + + + The expected result to be returned + + + + + Default Constructor creates an empty parameter set + + + + + Construct a non-runnable ParameterSet, specifying + the provider exception that made it invalid. + + + + + Construct a parameter set with a list of arguments + + + + + + Construct a ParameterSet from an object implementing ITestCaseData + + + + + + The expected result of the test, which + must match the method return type. + + + + + Gets a value indicating whether an expected result was specified. + + + + + Initializes a new instance of the class. + + The arguments. + + + + Initializes a new instance of the class. + + The argument. + + + + Initializes a new instance of the class. + + The first argument. + The second argument. + + + + Initializes a new instance of the class. + + The first argument. + The second argument. + The third argument. + + + + Sets the expected result for the test + + The expected result + A modified TestCaseData + + + + Sets the name of the test case + + The modified TestCaseData instance + + + + Sets the description for the test case + being constructed. + + The description. + The modified TestCaseData instance. + + + + Applies a category to the test + + + + + + + Applies a named property to the test + + + + + + + + Applies a named property to the test + + + + + + + + Applies a named property to the test + + + + + + + + Marks the test case as explicit. + + + + + Marks the test case as explicit, specifying the reason. + + + + + Ignores this TestCase, specifying the reason. + + The reason. + + + + + + + + + + + + + + + + + + + + + Gets or sets the current test + + + + + The time the current test started execution + + + + + The time the current test started in Ticks + + + + + Gets or sets the current test result + + + + + Gets a TextWriter that will send output to the current test result. + + + + + The current test object - that is the user fixture + object on which tests are being executed. + + + + + Get or set the working directory + + + + + Get or set indicator that run should stop on the first error + + + + + Gets an enum indicating whether a stop has been requested. + + + + + The current WorkItemDispatcher. Made public for + use by nunitlite.tests + + + + + The ParallelScope to be used by tests running in this context. + For builds with out the parallel feature, it has no effect. + + + + + The unique name of the worker that spawned the context. + For builds with out the parallel feature, it is null. + + + + + Gets the RandomGenerator specific to this Test + + + + + Gets or sets the test case timeout value + + + + + Gets a list of ITestActions set by upstream tests + + + + + Saves or restores the CurrentCulture + + + + + Saves or restores the CurrentUICulture + + + + + The current head of the ValueFormatter chain, copied from MsgUtils.ValueFormatter + + + + + If true, all tests must run on the same thread. No new thread may be spawned. + + + + + Helper class used to save and restore certain static or + singleton settings in the environment that affect tests + or which might be changed by the user tests. + + An internal class is used to hold settings and a stack + of these objects is pushed and popped as Save and Restore + are called. + + + + + Link to a prior saved context + + + + + Indicates that a stop has been requested + + + + + The event listener currently receiving notifications + + + + + The number of assertions for the current test + + + + + The current culture + + + + + The current UI culture + + + + + The current test result + + + + + The current Principal. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + An existing instance of TestExecutionContext. + + + + Get the current context or return null if none is found. + + + + + + Clear the current context. This is provided to + prevent "leakage" of the CallContext containing + the current context back to any runners. + + + + + Record any changes in the environment made by + the test code in the execution context so it + will be passed on to lower level tests. + + + + + Set up the execution environment to match a context. + Note that we may be running on the same thread where the + context was initially created or on a different thread. + + + + + Increments the assert count by one. + + + + + Increments the assert count by a specified amount. + + + + + Adds a new ValueFormatterFactory to the chain of formatters + + The new factory + + + + Obtain lifetime service object + + + + + + Gets and sets the current context. + + + + + Gets or sets the current test + + + + + The time the current test started execution + + + + + The time the current test started in Ticks + + + + + Gets or sets the current test result + + + + + Gets a TextWriter that will send output to the current test result. + + + + + The current test object - that is the user fixture + object on which tests are being executed. + + + + + Get or set the working directory + + + + + Get or set indicator that run should stop on the first error + + + + + Gets an enum indicating whether a stop has been requested. + + + + + The current test event listener + + + + + The current WorkItemDispatcher. Made public for + use by nunitlite.tests + + + + + The ParallelScope to be used by tests running in this context. + For builds with out the parallel feature, it has no effect. + + + + + The unique name of the worker that spawned the context. + For builds with out the parallel feature, it is null. + + + + + Gets the RandomGenerator specific to this Test + + + + + Gets the assert count. + + The assert count. + + + + Gets or sets the test case timeout value + + + + + Gets a list of ITestActions set by upstream tests + + + + + Saves or restores the CurrentCulture + + + + + Saves or restores the CurrentUICulture + + + + + Gets or sets the current for the Thread. + + + + + The current head of the ValueFormatter chain, copied from MsgUtils.ValueFormatter + + + + + If true, all tests must run on the same thread. No new thread may be spawned. + + + + + Thrown when a test executes inconclusively. + + + + + Abstract base for Exceptions that terminate a test and provide a ResultState. + + + + The error message that explains + the reason for the exception + + + The error message that explains + the reason for the exception + The exception that caused the + current exception + + + + Serialization Constructor + + + + + Gets the ResultState provided by this exception + + + + The error message that explains + the reason for the exception + + + The error message that explains + the reason for the exception + The exception that caused the + current exception + + + + Serialization Constructor + + + + + Gets the ResultState provided by this exception + + + + + Helper class with properties and methods that supply + a number of constraints used in Asserts. + + + + + Returns a new CollectionContainsConstraint checking for the + presence of a particular object in the collection. + + + + + Returns a new DictionaryContainsKeyConstraint checking for the + presence of a particular key in the dictionary. + + + + + Returns a new DictionaryContainsValueConstraint checking for the + presence of a particular value in the dictionary. + + + + + Returns a constraint that succeeds if the actual + value contains the substring supplied as an argument. + + + + + EqualConstraint is able to compare an actual value with the + expected value provided in its constructor. Two objects are + considered equal if both are null, or if both have the same + value. NUnit has special semantics for some object types. + + + + + NUnitEqualityComparer used to test equality. + + + + + Initializes a new instance of the class. + + The expected value. + + + + Flag the constraint to use a tolerance when determining equality. + + Tolerance value to be used + Self. + + + + Flag the constraint to use the supplied IComparer object. + + The IComparer object to use. + Self. + + + + Flag the constraint to use the supplied IComparer object. + + The IComparer object to use. + Self. + + + + Flag the constraint to use the supplied Comparison object. + + The IComparer object to use. + Self. + + + + Flag the constraint to use the supplied IEqualityComparer object. + + The IComparer object to use. + Self. + + + + Flag the constraint to use the supplied IEqualityComparer object. + + The IComparer object to use. + Self. + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True for success, false for failure + + + + Gets the tolerance for this comparison. + + + The tolerance. + + + + + Gets a value indicating whether to compare case insensitive. + + + true if comparing case insensitive; otherwise, false. + + + + + Gets a value indicating whether or not to clip strings. + + + true if set to clip strings otherwise, false. + + + + + Gets the failure points. + + + The failure points. + + + + + Flag the constraint to ignore case and return self. + + + + + Flag the constraint to suppress string clipping + and return self. + + + + + Flag the constraint to compare arrays as collections + and return self. + + + + + Flags the constraint to include + property in comparison of two values. + + + Using this modifier does not allow to use the + constraint modifier. + + + + + Switches the .Within() modifier to interpret its tolerance as + a distance in representable _values (see remarks). + + Self. + + Ulp stands for "unit in the last place" and describes the minimum + amount a given value can change. For any integers, an ulp is 1 whole + digit. For floating point _values, the accuracy of which is better + for smaller numbers and worse for larger numbers, an ulp depends + on the size of the number. Using ulps for comparison of floating + point results instead of fixed tolerances is safer because it will + automatically compensate for the added inaccuracy of larger numbers. + + + + + Switches the .Within() modifier to interpret its tolerance as + a percentage that the actual _values is allowed to deviate from + the expected value. + + Self + + + + Causes the tolerance to be interpreted as a TimeSpan in days. + + Self + + + + Causes the tolerance to be interpreted as a TimeSpan in hours. + + Self + + + + Causes the tolerance to be interpreted as a TimeSpan in minutes. + + Self + + + + Causes the tolerance to be interpreted as a TimeSpan in seconds. + + Self + + + + Causes the tolerance to be interpreted as a TimeSpan in milliseconds. + + Self + + + + Causes the tolerance to be interpreted as a TimeSpan in clock ticks. + + Self + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + Applies a delay to the match so that a match can be evaluated in the future. + + + + + Creates a new DelayedConstraint + + The inner constraint to decorate + The time interval after which the match is performed + If the value of is less than 0 + + + + Creates a new DelayedConstraint + + The inner constraint to decorate + The time interval after which the match is performed, in milliseconds + The time interval used for polling, in milliseconds + If the value of is less than 0 + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True for if the base constraint fails, false if it succeeds + + + + Test whether the constraint is satisfied by a delegate + + The delegate whose value is to be tested + A ConstraintResult + + + + Test whether the constraint is satisfied by a given reference. + Overridden to wait for the specified delay period before + calling the base constraint with the dereferenced value. + + A reference to the value to be tested + True for success, false for failure + + + + Returns the string representation of the constraint. + + + + + Adjusts a Timestamp by a given TimeSpan + + + + + + + + Returns the difference between two Timestamps as a TimeSpan + + + + + + + + Gets text describing a constraint + + + + + CollectionOrderedConstraint is used to test whether a collection is ordered. + + + + + Construct a CollectionOrderedConstraint + + + + + Modifies the constraint to use an and returns self. + + + + + Modifies the constraint to use an and returns self. + + + + + Modifies the constraint to use a and returns self. + + + + + Modifies the constraint to test ordering by the value of + a specified property and returns self. + + + + + Test whether the collection is ordered + + + + + + + Returns the string representation of the constraint. + + + + + + The display name of this Constraint for use by ToString(). + The default value is the name of the constraint with + trailing "Constraint" removed. Derived classes may set + this to another name in their constructors. + + + + + If used performs a default ascending comparison + + + + + If used performs a reverse comparison + + + + + Then signals a break between two ordering steps + + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + An OrderingStep represents one stage of the sort + + + + + Attribute used to provide descriptive text about a + test case or fixture. + + + + + Construct a description Attribute + + The text of the description + + + + InvalidTestFixtureException is thrown when an appropriate test + fixture constructor using the provided arguments cannot be found. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The message. + + + + Initializes a new instance of the class. + + The message. + The inner. + + + + Serialization Constructor + + + + + A CompositeWorkItem represents a test suite and + encapsulates the execution of the suite as well + as all its child tests. + + + + + A count of how many tests in the work item have a value for the Order Property + + + + + Construct a CompositeWorkItem for executing a test suite + using a filter to select child tests. + + The TestSuite to be executed + A filter used to select child tests + + + + Method that actually performs the work. Overridden + in CompositeWorkItem to do setup, run all child + items and then do teardown. + + + + + Sorts tests under this suite. + + + + + Cancel (abort or stop) a CompositeWorkItem and all of its children + + true if the CompositeWorkItem and all of its children should be aborted, false if it should allow all currently running tests to complete + + + + List of Child WorkItems + + + + + Compares two objects and returns a value indicating whether one is less than, equal to, or greater than the other. + + + A signed integer that indicates the relative values of and , as shown in the following table.Value Meaning Less than zero is less than .Zero equals .Greater than zero is greater than . + + The first object to compare.The second object to compare. + + + + The ISimpleTestBuilder interface is exposed by a class that knows how to + build a single TestMethod from a suitable MethodInfo Types. In general, + it is exposed by an attribute, but may be implemented in a helper class + used by the attribute in some cases. + + + + + Build a TestMethod from the provided MethodInfo. + + The method to be used as a test + The TestSuite to which the method will be added + A TestMethod object + + + + The TypeWrapper class wraps a Type so it may be used in + a platform-independent manner. + + + + + Construct a TypeWrapper for a specified Type. + + + + + Returns true if the Type wrapped is T + + + + + Get the display name for this type + + + + + Get the display name for an object of this type, constructed with the specified args. + + + + + Returns a new ITypeInfo representing an instance of this generic Type using the supplied Type arguments + + + + + Returns a Type representing a generic type definition from which this Type can be constructed. + + + + + Returns an array of custom attributes of the specified type applied to this type + + + + + Returns a value indicating whether the type has an attribute of the specified type. + + + + + + + + Returns a flag indicating whether this type has a method with an attribute of the specified type. + + + + + + + Returns an array of IMethodInfos for methods of this Type + that match the specified flags. + + + + + Gets the public constructor taking the specified argument Types + + + + + Returns a value indicating whether this Type has a public constructor taking the specified argument Types. + + + + + Construct an object of this Type, using the specified arguments. + + + + + Override ToString() so that error messages in NUnit's own tests make sense + + + + + Gets the underlying Type on which this TypeWrapper is based. + + + + + Gets the base type of this type as an ITypeInfo + + + + + Gets the Name of the Type + + + + + Gets the FullName of the Type + + + + + Gets the assembly in which the type is declared + + + + + Gets the namespace of the Type + + + + + Gets a value indicating whether the type is abstract. + + + + + Gets a value indicating whether the Type is a generic Type + + + + + Gets a value indicating whether the Type has generic parameters that have not been replaced by specific Types. + + + + + Gets a value indicating whether the Type is a generic Type definition + + + + + Gets a value indicating whether the type is sealed. + + + + + Gets a value indicating whether this type represents a static class. + + + + + DictionaryContainsValueConstraint is used to test whether a dictionary + contains an expected object as a value. + + + + + Construct a DictionaryContainsValueConstraint + + + + + + Test whether the expected value is contained in the dictionary + + + + + The display name of this Constraint for use by ToString(). + The default value is the name of the constraint with + trailing "Constraint" removed. Derived classes may set + this to another name in their constructors. + + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + TestCaseSourceAttribute indicates the source to be used to + provide test fixture instances for a test class. + + + + + Error message string is public so the tests can use it + + + + + Construct with the name of the method, property or field that will provide data + + The name of a static method, property or field that will provide data. + + + + Construct with a Type and name + + The Type that will provide data + The name of a static method, property or field that will provide data. + + + + Construct with a Type + + The type that will provide data + + + + Construct one or more TestFixtures from a given Type, + using available parameter data. + + The TypeInfo for which fixures are to be constructed. + One or more TestFixtures as TestSuite + + + + Returns a set of ITestFixtureData items for use as arguments + to a parameterized test fixture. + + The type for which data is needed. + + + + + The name of a the method, property or fiend to be used as a source + + + + + A Type to be used as a source + + + + + Gets or sets the category associated with every fixture created from + this attribute. May be a single category or a comma-separated list. + + + + + Attribute used to identify a method that is called once + to perform setup before any child tests are run. + + + + + Provides the Author of a test or test fixture. + + + + + Initializes a new instance of the class. + + The name of the author. + + + + Initializes a new instance of the class. + + The name of the author. + The email address of the author. + + + + The different targets a test action attribute can be applied to + + + + + Default target, which is determined by where the action attribute is attached + + + + + Target a individual test case + + + + + Target a suite of test cases + + + + + TestListener provides an implementation of ITestListener that + does nothing. It is used only through its NULL property. + + + + + Called when a test has just started + + The test that is starting + + + + Called when a test case has finished + + The result of the test + + + + Called when a test produces output for immediate display + + A TestOutput object containing the text to display + + + + Construct a new TestListener - private so it may not be used. + + + + + Get a listener that does nothing + + + + + PlatformHelper class is used by the PlatformAttribute class to + determine whether a platform is supported. + + + + + Comma-delimited list of all supported OS platform constants + + + + + Comma-delimited list of all supported Runtime platform constants + + + + + Default constructor uses the operating system and + common language runtime of the system. + + + + + Construct a PlatformHelper for a particular operating + system and common language runtime. Used in testing. + + OperatingSystem to be used + RuntimeFramework to be used + + + + Test to determine if one of a collection of platforms + is being used currently. + + + + + + + Tests to determine if the current platform is supported + based on a platform attribute. + + The attribute to examine + + + + + Tests to determine if the current platform is supported + based on a platform attribute. + + The attribute to examine + + + + + Test to determine if the a particular platform or comma- + delimited set of platforms is in use. + + Name of the platform or comma-separated list of platform ids + True if the platform is in use on the system + + + + Return the last failure reason. Results are not + defined if called before IsSupported( Attribute ) + is called. + + + + + DefaultTestAssemblyBuilder loads a single assembly and builds a TestSuite + containing test fixtures present in the assembly. + + + + + The default suite builder used by the test assembly builder. + + + + + Initializes a new instance of the class. + + + + + Build a suite of tests from a provided assembly + + The assembly from which tests are to be built + A dictionary of options to use in building the suite + + A TestSuite containing the tests found in the assembly + + + + + Build a suite of tests given the filename of an assembly + + The filename of the assembly from which tests are to be built + A dictionary of options to use in building the suite + + A TestSuite containing the tests found in the assembly + + + + + Helper class with properties and methods that supply + a number of constraints used in Asserts. + + + + + Returns a ConstraintExpression, which will apply + the following constraint to all members of a collection, + succeeding only if a specified number of them succeed. + + + + + Returns a new PropertyConstraintExpression, which will either + test for the existence of the named property on the object + being tested or apply any following constraint to that property. + + + + + Returns a new AttributeConstraint checking for the + presence of a particular attribute on an object. + + + + + Returns a new AttributeConstraint checking for the + presence of a particular attribute on an object. + + + + + Returns a new CollectionContainsConstraint checking for the + presence of a particular object in the collection. + + + + + Returns a ConstraintExpression that negates any + following constraint. + + + + + Returns a ConstraintExpression, which will apply + the following constraint to all members of a collection, + succeeding if all of them succeed. + + + + + Returns a ConstraintExpression, which will apply + the following constraint to all members of a collection, + succeeding if at least one of them succeeds. + + + + + Returns a ConstraintExpression, which will apply + the following constraint to all members of a collection, + succeeding if all of them fail. + + + + + Returns a new ConstraintExpression, which will apply the following + constraint to the Length property of the object being tested. + + + + + Returns a new ConstraintExpression, which will apply the following + constraint to the Count property of the object being tested. + + + + + Returns a new ConstraintExpression, which will apply the following + constraint to the Message property of the object being tested. + + + + + Returns a new ConstraintExpression, which will apply the following + constraint to the InnerException property of the object being tested. + + + + + EmptyConstraint tests a whether a string or collection is empty, + postponing the decision about which test is applied until the + type of the actual argument is known. + + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True for success, false for failure + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + ComparisonAdapter class centralizes all comparisons of + _values in NUnit, adapting to the use of any provided + , + or . + + + + + Returns a ComparisonAdapter that wraps an + + + + + Returns a ComparisonAdapter that wraps an + + + + + Returns a ComparisonAdapter that wraps a + + + + + Compares two objects + + + + + Gets the default ComparisonAdapter, which wraps an + NUnitComparer object. + + + + + Construct a ComparisonAdapter for an + + + + + Compares two objects + + + + + + + + Construct a default ComparisonAdapter + + + + + ComparerAdapter extends and + allows use of an or + to actually perform the comparison. + + + + + Construct a ComparisonAdapter for an + + + + + Compare a Type T to an object + + + + + Construct a ComparisonAdapter for a + + + + + Compare a Type T to an object + + + + + AssignableFromConstraint is used to test that an object + can be assigned from a given Type. + + + + + Construct an AssignableFromConstraint for the type provided + + + + + + Apply the constraint to an actual value, returning true if it succeeds + + The actual argument + True if the constraint succeeds, otherwise false. + + + + Marks a test to use a Sequential join of any argument + data provided. Arguments will be combined into test cases, + taking the next value of each argument until all are used. + + + + + Default constructor + + + + + RangeAttribute is used to supply a range of _values to an + individual parameter of a parameterized test. + + + + + Construct a range of ints using default step of 1 + + + + + + + Construct a range of ints specifying the step size + + + + + + + + Construct a range of unsigned ints using default step of 1 + + + + + + + Construct a range of unsigned ints specifying the step size + + + + + + + + Construct a range of longs using a default step of 1 + + + + + + + Construct a range of longs + + + + + + + + Construct a range of unsigned longs using default step of 1 + + + + + + + Construct a range of unsigned longs specifying the step size + + + + + + + + Construct a range of doubles + + + + + + + + Construct a range of floats + + + + + + + + Used to mark a field, property or method providing a set of datapoints to + be used in executing any theories within the same fixture that require an + argument of the Type provided. The data source may provide an array of + the required Type or an . + Synonymous with DatapointsAttribute. + + + + + StackFilter class is used to remove internal NUnit + entries from a stack trace so that the resulting + trace provides better information about the test. + + + + + Filters a raw stack trace and returns the result. + + The original stack trace + A filtered stack trace + + + + A utility class to create TestCommands + + + + + Gets the command to be executed before any of + the child tests are run. + + A TestCommand + + + + Gets the command to be executed after all of the + child tests are run. + + A TestCommand + + + + Creates a test command for use in running this test. + + + + + + Creates a command for skipping a test. The result returned will + depend on the test RunState. + + + + + Builds the set up tear down list. + + Type of the fixture. + Type of the set up attribute. + Type of the tear down attribute. + A list of SetUpTearDownItems + + + + The ParameterWrapper class wraps a ParameterInfo so that it may + be used in a platform-independent manner. + + + + + The IParameterInfo interface is an abstraction of a .NET parameter. + + + + + Gets a value indicating whether the parameter is optional + + + + + Gets an IMethodInfo representing the method for which this is a parameter + + + + + Gets the underlying .NET ParameterInfo + + + + + Gets the Type of the parameter + + + + + Construct a ParameterWrapper for a given method and parameter + + + + + + + Returns an array of custom attributes of the specified type applied to this method + + + + + Gets a value indicating whether one or more attributes of the specified type are defined on the parameter. + + + + + Gets a value indicating whether the parameter is optional + + + + + Gets an IMethodInfo representing the method for which this is a parameter. + + + + + Gets the underlying ParameterInfo + + + + + Gets the Type of the parameter + + + + + A trace listener that writes to a separate file per domain + and process using it. + + + + + Construct an InternalTraceWriter that writes to a file. + + Path to the file to use + + + + Construct an InternalTraceWriter that writes to a + TextWriter provided by the caller. + + + + + + Writes a character to the text string or stream. + + The character to write to the text stream. + + + + Writes a string to the text string or stream. + + The string to write. + + + + Writes a string followed by a line terminator to the text string or stream. + + The string to write. If is null, only the line terminator is written. + + + + Releases the unmanaged resources used by the and optionally releases the managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Clears all buffers for the current writer and causes any buffered data to be written to the underlying device. + + + + + Returns the character encoding in which the output is written. + + The character encoding in which the output is written. + + + + FullName filter selects tests based on their FullName + + + + + Construct a MethodNameFilter for a single name + + The name the filter will recognize. + + + + Match a test against a single value. + + + + + Gets the element name + + Element name + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Provides a platform-independent methods for getting attributes + for use by AttributeConstraint and AttributeExistsConstraint. + + + + + Gets the custom attributes from the given object. + + Portable libraries do not have an ICustomAttributeProvider, so we need to cast to each of + it's direct subtypes and try to get attributes off those instead. + The actual. + Type of the attribute. + if set to true [inherit]. + A list of the given attribute on the given object. + + + + The SpecialValue enum is used to represent TestCase arguments + that cannot be used as arguments to an Attribute. + + + + + Null represents a null value, which cannot be used as an + argument to an attriute under .NET 1.x + + + + + TypeHelper provides static methods that operate on Types. + + + + + A special value, which is used to indicate that BestCommonType() method + was unable to find a common type for the specified arguments. + + + + + Gets the display name for a Type as used by NUnit. + + The Type for which a display name is needed. + The display name for the Type + + + + Gets the display name for a Type as used by NUnit. + + The Type for which a display name is needed. + The arglist provided. + The display name for the Type + + + + Returns the best fit for a common type to be used in + matching actual arguments to a methods Type parameters. + + The first type. + The second type. + Either type1 or type2, depending on which is more general. + + + + Determines whether the specified type is numeric. + + The type to be examined. + + true if the specified type is numeric; otherwise, false. + + + + + Convert an argument list to the required parameter types. + Currently, only widening numeric conversions are performed. + + An array of args to be converted + A ParameterInfo[] whose types will be used as targets + + + + Determines whether this instance can deduce type args for a generic type from the supplied arguments. + + The type to be examined. + The arglist. + The type args to be used. + + true if this the provided args give sufficient information to determine the type args to be used; otherwise, false. + + + + + Gets the _values for an enumeration, using Enum.GetTypes + where available, otherwise through reflection. + + + + + + + Gets the ids of the _values for an enumeration, + using Enum.GetNames where available, otherwise + through reflection. + + + + + + + ThreadUtility provides a set of static methods convenient + for working with threads. + + + + + Do our best to Kill a thread + + The thread to kill + + + + Do our best to kill a thread, passing state info + + The thread to kill + Info for the ThreadAbortException handler + + + + TestFixture is a surrogate for a user test fixture class, + containing one or more tests. + + + + + Any ITest that implements this interface is at a level that the implementing + class should be disposed at the end of the test run + + + + + Initializes a new instance of the class. + + Type of the fixture. + + + + Predicate constraint wraps a Predicate in a constraint, + returning success if the predicate is true. + + + + + Construct a PredicateConstraint from a predicate + + + + + Determines whether the predicate succeeds when applied + to the actual value. + + + + + Gets text describing a constraint + + + + + NotConstraint negates the effect of some other constraint + + + + + Initializes a new instance of the class. + + The base constraint to be negated. + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True for if the base constraint fails, false if it succeeds + + + + Custom value formatter function + + The value + + + + + Custom value formatter factory function + + The next formatter function + ValueFormatter + If the given formatter is unable to handle a certain format, it must call the next formatter in the chain + + + + Static methods used in creating messages + + + + + Static string used when strings are clipped + + + + + Formatting strings used for expected and actual _values + + + + + Add a formatter to the chain of responsibility. + + + + + + Formats text to represent a generalized value. + + The value + The formatted text + + + + Formats text for a collection value, + starting at a particular point, to a max length + + The collection containing elements to write. + The starting point of the elements to write + The maximum number of elements to write + + + + Returns the representation of a type as used in NUnitLite. + This is the same as Type.ToString() except for arrays, + which are displayed with their declared sizes. + + + + + + + Converts any control characters in a string + to their escaped representation. + + The string to be converted + The converted string + + + + Converts any null characters in a string + to their escaped representation. + + The string to be converted + The converted string + + + + Return the a string representation for a set of indices into an array + + Array of indices for which a string is needed + + + + Get an array of indices representing the point in a collection or + array corresponding to a single int index into the collection. + + The collection to which the indices apply + Index in the collection + Array of indices + + + + Clip a string to a given length, starting at a particular offset, returning the clipped + string with ellipses representing the removed parts + + The string to be clipped + The maximum permitted length of the result string + The point at which to start clipping + The clipped string + + + + Clip the expected and actual strings in a coordinated fashion, + so that they may be displayed together. + + + + + + + + + Shows the position two strings start to differ. Comparison + starts at the start index. + + The expected string + The actual string + The index in the strings at which comparison should start + Boolean indicating whether case should be ignored + -1 if no mismatch found, or the index where mismatch found + + + + Current head of chain of value formatters. Public for testing. + + + + + Adding this attribute to a method within a + class makes the method callable from the NUnit test runner. There is a property + called Description which is optional which you can provide a more detailed test + description. This class cannot be inherited. + + + + [TestFixture] + public class Fixture + { + [Test] + public void MethodToTest() + {} + + [Test(Description = "more detailed description")] + public void TestDescriptionMethod() + {} + } + + + + + + Construct the attribute, specifying a combining strategy and source of parameter data. + + + + + Enumeration indicating whether the tests are + running normally or being cancelled. + + + + + Running normally with no stop requested + + + + + A graceful stop has been requested + + + + + A forced stop has been requested + + + + + The TestCaseParameters class encapsulates method arguments and + other selected parameters needed for constructing + a parameterized test case. + + + + + Default Constructor creates an empty parameter set + + + + + Construct a non-runnable ParameterSet, specifying + the provider exception that made it invalid. + + + + + Construct a parameter set with a list of arguments + + + + + + Construct a ParameterSet from an object implementing ITestCaseData + + + + + + Type arguments used to create a generic fixture instance + + + + + Provides methods to support legacy string comparison methods. + + + + + Compares two strings for equality, ignoring case if requested. + + The first string. + The second string.. + if set to true, the case of the letters in the strings is ignored. + Zero if the strings are equivalent, a negative number if strA is sorted first, a positive number if + strB is sorted first + + + + Compares two strings for equality, ignoring case if requested. + + The first string. + The second string.. + if set to true, the case of the letters in the strings is ignored. + True if the strings are equivalent, false if not. + + + + OneTimeSetUpCommand runs any one-time setup methods for a suite, + constructing the user test object if necessary. + + + + + Constructs a OneTimeSetUpCommand for a suite + + The suite to which the command applies + A SetUpTearDownList for use by the command + A List of TestActionItems to be run after Setup + + + + Overridden to run the one-time setup for a suite. + + The TestExecutionContext to be used. + A TestResult + + + + The TestOutput class holds a unit of output from + a test to a specific output stream + + + + + Construct with text, ouput destination type and + the name of the test that produced the output. + + Text to be output + Name of the stream or channel to which the text should be written + FullName of test that produced the output + + + + Return string representation of the object for debugging + + + + + + Convert the TestOutput object to an XML string + + + + + Get the text + + + + + Get the output type + + + + + Get the name of the test that created the output + + + + + The IMethodInfo class is used to encapsulate information + about a method in a platform-independent manner. + + + + + Gets the parameters of the method. + + + + + + Returns the Type arguments of a generic method or the Type parameters of a generic method definition. + + + + + Replaces the type parameters of the method with the array of types provided and returns a new IMethodInfo. + + The type arguments to be used + A new IMethodInfo with the type arguments replaced + + + + Invokes the method, converting any TargetInvocationException to an NUnitException. + + The object on which to invoke the method + The argument list for the method + The return value from the invoked method + + + + Gets the Type from which this method was reflected. + + + + + Gets the MethodInfo for this method. + + + + + Gets the name of the method. + + + + + Gets a value indicating whether the method is abstract. + + + + + Gets a value indicating whether the method is public. + + + + + Gets a value indicating whether the method contains unassigned generic type parameters. + + + + + Gets a value indicating whether the method is a generic method. + + + + + Gets a value indicating whether the MethodInfo represents the definition of a generic method. + + + + + Gets the return Type of the method. + + + + + ThrowsExceptionConstraint tests that an exception has + been thrown, without any further tests. + + + + + Executes the code and returns success if an exception is thrown. + + A delegate representing the code to be tested + True if an exception is thrown, otherwise false + + + + Returns the ActualValueDelegate itself as the value to be tested. + + A delegate representing the code to be tested + The delegate itself + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + LevelOfParallelismAttribute is used to set the number of worker threads + that may be allocated by the framework for running tests. + + + + + Construct a LevelOfParallelismAttribute. + + The number of worker threads to be created by the framework. + + + + RepeatAttribute may be applied to test case in order + to run it multiple times. + + + + + Construct a RepeatAttribute + + The number of times to run the test + + + + Wrap a command and return the result. + + The command to be wrapped + The wrapped command + + + + The test command for the RetryAttribute + + + + + Initializes a new instance of the class. + + The inner command. + The number of repetitions + + + + Runs the test, saving a TestResult in the supplied TestExecutionContext. + + The context in which the test should run. + A TestResult + + + + Represents the result of running a single test case. + + + + + Construct a TestCaseResult based on a TestMethod + + A TestMethod to which the result applies. + + + + Gets the number of test cases that failed + when running the test and all its children. + + + + + Gets the number of test cases that passed + when running the test and all its children. + + + + + Gets the number of test cases that were skipped + when running the test and all its children. + + + + + Gets the number of test cases that were inconclusive + when running the test and all its children. + + + + + Indicates whether this result has any child results. + + + + + Gets the collection of child results. + + + + + TestParameters class holds any named parameters supplied to the test run + + + + + Gets a flag indicating whether a parameter with the specified name exists.N + + Name of the parameter + True if it exists, otherwise false + + + + Get method is a simple alternative to the indexer + + Name of the paramter + Value of the parameter or null if not present + + + + Get the value of a parameter or a default string + + Name of the parameter + Default value of the parameter + Value of the parameter or default value if not present + + + + Get the value of a parameter or return a default + + The return Type + Name of the parameter + Default value of the parameter + Value of the parameter or default value if not present + + + + Adds a parameter to the list + + Name of the parameter + Value of the parameter + + + + Gets the number of test parameters + + + + + Gets a collection of the test parameter names + + + + + Indexer provides access to the internal dictionary + + Name of the parameter + Value of the parameter or null if not present + + + + ParameterDataSourceProvider supplies individual argument _values for + single parameters using attributes implementing IParameterDataSource. + + + + + Determine whether any data is available for a parameter. + + A ParameterInfo representing one + argument to a parameterized test + + True if any data is available, otherwise false. + + + + + Return an IEnumerable providing data for use with the + supplied parameter. + + An IParameterInfo representing one + argument to a parameterized test + + An IEnumerable providing the required data + + + + + Thrown when an assertion failed. + + + + + + + The error message that explains + the reason for the exception + The exception that caused the + current exception + + + + Serialization Constructor + + + + + Gets the ResultState provided by this exception + + + + + OrConstraint succeeds if either member succeeds + + + + + Create an OrConstraint from two other constraints + + The first constraint + The second constraint + + + + Apply the member constraints to an actual value, succeeding + succeeding as soon as one of them succeeds. + + The actual value + True if either constraint succeeded + + + + Gets text describing a constraint + + + + + Operator that tests for the presence of a particular attribute + on a type and optionally applies further tests to the attribute. + + + + + Construct an AttributeOperator for a particular Type + + The Type of attribute tested + + + + Reduce produces a constraint from the operator and + any arguments. It takes the arguments from the constraint + stack and pushes the resulting constraint on it. + + + + + MessageWriter is the abstract base for classes that write + constraint descriptions and messages in some form. The + class has separate methods for writing various components + of a message, allowing implementations to tailor the + presentation as needed. + + + + + Construct a MessageWriter given a culture + + + + + Method to write single line message with optional args, usually + written to precede the general failure message. + + The message to be written + Any arguments used in formatting the message + + + + Method to write single line message with optional args, usually + written to precede the general failure message, at a givel + indentation level. + + The indentation level of the message + The message to be written + Any arguments used in formatting the message + + + + Display Expected and Actual lines for a constraint. This + is called by MessageWriter's default implementation of + WriteMessageTo and provides the generic two-line display. + + The failing constraint result + + + + Display Expected and Actual lines for given _values. This + method may be called by constraints that need more control over + the display of actual and expected _values than is provided + by the default implementation. + + The expected value + The actual value causing the failure + + + + Display Expected and Actual lines for given _values, including + a tolerance value on the Expected line. + + The expected value + The actual value causing the failure + The tolerance within which the test was made + + + + Display the expected and actual string _values on separate lines. + If the mismatch parameter is >=0, an additional line is displayed + line containing a caret that points to the mismatch point. + + The expected string value + The actual string value + The point at which the strings don't match or -1 + If true, case is ignored in locating the point where the strings differ + If true, the strings should be clipped to fit the line + + + + Writes the text for an actual value. + + The actual value. + + + + Writes the text for a generalized value. + + The value. + + + + Writes the text for a collection value, + starting at a particular point, to a max length + + The collection containing elements to write. + The starting point of the elements to write + The maximum number of elements to write + + + + Abstract method to get the max line length + + + + + Tests whether a value is less than the value supplied to its constructor + + + + + Abstract base class for constraints that compare _values to + determine if one is greater than, equal to or less than + the other. + + + + + The value against which a comparison is to be made + + + + + If true, less than returns success + + + + + if true, equal returns success + + + + + if true, greater than returns success + + + + + ComparisonAdapter to be used in making the comparison + + + + + Initializes a new instance of the class. + + The value against which to make a comparison. + if set to true less succeeds. + if set to true equal succeeds. + if set to true greater succeeds. + String used in describing the constraint. + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True for success, false for failure + + + + Modifies the constraint to use an and returns self + + The comparer used for comparison tests + A constraint modified to use the given comparer + + + + Modifies the constraint to use an and returns self + + The comparer used for comparison tests + A constraint modified to use the given comparer + + + + Modifies the constraint to use a and returns self + + The comparer used for comparison tests + A constraint modified to use the given comparer + + + + Initializes a new instance of the class. + + The expected value. + + + + EmptyStringConstraint tests whether a string is empty. + + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True for success, false for failure + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + EmptyDirectoryConstraint is used to test that a directory is empty + + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True for success, false for failure + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + ConstraintBuilder maintains the stacks that are used in + processing a ConstraintExpression. An OperatorStack + is used to hold operators that are waiting for their + operands to be reorganized. a ConstraintStack holds + input constraints as well as the results of each + operator applied. + + + + + Initializes a new instance of the class. + + + + + Appends the specified operator to the expression by first + reducing the operator stack and then pushing the new + operator on the stack. + + The operator to push. + + + + Appends the specified constraint to the expression by pushing + it on the constraint stack. + + The constraint to push. + + + + Sets the top operator right context. + + The right context. + + + + Reduces the operator stack until the topmost item + precedence is greater than or equal to the target precedence. + + The target precedence. + + + + Resolves this instance, returning a Constraint. If the Builder + is not currently in a resolvable state, an exception is thrown. + + The resolved constraint + + + + Gets a value indicating whether this instance is resolvable. + + + true if this instance is resolvable; otherwise, false. + + + + + OperatorStack is a type-safe stack for holding ConstraintOperators + + + + + Initializes a new instance of the class. + + The ConstraintBuilder using this stack. + + + + Pushes the specified operator onto the stack. + + The operator to put onto the stack. + + + + Pops the topmost operator from the stack. + + The topmost operator on the stack + + + + Gets a value indicating whether this is empty. + + true if empty; otherwise, false. + + + + Gets the topmost operator without modifying the stack. + + + + + ConstraintStack is a type-safe stack for holding Constraints + + + + + Initializes a new instance of the class. + + The ConstraintBuilder using this stack. + + + + Pushes the specified constraint. As a side effect, + the constraint's Builder field is set to the + ConstraintBuilder owning this stack. + + The constraint to put onto the stack + + + + Pops this topmost constraint from the stack. + As a side effect, the constraint's Builder + field is set to null. + + The topmost contraint on the stack + + + + Gets a value indicating whether this is empty. + + true if empty; otherwise, false. + + + + CollectionEquivalentConstraint is used to determine whether two + collections are equivalent. + + + + + Construct a CollectionEquivalentConstraint + + + + + + Test whether two collections are equivalent + + + + + + + Flag the constraint to use the supplied predicate function + + The comparison function to use. + Self. + + + + The display name of this Constraint for use by ToString(). + The default value is the name of the constraint with + trailing "Constraint" removed. Derived classes may set + this to another name in their constructors. + + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + AttributeExistsConstraint tests for the presence of a + specified attribute on a Type. + + + + + Constructs an AttributeExistsConstraint for a specific attribute Type + + + + + + Tests whether the object provides the expected attribute. + + A Type, MethodInfo, or other ICustomAttributeProvider + True if the expected attribute is present, otherwise false + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + Marks a test that must run on a separate thread. + + + + + Construct a RequiresThreadAttribute + + + + + Construct a RequiresThreadAttribute, specifying the apartment + + + + + ExplicitAttribute marks a test or test fixture so that it will + only be run if explicitly executed from the gui or command line + or if it is included by use of a filter. The test will not be + run simply because an enclosing suite is run. + + + + + Default constructor + + + + + Constructor with a reason + + The reason test is marked explicit + + + + Modifies a test by marking it as explicit. + + The test to modify + + + + OneTimeTearDownCommand performs any teardown actions + specified for a suite and calls Dispose on the user + test object, if any. + + + + + Construct a OneTimeTearDownCommand + + The test suite to which the command applies + A SetUpTearDownList for use by the command + A List of TestActionItems to be run before teardown. + + + + Overridden to run the teardown methods specified on the test. + + The TestExecutionContext to be used. + A TestResult + + + + Class that can build a tree of automatic namespace + suites from a group of fixtures. + + + + + NamespaceDictionary of all test suites we have created to represent + namespaces. Used to locate namespace parent suites for fixtures. + + + + + The root of the test suite being created by this builder. + + + + + Initializes a new instance of the class. + + The root suite. + + + + Adds the specified fixtures to the tree. + + The fixtures to be added. + + + + Adds the specified fixture to the tree. + + The fixture to be added. + + + + Gets the root entry in the tree created by the NamespaceTreeBuilder. + + The root suite. + + + + Built-in SuiteBuilder for all types of test classes. + + + + + The ISuiteBuilder interface is exposed by a class that knows how to + build a suite from one or more Types. + + + + + Examine the type and determine if it is suitable for + this builder to use in building a TestSuite. + + Note that returning false will cause the type to be ignored + in loading the tests. If it is desired to load the suite + but label it as non-runnable, ignored, etc., then this + method must return true. + + The type of the fixture to be used + True if the type can be used to build a TestSuite + + + + Build a TestSuite from type provided. + + The type of the fixture to be used + A TestSuite + + + + Checks to see if the provided Type is a fixture. + To be considered a fixture, it must be a non-abstract + class with one or more attributes implementing the + IFixtureBuilder interface or one or more methods + marked as tests. + + The fixture type to check + True if the fixture can be built, false if not + + + + Build a TestSuite from TypeInfo provided. + + The fixture type to build + A TestSuite built from that type + + + + We look for attributes implementing IFixtureBuilder at one level + of inheritance at a time. Attributes on base classes are not used + unless there are no fixture builder attributes at all on the derived + class. This is by design. + + The type being examined for attributes + A list of the attributes found. + + + + + + + + + + + + + + + + + + + + + + + + Provide actions to execute before and after tests. + + + + + When implemented by an attribute, this interface implemented to provide actions to execute before and after tests. + + + + + Executed before each test is run + + The test that is going to be run. + + + + Executed after each test is run + + The test that has just been run. + + + + Provides the target for the action attribute + + The target for the action attribute + + + + Executed before each test is run + + The test that is going to be run. + + + + Executed after each test is run + + The test that has just been run. + + + + Provides the target for the action attribute + + + + + Marks a test that must run in a particular threading apartment state, causing it + to run in a separate thread if necessary. + + + + + Construct an ApartmentAttribute + + The apartment state that this test must be run under. You must pass in a valid apartment state. + + + + The Iz class is a synonym for Is intended for use in VB, + which regards Is as a keyword. + + + + + Helper class with properties and methods that supply + a number of constraints used in Asserts. + + + + + Returns a constraint that tests two items for equality + + + + + Returns a constraint that tests that two references are the same object + + + + + Returns a constraint that tests whether the + actual value is greater than the supplied argument + + + + + Returns a constraint that tests whether the + actual value is greater than or equal to the supplied argument + + + + + Returns a constraint that tests whether the + actual value is greater than or equal to the supplied argument + + + + + Returns a constraint that tests whether the + actual value is less than the supplied argument + + + + + Returns a constraint that tests whether the + actual value is less than or equal to the supplied argument + + + + + Returns a constraint that tests whether the + actual value is less than or equal to the supplied argument + + + + + Returns a constraint that tests whether the actual + value is of the exact type supplied as an argument. + + + + + Returns a constraint that tests whether the actual + value is of the exact type supplied as an argument. + + + + + Returns a constraint that tests whether the actual value + is of the type supplied as an argument or a derived type. + + + + + Returns a constraint that tests whether the actual value + is of the type supplied as an argument or a derived type. + + + + + Returns a constraint that tests whether the actual value + is assignable from the type supplied as an argument. + + + + + Returns a constraint that tests whether the actual value + is assignable from the type supplied as an argument. + + + + + Returns a constraint that tests whether the actual value + is assignable to the type supplied as an argument. + + + + + Returns a constraint that tests whether the actual value + is assignable to the type supplied as an argument. + + + + + Returns a constraint that tests whether the actual value + is a collection containing the same elements as the + collection supplied as an argument. + + + + + Returns a constraint that tests whether the actual value + is a subset of the collection supplied as an argument. + + + + + Returns a constraint that tests whether the actual value + is a superset of the collection supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value contains the substring supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value starts with the substring supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value ends with the substring supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value matches the regular expression supplied as an argument. + + + + + Returns a constraint that tests whether the path provided + is the same as an expected path after canonicalization. + + + + + Returns a constraint that tests whether the path provided + is a subpath of the expected path after canonicalization. + + + + + Returns a constraint that tests whether the path provided + is the same path or under an expected path after canonicalization. + + + + + Returns a constraint that tests whether the actual value falls + inclusively within a specified range. + + from must be less than or equal to true + Inclusive beginning of the range. Must be less than or equal to to. + Inclusive end of the range. Must be greater than or equal to from. + + + + + Returns a ConstraintExpression that negates any + following constraint. + + + + + Returns a ConstraintExpression, which will apply + the following constraint to all members of a collection, + succeeding if all of them succeed. + + + + + Returns a constraint that tests for null + + + + + Returns a constraint that tests for True + + + + + Returns a constraint that tests for False + + + + + Returns a constraint that tests for a positive value + + + + + Returns a constraint that tests for a negative value + + + + + Returns a constraint that tests for equality with zero + + + + + Returns a constraint that tests for NaN + + + + + Returns a constraint that tests for empty + + + + + Returns a constraint that tests whether a collection + contains all unique items. + + + + + Returns a constraint that tests whether an object graph is serializable in binary format. + + + + + Returns a constraint that tests whether an object graph is serializable in xml format. + + + + + Returns a constraint that tests whether a collection is ordered + + + + + Objects implementing this interface are used to wrap + the TestMethodCommand itself. They apply after SetUp + has been run and before TearDown. + + + + + The CommandStage enumeration represents the defined stages + of execution for a series of TestCommands. The int _values + of the enum are used to apply decorators in the proper + order. Lower _values are applied first and are therefore + "closer" to the actual test execution. + + + No CommandStage is defined for actual invocation of the test or + for creation of the context. Execution may be imagined as + proceeding from the bottom of the list upwards, with cleanup + after the test running in the opposite order. + + + + + Use an application-defined default value. + + + + + Make adjustments needed before and after running + the raw test - that is, after any SetUp has run + and before TearDown. + + + + + Run SetUp and TearDown for the test. This stage is used + internally by NUnit and should not normally appear + in user-defined decorators. + + + + + Make adjustments needed before and after running + the entire test - including SetUp and TearDown. + + + + + ThrowsConstraint is used to test the exception thrown by + a delegate by applying a constraint to it. + + + + + Initializes a new instance of the class, + using a constraint to be applied to the exception. + + A constraint to apply to the caught exception. + + + + Executes the code of the delegate and captures any exception. + If a non-null base constraint was provided, it applies that + constraint to the exception. + + A delegate representing the code to be tested + True if an exception is thrown and the constraint succeeds, otherwise false + + + + Converts an ActualValueDelegate to a TestDelegate + before calling the primary overload. + + + + + + + Get the actual exception thrown - used by Assert.Throws. + + + + + Gets text describing a constraint + + + + + Write the actual value for a failing constraint test to a + MessageWriter. This override only handles the special message + used when an exception is expected but none is thrown. + + The writer on which the actual value is displayed + + + + Summary description for SamePathConstraint. + + + + + Initializes a new instance of the class. + + The expected path + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True for success, false for failure + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + Operator that requires both it's arguments to succeed + + + + + Construct an AndOperator + + + + + Apply the operator to produce an AndConstraint + + + + + Provides static methods to express the assumptions + that must be met for a test to give a meaningful + result. If an assumption is not met, the test + should produce an inconclusive result. + + + + + The Equals method throws an InvalidOperationException. This is done + to make sure there is no mistake by calling this function. + + The left object. + The right object. + Not applicable + + + + override the default ReferenceEquals to throw an InvalidOperationException. This + implementation makes sure there is no mistake in calling this function + as part of Assert. + + The left object. + The right object. + + + + Apply a constraint to an actual value, succeeding if the constraint + is satisfied and throwing an InconclusiveException on failure. + + The Type being compared. + An ActualValueDelegate returning the value to be tested + A Constraint expression to be applied + + + + Apply a constraint to an actual value, succeeding if the constraint + is satisfied and throwing an InconclusiveException on failure. + + The Type being compared. + An ActualValueDelegate returning the value to be tested + A Constraint expression to be applied + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Apply a constraint to an actual value, succeeding if the constraint + is satisfied and throwing an InconclusiveException on failure. + + The Type being compared. + An ActualValueDelegate returning the value to be tested + A Constraint expression to be applied + A function to build the message included with the Exception + + + + Asserts that a condition is true. If the condition is false the method throws + an . + + The evaluated condition + The message to display if the condition is false + Arguments to be used in formatting the message + + + + Asserts that a condition is true. If the condition is false the + method throws an . + + The evaluated condition + + + + Asserts that a condition is true. If the condition is false the method throws + an . + + The evaluated condition + A function to build the message included with the Exception + + + + Asserts that a condition is true. If the condition is false the method throws + an . + + A lambda that returns a Boolean + The message to display if the condition is false + Arguments to be used in formatting the message + + + + Asserts that a condition is true. If the condition is false the method throws + an . + + A lambda that returns a Boolean + + + + Asserts that a condition is true. If the condition is false the method throws + an . + + A lambda that returns a Boolean + A function to build the message included with the Exception + + + + Asserts that the code represented by a delegate throws an exception + that satisfies the constraint provided. + + A TestDelegate to be executed + A ThrowsConstraint used in the test + + + + Apply a constraint to an actual value, succeeding if the constraint + is satisfied and throwing an InconclusiveException on failure. + + The Type being compared. + The actual value to test + A Constraint to be applied + + + + Apply a constraint to an actual value, succeeding if the constraint + is satisfied and throwing an InconclusiveException on failure. + + The Type being compared. + The actual value to test + A Constraint expression to be applied + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Apply a constraint to an actual value, succeeding if the constraint + is satisfied and throwing an InconclusiveException on failure. + + The Type being compared. + The actual value to test + A Constraint to be applied + A function to build the message included with the Exception + + + + TODO: Documentation needed for class + + + + + Initializes a new instance of the class. + + The test being skipped. + + + + Overridden to simply set the CurrentResult to the + appropriate Skipped state. + + The execution context for the test + A TestResult + + + + The TextCapture class intercepts console output and writes it + to the current execution context, if one is present on the thread. + If no execution context is found, the output is written to a + default destination, normally the original destination of the + intercepted output. + + + + + Construct a TextCapture object + + The default destination for non-intercepted output + + + + Writes a single character + + The char to write + + + + Writes a string + + The string to write + + + + Writes a string followed by a line terminator + + The string to write + + + + Gets the Encoding in use by this TextWriter + + + + + SimpleWorkItemDispatcher handles execution of WorkItems by + directly executing them. It is provided so that a dispatcher + is always available in the context, thereby simplifying the + code needed to run child tests. + + + + + An IWorkItemDispatcher handles execution of work items. + + + + + Dispatch a single work item for execution. The first + work item dispatched is saved as the top-level + work item and used when stopping the run. + + The item to dispatch + + + + Cancel the ongoing run completely. + If no run is in process, the call has no effect. + + true if the IWorkItemDispatcher should abort all currently running WorkItems, false if it should allow all currently running WorkItems to complete + + + + Dispatch a single work item for execution. The first + work item dispatched is saved as the top-level + work item and a thread is created on which to + run it. Subsequent calls come from the top level + item or its descendants on the proper thread. + + The item to dispatch + + + + Cancel (abort or stop) the ongoing run. + If no run is in process, the call has no effect. + + true if the run should be aborted, false if it should allow its currently running test to complete + + + + Asserts on Directories + + + + + The Equals method throws an InvalidOperationException. This is done + to make sure there is no mistake by calling this function. + + + + + + + override the default ReferenceEquals to throw an InvalidOperationException. This + implementation makes sure there is no mistake in calling this function + as part of Assert. + + + + + + + Verifies that two directories are equal. Two directories are considered + equal if both are null, or if both point to the same directory. + If they are not equal an is thrown. + + A directory containing the value that is expected + A directory containing the actual value + The message to display if the directories are not equal + Arguments to be used in formatting the message + + + + Verifies that two directories are equal. Two directories are considered + equal if both are null, or if both point to the same directory. + If they are not equal an is thrown. + + A directory containing the value that is expected + A directory containing the actual value + + + + Asserts that two directories are not equal. If they are equal + an is thrown. + + A directory containing the value that is expected + A directory containing the actual value + The message to display if directories are not equal + Arguments to be used in formatting the message + + + + Asserts that two directories are not equal. If they are equal + an is thrown. + + A directory containing the value that is expected + A directory containing the actual value + + + + Asserts that the directory exists. If it does not exist + an is thrown. + + A directory containing the actual value + The message to display if directories are not equal + Arguments to be used in formatting the message + + + + Asserts that the directory exists. If it does not exist + an is thrown. + + A directory containing the actual value + + + + Asserts that the directory exists. If it does not exist + an is thrown. + + The path to a directory containing the actual value + The message to display if directories are not equal + Arguments to be used in formatting the message + + + + Asserts that the directory exists. If it does not exist + an is thrown. + + The path to a directory containing the actual value + + + + Asserts that the directory does not exist. If it does exist + an is thrown. + + A directory containing the actual value + The message to display if directories are not equal + Arguments to be used in formatting the message + + + + Asserts that the directory does not exist. If it does exist + an is thrown. + + A directory containing the actual value + + + + Asserts that the directory does not exist. If it does exist + an is thrown. + + The path to a directory containing the actual value + The message to display if directories are not equal + Arguments to be used in formatting the message + + + + Asserts that the directory does not exist. If it does exist + an is thrown. + + The path to a directory containing the actual value + + + + TestName filter selects tests based on their Name + + + + + Construct a TestNameFilter for a single name + + The name the filter will recognize. + + + + Match a test against a single value. + + + + + Gets the element name + + Element name + + + + The ParameterDataProvider class implements IParameterDataProvider + and hosts one or more individual providers. + + + + + Construct with a collection of individual providers + + + + + Determine whether any data is available for a parameter. + + An IParameterInfo representing one + argument to a parameterized test + True if any data is available, otherwise false. + + + + Return an IEnumerable providing data for use with the + supplied parameter. + + An IParameterInfo representing one + argument to a parameterized test + An IEnumerable providing the required data + + + + ExactCountConstraint applies another constraint to each + item in a collection, succeeding only if a specified + number of items succeed. + + + + + Construct an ExactCountConstraint on top of an existing constraint + + + + + + + Apply the item constraint to each item in the collection, + succeeding only if the expected number of items pass. + + + + + + + Thrown when an assertion failed. + + + + The error message that explains + the reason for the exception + + + The error message that explains + the reason for the exception + The exception that caused the + current exception + + + + Serialization Constructor + + + + + Gets the ResultState provided by this exception + + + + + XmlSerializableConstraint tests whether + an object is serializable in xml format. + + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True for success, false for failure + + + + Returns the string representation of this constraint + + + + + Gets text describing a constraint + + + + Helper routines for working with floating point numbers + + + The floating point comparison code is based on this excellent article: + http://www.cygnus-software.com/papers/comparingfloats/comparingfloats.htm + + + "ULP" means Unit in the Last Place and in the context of this library refers to + the distance between two adjacent floating point numbers. IEEE floating point + numbers can only represent a finite subset of natural numbers, with greater + accuracy for smaller numbers and lower accuracy for very large numbers. + + + If a comparison is allowed "2 ulps" of deviation, that means the _values are + allowed to deviate by up to 2 adjacent floating point _values, which might be + as low as 0.0000001 for small numbers or as high as 10.0 for large numbers. + + + + + Compares two floating point _values for equality + First floating point value to be compared + Second floating point value t be compared + + Maximum number of representable floating point _values that are allowed to + be between the left and the right floating point _values + + True if both numbers are equal or close to being equal + + + Floating point _values can only represent a finite subset of natural numbers. + For example, the _values 2.00000000 and 2.00000024 can be stored in a float, + but nothing inbetween them. + + + This comparison will count how many possible floating point _values are between + the left and the right number. If the number of possible _values between both + numbers is less than or equal to maxUlps, then the numbers are considered as + being equal. + + + Implementation partially follows the code outlined here: + http://www.anttirt.net/2007/08/19/proper-floating-point-comparisons/ + + + + + Compares two double precision floating point _values for equality + First double precision floating point value to be compared + Second double precision floating point value t be compared + + Maximum number of representable double precision floating point _values that are + allowed to be between the left and the right double precision floating point _values + + True if both numbers are equal or close to being equal + + + Double precision floating point _values can only represent a limited series of + natural numbers. For example, the _values 2.0000000000000000 and 2.0000000000000004 + can be stored in a double, but nothing inbetween them. + + + This comparison will count how many possible double precision floating point + _values are between the left and the right number. If the number of possible + _values between both numbers is less than or equal to maxUlps, then the numbers + are considered as being equal. + + + Implementation partially follows the code outlined here: + http://www.anttirt.net/2007/08/19/proper-floating-point-comparisons/ + + + + + + Reinterprets the memory contents of a floating point value as an integer value + + + Floating point value whose memory contents to reinterpret + + + The memory contents of the floating point value interpreted as an integer + + + + + Reinterprets the memory contents of a double precision floating point + value as an integer value + + + Double precision floating point value whose memory contents to reinterpret + + + The memory contents of the double precision floating point value + interpreted as an integer + + + + + Reinterprets the memory contents of an integer as a floating point value + + Integer value whose memory contents to reinterpret + + The memory contents of the integer value interpreted as a floating point value + + + + + Reinterprets the memory contents of an integer value as a double precision + floating point value + + Integer whose memory contents to reinterpret + + The memory contents of the integer interpreted as a double precision + floating point value + + + + Union of a floating point variable and an integer + + + The union's value as a floating point variable + + + The union's value as an integer + + + The union's value as an unsigned integer + + + Union of a double precision floating point variable and a long + + + The union's value as a double precision floating point variable + + + The union's value as a long + + + The union's value as an unsigned long + + + + EqualityAdapter class handles all equality comparisons + that use an , + or a . + + + + + Compares two objects, returning true if they are equal + + + + + Returns true if the two objects can be compared by this adapter. + The base adapter cannot handle IEnumerables except for strings. + + + + + Returns an that wraps an . + + + + + Returns an that wraps an . + + + + + Returns an EqualityAdapter that uses a predicate function for items comparison. + + + + + + + + + Returns an that wraps an . + + + + + Returns an that wraps an . + + + + + Returns an that wraps a . + + + + + that wraps an . + + + + + Returns true if the two objects can be compared by this adapter. + The base adapter cannot handle IEnumerables except for strings. + + + + + Compares two objects, returning true if they are equal + + + + + Returns true if the two objects can be compared by this adapter. + Generic adapter requires objects of the specified type. + + + + + that wraps an . + + + + + EmptyCollectionConstraint tests whether a collection is empty. + + + + + Check that the collection is empty + + + + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + Helper class with properties and methods that supply + a number of constraints used in Asserts. + + + + + Returns a ConstraintExpression, which will apply + the following constraint to all members of a collection, + succeeding only if a specified number of them succeed. + + + + + Returns a new PropertyConstraintExpression, which will either + test for the existence of the named property on the object + being tested or apply any following constraint to that property. + + + + + Returns a new AttributeConstraint checking for the + presence of a particular attribute on an object. + + + + + Returns a new AttributeConstraint checking for the + presence of a particular attribute on an object. + + + + + Returns a constraint that tests two items for equality + + + + + Returns a constraint that tests that two references are the same object + + + + + Returns a constraint that tests whether the + actual value is greater than the supplied argument + + + + + Returns a constraint that tests whether the + actual value is greater than or equal to the supplied argument + + + + + Returns a constraint that tests whether the + actual value is greater than or equal to the supplied argument + + + + + Returns a constraint that tests whether the + actual value is less than the supplied argument + + + + + Returns a constraint that tests whether the + actual value is less than or equal to the supplied argument + + + + + Returns a constraint that tests whether the + actual value is less than or equal to the supplied argument + + + + + Returns a constraint that tests whether the actual + value is of the exact type supplied as an argument. + + + + + Returns a constraint that tests whether the actual + value is of the exact type supplied as an argument. + + + + + Returns a constraint that tests whether the actual value + is of the type supplied as an argument or a derived type. + + + + + Returns a constraint that tests whether the actual value + is of the type supplied as an argument or a derived type. + + + + + Returns a constraint that tests whether the actual value + is assignable from the type supplied as an argument. + + + + + Returns a constraint that tests whether the actual value + is assignable from the type supplied as an argument. + + + + + Returns a constraint that tests whether the actual value + is assignable from the type supplied as an argument. + + + + + Returns a constraint that tests whether the actual value + is assignable from the type supplied as an argument. + + + + + Returns a constraint that tests whether the actual value + is a collection containing the same elements as the + collection supplied as an argument. + + + + + Returns a constraint that tests whether the actual value + is a subset of the collection supplied as an argument. + + + + + Returns a constraint that tests whether the actual value + is a superset of the collection supplied as an argument. + + + + + Returns a new CollectionContainsConstraint checking for the + presence of a particular object in the collection. + + + + + Returns a new CollectionContainsConstraint checking for the + presence of a particular object in the collection. + + + + + Returns a new ContainsConstraint. This constraint + will, in turn, make use of the appropriate second-level + constraint, depending on the type of the actual argument. + This overload is only used if the item sought is a string, + since any other type implies that we are looking for a + collection member. + + + + + Returns a constraint that succeeds if the actual + value contains the substring supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value contains the substring supplied as an argument. + + + + + Returns a constraint that fails if the actual + value contains the substring supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value starts with the substring supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value starts with the substring supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value starts with the substring supplied as an argument. + + + + + Returns a constraint that fails if the actual + value starts with the substring supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value ends with the substring supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value ends with the substring supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value ends with the substring supplied as an argument. + + + + + Returns a constraint that fails if the actual + value ends with the substring supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value matches the regular expression supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value matches the regular expression supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value matches the regular expression supplied as an argument. + + + + + Returns a constraint that fails if the actual + value matches the pattern supplied as an argument. + + + + + Returns a constraint that tests whether the path provided + is the same as an expected path after canonicalization. + + + + + Returns a constraint that tests whether the path provided + is a subpath of the expected path after canonicalization. + + + + + Returns a constraint that tests whether the path provided + is the same path or under an expected path after canonicalization. + + + + + Returns a constraint that tests whether the actual value falls + within a specified range. + + + + + Returns a ConstraintExpression that negates any + following constraint. + + + + + Returns a ConstraintExpression that negates any + following constraint. + + + + + Returns a ConstraintExpression, which will apply + the following constraint to all members of a collection, + succeeding if all of them succeed. + + + + + Returns a ConstraintExpression, which will apply + the following constraint to all members of a collection, + succeeding if at least one of them succeeds. + + + + + Returns a ConstraintExpression, which will apply + the following constraint to all members of a collection, + succeeding if all of them fail. + + + + + Returns a new ConstraintExpression, which will apply the following + constraint to the Length property of the object being tested. + + + + + Returns a new ConstraintExpression, which will apply the following + constraint to the Count property of the object being tested. + + + + + Returns a new ConstraintExpression, which will apply the following + constraint to the Message property of the object being tested. + + + + + Returns a new ConstraintExpression, which will apply the following + constraint to the InnerException property of the object being tested. + + + + + Returns a constraint that tests for null + + + + + Returns a constraint that tests for True + + + + + Returns a constraint that tests for False + + + + + Returns a constraint that tests for a positive value + + + + + Returns a constraint that tests for a negative value + + + + + Returns a constraint that tests for equality with zero + + + + + Returns a constraint that tests for NaN + + + + + Returns a constraint that tests for empty + + + + + Returns a constraint that tests whether a collection + contains all unique items. + + + + + Returns a constraint that tests whether an object graph is serializable in binary format. + + + + + Returns a constraint that tests whether an object graph is serializable in xml format. + + + + + Returns a constraint that tests whether a collection is ordered + + + + + BinarySerializableConstraint tests whether + an object is serializable in binary format. + + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True for success, false for failure + + + + Returns the string representation + + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + Used on a method, marks the test with a timeout value in milliseconds. + The test will be run in a separate thread and is cancelled if the timeout + is exceeded. Used on a class or assembly, sets the default timeout + for all contained test methods. + + + + + Construct a TimeoutAttribute given a time in milliseconds + + The timeout value in milliseconds + + + + Adding this attribute to a method within a + class makes the method callable from the NUnit test runner. There is a property + called Description which is optional which you can provide a more detailed test + description. This class cannot be inherited. + + + + [TestFixture] + public class Fixture + { + [Test] + public void MethodToTest() + {} + + [Test(Description = "more detailed description")] + public void TestDescriptionMethod() + {} + } + + + + + + Modifies a test by adding a description, if not already set. + + The test to modify + + + + Construct a TestMethod from a given method. + + The method for which a test is to be constructed. + The suite to which the test will be added. + A TestMethod + + + + Descriptive text for this test + + + + + The author of this test + + + + + The type that this test is testing + + + + + Gets or sets the expected result. + + The result. + + + + Returns true if an expected result has been set + + + + + Summary description for SetUICultureAttribute. + + + + + Construct given the name of a culture + + + + + + Marks a test that must run in the STA, causing it + to run in a separate thread if necessary. + + + + + Construct a RequiresSTAAttribute + + + + + Used to mark a field, property or method providing a set of datapoints to + be used in executing any theories within the same fixture that require an + argument of the Type provided. The data source may provide an array of + the required Type or an . + Synonymous with DatapointSourceAttribute. + + + + + TestActionItem represents a single execution of an + ITestAction. It is used to track whether the BeforeTest + method has been called and suppress calling the + AfterTest method if it has not. + + + + + Construct a TestActionItem + + The ITestAction to be included + + + + Run the BeforeTest method of the action and remember that it has been run. + + The test to which the action applies + + + + Run the AfterTest action, but only if the BeforeTest + action was actually run. + + The test to which the action applies + + + + InternalTraceLevel is an enumeration controlling the + level of detailed presented in the internal log. + + + + + Use the default settings as specified by the user. + + + + + Do not display any trace messages + + + + + Display Error messages only + + + + + Display Warning level and higher messages + + + + + Display informational and higher messages + + + + + Display debug messages and higher - i.e. all messages + + + + + Display debug messages and higher - i.e. all messages + + + + + The ParallelScope enumeration permits specifying the degree to + which a test and its descendants may be run in parallel. + + + + + No Parallelism is permitted + + + + + The test itself may be run in parallel with others at the same level + + + + + Descendants of the test may be run in parallel with one another + + + + + Descendants of the test down to the level of TestFixtures may be run in parallel + + + + + ListMapper is used to transform a collection used as an actual argument + producing another collection to be used in the assertion. + + + + + Construct a ListMapper based on a collection + + The collection to be transformed + + + + Produces a collection containing all the _values of a property + + The collection of property _values + + + + + The List class is a helper class with properties and methods + that supply a number of constraints used with lists and collections. + + + + + List.Map returns a ListMapper, which can be used to map + the original collection to another collection. + + + + + + + TestAssembly is a TestSuite that represents the execution + of tests in a managed assembly. + + + + + Initializes a new instance of the class + specifying the Assembly and the path from which it was loaded. + + The assembly this test represents. + The path used to load the assembly. + + + + Initializes a new instance of the class + for a path which could not be loaded. + + The path used to load the assembly. + + + + Gets the Assembly represented by this instance. + + + + + Gets the name used for the top-level element in the + XML representation of this test + + + + + SetUpFixture extends TestSuite and supports + Setup and TearDown methods. + + + + + Initializes a new instance of the class. + + The type. + + + + TrueConstraint tests that the actual value is true + + + + + Initializes a new instance of the class. + + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True for success, false for failure + + + + The Tolerance class generalizes the notion of a tolerance + within which an equality test succeeds. Normally, it is + used with numeric types, but it can be used with any + type that supports taking a difference between two + objects and comparing that difference to a value. + + + + + Constructs a linear tolerance of a specified amount + + + + + Constructs a tolerance given an amount and + + + + + Tests that the current Tolerance is linear with a + numeric value, throwing an exception if it is not. + + + + + Returns a default Tolerance object, equivalent to + specifying an exact match unless + is set, in which case, the + will be used. + + + + + Returns an empty Tolerance object, equivalent to + specifying an exact match even if + is set. + + + + + Gets the for the current Tolerance + + + + + Gets the value of the current Tolerance instance. + + + + + Returns a new tolerance, using the current amount as a percentage. + + + + + Returns a new tolerance, using the current amount in Ulps + + + + + Returns a new tolerance with a as the amount, using + the current amount as a number of days. + + + + + Returns a new tolerance with a as the amount, using + the current amount as a number of hours. + + + + + Returns a new tolerance with a as the amount, using + the current amount as a number of minutes. + + + + + Returns a new tolerance with a as the amount, using + the current amount as a number of seconds. + + + + + Returns a new tolerance with a as the amount, using + the current amount as a number of milliseconds. + + + + + Returns a new tolerance with a as the amount, using + the current amount as a number of clock ticks. + + + + + Returns true if the current tolerance has not been set or is using the . + + + + + StartsWithConstraint can test whether a string starts + with an expected substring. + + + + + Initializes a new instance of the class. + + The expected string + + + + Test whether the constraint is matched by the actual value. + This is a template method, which calls the IsMatch method + of the derived class. + + + + + + + Operator that tests that an exception is thrown and + optionally applies further tests to the exception. + + + + + Construct a ThrowsOperator + + + + + Reduce produces a constraint from the operator and + any arguments. It takes the arguments from the constraint + stack and pushes the resulting constraint on it. + + + + + ConstraintExpression represents a compound constraint in the + process of being constructed from a series of syntactic elements. + + Individual elements are appended to the expression as they are + reorganized. When a constraint is appended, it is returned as the + value of the operation so that modifiers may be applied. However, + any partially built expression is attached to the constraint for + later resolution. When an operator is appended, the partial + expression is returned. If it's a self-resolving operator, then + a ResolvableConstraintExpression is returned. + + + + + The ConstraintBuilder holding the elements recognized so far + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the + class passing in a ConstraintBuilder, which may be pre-populated. + + The builder. + + + + Returns a string representation of the expression as it + currently stands. This should only be used for testing, + since it has the side-effect of resolving the expression. + + + + + + Appends an operator to the expression and returns the + resulting expression itself. + + + + + Appends a self-resolving operator to the expression and + returns a new ResolvableConstraintExpression. + + + + + Appends a constraint to the expression and returns that + constraint, which is associated with the current state + of the expression being built. Note that the constraint + is not reduced at this time. For example, if there + is a NotOperator on the stack we don't reduce and + return a NotConstraint. The original constraint must + be returned because it may support modifiers that + are yet to be applied. + + + + + Returns a ConstraintExpression, which will apply + the following constraint to all members of a collection, + succeeding only if a specified number of them succeed. + + + + + Returns a new PropertyConstraintExpression, which will either + test for the existence of the named property on the object + being tested or apply any following constraint to that property. + + + + + Returns a new AttributeConstraint checking for the + presence of a particular attribute on an object. + + + + + Returns a new AttributeConstraint checking for the + presence of a particular attribute on an object. + + + + + Returns the constraint provided as an argument - used to allow custom + custom constraints to easily participate in the syntax. + + + + + Returns the constraint provided as an argument - used to allow custom + custom constraints to easily participate in the syntax. + + + + + Returns a constraint that tests two items for equality + + + + + Returns a constraint that tests that two references are the same object + + + + + Returns a constraint that tests whether the + actual value is greater than the supplied argument + + + + + Returns a constraint that tests whether the + actual value is greater than or equal to the supplied argument + + + + + Returns a constraint that tests whether the + actual value is greater than or equal to the supplied argument + + + + + Returns a constraint that tests whether the + actual value is less than the supplied argument + + + + + Returns a constraint that tests whether the + actual value is less than or equal to the supplied argument + + + + + Returns a constraint that tests whether the + actual value is less than or equal to the supplied argument + + + + + Returns a constraint that tests whether the actual + value is of the exact type supplied as an argument. + + + + + Returns a constraint that tests whether the actual + value is of the exact type supplied as an argument. + + + + + Returns a constraint that tests whether the actual value + is of the type supplied as an argument or a derived type. + + + + + Returns a constraint that tests whether the actual value + is of the type supplied as an argument or a derived type. + + + + + Returns a constraint that tests whether the actual value + is assignable from the type supplied as an argument. + + + + + Returns a constraint that tests whether the actual value + is assignable from the type supplied as an argument. + + + + + Returns a constraint that tests whether the actual value + is assignable from the type supplied as an argument. + + + + + Returns a constraint that tests whether the actual value + is assignable from the type supplied as an argument. + + + + + Returns a constraint that tests whether the actual value + is a collection containing the same elements as the + collection supplied as an argument. + + + + + Returns a constraint that tests whether the actual value + is a subset of the collection supplied as an argument. + + + + + Returns a constraint that tests whether the actual value + is a superset of the collection supplied as an argument. + + + + + Returns a new CollectionContainsConstraint checking for the + presence of a particular object in the collection. + + + + + Returns a new CollectionContainsConstraint checking for the + presence of a particular object in the collection. + + + + + Returns a new ContainsConstraint. This constraint + will, in turn, make use of the appropriate second-level + constraint, depending on the type of the actual argument. + This overload is only used if the item sought is a string, + since any other type implies that we are looking for a + collection member. + + + + + Returns a new ContainsConstraint. This constraint + will, in turn, make use of the appropriate second-level + constraint, depending on the type of the actual argument. + This overload is only used if the item sought is a string, + since any other type implies that we are looking for a + collection member. + + + + + Returns a constraint that succeeds if the actual + value contains the substring supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value contains the substring supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value starts with the substring supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value starts with the substring supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value starts with the substring supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value ends with the substring supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value ends with the substring supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value ends with the substring supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value matches the regular expression supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value matches the regular expression supplied as an argument. + + + + + Returns a constraint that succeeds if the actual + value matches the regular expression supplied as an argument. + + + + + Returns a constraint that tests whether the path provided + is the same as an expected path after canonicalization. + + + + + Returns a constraint that tests whether the path provided + is the a subpath of the expected path after canonicalization. + + + + + Returns a constraint that tests whether the path provided + is the same path or under an expected path after canonicalization. + + + + + Returns a constraint that tests whether the actual value falls + within a specified range. + + + + + Returns a ConstraintExpression that negates any + following constraint. + + + + + Returns a ConstraintExpression that negates any + following constraint. + + + + + Returns a ConstraintExpression, which will apply + the following constraint to all members of a collection, + succeeding if all of them succeed. + + + + + Returns a ConstraintExpression, which will apply + the following constraint to all members of a collection, + succeeding if at least one of them succeeds. + + + + + Returns a ConstraintExpression, which will apply + the following constraint to all members of a collection, + succeeding if all of them fail. + + + + + Returns a new ConstraintExpression, which will apply the following + constraint to the Length property of the object being tested. + + + + + Returns a new ConstraintExpression, which will apply the following + constraint to the Count property of the object being tested. + + + + + Returns a new ConstraintExpression, which will apply the following + constraint to the Message property of the object being tested. + + + + + Returns a new ConstraintExpression, which will apply the following + constraint to the InnerException property of the object being tested. + + + + + With is currently a NOP - reserved for future use. + + + + + Returns a constraint that tests for null + + + + + Returns a constraint that tests for True + + + + + Returns a constraint that tests for False + + + + + Returns a constraint that tests for a positive value + + + + + Returns a constraint that tests for a negative value + + + + + Returns a constraint that tests if item is equal to zero + + + + + Returns a constraint that tests for NaN + + + + + Returns a constraint that tests for empty + + + + + Returns a constraint that tests whether a collection + contains all unique items. + + + + + Returns a constraint that tests whether an object graph is serializable in binary format. + + + + + Returns a constraint that tests whether an object graph is serializable in xml format. + + + + + Returns a constraint that tests whether a collection is ordered + + + + + Returns a constraint that succeeds if the value + is a file or directory and it exists. + + + + + Attribute used to apply a category to a test + + + + + The name of the category + + + + + Construct attribute for a given category based on + a name. The name may not contain the characters ',', + '+', '-' or '!'. However, this is not checked in the + constructor since it would cause an error to arise at + as the test was loaded without giving a clear indication + of where the problem is located. The error is handled + in NUnitFramework.cs by marking the test as not + runnable. + + The name of the category + + + + Protected constructor uses the Type name as the name + of the category. + + + + + Modifies a test by adding a category to it. + + The test to modify + + + + The name of the category + + + + + IdFilter selects tests based on their id + + + + + Construct an IdFilter for a single value + + The id the filter will recognize. + + + + Match a test against a single value. + + + + + Gets the element name + + Element name + + + + Represents a constraint that succeeds if none of the + members of a collection match a base constraint. + + + + + Returns a constraint that will apply the argument + to the members of a collection, succeeding if + none of them succeed. + + + + + Indicates which class the test or test fixture is testing + + + + + Initializes a new instance of the class. + + The type that is being tested. + + + + Initializes a new instance of the class. + + The type that is being tested. + + + + Defines the order that the test will run in + + + + + Defines the order that the test will run in + + + + + Defines the order that the test will run in + + + + + + Modifies a test as defined for the specific attribute. + + The test to modify + + + + SingleThreadedAttribute applies to a test fixture and indicates + that all the child tests must be run on the same thread as the + OneTimeSetUp and OneTimeTearDown. It sets a flag in the + TestExecutionContext and forces all tests to be run sequentially + on the current thread. Any ParallelScope setting is ignored. + + + + + Apply changes to the TestExecutionContext + + The TestExecutionContext + + + + FrameworkPackageSettings is a static class containing constant values that + are used as keys in setting up a TestPackage. These values are used in + the framework, and set in the runner. Setting values may be a string, int or bool. + + + + + Flag (bool) indicating whether tests are being debugged. + + + + + Flag (bool) indicating whether to pause execution of tests to allow + the user to attache a debugger. + + + + + The InternalTraceLevel for this run. Values are: "Default", + "Off", "Error", "Warning", "Info", "Debug", "Verbose". + Default is "Off". "Debug" and "Verbose" are synonyms. + + + + + Full path of the directory to be used for work and result files. + This path is provided to tests by the frameowrk TestContext. + + + + + Integer value in milliseconds for the default timeout value + for test cases. If not specified, there is no timeout except + as specified by attributes on the tests themselves. + + + + + A TextWriter to which the internal trace will be sent. + + + + + A list of tests to be loaded. + + + + + The number of test threads to run for the assembly. If set to + 1, a single queue is used. If set to 0, tests are executed + directly, without queuing. + + + + + The random seed to be used for this assembly. If specified + as the value reported from a prior run, the framework should + generate identical random values for tests as were used for + that run, provided that no change has been made to the test + assembly. Default is a random value itself. + + + + + If true, execution stops after the first error or failure. + + + + + If true, use of the event queue is suppressed and test events are synchronous. + + + + + The default naming pattern used in generating test names + + + + + Parameters to be passed on to the test + + + + + Represents a constraint that succeeds if the specified + count of members of a collection match a base constraint. + + + + + Construct an ExactCountOperator for a specified count + + The expected count + + + + Returns a constraint that will apply the argument + to the members of a collection, succeeding if + none of them succeed. + + + + + ParameterizedFixtureSuite serves as a container for the set of test + fixtures created from a given Type using various parameters. + + + + + Initializes a new instance of the class. + + The ITypeInfo for the type that represents the suite. + + + + Gets a string representing the type of test + + + + + + ReusableConstraint wraps a constraint expression after + resolving it so that it can be reused consistently. + + + + + Construct a ReusableConstraint from a constraint expression + + The expression to be resolved and reused + + + + Converts a constraint to a ReusableConstraint + + The constraint to be converted + A ReusableConstraint + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Return the top-level constraint for this expression + + + + + + PropertyExistsConstraint tests that a named property + exists on the object provided through Match. + + Originally, PropertyConstraint provided this feature + in addition to making optional tests on the value + of the property. The two constraints are now separate. + + + + + Initializes a new instance of the class. + + The name of the property. + + + + Test whether the property exists for a given object + + The object to be tested + True for success, false for failure + + + + Returns the string representation of the constraint. + + + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + PropertyConstraint extracts a named property and uses + its value as the actual value for a chained constraint. + + + + + Initializes a new instance of the class. + + The name. + The constraint to apply to the property. + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True for success, false for failure + + + + Returns the string representation of the constraint. + + + + + + Represents a constraint that simply wraps the + constraint provided as an argument, without any + further functionality, but which modifies the + order of evaluation because of its precedence. + + + + + Constructor for the WithOperator + + + + + Returns a constraint that wraps its argument + + + + + NUnitComparer encapsulates NUnit's default behavior + in comparing two objects. + + + + + Compares two objects + + + + + + + + Returns the default NUnitComparer. + + + + + Tests whether a value is less than or equal to the value supplied to its constructor + + + + + Initializes a new instance of the class. + + The expected value. + + + + Attribute used to identify a method that is + called before any tests in a fixture are run. + + + + + Used to mark a field for use as a datapoint when executing a theory + within the same fixture that requires an argument of the field's Type. + + + + + AssertionHelper is an optional base class for user tests, + allowing the use of shorter ids for constraints and + asserts and avoiding conflict with the definition of + , from which it inherits much of its + behavior, in certain mock object frameworks. + + + + + Asserts that a condition is true. If the condition is false the method throws + an . Works Identically to + . + + The evaluated condition + The message to display if the condition is false + Arguments to be used in formatting the message + + + + Asserts that a condition is true. If the condition is false the method throws + an . Works Identically to . + + The evaluated condition + + + + Apply a constraint to an actual value, succeeding if the constraint + is satisfied and throwing an assertion exception on failure. + + A Constraint expression to be applied + An ActualValueDelegate returning the value to be tested + + + + Apply a constraint to an actual value, succeeding if the constraint + is satisfied and throwing an assertion exception on failure. + + An ActualValueDelegate returning the value to be tested + A Constraint expression to be applied + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Asserts that the code represented by a delegate throws an exception + that satisfies the constraint provided. + + A TestDelegate to be executed + A ThrowsConstraint used in the test + + + + Apply a constraint to an actual value, succeeding if the constraint + is satisfied and throwing an assertion exception on failure. + + A Constraint to be applied + The actual value to test + + + + Apply a constraint to an actual value, succeeding if the constraint + is satisfied and throwing an assertion exception on failure. + + A Constraint expression to be applied + The actual value to test + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Returns a ListMapper based on a collection. + + The original collection + + + + + TextMessageWriter writes constraint descriptions and messages + in displayable form as a text stream. It tailors the display + of individual message components to form the standard message + format of NUnit assertion failure messages. + + + + + Prefix used for the expected value line of a message + + + + + Prefix used for the actual value line of a message + + + + + Length of a message prefix + + + + + Construct a TextMessageWriter + + + + + Construct a TextMessageWriter, specifying a user message + and optional formatting arguments. + + + + + + + Method to write single line message with optional args, usually + written to precede the general failure message, at a given + indentation level. + + The indentation level of the message + The message to be written + Any arguments used in formatting the message + + + + Display Expected and Actual lines for a constraint. This + is called by MessageWriter's default implementation of + WriteMessageTo and provides the generic two-line display. + + The result of the constraint that failed + + + + Display Expected and Actual lines for given _values. This + method may be called by constraints that need more control over + the display of actual and expected _values than is provided + by the default implementation. + + The expected value + The actual value causing the failure + + + + Display Expected and Actual lines for given _values, including + a tolerance value on the expected line. + + The expected value + The actual value causing the failure + The tolerance within which the test was made + + + + Display the expected and actual string _values on separate lines. + If the mismatch parameter is >=0, an additional line is displayed + line containing a caret that points to the mismatch point. + + The expected string value + The actual string value + The point at which the strings don't match or -1 + If true, case is ignored in string comparisons + If true, clip the strings to fit the max line length + + + + Writes the text for an actual value. + + The actual value. + + + + Writes the text for a generalized value. + + The value. + + + + Writes the text for a collection value, + starting at a particular point, to a max length + + The collection containing elements to write. + The starting point of the elements to write + The maximum number of elements to write + + + + Write the generic 'Expected' line for a constraint + + The constraint that failed + + + + Write the generic 'Expected' line for a given value + + The expected value + + + + Write the generic 'Expected' line for a given value + and tolerance. + + The expected value + The tolerance within which the test was made + + + + Write the generic 'Actual' line for a constraint + + The ConstraintResult for which the actual value is to be written + + + + Write the generic 'Actual' line for a given value + + The actual value causing a failure + + + + Gets or sets the maximum line length for this writer + + + + + EventListenerTextWriter sends text output to the currently active + ITestEventListener in the form of a TestOutput object. If no event + listener is active in the contet, or if there is no context, + the output is forwarded to the supplied default writer. + + + + + Construct an EventListenerTextWriter + + The name of the stream to use for events + The default writer to use if no listener is available + + + + Write a single char + + + + + Write a string + + + + + Write a string followed by a newline + + + + + Get the Encoding for this TextWriter + + + + + CollectionSupersetConstraint is used to determine whether + one collection is a superset of another + + + + + Construct a CollectionSupersetConstraint + + The collection that the actual value is expected to be a superset of + + + + Test whether the actual collection is a superset of + the expected collection provided. + + + + + + + Flag the constraint to use the supplied predicate function + + The comparison function to use. + Self. + + + + The display name of this Constraint for use by ToString(). + The default value is the name of the constraint with + trailing "Constraint" removed. Derived classes may set + this to another name in their constructors. + + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + ParameterizedMethodSuite holds a collection of individual + TestMethods with their arguments applied. + + + + + Construct from a MethodInfo + + + + + + Gets a string representing the type of test + + + + + + OSPlatform represents a particular operating system platform + + + + + Platform ID for Unix as defined by Microsoft .NET 2.0 and greater + + + + + Platform ID for Unix as defined by Mono + + + + + Platform ID for XBox as defined by .NET and Mono, but not CF + + + + + Platform ID for MacOSX as defined by .NET and Mono, but not CF + + + + + Gets the actual OS Version, not the incorrect value that might be + returned for Win 8.1 and Win 10 + + + If an application is not manifested as Windows 8.1 or Windows 10, + the version returned from Environment.OSVersion will not be 6.3 and 10.0 + respectively, but will be 6.2 and 6.3. The correct value can be found in + the registry. + + The original version + The correct OS version + + + + Construct from a platform ID and version + + + + + Construct from a platform ID, version and product type + + + + + Get the OSPlatform under which we are currently running + + + + + Get the platform ID of this instance + + + + + Get the Version of this instance + + + + + Get the Product Type of this instance + + + + + Return true if this is a windows platform + + + + + Return true if this is a Unix or Linux platform + + + + + Return true if the platform is Win32S + + + + + Return true if the platform is Win32Windows + + + + + Return true if the platform is Win32NT + + + + + Return true if the platform is Windows CE + + + + + Return true if the platform is Xbox + + + + + Return true if the platform is MacOSX + + + + + Return true if the platform is Windows 95 + + + + + Return true if the platform is Windows 98 + + + + + Return true if the platform is Windows ME + + + + + Return true if the platform is NT 3 + + + + + Return true if the platform is NT 4 + + + + + Return true if the platform is NT 5 + + + + + Return true if the platform is Windows 2000 + + + + + Return true if the platform is Windows XP + + + + + Return true if the platform is Windows 2003 Server + + + + + Return true if the platform is NT 6 + + + + + Return true if the platform is NT 6.0 + + + + + Return true if the platform is NT 6.1 + + + + + Return true if the platform is NT 6.2 + + + + + Return true if the platform is NT 6.3 + + + + + Return true if the platform is Vista + + + + + Return true if the platform is Windows 2008 Server (original or R2) + + + + + Return true if the platform is Windows 2008 Server (original) + + + + + Return true if the platform is Windows 2008 Server R2 + + + + + Return true if the platform is Windows 2012 Server (original or R2) + + + + + Return true if the platform is Windows 2012 Server (original) + + + + + Return true if the platform is Windows 2012 Server R2 + + + + + Return true if the platform is Windows 7 + + + + + Return true if the platform is Windows 8 + + + + + Return true if the platform is Windows 8.1 + + + + + Return true if the platform is Windows 10 + + + + + Return true if the platform is Windows Server. This is named Windows + Server 10 to distinguish it from previous versions of Windows Server. + + + + + Product Type Enumeration used for Windows + + + + + Product type is unknown or unspecified + + + + + Product type is Workstation + + + + + Product type is Domain Controller + + + + + Product type is Server + + + + + Combines multiple filters so that a test must pass one + of them in order to pass this filter. + + + + + Constructs an empty OrFilter + + + + + Constructs an AndFilter from an array of filters + + + + + + Checks whether the OrFilter is matched by a test + + The test to be matched + True if any of the component filters pass, otherwise false + + + + Checks whether the OrFilter is matched by a test + + The test to be matched + True if any of the component filters match, otherwise false + + + + Checks whether the OrFilter is explicit matched by a test + + The test to be matched + True if any of the component filters explicit match, otherwise false + + + + Gets the element name + + Element name + + + + InstanceOfTypeConstraint is used to test that an object + is of the same type provided or derived from it. + + + + + Construct an InstanceOfTypeConstraint for the type provided + + The expected Type + + + + Apply the constraint to an actual value, returning true if it succeeds + + The actual argument + True if the constraint succeeds, otherwise false. + + + + The display name of this Constraint for use by ToString(). + The default value is the name of the constraint with + trailing "Constraint" removed. Derived classes may set + this to another name in their constructors. + + + + + Tests whether a value is greater than the value supplied to its constructor + + + + + Initializes a new instance of the class. + + The expected value. + + + + DictionaryContainsKeyConstraint is used to test whether a dictionary + contains an expected object as a key. + + + + + Construct a DictionaryContainsKeyConstraint + + + + + + Test whether the expected key is contained in the dictionary + + + + + The display name of this Constraint for use by ToString(). + The default value is the name of the constraint with + trailing "Constraint" removed. Derived classes may set + this to another name in their constructors. + + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + ContainsConstraint tests a whether a string contains a substring + or a collection contains an object. It postpones the decision of + which test to use until the type of the actual argument is known. + This allows testing whether a string is contained in a collection + or as a substring of another string using the same syntax. + + + + + Initializes a new instance of the class. + + The _expected. + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True for success, false for failure + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + Flag the constraint to ignore case and return self. + + + + + CollectionTally counts (tallies) the number of + occurrences of each object in one or more enumerations. + + + + + Construct a CollectionTally object from a comparer and a collection + + + + + Try to remove an object from the tally + + The object to remove + True if successful, false if the object was not found + + + + Try to remove a set of objects from the tally + + The objects to remove + True if successful, false if any object was not found + + + + The number of objects remaining in the tally + + + + + AllItemsConstraint applies another constraint to each + item in a collection, succeeding if they all succeed. + + + + + Construct an AllItemsConstraint on top of an existing constraint + + + + + + Apply the item constraint to each item in the collection, + failing if any item fails. + + + + + + + The display name of this Constraint for use by ToString(). + The default value is the name of the constraint with + trailing "Constraint" removed. Derived classes may set + this to another name in their constructors. + + + + + A set of Assert methods operating on one or more collections + + + + + The Equals method throws an InvalidOperationException. This is done + to make sure there is no mistake by calling this function. + + + + + + + override the default ReferenceEquals to throw an InvalidOperationException. This + implementation makes sure there is no mistake in calling this function + as part of Assert. + + + + + + + Asserts that all items contained in collection are of the type specified by expectedType. + + IEnumerable containing objects to be considered + System.Type that all objects in collection must be instances of + + + + Asserts that all items contained in collection are of the type specified by expectedType. + + IEnumerable containing objects to be considered + System.Type that all objects in collection must be instances of + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Asserts that all items contained in collection are not equal to null. + + IEnumerable containing objects to be considered + + + + Asserts that all items contained in collection are not equal to null. + + IEnumerable of objects to be considered + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Ensures that every object contained in collection exists within the collection + once and only once. + + IEnumerable of objects to be considered + + + + Ensures that every object contained in collection exists within the collection + once and only once. + + IEnumerable of objects to be considered + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Asserts that expected and actual are exactly equal. The collections must have the same count, + and contain the exact same objects in the same order. + + The first IEnumerable of objects to be considered + The second IEnumerable of objects to be considered + + + + Asserts that expected and actual are exactly equal. The collections must have the same count, + and contain the exact same objects in the same order. + If comparer is not null then it will be used to compare the objects. + + The first IEnumerable of objects to be considered + The second IEnumerable of objects to be considered + The IComparer to use in comparing objects from each IEnumerable + + + + Asserts that expected and actual are exactly equal. The collections must have the same count, + and contain the exact same objects in the same order. + + The first IEnumerable of objects to be considered + The second IEnumerable of objects to be considered + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Asserts that expected and actual are exactly equal. The collections must have the same count, + and contain the exact same objects in the same order. + If comparer is not null then it will be used to compare the objects. + + The first IEnumerable of objects to be considered + The second IEnumerable of objects to be considered + The IComparer to use in comparing objects from each IEnumerable + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Asserts that expected and actual are equivalent, containing the same objects but the match may be in any order. + + The first IEnumerable of objects to be considered + The second IEnumerable of objects to be considered + + + + Asserts that expected and actual are equivalent, containing the same objects but the match may be in any order. + + The first IEnumerable of objects to be considered + The second IEnumerable of objects to be considered + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Asserts that expected and actual are not exactly equal. + + The first IEnumerable of objects to be considered + The second IEnumerable of objects to be considered + + + + Asserts that expected and actual are not exactly equal. + If comparer is not null then it will be used to compare the objects. + + The first IEnumerable of objects to be considered + The second IEnumerable of objects to be considered + The IComparer to use in comparing objects from each IEnumerable + + + + Asserts that expected and actual are not exactly equal. + + The first IEnumerable of objects to be considered + The second IEnumerable of objects to be considered + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Asserts that expected and actual are not exactly equal. + If comparer is not null then it will be used to compare the objects. + + The first IEnumerable of objects to be considered + The second IEnumerable of objects to be considered + The IComparer to use in comparing objects from each IEnumerable + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Asserts that expected and actual are not equivalent. + + The first IEnumerable of objects to be considered + The second IEnumerable of objects to be considered + + + + Asserts that expected and actual are not equivalent. + + The first IEnumerable of objects to be considered + The second IEnumerable of objects to be considered + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Asserts that collection contains actual as an item. + + IEnumerable of objects to be considered + Object to be found within collection + + + + Asserts that collection contains actual as an item. + + IEnumerable of objects to be considered + Object to be found within collection + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Asserts that collection does not contain actual as an item. + + IEnumerable of objects to be considered + Object that cannot exist within collection + + + + Asserts that collection does not contain actual as an item. + + IEnumerable of objects to be considered + Object that cannot exist within collection + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Asserts that the superset does not contain the subset + + The IEnumerable subset to be considered + The IEnumerable superset to be considered + + + + Asserts that the superset does not contain the subset + + The IEnumerable subset to be considered + The IEnumerable superset to be considered + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Asserts that the superset contains the subset. + + The IEnumerable subset to be considered + The IEnumerable superset to be considered + + + + Asserts that the superset contains the subset. + + The IEnumerable subset to be considered + The IEnumerable superset to be considered + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Asserts that the subset does not contain the superset + + The IEnumerable superset to be considered + The IEnumerable subset to be considered + + + + Asserts that the subset does not contain the superset + + The IEnumerable superset to be considered + The IEnumerable subset to be considered + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Asserts that the subset contains the superset. + + The IEnumerable superset to be considered + The IEnumerable subset to be considered + + + + Asserts that the subset contains the superset. + + The IEnumerable superset to be considered + The IEnumerable subset to be considered + The message that will be displayed on failure + Arguments to be used in formatting the message + + + + Assert that an array, list or other collection is empty + + An array, list or other collection implementing IEnumerable + The message to be displayed on failure + Arguments to be used in formatting the message + + + + Assert that an array,list or other collection is empty + + An array, list or other collection implementing IEnumerable + + + + Assert that an array, list or other collection is empty + + An array, list or other collection implementing IEnumerable + The message to be displayed on failure + Arguments to be used in formatting the message + + + + Assert that an array,list or other collection is empty + + An array, list or other collection implementing IEnumerable + + + + Assert that an array, list or other collection is ordered + + An array, list or other collection implementing IEnumerable + The message to be displayed on failure + Arguments to be used in formatting the message + + + + Assert that an array, list or other collection is ordered + + An array, list or other collection implementing IEnumerable + + + + Assert that an array, list or other collection is ordered + + An array, list or other collection implementing IEnumerable + A custom comparer to perform the comparisons + The message to be displayed on failure + Arguments to be used in formatting the message + + + + Assert that an array, list or other collection is ordered + + An array, list or other collection implementing IEnumerable + A custom comparer to perform the comparisons + + + + TestCaseSourceAttribute indicates the source to be used to + provide test cases for a test method. + + + + + Construct with the name of the method, property or field that will provide data + + The name of a static method, property or field that will provide data. + + + + Construct with a Type and name + + The Type that will provide data + The name of a static method, property or field that will provide data. + A set of parameters passed to the method, works only if the Source Name is a method. + If the source name is a field or property has no effect. + + + + Construct with a Type and name + + The Type that will provide data + The name of a static method, property or field that will provide data. + + + + Construct with a Type + + The type that will provide data + + + + Construct one or more TestMethods from a given MethodInfo, + using available parameter data. + + The IMethod for which tests are to be constructed. + The suite to which the tests will be added. + One or more TestMethods + + + + Returns a set of ITestCaseDataItems for use as arguments + to a parameterized test method. + + The method for which data is needed. + + + + + A set of parameters passed to the method, works only if the Source Name is a method. + If the source name is a field or property has no effect. + + + + + The name of a the method, property or fiend to be used as a source + + + + + A Type to be used as a source + + + + + Gets or sets the category associated with every fixture created from + this attribute. May be a single category or a comma-separated list. + + + + + TestMethodCommand is the lowest level concrete command + used to run actual test cases. + + + + + Initializes a new instance of the class. + + The test. + + + + Runs the test, saving a TestResult in the execution context, as + well as returning it. If the test has an expected result, it + is asserts on that value. Since failed tests and errors throw + an exception, this command must be wrapped in an outer command, + will handle that exception and records the failure. This role + is usually played by the SetUpTearDown command. + + The execution context + + + + SetUpTearDownCommand runs any SetUp methods for a suite, + runs the test and then runs any TearDown methods. + + + + + Initializes a new instance of the class. + + The inner command. + + + + Runs the test, saving a TestResult in the supplied TestExecutionContext. + + The context in which the test should run. + A TestResult + + + + SetUpTearDownItem holds the setup and teardown methods + for a single level of the inheritance hierarchy. + + + + + Construct a SetUpTearDownNode + + A list of setup methods for this level + A list teardown methods for this level + + + + Run SetUp on this level. + + The execution context to use for running. + + + + Run TearDown for this level. + + + + + + Returns true if this level has any methods at all. + This flag is used to discard levels that do nothing. + + + + + Class used to guard against unexpected argument values + or operations by throwing an appropriate exception. + + + + + Throws an exception if an argument is null + + The value to be tested + The name of the argument + + + + Throws an exception if a string argument is null or empty + + The value to be tested + The name of the argument + + + + Throws an ArgumentOutOfRangeException if the specified condition is not met. + + The condition that must be met + The exception message to be used + The name of the argument + + + + Throws an ArgumentException if the specified condition is not met. + + The condition that must be met + The exception message to be used + The name of the argument + + + + Throws an InvalidOperationException if the specified condition is not met. + + The condition that must be met + The exception message to be used + + + + SubPathConstraint tests that the actual path is under the expected path + + + + + Initializes a new instance of the class. + + The expected path + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True for success, false for failure + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + ParallelizableAttribute is used to mark tests that may be run in parallel. + + + + + Construct a ParallelizableAttribute using default ParallelScope.Self. + + + + + Construct a ParallelizableAttribute with a specified scope. + + The ParallelScope associated with this attribute. + + + + Modify the context to be used for child tests + + The current TestExecutionContext + + + + Helper class with properties and methods that supply + constraints that operate on exceptions. + + + + + Creates a constraint specifying the exact type of exception expected + + + + + Creates a constraint specifying the exact type of exception expected + + + + + Creates a constraint specifying the type of exception expected + + + + + Creates a constraint specifying the type of exception expected + + + + + Creates a constraint specifying an expected exception + + + + + Creates a constraint specifying an exception with a given InnerException + + + + + Creates a constraint specifying an expected TargetInvocationException + + + + + Creates a constraint specifying an expected ArgumentException + + + + + Creates a constraint specifying an expected ArgumentNUllException + + + + + Creates a constraint specifying an expected InvalidOperationException + + + + + Creates a constraint specifying that no exception is thrown + + + + + Enumeration identifying a common language + runtime implementation. + + + + Any supported runtime framework + + + Microsoft .NET Framework + + + Microsoft .NET Compact Framework + + + Microsoft Shared Source CLI + + + Mono + + + Silverlight + + + MonoTouch + + + + RuntimeFramework represents a particular version + of a common language runtime implementation. + + + + + DefaultVersion is an empty Version, used to indicate that + NUnit should select the CLR version to use for the test. + + + + + Construct from a runtime type and version. If the version has + two parts, it is taken as a framework version. If it has three + or more, it is taken as a CLR version. In either case, the other + version is deduced based on the runtime type and provided version. + + The runtime type of the framework + The version of the framework + + + + Parses a string representing a RuntimeFramework. + The string may be just a RuntimeType name or just + a Version or a hyphenated RuntimeType-Version or + a Version prefixed by 'versionString'. + + + + + + + Overridden to return the short name of the framework + + + + + + Returns true if the current framework matches the + one supplied as an argument. Two frameworks match + if their runtime types are the same or either one + is RuntimeType.Any and all specified version components + are equal. Negative (i.e. unspecified) version + components are ignored. + + The RuntimeFramework to be matched. + True on match, otherwise false + + + + Static method to return a RuntimeFramework object + for the framework that is currently in use. + + + + + The type of this runtime framework + + + + + The framework version for this runtime framework + + + + + The CLR version for this runtime framework + + + + + Return true if any CLR version may be used in + matching this RuntimeFramework object. + + + + + Returns the Display name for this framework + + + + + CategoryFilter is able to select or exclude tests + based on their categories. + + + + + + Construct a CategoryFilter using a single category name + + A category name + + + + Check whether the filter matches a test + + The test to be matched + + + + + Gets the element name + + Element name + + + + GlobalSettings is a place for setting default values used + by the framework in performing asserts. Anything set through + this class applies to the entire test run. It should not normally + be used from within a test, since it is not thread-safe. + + + + + Default tolerance for floating point equality + + + + + Asserts on Files + + + + + The Equals method throws an InvalidOperationException. This is done + to make sure there is no mistake by calling this function. + + + + + + + override the default ReferenceEquals to throw an InvalidOperationException. This + implementation makes sure there is no mistake in calling this function + as part of Assert. + + + + + + + Verifies that two Streams are equal. Two Streams are considered + equal if both are null, or if both have the same value byte for byte. + If they are not equal an is thrown. + + The expected Stream + The actual Stream + The message to display if Streams are not equal + Arguments to be used in formatting the message + + + + Verifies that two Streams are equal. Two Streams are considered + equal if both are null, or if both have the same value byte for byte. + If they are not equal an is thrown. + + The expected Stream + The actual Stream + + + + Verifies that two files are equal. Two files are considered + equal if both are null, or if both have the same value byte for byte. + If they are not equal an is thrown. + + A file containing the value that is expected + A file containing the actual value + The message to display if Streams are not equal + Arguments to be used in formatting the message + + + + Verifies that two files are equal. Two files are considered + equal if both are null, or if both have the same value byte for byte. + If they are not equal an is thrown. + + A file containing the value that is expected + A file containing the actual value + + + + Verifies that two files are equal. Two files are considered + equal if both are null, or if both have the same value byte for byte. + If they are not equal an is thrown. + + The path to a file containing the value that is expected + The path to a file containing the actual value + The message to display if Streams are not equal + Arguments to be used in formatting the message + + + + Verifies that two files are equal. Two files are considered + equal if both are null, or if both have the same value byte for byte. + If they are not equal an is thrown. + + The path to a file containing the value that is expected + The path to a file containing the actual value + + + + Asserts that two Streams are not equal. If they are equal + an is thrown. + + The expected Stream + The actual Stream + The message to be displayed when the two Stream are the same. + Arguments to be used in formatting the message + + + + Asserts that two Streams are not equal. If they are equal + an is thrown. + + The expected Stream + The actual Stream + + + + Asserts that two files are not equal. If they are equal + an is thrown. + + A file containing the value that is expected + A file containing the actual value + The message to display if Streams are not equal + Arguments to be used in formatting the message + + + + Asserts that two files are not equal. If they are equal + an is thrown. + + A file containing the value that is expected + A file containing the actual value + + + + Asserts that two files are not equal. If they are equal + an is thrown. + + The path to a file containing the value that is expected + The path to a file containing the actual value + The message to display if Streams are not equal + Arguments to be used in formatting the message + + + + Asserts that two files are not equal. If they are equal + an is thrown. + + The path to a file containing the value that is expected + The path to a file containing the actual value + + + + Asserts that the file exists. If it does not exist + an is thrown. + + A file containing the actual value + The message to display if Streams are not equal + Arguments to be used in formatting the message + + + + Asserts that the file exists. If it does not exist + an is thrown. + + A file containing the actual value + + + + Asserts that the file exists. If it does not exist + an is thrown. + + The path to a file containing the actual value + The message to display if Streams are not equal + Arguments to be used in formatting the message + + + + Asserts that the file exists. If it does not exist + an is thrown. + + The path to a file containing the actual value + + + + Asserts that the file does not exist. If it does exist + an is thrown. + + A file containing the actual value + The message to display if Streams are not equal + Arguments to be used in formatting the message + + + + Asserts that the file does not exist. If it does exist + an is thrown. + + A file containing the actual value + + + + Asserts that the file does not exist. If it does exist + an is thrown. + + The path to a file containing the actual value + The message to display if Streams are not equal + Arguments to be used in formatting the message + + + + Asserts that the file does not exist. If it does exist + an is thrown. + + The path to a file containing the actual value + + + + Thrown when an assertion failed. + + + + + + + The error message that explains + the reason for the exception + The exception that caused the + current exception + + + + Serialization Constructor + + + + + Gets the ResultState provided by this exception + + + + + SomeItemsConstraint applies another constraint to each + item in a collection, succeeding if any of them succeeds. + + + + + Construct a SomeItemsConstraint on top of an existing constraint + + + + + + Apply the item constraint to each item in the collection, + succeeding if any item succeeds. + + + + + + + The display name of this Constraint for use by ToString(). + The default value is the name of the constraint with + trailing "Constraint" removed. Derived classes may set + this to another name in their constructors. + + + + + SameAsConstraint tests whether an object is identical to + the object passed to its constructor + + + + + Initializes a new instance of the class. + + The expected object. + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True for success, false for failure + + + + The Description of what this constraint tests, for + use in messages and in the ConstraintResult. + + + + + RegexConstraint can test whether a string matches + the pattern provided. + + + + + Initializes a new instance of the class. + + The pattern. + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True for success, false for failure + + + + ConstraintStatus represents the status of a ConstraintResult + returned by a Constraint being applied to an actual value. + + + + + The status has not yet been set + + + + + The constraint succeeded + + + + + The constraint failed + + + + + An error occured in applying the constraint (reserved for future use) + + + + + Attribute used to identify a method that is called + immediately after each test is run. The method is + guaranteed to be called, even if an exception is thrown. + + + + + Marks a test to use a combinatorial join of any argument + data provided. Since this is the default, the attribute is + optional. + + + + + Default constructor + + + + + The PropertyNames class provides static constants for the + standard property ids that NUnit uses on tests. + + + + + The FriendlyName of the AppDomain in which the assembly is running + + + + + The selected strategy for joining parameter data into test cases + + + + + The process ID of the executing assembly + + + + + The stack trace from any data provider that threw + an exception. + + + + + The reason a test was not run + + + + + The author of the tests + + + + + The ApartmentState required for running the test + + + + + The categories applying to a test + + + + + The Description of a test + + + + + The number of threads to be used in running tests + + + + + The maximum time in ms, above which the test is considered to have failed + + + + + The ParallelScope associated with a test + + + + + The number of times the test should be repeated + + + + + Indicates that the test should be run on a separate thread + + + + + The culture to be set for a test + + + + + The UI culture to be set for a test + + + + + The type that is under test + + + + + The timeout value for the test + + + + + The test will be ignored until the given date + + + + + The optional Order the test will run in + + + + + The MethodWrapper class wraps a MethodInfo so that it may + be used in a platform-independent manner. + + + + + Construct a MethodWrapper for a Type and a MethodInfo. + + + + + Construct a MethodInfo for a given Type and method name. + + + + + Gets the parameters of the method. + + + + + + Returns the Type arguments of a generic method or the Type parameters of a generic method definition. + + + + + Replaces the type parameters of the method with the array of types provided and returns a new IMethodInfo. + + The type arguments to be used + A new IMethodInfo with the type arguments replaced + + + + Returns an array of custom attributes of the specified type applied to this method + + + + + Gets a value indicating whether one or more attributes of the spcified type are defined on the method. + + + + + Invokes the method, converting any TargetInvocationException to an NUnitException. + + The object on which to invoke the method + The argument list for the method + The return value from the invoked method + + + + Override ToString() so that error messages in NUnit's own tests make sense + + + + + Gets the Type from which this method was reflected. + + + + + Gets the MethodInfo for this method. + + + + + Gets the name of the method. + + + + + Gets a value indicating whether the method is abstract. + + + + + Gets a value indicating whether the method is public. + + + + + Gets a value indicating whether the method contains unassigned generic type parameters. + + + + + Gets a value indicating whether the method is a generic method. + + + + + Gets a value indicating whether the MethodInfo represents the definition of a generic method. + + + + + Gets the return Type of the method. + + + + + Represents a constraint that succeeds if any of the + members of a collection match a base constraint. + + + + + Returns a constraint that will apply the argument + to the members of a collection, succeeding if + any of them succeed. + + + + + The TestMethod class represents a Test implemented as a method. + + + + + The ParameterSet used to create this test method + + + + + Initializes a new instance of the class. + + The method to be used as a test. + + + + Initializes a new instance of the class. + + The method to be used as a test. + The suite or fixture to which the new test will be added + + + + Overridden to return a TestCaseResult. + + A TestResult for this test. + + + + Returns a TNode representing the current result after + adding it as a child of the supplied parent node. + + The parent node. + If true, descendant results are included + + + + + Gets a bool indicating whether the current test + has any descendant tests. + + + + + Gets this test's child tests + + A list of child tests + + + + Gets the name used for the top-level element in the + XML representation of this test + + + + + Returns the name of the method + + + + + RangeConstraint tests whether two _values are within a + specified range. + + + + + Initializes a new instance of the class. + + from must be less than or equal to true + Inclusive beginning of the range. Must be less than or equal to to. + Inclusive end of the range. Must be greater than or equal to from. + + + + Test whether the constraint is satisfied by a given value + + The value to be tested + True for success, false for failure + + + + Modifies the constraint to use an and returns self. + + + + + Modifies the constraint to use an and returns self. + + + + + Modifies the constraint to use a and returns self. + + + + + Gets text describing a constraint + + + + + Tests whether a value is greater than or equal to the value supplied to its constructor + + + + + Initializes a new instance of the class. + + The expected value. + + + + Delegate used to delay evaluation of the actual value + to be used in evaluating a constraint + + + + + AttributeConstraint tests that a specified attribute is present + on a Type or other provider and that the value of the attribute + satisfies some other constraint. + + + + + Constructs an AttributeConstraint for a specified attribute + Type and base constraint. + + + + + + + Determines whether the Type or other provider has the + expected attribute and if its value matches the + additional constraint specified. + + + + + Returns a string representation of the constraint. + + + + + ValueSourceAttribute indicates the source to be used to + provide data for one parameter of a test method. + + + + + Construct with the name of the factory - for use with languages + that don't support params arrays. + + The name of a static method, property or field that will provide data. + + + + Construct with a Type and name - for use with languages + that don't support params arrays. + + The Type that will provide data + The name of a static method, property or field that will provide data. + + + + Gets an enumeration of data items for use as arguments + for a test method parameter. + + The parameter for which data is needed + + An enumeration containing individual data items + + + + + The name of a the method, property or fiend to be used as a source + + + + + A Type to be used as a source + + + + + Summary description for SetCultureAttribute. + + + + + Construct given the name of a culture + + + + + + RandomAttribute is used to supply a set of random _values + to a single parameter of a parameterized test. + + + + + Construct a random set of values appropriate for the Type of the + parameter on which the attribute appears, specifying only the count. + + + + + + Construct a set of ints within a specified range + + + + + Construct a set of unsigned ints within a specified range + + + + + Construct a set of longs within a specified range + + + + + Construct a set of unsigned longs within a specified range + + + + + Construct a set of shorts within a specified range + + + + + Construct a set of unsigned shorts within a specified range + + + + + Construct a set of doubles within a specified range + + + + + Construct a set of floats within a specified range + + + + + Construct a set of bytes within a specified range + + + + + Construct a set of sbytes within a specified range + + + + + Get the collection of _values to be used as arguments. + + + + + Delegate used by tests that execute code and + capture any thrown exception. + + + + + TNode represents a single node in the XML representation + of a Test or TestResult. It replaces System.Xml.XmlNode and + System.Xml.Linq.XElement, providing a minimal set of methods + for operating on the XML in a platform-independent manner. + + + + + Constructs a new instance of TNode + + The name of the node + + + + Constructs a new instance of TNode with a value + + The name of the node + The text content of the node + + + + Constructs a new instance of TNode with a value + + The name of the node + The text content of the node + Flag indicating whether to use CDATA when writing the text + + + + Create a TNode from it's XML text representation + + The XML text to be parsed + A TNode + + + + Adds a new element as a child of the current node and returns it. + + The element name. + The newly created child element + + + + Adds a new element with a value as a child of the current node and returns it. + + The element name + The text content of the new element + The newly created child element + + + + Adds a new element with a value as a child of the current node and returns it. + The value will be output using a CDATA section. + + The element name + The text content of the new element + The newly created child element + + + + Adds an attribute with a specified name and value to the XmlNode. + + The name of the attribute. + The value of the attribute. + + + + Finds a single descendant of this node matching an xpath + specification. The format of the specification is + limited to what is needed by NUnit and its tests. + + + + + + + Finds all descendants of this node matching an xpath + specification. The format of the specification is + limited to what is needed by NUnit and its tests. + + + + + Writes the XML representation of the node to an XmlWriter + + + + + + Gets the name of the node + + + + + Gets the value of the node + + + + + Gets a flag indicating whether the value should be output using CDATA. + + + + + Gets the dictionary of attributes + + + + + Gets a list of child nodes + + + + + Gets the first ChildNode + + + + + Gets the XML representation of this node. + + + + + Class used to represent a list of XmlResults + + + + + Class used to represent the attributes of a node + + + + + Gets or sets the value associated with the specified key. + Overridden to return null if attribute is not found. + + The key. + Value of the attribute or null + + + + The ITestAssemblyRunner interface is implemented by classes + that are able to execute a suite of tests loaded + from an assembly. + + + + + Loads the tests found in an Assembly, returning an + indication of whether or not the load succeeded. + + File name of the assembly to load + Dictionary of options to use in loading the test + An ITest representing the loaded tests + + + + Loads the tests found in an Assembly, returning an + indication of whether or not the load succeeded. + + The assembly to load + Dictionary of options to use in loading the test + An ITest representing the loaded tests + + + + Count Test Cases using a filter + + The filter to apply + The number of test cases found + + + + Run selected tests and return a test result. The test is run synchronously, + and the listener interface is notified as it progresses. + + Interface to receive ITestListener notifications. + A test filter used to select tests to be run + + + + Run selected tests asynchronously, notifying the listener interface as it progresses. + + Interface to receive EventListener notifications. + A test filter used to select tests to be run + + + + Wait for the ongoing run to complete. + + Time to wait in milliseconds + True if the run completed, otherwise false + + + + Signal any test run that is in process to stop. Return without error if no test is running. + + If true, kill any test-running threads + + + + Gets the tree of loaded tests, or null if + no tests have been loaded. + + + + + Gets the tree of test results, if the test + run is completed, otherwise null. + + + + + Indicates whether a test has been loaded + + + + + Indicates whether a test is currently running + + + + + Indicates whether a test run is complete + + + + + Modes in which the tolerance value for a comparison can be interpreted. + + + + + The tolerance was created with a value, without specifying + how the value would be used. This is used to prevent setting + the mode more than once and is generally changed to Linear + upon execution of the test. + + + + + The tolerance is used as a numeric range within which + two compared _values are considered to be equal. + + + + + Interprets the tolerance as the percentage by which + the two compared _values my deviate from each other. + + + + + Compares two _values based in their distance in + representable numbers. + + + + + ResolvableConstraintExpression is used to represent a compound + constraint being constructed at a point where the last operator + may either terminate the expression or may have additional + qualifying constraints added to it. + + It is used, for example, for a Property element or for + an Exception element, either of which may be optionally + followed by constraints that apply to the property or + exception. + + + + + Create a new instance of ResolvableConstraintExpression + + + + + Create a new instance of ResolvableConstraintExpression, + passing in a pre-populated ConstraintBuilder. + + + + + Resolve the current expression to a Constraint + + + + + Appends an And Operator to the expression + + + + + Appends an Or operator to the expression. + + + + + Negates the test of the constraint it wraps. + + + + + Constructs a new NotOperator + + + + + Returns a NotConstraint applied to its argument. + + + + + SetUpFixtureAttribute is used to identify a SetUpFixture + + + + + Build a SetUpFixture from type provided. Normally called for a Type + on which the attribute has been placed. + + The type info of the fixture to be used. + A SetUpFixture object as a TestSuite. + + + + Marks a test that must run in the MTA, causing it + to run in a separate thread if necessary. + + On methods, you may also use MTAThreadAttribute + to serve the same purpose. + + + + + Construct a RequiresMTAAttribute + + + + + The ResultState class represents the outcome of running a test. + It contains two pieces of information. The Status of the test + is an enum indicating whether the test passed, failed, was + skipped or was inconclusive. The Label provides a more + detailed breakdown for use by client runners. + + + + + Initializes a new instance of the class. + + The TestStatus. + + + + Initializes a new instance of the class. + + The TestStatus. + The label. + + + + Initializes a new instance of the class. + + The TestStatus. + The stage at which the result was produced + + + + Initializes a new instance of the class. + + The TestStatus. + The label. + The stage at which the result was produced + + + + The result is inconclusive + + + + + The test has been skipped. + + + + + The test has been ignored. + + + + + The test was skipped because it is explicit + + + + + The test succeeded + + + + + The test failed + + + + + The test encountered an unexpected exception + + + + + The test was cancelled by the user + + + + + The test was not runnable. + + + + + A suite failed because one or more child tests failed or had errors + + + + + A suite failed in its OneTimeSetUp + + + + + A suite had an unexpected exception in its OneTimeSetUp + + + + + A suite had an unexpected exception in its OneTimeDown + + + + + Get a new ResultState, which is the same as the current + one but with the FailureSite set to the specified value. + + The FailureSite to use + A new ResultState + + + + Determines whether the specified , is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Gets the TestStatus for the test. + + The status. + + + + Gets the label under which this test result is + categorized, if any. + + + + + Gets the stage of test execution in which + the failure or other result took place. + + + + + The FailureSite enum indicates the stage of a test + in which an error or failure occurred. + + + + + Failure in the test itself + + + + + Failure in the SetUp method + + + + + Failure in the TearDown method + + + + + Failure of a parent test + + + + + Failure of a child test + + + + + The TestFixtureData class represents a set of arguments + and other parameter info to be used for a parameterized + fixture. It is derived from TestFixtureParameters and adds a + fluent syntax for use in initializing the fixture. + + + + + Initializes a new instance of the class. + + The arguments. + + + + Initializes a new instance of the class. + + The argument. + + + + Initializes a new instance of the class. + + The first argument. + The second argument. + + + + Initializes a new instance of the class. + + The first argument. + The second argument. + The third argument. + + + + Marks the test fixture as explicit. + + + + + Marks the test fixture as explicit, specifying the reason. + + + + + Ignores this TestFixture, specifying the reason. + + The reason. + + + + + Represents a thread-safe first-in, first-out collection of objects. + + Specifies the type of elements in the queue. + + All public and protected members of are thread-safe and may be used + concurrently from multiple threads. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the + class that contains elements copied from the specified collection + + The collection whose elements are copied to the new . + The argument is + null. + + + + Adds an object to the end of the . + + The object to add to the end of the . The value can be a null reference + (Nothing in Visual Basic) for reference types. + + + + + Attempts to add an object to the . + + The object to add to the . The value can be a null + reference (Nothing in Visual Basic) for reference types. + + true if the object was added successfully; otherwise, false. + For , this operation will always add the object to the + end of the + and return true. + + + + Attempts to remove and return the object at the beginning of the . + + + When this method returns, if the operation was successful, contains the + object removed. If no object was available to be removed, the value is unspecified. + + true if an element was removed and returned from the beginning of the + successfully; otherwise, false. + + + + Attempts to return an object from the beginning of the + without removing it. + + When this method returns, contains an object from + the beginning of the or an + unspecified value if the operation failed. + true if and object was returned successfully; otherwise, false. + + + + Returns an enumerator that iterates through a collection. + + An that can be used to iterate through the collection. + + + + Returns an enumerator that iterates through the . + + An enumerator for the contents of the . + + The enumeration represents a moment-in-time snapshot of the contents + of the queue. It does not reflect any updates to the collection after + was called. The enumerator is safe to use + concurrently with reads from and writes to the queue. + + + + + Copies the elements of the to an , starting at a particular + index. + + The one-dimensional Array that is the + destination of the elements copied from the + . The Array must have zero-based indexing. + The zero-based index in at which copying + begins. + is a null reference (Nothing in + Visual Basic). + is less than + zero. + + is multidimensional. -or- + does not have zero-based indexing. -or- + is equal to or greater than the length of the + -or- The number of elements in the source is + greater than the available space from to the end of the destination + . -or- The type of the source cannot be cast automatically to the type of the + destination . + + + + + Copies the elements to an existing one-dimensional Array, starting at the specified array index. + + The one-dimensional Array that is the + destination of the elements copied from the + . The Array must have zero-based + indexing. + The zero-based index in at which copying + begins. + is a null reference (Nothing in + Visual Basic). + is less than + zero. + is equal to or greater than the + length of the + -or- The number of elements in the source is greater than the + available space from to the end of the destination . + + + + + Copies the elements stored in the to a new array. + + A new array containing a snapshot of elements copied from the . + + + + Attempts to remove and return an object from the . + + + When this method returns, if the operation was successful, contains the + object removed. If no object was available to be removed, the value is unspecified. + + true if an element was removed and returned successfully; otherwise, false. + For , this operation will attempt to remove the object + from the beginning of the . + + + + + Gets a value indicating whether access to the is + synchronized with the SyncRoot. + + true if access to the is synchronized + with the SyncRoot; otherwise, false. For , this property always + returns false. + + + + Gets an object that can be used to synchronize access to the . This property is not supported. + + The SyncRoot property is not supported. + + + + Gets the number of elements contained in the . + + The number of elements contained in the . + + For determining whether the collection contains any items, use of the + property is recommended rather than retrieving the number of items from the + property and comparing it to 0. + + + + + Gets a value that indicates whether the is empty. + + true if the is empty; otherwise, false. + + For determining whether the collection contains any items, use of this property is recommended + rather than retrieving the number of items from the property and comparing it + to 0. However, as this collection is intended to be accessed concurrently, it may be the case + that another thread will modify the collection after returns, thus invalidating + the result. + + + + + Implementation of ITestAssemblyRunner + + + + + Initializes a new instance of the class. + + The builder. + + + + Loads the tests found in an Assembly + + File name of the assembly to load + Dictionary of option settings for loading the assembly + True if the load was successful + + + + Loads the tests found in an Assembly + + The assembly to load + Dictionary of option settings for loading the assembly + True if the load was successful + + + + Count Test Cases using a filter + + The filter to apply + The number of test cases found + + + + Run selected tests and return a test result. The test is run synchronously, + and the listener interface is notified as it progresses. + + Interface to receive EventListener notifications. + A test filter used to select tests to be run + + + + + Run selected tests asynchronously, notifying the listener interface as it progresses. + + Interface to receive EventListener notifications. + A test filter used to select tests to be run + + RunAsync is a template method, calling various abstract and + virtual methods to be overridden by derived classes. + + + + + Wait for the ongoing run to complete. + + Time to wait in milliseconds + True if the run completed, otherwise false + + + + Signal any test run that is in process to stop. Return without error if no test is running. + + If true, kill any tests that are currently running + + + + Initiate the test run. + + + + + Create the initial TestExecutionContext used to run tests + + The ITestListener specified in the RunAsync call + + + + Handle the the Completed event for the top level work item + + + + + The tree of tests that was loaded by the builder + + + + + The test result, if a run has completed + + + + + Indicates whether a test is loaded + + + + + Indicates whether a test is running + + + + + Indicates whether a test run is complete + + + + + Our settings, specified when loading the assembly + + + + + The top level WorkItem created for the assembly as a whole + + + + + The TestExecutionContext for the top level WorkItem + + + + diff --git a/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.xml.meta b/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.xml.meta new file mode 100644 index 0000000..bed4a72 --- /dev/null +++ b/Library/PackageCache/com.unity.ext.nunit@1.0.0/net35/unity-custom/nunit.framework.xml.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 9c7ad350fb20c854a9112cf4156d1b6e +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ext.nunit@1.0.0/package.json b/Library/PackageCache/com.unity.ext.nunit@1.0.0/package.json new file mode 100644 index 0000000..c0bc305 --- /dev/null +++ b/Library/PackageCache/com.unity.ext.nunit@1.0.0/package.json @@ -0,0 +1,16 @@ +{ + "displayName": "Custom NUnit", + "name": "com.unity.ext.nunit", + "version": "1.0.0", + "unity": "2019.1", + "description": "Custom version of the nunit package build to work with Unity. Used by the Unity Test Framework.", + "keywords": ["nunit", "unittest", "test"], + "category": "Libraries", + "repository": { + "type": "git", + "url": "git@gitlab.cds.internal.unity3d.com/upm-packages/core/com.unity.ext.nunit.git", + "revision": "c8f5044ffe6adb909f9836160b0bdaa30f2d1ec9" + }, + "dependencies": { + } +} diff --git a/Library/PackageCache/com.unity.ext.nunit@1.0.0/package.json.meta b/Library/PackageCache/com.unity.ext.nunit@1.0.0/package.json.meta new file mode 100644 index 0000000..ad88492 --- /dev/null +++ b/Library/PackageCache/com.unity.ext.nunit@1.0.0/package.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 8143d3a8390f2c64685e3bc272bd9e90 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/.editorconfig b/Library/PackageCache/com.unity.ide.rider@1.1.0/.editorconfig new file mode 100644 index 0000000..ca12169 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/.editorconfig @@ -0,0 +1,6 @@ +root = true + +[*] +indent_style = space +indent_size = 2 +end_of_line = lf \ No newline at end of file diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/CHANGELOG.md b/Library/PackageCache/com.unity.ide.rider@1.1.0/CHANGELOG.md new file mode 100644 index 0000000..09e3c34 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/CHANGELOG.md @@ -0,0 +1,43 @@ +# Code Editor Package for Rider + +## [1.1.0] - 2019-07-02 + +new setting to manage list of extensions to be opened with Rider +avoid breaking everything on any unhandled exception in RiderScriptEditor cctor +hide Rider settings, when different Editor is selected +dynamically load only newer rider plugins +path detection (work on unix symlinks) +speed up for project generation +lots of bug fixing + +## [1.0.8] - 2019-05-20 + +Fix NullReferenceException when External editor was pointing to non-existing Rider everything was broken by null-ref. + +## [1.0.7] - 2019-05-16 + +Initial migration steps from rider plugin to package. +Fix OSX check and opening of files. + +## [1.0.6] - 2019-04-30 + +Ensure asset database is refreshed when generating csproj and solution files. + +## [1.0.5] - 2019-04-27 + +Add support for generating all csproj files. + +## [1.0.4] - 2019-04-18 + +Fix relative package paths. +Fix opening editor on mac. + +## [1.0.3] - 2019-04-12 + +Fixing null reference issue for callbacks to Asset pipeline. + +## [1.0.2] - 2019-01-01 + +### This is the first release of *Unity Package rider_editor*. + +Using the newly created api to integrate Rider with Unity. diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/CHANGELOG.md.meta b/Library/PackageCache/com.unity.ide.rider@1.1.0/CHANGELOG.md.meta new file mode 100644 index 0000000..d8f7ef8 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/CHANGELOG.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 8645aa9c3c74fb34ba9499e14fb332b5 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/CONTRIBUTING.md b/Library/PackageCache/com.unity.ide.rider@1.1.0/CONTRIBUTING.md new file mode 100644 index 0000000..f0005f6 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/CONTRIBUTING.md @@ -0,0 +1,6 @@ +# Contributing + +## All contributions are subject to the [Unity Contribution Agreement(UCA)](https://unity3d.com/legal/licenses/Unity_Contribution_Agreement) +By making a pull request, you are confirming agreement to the terms and conditions of the UCA, including that your Contributions are your original creation and that you have complete right and authority to make your Contributions. + +## Once you have a change ready following these ground rules. Simply make a pull request \ No newline at end of file diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/CONTRIBUTING.md.meta b/Library/PackageCache/com.unity.ide.rider@1.1.0/CONTRIBUTING.md.meta new file mode 100644 index 0000000..147d8ae --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/CONTRIBUTING.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 5e83f8baac96eaa47bdd9ca781cd2002 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Documentation~/README.md b/Library/PackageCache/com.unity.ide.rider@1.1.0/Documentation~/README.md new file mode 100644 index 0000000..d9e6b90 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Documentation~/README.md @@ -0,0 +1,4 @@ +# Code Editor Package for Rider + +This package is not intended to be modified by users. +Nor does it provide any api intended to be included in user projects. \ No newline at end of file diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/LICENSE.md b/Library/PackageCache/com.unity.ide.rider@1.1.0/LICENSE.md new file mode 100644 index 0000000..8098f2d --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/LICENSE.md @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2019 Unity Technologies + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/LICENSE.md.meta b/Library/PackageCache/com.unity.ide.rider@1.1.0/LICENSE.md.meta new file mode 100644 index 0000000..30b6ed7 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/LICENSE.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 5598b14661b5f4c43bed757f34b6d172 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider.meta b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider.meta new file mode 100644 index 0000000..1bafafc --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9129183a42052cd43b9c284d6dbd541e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor.meta b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor.meta new file mode 100644 index 0000000..61363f1 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1b393f6b29a9ee84c803af1ab4944b71 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Discovery.cs b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Discovery.cs new file mode 100644 index 0000000..8d25f91 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Discovery.cs @@ -0,0 +1,418 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using JetBrains.Annotations; +using Microsoft.Win32; +using Unity.CodeEditor; +using UnityEngine; + +namespace Packages.Rider.Editor +{ + public interface IDiscovery + { + CodeEditor.Installation[] PathCallback(); + } + + public class Discovery : IDiscovery + { + public CodeEditor.Installation[] PathCallback() + { + return RiderPathLocator.GetAllRiderPaths() + .Select(riderInfo => new CodeEditor.Installation + { + Path = riderInfo.Path, + Name = riderInfo.Presentation + }) + .OrderBy(a=>a.Name) + .ToArray(); + } + } + + /// + /// This code is a modified version of the JetBrains resharper-unity plugin listed here: + /// https://github.com/JetBrains/resharper-unity/blob/master/unity/JetBrains.Rider.Unity.Editor/EditorPlugin/RiderPathLocator.cs + /// + public static class RiderPathLocator + { +#if !(UNITY_4_7 || UNITY_5_5) + [UsedImplicitly] // Used in com.unity.ide.rider + public static RiderInfo[] GetAllRiderPaths() + { + try + { + switch (SystemInfo.operatingSystemFamily) + { + case OperatingSystemFamily.Windows: + { + return CollectRiderInfosWindows(); + } + + case OperatingSystemFamily.MacOSX: + { + return CollectRiderInfosMac(); + } + + case OperatingSystemFamily.Linux: + { + return CollectAllRiderPathsLinux(); + } + } + } + catch (Exception e) + { + Debug.LogException(e); + } + + return new RiderInfo[0]; + } +#endif + +#if RIDER_EDITOR_PLUGIN // can't be used in com.unity.ide.rider + internal static RiderInfo[] GetAllFoundInfos(OperatingSystemFamilyRider operatingSystemFamily) + { + try + { + switch (operatingSystemFamily) + { + case OperatingSystemFamilyRider.Windows: + { + return CollectRiderInfosWindows(); + } + case OperatingSystemFamilyRider.MacOSX: + { + return CollectRiderInfosMac(); + } + case OperatingSystemFamilyRider.Linux: + { + return CollectAllRiderPathsLinux(); + } + } + } + catch (Exception e) + { + Debug.LogException(e); + } + + return new RiderInfo[0]; + } + + internal static string[] GetAllFoundPaths(OperatingSystemFamilyRider operatingSystemFamily) + { + return GetAllFoundInfos(operatingSystemFamily).Select(a=>a.Path).ToArray(); + } +#endif + + private static RiderInfo[] CollectAllRiderPathsLinux() + { + var home = Environment.GetEnvironmentVariable("HOME"); + if (string.IsNullOrEmpty(home)) + return new RiderInfo[0]; + + //$Home/.local/share/JetBrains/Toolbox/apps/Rider/ch-0/173.3994.1125/bin/rider.sh + //$Home/.local/share/JetBrains/Toolbox/apps/Rider/ch-0/.channel.settings.json + var toolboxRiderRootPath = Path.Combine(home, @".local/share/JetBrains/Toolbox/apps/Rider"); + var paths = CollectPathsFromToolbox(toolboxRiderRootPath, "bin", "rider.sh", false) + .Select(a => new RiderInfo(a, true)).ToList(); + + //$Home/.local/share/applications/jetbrains-rider.desktop + var shortcut = new FileInfo(Path.Combine(home, @".local/share/applications/jetbrains-rider.desktop")); + + if (shortcut.Exists) + { + var lines = File.ReadAllLines(shortcut.FullName); + foreach (var line in lines) + { + if (!line.StartsWith("Exec=\"")) + continue; + var path = line.Split('"').Where((item, index) => index == 1).SingleOrDefault(); + if (string.IsNullOrEmpty(path)) + continue; + + if (paths.Any(a => a.Path == path)) // avoid adding similar build as from toolbox + continue; + paths.Add(new RiderInfo(path, false)); + } + } + + // snap install + var snapInstallPath = "/snap/rider/current/bin/rider.sh"; + if (new FileInfo(snapInstallPath).Exists) + paths.Add(new RiderInfo(snapInstallPath, false)); + + return paths.ToArray(); + } + + private static RiderInfo[] CollectRiderInfosMac() + { + // "/Applications/*Rider*.app" + var folder = new DirectoryInfo("/Applications"); + if (!folder.Exists) + return new RiderInfo[0]; + + var results = folder.GetDirectories("*Rider*.app") + .Select(a => new RiderInfo(a.FullName, false)) + .ToList(); + + // /Users/user/Library/Application Support/JetBrains/Toolbox/apps/Rider/ch-1/181.3870.267/Rider EAP.app + var home = Environment.GetEnvironmentVariable("HOME"); + if (!string.IsNullOrEmpty(home)) + { + var toolboxRiderRootPath = Path.Combine(home, @"Library/Application Support/JetBrains/Toolbox/apps/Rider"); + var paths = CollectPathsFromToolbox(toolboxRiderRootPath, "", "Rider*.app", true) + .Select(a => new RiderInfo(a, true)); + results.AddRange(paths); + } + + return results.ToArray(); + } + + internal static string GetBuildNumber(string path) + { + var file = new FileInfo(Path.Combine(path, GetRelativePathToBuildTxt())); + if (!file.Exists) + return string.Empty; + var text = File.ReadAllText(file.FullName); + if (text.Length > 3) + return text.Substring(3); + return string.Empty; + } + + private static RiderInfo[] CollectRiderInfosWindows() + { + var localAppData = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData); + var toolboxRiderRootPath = Path.Combine(localAppData, @"JetBrains\Toolbox\apps\Rider"); + var installPathsToolbox = CollectPathsFromToolbox(toolboxRiderRootPath, "bin", "rider64.exe", false).ToList(); + var installInfosToolbox = installPathsToolbox + .Select(a => new RiderInfo(a, true)).ToList(); + + var installPaths = new List(); + const string registryKey = @"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall"; + CollectPathsFromRegistry(registryKey, installPaths); + const string wowRegistryKey = @"SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall"; + CollectPathsFromRegistry(wowRegistryKey, installPaths); + + var installInfos = installPaths + .Select(a => new RiderInfo(a, false)).ToList(); + installInfos.AddRange(installInfosToolbox); + + return installInfos.ToArray(); + } + + private static string GetRelativePathToBuildTxt() + { + switch (SystemInfo.operatingSystemFamily) + { + case OperatingSystemFamily.Windows: + case OperatingSystemFamily.Linux: + return "../../build.txt"; + case OperatingSystemFamily.MacOSX: + return "Contents/Resources/build.txt"; + } + throw new Exception("Unknown OS"); + } + + private static void CollectPathsFromRegistry(string registryKey, List installPaths) + { + using (var key = Registry.LocalMachine.OpenSubKey(registryKey)) + { + if (key == null) return; + foreach (var subkeyName in key.GetSubKeyNames().Where(a => a.Contains("Rider"))) + { + using (var subkey = key.OpenSubKey(subkeyName)) + { + var folderObject = subkey?.GetValue("InstallLocation"); + if (folderObject == null) continue; + var folder = folderObject.ToString(); + var possiblePath = Path.Combine(folder, @"bin\rider64.exe"); + if (File.Exists(possiblePath)) + installPaths.Add(possiblePath); + } + } + } + } + + private static string[] CollectPathsFromToolbox(string toolboxRiderRootPath, string dirName, string searchPattern, + bool isMac) + { + if (!Directory.Exists(toolboxRiderRootPath)) + return new string[0]; + + var channelDirs = Directory.GetDirectories(toolboxRiderRootPath); + var paths = channelDirs.SelectMany(channelDir => + { + try + { + // use history.json - last entry stands for the active build https://jetbrains.slack.com/archives/C07KNP99D/p1547807024066500?thread_ts=1547731708.057700&cid=C07KNP99D + var historyFile = Path.Combine(channelDir, ".history.json"); + if (File.Exists(historyFile)) + { + var json = File.ReadAllText(historyFile); + var build = ToolboxHistory.GetLatestBuildFromJson(json); + if (build != null) + { + var buildDir = Path.Combine(channelDir, build); + var executablePaths = GetExecutablePaths(dirName, searchPattern, isMac, buildDir); + if (executablePaths.Any()) + return executablePaths; + } + } + + var channelFile = Path.Combine(channelDir, ".channel.settings.json"); + if (File.Exists(channelFile)) + { + var json = File.ReadAllText(channelFile).Replace("active-application", "active_application"); + var build = ToolboxInstallData.GetLatestBuildFromJson(json); + if (build != null) + { + var buildDir = Path.Combine(channelDir, build); + var executablePaths = GetExecutablePaths(dirName, searchPattern, isMac, buildDir); + if (executablePaths.Any()) + return executablePaths; + } + } + + // changes in toolbox json files format may brake the logic above, so return all found Rider installations + return Directory.GetDirectories(channelDir) + .SelectMany(buildDir => GetExecutablePaths(dirName, searchPattern, isMac, buildDir)); + } + catch (Exception e) + { + // do not write to Debug.Log, just log it. + Logger.Warn($"Failed to get RiderPath from {channelDir}", e); + } + + return new string[0]; + }) + .Where(c => !string.IsNullOrEmpty(c)) + .ToArray(); + return paths; + } + + private static string[] GetExecutablePaths(string dirName, string searchPattern, bool isMac, string buildDir) + { + var folder = new DirectoryInfo(Path.Combine(buildDir, dirName)); + if (!folder.Exists) + return new string[0]; + + if (!isMac) + return new[] {Path.Combine(folder.FullName, searchPattern)}.Where(File.Exists).ToArray(); + return folder.GetDirectories(searchPattern).Select(f => f.FullName) + .Where(Directory.Exists).ToArray(); + } + + // Disable the "field is never assigned" compiler warning. We never assign it, but Unity does. + // Note that Unity disable this warning in the generated C# projects +#pragma warning disable 0649 + + [Serializable] + class ToolboxHistory + { + public List history; + + [CanBeNull] + public static string GetLatestBuildFromJson(string json) + { + try + { +#if UNITY_4_7 || UNITY_5_5 + return JsonConvert.DeserializeObject(json).history.LastOrDefault()?.item.build; +#else + return JsonUtility.FromJson(json).history.LastOrDefault()?.item.build; +#endif + } + catch (Exception) + { + Logger.Warn($"Failed to get latest build from json {json}"); + } + + return null; + } + } + + [Serializable] + class ItemNode + { + public BuildNode item; + } + + [Serializable] + class BuildNode + { + public string build; + } + + // ReSharper disable once ClassNeverInstantiated.Global + [Serializable] + class ToolboxInstallData + { + // ReSharper disable once InconsistentNaming + public ActiveApplication active_application; + + [CanBeNull] + public static string GetLatestBuildFromJson(string json) + { + try + { +#if UNITY_4_7 || UNITY_5_5 + var toolbox = JsonConvert.DeserializeObject(json); +#else + var toolbox = JsonUtility.FromJson(json); +#endif + var builds = toolbox.active_application.builds; + if (builds != null && builds.Any()) + return builds.First(); + } + catch (Exception) + { + Logger.Warn($"Failed to get latest build from json {json}"); + } + + return null; + } + } + + [Serializable] + class ActiveApplication + { + // ReSharper disable once InconsistentNaming + public List builds; + } + +#pragma warning restore 0649 + + public struct RiderInfo + { + public string Presentation; + public string BuildVersion; + public string Path; + + public RiderInfo(string path, bool isToolbox) + { + BuildVersion = GetBuildNumber(path); + Path = new FileInfo(path).FullName; // normalize separators + var presentation = "Rider " + BuildVersion; + if (isToolbox) + presentation += " (JetBrains Toolbox)"; + + Presentation = presentation; + } + } + + private static class Logger + { + internal static void Warn(string message, Exception e = null) + { +#if RIDER_EDITOR_PLUGIN // can't be used in com.unity.ide.rider + Log.GetLog(typeof(RiderPathLocator).Name).Warn(message); + if (e != null) + Log.GetLog(typeof(RiderPathLocator).Name).Warn(e); +#else + Debug.LogError(message); + if (e != null) + Debug.LogException(e); +#endif + } + } + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Discovery.cs.meta b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Discovery.cs.meta new file mode 100644 index 0000000..fc30914 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Discovery.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: dab656c79e1985c40b31faebcda44442 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/EditorPluginInterop.cs b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/EditorPluginInterop.cs new file mode 100644 index 0000000..e217418 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/EditorPluginInterop.cs @@ -0,0 +1,123 @@ +using System; +using System.IO; +using System.Linq; +using System.Reflection; +using System.Runtime.CompilerServices; +using UnityEngine; + +namespace Packages.Rider.Editor +{ + public static class EditorPluginInterop + { + private static string ourEntryPointTypeName = "JetBrains.Rider.Unity.Editor.PluginEntryPoint"; + + private static void DisableSyncSolutionOnceCallBack() + { + // RiderScriptableSingleton.Instance.CsprojProcessedOnce = true; + // Otherwise EditorPlugin regenerates all on every AppDomain reload + var assembly = GetEditorPluginAssembly(); + if (assembly == null) return; + var type = assembly.GetType("JetBrains.Rider.Unity.Editor.Utils.RiderScriptableSingleton"); + if (type == null) return; + var baseType = type.BaseType; + if (baseType == null) return; + var instance = baseType.GetProperty("Instance"); + if (instance == null) return; + var instanceVal = instance.GetValue(null); + var member = type.GetProperty("CsprojProcessedOnce"); + if (member==null) return; + member.SetValue(instanceVal, true); + } + + public static string LogPath + { + get + { + try + { + var assembly = GetEditorPluginAssembly(); + if (assembly == null) return null; + var type = assembly.GetType(ourEntryPointTypeName); + if (type == null) return null; + var field = type.GetField("LogPath", BindingFlags.NonPublic | BindingFlags.Static); + if (field == null) return null; + return field.GetValue(null) as string; + } + catch (Exception) + { + Debug.Log("Unable to do OpenFile to Rider from dll, fallback to com.unity.ide.rider implementation."); + } + + return null; + } + } + + public static bool OpenFileDllImplementation(string path, int line, int column) + { + var openResult = false; + // reflection for fast OpenFileLineCol, when Rider is started and protocol connection is established + try + { + var assembly = GetEditorPluginAssembly(); + if (assembly == null) return false; + var type = assembly.GetType(ourEntryPointTypeName); + if (type == null) return false; + var field = type.GetField("OpenAssetHandler", BindingFlags.NonPublic | BindingFlags.Static); + if (field == null) return false; + var handlerInstance = field.GetValue(null); + var method = handlerInstance.GetType() + .GetMethod("OnOpenedAsset", new[] {typeof(string), typeof(int), typeof(int)}); + if (method == null) return false; + var assetFilePath = path; + if (!string.IsNullOrEmpty(path)) + assetFilePath = Path.GetFullPath(path); + + openResult = (bool) method.Invoke(handlerInstance, new object[] {assetFilePath, line, column}); + } + catch (Exception e) + { + Debug.Log("Unable to do OpenFile to Rider from dll, fallback to com.unity.ide.rider implementation."); + Debug.LogException(e); + } + + return openResult; + } + + public static Assembly GetEditorPluginAssembly() + { + var assemblies = AppDomain.CurrentDomain.GetAssemblies(); + var assembly = assemblies.FirstOrDefault(a => a.GetName().Name.Equals("JetBrains.Rider.Unity.Editor.Plugin.Full.Repacked")); + return assembly; + } + + public static bool EditorPluginIsLoadedFromAssets() + { + var currentDir = Directory.GetCurrentDirectory(); + var assembly = GetEditorPluginAssembly(); + if (assembly == null) + return false; + var location = assembly.Location; + return location.StartsWith(currentDir, StringComparison.InvariantCultureIgnoreCase); + } + + + internal static void InitEntryPoint() + { + try + { + DisableSyncSolutionOnceCallBack(); // is require for Rider prior to 2019.2 + + var type = GetEditorPluginAssembly().GetType("JetBrains.Rider.Unity.Editor.AfterUnity56.EntryPoint"); + if (type == null) + type = GetEditorPluginAssembly().GetType("JetBrains.Rider.Unity.Editor.UnitTesting.EntryPoint"); // oldRider + RuntimeHelpers.RunClassConstructor(type.TypeHandle); + } + catch (TypeInitializationException ex) + { + Debug.LogException(ex); + if (ex.InnerException != null) + Debug.LogException(ex.InnerException); + } + } + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/EditorPluginInterop.cs.meta b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/EditorPluginInterop.cs.meta new file mode 100644 index 0000000..2c34764 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/EditorPluginInterop.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f9bd02a3a916be64c9b47b1305149423 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/LoggingLevel.cs b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/LoggingLevel.cs new file mode 100644 index 0000000..0fb025d --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/LoggingLevel.cs @@ -0,0 +1,22 @@ +namespace Packages.Rider.Editor +{ + public enum LoggingLevel + { + /// + /// Do not use it in logging. Only in config to disable logging. + /// + OFF, + /// For errors that lead to application failure + FATAL, + /// For errors that must be shown in Exception Browser + ERROR, + /// Suspicious situations but not errors + WARN, + /// Regular level for important events + INFO, + /// Additional info for debbuging + VERBOSE, + /// Methods & callstacks tracing, more than verbose + TRACE, + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/LoggingLevel.cs.meta b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/LoggingLevel.cs.meta new file mode 100644 index 0000000..45be604 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/LoggingLevel.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 71bb46b59a9a7a346bbab1e185c723df +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/PluginSettings.cs b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/PluginSettings.cs new file mode 100644 index 0000000..b8298ea --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/PluginSettings.cs @@ -0,0 +1,153 @@ +using System.Reflection; +using Unity.CodeEditor; +using UnityEditor; +using UnityEngine; + +namespace Packages.Rider.Editor +{ + public class PluginSettings + { + public static LoggingLevel SelectedLoggingLevel + { + get => (LoggingLevel) EditorPrefs.GetInt("Rider_SelectedLoggingLevel", 0); + set + { + EditorPrefs.SetInt("Rider_SelectedLoggingLevel", (int) value); + } + } + + public static bool OverrideLangVersion + { + get { return EditorPrefs.GetBool("Rider_OverrideLangVersion", false); } + private set { EditorPrefs.SetBool("Rider_OverrideLangVersion", value);; } + } + + public static string LangVersion + { + get { return EditorPrefs.GetString("Rider_LangVersion", "4"); } + private set { EditorPrefs.SetString("Rider_LangVersion", value); } + } + + public static bool LogEventsCollectorEnabled + { + get { return EditorPrefs.GetBool("Rider_LogEventsCollectorEnabled", true); } + private set { EditorPrefs.SetBool("Rider_LogEventsCollectorEnabled", value); } + } + + + private static GUIStyle ourVersionInfoStyle = new GUIStyle() + { + normal = new GUIStyleState() + { + textColor = new Color(0, 0, 0, .6f), + }, + margin = new RectOffset(4, 4, 4, 4), + }; + + /// + /// Preferences menu layout + /// + /// + /// Contains all 3 toggles: Enable/Disable; Debug On/Off; Writing Launch File On/Off + /// + [SettingsProvider] + private static SettingsProvider RiderPreferencesItem() + { + if (!RiderScriptEditor.IsRiderInstallation(RiderScriptEditor.CurrentEditor)) + return null; + if (!RiderScriptEditor.ShouldLoadEditorPlugin(RiderScriptEditor.CurrentEditor)) + return null; + var provider = new SettingsProvider("Preferences/Rider", SettingsScope.User) + { + label = "Rider", + keywords = new[] { "Rider" }, + guiHandler = (searchContext) => + { + EditorGUIUtility.labelWidth = 200f; + EditorGUILayout.BeginVertical(); + + GUILayout.BeginVertical(); + LogEventsCollectorEnabled = + EditorGUILayout.Toggle(new GUIContent("Pass Console to Rider:"), LogEventsCollectorEnabled); + + GUILayout.EndVertical(); + + OverrideLangVersion = EditorGUILayout.Toggle(new GUIContent("Override LangVersion:"), OverrideLangVersion); + if (OverrideLangVersion) + { + var workaroundUrl = "https://gist.github.com/van800/875ce55eaf88d65b105d010d7b38a8d4"; + var workaroundText = "Use this workaround if overriding doesn't work."; + var helpLangVersion = @"Avoid overriding, unless there is no particular need."; + + LangVersion = + EditorGUILayout.TextField( + new GUIContent("LangVersion:", + helpLangVersion), LangVersion); + LinkButton(caption: workaroundText, url: workaroundUrl); + EditorGUILayout.HelpBox(helpLangVersion, MessageType.None); + } + + GUILayout.Label(""); + + if (!string.IsNullOrEmpty(EditorPluginInterop.LogPath)) + { + EditorGUILayout.BeginHorizontal(); + EditorGUILayout.PrefixLabel("Log file:"); + var previous = GUI.enabled; + GUI.enabled = previous && SelectedLoggingLevel != LoggingLevel.OFF; + var button = GUILayout.Button(new GUIContent("Open log")); + if (button) + { + //UnityEditorInternal.InternalEditorUtility.OpenFileAtLineExternal(PluginEntryPoint.LogPath, 0); + // works much faster than the commented code, when Rider is already started + CodeEditor.CurrentEditor.OpenProject(EditorPluginInterop.LogPath, 0, 0); + } + + GUI.enabled = previous; + GUILayout.EndHorizontal(); + } + + var loggingMsg = + @"Sets the amount of Rider Debug output. If you are about to report an issue, please select Verbose logging level and attach Unity console output to the issue."; + SelectedLoggingLevel = + (LoggingLevel) EditorGUILayout.EnumPopup(new GUIContent("Logging Level:", loggingMsg), + SelectedLoggingLevel); + + + EditorGUILayout.HelpBox(loggingMsg, MessageType.None); + + var githubRepo = "https://github.com/JetBrains/resharper-unity"; + var caption = $"{githubRepo}"; + LinkButton(caption: caption, url: githubRepo); + + GUILayout.FlexibleSpace(); + GUILayout.BeginHorizontal(); + + GUILayout.FlexibleSpace(); + var version = Assembly.GetExecutingAssembly().GetName().Version; + GUILayout.Label("Plugin version: " + version, ourVersionInfoStyle); + + GUILayout.EndHorizontal(); + + EditorGUILayout.EndVertical(); + } + }; + return provider; + } + + private static void LinkButton(string caption, string url) + { + var style = GUI.skin.label; + style.richText = true; + + var bClicked = GUILayout.Button(caption, style); + + var rect = GUILayoutUtility.GetLastRect(); + rect.width = style.CalcSize(new GUIContent(caption)).x; + EditorGUIUtility.AddCursorRect(rect, MouseCursor.Link); + + if (bClicked) + Application.OpenURL(url); + } + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/PluginSettings.cs.meta b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/PluginSettings.cs.meta new file mode 100644 index 0000000..a2b0299 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/PluginSettings.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1bfe12aa306c0c74db4f4f1a1a0ae5ce +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/ProjectGeneration.cs b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/ProjectGeneration.cs new file mode 100644 index 0000000..aafbad6 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/ProjectGeneration.cs @@ -0,0 +1,938 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Security; +using System.Security.Cryptography; +using System.Text; +using System.Text.RegularExpressions; +using Packages.Rider.Editor.Util; +using UnityEditor; +using UnityEditor.Compilation; +using UnityEditor.PackageManager; +using UnityEditorInternal; +using UnityEngine; + +namespace Packages.Rider.Editor +{ + public interface IGenerator + { + bool SyncIfNeeded(IEnumerable affectedFiles, IEnumerable reimportedFiles); + void Sync(); + bool HasSolutionBeenGenerated(); + string SolutionFile(); + string ProjectDirectory { get; } + void GenerateAll(bool generateAll); + } + + public interface IAssemblyNameProvider + { + string GetAssemblyNameFromScriptPath(string path); + IEnumerable GetAllAssemblies(Func shouldFileBePartOfSolution); + IEnumerable GetAllAssetPaths(); + UnityEditor.PackageManager.PackageInfo FindForAssetPath(string assetPath); + } + + public struct TestSettings + { + public bool ShouldSync; + public Dictionary SyncPath; + } + + class AssemblyNameProvider : IAssemblyNameProvider + { + public string GetAssemblyNameFromScriptPath(string path) + { + return CompilationPipeline.GetAssemblyNameFromScriptPath(path); + } + + public IEnumerable GetAllAssemblies(Func shouldFileBePartOfSolution) + { + return CompilationPipeline.GetAssemblies() + .Where(i => 0 < i.sourceFiles.Length && i.sourceFiles.Any(shouldFileBePartOfSolution)); + } + + public IEnumerable GetAllAssetPaths() + { + return AssetDatabase.GetAllAssetPaths(); + } + + public UnityEditor.PackageManager.PackageInfo FindForAssetPath(string assetPath) + { + return UnityEditor.PackageManager.PackageInfo.FindForAssetPath(assetPath); + } + } + + + public class ProjectGeneration : IGenerator + { + enum ScriptingLanguage + { + None, + CSharp + } + + public static readonly string MSBuildNamespaceUri = "http://schemas.microsoft.com/developer/msbuild/2003"; + + const string k_WindowsNewline = "\r\n"; + + /// + /// Map source extensions to ScriptingLanguages + /// + static readonly Dictionary k_BuiltinSupportedExtensions = + new Dictionary + { + {"cs", ScriptingLanguage.CSharp}, + {"uxml", ScriptingLanguage.None}, + {"uss", ScriptingLanguage.None}, + {"shader", ScriptingLanguage.None}, + {"compute", ScriptingLanguage.None}, + {"cginc", ScriptingLanguage.None}, + {"hlsl", ScriptingLanguage.None}, + {"glslinc", ScriptingLanguage.None} + }; + + string m_SolutionProjectEntryTemplate = string.Join("\r\n", + @"Project(""{{{0}}}"") = ""{1}"", ""{2}"", ""{{{3}}}""", + @"EndProject").Replace(" ", "\t"); + + string m_SolutionProjectConfigurationTemplate = string.Join("\r\n", + @" {{{0}}}.Debug|Any CPU.ActiveCfg = Debug|Any CPU", + @" {{{0}}}.Debug|Any CPU.Build.0 = Debug|Any CPU", + @" {{{0}}}.Release|Any CPU.ActiveCfg = Release|Any CPU", + @" {{{0}}}.Release|Any CPU.Build.0 = Release|Any CPU").Replace(" ", "\t"); + + static readonly string[] k_ReimportSyncExtensions = {".dll", ".asmdef"}; + + /// + /// Map ScriptingLanguages to project extensions + /// + /*static readonly Dictionary k_ProjectExtensions = new Dictionary + { + { ScriptingLanguage.CSharp, ".csproj" }, + { ScriptingLanguage.None, ".csproj" }, + };*/ + static readonly Regex k_ScriptReferenceExpression = new Regex( + @"^Library.ScriptAssemblies.(?(?.*)\.dll$)", + RegexOptions.Compiled | RegexOptions.IgnoreCase); + + string[] m_ProjectSupportedExtensions = new string[0]; + bool m_ShouldGenerateAll; + + public string ProjectDirectory { get; } + + public void GenerateAll(bool generateAll) + { + m_ShouldGenerateAll = generateAll; + } + + public TestSettings Settings { get; set; } + readonly string m_ProjectName; + readonly IAssemblyNameProvider m_AssemblyNameProvider; + + const string k_ToolsVersion = "4.0"; + const string k_ProductVersion = "10.0.20506"; + const string k_BaseDirectory = "."; + const string k_TargetFrameworkVersion = "v4.7.1"; + const string k_TargetLanguageVersion = "latest"; + + public ProjectGeneration() : this(Directory.GetParent(Application.dataPath).FullName, new AssemblyNameProvider()) + { + } + + public ProjectGeneration(string tempDirectory) : this(tempDirectory, new AssemblyNameProvider()) + { + } + + public ProjectGeneration(string tempDirectory, IAssemblyNameProvider assemblyNameProvider) + { + Settings = new TestSettings {ShouldSync = true}; + ProjectDirectory = tempDirectory.Replace('\\', '/'); + m_ProjectName = Path.GetFileName(ProjectDirectory); + m_AssemblyNameProvider = assemblyNameProvider; + } + + /// + /// Syncs the scripting solution if any affected files are relevant. + /// + /// + /// Whether the solution was synced. + /// + /// + /// A set of files whose status has changed + /// + /// + /// A set of files that got reimported + /// + public bool SyncIfNeeded(IEnumerable affectedFiles, IEnumerable reimportedFiles) + { + SetupProjectSupportedExtensions(); + + if (HasFilesBeenModified(affectedFiles, reimportedFiles)) + { + Sync(); + return true; + } + + return false; + } + + bool HasFilesBeenModified(IEnumerable affectedFiles, IEnumerable reimportedFiles) + { + return affectedFiles.Any(ShouldFileBePartOfSolution) || reimportedFiles.Any(ShouldSyncOnReimportedAsset); + } + + static bool ShouldSyncOnReimportedAsset(string asset) + { + return k_ReimportSyncExtensions.Contains(new FileInfo(asset).Extension); + } + + public void Sync() + { + SetupProjectSupportedExtensions(); + var types = GetAssetPostprocessorTypes(); + bool externalCodeAlreadyGeneratedProjects = OnPreGeneratingCSProjectFiles(types); + + if (!externalCodeAlreadyGeneratedProjects) + { + GenerateAndWriteSolutionAndProjects(types); + } + + OnGeneratedCSProjectFiles(types); + } + + public bool HasSolutionBeenGenerated() + { + return File.Exists(SolutionFile()); + } + + void SetupProjectSupportedExtensions() + { + m_ProjectSupportedExtensions = EditorSettings.projectGenerationUserExtensions; + } + + bool ShouldFileBePartOfSolution(string file) + { + string extension = Path.GetExtension(file); + + // Exclude files coming from packages except if they are internalized. + if (!m_ShouldGenerateAll && IsInternalizedPackagePath(file)) + { + return false; + } + + // Dll's are not scripts but still need to be included.. + if (extension == ".dll") + return true; + + if (file.ToLower().EndsWith(".asmdef")) + return true; + + return IsSupportedExtension(extension); + } + + bool IsSupportedExtension(string extension) + { + extension = extension.TrimStart('.'); + if (k_BuiltinSupportedExtensions.ContainsKey(extension)) + return true; + if (m_ProjectSupportedExtensions.Contains(extension)) + return true; + return false; + } + + static ScriptingLanguage ScriptingLanguageFor(Assembly island) + { + return ScriptingLanguageFor(GetExtensionOfSourceFiles(island.sourceFiles)); + } + + static string GetExtensionOfSourceFiles(string[] files) + { + return files.Length > 0 ? GetExtensionOfSourceFile(files[0]) : "NA"; + } + + static string GetExtensionOfSourceFile(string file) + { + var ext = Path.GetExtension(file).ToLower(); + ext = ext.Substring(1); //strip dot + return ext; + } + + static ScriptingLanguage ScriptingLanguageFor(string extension) + { + return k_BuiltinSupportedExtensions.TryGetValue(extension.TrimStart('.'), out var result) + ? result + : ScriptingLanguage.None; + } + + public void GenerateAndWriteSolutionAndProjects(Type[] types) + { + // Only synchronize islands that have associated source files and ones that we actually want in the project. + // This also filters out DLLs coming from .asmdef files in packages. + var assemblies = m_AssemblyNameProvider.GetAllAssemblies(ShouldFileBePartOfSolution); + + var allAssetProjectParts = GenerateAllAssetProjectParts(); + + var monoIslands = assemblies.ToList(); + + SyncSolution(monoIslands, types); + var allProjectIslands = RelevantIslandsForMode(monoIslands).ToList(); + foreach (Assembly assembly in allProjectIslands) + { + var responseFileData = ParseResponseFileData(assembly); + SyncProject(assembly, allAssetProjectParts, responseFileData, allProjectIslands, types); + } + } + + IEnumerable ParseResponseFileData(Assembly assembly) + { + var systemReferenceDirectories = + CompilationPipeline.GetSystemAssemblyDirectories(assembly.compilerOptions.ApiCompatibilityLevel); + + Dictionary responseFilesData = assembly.compilerOptions.ResponseFiles.ToDictionary( + x => x, x => CompilationPipeline.ParseResponseFile( + Path.Combine(ProjectDirectory, x), + ProjectDirectory, + systemReferenceDirectories + )); + + Dictionary responseFilesWithErrors = responseFilesData.Where(x => x.Value.Errors.Any()) + .ToDictionary(x => x.Key, x => x.Value); + + if (responseFilesWithErrors.Any()) + { + foreach (var error in responseFilesWithErrors) + foreach (var valueError in error.Value.Errors) + { + Debug.LogError($"{error.Key} Parse Error : {valueError}"); + } + } + + return responseFilesData.Select(x => x.Value); + } + + Dictionary GenerateAllAssetProjectParts() + { + Dictionary stringBuilders = new Dictionary(); + + foreach (string asset in m_AssemblyNameProvider.GetAllAssetPaths()) + { + // Exclude files coming from packages except if they are internalized. + if (!m_ShouldGenerateAll && IsInternalizedPackagePath(asset)) + { + continue; + } + + string extension = Path.GetExtension(asset); + if (IsSupportedExtension(extension) && ScriptingLanguage.None == ScriptingLanguageFor(extension)) + { + // Find assembly the asset belongs to by adding script extension and using compilation pipeline. + var assemblyName = m_AssemblyNameProvider.GetAssemblyNameFromScriptPath(asset + ".cs"); + + if (string.IsNullOrEmpty(assemblyName)) + { + continue; + } + + assemblyName = FileSystemUtil.FileNameWithoutExtension(assemblyName); + + if (!stringBuilders.TryGetValue(assemblyName, out var projectBuilder)) + { + projectBuilder = new StringBuilder(); + stringBuilders[assemblyName] = projectBuilder; + } + + projectBuilder.Append(" ") + .Append(k_WindowsNewline); + } + } + + var result = new Dictionary(); + + foreach (var entry in stringBuilders) + result[entry.Key] = entry.Value.ToString(); + + return result; + } + + bool IsInternalizedPackagePath(string file) + { + if (string.IsNullOrWhiteSpace(file)) + { + return false; + } + + var packageInfo = m_AssemblyNameProvider.FindForAssetPath(file); + if (packageInfo == null) + { + return false; + } + + var packageSource = packageInfo.source; + return packageSource != PackageSource.Embedded && packageSource != PackageSource.Local; + } + + void SyncProject( + Assembly island, + Dictionary allAssetsProjectParts, + IEnumerable responseFilesData, + List allProjectIslands, + Type[] types) + { + SyncProjectFileIfNotChanged(ProjectFile(island), + ProjectText(island, allAssetsProjectParts, responseFilesData, allProjectIslands), types); + } + + void SyncProjectFileIfNotChanged(string path, string newContents, Type[] types) + { + if (Path.GetExtension(path) == ".csproj") + { + newContents = OnGeneratedCSProject(path, newContents, types); + } + + SyncFileIfNotChanged(path, newContents); + } + + void SyncSolutionFileIfNotChanged(string path, string newContents, Type[] types) + { + newContents = OnGeneratedSlnSolution(path, newContents, types); + + SyncFileIfNotChanged(path, newContents); + } + + static List SafeGetTypes(System.Reflection.Assembly a) + { + List ret; + + try + { + ret = a.GetTypes().ToList(); + } + catch (System.Reflection.ReflectionTypeLoadException rtl) + { + ret = rtl.Types.ToList(); + } + catch (Exception) + { + return new List(); + } + + return ret.Where(r => r != null).ToList(); + } + + static void OnGeneratedCSProjectFiles(Type[] types) + { + var args = new object[0]; + foreach (var type in types) + { + var method = type.GetMethod("OnGeneratedCSProjectFiles", + System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.NonPublic | + System.Reflection.BindingFlags.Static); + if (method == null) + { + continue; + } + + method.Invoke(null, args); + } + } + + public static Type[] GetAssetPostprocessorTypes() + { + return TypeCache.GetTypesDerivedFrom().ToArray(); // doesn't find types from EditorPlugin, which is fine + } + + static bool OnPreGeneratingCSProjectFiles(Type[] types) + { + bool result = false; + foreach (var type in types) + { + var args = new object[0]; + var method = type.GetMethod("OnPreGeneratingCSProjectFiles", + System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.NonPublic | + System.Reflection.BindingFlags.Static); + if (method == null) + { + continue; + } + + var returnValue = method.Invoke(null, args); + if (method.ReturnType == typeof(bool)) + { + result |= (bool) returnValue; + } + } + + return result; + } + + static string OnGeneratedCSProject(string path, string content, Type[] types) + { + foreach (var type in types) + { + var args = new[] {path, content}; + var method = type.GetMethod("OnGeneratedCSProject", + System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.NonPublic | + System.Reflection.BindingFlags.Static); + if (method == null) + { + continue; + } + + var returnValue = method.Invoke(null, args); + if (method.ReturnType == typeof(string)) + { + content = (string) returnValue; + } + } + + return content; + } + + static string OnGeneratedSlnSolution(string path, string content, Type[] types) + { + foreach (var type in types) + { + var args = new[] {path, content}; + var method = type.GetMethod("OnGeneratedSlnSolution", + System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.NonPublic | + System.Reflection.BindingFlags.Static); + if (method == null) + { + continue; + } + + var returnValue = method.Invoke(null, args); + if (method.ReturnType == typeof(string)) + { + content = (string) returnValue; + } + } + + return content; + } + + void SyncFileIfNotChanged(string filename, string newContents) + { + if (File.Exists(filename) && + newContents == File.ReadAllText(filename)) + { + return; + } + + if (Settings.ShouldSync) + { + File.WriteAllText(filename, newContents, Encoding.UTF8); + } + else + { + var utf8 = Encoding.UTF8; + byte[] utfBytes = utf8.GetBytes(newContents); + Settings.SyncPath[filename] = utf8.GetString(utfBytes, 0, utfBytes.Length); + } + } + + string ProjectText(Assembly assembly, + Dictionary allAssetsProjectParts, + IEnumerable responseFilesData, + List allProjectIslands) + { + var projectBuilder = new StringBuilder(ProjectHeader(assembly, responseFilesData)); + var references = new List(); + var projectReferences = new List(); + + foreach (string file in assembly.sourceFiles) + { + if (!ShouldFileBePartOfSolution(file)) + continue; + + var extension = Path.GetExtension(file).ToLower(); + var fullFile = EscapedRelativePathFor(file); + if (".dll" != extension) + { + projectBuilder.Append(" ").Append(k_WindowsNewline); + } + else + { + references.Add(fullFile); + } + } + + var assemblyName = FileSystemUtil.FileNameWithoutExtension(assembly.outputPath); + + // Append additional non-script files that should be included in project generation. + if (allAssetsProjectParts.TryGetValue(assemblyName, out var additionalAssetsForProject)) + projectBuilder.Append(additionalAssetsForProject); + + var islandRefs = references.Union(assembly.allReferences); + + foreach (string reference in islandRefs) + { + if (reference.EndsWith("/UnityEditor.dll", StringComparison.Ordinal) + || reference.EndsWith("/UnityEngine.dll", StringComparison.Ordinal) + || reference.EndsWith("\\UnityEditor.dll", StringComparison.Ordinal) + || reference.EndsWith("\\UnityEngine.dll", StringComparison.Ordinal)) + continue; + + var match = k_ScriptReferenceExpression.Match(reference); + if (match.Success) + { + // assume csharp language + // Add a reference to a project except if it's a reference to a script assembly + // that we are not generating a project for. This will be the case for assemblies + // coming from .assembly.json files in non-internalized packages. + var dllName = match.Groups["dllname"].Value; + if (allProjectIslands.Any(i => Path.GetFileName(i.outputPath) == dllName)) + { + projectReferences.Add(match); + continue; + } + } + + string fullReference = Path.IsPathRooted(reference) ? reference : Path.Combine(ProjectDirectory, reference); + + AppendReference(fullReference, projectBuilder); + } + + var responseRefs = responseFilesData.SelectMany(x => x.FullPathReferences.Select(r => r)); + foreach (var reference in responseRefs) + { + AppendReference(reference, projectBuilder); + } + + if (0 < projectReferences.Count) + { + projectBuilder.AppendLine(" "); + projectBuilder.AppendLine(" "); + foreach (Match reference in projectReferences) + { + var referencedProject = reference.Groups["project"].Value; + + projectBuilder.Append(" ").Append(k_WindowsNewline); + projectBuilder.Append(" {") + .Append(ProjectGuid(Path.Combine("Temp", reference.Groups["project"].Value + ".dll"))).Append("}") + .Append(k_WindowsNewline); + projectBuilder.Append(" ").Append(referencedProject).Append("").Append(k_WindowsNewline); + projectBuilder.AppendLine(" "); + } + } + + projectBuilder.Append(ProjectFooter()); + return projectBuilder.ToString(); + } + + static void AppendReference(string fullReference, StringBuilder projectBuilder) + { + //replace \ with / and \\ with / + var escapedFullPath = SecurityElement.Escape(fullReference); + escapedFullPath = escapedFullPath.Replace("\\\\", "/").Replace("\\", "/"); + projectBuilder.Append(" ").Append(k_WindowsNewline); + projectBuilder.Append(" ").Append(escapedFullPath).Append("").Append(k_WindowsNewline); + projectBuilder.Append(" ").Append(k_WindowsNewline); + } + + public string ProjectFile(Assembly assembly) + { + return Path.Combine(ProjectDirectory, $"{FileSystemUtil.FileNameWithoutExtension(assembly.outputPath)}.csproj"); + } + + public string SolutionFile() + { + return Path.Combine(ProjectDirectory, $"{m_ProjectName}.sln"); + } + + string ProjectHeader( + Assembly island, + IEnumerable responseFilesData + ) + { + var arguments = new object[] + { + k_ToolsVersion, k_ProductVersion, ProjectGuid(island.outputPath), + InternalEditorUtility.GetEngineAssemblyPath(), + InternalEditorUtility.GetEditorAssemblyPath(), + string.Join(";", + new[] {"DEBUG", "TRACE"}.Concat(EditorUserBuildSettings.activeScriptCompilationDefines).Concat(island.defines) + .Concat(responseFilesData.SelectMany(x => x.Defines)).Distinct().ToArray()), + MSBuildNamespaceUri, + FileSystemUtil.FileNameWithoutExtension(island.outputPath), + EditorSettings.projectGenerationRootNamespace, + k_TargetFrameworkVersion, + PluginSettings.OverrideLangVersion?PluginSettings.LangVersion:k_TargetLanguageVersion, + k_BaseDirectory, + island.compilerOptions.AllowUnsafeCode | responseFilesData.Any(x => x.Unsafe) + }; + + try + { + return string.Format(GetProjectHeaderTemplate(), arguments); + } + catch (Exception) + { + throw new NotSupportedException( + "Failed creating c# project because the c# project header did not have the correct amount of arguments, which is " + + arguments.Length); + } + } + + static string GetSolutionText() + { + return string.Join("\r\n", + @"", + @"Microsoft Visual Studio Solution File, Format Version {0}", + @"# Visual Studio {1}", + @"{2}", + @"Global", + @" GlobalSection(SolutionConfigurationPlatforms) = preSolution", + @" Debug|Any CPU = Debug|Any CPU", + @" Release|Any CPU = Release|Any CPU", + @" EndGlobalSection", + @" GlobalSection(ProjectConfigurationPlatforms) = postSolution", + @"{3}", + @" EndGlobalSection", + @" GlobalSection(SolutionProperties) = preSolution", + @" HideSolutionNode = FALSE", + @" EndGlobalSection", + @"EndGlobal", + @"").Replace(" ", "\t"); + } + + static string GetProjectFooterTemplate() + { + return string.Join("\r\n", + @" ", + @" ", + @" ", + @"", + @""); + } + + static string GetProjectHeaderTemplate() + { + var header = new[] + { + @"", + @"", + @" ", + @" {10}", + @" <_TargetFrameworkDirectories>non_empty_path_generated_by_unity.rider.package", + @" <_FullFrameworkReferenceAssemblyPaths>non_empty_path_generated_by_unity.rider.package", + @" true", + @" ", + @" ", + @" Debug", + @" AnyCPU", + @" {1}", + @" 2.0", + @" {8}", + @" {{{2}}}", + @" Library", + @" Properties", + @" {7}", + @" {9}", + @" 512", + @" {11}", + @" ", + @" ", + @" true", + @" full", + @" false", + @" Temp\bin\Debug\", + @" {5}", + @" prompt", + @" 4", + @" 0169", + @" {12}", + @" ", + @" ", + @" pdbonly", + @" true", + @" Temp\bin\Release\", + @" prompt", + @" 4", + @" 0169", + @" {12}", + @" " + }; + + var forceExplicitReferences = new[] + { + @" ", + @" true", + @" true", + @" false", + @" false", + @" false", + @" " + }; + + var itemGroupStart = new[] + { + @" " + }; + + var footer = new[] + { + @" ", + @" {3}", + @" ", + @" ", + @" {4}", + @" ", + @" ", + @" ", + @"" + }; + + var text = header.Concat(forceExplicitReferences).Concat(itemGroupStart).Concat(footer).ToArray(); + return string.Join("\r\n", text); + } + + void SyncSolution(IEnumerable islands, Type[] types) + { + SyncSolutionFileIfNotChanged(SolutionFile(), SolutionText(islands), types); + } + + string SolutionText(IEnumerable islands) + { + var fileversion = "11.00"; + var vsversion = "2010"; + + var relevantIslands = RelevantIslandsForMode(islands); + string projectEntries = GetProjectEntries(relevantIslands); + string projectConfigurations = string.Join(k_WindowsNewline, + relevantIslands.Select(i => GetProjectActiveConfigurations(ProjectGuid(i.outputPath))).ToArray()); + return string.Format(GetSolutionText(), fileversion, vsversion, projectEntries, projectConfigurations); + } + + static IEnumerable RelevantIslandsForMode(IEnumerable islands) + { + IEnumerable relevantIslands = islands.Where(i => ScriptingLanguage.CSharp == ScriptingLanguageFor(i)); + return relevantIslands; + } + + /// + /// Get a Project("{guid}") = "MyProject", "MyProject.unityproj", "{projectguid}" + /// entry for each relevant language + /// + string GetProjectEntries(IEnumerable islands) + { + var projectEntries = islands.Select(i => string.Format( + m_SolutionProjectEntryTemplate, + SolutionGuid(i), FileSystemUtil.FileNameWithoutExtension(i.outputPath), Path.GetFileName(ProjectFile(i)), + ProjectGuid(i.outputPath) + )); + + return string.Join(k_WindowsNewline, projectEntries.ToArray()); + } + + /// + /// Generate the active configuration string for a given project guid + /// + string GetProjectActiveConfigurations(string projectGuid) + { + return string.Format( + m_SolutionProjectConfigurationTemplate, + projectGuid); + } + + string EscapedRelativePathFor(string file) + { + var projectDir = ProjectDirectory.Replace('/', '\\'); + file = file.Replace('/', '\\'); + var path = SkipPathPrefix(file, projectDir); + + var packageInfo = m_AssemblyNameProvider.FindForAssetPath(path.Replace('\\', '/')); + if (packageInfo != null) + { + // We have to normalize the path, because the PackageManagerRemapper assumes + // dir seperators will be os specific. + var absolutePath = Path.GetFullPath(NormalizePath(path)).Replace('/', '\\'); + path = SkipPathPrefix(absolutePath, projectDir); + } + + return SecurityElement.Escape(path); + } + + static string SkipPathPrefix(string path, string prefix) + { + if (path.Replace("\\", "/").StartsWith($"{prefix}/")) + return path.Substring(prefix.Length + 1); + return path; + } + + static string NormalizePath(string path) + { + if (Path.DirectorySeparatorChar == '\\') + return path.Replace('/', Path.DirectorySeparatorChar); + return path.Replace('\\', Path.DirectorySeparatorChar); + } + + + string ProjectGuid(string assembly) + { + return SolutionGuidGenerator.GuidForProject(m_ProjectName + FileSystemUtil.FileNameWithoutExtension(assembly)); + } + + string SolutionGuid(Assembly island) + { + return SolutionGuidGenerator.GuidForSolution(m_ProjectName, GetExtensionOfSourceFiles(island.sourceFiles)); + } + + static string ProjectFooter() + { + return GetProjectFooterTemplate(); + } + + static string GetProjectExtension() + { + return ".csproj"; + } + } + + public static class SolutionGuidGenerator + { + public static string GuidForProject(string projectName) + { + return ComputeGuidHashFor(projectName + "salt"); + } + + public static string GuidForSolution(string projectName, string sourceFileExtension) + { + if (sourceFileExtension.ToLower() == "cs") + // GUID for a C# class library: http://www.codeproject.com/Reference/720512/List-of-Visual-Studio-Project-Type-GUIDs + return "FAE04EC0-301F-11D3-BF4B-00C04F79EFBC"; + + return ComputeGuidHashFor(projectName); + } + + static string ComputeGuidHashFor(string input) + { + var hash = MD5.Create().ComputeHash(Encoding.Default.GetBytes(input)); + return HashAsGuid(HashToString(hash)); + } + + static string HashAsGuid(string hash) + { + var guid = hash.Substring(0, 8) + "-" + hash.Substring(8, 4) + "-" + hash.Substring(12, 4) + "-" + + hash.Substring(16, 4) + "-" + hash.Substring(20, 12); + return guid.ToUpper(); + } + + static string HashToString(byte[] bs) + { + var sb = new StringBuilder(); + foreach (byte b in bs) + sb.Append(b.ToString("x2")); + return sb.ToString(); + } + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/ProjectGeneration.cs.meta b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/ProjectGeneration.cs.meta new file mode 100644 index 0000000..a53efb7 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/ProjectGeneration.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8df45492ff0815a488744d61efcecba7 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderInitializer.cs b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderInitializer.cs new file mode 100644 index 0000000..388f258 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderInitializer.cs @@ -0,0 +1,47 @@ +using System; +using System.IO; +using System.Linq; +using System.Reflection; +using UnityEngine; + +namespace Packages.Rider.Editor +{ + internal class RiderInitializer + { + public void Initialize(string editorPath) + { + if (EditorPluginInterop.EditorPluginIsLoadedFromAssets()) + { + Debug.LogError($"Please delete {EditorPluginInterop.GetEditorPluginAssembly().Location}. Unity 2019.2+ loads it directly from Rider installation. To disable this, open Rider's settings, search and uncheck 'Automatically install and update Rider's Unity editor plugin'."); + return; + } + + var dllName = "JetBrains.Rider.Unity.Editor.Plugin.Full.Repacked.dll"; + var relPath = "../../plugins/rider-unity/EditorPlugin"; + if (SystemInfo.operatingSystemFamily == OperatingSystemFamily.MacOSX) + relPath = "Contents/plugins/rider-unity/EditorPlugin"; + var dllFile = new FileInfo(Path.Combine(Path.Combine(editorPath, relPath), dllName)); + + if (dllFile.Exists) + { + // doesn't lock assembly on disk + var bytes = File.ReadAllBytes(dllFile.FullName); + var pdbFile = new FileInfo(Path.ChangeExtension(dllFile.FullName, ".pdb")); + if (pdbFile.Exists) + { + AppDomain.CurrentDomain.Load(bytes, File.ReadAllBytes(pdbFile.FullName)); + } + else + { + AppDomain.CurrentDomain.Load(bytes); + // AppDomain.CurrentDomain.Load(AssemblyName.GetAssemblyName(dllFile.FullName)); // use this for external source debug + } + EditorPluginInterop.InitEntryPoint(); + } + else + { + Debug.Log((object) ($"Unable to find Rider EditorPlugin {dllFile.FullName} for Unity ")); + } + } + } +} diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderInitializer.cs.meta b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderInitializer.cs.meta new file mode 100644 index 0000000..b37687a --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderInitializer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f5a0cc9645f0e2d4fb816156dcf3f4dd +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderScriptEditor.cs b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderScriptEditor.cs new file mode 100644 index 0000000..9a42bbe --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderScriptEditor.cs @@ -0,0 +1,344 @@ +using System; +using System.Diagnostics; +using System.IO; +using System.Linq; +using Packages.Rider.Editor.Util; +using Unity.CodeEditor; +using UnityEditor; +using UnityEngine; +using Debug = UnityEngine.Debug; + +namespace Packages.Rider.Editor +{ + [InitializeOnLoad] + public class RiderScriptEditor : IExternalCodeEditor + { + IDiscovery m_Discoverability; + IGenerator m_ProjectGeneration; + RiderInitializer m_Initiliazer = new RiderInitializer(); + + static RiderScriptEditor() + { + try + { + var projectGeneration = new ProjectGeneration(); + var editor = new RiderScriptEditor(new Discovery(), projectGeneration); + CodeEditor.Register(editor); + + var path = GetEditorRealPath(CodeEditor.CurrentEditorInstallation); + if (IsRiderInstallation(path)) + { + if (!FileSystemUtil.EditorPathExists(path)) // previously used rider was removed + { + var newEditor = editor.Installations.Last().Path; + CodeEditor.SetExternalScriptEditor(newEditor); + path = newEditor; + } + + editor.CreateSolutionIfDoesntExist(); + if (ShouldLoadEditorPlugin(path)) + { + editor.m_Initiliazer.Initialize(path); + } + + InitProjectFilesWatcher(); + } + } + catch (Exception e) + { + Debug.LogException(e); + } + } + + private static void InitProjectFilesWatcher() + { + var watcher = new FileSystemWatcher(); + watcher.Path = Directory.GetCurrentDirectory(); + watcher.NotifyFilter = NotifyFilters.LastWrite; //Watch for changes in LastWrite times + watcher.Filter = "*.*"; + + // Add event handlers. + watcher.Changed += OnChanged; + watcher.Created += OnChanged; + + watcher.EnableRaisingEvents = true; // Begin watching. + + AppDomain.CurrentDomain.DomainUnload += (EventHandler) ((_, __) => + { + watcher.Dispose(); + }); + } + + private static void OnChanged(object sender, FileSystemEventArgs e) + { + var extension = Path.GetExtension(e.FullPath); + if (extension == ".sln" || extension == ".csproj") + RiderScriptEditorData.instance.HasChanges = true; + } + + private static string GetEditorRealPath(string path) + { + if (string.IsNullOrEmpty(path)) + { + return path; + } + + if (!FileSystemUtil.EditorPathExists(path)) + return path; + + if (SystemInfo.operatingSystemFamily != OperatingSystemFamily.Windows) + { + var realPath = FileSystemUtil.GetFinalPathName(path); + + // case of snap installation + if (SystemInfo.operatingSystemFamily == OperatingSystemFamily.Linux) + { + if (new FileInfo(path).Name.ToLowerInvariant() == "rider" && + new FileInfo(realPath).Name.ToLowerInvariant() == "snap") + { + var snapInstallPath = "/snap/rider/current/bin/rider.sh"; + if (new FileInfo(snapInstallPath).Exists) + return snapInstallPath; + } + } + + // in case of symlink + return realPath; + } + + return path; + } + + const string unity_generate_all = "unity_generate_all_csproj"; + + public RiderScriptEditor(IDiscovery discovery, IGenerator projectGeneration) + { + m_Discoverability = discovery; + m_ProjectGeneration = projectGeneration; + } + + private static string[] defaultExtensions + { + get + { + var customExtensions = new[] {"json", "asmdef", "log"}; + return EditorSettings.projectGenerationBuiltinExtensions.Concat(EditorSettings.projectGenerationUserExtensions) + .Concat(customExtensions).Distinct().ToArray(); + } + } + + private static string[] HandledExtensions + { + get + { + return HandledExtensionsString.Split(new[] {';'}, StringSplitOptions.RemoveEmptyEntries).Select(s => s.TrimStart('.', '*')) + .ToArray(); + } + } + + private static string HandledExtensionsString + { + get { return EditorPrefs.GetString("Rider_UserExtensions", string.Join(";", defaultExtensions));} + set { EditorPrefs.SetString("Rider_UserExtensions", value); } + } + + private static bool SupportsExtension(string path) + { + var extension = Path.GetExtension(path); + if (string.IsNullOrEmpty(extension)) + return false; + return HandledExtensions.Contains(extension.TrimStart('.')); + } + + public void OnGUI() + { + var prevGenerate = EditorPrefs.GetBool(unity_generate_all, false); + var generateAll = EditorGUILayout.Toggle("Generate all .csproj files.", prevGenerate); + if (generateAll != prevGenerate) + { + EditorPrefs.SetBool(unity_generate_all, generateAll); + } + + m_ProjectGeneration.GenerateAll(generateAll); + + if (ShouldLoadEditorPlugin(CurrentEditor)) + { + HandledExtensionsString = EditorGUILayout.TextField(new GUIContent("Extensions handled: "), HandledExtensionsString); + } + } + + public void SyncIfNeeded(string[] addedFiles, string[] deletedFiles, string[] movedFiles, string[] movedFromFiles, + string[] importedFiles) + { + m_ProjectGeneration.SyncIfNeeded(addedFiles.Union(deletedFiles).Union(movedFiles).Union(movedFromFiles), + importedFiles); + } + + public void SyncAll() + { + AssetDatabase.Refresh(); + if (RiderScriptEditorData.instance.HasChanges) + { + m_ProjectGeneration.Sync(); + RiderScriptEditorData.instance.HasChanges = false; + } + } + + public void Initialize(string editorInstallationPath) // is called each time ExternalEditor is changed + { + m_ProjectGeneration.Sync(); // regenerate csproj and sln for new editor + } + + public bool OpenProject(string path, int line, int column) + { + if (path != "" && !SupportsExtension(path)) // Assets - Open C# Project passes empty path here + { + return false; + } + + if (path == "" && SystemInfo.operatingSystemFamily == OperatingSystemFamily.MacOSX) + { + // there is a bug in DllImplementation - use package implementation here instead https://github.cds.internal.unity3d.com/unity/com.unity.ide.rider/issues/21 + return OpenOSXApp(path, line, column); + } + + if (!IsUnityScript(path)) + { + var fastOpenResult = EditorPluginInterop.OpenFileDllImplementation(path, line, column); + if (fastOpenResult) + return true; + } + + if (SystemInfo.operatingSystemFamily == OperatingSystemFamily.MacOSX) + { + return OpenOSXApp(path, line, column); + } + + var solution = GetSolutionFile(path); // TODO: If solution file doesn't exist resync. + solution = solution == "" ? "" : $"\"{solution}\""; + var process = new Process + { + StartInfo = new ProcessStartInfo + { + FileName = CodeEditor.CurrentEditorInstallation, + Arguments = $"{solution} -l {line} \"{path}\"", + UseShellExecute = true, + } + }; + + process.Start(); + + return true; + } + + private bool OpenOSXApp(string path, int line, int column) + { + var solution = GetSolutionFile(path); // TODO: If solution file doesn't exist resync. + solution = solution == "" ? "" : $"\"{solution}\""; + var pathArguments = path == "" ? "" : $"-l {line} \"{path}\""; + var process = new Process + { + StartInfo = new ProcessStartInfo + { + FileName = "open", + Arguments = $"-n \"{CodeEditor.CurrentEditorInstallation}\" --args {solution} {pathArguments}", + CreateNoWindow = true, + UseShellExecute = true, + } + }; + + process.Start(); + + return true; + } + + private string GetSolutionFile(string path) + { + if (IsUnityScript(path)) + { + return Path.Combine(GetBaseUnityDeveloperFolder(), "Projects/CSharp/Unity.CSharpProjects.gen.sln"); + } + + var solutionFile = m_ProjectGeneration.SolutionFile(); + if (File.Exists(solutionFile)) + { + return solutionFile; + } + + return ""; + } + + static bool IsUnityScript(string path) + { + if (UnityEditor.Unsupported.IsDeveloperBuild()) + { + var baseFolder = GetBaseUnityDeveloperFolder().Replace("\\", "/"); + var lowerPath = path.ToLowerInvariant().Replace("\\", "/"); + + if (lowerPath.Contains((baseFolder + "/Runtime").ToLowerInvariant()) + || lowerPath.Contains((baseFolder + "/Editor").ToLowerInvariant())) + { + return true; + } + } + + return false; + } + + static string GetBaseUnityDeveloperFolder() + { + return Directory.GetParent(EditorApplication.applicationPath).Parent.Parent.FullName; + } + + public bool TryGetInstallationForPath(string editorPath, out CodeEditor.Installation installation) + { + if (FileSystemUtil.EditorPathExists(editorPath) && IsRiderInstallation(editorPath)) + { + var info = new RiderPathLocator.RiderInfo(editorPath, false); + installation = new CodeEditor.Installation + { + Name = info.Presentation, + Path = info.Path + }; + return true; + } + + installation = default; + return false; + } + + public static bool IsRiderInstallation(string path) + { + if (string.IsNullOrEmpty(path)) + { + return false; + } + + var fileInfo = new FileInfo(path); + var filename = fileInfo.Name.ToLowerInvariant(); + return filename.StartsWith("rider", StringComparison.Ordinal); + } + + public static string CurrentEditor // works fast, doesn't validate if executable really exists + => EditorPrefs.GetString("kScriptsDefaultApp"); + + public static bool ShouldLoadEditorPlugin(string path) + { + var ver = RiderPathLocator.GetBuildNumber(path); + if (!Version.TryParse(ver, out var version)) + return false; + + return version >= new Version("191.7141.156"); + } + + public CodeEditor.Installation[] Installations => m_Discoverability.PathCallback(); + + public void CreateSolutionIfDoesntExist() + { + if (!m_ProjectGeneration.HasSolutionBeenGenerated()) + { + m_ProjectGeneration.Sync(); + } + } + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderScriptEditor.cs.meta b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderScriptEditor.cs.meta new file mode 100644 index 0000000..ca34793 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderScriptEditor.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c4095d72f77fbb64ea39b8b3ca246622 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderScriptEditorData.cs b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderScriptEditorData.cs new file mode 100644 index 0000000..f12eb88 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderScriptEditorData.cs @@ -0,0 +1,10 @@ +using UnityEditor; +using UnityEngine; + +namespace Packages.Rider.Editor +{ + public class RiderScriptEditorData:ScriptableSingleton + { + [SerializeField] internal bool HasChanges = true; // sln/csproj files were changed + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderScriptEditorData.cs.meta b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderScriptEditorData.cs.meta new file mode 100644 index 0000000..e09363c --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/RiderScriptEditorData.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f079e3afd077fb94fa2bda74d6409499 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util.meta b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util.meta new file mode 100644 index 0000000..f801d0b --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5e726086cd652f82087d59d67d2c24cd +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/FileSystemUtil.cs b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/FileSystemUtil.cs new file mode 100644 index 0000000..b58d2b6 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/FileSystemUtil.cs @@ -0,0 +1,66 @@ +using System; +using System.ComponentModel; +using System.IO; +using System.Text; +using JetBrains.Annotations; +using UnityEngine; + +namespace Packages.Rider.Editor.Util +{ + public static class FileSystemUtil + { + [NotNull] + public static string GetFinalPathName([NotNull] string path) + { + if (path == null) throw new ArgumentNullException("path"); + + // up to MAX_PATH. MAX_PATH on Linux currently 4096, on Mac OS X 1024 + // doc: http://man7.org/linux/man-pages/man3/realpath.3.html + var sb = new StringBuilder(8192); + var result = LibcNativeInterop.realpath(path, sb); + if (result == IntPtr.Zero) + { + throw new Win32Exception($"{path} was not resolved."); + } + + return new FileInfo(sb.ToString()).FullName; + } + + public static string FileNameWithoutExtension(string path) + { + if (string.IsNullOrEmpty(path)) + { + return ""; + } + + var indexOfDot = -1; + var indexOfSlash = 0; + for (var i = path.Length - 1; i >= 0; i--) + { + if (indexOfDot == -1 && path[i] == '.') + { + indexOfDot = i; + } + + if (indexOfSlash == 0 && path[i] == '/' || path[i] == '\\') + { + indexOfSlash = i + 1; + break; + } + } + + if (indexOfDot == -1) + { + indexOfDot = path.Length - 1; + } + + return path.Substring(indexOfSlash, indexOfDot - indexOfSlash); + } + + public static bool EditorPathExists(string editorPath) + { + return SystemInfo.operatingSystemFamily == OperatingSystemFamily.MacOSX && new DirectoryInfo(editorPath).Exists + || SystemInfo.operatingSystemFamily != OperatingSystemFamily.MacOSX && new FileInfo(editorPath).Exists; + } + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/FileSystemUtil.cs.meta b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/FileSystemUtil.cs.meta new file mode 100644 index 0000000..caac41a --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/FileSystemUtil.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: bdbd564a9fdad0b738e76d030cad1204 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/LibcNativeInterop.cs b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/LibcNativeInterop.cs new file mode 100644 index 0000000..5f023f9 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/LibcNativeInterop.cs @@ -0,0 +1,12 @@ +using System; +using System.Runtime.InteropServices; +using System.Text; + +namespace Packages.Rider.Editor.Util +{ + internal static class LibcNativeInterop + { + [DllImport("libc", SetLastError = true)] + public static extern IntPtr realpath(string path, StringBuilder resolved_path); + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/LibcNativeInterop.cs.meta b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/LibcNativeInterop.cs.meta new file mode 100644 index 0000000..21b229d --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/LibcNativeInterop.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 071c17858dc6c47ada7b2a1f1ded5402 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/UnityUtils.cs b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/UnityUtils.cs new file mode 100644 index 0000000..de03492 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/UnityUtils.cs @@ -0,0 +1,20 @@ +using System; +using System.Linq; +using UnityEngine; + +namespace Packages.Rider.Editor.Util +{ + public static class UnityUtils + { + internal static readonly string UnityApplicationVersion = Application.unityVersion; + + public static Version UnityVersion + { + get + { + var ver = UnityApplicationVersion.Split(".".ToCharArray()).Take(2).Aggregate((a, b) => a + "." + b); + return new Version(ver); + } + } + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/UnityUtils.cs.meta b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/UnityUtils.cs.meta new file mode 100644 index 0000000..fe2ac7b --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/Util/UnityUtils.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3ec9edad2de6c4df3a146b543a0fbc4c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/com.unity.ide.rider.asmdef b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/com.unity.ide.rider.asmdef new file mode 100644 index 0000000..5e7c54c --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/com.unity.ide.rider.asmdef @@ -0,0 +1,9 @@ +{ + "name": "Unity.Rider.Editor", + "references": [], + "optionalUnityReferences": [], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [] +} diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/com.unity.ide.rider.asmdef.meta b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/com.unity.ide.rider.asmdef.meta new file mode 100644 index 0000000..2e67d0c --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/Rider/Editor/com.unity.ide.rider.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: d528c8c98d269ca44a06cd9624a03945 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/package.json b/Library/PackageCache/com.unity.ide.rider@1.1.0/package.json new file mode 100644 index 0000000..ac4a762 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/package.json @@ -0,0 +1,19 @@ +{ + "name": "com.unity.ide.rider", + "displayName": "Rider Editor", + "description": "Code editor integration for supporting Rider as code editor for unity. Adds support for generating csproj files for code completion, auto discovery of installations, etc.", + "version": "1.1.0", + "unity": "2019.2", + "unityRelease": "0a12", + "dependencies": { + "com.unity.ext.nunit": "1.0.0" + }, + "relatedPackages": { + "com.unity.ide.rider.tests": "1.1.0" + }, + "repository": { + "type": "git", + "url": "git@github.cds.internal.unity3d.com:unity/com.unity.ide.rider.git", + "revision": "80ad81f593b04a6104771ae0d01cc71773d07b02" + } +} diff --git a/Library/PackageCache/com.unity.ide.rider@1.1.0/package.json.meta b/Library/PackageCache/com.unity.ide.rider@1.1.0/package.json.meta new file mode 100644 index 0000000..6f72a9c --- /dev/null +++ b/Library/PackageCache/com.unity.ide.rider@1.1.0/package.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 66c95bb3c74257f41bae2622511dc02d +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.vscode@1.1.0/CHANGELOG.md b/Library/PackageCache/com.unity.ide.vscode@1.1.0/CHANGELOG.md new file mode 100644 index 0000000..80dd0af --- /dev/null +++ b/Library/PackageCache/com.unity.ide.vscode@1.1.0/CHANGELOG.md @@ -0,0 +1,34 @@ +# Code Editor Package for Visual Studio Code + +## [1.1.0] - 2019-08-07 + +Adds support for choosing extensions to be opened with VSCode. This can be done through the GUI in Preferences. +Avoids opening all extensions after the change in core unity. + + +## [1.0.7] - 2019-05-15 + +Fix various OSX specific issues. +Generate project on load if they are not generated. +Fix path recognition. + + +## [1.0.6] - 2019-04-30 + +Ensure asset database is refreshed when generating csproj and solution files. + +## [1.0.5] - 2019-04-27 + +Add support for generating all csproj files. + +## [1.0.4] - 2019-04-18 + +Fix relative package paths. +Fix opening editor on mac. +Add %LOCALAPPDATA%/Programs to the path of install paths. + +## [1.0.3] - 2019-01-01 + +### This is the first release of *Unity Package vscode_editor*. + +Using the newly created api to integrate Visual Studio Code with Unity. diff --git a/Library/PackageCache/com.unity.ide.vscode@1.1.0/CHANGELOG.md.meta b/Library/PackageCache/com.unity.ide.vscode@1.1.0/CHANGELOG.md.meta new file mode 100644 index 0000000..ec097c6 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.vscode@1.1.0/CHANGELOG.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 4ddcdc3816429494a8bea67e973875f7 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.vscode@1.1.0/CONTRIBUTING.md b/Library/PackageCache/com.unity.ide.vscode@1.1.0/CONTRIBUTING.md new file mode 100644 index 0000000..f0005f6 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.vscode@1.1.0/CONTRIBUTING.md @@ -0,0 +1,6 @@ +# Contributing + +## All contributions are subject to the [Unity Contribution Agreement(UCA)](https://unity3d.com/legal/licenses/Unity_Contribution_Agreement) +By making a pull request, you are confirming agreement to the terms and conditions of the UCA, including that your Contributions are your original creation and that you have complete right and authority to make your Contributions. + +## Once you have a change ready following these ground rules. Simply make a pull request \ No newline at end of file diff --git a/Library/PackageCache/com.unity.ide.vscode@1.1.0/CONTRIBUTING.md.meta b/Library/PackageCache/com.unity.ide.vscode@1.1.0/CONTRIBUTING.md.meta new file mode 100644 index 0000000..dd09a7a --- /dev/null +++ b/Library/PackageCache/com.unity.ide.vscode@1.1.0/CONTRIBUTING.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: fcb9be00baf924c4183fc0313e6185c5 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.vscode@1.1.0/Documentation~/README.md b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Documentation~/README.md new file mode 100644 index 0000000..89cddba --- /dev/null +++ b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Documentation~/README.md @@ -0,0 +1,4 @@ +# Code Editor Package for Visual Studio Code + +This package is not intended to be modified by users. +Nor does it provide any api intended to be included in user projects. \ No newline at end of file diff --git a/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor.meta b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor.meta new file mode 100644 index 0000000..e8a6ea0 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 58628227479c34542ac8c5193ccced84 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/ProjectGeneration.cs b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/ProjectGeneration.cs new file mode 100644 index 0000000..b9eee99 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/ProjectGeneration.cs @@ -0,0 +1,837 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Security; +using System.Security.Cryptography; +using System.Text; +using System.Text.RegularExpressions; +using UnityEditor; +using UnityEditor.Compilation; +using UnityEditor.PackageManager; +using UnityEditorInternal; +using UnityEngine; +using UnityEngine.Profiling; + +namespace VSCodeEditor +{ + public interface IGenerator { + bool SyncIfNeeded(IEnumerable affectedFiles, IEnumerable reimportedFiles); + void Sync(); + bool HasSolutionBeenGenerated(); + string SolutionFile(); + string ProjectDirectory { get; } + void GenerateAll(bool generateAll); + } + + public interface IAssemblyNameProvider + { + string GetAssemblyNameFromScriptPath(string path); + IEnumerable GetAllAssemblies(Func shouldFileBePartOfSolution); + IEnumerable GetAllAssetPaths(); + UnityEditor.PackageManager.PackageInfo FindForAssetPath(string assetPath); + } + + public struct TestSettings { + public bool ShouldSync; + public Dictionary SyncPath; + } + + class AssemblyNameProvider : IAssemblyNameProvider + { + public string GetAssemblyNameFromScriptPath(string path) + { + return CompilationPipeline.GetAssemblyNameFromScriptPath(path); + } + + public IEnumerable GetAllAssemblies(Func shouldFileBePartOfSolution) + { + return CompilationPipeline.GetAssemblies().Where(i => 0 < i.sourceFiles.Length && i.sourceFiles.Any(shouldFileBePartOfSolution)); + } + + public IEnumerable GetAllAssetPaths() + { + return AssetDatabase.GetAllAssetPaths(); + } + + public UnityEditor.PackageManager.PackageInfo FindForAssetPath(string assetPath) + { + return UnityEditor.PackageManager.PackageInfo.FindForAssetPath(assetPath); + } + } + + + public class ProjectGeneration : IGenerator + { + enum ScriptingLanguage + { + None, + CSharp + } + + public static readonly string MSBuildNamespaceUri = "http://schemas.microsoft.com/developer/msbuild/2003"; + + const string k_WindowsNewline = "\r\n"; + + const string k_SettingsJson = @"{ + ""files.exclude"": + { + ""**/.DS_Store"":true, + ""**/.git"":true, + ""**/.gitignore"":true, + ""**/.gitmodules"":true, + ""**/*.booproj"":true, + ""**/*.pidb"":true, + ""**/*.suo"":true, + ""**/*.user"":true, + ""**/*.userprefs"":true, + ""**/*.unityproj"":true, + ""**/*.dll"":true, + ""**/*.exe"":true, + ""**/*.pdf"":true, + ""**/*.mid"":true, + ""**/*.midi"":true, + ""**/*.wav"":true, + ""**/*.gif"":true, + ""**/*.ico"":true, + ""**/*.jpg"":true, + ""**/*.jpeg"":true, + ""**/*.png"":true, + ""**/*.psd"":true, + ""**/*.tga"":true, + ""**/*.tif"":true, + ""**/*.tiff"":true, + ""**/*.3ds"":true, + ""**/*.3DS"":true, + ""**/*.fbx"":true, + ""**/*.FBX"":true, + ""**/*.lxo"":true, + ""**/*.LXO"":true, + ""**/*.ma"":true, + ""**/*.MA"":true, + ""**/*.obj"":true, + ""**/*.OBJ"":true, + ""**/*.asset"":true, + ""**/*.cubemap"":true, + ""**/*.flare"":true, + ""**/*.mat"":true, + ""**/*.meta"":true, + ""**/*.prefab"":true, + ""**/*.unity"":true, + ""build/"":true, + ""Build/"":true, + ""Library/"":true, + ""library/"":true, + ""obj/"":true, + ""Obj/"":true, + ""ProjectSettings/"":true, + ""temp/"":true, + ""Temp/"":true + } +}"; + + /// + /// Map source extensions to ScriptingLanguages + /// + static readonly Dictionary k_BuiltinSupportedExtensions = new Dictionary + { + { "cs", ScriptingLanguage.CSharp }, + { "uxml", ScriptingLanguage.None }, + { "uss", ScriptingLanguage.None }, + { "shader", ScriptingLanguage.None }, + { "compute", ScriptingLanguage.None }, + { "cginc", ScriptingLanguage.None }, + { "hlsl", ScriptingLanguage.None }, + { "glslinc", ScriptingLanguage.None } + }; + + string m_SolutionProjectEntryTemplate = string.Join("\r\n", @"Project(""{{{0}}}"") = ""{1}"", ""{2}"", ""{{{3}}}""", @"EndProject").Replace(" ", "\t"); + + string m_SolutionProjectConfigurationTemplate = string.Join("\r\n", @" {{{0}}}.Debug|Any CPU.ActiveCfg = Debug|Any CPU", @" {{{0}}}.Debug|Any CPU.Build.0 = Debug|Any CPU", @" {{{0}}}.Release|Any CPU.ActiveCfg = Release|Any CPU", @" {{{0}}}.Release|Any CPU.Build.0 = Release|Any CPU").Replace(" ", "\t"); + + static readonly string[] k_ReimportSyncExtensions = { ".dll", ".asmdef" }; + + /// + /// Map ScriptingLanguages to project extensions + /// + /*static readonly Dictionary k_ProjectExtensions = new Dictionary + { + { ScriptingLanguage.CSharp, ".csproj" }, + { ScriptingLanguage.None, ".csproj" }, + };*/ + + static readonly Regex k_ScriptReferenceExpression = new Regex( + @"^Library.ScriptAssemblies.(?(?.*)\.dll$)", + RegexOptions.Compiled | RegexOptions.IgnoreCase); + + string[] m_ProjectSupportedExtensions = new string[0]; + public string ProjectDirectory { get; } + bool m_ShouldGenerateAll; + + public void GenerateAll(bool generateAll) + { + m_ShouldGenerateAll = generateAll; + } + + public TestSettings Settings { get; set; } + + readonly string m_ProjectName; + readonly IAssemblyNameProvider m_AssemblyNameProvider; + const string k_ToolsVersion = "4.0"; + const string k_ProductVersion = "10.0.20506"; + const string k_BaseDirectory = "."; + const string k_TargetFrameworkVersion = "v4.7.1"; + const string k_TargetLanguageVersion = "latest"; + + public ProjectGeneration() : this(Directory.GetParent(Application.dataPath).FullName, new AssemblyNameProvider()) + { + } + + public ProjectGeneration(string tempDirectory) : this(tempDirectory, new AssemblyNameProvider()) { + } + + public ProjectGeneration(string tempDirectory, IAssemblyNameProvider assemblyNameProvider) { + Settings = new TestSettings { ShouldSync = true }; + ProjectDirectory = tempDirectory.Replace('\\', '/'); + m_ProjectName = Path.GetFileName(ProjectDirectory); + m_AssemblyNameProvider = assemblyNameProvider; + } + + /// + /// Syncs the scripting solution if any affected files are relevant. + /// + /// + /// Whether the solution was synced. + /// + /// + /// A set of files whose status has changed + /// + /// + /// A set of files that got reimported + /// + public bool SyncIfNeeded(IEnumerable affectedFiles, IEnumerable reimportedFiles) + { + Profiler.BeginSample("SolutionSynchronizerSync"); + SetupProjectSupportedExtensions(); + + // Don't sync if we haven't synced before + if (HasSolutionBeenGenerated() && HasFilesBeenModified(affectedFiles, reimportedFiles)) + { + Sync(); + + Profiler.EndSample(); + return true; + } + + Profiler.EndSample(); + return false; + } + + bool HasFilesBeenModified(IEnumerable affectedFiles, IEnumerable reimportedFiles) + { + return affectedFiles.Any(ShouldFileBePartOfSolution) || reimportedFiles.Any(ShouldSyncOnReimportedAsset); + } + + static bool ShouldSyncOnReimportedAsset(string asset) + { + return k_ReimportSyncExtensions.Contains(new FileInfo(asset).Extension); + } + + public void Sync() + { + SetupProjectSupportedExtensions(); + GenerateAndWriteSolutionAndProjects(); + } + + public bool HasSolutionBeenGenerated() + { + return File.Exists(SolutionFile()); + } + + void SetupProjectSupportedExtensions() + { + m_ProjectSupportedExtensions = EditorSettings.projectGenerationUserExtensions; + } + + bool ShouldFileBePartOfSolution(string file) + { + string extension = Path.GetExtension(file); + + // Exclude files coming from packages except if they are internalized. + if (!m_ShouldGenerateAll && IsInternalizedPackagePath(file)) + { + return false; + } + + // Dll's are not scripts but still need to be included.. + if (extension == ".dll") + return true; + + if (file.ToLower().EndsWith(".asmdef")) + return true; + + return IsSupportedExtension(extension); + } + + bool IsSupportedExtension(string extension) + { + extension = extension.TrimStart('.'); + if (k_BuiltinSupportedExtensions.ContainsKey(extension)) + return true; + if (m_ProjectSupportedExtensions.Contains(extension)) + return true; + return false; + } + + static ScriptingLanguage ScriptingLanguageFor(Assembly island) + { + return ScriptingLanguageFor(GetExtensionOfSourceFiles(island.sourceFiles)); + } + + static string GetExtensionOfSourceFiles(string[] files) + { + return files.Length > 0 ? GetExtensionOfSourceFile(files[0]) : "NA"; + } + + static string GetExtensionOfSourceFile(string file) + { + var ext = Path.GetExtension(file).ToLower(); + ext = ext.Substring(1); //strip dot + return ext; + } + + static ScriptingLanguage ScriptingLanguageFor(string extension) + { + return k_BuiltinSupportedExtensions.TryGetValue(extension.TrimStart('.'), out var result) + ? result + : ScriptingLanguage.None; + } + + public void GenerateAndWriteSolutionAndProjects() + { + // Only synchronize islands that have associated source files and ones that we actually want in the project. + // This also filters out DLLs coming from .asmdef files in packages. + var assemblies = m_AssemblyNameProvider.GetAllAssemblies(ShouldFileBePartOfSolution); + + var allAssetProjectParts = GenerateAllAssetProjectParts(); + + var monoIslands = assemblies.ToList(); + + SyncSolution(monoIslands); + var allProjectIslands = RelevantIslandsForMode(monoIslands).ToList(); + foreach (Assembly assembly in allProjectIslands) + { + var responseFileData = ParseResponseFileData(assembly); + SyncProject(assembly, allAssetProjectParts, responseFileData, allProjectIslands); + } + + if (Settings.ShouldSync) + { + WriteVSCodeSettingsFiles(); + } + } + + IEnumerable ParseResponseFileData(Assembly assembly) + { + var systemReferenceDirectories = CompilationPipeline.GetSystemAssemblyDirectories(assembly.compilerOptions.ApiCompatibilityLevel); + + Dictionary responseFilesData = assembly.compilerOptions.ResponseFiles.ToDictionary(x => x, x => CompilationPipeline.ParseResponseFile( + Path.Combine(ProjectDirectory, x), + ProjectDirectory, + systemReferenceDirectories + )); + + Dictionary responseFilesWithErrors = responseFilesData.Where(x => x.Value.Errors.Any()) + .ToDictionary(x => x.Key, x => x.Value); + + if (responseFilesWithErrors.Any()) + { + foreach (var error in responseFilesWithErrors) + foreach (var valueError in error.Value.Errors) + { + Debug.LogError($"{error.Key} Parse Error : {valueError}"); + } + } + + return responseFilesData.Select(x => x.Value); + } + + Dictionary GenerateAllAssetProjectParts() + { + Dictionary stringBuilders = new Dictionary(); + + foreach (string asset in m_AssemblyNameProvider.GetAllAssetPaths()) + { + // Exclude files coming from packages except if they are internalized. + // TODO: We need assets from the assembly API + if (!m_ShouldGenerateAll && IsInternalizedPackagePath(asset)) + { + continue; + } + + string extension = Path.GetExtension(asset); + if (IsSupportedExtension(extension) && ScriptingLanguage.None == ScriptingLanguageFor(extension)) + { + // Find assembly the asset belongs to by adding script extension and using compilation pipeline. + var assemblyName = m_AssemblyNameProvider.GetAssemblyNameFromScriptPath(asset + ".cs"); + + if (string.IsNullOrEmpty(assemblyName)) + { + continue; + } + + assemblyName = Utility.FileNameWithoutExtension(assemblyName); + + if (!stringBuilders.TryGetValue(assemblyName, out var projectBuilder)) + { + projectBuilder = new StringBuilder(); + stringBuilders[assemblyName] = projectBuilder; + } + + projectBuilder.Append(" ").Append(k_WindowsNewline); + } + } + + var result = new Dictionary(); + + foreach (var entry in stringBuilders) + result[entry.Key] = entry.Value.ToString(); + + return result; + } + + bool IsInternalizedPackagePath(string file) + { + if (string.IsNullOrWhiteSpace(file)) + { + return false; + } + + var packageInfo = m_AssemblyNameProvider.FindForAssetPath(file); + if (packageInfo == null) { + return false; + } + var packageSource = packageInfo.source; + return packageSource != PackageSource.Embedded && packageSource != PackageSource.Local; + } + + void SyncProject( + Assembly island, + Dictionary allAssetsProjectParts, + IEnumerable responseFilesData, + List allProjectIslands) + { + SyncProjectFileIfNotChanged(ProjectFile(island), ProjectText(island, allAssetsProjectParts, responseFilesData, allProjectIslands)); + } + + void SyncProjectFileIfNotChanged(string path, string newContents) + { + if (Path.GetExtension(path) == ".csproj") + { + //newContents = AssetPostprocessingInternal.CallOnGeneratedCSProject(path, newContents); TODO: Call specific code here + } + + SyncFileIfNotChanged(path, newContents); + } + + void SyncSolutionFileIfNotChanged(string path, string newContents) + { + //newContents = AssetPostprocessingInternal.CallOnGeneratedSlnSolution(path, newContents); TODO: Call specific code here + + SyncFileIfNotChanged(path, newContents); + } + + void SyncFileIfNotChanged(string filename, string newContents) + { + if (File.Exists(filename) && + newContents == File.ReadAllText(filename)) + { + return; + } + if (Settings.ShouldSync) + { + File.WriteAllText(filename, newContents, Encoding.UTF8); + } + else + { + var utf8 = Encoding.UTF8; + byte[] utfBytes = utf8.GetBytes(newContents); + Settings.SyncPath[filename] = utf8.GetString(utfBytes, 0, utfBytes.Length); + } + } + + string ProjectText(Assembly assembly, + Dictionary allAssetsProjectParts, + IEnumerable responseFilesData, + List allProjectIslands) + { + var projectBuilder = new StringBuilder(ProjectHeader(assembly, responseFilesData)); + var references = new List(); + var projectReferences = new List(); + + foreach (string file in assembly.sourceFiles) + { + if (!ShouldFileBePartOfSolution(file)) + continue; + + var extension = Path.GetExtension(file).ToLower(); + var fullFile = EscapedRelativePathFor(file); + if (".dll" != extension) + { + projectBuilder.Append(" ").Append(k_WindowsNewline); + } + else + { + references.Add(fullFile); + } + } + + var assemblyName = Utility.FileNameWithoutExtension(assembly.outputPath); + + // Append additional non-script files that should be included in project generation. + if (allAssetsProjectParts.TryGetValue(assemblyName, out var additionalAssetsForProject)) + projectBuilder.Append(additionalAssetsForProject); + + var islandRefs = references.Union(assembly.allReferences); + + foreach (string reference in islandRefs) + { + if (reference.EndsWith("/UnityEditor.dll", StringComparison.Ordinal) + || reference.EndsWith("/UnityEngine.dll", StringComparison.Ordinal) + || reference.EndsWith("\\UnityEditor.dll", StringComparison.Ordinal) + || reference.EndsWith("\\UnityEngine.dll", StringComparison.Ordinal)) + continue; + + var match = k_ScriptReferenceExpression.Match(reference); + if (match.Success) + { + // assume csharp language + // Add a reference to a project except if it's a reference to a script assembly + // that we are not generating a project for. This will be the case for assemblies + // coming from .assembly.json files in non-internalized packages. + var dllName = match.Groups["dllname"].Value; + if (allProjectIslands.Any(i => Path.GetFileName(i.outputPath) == dllName)) + { + projectReferences.Add(match); + continue; + } + } + + string fullReference = Path.IsPathRooted(reference) ? reference : Path.Combine(ProjectDirectory, reference); + + AppendReference(fullReference, projectBuilder); + } + + var responseRefs = responseFilesData.SelectMany(x => x.FullPathReferences.Select(r => r)); + foreach (var reference in responseRefs) + { + AppendReference(reference, projectBuilder); + } + + if (0 < projectReferences.Count) + { + projectBuilder.AppendLine(" "); + projectBuilder.AppendLine(" "); + foreach (Match reference in projectReferences) + { + var referencedProject = reference.Groups["project"].Value; + + projectBuilder.Append(" ").Append(k_WindowsNewline); + projectBuilder.Append(" {").Append(ProjectGuid(Path.Combine("Temp", reference.Groups["project"].Value + ".dll"))).Append("}").Append(k_WindowsNewline); + projectBuilder.Append(" ").Append(referencedProject).Append("").Append(k_WindowsNewline); + projectBuilder.AppendLine(" "); + } + } + + projectBuilder.Append(ProjectFooter()); + return projectBuilder.ToString(); + } + + static void AppendReference(string fullReference, StringBuilder projectBuilder) + { + //replace \ with / and \\ with / + var escapedFullPath = SecurityElement.Escape(fullReference); + escapedFullPath = escapedFullPath.Replace("\\", "/"); + escapedFullPath = escapedFullPath.Replace("\\\\", "/"); + projectBuilder.Append(" ").Append(k_WindowsNewline); + projectBuilder.Append(" ").Append(escapedFullPath).Append("").Append(k_WindowsNewline); + projectBuilder.Append(" ").Append(k_WindowsNewline); + } + + public string ProjectFile(Assembly assembly) + { + return Path.Combine(ProjectDirectory, $"{Utility.FileNameWithoutExtension(assembly.outputPath)}.csproj"); + } + + public string SolutionFile() + { + return Path.Combine(ProjectDirectory, $"{m_ProjectName}.sln"); + } + + string ProjectHeader( + Assembly island, + IEnumerable responseFilesData + ) + { + var arguments = new object[] + { + k_ToolsVersion, k_ProductVersion, ProjectGuid(island.outputPath), + InternalEditorUtility.GetEngineAssemblyPath(), + InternalEditorUtility.GetEditorAssemblyPath(), + string.Join(";", new[] { "DEBUG", "TRACE" }.Concat(EditorUserBuildSettings.activeScriptCompilationDefines).Concat(island.defines).Concat(responseFilesData.SelectMany(x => x.Defines)).Distinct().ToArray()), + MSBuildNamespaceUri, + Utility.FileNameWithoutExtension(island.outputPath), + EditorSettings.projectGenerationRootNamespace, + k_TargetFrameworkVersion, + k_TargetLanguageVersion, + k_BaseDirectory, + island.compilerOptions.AllowUnsafeCode | responseFilesData.Any(x => x.Unsafe) + }; + + try + { + return string.Format(GetProjectHeaderTemplate(), arguments); + } + catch (Exception) + { + throw new NotSupportedException("Failed creating c# project because the c# project header did not have the correct amount of arguments, which is " + arguments.Length); + } + } + + static string GetSolutionText() + { + return string.Join("\r\n", @"", @"Microsoft Visual Studio Solution File, Format Version {0}", @"# Visual Studio {1}", @"{2}", @"Global", @" GlobalSection(SolutionConfigurationPlatforms) = preSolution", @" Debug|Any CPU = Debug|Any CPU", @" Release|Any CPU = Release|Any CPU", @" EndGlobalSection", @" GlobalSection(ProjectConfigurationPlatforms) = postSolution", @"{3}", @" EndGlobalSection", @" GlobalSection(SolutionProperties) = preSolution", @" HideSolutionNode = FALSE", @" EndGlobalSection", @"EndGlobal", @"").Replace(" ", "\t"); + } + + static string GetProjectFooterTemplate() + { + return string.Join("\r\n", @" ", @" ", @" ", @"", @""); + } + + static string GetProjectHeaderTemplate() + { + var header = new[] + { + @"", + @"", + @" ", + @" {10}", + @" ", + @" ", + @" Debug", + @" AnyCPU", + @" {1}", + @" 2.0", + @" {8}", + @" {{{2}}}", + @" Library", + @" Properties", + @" {7}", + @" {9}", + @" 512", + @" {11}", + @" ", + @" ", + @" true", + @" full", + @" false", + @" Temp\bin\Debug\", + @" {5}", + @" prompt", + @" 4", + @" 0169", + @" {12}", + @" ", + @" ", + @" pdbonly", + @" true", + @" Temp\bin\Release\", + @" prompt", + @" 4", + @" 0169", + @" {12}", + @" " + }; + + var forceExplicitReferences = new[] + { + @" ", + @" true", + @" true", + @" false", + @" false", + @" false", + @" " + }; + + var itemGroupStart = new[] + { + @" " + }; + + var footer = new[] + { + @" ", + @" {3}", + @" ", + @" ", + @" {4}", + @" ", + @" ", + @" ", + @"" + }; + + var text = header.Concat(forceExplicitReferences).Concat(itemGroupStart).Concat(footer).ToArray(); + return string.Join("\r\n", text); + } + + void SyncSolution(IEnumerable islands) + { + SyncSolutionFileIfNotChanged(SolutionFile(), SolutionText(islands)); + } + + string SolutionText(IEnumerable islands) + { + var fileversion = "11.00"; + var vsversion = "2010"; + + var relevantIslands = RelevantIslandsForMode(islands); + string projectEntries = GetProjectEntries(relevantIslands); + string projectConfigurations = string.Join(k_WindowsNewline, relevantIslands.Select(i => GetProjectActiveConfigurations(ProjectGuid(i.outputPath))).ToArray()); + return string.Format(GetSolutionText(), fileversion, vsversion, projectEntries, projectConfigurations); + } + + static IEnumerable RelevantIslandsForMode(IEnumerable islands) + { + IEnumerable relevantIslands = islands.Where(i => ScriptingLanguage.CSharp == ScriptingLanguageFor(i)); + return relevantIslands; + } + + /// + /// Get a Project("{guid}") = "MyProject", "MyProject.unityproj", "{projectguid}" + /// entry for each relevant language + /// + string GetProjectEntries(IEnumerable islands) + { + var projectEntries = islands.Select(i => string.Format( + m_SolutionProjectEntryTemplate, + SolutionGuid(i), Utility.FileNameWithoutExtension(i.outputPath), Path.GetFileName(ProjectFile(i)), ProjectGuid(i.outputPath) + )); + + return string.Join(k_WindowsNewline, projectEntries.ToArray()); + } + + /// + /// Generate the active configuration string for a given project guid + /// + string GetProjectActiveConfigurations(string projectGuid) + { + return string.Format( + m_SolutionProjectConfigurationTemplate, + projectGuid); + } + + string EscapedRelativePathFor(string file) + { + var projectDir = ProjectDirectory.Replace('/', '\\'); + file = file.Replace('/', '\\'); + var path = SkipPathPrefix(file, projectDir); + + var packageInfo = m_AssemblyNameProvider.FindForAssetPath(path.Replace('\\', '/')); + if (packageInfo != null) { + // We have to normalize the path, because the PackageManagerRemapper assumes + // dir seperators will be os specific. + var absolutePath = Path.GetFullPath(NormalizePath(path)).Replace('/', '\\'); + path = SkipPathPrefix(absolutePath, projectDir); + } + + return SecurityElement.Escape(path); + } + + static string SkipPathPrefix(string path, string prefix) + { + if (path.Replace("\\","/").StartsWith($"{prefix}/")) + return path.Substring(prefix.Length + 1); + return path; + } + + static string NormalizePath(string path) + { + if (Path.DirectorySeparatorChar == '\\') + return path.Replace('/', Path.DirectorySeparatorChar); + return path.Replace('\\', Path.DirectorySeparatorChar); + } + + + string ProjectGuid(string assembly) + { + return SolutionGuidGenerator.GuidForProject(m_ProjectName + Utility.FileNameWithoutExtension(assembly)); + } + + string SolutionGuid(Assembly island) + { + return SolutionGuidGenerator.GuidForSolution(m_ProjectName, GetExtensionOfSourceFiles(island.sourceFiles)); + } + + static string ProjectFooter() + { + return GetProjectFooterTemplate(); + } + + static string GetProjectExtension() + { + return ".csproj"; + } + + void WriteVSCodeSettingsFiles() + { + var vsCodeDirectory = Path.Combine(ProjectDirectory, ".vscode"); + + if (!Directory.Exists(vsCodeDirectory)) + Directory.CreateDirectory(vsCodeDirectory); + + var vsCodeSettingsJson = Path.Combine(vsCodeDirectory, "settings.json"); + + if (!File.Exists(vsCodeSettingsJson)) + File.WriteAllText(vsCodeSettingsJson, k_SettingsJson); + } + } + + public static class SolutionGuidGenerator + { + public static string GuidForProject(string projectName) + { + return ComputeGuidHashFor(projectName + "salt"); + } + + public static string GuidForSolution(string projectName, string sourceFileExtension) + { + if (sourceFileExtension.ToLower() == "cs") + // GUID for a C# class library: http://www.codeproject.com/Reference/720512/List-of-Visual-Studio-Project-Type-GUIDs + return "FAE04EC0-301F-11D3-BF4B-00C04F79EFBC"; + + return ComputeGuidHashFor(projectName); + } + + static string ComputeGuidHashFor(string input) + { + var hash = MD5.Create().ComputeHash(Encoding.Default.GetBytes(input)); + return HashAsGuid(HashToString(hash)); + } + + static string HashAsGuid(string hash) + { + var guid = hash.Substring(0, 8) + "-" + hash.Substring(8, 4) + "-" + hash.Substring(12, 4) + "-" + hash.Substring(16, 4) + "-" + hash.Substring(20, 12); + return guid.ToUpper(); + } + + static string HashToString(byte[] bs) + { + var sb = new StringBuilder(); + foreach (byte b in bs) + sb.Append(b.ToString("x2")); + return sb.ToString(); + } + } +} diff --git a/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/ProjectGeneration.cs.meta b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/ProjectGeneration.cs.meta new file mode 100644 index 0000000..240a079 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/ProjectGeneration.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 58eb69fc39be3d040b984b4498a820bb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/Unity.com.unity.vscode.Editor.asmdef b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/Unity.com.unity.vscode.Editor.asmdef new file mode 100644 index 0000000..5e0ca9a --- /dev/null +++ b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/Unity.com.unity.vscode.Editor.asmdef @@ -0,0 +1,9 @@ +{ + "name": "Unity.VSCode.Editor", + "references": [], + "optionalUnityReferences": [], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [] +} diff --git a/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/Unity.com.unity.vscode.Editor.asmdef.meta b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/Unity.com.unity.vscode.Editor.asmdef.meta new file mode 100644 index 0000000..581e8d8 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/Unity.com.unity.vscode.Editor.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 8b845b123ab418448a8be2935fa804e0 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/Utility.cs b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/Utility.cs new file mode 100644 index 0000000..72be1eb --- /dev/null +++ b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/Utility.cs @@ -0,0 +1,35 @@ +namespace VSCodeEditor +{ + public static class Utility + { + public static string FileNameWithoutExtension(string path) + { + if (string.IsNullOrEmpty(path)) + { + return ""; + } + + var indexOfDot = -1; + var indexOfSlash = 0; + for (var i = path.Length - 1; i >= 0; i--) + { + if (indexOfDot == -1 && path[i] == '.') + { + indexOfDot = i; + } + if (indexOfSlash == 0 && path[i] == '/' || path[i] == '\\') + { + indexOfSlash = i + 1; + break; + } + } + + if (indexOfDot == -1) + { + indexOfDot = path.Length - 1; + } + + return path.Substring(indexOfSlash, indexOfDot - indexOfSlash); + } + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/Utility.cs.meta b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/Utility.cs.meta new file mode 100644 index 0000000..92c556e --- /dev/null +++ b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/Utility.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1ac677c5ece15b443b2aaf7fae5842f7 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/VSCodeDiscovery.cs b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/VSCodeDiscovery.cs new file mode 100644 index 0000000..6899cfa --- /dev/null +++ b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/VSCodeDiscovery.cs @@ -0,0 +1,136 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using UnityEditor; +using UnityEngine; +using Unity.CodeEditor; + +namespace VSCodeEditor +{ + public interface IDiscovery { + CodeEditor.Installation[] PathCallback(); + } + + public class VSCodeDiscovery : IDiscovery { + List m_Installations; + + public CodeEditor.Installation[] PathCallback() + { + if (m_Installations == null) + { + m_Installations = new List(); + FindInstallationPaths(); + } + + return m_Installations.ToArray(); + } + + void FindInstallationPaths() + { + string[] possiblePaths = +#if UNITY_EDITOR_OSX + { + "/Applications/Visual Studio Code.app", + "/Applications/Visual Studio Code - Insiders.app" + }; +#elif UNITY_EDITOR_WIN + { + GetProgramFiles() + @"/Microsoft VS Code/bin/code.cmd", + GetProgramFiles() + @"/Microsoft VS Code/Code.exe", + GetProgramFiles() + @"/Microsoft VS Code Insiders/bin/code-insiders.cmd", + GetProgramFiles() + @"/Microsoft VS Code Insiders/Code.exe", + GetLocalAppData() + @"/Programs/Microsoft VS Code/bin/code.cmd", + GetLocalAppData() + @"/Programs/Microsoft VS Code/Code.exe", + GetLocalAppData() + @"/Programs/Microsoft VS Code Insiders/bin/code-insiders.cmd", + GetLocalAppData() + @"/Programs/Microsoft VS Code Insiders/Code.exe", + }; +#else + { + "/usr/bin/code", + "/bin/code", + "/usr/local/bin/code", + "/var/lib/flatpak/exports/bin/com.visualstudio.code", + "/snap/current/bin/code" + }; +#endif + var existingPaths = possiblePaths.Where(VSCodeExists).ToList(); + if (!existingPaths.Any()) + { + return; + } + + var lcp = GetLongestCommonPrefix(existingPaths); + switch (existingPaths.Count) + { + case 1: + { + var path = existingPaths.First(); + m_Installations = new List + { + new CodeEditor.Installation + { + Path = path, + Name = path.Contains("Insiders") + ? "Visual Studio Code Insiders" + : "Visual Studio Code" + } + }; + break; + } + case 2 when existingPaths.Any(path => !(path.Substring(lcp.Length).Contains("/") || path.Substring(lcp.Length).Contains("\\"))): + { + goto case 1; + } + default: + { + m_Installations = existingPaths.Select(path => new CodeEditor.Installation + { + Name = $"Visual Studio Code Insiders ({path.Substring(lcp.Length)})", + Path = path + }).ToList(); + + break; + } + } + } + +#if UNITY_EDITOR_WIN + static string GetProgramFiles() + { + return Environment.GetEnvironmentVariable("ProgramFiles")?.Replace("\\", "/"); + } + + static string GetLocalAppData() + { + return Environment.GetEnvironmentVariable("LOCALAPPDATA")?.Replace("\\", "/"); + } +#endif + + static string GetLongestCommonPrefix(List paths) + { + var baseLength = paths.First().Length; + for (var pathIndex = 1; pathIndex < paths.Count; pathIndex++) + { + baseLength = Math.Min(baseLength, paths[pathIndex].Length); + for (var i = 0; i < baseLength; i++) + { + if (paths[pathIndex][i] == paths[0][i]) continue; + + baseLength = i; + break; + } + } + return paths[0].Substring(0, baseLength); + } + + static bool VSCodeExists(string path) + { +#if UNITY_EDITOR_OSX + return System.IO.Directory.Exists(path); +#else + return new FileInfo(path).Exists; +#endif + } + } +} diff --git a/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/VSCodeDiscovery.cs.meta b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/VSCodeDiscovery.cs.meta new file mode 100644 index 0000000..da296fc --- /dev/null +++ b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/VSCodeDiscovery.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 380f7372e785c7d408552e2c760d269d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/VSCodeScriptEditor.cs b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/VSCodeScriptEditor.cs new file mode 100644 index 0000000..5036716 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/VSCodeScriptEditor.cs @@ -0,0 +1,253 @@ +using System; +using System.IO; +using System.Linq; +using System.Diagnostics; +using UnityEditor; +using UnityEngine; +using Unity.CodeEditor; + +namespace VSCodeEditor { + [InitializeOnLoad] + public class VSCodeScriptEditor : IExternalCodeEditor + { + const string vscode_argument = "vscode_arguments"; + const string vscode_generate_all = "unity_generate_all_csproj"; + const string vscode_extension = "vscode_userExtensions"; + static readonly GUIContent k_ResetArguments = EditorGUIUtility.TrTextContent("Reset argument"); + string m_Arguments; + + IDiscovery m_Discoverability; + IGenerator m_ProjectGeneration; + + static readonly string[] k_SupportedFileNames = { "code.exe", "visualstudiocode.app", "visualstudiocode-insiders.app", "vscode.app", "code.app", "code.cmd", "code-insiders.cmd", "code", "com.visualstudio.code" }; + + static bool IsOSX => Application.platform == RuntimePlatform.OSXEditor; + + static string GetDefaultApp => EditorPrefs.GetString("kScriptsDefaultApp"); + + static string DefaultArgument { get; } = "\"$(ProjectPath)\" -g \"$(File)\":$(Line):$(Column)"; + string Arguments + { + get => m_Arguments ?? (m_Arguments = EditorPrefs.GetString(vscode_argument, DefaultArgument)); + set + { + m_Arguments = value; + EditorPrefs.SetString(vscode_argument, value); + } + } + + static string[] defaultExtensions + { + get + { + var customExtensions = new[] {"json", "asmdef", "log"}; + return EditorSettings.projectGenerationBuiltinExtensions + .Concat(EditorSettings.projectGenerationUserExtensions) + .Concat(customExtensions) + .Distinct().ToArray(); + } + } + + static string[] HandledExtensions + { + get + { + return HandledExtensionsString + .Split(new[] {';'}, StringSplitOptions.RemoveEmptyEntries) + .Select(s => s.TrimStart('.', '*')) + .ToArray(); + } + } + + static string HandledExtensionsString + { + get => EditorPrefs.GetString(vscode_extension, string.Join(";", defaultExtensions)); + set => EditorPrefs.SetString(vscode_extension, value); + } + + public bool TryGetInstallationForPath(string editorPath, out CodeEditor.Installation installation) + { + var lowerCasePath = editorPath.ToLower(); + var filename = Path.GetFileName(lowerCasePath).Replace(" ", ""); + var installations = Installations; + if (!k_SupportedFileNames.Contains(filename)) + { + installation = default; + return false; + } + if (!installations.Any()) + { + installation = new CodeEditor.Installation + { + Name = "Visual Studio Code", + Path = editorPath + }; + } + else + { + try + { + installation = installations.First(inst => inst.Path == editorPath); + } + catch (InvalidOperationException) + { + installation = new CodeEditor.Installation + { + Name = "Visual Studio Code", + Path = editorPath + }; + } + } + + return true; + } + + public void OnGUI() + { + Arguments = EditorGUILayout.TextField("External Script Editor Args", Arguments); + if (GUILayout.Button(k_ResetArguments, GUILayout.Width(120))) + { + Arguments = DefaultArgument; + } + var prevGenerate = EditorPrefs.GetBool(vscode_generate_all, false); + + var generateAll = EditorGUILayout.Toggle("Generate all .csproj files.", prevGenerate); + if (generateAll != prevGenerate) + { + EditorPrefs.SetBool(vscode_generate_all, generateAll); + } + m_ProjectGeneration.GenerateAll(generateAll); + + HandledExtensionsString = EditorGUILayout.TextField(new GUIContent("Extensions handled: "), HandledExtensionsString); + } + + public void CreateIfDoesntExist() + { + if (!m_ProjectGeneration.HasSolutionBeenGenerated()) + { + m_ProjectGeneration.Sync(); + } + } + + public void SyncIfNeeded(string[] addedFiles, string[] deletedFiles, string[] movedFiles, string[] movedFromFiles, string[] importedFiles) + { + m_ProjectGeneration.SyncIfNeeded(addedFiles.Union(deletedFiles).Union(movedFiles).Union(movedFromFiles), importedFiles); + } + + public void SyncAll() + { + AssetDatabase.Refresh(); + m_ProjectGeneration.Sync(); + } + + public bool OpenProject(string path, int line, int column) + { + if (path != "" && !SupportsExtension(path)) // Assets - Open C# Project passes empty path here + { + return false; + } + + if (line == -1) + line = 1; + if (column == -1) + column = 0; + + string arguments; + if (Arguments != DefaultArgument) + { + arguments = m_ProjectGeneration.ProjectDirectory != path + ? CodeEditor.ParseArgument(Arguments, path, line, column) + : m_ProjectGeneration.ProjectDirectory; + } + else + { + arguments = $@"""{m_ProjectGeneration.ProjectDirectory}"""; + if (m_ProjectGeneration.ProjectDirectory != path && path.Length != 0) + { + arguments += $@" -g ""{path}"":{line}:{column}"; + } + } + + if (IsOSX) + { + return OpenOSX(arguments); + } + + var process = new Process + { + StartInfo = new ProcessStartInfo + { + FileName = GetDefaultApp, + Arguments = arguments, + WindowStyle = ProcessWindowStyle.Hidden, + CreateNoWindow = true, + UseShellExecute = true, + } + }; + + process.Start(); + return true; + } + + static bool OpenOSX(string arguments) + { + var process = new Process + { + StartInfo = new ProcessStartInfo + { + FileName = "open", + Arguments = $"\"{GetDefaultApp}\" --args {arguments}", + UseShellExecute = true, + } + }; + + process.Start(); + return true; + } + + static bool SupportsExtension(string path) + { + var extension = Path.GetExtension(path); + if (string.IsNullOrEmpty(extension)) + return false; + return HandledExtensions.Contains(extension.TrimStart('.')); + } + + public CodeEditor.Installation[] Installations => m_Discoverability.PathCallback(); + + public VSCodeScriptEditor(IDiscovery discovery, IGenerator projectGeneration) + { + m_Discoverability = discovery; + m_ProjectGeneration = projectGeneration; + } + + static VSCodeScriptEditor() + { + var editor = new VSCodeScriptEditor(new VSCodeDiscovery(), new ProjectGeneration()); + CodeEditor.Register(editor); + + if (IsVSCodeInstallation(CodeEditor.CurrentEditorInstallation)) + { + editor.CreateIfDoesntExist(); + } + } + + static bool IsVSCodeInstallation(string path) + { + if (string.IsNullOrEmpty(path)) + { + return false; + } + + var lowerCasePath = path.ToLower(); + var filename = Path + .GetFileName(lowerCasePath.Replace('\\', Path.DirectorySeparatorChar).Replace('/', Path.DirectorySeparatorChar)) + .Replace(" ", ""); + return k_SupportedFileNames.Contains(filename); + } + + public void Initialize(string editorInstallationPath) + { + } + } +} diff --git a/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/VSCodeScriptEditor.cs.meta b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/VSCodeScriptEditor.cs.meta new file mode 100644 index 0000000..3ee90b4 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.vscode@1.1.0/Editor/VSCodeScriptEditor.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ac3f13489022aa34d861a0320a6917b9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.vscode@1.1.0/LICENSE.md b/Library/PackageCache/com.unity.ide.vscode@1.1.0/LICENSE.md new file mode 100644 index 0000000..8098f2d --- /dev/null +++ b/Library/PackageCache/com.unity.ide.vscode@1.1.0/LICENSE.md @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2019 Unity Technologies + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/Library/PackageCache/com.unity.ide.vscode@1.1.0/LICENSE.md.meta b/Library/PackageCache/com.unity.ide.vscode@1.1.0/LICENSE.md.meta new file mode 100644 index 0000000..b593b57 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.vscode@1.1.0/LICENSE.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: c9aabac5924106d4790d7b3a924ca34d +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.ide.vscode@1.1.0/package.json b/Library/PackageCache/com.unity.ide.vscode@1.1.0/package.json new file mode 100644 index 0000000..2972856 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.vscode@1.1.0/package.json @@ -0,0 +1,17 @@ +{ + "name": "com.unity.ide.vscode", + "displayName": "Visual Studio Code Editor", + "description": "Code editor integration for supporting Visual Studio Code as code editor for unity. Adds support for generating csproj files for intellisense purposes, auto discovery of installations, etc.", + "version": "1.1.0", + "unity": "2019.2", + "unityRelease": "0a12", + "dependencies": {}, + "relatedPackages": { + "com.unity.ide.vscode.tests": "1.0.4" + }, + "repository": { + "type": "git", + "url": "git@github.cds.internal.unity3d.com:unity/com.unity.ide.vscode.git", + "revision": "be12768c09e4711e6d38ba647df27fac67dbfd1f" + } +} diff --git a/Library/PackageCache/com.unity.ide.vscode@1.1.0/package.json.meta b/Library/PackageCache/com.unity.ide.vscode@1.1.0/package.json.meta new file mode 100644 index 0000000..1ac0518 --- /dev/null +++ b/Library/PackageCache/com.unity.ide.vscode@1.1.0/package.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ffc6271f08270b64ca0aae9c49235d81 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/CHANGELOG.md b/Library/PackageCache/com.unity.test-framework@1.0.13/CHANGELOG.md new file mode 100644 index 0000000..cac5b9d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/CHANGELOG.md @@ -0,0 +1,31 @@ +# Changelog +## [1.0.13] - 2019-05-07 +- Fixed a regression where results from the player would no longer update correctly in the UI (case 1151147). + +## [1.0.12] - 2019-04-16 +- Added specific unity release to the package information. + +## [1.0.11] - 2019-04-10 +- Fixed a regression from 1.0.10 where test-started events were triggered multiple times after a domain reload. + +## [1.0.10] - 2019-04-08 +- Fixed an issue where test-started events would not be fired correctly after a test performing a domain reload (case 1141530). +- The UI should correctly run tests inside a nested class, when that class is selected. +- All actions should now correctly display a prefix when reporting test result. E.g. "TearDown :". +- Errors logged with Debug.LogError in TearDowns now append the error, rather than overwriting the existing result (case 1114306). +- Incorrect implementations of IWrapTestMethod and IWrapSetUpTearDown now gives a meaningful error. +- Fixed a regression where the Test Framework would run TearDown in a base class before the inheriting class (case 1142553). +- Fixed a regression introduced in 1.0.9 where tests with the Explicit attribute could no longer be executed. + +## [1.0.9] - 2019-03-27 +- Fixed an issue where a corrupt instance of the test runner window would block for a new being opened. +- Added the required modules to the list of package requirements. +- Fixed an issue where errors would happen if the test filter ui was clicked before the ui is done loading. +- Fix selecting items with duplicate names in test hierarchy of Test Runner window (case 987587). +- Fixed RecompileScripts instruction which we use in tests (case 1128994). +- Fixed an issue where using multiple filters on tests would sometimes give an incorrect result. + +## [1.0.7] - 2019-03-12 +### This is the first release of *Unity Package com.unity.test-framework*. + +- Migrated the test-framework from the current extension in unity. diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/CHANGELOG.md.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/CHANGELOG.md.meta new file mode 100644 index 0000000..4fca79e --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/CHANGELOG.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: d691174143fd3774ba63d7c493633b99 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/CONTRIBUTING.md b/Library/PackageCache/com.unity.test-framework@1.0.13/CONTRIBUTING.md new file mode 100644 index 0000000..9f299b1 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/CONTRIBUTING.md @@ -0,0 +1,9 @@ +# Contributing + +## If you are interested in contributing, here are some ground rules: +* ... Define guidelines & rules for what contributors need to know to successfully make Pull requests against your repo ... + +## All contributions are subject to the [Unity Contribution Agreement(UCA)](https://unity3d.com/legal/licenses/Unity_Contribution_Agreement) +By making a pull request, you are confirming agreement to the terms and conditions of the UCA, including that your Contributions are your original creation and that you have complete right and authority to make your Contributions. + +## Once you have a change ready following these ground rules. Simply make a pull request diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/CONTRIBUTING.md.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/CONTRIBUTING.md.meta new file mode 100644 index 0000000..39e850a --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/CONTRIBUTING.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 57d2ac5c7d5786e499d4794973fe0d4e +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/Documentation~/PlaymodeTestFramework.md b/Library/PackageCache/com.unity.test-framework@1.0.13/Documentation~/PlaymodeTestFramework.md new file mode 100644 index 0000000..eeb18bc --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/Documentation~/PlaymodeTestFramework.md @@ -0,0 +1,224 @@ +# Writing and executing tests in Unity Test Runner + +The Unity Test Runner tests your code in __Edit__ mode and __Play__ mode, as well as on target platforms such as Standalone, Android, or iOS. + +The documentation on this page discusses writing and executing tests in the the Unity Test Runner, and assumes you understand both [scripting](https://docs.unity3d.com/Manual/CreatingAndUsingScripts.html) and the [Unity Test Runner](About.md). + +Unity delivers test results in an XML format. For more information, see the [NUnit documentation on XML format test results](https://github.com/nunit/docs/wiki/Test-Result-XML-Format). + +## UnityTestAttribute + +[UnityTestAttribute](https://docs.unity3d.com/ScriptReference/TestTools.UnityTestAttribute.html) requires you to return `IEnumerator`. In __Play__ mode, execute the test as a [coroutine](https://docs.unity3d.com/ScriptReference/Coroutine.html). In __Edit__ mode, you can yield `null` from the test, which skips the current frame. + +__Note:__ The WebGL and WSA platforms do not support `UnityTestAttribute`. + +### Regular NUnit test (works in Edit mode and Play mode) + +``` +[Test] +public void GameObject_CreatedWithGiven_WillHaveTheName() +{ + var go = new GameObject("MyGameObject"); + Assert.AreEqual("MyGameObject", go.name); +} +``` + +### Example in Play mode + +``` +[UnityTest] +public IEnumerator GameObject_WithRigidBody_WillBeAffectedByPhysics() +{ + var go = new GameObject(); + go.AddComponent(); + var originalPosition = go.transform.position.y; + + yield return new WaitForFixedUpdate(); + + Assert.AreNotEqual(originalPosition, go.transform.position.y); +} +``` + +### Example in Edit mode: + +``` +[UnityTest] +public IEnumerator EditorUtility_WhenExecuted_ReturnsSuccess() +{ + var utility = RunEditorUtilityInTheBackgroud(); + + while (utility.isRunning) + { + yield return null; + } + + Assert.IsTrue(utility.isSuccess); +} +``` + +## UnityPlatformAttribute + +Use [UnityPlatformAttribute](https://docs.unity3d.com/ScriptReference/TestTools.UnityPlatformAttribute.html) to filter tests based on the the executing platform. It behaves like the [NUnit ](http://nunit.org/docs/2.5/platform.html)[PlatformAttribute](http://nunit.org/docs/2.5/platform.html). + +``` +[Test] +[UnityPlatform (RuntimePlatform.WindowsPlayer)] +public void TestMethod1() +{ + Assert.AreEqual(Application.platform, RuntimePlatform.WindowsPlayer); +} + +[Test] +[UnityPlatform(exclude = new[] {RuntimePlatform.WindowsEditor })] +public void TestMethod2() +{ + Assert.AreNotEqual(Application.platform, RuntimePlatform.WindowsEditor); +} +``` + +To only execute Editor tests on a given platform, you can also use `UnityPlatform` . + +### PrebuildSetupAttriubte + +Use [PrebuildSetupAttribute](https://docs.unity3d.com/ScriptReference/TestTools.PrebuildSetupAttribute.html) if you need to perform any extra set-up before the test starts. To do this, specify the class type that implements the [IPrebuildSetup](https://docs.unity3d.com/ScriptReference/TestTools.IPrebuildSetup.html) interface. If you need to run the set-up code for the whole class (for example, if you want to execute some code before the test starts, such as Asset preparation or set-up required for a specific test), implement the `IPrebuildSetup` interface in the class for tests. + +``` +public class TestsWithPrebuildStep : IPrebuildSetup +{ + public void Setup() + { + // Run this code before the tests are executed + } + + [Test] + //PrebuildSetupAttribute can be skipped because it's implemented in the same class + [PrebuildSetup(typeof(TestsWithPrebuildStep))] + public void Test() + { + (...) + } +} +``` + +Execute the `IPrebuildSetup` code before entering Play mode or building a player. Setup can use UnityEditor namespace and its function, but to avoid compilation errors, you must place it either in the *Editor* folder, or guard it with the `#if UNITY_EDITOR` directive. + +## LogAssert + +A test fails if Unity logs a message other than a regular log or warning message. Use the [LogAssert](https://docs.unity3d.com/ScriptReference/TestTools.LogAssert.html) class to make a message expected in the log, so that the test does not fail when Unity logs that message. + +A test also reports as failed if an expected message does not appear, or if Unity does not log any regular log or warning messages. + +### Example + +``` +[Test] +public void LogAssertExample() +{ + //Expect a regular log message + LogAssert.Expect(LogType.Log, "Log message"); + //A log message is expected so without the following line + //the test would fail + Debug.Log("Log message"); + //An error log is printed + Debug.LogError("Error message"); + //Without expecting an error log, the test would fail + LogAssert.Expect(LogType.Error, "Error message"); +} +``` + +## MonoBehaviourTest + +[MonoBehaviourTest](https://docs.unity3d.com/ScriptReference/TestTools.MonoBehaviourTest_1.html) is a [coroutine](https://docs.unity3d.com/ScriptReference/Coroutine.html), and a helper for writing [MonoBehaviour](https://docs.unity3d.com/ScriptReference/MonoBehaviour.html) tests. Yield `MonoBehaviourTest` from the [UnityTest](https://docs.unity3d.com/ScriptReference/TestTools.UnityTestAttribute.html) attribute to instantiate the specified MonoBehaviour and wait for it to finish executing. Implement the [IMonoBehaviourTest](https://docs.unity3d.com/ScriptReference/TestTools.IMonoBehaviourTest.html) interface to indicate when the test is done. + +### Example + +``` +[UnityTest] +public IEnumerator MonoBehaviourTest_Works() +{ + yield return new MonoBehaviourTest(); +} + +public class MyMonoBehaviourTest : MonoBehaviour, IMonoBehaviourTest +{ + private int frameCount; + public bool IsTestFinished + { + get { return frameCount > 10; } + } + + void Update() + { + frameCount++; + } +} +``` + +## Running tests on platforms + +In __Play__ mode, you can run tests on specific platforms. The target platform is always the current Platform selected in [Build Settings](https://docs.unity3d.com/Manual/BuildSettings.html) (menu: __File__ > __Build Settings__). Click __Run all in the player__ to build and run your tests on the currently active target platform. + +Note that your current platform displays in brackets on the button. For example, in the screenshot below, the button reads __Run all in player (StandaloneWindows)__, because the current platform is Windows. + +![](UnityTestRunner-3.png) + +The test results display in the build once the test is complete. + +![](UnityTestRunner-4.png) + +To get the test results from the platform to the Editor running the test, both need to be on same network. The application running on the platform reports back the test results, displays the tests executed, and shuts down. + +Note that some platforms do not support shutting down the application with [Application.Quit](https://docs.unity3d.com/ScriptReference/Application.Quit.html). These continue running after reporting test results. + +If Unity cannot instantiate the connection, you can visually see the tests succeed in the running application. Note that running tests on platforms with arguments, in this state, does not provide XML test results. + +## Running from the command line + +To do this, run Unity with the following [command line arguments](https://docs.unity3d.com/Manual/CommandLineArguments.html): + +* `runTest` - Executes tests in the Project. + +* `testPlatform` - The platform you want to run tests on. + + * Available platforms: + + * `playmode` and `editmode`. Note that If unspecified, tests run in `editmode` by default. + + * Platform/Type convention is from the [BuildTarget](https://docs.unity3d.com/ScriptReference/BuildTarget.html) enum. The tested and official supported platforms: + + * [StandaloneWindows](https://docs.unity3d.com/ScriptReference/BuildTarget.StandaloneWindows.html) + + * [StandaloneWindows64](https://docs.unity3d.com/ScriptReference/BuildTarget.StandaloneWindows64.html) + + * [StandaloneOSXIntel](https://docs.unity3d.com/ScriptReference/BuildTarget.StandaloneOSXIntel.html) + + * [StandaloneOSXIntel64](https://docs.unity3d.com/ScriptReference/BuildTarget.StandaloneOSXIntel64.html) + + * [iOS](https://docs.unity3d.com/ScriptReference/BuildTarget.iOS.html) + + * [tvOS](https://docs.unity3d.com/ScriptReference/BuildTarget.tvOS.html) + + * [Android](https://docs.unity3d.com/ScriptReference/BuildTarget.Android.html) + + * [PS4](https://docs.unity3d.com/ScriptReference/BuildTarget.PS4.html) + + * [XboxOne](https://docs.unity3d.com/ScriptReference/BuildTarget.XboxOne.html) + +* `testResults` - The path indicating where Unity should save the result file. By default, Unity saves it in the Project’s root folder. + +### Example + +The following example shows a command line argument on Windows. The specific line may differ depending on your operating system. + + +``` +>Unity.exe -runTests -projectPath PATH_TO_YOUR_PROJECT -testResults C:\temp\results.xml -testPlatform editmode +``` + +__Tip:__ On Windows, in order to read the result code of the executed command, run the following: + +`start /WAIT Unity.exe ARGUMENT_LIST`. + +## Comparison utilities + +The [UnityEngine.TestTools.Utils](https://docs.unity3d.com/ScriptReference/TestTools.Utils.Utils.html) namespace contains utility classes to compare [Vector2](https://docs.unity3d.com/ScriptReference/Vector2.html), [Vector3](https://docs.unity3d.com/ScriptReference/Vector3.html), [Vector4](https://docs.unity3d.com/ScriptReference/Vector4.html), [Quaternion](https://docs.unity3d.com/ScriptReference/Quaternion.html), [Color](https://docs.unity3d.com/ScriptReference/Color.html) and `float` types using NUnit constraints. \ No newline at end of file diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/Documentation~/UnityTestRunner-0.png b/Library/PackageCache/com.unity.test-framework@1.0.13/Documentation~/UnityTestRunner-0.png new file mode 100644 index 0000000000000000000000000000000000000000..b07810477159f138c842671bb1ada3f6c30d83c4 GIT binary patch literal 17526 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 E3*)@Xz5oCK literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/Documentation~/UnityTestRunner-1.png b/Library/PackageCache/com.unity.test-framework@1.0.13/Documentation~/UnityTestRunner-1.png new file mode 100644 index 0000000000000000000000000000000000000000..9c68789d856ebc47793ca6b35cbd286c9077edf5 GIT binary patch literal 30515 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 EFV@$lwEzGB literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/Documentation~/UnityTestRunner-2.png b/Library/PackageCache/com.unity.test-framework@1.0.13/Documentation~/UnityTestRunner-2.png new file mode 100644 index 0000000000000000000000000000000000000000..a6fedfb92f8a6c20f33d2c06a7806d30647026ea GIT binary patch literal 21471 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 __Test Runner__. + +![](UnityTestRunner-0.png) + +The Unity Test Runner uses a Unity integration of the NUnit library, which is an open-source unit testing library for .Net languages. For more information about NUnit, see the [official NUnit website](http://www.nunit.org/) and the [NUnit documentation on GitHub](https://github.com/nunit/docs/wiki/NUnit-Documentation). + +[UnityTestAttribute](https://docs.unity3d.com/ScriptReference/TestTools.UnityTestAttribute.html) is the main addition to the standard NUnit library for the Unity Test Runner. This is a type of unit test that allows you to skip a frame from within a test (which allows background tasks to finish). To use `UnityTestAttribute`: + +* In __Play__ mode: Execute `UnityTestAttribute` as a [coroutine](https://docs.unity3d.com/ScriptReference/Coroutine.html). + +* In __Edit__ mode: Execute `UnityTestAttribute` in the [EditorApplication.update](https://docs.unity3d.com/ScriptReference/EditorApplication-update.html) callback loop. + +## Known issues and limitations + +There are some known issues and limitations of the Unity Test Runner: + +* The WebGL and WSA platforms do not support `UnityTestAttribute`. + +* `UnityTest` does not support [Parameterized tests](https://github.com/nunit/docs/wiki/Parameterized-Tests) (except for `ValueSource`). + +## How to use Unity Test Runner + +This page assumes you already have an understanding of unit testing and NUnit. If you are new to NUnit or would like more information, see to the [NUnit documentation on GitHub](https://github.com/nunit/docs/wiki/NUnit-Documentation). + +To open the Unity Test Runner, open Unity and go to __Window__ > __Test Runner__. If there are no tests in your Project, click the __Create Test Script in current folder__ button to create a basic test script. This button is greyed out if adding a test script would result in a compilation error. The conditions for adding a test script are in the [Editor](https://docs.unity3d.com/Manual/SpecialFolders.html) folder, or any folders using Assembly Definition files that reference test assemblies (NUnit, Unity Test Runner, and user script assemblies). + +![](UnityTestRunner-1.png) + +You can also create test scripts by navigating to __Assets__ > __Create__ > __C# Test Script__. This option is disabled if adding a test script would result in a compilation error. + +__Note:__ Unity does not include test assemblies (NUnit, Unity TestRunner, and user script assemblies) when using the normal build pipeline, but does include them when using "Run on <Platform>" in the Test Runner Window. + +### Testing in Edit mode + +In __Edit__ mode, Unity runs tests from the Test Runner window. + +Edit mode test scripts are defined by the file location you place them in. Valid locations: + +* Project [Editor](https://docs.unity3d.com/Manual/SpecialFolders.html) folder + +* Assembly Definition file that references test assemblies that are Editor-only + +* Precompiled assemblies that are in the Project’s [Editor](https://docs.unity3d.com/Manual/SpecialFolders.html) folder + +Click the __EditMode__ button, then click __Create Test Script in current folder__ to create a basic test script. Open and edit this in your preferred script editing software as required. + +Note: When running in __Edit__ mode, execute [UnityTestAttribute](https://docs.unity3d.com/ScriptReference/TestTools.UnityTestAttribute.html) in the [EditorApplication.update](https://docs.unity3d.com/ScriptReference/EditorApplication-update.html) callback loop. + +### Testing in Play mode + +You need to place Play mode test scripts in a folder that an Assembly Definition file includes. The Assembly Definition file needs to reference test assemblies (Nunit and Unity TestRunner). Pre-defined Unity assemblies (such as *Assembly-CSharp.dll*) do not reference the defined assembly. This Assembly Definition file also needs to reference the assembly you want to test. This means that it’s only possible to test code defined by other Assembly Definition files. + +Unity does not include test assemblies in normal player builds; only when running through the Test Runner. If you need to test code in pre-defined assemblies, you can reference test assemblies from all the assemblies. However, you must manually remove these tests afterwards, so that Unity does not add them to the final player build. + +To do this: + +1. Save your project. + +2. Go to __Window__ > __Test Runner.__ + +3. Click the small drop-down menu in the top-right of the window. + +4. Click __Enable playmode tests for all assemblies__. + +5. In the dialog box appears, click __OK__ to manually restart the Editor. + +![](UnityTestRunner-2.png) + +__Note:__ Enabling __PlayMode__ tests for all assemblies includes additional assemblies in your Project’s build, which can increase your Project’s size as well as build time. + +To create __PlayMode__ test scripts, select __PlayMode__ in the Test Runner window and click __Create Test Script in current folder__. This button is greyed out if adding the script would result in a compilation error. + +__Note__: Execute [UnityTestAttribute](https://docs.unity3d.com/ScriptReference/TestTools.UnityTestAttribute.html) as a [coroutine](https://docs.unity3d.com/ScriptReference/Coroutine.html) when running in __Play__ mode. diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/LICENSE.md b/Library/PackageCache/com.unity.test-framework@1.0.13/LICENSE.md new file mode 100644 index 0000000..f2dc729 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/LICENSE.md @@ -0,0 +1,5 @@ +Test Framework copyright © 2019 Unity Technologies ApS + +Licensed under the Unity Companion License for Unity-dependent projects--see [Unity Companion License](http://www.unity3d.com/legal/licenses/Unity_Companion_License). + +Unless expressly provided otherwise, the Software under this license is made available strictly on an “AS IS†BASIS WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. Please review the license for details on these and other terms and conditions. diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/LICENSE.md.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/LICENSE.md.meta new file mode 100644 index 0000000..f6a2ca2 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/LICENSE.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 3ec7596410385054a9e0bc90377fbe63 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner.meta new file mode 100644 index 0000000..d1eb573 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 95cdf27b47eb82747ba9e51f41e72a35 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api.meta new file mode 100644 index 0000000..2ffb8f9 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: fa423365b1ce06a4dbdc6fb4a8597bfa +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksDelegator.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksDelegator.cs new file mode 100644 index 0000000..ca73e2d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksDelegator.cs @@ -0,0 +1,116 @@ +using System; +using System.Linq; +using System.Text; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; +using UnityEngine; +using UnityEngine.TestRunner.TestLaunchers; + +namespace UnityEditor.TestTools.TestRunner.Api +{ + internal class CallbacksDelegator + { + private static CallbacksDelegator s_instance; + public static CallbacksDelegator instance + { + get + { + if (s_instance == null) + { + s_instance = new CallbacksDelegator(CallbacksHolder.instance.GetAll, new TestAdaptorFactory()); + } + return s_instance; + } + } + + private readonly Func m_CallbacksProvider; + private readonly ITestAdaptorFactory m_AdaptorFactory; + + public CallbacksDelegator(Func callbacksProvider, ITestAdaptorFactory adaptorFactory) + { + m_CallbacksProvider = callbacksProvider; + m_AdaptorFactory = adaptorFactory; + } + + public void RunStarted(ITest testsToRun) + { + var testRunnerTestsToRun = m_AdaptorFactory.Create(testsToRun); + TryInvokeAllCallbacks(callbacks => callbacks.RunStarted(testRunnerTestsToRun)); + } + + public void RunStartedRemotely(byte[] testsToRunData) + { + var testData = Deserialize(testsToRunData); + var testsToRun = m_AdaptorFactory.BuildTree(testData); + TryInvokeAllCallbacks(callbacks => callbacks.RunStarted(testsToRun)); + } + + public void RunFinished(ITestResult testResults) + { + var testResult = m_AdaptorFactory.Create(testResults); + TryInvokeAllCallbacks(callbacks => callbacks.RunFinished(testResult)); + } + + public void RunFinishedRemotely(byte[] testResultsData) + { + var remoteTestResult = Deserialize(testResultsData); + var testResult = m_AdaptorFactory.Create(remoteTestResult.results.First(), remoteTestResult); + TryInvokeAllCallbacks(callbacks => callbacks.RunFinished(testResult)); + } + + public void RunFailed(string failureMessage) + { + var nunitTestResult = new TestSuiteResult(new TestSuite("test")); + nunitTestResult.SetResult(ResultState.Error, failureMessage); + var testResult = m_AdaptorFactory.Create(nunitTestResult); + TryInvokeAllCallbacks(callbacks => callbacks.RunFinished(testResult)); + } + + public void TestStarted(ITest test) + { + var testRunnerTest = m_AdaptorFactory.Create(test); + TryInvokeAllCallbacks(callbacks => callbacks.TestStarted(testRunnerTest)); + } + + public void TestStartedRemotely(byte[] testStartedData) + { + var testData = Deserialize(testStartedData); + var testsToRun = m_AdaptorFactory.BuildTree(testData); + + TryInvokeAllCallbacks(callbacks => callbacks.TestStarted(testsToRun)); + } + + public void TestFinished(ITestResult result) + { + var testResult = m_AdaptorFactory.Create(result); + TryInvokeAllCallbacks(callbacks => callbacks.TestFinished(testResult)); + } + + public void TestFinishedRemotely(byte[] testResultsData) + { + var remoteTestResult = Deserialize(testResultsData); + var testResult = m_AdaptorFactory.Create(remoteTestResult.results.First(), remoteTestResult); + TryInvokeAllCallbacks(callbacks => callbacks.TestFinished(testResult)); + } + + private void TryInvokeAllCallbacks(Action callbackAction) + { + foreach (var testRunnerApiCallback in m_CallbacksProvider()) + { + try + { + callbackAction(testRunnerApiCallback); + } + catch (Exception ex) + { + Debug.LogException(ex); + } + } + } + + private static T Deserialize(byte[] data) + { + return JsonUtility.FromJson(Encoding.UTF8.GetString(data)); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksDelegator.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksDelegator.cs.meta new file mode 100644 index 0000000..89e0904 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksDelegator.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0de03ebd74e2b474fa23d05ab42d0cd8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksDelegatorListener.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksDelegatorListener.cs new file mode 100644 index 0000000..c19621d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksDelegatorListener.cs @@ -0,0 +1,28 @@ +using UnityEngine; +using UnityEngine.TestTools.TestRunner; + +namespace UnityEditor.TestTools.TestRunner.Api +{ + internal class CallbacksDelegatorListener : ScriptableObject, ITestRunnerListener + { + public void RunStarted(NUnit.Framework.Interfaces.ITest testsToRun) + { + CallbacksDelegator.instance.RunStarted(testsToRun); + } + + public void RunFinished(NUnit.Framework.Interfaces.ITestResult testResults) + { + CallbacksDelegator.instance.RunFinished(testResults); + } + + public void TestStarted(NUnit.Framework.Interfaces.ITest test) + { + CallbacksDelegator.instance.TestStarted(test); + } + + public void TestFinished(NUnit.Framework.Interfaces.ITestResult result) + { + CallbacksDelegator.instance.TestFinished(result); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksDelegatorListener.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksDelegatorListener.cs.meta new file mode 100644 index 0000000..c9bb94a --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksDelegatorListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f3e1b3cbf3fac6a459b1a602167ad311 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksHolder.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksHolder.cs new file mode 100644 index 0000000..07b8ecf --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksHolder.cs @@ -0,0 +1,40 @@ +using System.Collections.Generic; +using System.Linq; + +namespace UnityEditor.TestTools.TestRunner.Api +{ + internal class CallbacksHolder : ScriptableSingleton + { + private List m_Callbacks = new List(); + public void Add(ICallbacks callback, int priority) + { + m_Callbacks.Add(new CallbackWithPriority(callback, priority)); + } + + public void Remove(ICallbacks callback) + { + m_Callbacks.RemoveAll(callbackWithPriority => callbackWithPriority.Callback == callback); + } + + public ICallbacks[] GetAll() + { + return m_Callbacks.OrderByDescending(callback => callback.Priority).Select(callback => callback.Callback).ToArray(); + } + + public void Clear() + { + m_Callbacks.Clear(); + } + + private struct CallbackWithPriority + { + public ICallbacks Callback; + public int Priority; + public CallbackWithPriority(ICallbacks callback, int priority) + { + Callback = callback; + Priority = priority; + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksHolder.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksHolder.cs.meta new file mode 100644 index 0000000..7c42028 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/CallbacksHolder.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4884ccc3528cb2e40a0e6f0a19a2b35b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ExecutionSettings.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ExecutionSettings.cs new file mode 100644 index 0000000..76a6bc8 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ExecutionSettings.cs @@ -0,0 +1,9 @@ +namespace UnityEditor.TestTools.TestRunner.Api +{ + internal class ExecutionSettings + { + public BuildTarget? targetPlatform; + public ITestRunSettings overloadTestRunSettings; + public Filter filter; + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ExecutionSettings.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ExecutionSettings.cs.meta new file mode 100644 index 0000000..602a117 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ExecutionSettings.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: eea34a28297f9bc4c9f4c573bc8d5d1c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/Filter.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/Filter.cs new file mode 100644 index 0000000..96b4657 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/Filter.cs @@ -0,0 +1,34 @@ +using System; +using UnityEngine; +using UnityEngine.TestTools.TestRunner.GUI; + +namespace UnityEditor.TestTools.TestRunner.Api +{ + [Serializable] + internal class Filter + { + [SerializeField] + public TestMode testMode; + [SerializeField] + public string[] testNames; + [SerializeField] + public string[] groupNames; + [SerializeField] + public string[] categoryNames; + [SerializeField] + public string[] assemblyNames; + + public static Filter empty = new Filter(); + + internal TestRunnerFilter ToTestRunnerFilter() + { + return new TestRunnerFilter() + { + testNames = testNames, + categoryNames = categoryNames, + groupNames = groupNames, + assemblyNames = assemblyNames + }; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/Filter.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/Filter.cs.meta new file mode 100644 index 0000000..bbb21b5 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/Filter.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 05f92e4a2414cb144a92157752dfa324 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ICallbacks.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ICallbacks.cs new file mode 100644 index 0000000..c6b3e47 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ICallbacks.cs @@ -0,0 +1,10 @@ +namespace UnityEditor.TestTools.TestRunner.Api +{ + internal interface ICallbacks + { + void RunStarted(ITestAdaptor testsToRun); + void RunFinished(ITestResultAdaptor result); + void TestStarted(ITestAdaptor test); + void TestFinished(ITestResultAdaptor result); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ICallbacks.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ICallbacks.cs.meta new file mode 100644 index 0000000..851e3f6 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ICallbacks.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 93eea84e53d0226479c9a584f19427b5 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestAdaptor.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestAdaptor.cs new file mode 100644 index 0000000..5474a89 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestAdaptor.cs @@ -0,0 +1,27 @@ +using System.Collections.Generic; +using NUnit.Framework.Interfaces; + +namespace UnityEditor.TestTools.TestRunner.Api +{ + internal interface ITestAdaptor + { + string Id { get; } + string Name { get; } + string FullName { get; } + int TestCaseCount { get; } + bool HasChildren { get; } + bool IsSuite { get; } + IEnumerable Children { get; } + int TestCaseTimeout { get; } + ITypeInfo TypeInfo { get; } + IMethodInfo Method { get; } + string[] Categories { get; } + bool IsTestAssembly { get; } + RunState RunState { get; } + string Description { get; } + string SkipReason { get; } + string ParentId { get; } + string UniqueName { get; } + string ParentUniqueName { get; } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestAdaptor.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestAdaptor.cs.meta new file mode 100644 index 0000000..2ae45af --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestAdaptor.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 85dd7af03f02aea4aae13a3945e3b313 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestAdaptorFactory.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestAdaptorFactory.cs new file mode 100644 index 0000000..bf59902 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestAdaptorFactory.cs @@ -0,0 +1,16 @@ +using System.Collections.Generic; +using NUnit.Framework.Interfaces; +using UnityEngine.TestRunner.TestLaunchers; + +namespace UnityEditor.TestTools.TestRunner.Api +{ + internal interface ITestAdaptorFactory + { + ITestAdaptor Create(ITest test); + ITestAdaptor Create(RemoteTestData testData); + ITestResultAdaptor Create(ITestResult testResult); + ITestResultAdaptor Create(RemoteTestResultData testResult, RemoteTestResultDataWithTestData allData); + ITestAdaptor BuildTree(RemoteTestResultDataWithTestData data); + IEnumerator BuildTreeAsync(RemoteTestResultDataWithTestData data); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestAdaptorFactory.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestAdaptorFactory.cs.meta new file mode 100644 index 0000000..05dadba --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestAdaptorFactory.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 803abab0f7e17044db56f8760186dbd1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestResultAdaptor.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestResultAdaptor.cs new file mode 100644 index 0000000..703b5d6 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestResultAdaptor.cs @@ -0,0 +1,86 @@ +using System; +using System.Collections.Generic; +using NUnit.Framework.Interfaces; + +namespace UnityEditor.TestTools.TestRunner.Api +{ + internal interface ITestResultAdaptor + { + ITestAdaptor Test { get; } + string Name { get; } + + /// Gets the full name of the test result + string FullName { get; } + + string ResultState { get; } + + TestStatus TestStatus { get; } + + /// Gets the elapsed time for running the test in seconds + double Duration { get; } + + /// Gets or sets the time the test started running. + DateTime StartTime { get; } + + /// Gets or sets the time the test finished running. + DateTime EndTime { get; } + + /// + /// Gets the message associated with a test + /// failure or with not running the test + /// + string Message { get; } + + /// + /// Gets any stacktrace associated with an + /// error or failure. Not available in + /// the Compact Framework 1.0. + /// + string StackTrace { get; } + + /// + /// Gets the number of asserts executed + /// when running the test and all its children. + /// + int AssertCount { get; } + + /// + /// Gets the number of test cases that failed + /// when running the test and all its children. + /// + int FailCount { get; } + + /// + /// Gets the number of test cases that passed + /// when running the test and all its children. + /// + int PassCount { get; } + + /// + /// Gets the number of test cases that were skipped + /// when running the test and all its children. + /// + int SkipCount { get; } + + /// + /// Gets the number of test cases that were inconclusive + /// when running the test and all its children. + /// + int InconclusiveCount { get; } + + /// + /// Indicates whether this result has any child results. + /// Accessing HasChildren should not force creation of the + /// Children collection in classes implementing this interface. + /// + bool HasChildren { get; } + + /// Gets the the collection of child results. + IEnumerable Children { get; } + + /// Gets any text output written to this result. + string Output { get; } + + TNode ToXml(); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestResultAdaptor.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestResultAdaptor.cs.meta new file mode 100644 index 0000000..5ea944f --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestResultAdaptor.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4f90cfe4bf5cfb44f84a5b11387f2a42 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestRunSettings.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestRunSettings.cs new file mode 100644 index 0000000..aa4515c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestRunSettings.cs @@ -0,0 +1,9 @@ +using System; + +namespace UnityEditor.TestTools.TestRunner.Api +{ + internal interface ITestRunSettings : IDisposable + { + void Apply(); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestRunSettings.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestRunSettings.cs.meta new file mode 100644 index 0000000..27a3a33 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestRunSettings.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 2ae2ce6274819484fa8747a28cebdf3a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestRunnerApi.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestRunnerApi.cs new file mode 100644 index 0000000..f2dff85 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestRunnerApi.cs @@ -0,0 +1,12 @@ +using System; + +namespace UnityEditor.TestTools.TestRunner.Api +{ + interface ITestRunnerApi + { + void Execute(ExecutionSettings executionSettings); + void RegisterCallbacks(T testCallbacks, int priority = 0) where T : ICallbacks; + void UnregisterCallbacks(T testCallbacks) where T : ICallbacks; + void RetrieveTestList(ExecutionSettings executionSettings, Action callback); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestRunnerApi.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestRunnerApi.cs.meta new file mode 100644 index 0000000..d581ffd --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/ITestRunnerApi.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a7842a837a4b13e41ae16193db753418 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/RunState.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/RunState.cs new file mode 100644 index 0000000..eb2c8ab --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/RunState.cs @@ -0,0 +1,11 @@ +namespace UnityEditor.TestTools.TestRunner.Api +{ + internal enum RunState + { + NotRunnable, + Runnable, + Explicit, + Skipped, + Ignored, + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/RunState.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/RunState.cs.meta new file mode 100644 index 0000000..818e3c0 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/RunState.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8bb59cb2f66d156418ca1bd1e2703233 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestAdaptor.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestAdaptor.cs new file mode 100644 index 0000000..0b6dc64 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestAdaptor.cs @@ -0,0 +1,123 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; +using UnityEngine.TestRunner.NUnitExtensions; +using UnityEngine.TestRunner.NUnitExtensions.Runner; +using UnityEngine.TestRunner.TestLaunchers; +using UnityEngine.TestTools.Utils; + +namespace UnityEditor.TestTools.TestRunner.Api +{ + internal class TestAdaptor : ITestAdaptor + { + internal TestAdaptor(ITest test) : this(test, new ITest[0]) + { + } + + internal TestAdaptor(ITest test, ITest[] additionalChildren) + { + Id = test.Id; + Name = test.Name; + var childIndex = -1; + if (test.Properties["childIndex"].Count > 0) + { + childIndex = (int)test.Properties["childIndex"][0]; + } + FullName = childIndex != -1 ? GetIndexedTestCaseName(test.FullName, childIndex) : test.FullName; + TestCaseCount = test.TestCaseCount; + HasChildren = test.HasChildren; + IsSuite = test.IsSuite; + Children = new[] {test.Tests, additionalChildren}.SelectMany(t => t).Select(t => new TestAdaptor(t)).ToArray(); + if (UnityTestExecutionContext.CurrentContext != null) + { + TestCaseTimeout = UnityTestExecutionContext.CurrentContext.TestCaseTimeout; + } + else + { + TestCaseTimeout = CoroutineRunner.k_DefaultTimeout; + } + + TypeInfo = test.TypeInfo; + Method = test.Method; + FullPath = GetFullPath(test); + Categories = test.GetAllCategoriesFromTest().Distinct().ToArray(); + IsTestAssembly = test is TestAssembly; + RunState = (RunState)Enum.Parse(typeof(RunState), test.RunState.ToString()); + Description = (string)test.Properties.Get(PropertyNames.Description); + SkipReason = test.GetSkipReason(); + ParentId = test.GetParentId(); + UniqueName = test.GetUniqueName(); + ParentUniqueName = test.GetParentUniqueName(); + } + + internal TestAdaptor(RemoteTestData test) + { + Id = test.id; + Name = test.name; + FullName = test.ChildIndex != -1 ? GetIndexedTestCaseName(test.fullName, test.ChildIndex) : test.fullName; + TestCaseCount = test.testCaseCount; + HasChildren = test.hasChildren; + IsSuite = test.isSuite; + m_ChildrenIds = test.childrenIds; + TestCaseTimeout = test.testCaseTimeout; + Categories = test.Categories; + IsTestAssembly = test.IsTestAssembly; + RunState = (RunState)Enum.Parse(typeof(RunState), test.RunState.ToString()); + Description = test.Description; + SkipReason = test.SkipReason; + ParentId = test.ParentId; + UniqueName = test.UniqueName; + ParentUniqueName = test.ParentUniqueName; + } + + internal void ApplyChildren(IEnumerable allTests) + { + Children = m_ChildrenIds.Select(id => allTests.First(t => t.Id == id)).ToArray(); + } + + public string Id { get; private set; } + public string Name { get; private set; } + public string FullName { get; private set; } + public int TestCaseCount { get; private set; } + public bool HasChildren { get; private set; } + public bool IsSuite { get; private set; } + public IEnumerable Children { get; private set; } + public int TestCaseTimeout { get; private set; } + public ITypeInfo TypeInfo { get; private set; } + public IMethodInfo Method { get; private set; } + public string FullPath { get; private set; } + private string[] m_ChildrenIds; + public string[] Categories { get; private set; } + public bool IsTestAssembly { get; private set; } + public RunState RunState { get; } + public string Description { get; } + public string SkipReason { get; } + public string ParentId { get; } + public string UniqueName { get; } + public string ParentUniqueName { get; } + + private static string GetFullPath(ITest test) + { + if (test.Parent != null && test.Parent.Parent != null) + return GetFullPath(test.Parent) + "/" + test.Name; + return test.Name; + } + + private static string GetIndexedTestCaseName(string fullName, int index) + { + var generatedTestSuffix = " GeneratedTestCase" + index; + if (fullName.EndsWith(")")) + { + // Test names from generated TestCaseSource look like Test(TestCaseSourceType) + // This inserts a unique test case index in the name, so that it becomes Test(TestCaseSourceType GeneratedTestCase0) + return fullName.Substring(0, fullName.Length - 1) + generatedTestSuffix + fullName[fullName.Length - 1]; + } + + // In some cases there can be tests with duplicate names generated in other ways and they won't have () in their name + // We just append a suffix at the end of the name in that case + return fullName + generatedTestSuffix; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestAdaptor.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestAdaptor.cs.meta new file mode 100644 index 0000000..81e39b7 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestAdaptor.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6e0e62db88935c74288c97c907243bd0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestAdaptorFactory.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestAdaptorFactory.cs new file mode 100644 index 0000000..5fb8ab6 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestAdaptorFactory.cs @@ -0,0 +1,59 @@ +using System.Collections.Generic; +using System.Linq; +using NUnit.Framework.Interfaces; +using UnityEngine.TestRunner.TestLaunchers; + +namespace UnityEditor.TestTools.TestRunner.Api +{ + internal class TestAdaptorFactory : ITestAdaptorFactory + { + public ITestAdaptor Create(ITest test) + { + return new TestAdaptor(test); + } + + public ITestAdaptor Create(RemoteTestData testData) + { + return new TestAdaptor(testData); + } + + public ITestResultAdaptor Create(ITestResult testResult) + { + return new TestResultAdaptor(testResult); + } + + public ITestResultAdaptor Create(RemoteTestResultData testResult, RemoteTestResultDataWithTestData allData) + { + return new TestResultAdaptor(testResult, allData); + } + + public ITestAdaptor BuildTree(RemoteTestResultDataWithTestData data) + { + var tests = data.tests.Select(remoteTestData => new TestAdaptor(remoteTestData)).ToList(); + + foreach (var test in tests) + { + test.ApplyChildren(tests); + } + + return tests.First(); + } + + public IEnumerator BuildTreeAsync(RemoteTestResultDataWithTestData data) + { + var tests = data.tests.Select(remoteTestData => new TestAdaptor(remoteTestData)).ToList(); + + for (var index = 0; index < tests.Count; index++) + { + var test = tests[index]; + test.ApplyChildren(tests); + if (index % 100 == 0) + { + yield return null; + } + } + + yield return tests.First(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestAdaptorFactory.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestAdaptorFactory.cs.meta new file mode 100644 index 0000000..0b1175f --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestAdaptorFactory.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d0663d520c26b7c48a4135599e66acf8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestLauncherFactory.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestLauncherFactory.cs new file mode 100644 index 0000000..d63110b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestLauncherFactory.cs @@ -0,0 +1,57 @@ +using System; +using UnityEngine.TestTools; +using UnityEngine.TestTools.TestRunner; + +namespace UnityEditor.TestTools.TestRunner.Api +{ + internal class TestLauncherFactory + { + internal TestLauncherBase GetLauncher(ExecutionSettings executionSettings) + { + if (executionSettings.filter.testMode == TestMode.EditMode) + { + return GetEditModeLauncher(executionSettings.filter); + } + else + { + var settings = PlaymodeTestsControllerSettings.CreateRunnerSettings(executionSettings.filter.ToTestRunnerFilter()); + return GetPlayModeLauncher(settings, executionSettings); + } + } + + static TestLauncherBase GetEditModeLauncher(Filter filter) + { + return GetEditModeLauncherForProvidedAssemblies(filter); + } + + static TestLauncherBase GetPlayModeLauncher(PlaymodeTestsControllerSettings settings, ExecutionSettings executionSettings) + { + if (executionSettings.targetPlatform != null) + { + return GetPlayerLauncher(settings, executionSettings.targetPlatform.Value, executionSettings.overloadTestRunSettings); + } + + if (PlayerSettings.runPlayModeTestAsEditModeTest) + { + return GetEditModeLauncherForProvidedAssemblies(executionSettings.filter, TestPlatform.PlayMode); + } + + return GetPlayModeLauncher(settings); + } + + static TestLauncherBase GetEditModeLauncherForProvidedAssemblies(Filter filter, TestPlatform testPlatform = TestPlatform.EditMode) + { + return new EditModeLauncher(filter.ToTestRunnerFilter(), testPlatform); + } + + static TestLauncherBase GetPlayModeLauncher(PlaymodeTestsControllerSettings settings) + { + return new PlaymodeLauncher(settings); + } + + static TestLauncherBase GetPlayerLauncher(PlaymodeTestsControllerSettings settings, BuildTarget targetPlatform, ITestRunSettings overloadTestRunSettings) + { + return new PlayerLauncher(settings, targetPlatform, overloadTestRunSettings); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestLauncherFactory.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestLauncherFactory.cs.meta new file mode 100644 index 0000000..d214c7d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestLauncherFactory.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f33e570b8b9af1048b80a27e7848cb09 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestMode.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestMode.cs new file mode 100644 index 0000000..c330457 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestMode.cs @@ -0,0 +1,11 @@ +using System; + +namespace UnityEditor.TestTools.TestRunner.Api +{ + [Flags] + internal enum TestMode + { + EditMode = 1 << 0, + PlayMode = 1 << 1 + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestMode.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestMode.cs.meta new file mode 100644 index 0000000..e04594b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestMode.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: cad095eccea17b741bc4cd264e7441cd +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestResultAdaptor.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestResultAdaptor.cs new file mode 100644 index 0000000..06e70f1 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestResultAdaptor.cs @@ -0,0 +1,87 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using NUnit.Framework.Interfaces; +using UnityEngine.TestRunner.TestLaunchers; + +namespace UnityEditor.TestTools.TestRunner.Api +{ + internal class TestResultAdaptor : ITestResultAdaptor + { + private TNode m_Node; + + internal TestResultAdaptor(ITestResult result) + { + Test = new TestAdaptor(result.Test); + Name = result.Name; + FullName = result.FullName; + ResultState = result.ResultState.ToString(); + TestStatus = ParseTestStatus(result.ResultState.Status); + Duration = result.Duration; + StartTime = result.StartTime; + EndTime = result.EndTime; + Message = result.Message; + StackTrace = result.StackTrace; + AssertCount = result.AssertCount; + FailCount = result.FailCount; + PassCount = result.PassCount; + SkipCount = result.SkipCount; + InconclusiveCount = result.InconclusiveCount; + HasChildren = result.HasChildren; + Output = result.Output; + Children = result.Children.Select(child => new TestResultAdaptor(child)).ToArray(); + m_Node = result.ToXml(true); + } + + internal TestResultAdaptor(RemoteTestResultData result, RemoteTestResultDataWithTestData allData) + { + Test = new TestAdaptor(allData.tests.First(t => t.id == result.testId)); + Name = result.name; + FullName = result.fullName; + ResultState = result.resultState; + TestStatus = ParseTestStatus(result.testStatus); + Duration = result.duration; + StartTime = result.startTime; + EndTime = result.endTime; + Message = result.message; + StackTrace = result.stackTrace; + AssertCount = result.assertCount; + FailCount = result.failCount; + PassCount = result.passCount; + SkipCount = result.skipCount; + InconclusiveCount = result.inconclusiveCount; + HasChildren = result.hasChildren; + Output = result.output; + Children = result.childrenIds.Select(childId => new TestResultAdaptor(allData.results.First(r => r.testId == childId), allData)).ToArray(); + m_Node = TNode.FromXml(result.xml); + } + + public ITestAdaptor Test { get; private set; } + public string Name { get; private set; } + public string FullName { get; private set; } + public string ResultState { get; private set; } + public TestStatus TestStatus { get; private set; } + public double Duration { get; private set; } + public DateTime StartTime { get; private set; } + public DateTime EndTime { get; private set; } + public string Message { get; private set; } + public string StackTrace { get; private set; } + public int AssertCount { get; private set; } + public int FailCount { get; private set; } + public int PassCount { get; private set; } + public int SkipCount { get; private set; } + public int InconclusiveCount { get; private set; } + public bool HasChildren { get; private set; } + public IEnumerable Children { get; private set; } + public string Output { get; private set; } + public TNode ToXml() + { + return m_Node; + } + + private static TestStatus ParseTestStatus(NUnit.Framework.Interfaces.TestStatus testStatus) + { + return (TestStatus)Enum.Parse(typeof(TestStatus), testStatus.ToString()); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestResultAdaptor.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestResultAdaptor.cs.meta new file mode 100644 index 0000000..c2b119e --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestResultAdaptor.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d061ada5d3169454daf54243390b5fdb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestRunData.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestRunData.cs new file mode 100644 index 0000000..decdf28 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestRunData.cs @@ -0,0 +1,12 @@ +using System; +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner.Api +{ + [Serializable] + internal class TestRunData : ScriptableSingleton + { + [SerializeField] + public ExecutionSettings executionSettings; + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestRunData.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestRunData.cs.meta new file mode 100644 index 0000000..701da80 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestRunData.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 973b024861c5ae84f869aad614234b04 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestRunnerApi.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestRunnerApi.cs new file mode 100644 index 0000000..655f97d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestRunnerApi.cs @@ -0,0 +1,81 @@ +using System; +using System.Linq; +using System.Threading; +using UnityEngine; +using UnityEngine.TestRunner.TestLaunchers; +using UnityEngine.TestTools; +using UnityEngine.TestTools.NUnitExtensions; + +namespace UnityEditor.TestTools.TestRunner.Api +{ + internal class TestRunnerApi : ScriptableObject, ITestRunnerApi + { + public void Execute(ExecutionSettings executionSettings) + { + if (executionSettings == null) + { + throw new ArgumentException("Filter for execution is undefined."); + } + + var launcherFactory = new TestLauncherFactory(); + var data = TestRunData.instance; + data.executionSettings = executionSettings; + + var testLauncher = launcherFactory.GetLauncher(executionSettings); + testLauncher.Run(); + } + + public void RegisterCallbacks(T testCallbacks, int priority = 0) where T : ICallbacks + { + if (testCallbacks == null) + { + throw new ArgumentException("TestCallbacks for execution is undefined."); + } + + CallbacksHolder.instance.Add(testCallbacks, priority); + } + + public void UnregisterCallbacks(T testCallbacks) where T : ICallbacks + { + if (testCallbacks == null) + { + throw new ArgumentException("TestCallbacks for execution is undefined."); + } + + CallbacksHolder.instance.Remove(testCallbacks); + } + + public void RetrieveTestList(ExecutionSettings executionSettings, Action callback) + { + if (executionSettings == null) + { + throw new ArgumentException("Filter for execution is undefined."); + } + + if (callback == null) + { + throw new ArgumentException("Callback is undefined."); + } + + var platform = ParseTestMode(executionSettings.filter.testMode); + var testAssemblyProvider = new EditorLoadedTestAssemblyProvider(new EditorCompilationInterfaceProxy(), new EditorAssembliesProxy()); + var testAdaptorFactory = new TestAdaptorFactory(); + var testListCache = new TestListCache(testAdaptorFactory, new RemoteTestResultDataFactory(), TestListCacheData.instance); + var testListProvider = new TestListProvider(testAssemblyProvider, new UnityTestAssemblyBuilder()); + var cachedTestListProvider = new CachingTestListProvider(testListProvider, testListCache, testAdaptorFactory); + + var job = new TestListJob(cachedTestListProvider, platform, callback); + job.Start(); + } + + private static TestPlatform ParseTestMode(TestMode testmode) + { + if (testmode == TestMode.EditMode) + { + return TestPlatform.EditMode; + } + + return TestPlatform.PlayMode; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestRunnerApi.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestRunnerApi.cs.meta new file mode 100644 index 0000000..7ad5fc1 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestRunnerApi.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 68993ba529ae04440916cb7c23bf3279 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestStatus.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestStatus.cs new file mode 100644 index 0000000..c72973e --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestStatus.cs @@ -0,0 +1,10 @@ +namespace UnityEditor.TestTools.TestRunner.Api +{ + internal enum TestStatus + { + Skipped, + Passed, + Failed, + Inconclusive + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestStatus.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestStatus.cs.meta new file mode 100644 index 0000000..38bd6af --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/Api/TestStatus.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9ec94545c5b00344c9bd8e691f15d799 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/AssemblyInfo.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/AssemblyInfo.cs new file mode 100644 index 0000000..1c4e19b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/AssemblyInfo.cs @@ -0,0 +1,14 @@ +using System.Reflection; +using System.Runtime.CompilerServices; + +[assembly: AssemblyTitle("UnityEditor.TestRunner")] +[assembly: InternalsVisibleTo("Assembly-CSharp-Editor-testable")] +[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")] +[assembly: InternalsVisibleTo("Unity.PerformanceTesting.Editor")] +[assembly: InternalsVisibleTo("Unity.IntegrationTests")] +[assembly: InternalsVisibleTo("UnityEditor.TestRunner.Tests")] +[assembly: InternalsVisibleTo("Unity.TestTools.CodeCoverage.Editor")] +[assembly: InternalsVisibleTo("Unity.PackageManagerUI.Develop.Editor")] +[assembly: InternalsVisibleTo("Unity.PackageManagerUI.Develop.EditorTests")] + +[assembly: AssemblyVersion("1.0.0")] diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/AssemblyInfo.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/AssemblyInfo.cs.meta new file mode 100644 index 0000000..5e1b8dd --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/AssemblyInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9db19a04003fca7439552acd4de9baa1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser.meta new file mode 100644 index 0000000..b5a29bd --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7602252bdb82b8d45ae3483c3a00d3e1 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/CommandLineOption.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/CommandLineOption.cs new file mode 100644 index 0000000..1a2d98a --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/CommandLineOption.cs @@ -0,0 +1,45 @@ +using System; +using System.Linq; + +namespace UnityEditor.TestRunner.CommandLineParser +{ + internal class CommandLineOption : ICommandLineOption + { + Action m_ArgAction; + + public CommandLineOption(string argName, Action action) + { + ArgName = argName; + m_ArgAction = s => action(); + } + + public CommandLineOption(string argName, Action action) + { + ArgName = argName; + m_ArgAction = action; + } + + public CommandLineOption(string argName, Action action) + { + ArgName = argName; + m_ArgAction = s => action(SplitStringToArray(s)); + } + + public string ArgName { get; private set; } + + public void ApplyValue(string value) + { + m_ArgAction(value); + } + + static string[] SplitStringToArray(string value) + { + if (string.IsNullOrEmpty(value)) + { + return null; + } + + return value.Split(';').ToArray(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/CommandLineOption.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/CommandLineOption.cs.meta new file mode 100644 index 0000000..65f3256 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/CommandLineOption.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a3529368f4cd0424a89aa51080a16b06 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/CommandLineOptionSet.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/CommandLineOptionSet.cs new file mode 100644 index 0000000..d08c233 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/CommandLineOptionSet.cs @@ -0,0 +1,49 @@ +using System; + +namespace UnityEditor.TestRunner.CommandLineParser +{ + internal class CommandLineOptionSet + { + ICommandLineOption[] m_Options; + + public CommandLineOptionSet(params ICommandLineOption[] options) + { + m_Options = options; + } + + public void Parse(string[] args) + { + var i = 0; + while (i < args.Length) + { + var arg = args[i]; + if (!arg.StartsWith("-")) + { + i++; + continue; + } + + string value = null; + if (i + 1 < args.Length && !args[i + 1].StartsWith("-")) + { + value = args[i + 1]; + i++; + } + + ApplyValueToMatchingOptions(arg, value); + i++; + } + } + + private void ApplyValueToMatchingOptions(string argName, string value) + { + foreach (var option in m_Options) + { + if ("-" + option.ArgName == argName) + { + option.ApplyValue(value); + } + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/CommandLineOptionSet.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/CommandLineOptionSet.cs.meta new file mode 100644 index 0000000..1db24d0 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/CommandLineOptionSet.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 139c5eac101a4dc4fb3098e30c29f15e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/ICommandLineOption.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/ICommandLineOption.cs new file mode 100644 index 0000000..7f699ad --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/ICommandLineOption.cs @@ -0,0 +1,8 @@ +namespace UnityEditor.TestRunner.CommandLineParser +{ + interface ICommandLineOption + { + string ArgName { get; } + void ApplyValue(string value); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/ICommandLineOption.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/ICommandLineOption.cs.meta new file mode 100644 index 0000000..613d95f --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineParser/ICommandLineOption.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f445ca0c614a846449fcd8ae648c24e2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest.meta new file mode 100644 index 0000000..d005718 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b477d1f29b65a674e9d5cdab4eb72b01 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/Executer.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/Executer.cs new file mode 100644 index 0000000..c0ad491 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/Executer.cs @@ -0,0 +1,137 @@ +using System; +using System.Linq; +using UnityEditor.TestRunner.TestLaunchers; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner.CommandLineTest +{ + internal class Executer + { + private ITestRunnerApi m_TestRunnerApi; + private ISettingsBuilder m_SettingsBuilder; + private Action m_LogErrorFormat; + private Action m_LogException; + private Action m_ExitEditorApplication; + private Func m_ScriptCompilationFailedCheck; + + public Executer(ITestRunnerApi testRunnerApi, ISettingsBuilder settingsBuilder, Action logErrorFormat, Action logException, Action exitEditorApplication, Func scriptCompilationFailedCheck) + { + m_TestRunnerApi = testRunnerApi; + m_SettingsBuilder = settingsBuilder; + m_LogErrorFormat = logErrorFormat; + m_LogException = logException; + m_ExitEditorApplication = exitEditorApplication; + m_ScriptCompilationFailedCheck = scriptCompilationFailedCheck; + } + + internal void InitializeAndExecuteRun(string[] commandLineArgs) + { + Api.ExecutionSettings executionSettings; + try + { + executionSettings = m_SettingsBuilder.BuildApiExecutionSettings(commandLineArgs); + if (executionSettings.targetPlatform.HasValue) + RemotePlayerLogController.instance.SetBuildTarget(executionSettings.targetPlatform.Value); + } + catch (SetupException exception) + { + HandleSetupException(exception); + return; + } + + try + { + Debug.Log("Executing tests with settings: " + ExecutionSettingsToString(executionSettings)); + m_TestRunnerApi.Execute(executionSettings); + } + catch (Exception exception) + { + m_LogException(exception); + m_ExitEditorApplication((int)ReturnCodes.RunError); + } + } + + internal ExecutionSettings BuildExecutionSettings(string[] commandLineArgs) + { + return m_SettingsBuilder.BuildExecutionSettings(commandLineArgs); + } + + internal enum ReturnCodes + { + Ok = 0, + Failed = 2, + RunError = 3, + PlatformNotFoundReturnCode = 4 + } + + internal void SetUpCallbacks(ExecutionSettings executionSettings) + { + RemotePlayerLogController.instance.SetLogsDirectory(executionSettings.DeviceLogsDirectory); + + var resultSavingCallback = ScriptableObject.CreateInstance(); + resultSavingCallback.m_ResultFilePath = executionSettings.TestResultsFile; + + var logSavingCallback = ScriptableObject.CreateInstance(); + + m_TestRunnerApi.RegisterCallbacks(resultSavingCallback); + m_TestRunnerApi.RegisterCallbacks(logSavingCallback); + m_TestRunnerApi.RegisterCallbacks(ScriptableObject.CreateInstance(), -10); + var timeoutCallbacks = ScriptableObject.CreateInstance(); + timeoutCallbacks.Init((action, time) => new DelayedCallback(action, time), m_LogErrorFormat, m_ExitEditorApplication); + m_TestRunnerApi.RegisterCallbacks(timeoutCallbacks); + } + + internal void ExitOnCompileErrors() + { + if (m_ScriptCompilationFailedCheck()) + { + var handling = s_ExceptionHandlingMapping.First(h => h.m_ExceptionType == SetupException.ExceptionType.ScriptCompilationFailed); + m_LogErrorFormat(handling.m_Message, new object[0]); + m_ExitEditorApplication(handling.m_ReturnCode); + } + } + + void HandleSetupException(SetupException exception) + { + ExceptionHandling handling = s_ExceptionHandlingMapping.FirstOrDefault(h => h.m_ExceptionType == exception.Type) ?? new ExceptionHandling(exception.Type, "Unknown command line test run error. " + exception.Type, ReturnCodes.RunError); + m_LogErrorFormat(handling.m_Message, exception.Details); + m_ExitEditorApplication(handling.m_ReturnCode); + } + + private class ExceptionHandling + { + internal SetupException.ExceptionType m_ExceptionType; + internal string m_Message; + internal int m_ReturnCode; + public ExceptionHandling(SetupException.ExceptionType exceptionType, string message, ReturnCodes returnCode) + { + m_ExceptionType = exceptionType; + m_Message = message; + m_ReturnCode = (int)returnCode; + } + } + + static ExceptionHandling[] s_ExceptionHandlingMapping = new[] + { + new ExceptionHandling(SetupException.ExceptionType.ScriptCompilationFailed, "Scripts had compilation errors.", ReturnCodes.RunError), + new ExceptionHandling(SetupException.ExceptionType.PlatformNotFound, "Test platform not found ({0}).", ReturnCodes.PlatformNotFoundReturnCode), + new ExceptionHandling(SetupException.ExceptionType.TestSettingsFileNotFound, "Test settings file not found at {0}.", ReturnCodes.RunError) + }; + + private static string ExecutionSettingsToString(Api.ExecutionSettings executionSettings) + { + if (executionSettings == null) + { + return "none"; + } + + if (executionSettings.filter == null) + { + return "no filter"; + } + + return "test mode = " + executionSettings.filter.testMode; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/Executer.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/Executer.cs.meta new file mode 100644 index 0000000..e57a010 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/Executer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 083c6a3a5426382449369ddc12b691d8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ExecutionSettings.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ExecutionSettings.cs new file mode 100644 index 0000000..3ff2356 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ExecutionSettings.cs @@ -0,0 +1,11 @@ +using System; + +namespace UnityEditor.TestTools.TestRunner.CommandLineTest +{ + [Serializable] + internal class ExecutionSettings + { + public string TestResultsFile; + public string DeviceLogsDirectory; + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ExecutionSettings.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ExecutionSettings.cs.meta new file mode 100644 index 0000000..35edc4c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ExecutionSettings.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c3a75354f6ceac94ca15ca9d96593290 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ExitCallbacks.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ExitCallbacks.cs new file mode 100644 index 0000000..d781d86 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ExitCallbacks.cs @@ -0,0 +1,48 @@ +using System; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner.CommandLineTest +{ + [Serializable] + internal class ExitCallbacks : ScriptableObject, ICallbacks + { + private bool m_AnyTestsExecuted; + private bool m_RunFailed; + internal static bool preventExit; + + public void RunFinished(ITestResultAdaptor testResults) + { + if (preventExit) + { + return; + } + + if (!m_AnyTestsExecuted) + { + Debug.LogFormat(LogType.Warning, LogOption.NoStacktrace, null, "No tests were executed"); + } + EditorApplication.Exit(m_RunFailed ? (int)Executer.ReturnCodes.Failed : (int)Executer.ReturnCodes.Ok); + } + + public void TestStarted(ITestAdaptor test) + { + if (!test.IsSuite) + { + m_AnyTestsExecuted = true; + } + } + + public void TestFinished(ITestResultAdaptor result) + { + if (!result.Test.IsSuite && (result.TestStatus == TestStatus.Failed)) + { + m_RunFailed = true; + } + } + + public void RunStarted(ITestAdaptor testsToRun) + { + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ExitCallbacks.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ExitCallbacks.cs.meta new file mode 100644 index 0000000..6296463 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ExitCallbacks.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1adaa8dcc4fda3d4cb4d3c8e0cb65d12 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ISettingsBuilder.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ISettingsBuilder.cs new file mode 100644 index 0000000..557195d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ISettingsBuilder.cs @@ -0,0 +1,10 @@ +using UnityEditor.TestTools.TestRunner.Api; + +namespace UnityEditor.TestTools.TestRunner.CommandLineTest +{ + interface ISettingsBuilder + { + Api.ExecutionSettings BuildApiExecutionSettings(string[] commandLineArgs); + ExecutionSettings BuildExecutionSettings(string[] commandLineArgs); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ISettingsBuilder.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ISettingsBuilder.cs.meta new file mode 100644 index 0000000..cc0b248 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ISettingsBuilder.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8a13cbeb2099aca47bb456f49845f86c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/LogSavingCallbacks.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/LogSavingCallbacks.cs new file mode 100644 index 0000000..40a185f --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/LogSavingCallbacks.cs @@ -0,0 +1,29 @@ +using System; +using UnityEditor.TestRunner.TestLaunchers; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner.CommandLineTest +{ + [Serializable] + internal class LogSavingCallbacks : ScriptableObject, ICallbacks + { + public void RunStarted(ITestAdaptor testsToRun) + { + RemotePlayerLogController.instance.StartLogWriters(); + } + + public virtual void RunFinished(ITestResultAdaptor testResults) + { + RemotePlayerLogController.instance.StopLogWriters(); + } + + public void TestStarted(ITestAdaptor test) + { + } + + public void TestFinished(ITestResultAdaptor result) + { + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/LogSavingCallbacks.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/LogSavingCallbacks.cs.meta new file mode 100644 index 0000000..c968178 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/LogSavingCallbacks.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8d20eedbe40f0ce41a4c4f633f225de8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/LogWriter.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/LogWriter.cs new file mode 100644 index 0000000..5470fd7 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/LogWriter.cs @@ -0,0 +1,92 @@ +using System; +using System.Collections.Generic; +using System.IO; +using UnityEditor.DeploymentTargets; +using UnityEditor.Utils; +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner.CommandLineTest +{ + internal class LogWriter : IDisposable + { + private string m_LogsDirectory; + private string m_DeviceID; + private Dictionary m_LogStreams; + private DeploymentTargetLogger m_Logger; + + internal LogWriter(string logsDirectory, string deviceID, DeploymentTargetLogger logger) + { + m_LogStreams = new Dictionary(); + m_Logger = logger; + m_LogsDirectory = logsDirectory; + m_DeviceID = deviceID; + + logger.logMessage += WriteLogToFile; + } + + private void WriteLogToFile(string id, string logLine) + { + StreamWriter logStream; + var streamExists = m_LogStreams.TryGetValue(id, out logStream); + if (!streamExists) + { + var filePath = GetLogFilePath(m_LogsDirectory, m_DeviceID, id); + logStream = CreateLogFile(filePath); + + m_LogStreams.Add(id, logStream); + } + + try + { + if (logLine != null) + logStream.WriteLine(logLine); + } + catch (Exception ex) + { + Debug.LogError($"Writing {id} log failed."); + Debug.LogException(ex); + } + } + + public void Stop() + { + m_Logger.Stop(); + foreach (var logStream in m_LogStreams) + { + logStream.Value.Close(); + } + } + + public void Dispose() + { + Stop(); + } + + private StreamWriter CreateLogFile(string path) + { + Debug.LogFormat(LogType.Log, LogOption.NoStacktrace, null, "Creating {0} device log: {1}", m_DeviceID, path); + StreamWriter streamWriter = null; + try + { + if (!Directory.Exists(path)) + Directory.CreateDirectory(Path.GetDirectoryName(path)); + + streamWriter = File.CreateText(path); + } + catch (Exception ex) + { + Debug.LogError($"Creating device log {path} file failed."); + Debug.LogException(ex); + } + + return streamWriter; + } + + private string GetLogFilePath(string lgosDirectory, string deviceID, string logID) + { + var fileName = "Device-" + deviceID + "-" + logID + ".txt"; + fileName = string.Join("_", fileName.Split(Path.GetInvalidFileNameChars())); + return Paths.Combine(lgosDirectory, fileName); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/LogWriter.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/LogWriter.cs.meta new file mode 100644 index 0000000..56872b9 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/LogWriter.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 05778dd1de4433d418793b6f3d3c18cf +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ResultsSavingCallbacks.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ResultsSavingCallbacks.cs new file mode 100644 index 0000000..a3837bf --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ResultsSavingCallbacks.cs @@ -0,0 +1,50 @@ +using System; +using System.IO; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEditor.Utils; +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner.CommandLineTest +{ + [Serializable] + internal class ResultsSavingCallbacks : ScriptableObject, ICallbacks + { + [SerializeField] + public string m_ResultFilePath; + + public ResultsSavingCallbacks() + { + this.m_ResultFilePath = GetDefaultResultFilePath(); + } + + public void RunStarted(ITestAdaptor testsToRun) + { + } + + public virtual void RunFinished(ITestResultAdaptor testResults) + { + if (string.IsNullOrEmpty(m_ResultFilePath)) + { + m_ResultFilePath = GetDefaultResultFilePath(); + } + + var resultWriter = new ResultsWriter(); + resultWriter.WriteResultToFile(testResults, m_ResultFilePath); + } + + public void TestStarted(ITestAdaptor test) + { + } + + public void TestFinished(ITestResultAdaptor result) + { + } + + private static string GetDefaultResultFilePath() + { + var fileName = "TestResults-" + DateTime.Now.Ticks + ".xml"; + var projectPath = Directory.GetCurrentDirectory(); + return Paths.Combine(projectPath, fileName); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ResultsSavingCallbacks.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ResultsSavingCallbacks.cs.meta new file mode 100644 index 0000000..ca06f3a --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ResultsSavingCallbacks.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ef563c5a6ecf64d4193dc144cb7d472a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ResultsWriter.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ResultsWriter.cs new file mode 100644 index 0000000..073d2ec --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ResultsWriter.cs @@ -0,0 +1,99 @@ +using System; +using System.IO; +using System.Xml; +using NUnit.Framework.Interfaces; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner.CommandLineTest +{ + internal class ResultsWriter + { + private const string k_nUnitVersion = "3.5.0.0"; + + private const string k_TestRunNode = "test-run"; + private const string k_Id = "id"; + private const string k_Testcasecount = "testcasecount"; + private const string k_Result = "result"; + private const string k_Total = "total"; + private const string k_Passed = "passed"; + private const string k_Failed = "failed"; + private const string k_Inconclusive = "inconclusive"; + private const string k_Skipped = "skipped"; + private const string k_Asserts = "asserts"; + private const string k_EngineVersion = "engine-version"; + private const string k_ClrVersion = "clr-version"; + private const string k_StartTime = "start-time"; + private const string k_EndTime = "end-time"; + private const string k_Duration = "duration"; + + private const string k_TimeFormat = "u"; + + public void WriteResultToFile(ITestResultAdaptor result, string filePath) + { + Debug.LogFormat(LogType.Log, LogOption.NoStacktrace, null, "Saving results to: {0}", filePath); + + try + { + if (!Directory.Exists(filePath)) + { + CreateDirectory(filePath); + } + + using (var fileStream = File.CreateText(filePath)) + { + WriteResultToStream(result, fileStream); + } + } + catch (Exception ex) + { + Debug.LogError("Saving result file failed."); + Debug.LogException(ex); + } + } + + void CreateDirectory(string filePath) + { + Directory.CreateDirectory(Path.GetDirectoryName(filePath)); + } + + public void WriteResultToStream(ITestResultAdaptor result, StreamWriter streamWriter, XmlWriterSettings settings = null) + { + settings = settings ?? new XmlWriterSettings(); + settings.Indent = true; + settings.NewLineOnAttributes = false; + + using (var xmlWriter = XmlWriter.Create(streamWriter, settings)) + { + WriteResultsToXml(result, xmlWriter); + } + } + + void WriteResultsToXml(ITestResultAdaptor result, XmlWriter xmlWriter) + { + // XML format as specified at https://github.com/nunit/docs/wiki/Test-Result-XML-Format + + var testRunNode = new TNode(k_TestRunNode); + + testRunNode.AddAttribute(k_Id, "2"); + testRunNode.AddAttribute(k_Testcasecount, (result.PassCount + result.FailCount + result.SkipCount + result.InconclusiveCount).ToString()); + testRunNode.AddAttribute(k_Result, result.ResultState.ToString()); + testRunNode.AddAttribute(k_Total, (result.PassCount + result.FailCount + result.SkipCount + result.InconclusiveCount).ToString()); + testRunNode.AddAttribute(k_Passed, result.PassCount.ToString()); + testRunNode.AddAttribute(k_Failed, result.FailCount.ToString()); + testRunNode.AddAttribute(k_Inconclusive, result.InconclusiveCount.ToString()); + testRunNode.AddAttribute(k_Skipped, result.SkipCount.ToString()); + testRunNode.AddAttribute(k_Asserts, result.AssertCount.ToString()); + testRunNode.AddAttribute(k_EngineVersion, k_nUnitVersion); + testRunNode.AddAttribute(k_ClrVersion, Environment.Version.ToString()); + testRunNode.AddAttribute(k_StartTime, result.StartTime.ToString(k_TimeFormat)); + testRunNode.AddAttribute(k_EndTime, result.EndTime.ToString(k_TimeFormat)); + testRunNode.AddAttribute(k_Duration, result.Duration.ToString()); + + var resultNode = result.ToXml(); + testRunNode.ChildNodes.Add(resultNode); + + testRunNode.WriteTo(xmlWriter); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ResultsWriter.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ResultsWriter.cs.meta new file mode 100644 index 0000000..074fe65 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/ResultsWriter.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 29d603e0a726a9043b3503112271844a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/RunData.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/RunData.cs new file mode 100644 index 0000000..6a469a7 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/RunData.cs @@ -0,0 +1,8 @@ +namespace UnityEditor.TestTools.TestRunner.CommandLineTest +{ + internal class RunData : ScriptableSingleton + { + public bool isRunning; + public ExecutionSettings executionSettings; + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/RunData.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/RunData.cs.meta new file mode 100644 index 0000000..4cfe30e --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/RunData.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3f8c1075884df0249b80e23a0598f9c1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/RunSettings.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/RunSettings.cs new file mode 100644 index 0000000..9b914c7 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/RunSettings.cs @@ -0,0 +1,29 @@ +using UnityEditor.TestTools.TestRunner.Api; + +namespace UnityEditor.TestTools.TestRunner.CommandLineTest +{ + internal class RunSettings : ITestRunSettings + { + private ITestSettings m_TestSettings; + public RunSettings(ITestSettings testSettings) + { + this.m_TestSettings = testSettings; + } + + public void Apply() + { + if (m_TestSettings != null) + { + m_TestSettings.SetupProjectParameters(); + } + } + + public void Dispose() + { + if (m_TestSettings != null) + { + m_TestSettings.Dispose(); + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/RunSettings.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/RunSettings.cs.meta new file mode 100644 index 0000000..0e241ba --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/RunSettings.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 59d3f5586b341a74c84c8f72144a4568 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/SettingsBuilder.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/SettingsBuilder.cs new file mode 100644 index 0000000..ef7500c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/SettingsBuilder.cs @@ -0,0 +1,173 @@ +using System; +using System.IO; +using UnityEditor.TestRunner.CommandLineParser; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine.TestTools.TestRunner.GUI; + +namespace UnityEditor.TestTools.TestRunner.CommandLineTest +{ + internal class SettingsBuilder : ISettingsBuilder + { + private ITestSettingsDeserializer m_TestSettingsDeserializer; + private Action m_LogAction; + private Action m_LogWarningAction; + private Func m_FileExistsCheck; + private Func m_ScriptCompilationFailedCheck; + public SettingsBuilder(ITestSettingsDeserializer testSettingsDeserializer, Action logAction, Action logWarningAction, Func fileExistsCheck, Func scriptCompilationFailedCheck) + { + m_LogAction = logAction; + m_LogWarningAction = logWarningAction; + m_FileExistsCheck = fileExistsCheck; + m_ScriptCompilationFailedCheck = scriptCompilationFailedCheck; + m_TestSettingsDeserializer = testSettingsDeserializer; + } + + public Api.ExecutionSettings BuildApiExecutionSettings(string[] commandLineArgs) + { + var quit = false; + string testPlatform = TestMode.EditMode.ToString(); + string[] testFilters = null; + string[] testCategories = null; + string testSettingsFilePath = null; + int testRepetitions = 1; + + var optionSet = new CommandLineOptionSet( + new CommandLineOption("quit", () => { quit = true; }), + new CommandLineOption("testPlatform", platform => { testPlatform = platform; }), + new CommandLineOption("editorTestsFilter", filters => { testFilters = filters; }), + new CommandLineOption("testFilter", filters => { testFilters = filters; }), + new CommandLineOption("editorTestsCategories", catagories => { testCategories = catagories; }), + new CommandLineOption("testCategory", catagories => { testCategories = catagories; }), + new CommandLineOption("testSettingsFile", settingsFilePath => { testSettingsFilePath = settingsFilePath; }), + new CommandLineOption("testRepetitions", reps => { testRepetitions = int.Parse(reps); }) + ); + optionSet.Parse(commandLineArgs); + + DisplayQuitWarningIfQuitIsGiven(quit); + + CheckForScriptCompilationErrors(); + + LogParametersForRun(testPlatform, testFilters, testCategories, testSettingsFilePath); + + var testSettings = GetTestSettings(testSettingsFilePath); + + var filter = new Filter() + { + groupNames = testFilters, + categoryNames = testCategories + }; + + var buildTarget = SetFilterAndGetBuildTarget(testPlatform, filter); + + RerunCallbackData.instance.runFilter = new TestRunnerFilter() + { + categoryNames = filter.categoryNames, + groupNames = filter.groupNames, + testRepetitions = testRepetitions + }; + + RerunCallbackData.instance.testMode = filter.testMode; + + return new Api.ExecutionSettings() + { + filter = filter, + overloadTestRunSettings = new RunSettings(testSettings), + targetPlatform = buildTarget + }; + } + + public ExecutionSettings BuildExecutionSettings(string[] commandLineArgs) + { + string resultFilePath = null; + string deviceLogsDirectory = null; + + var optionSet = new CommandLineOptionSet( + new CommandLineOption("editorTestsResultFile", filePath => { resultFilePath = filePath; }), + new CommandLineOption("testResults", filePath => { resultFilePath = filePath; }), + new CommandLineOption("deviceLogs", dirPath => { deviceLogsDirectory = dirPath; }) + ); + optionSet.Parse(commandLineArgs); + + return new ExecutionSettings() + { + TestResultsFile = resultFilePath, + DeviceLogsDirectory = deviceLogsDirectory + }; + } + + void DisplayQuitWarningIfQuitIsGiven(bool quitIsGiven) + { + if (quitIsGiven) + { + m_LogWarningAction("Running tests from command line arguments will not work when \"quit\" is specified."); + } + } + + void CheckForScriptCompilationErrors() + { + if (m_ScriptCompilationFailedCheck()) + { + throw new SetupException(SetupException.ExceptionType.ScriptCompilationFailed); + } + } + + void LogParametersForRun(string testPlatform, string[] testFilters, string[] testCategories, string testSettingsFilePath) + { + m_LogAction("Running tests for " + testPlatform); + if (testFilters != null && testFilters.Length > 0) + { + m_LogAction("With test filter: " + string.Join(", ", testFilters)); + } + if (testCategories != null && testCategories.Length > 0) + { + m_LogAction("With test categories: " + string.Join(", ", testCategories)); + } + if (!string.IsNullOrEmpty(testSettingsFilePath)) + { + m_LogAction("With test settings file: " + testSettingsFilePath); + } + } + + ITestSettings GetTestSettings(string testSettingsFilePath) + { + ITestSettings testSettings = null; + if (!string.IsNullOrEmpty(testSettingsFilePath)) + { + if (!m_FileExistsCheck(testSettingsFilePath)) + { + throw new SetupException(SetupException.ExceptionType.TestSettingsFileNotFound, testSettingsFilePath); + } + + testSettings = m_TestSettingsDeserializer.GetSettingsFromJsonFile(testSettingsFilePath); + } + return testSettings; + } + + static BuildTarget? SetFilterAndGetBuildTarget(string testPlatform, Filter filter) + { + BuildTarget? buildTarget = null; + if (testPlatform.ToLower() == "editmode") + { + filter.testMode = TestMode.EditMode; + } + else if (testPlatform.ToLower() == "playmode") + { + filter.testMode = TestMode.PlayMode; + } + else + { + try + { + buildTarget = (BuildTarget)Enum.Parse(typeof(BuildTarget), testPlatform, true); + + filter.testMode = TestMode.PlayMode; + } + catch (ArgumentException) + { + throw new SetupException(SetupException.ExceptionType.PlatformNotFound, testPlatform); + } + } + return buildTarget; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/SettingsBuilder.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/SettingsBuilder.cs.meta new file mode 100644 index 0000000..1e2f8c9 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/SettingsBuilder.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b7468a027a77337478e133b40b42b4f9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/SetupException.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/SetupException.cs new file mode 100644 index 0000000..3337713 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/SetupException.cs @@ -0,0 +1,23 @@ +using System; + +namespace UnityEditor.TestTools.TestRunner.CommandLineTest +{ + internal class SetupException : Exception + { + public ExceptionType Type { get; } + public object[] Details { get; } + + public SetupException(ExceptionType type, params object[] details) + { + Type = type; + Details = details; + } + + public enum ExceptionType + { + ScriptCompilationFailed, + PlatformNotFound, + TestSettingsFileNotFound, + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/SetupException.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/SetupException.cs.meta new file mode 100644 index 0000000..bdb235c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/SetupException.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 63572993f2104574099a48392460b211 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/TestStarter.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/TestStarter.cs new file mode 100644 index 0000000..bced727 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/TestStarter.cs @@ -0,0 +1,80 @@ +using System; +using System.IO; +using UnityEditor.TestRunner.CommandLineParser; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner.CommandLineTest +{ + [InitializeOnLoad] + static class TestStarter + { + static TestStarter() + { + if (!ShouldRunTests()) + { + return; + } + + if (EditorApplication.isCompiling) + { + return; + } + + executer.ExitOnCompileErrors(); + + if (RunData.instance.isRunning) + { + executer.SetUpCallbacks(RunData.instance.executionSettings); + return; + } + + EditorApplication.update += UpdateWatch; + } + + static void UpdateWatch() + { + EditorApplication.update -= UpdateWatch; + + if (RunData.instance.isRunning) + { + return; + } + + RunData.instance.isRunning = true; + var commandLineArgs = Environment.GetCommandLineArgs(); + RunData.instance.executionSettings = executer.BuildExecutionSettings(commandLineArgs); + executer.SetUpCallbacks(RunData.instance.executionSettings); + executer.InitializeAndExecuteRun(commandLineArgs); + } + + static bool ShouldRunTests() + { + var shouldRunTests = false; + var optionSet = new CommandLineOptionSet( + new CommandLineOption("runTests", () => { shouldRunTests = true; }), + new CommandLineOption("runEditorTests", () => { shouldRunTests = true; }) + ); + optionSet.Parse(Environment.GetCommandLineArgs()); + return shouldRunTests; + } + + static Executer s_Executer; + + static Executer executer + { + get + { + if (s_Executer == null) + { + Func compilationCheck = () => EditorUtility.scriptCompilationFailed; + Action actionLogger = (string msg) => { Debug.LogFormat(LogType.Log, LogOption.NoStacktrace, null, msg); }; + var apiSettingsBuilder = new SettingsBuilder(new TestSettingsDeserializer(() => new TestSettings()), actionLogger, Debug.LogWarning, File.Exists, compilationCheck); + s_Executer = new Executer(ScriptableObject.CreateInstance(), apiSettingsBuilder, Debug.LogErrorFormat, Debug.LogException, EditorApplication.Exit, compilationCheck); + } + + return s_Executer; + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/TestStarter.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/TestStarter.cs.meta new file mode 100644 index 0000000..4d5dfdc --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/TestStarter.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4d616d1a494edd144b262cf6cd5e5fda +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/TimeoutCallbacks.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/TimeoutCallbacks.cs new file mode 100644 index 0000000..8e50993 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/TimeoutCallbacks.cs @@ -0,0 +1,74 @@ +using System; +using UnityEditor.TestRunner.TestLaunchers; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner.CommandLineTest +{ + internal class TimeoutCallbacks : ScriptableObject, ICallbacks + { + internal const int k_DefaultTimeout = 600; + + private Func m_DelayedCallbackFactory; + private Action m_LogErrorFormat; + private Action m_ExitApplication; + + private double m_CurrentTimeout; + private IDelayedCallback m_TimeoutCallback; + + public void Init(Func delayedCallbackFactory, Action logErrorFormat, Action exitApplication) + { + m_DelayedCallbackFactory = delayedCallbackFactory; + m_LogErrorFormat = logErrorFormat; + m_ExitApplication = exitApplication; + } + + public void RunFinished(ITestResultAdaptor result) + { + if (m_TimeoutCallback != null) + { + m_TimeoutCallback.Clear(); + } + } + + public void RunStarted(ITestAdaptor testsToRun) + { + ResetToTimeout(k_DefaultTimeout); + } + + public void TestFinished(ITestResultAdaptor result) + { + ResetToTimeout(k_DefaultTimeout); + } + + public void TestStarted(ITestAdaptor test) + { + ResetToTimeout(k_DefaultTimeout + test.TestCaseTimeout / 1000); + } + + private void ResetToTimeout(double timeoutValue) + { + if (m_TimeoutCallback != null && Math.Abs(m_CurrentTimeout - timeoutValue) < 0.1f) + { + m_TimeoutCallback.Reset(); + } + else + { + if (m_TimeoutCallback != null) + { + m_TimeoutCallback.Clear(); + } + + m_TimeoutCallback = m_DelayedCallbackFactory(TimeoutReached, timeoutValue); + m_CurrentTimeout = timeoutValue; + } + } + + private void TimeoutReached() + { + RemotePlayerLogController.instance.StopLogWriters(); + m_LogErrorFormat("Test execution timed out.", new object[0]); + m_ExitApplication((int)Executer.ReturnCodes.RunError); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/TimeoutCallbacks.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/TimeoutCallbacks.cs.meta new file mode 100644 index 0000000..7f2a436 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/CommandLineTest/TimeoutCallbacks.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4dc5887d05b52fd4fb5f52909d09ffe9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI.meta new file mode 100644 index 0000000..bc9308a --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7e609b27ad2caa14c83dd9951b6c13c6 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/AssetsDatabaseHelper.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/AssetsDatabaseHelper.cs new file mode 100644 index 0000000..0016142 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/AssetsDatabaseHelper.cs @@ -0,0 +1,11 @@ +namespace UnityEditor.TestTools.TestRunner.GUI +{ + internal class AssetsDatabaseHelper : IAssetsDatabaseHelper + { + public void OpenAssetInItsDefaultExternalEditor(string assetPath, int line) + { + var asset = AssetDatabase.LoadMainAssetAtPath(assetPath); + AssetDatabase.OpenAsset(asset, line); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/AssetsDatabaseHelper.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/AssetsDatabaseHelper.cs.meta new file mode 100644 index 0000000..4fad1fc --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/AssetsDatabaseHelper.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 740b3785866edda4b8d1e1a05570a5f8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/GuiHelper.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/GuiHelper.cs new file mode 100644 index 0000000..26aba74 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/GuiHelper.cs @@ -0,0 +1,101 @@ +using System; +using System.IO; +using System.Linq; +using System.Reflection; +using System.Text.RegularExpressions; +using UnityEditor.Utils; +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner.GUI +{ + internal class GuiHelper : IGuiHelper + { + public GuiHelper(IMonoCecilHelper monoCecilHelper, IAssetsDatabaseHelper assetsDatabaseHelper) + { + MonoCecilHelper = monoCecilHelper; + AssetsDatabaseHelper = assetsDatabaseHelper; + } + + protected IMonoCecilHelper MonoCecilHelper { get; private set; } + public IAssetsDatabaseHelper AssetsDatabaseHelper { get; private set; } + + public void OpenScriptInExternalEditor(Type type, MethodInfo method) + { + var fileOpenInfo = GetFileOpenInfo(type, method); + + if (string.IsNullOrEmpty(fileOpenInfo.FilePath)) + { + Debug.LogWarning("Failed to open test method source code in external editor. Inconsistent filename and yield return operator in target method."); + + return; + } + + if (fileOpenInfo.LineNumber == 1) + { + Debug.LogWarning("Failed to get a line number for unity test method. So please find it in opened file in external editor."); + } + + AssetsDatabaseHelper.OpenAssetInItsDefaultExternalEditor(fileOpenInfo.FilePath, fileOpenInfo.LineNumber); + } + + public IFileOpenInfo GetFileOpenInfo(Type type, MethodInfo method) + { + const string fileExtension = ".cs"; + + var fileOpenInfo = MonoCecilHelper.TryGetCecilFileOpenInfo(type, method); + if (string.IsNullOrEmpty(fileOpenInfo.FilePath)) + { + var dirPath = Paths.UnifyDirectorySeparator(Application.dataPath); + var allCsFiles = Directory.GetFiles(dirPath, string.Format("*{0}", fileExtension), SearchOption.AllDirectories) + .Select(Paths.UnifyDirectorySeparator); + + var fileName = allCsFiles.FirstOrDefault(x => + x.Split(Path.DirectorySeparatorChar).Last().Equals(string.Concat(type.Name, fileExtension))); + + fileOpenInfo.FilePath = fileName ?? string.Empty; + } + + fileOpenInfo.FilePath = FilePathToAssetsRelativeAndUnified(fileOpenInfo.FilePath); + + return fileOpenInfo; + } + + public string FilePathToAssetsRelativeAndUnified(string filePath) + { + if (string.IsNullOrEmpty(filePath)) + return string.Empty; + + filePath = Paths.UnifyDirectorySeparator(filePath); + var length = Paths.UnifyDirectorySeparator(Application.dataPath).Length - "Assets".Length; + + return filePath.Substring(length); + } + + public bool OpenScriptInExternalEditor(string stacktrace) + { + if (string.IsNullOrEmpty(stacktrace)) + return false; + + var regex = new Regex("in (?.*):{1}(?[0-9]+)"); + + var matchingLines = stacktrace.Split(new[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries).Where(x => regex.IsMatch(x)).ToList(); + if (!matchingLines.Any()) + return false; + + var fileOpenInfo = matchingLines + .Select(x => regex.Match(x)) + .Select(x => + new FileOpenInfo + { + FilePath = x.Groups["path"].Value, + LineNumber = int.Parse(x.Groups["line"].Value) + }) + .First(openInfo => !string.IsNullOrEmpty(openInfo.FilePath) && File.Exists(openInfo.FilePath)); + + var filePath = FilePathToAssetsRelativeAndUnified(fileOpenInfo.FilePath); + AssetsDatabaseHelper.OpenAssetInItsDefaultExternalEditor(filePath, fileOpenInfo.LineNumber); + + return true; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/GuiHelper.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/GuiHelper.cs.meta new file mode 100644 index 0000000..a1512d0 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/GuiHelper.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d0138170d24533e47b8e6c250c6d7fbc +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/IAssetsDatabaseHelper.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/IAssetsDatabaseHelper.cs new file mode 100644 index 0000000..3e26c53 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/IAssetsDatabaseHelper.cs @@ -0,0 +1,7 @@ +namespace UnityEditor.TestTools.TestRunner.GUI +{ + internal interface IAssetsDatabaseHelper + { + void OpenAssetInItsDefaultExternalEditor(string assetPath, int line); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/IAssetsDatabaseHelper.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/IAssetsDatabaseHelper.cs.meta new file mode 100644 index 0000000..622fe68 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/IAssetsDatabaseHelper.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 208e46d59ff6e304db0318377d20f5a1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/IGuiHelper.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/IGuiHelper.cs new file mode 100644 index 0000000..a87fb8d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/IGuiHelper.cs @@ -0,0 +1,13 @@ +using System; +using System.Reflection; + +namespace UnityEditor.TestTools.TestRunner.GUI +{ + internal interface IGuiHelper + { + bool OpenScriptInExternalEditor(string stacktrace); + void OpenScriptInExternalEditor(Type type, MethodInfo method); + IFileOpenInfo GetFileOpenInfo(Type type, MethodInfo method); + string FilePathToAssetsRelativeAndUnified(string filePath); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/IGuiHelper.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/IGuiHelper.cs.meta new file mode 100644 index 0000000..9c6e266 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/IGuiHelper.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fd57cf917f61bbb42b8f030436426ddd +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder.meta new file mode 100644 index 0000000..e682923 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 07ea0326ed848fb4489187cb58f96113 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/RenderingOptions.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/RenderingOptions.cs new file mode 100644 index 0000000..34118d6 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/RenderingOptions.cs @@ -0,0 +1,12 @@ +namespace UnityEditor.TestTools.TestRunner.GUI +{ + internal class RenderingOptions + { + public string nameFilter; + public bool showSucceeded; + public bool showFailed; + public bool showIgnored; + public bool showNotRunned; + public string[] categories; + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/RenderingOptions.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/RenderingOptions.cs.meta new file mode 100644 index 0000000..57e6748 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/RenderingOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 87357ff0dec4ef348a295235835c6ee4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/ResultSummarizer.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/ResultSummarizer.cs new file mode 100644 index 0000000..cee81da --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/ResultSummarizer.cs @@ -0,0 +1,175 @@ +// **************************************************************** +// Based on nUnit 2.6.2 (http://www.nunit.org/) +// **************************************************************** + +using System; +using System.Collections.Generic; +using UnityEngine.TestTools.TestRunner.GUI; + +namespace UnityEditor.TestTools.TestRunner.GUI +{ + /// + /// Summary description for ResultSummarizer. + /// + internal class ResultSummarizer + { + private int m_ErrorCount = -1; + private int m_FailureCount; + private int m_IgnoreCount = -1; + private int m_InconclusiveCount = -1; + private int m_NotRunnable = -1; + private int m_ResultCount; + private int m_SkipCount; + private int m_SuccessCount; + private int m_TestsRun; + + private TimeSpan m_Duration = TimeSpan.FromSeconds(0); + + public ResultSummarizer(IEnumerable results) + { + foreach (var result in results) + Summarize(result); + } + + public bool success + { + get { return m_FailureCount == 0; } + } + + /// + /// Returns the number of test cases for which results + /// have been summarized. Any tests excluded by use of + /// Category or Explicit attributes are not counted. + /// + public int ResultCount + { + get { return m_ResultCount; } + } + + /// + /// Returns the number of test cases actually run, which + /// is the same as ResultCount, less any Skipped, Ignored + /// or NonRunnable tests. + /// + public int TestsRun + { + get { return m_TestsRun; } + } + + /// + /// Returns the number of tests that passed + /// + public int Passed + { + get { return m_SuccessCount; } + } + + /// + /// Returns the number of test cases that had an error. + /// + public int errors + { + get { return m_ErrorCount; } + } + + /// + /// Returns the number of test cases that failed. + /// + public int failures + { + get { return m_FailureCount; } + } + + /// + /// Returns the number of test cases that failed. + /// + public int inconclusive + { + get { return m_InconclusiveCount; } + } + + /// + /// Returns the number of test cases that were not runnable + /// due to errors in the signature of the class or method. + /// Such tests are also counted as Errors. + /// + public int notRunnable + { + get { return m_NotRunnable; } + } + + /// + /// Returns the number of test cases that were skipped. + /// + public int Skipped + { + get { return m_SkipCount; } + } + + public int ignored + { + get { return m_IgnoreCount; } + } + + public double duration + { + get { return m_Duration.TotalSeconds; } + } + + public int testsNotRun + { + get { return m_SkipCount + m_IgnoreCount + m_NotRunnable; } + } + + public void Summarize(TestRunnerResult result) + { + m_Duration += TimeSpan.FromSeconds(result.duration); + m_ResultCount++; + + if (result.resultStatus != TestRunnerResult.ResultStatus.NotRun) + { + //TODO implement missing features + // if(result.IsIgnored) + // { + // m_IgnoreCount++; + // return; + // } + + m_SkipCount++; + return; + } + + switch (result.resultStatus) + { + case TestRunnerResult.ResultStatus.Passed: + m_SuccessCount++; + m_TestsRun++; + break; + case TestRunnerResult.ResultStatus.Failed: + m_FailureCount++; + m_TestsRun++; + break; + //TODO implement missing features + // case TestResultState.Error: + // case TestResultState.Cancelled: + // m_ErrorCount++; + // m_TestsRun++; + // break; + // case TestResultState.Inconclusive: + // m_InconclusiveCount++; + // m_TestsRun++; + // break; + // case TestResultState.NotRunnable: + // m_NotRunnable++; + // // errorCount++; + // break; + // case TestResultState.Ignored: + // m_IgnoreCount++; + // break; + default: + m_SkipCount++; + break; + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/ResultSummarizer.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/ResultSummarizer.cs.meta new file mode 100644 index 0000000..bc4b465 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/ResultSummarizer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 95a2914724952ef40bb590d0607fc878 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/TestFilterSettings.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/TestFilterSettings.cs new file mode 100644 index 0000000..576a685 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/TestFilterSettings.cs @@ -0,0 +1,105 @@ +using System.Collections.Generic; +using System.Linq; +using UnityEngine; +using UnityEngine.TestTools.TestRunner.GUI; + +namespace UnityEditor.TestTools.TestRunner.GUI +{ + internal class TestFilterSettings + { + public bool showSucceeded; + public bool showFailed; + public bool showIgnored; + public bool showNotRun; + + public string filterByName; + public int filterByCategory; + + private GUIContent m_SucceededBtn; + private GUIContent m_FailedBtn; + private GUIContent m_IgnoredBtn; + private GUIContent m_NotRunBtn; + + public string[] availableCategories; + + private readonly string m_PrefsKey; + + public TestFilterSettings(string prefsKey) + { + availableCategories = null; + m_PrefsKey = prefsKey; + Load(); + UpdateCounters(Enumerable.Empty()); + } + + public void Load() + { + showSucceeded = EditorPrefs.GetBool(m_PrefsKey + ".ShowSucceeded", true); + showFailed = EditorPrefs.GetBool(m_PrefsKey + ".ShowFailed", true); + showIgnored = EditorPrefs.GetBool(m_PrefsKey + ".ShowIgnored", true); + showNotRun = EditorPrefs.GetBool(m_PrefsKey + ".ShowNotRun", true); + filterByName = EditorPrefs.GetString(m_PrefsKey + ".FilterByName", string.Empty); + filterByCategory = EditorPrefs.GetInt(m_PrefsKey + ".FilterByCategory", 0); + } + + public void Save() + { + EditorPrefs.SetBool(m_PrefsKey + ".ShowSucceeded", showSucceeded); + EditorPrefs.SetBool(m_PrefsKey + ".ShowFailed", showFailed); + EditorPrefs.SetBool(m_PrefsKey + ".ShowIgnored", showIgnored); + EditorPrefs.SetBool(m_PrefsKey + ".ShowNotRun", showNotRun); + EditorPrefs.SetString(m_PrefsKey + ".FilterByName", filterByName); + EditorPrefs.SetInt(m_PrefsKey + ".FilterByCategory", filterByCategory); + } + + public void UpdateCounters(IEnumerable results) + { + var summary = new ResultSummarizer(results); + + m_SucceededBtn = new GUIContent(summary.Passed.ToString(), Icons.s_SuccessImg, "Show tests that succeeded"); + m_FailedBtn = new GUIContent((summary.errors + summary.failures + summary.inconclusive).ToString(), Icons.s_FailImg, "Show tests that failed"); + m_IgnoredBtn = new GUIContent((summary.ignored + summary.notRunnable).ToString(), Icons.s_IgnoreImg, "Show tests that are ignored"); + m_NotRunBtn = new GUIContent((summary.testsNotRun - summary.ignored - summary.notRunnable).ToString(), Icons.s_UnknownImg, "Show tests that didn't run"); + } + + public string[] GetSelectedCategories() + { + if (availableCategories == null) + return new string[0]; + + return availableCategories.Where((c, i) => (filterByCategory & (1 << i)) != 0).ToArray(); + } + + public void OnGUI() + { + EditorGUI.BeginChangeCheck(); + + filterByName = GUILayout.TextField(filterByName, "ToolbarSeachTextField", GUILayout.MinWidth(100), GUILayout.MaxWidth(250), GUILayout.ExpandWidth(true)); + if (GUILayout.Button(GUIContent.none, string.IsNullOrEmpty(filterByName) ? "ToolbarSeachCancelButtonEmpty" : "ToolbarSeachCancelButton")) + filterByName = string.Empty; + + if (availableCategories != null && availableCategories.Length > 0) + filterByCategory = EditorGUILayout.MaskField(filterByCategory, availableCategories, EditorStyles.toolbarDropDown, GUILayout.MaxWidth(90)); + + showSucceeded = GUILayout.Toggle(showSucceeded, m_SucceededBtn, EditorStyles.toolbarButton); + showFailed = GUILayout.Toggle(showFailed, m_FailedBtn, EditorStyles.toolbarButton); + showIgnored = GUILayout.Toggle(showIgnored, m_IgnoredBtn, EditorStyles.toolbarButton); + showNotRun = GUILayout.Toggle(showNotRun, m_NotRunBtn, EditorStyles.toolbarButton); + + if (EditorGUI.EndChangeCheck()) + Save(); + } + + public RenderingOptions BuildRenderingOptions() + { + var options = new RenderingOptions(); + options.showSucceeded = showSucceeded; + options.showFailed = showFailed; + options.showIgnored = showIgnored; + options.showNotRunned = showNotRun; + options.nameFilter = filterByName; + options.categories = GetSelectedCategories(); + return options; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/TestFilterSettings.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/TestFilterSettings.cs.meta new file mode 100644 index 0000000..af8b799 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/TestFilterSettings.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 046c3854296c5ec48bac50da6ca248ec +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/TestTreeViewBuilder.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/TestTreeViewBuilder.cs new file mode 100644 index 0000000..86d42f3 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/TestTreeViewBuilder.cs @@ -0,0 +1,111 @@ +using System.Collections.Generic; +using System.Linq; +using UnityEditor.IMGUI.Controls; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine.TestRunner.NUnitExtensions; +using UnityEngine.TestTools.TestRunner.GUI; +using UnityEngine.TestRunner.NUnitExtensions.Filters; + +namespace UnityEditor.TestTools.TestRunner.GUI +{ + internal class TestTreeViewBuilder + { + public List results = new List(); + private readonly List m_OldTestResultList; + private readonly TestRunnerUIFilter m_UIFilter; + private readonly ITestAdaptor m_TestListRoot; + + private readonly List m_AvailableCategories = new List(); + + public string[] AvailableCategories + { + get { return m_AvailableCategories.Distinct().OrderBy(a => a).ToArray(); } + } + + public TestTreeViewBuilder(ITestAdaptor tests, List oldTestResultResults, TestRunnerUIFilter uiFilter) + { + m_AvailableCategories.Add(CategoryFilterExtended.k_DefaultCategory); + m_OldTestResultList = oldTestResultResults; + m_TestListRoot = tests; + m_UIFilter = uiFilter; + } + + public TreeViewItem BuildTreeView(TestFilterSettings settings, bool sceneBased, string sceneName) + { + var rootItem = new TreeViewItem(int.MaxValue, 0, null, "Invisible Root Item"); + ParseTestTree(0, rootItem, m_TestListRoot); + return rootItem; + } + + private bool IsFilteredOutByUIFilter(ITestAdaptor test, TestRunnerResult result) + { + if (m_UIFilter.PassedHidden && result.resultStatus == TestRunnerResult.ResultStatus.Passed) + return true; + if (m_UIFilter.FailedHidden && (result.resultStatus == TestRunnerResult.ResultStatus.Failed || result.resultStatus == TestRunnerResult.ResultStatus.Inconclusive)) + return true; + if (m_UIFilter.NotRunHidden && (result.resultStatus == TestRunnerResult.ResultStatus.NotRun || result.resultStatus == TestRunnerResult.ResultStatus.Skipped)) + return true; + if (m_UIFilter.CategoryFilter.Length > 0) + return !test.Categories.Any(category => m_UIFilter.CategoryFilter.Contains(category)); + return false; + } + + private void ParseTestTree(int depth, TreeViewItem rootItem, ITestAdaptor testElement) + { + m_AvailableCategories.AddRange(testElement.Categories); + + var testElementId = testElement.UniqueName; + if (!testElement.HasChildren) + { + var result = m_OldTestResultList.FirstOrDefault(a => a.uniqueId == testElementId); + + if (result != null && + (result.ignoredOrSkipped + || result.notRunnable + || testElement.RunState == RunState.NotRunnable + || testElement.RunState == RunState.Ignored + || testElement.RunState == RunState.Skipped + ) + ) + { + //if the test was or becomes ignored or not runnable, we recreate the result in case it has changed + result = null; + } + if (result == null) + { + result = new TestRunnerResult(testElement); + } + results.Add(result); + + var test = new TestTreeViewItem(testElement, depth, rootItem); + if (!IsFilteredOutByUIFilter(testElement, result)) + rootItem.AddChild(test); + test.SetResult(result); + return; + } + + var groupResult = m_OldTestResultList.FirstOrDefault(a => a.uniqueId == testElementId); + if (groupResult == null) + { + groupResult = new TestRunnerResult(testElement); + } + + results.Add(groupResult); + var group = new TestTreeViewItem(testElement, depth, rootItem); + group.SetResult(groupResult); + + depth++; + foreach (var child in testElement.Children) + { + ParseTestTree(depth, group, child); + } + + + if (testElement.IsTestAssembly && !testElement.HasChildren) + return; + + if (group.hasChildren) + rootItem.AddChild(group); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/TestTreeViewBuilder.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/TestTreeViewBuilder.cs.meta new file mode 100644 index 0000000..68a6c25 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListBuilder/TestTreeViewBuilder.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e17c88b021c2a4c409b3f15b0d80ac62 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListGuiHelper.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListGuiHelper.cs new file mode 100644 index 0000000..05cadba --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListGuiHelper.cs @@ -0,0 +1,135 @@ +using System; +using System.IO; +using System.Linq; +using UnityEditor.ProjectWindowCallback; +using UnityEditor.Scripting.ScriptCompilation; +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner.GUI +{ + internal class TestListGUIHelper + { + private const string kResourcesTemplatePath = "Resources/ScriptTemplates"; + private const string kAssemblyDefinitionTestTemplate = "92-Assembly Definition-NewTestAssembly.asmdef.txt"; + + private const string kAssemblyDefinitionEditModeTestTemplate = + "92-Assembly Definition-NewEditModeTestAssembly.asmdef.txt"; + + private const string kTestScriptTemplate = "83-C# Script-NewTestScript.cs.txt"; + private const string kNewTestScriptName = "NewTestScript.cs"; + private const string kNunit = "nunit.framework.dll"; + + [MenuItem("Assets/Create/Testing/Tests Assembly Folder", false, 83)] + public static void MenuItemAddFolderAndAsmDefForTesting() + { + AddFolderAndAsmDefForTesting(); + } + + [MenuItem("Assets/Create/Testing/Tests Assembly Folder", true, 83)] + public static bool MenuItemAddFolderAndAsmDefForTestingWithValidation() + { + return !SelectedFolderContainsTestAssembly(); + } + + public static void AddFolderAndAsmDefForTesting(bool isEditorOnly = false) + { + ProjectWindowUtil.CreateFolderWithTemplates("Tests", + isEditorOnly ? kAssemblyDefinitionEditModeTestTemplate : kAssemblyDefinitionTestTemplate); + } + + public static bool SelectedFolderContainsTestAssembly() + { + var theNearestCustomScriptAssembly = GetTheNearestCustomScriptAssembly(); + if (theNearestCustomScriptAssembly != null) + { + return theNearestCustomScriptAssembly.PrecompiledReferences != null && theNearestCustomScriptAssembly.PrecompiledReferences.Any(x => Path.GetFileName(x) == kNunit); + } + + return false; + } + + [MenuItem("Assets/Create/Testing/C# Test Script", false, 83)] + public static void AddTest() + { + var basePath = Path.Combine(EditorApplication.applicationContentsPath, kResourcesTemplatePath); + var destPath = Path.Combine(GetActiveFolderPath(), kNewTestScriptName); + var templatePath = Path.Combine(basePath, kTestScriptTemplate); + var icon = EditorGUIUtility.IconContent("cs Script Icon").image as Texture2D; + ProjectWindowUtil.StartNameEditingIfProjectWindowExists(0, + ScriptableObject.CreateInstance(), destPath, icon, templatePath); + + AssetDatabase.Refresh(); + } + + [MenuItem("Assets/Create/Testing/C# Test Script", true, 83)] + public static bool CanAddScriptAndItWillCompile() + { + return CanAddEditModeTestScriptAndItWillCompile() || CanAddPlayModeTestScriptAndItWillCompile(); + } + + public static bool CanAddEditModeTestScriptAndItWillCompile() + { + var theNearestCustomScriptAssembly = GetTheNearestCustomScriptAssembly(); + if (theNearestCustomScriptAssembly != null) + { + return (theNearestCustomScriptAssembly.AssemblyFlags & AssemblyFlags.EditorOnly) == + AssemblyFlags.EditorOnly; + } + + var activeFolderPath = GetActiveFolderPath(); + return activeFolderPath.ToLower().Contains("/editor"); + } + + public static bool CanAddPlayModeTestScriptAndItWillCompile() + { + if (PlayerSettings.playModeTestRunnerEnabled) + { + return true; + } + + var theNearestCustomScriptAssembly = GetTheNearestCustomScriptAssembly(); + + if (theNearestCustomScriptAssembly == null) + { + return false; + } + + var hasTestAssemblyFlag = theNearestCustomScriptAssembly.PrecompiledReferences != null && theNearestCustomScriptAssembly.PrecompiledReferences.Any(x => Path.GetFileName(x) == kNunit);; + var editorOnlyAssembly = (theNearestCustomScriptAssembly.AssemblyFlags & AssemblyFlags.EditorOnly) != 0; + + return hasTestAssemblyFlag && !editorOnlyAssembly; + } + + public static string GetActiveFolderPath() + { + var path = "Assets"; + + foreach (var obj in Selection.GetFiltered(typeof(UnityEngine.Object), SelectionMode.Assets)) + { + path = AssetDatabase.GetAssetPath(obj); + if (!string.IsNullOrEmpty(path) && File.Exists(path)) + { + path = Path.GetDirectoryName(path); + break; + } + } + return path; + } + + private static CustomScriptAssembly GetTheNearestCustomScriptAssembly() + { + CustomScriptAssembly findCustomScriptAssemblyFromScriptPath; + try + { + findCustomScriptAssemblyFromScriptPath = + EditorCompilationInterface.Instance.FindCustomScriptAssemblyFromScriptPath( + Path.Combine(GetActiveFolderPath(), "Foo.cs")); + } + catch (Exception) + { + return null; + } + return findCustomScriptAssemblyFromScriptPath; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListGuiHelper.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListGuiHelper.cs.meta new file mode 100644 index 0000000..70d8f19 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListGuiHelper.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 97a05971510726f438153cd4987526fb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView.meta new file mode 100644 index 0000000..63ce2ad --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 68cb547af0187634aad591a09c01cd5b +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/Icons.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/Icons.cs new file mode 100644 index 0000000..52c94a5 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/Icons.cs @@ -0,0 +1,24 @@ +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner.GUI +{ + internal static class Icons + { + public static readonly Texture2D s_FailImg; + public static readonly Texture2D s_IgnoreImg; + public static readonly Texture2D s_SuccessImg; + public static readonly Texture2D s_UnknownImg; + public static readonly Texture2D s_InconclusiveImg; + public static readonly Texture2D s_StopwatchImg; + + static Icons() + { + s_FailImg = EditorGUIUtility.IconContent("TestFailed").image as Texture2D; + s_IgnoreImg = EditorGUIUtility.IconContent("TestIgnored").image as Texture2D; + s_SuccessImg = EditorGUIUtility.IconContent("TestPassed").image as Texture2D; + s_UnknownImg = EditorGUIUtility.IconContent("TestNormal").image as Texture2D; + s_InconclusiveImg = EditorGUIUtility.IconContent("TestInconclusive").image as Texture2D; + s_StopwatchImg = EditorGUIUtility.IconContent("TestStopwatch").image as Texture2D; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/Icons.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/Icons.cs.meta new file mode 100644 index 0000000..3ddb7ee --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/Icons.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 27769e9b00b038d47aefe306a4d20bec +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestListTreeViewDataSource.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestListTreeViewDataSource.cs new file mode 100644 index 0000000..04a5e6b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestListTreeViewDataSource.cs @@ -0,0 +1,93 @@ +using System.Collections.Generic; +using UnityEditor.IMGUI.Controls; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine.SceneManagement; +using UnityEngine.TestTools.TestRunner; +using UnityEngine.TestTools.TestRunner.GUI; + +namespace UnityEditor.TestTools.TestRunner.GUI +{ + internal class TestListTreeViewDataSource : TreeViewDataSource + { + private bool m_ExpandTreeOnCreation; + private readonly TestListGUI m_TestListGUI; + private ITestAdaptor m_RootTest; + + public TestListTreeViewDataSource(TreeViewController testListTree, TestListGUI testListGUI, ITestAdaptor rootTest) : base(testListTree) + { + showRootItem = false; + rootIsCollapsable = false; + m_TestListGUI = testListGUI; + m_RootTest = rootTest; + } + + public override void FetchData() + { + var sceneName = SceneManager.GetActiveScene().name; + if (sceneName.StartsWith("InitTestScene")) + sceneName = PlaymodeTestsController.GetController().settings.originalScene; + + var testListBuilder = new TestTreeViewBuilder(m_RootTest, m_TestListGUI.newResultList, m_TestListGUI.m_TestRunnerUIFilter); + + m_RootItem = testListBuilder.BuildTreeView(null, false, sceneName); + SetExpanded(m_RootItem, true); + if (m_RootItem.hasChildren && m_RootItem.children.Count == 1) + SetExpanded(m_RootItem.children[0], true); + + if (m_ExpandTreeOnCreation) + SetExpandedWithChildren(m_RootItem, true); + + m_TestListGUI.newResultList = new List(testListBuilder.results); + m_TestListGUI.m_TestRunnerUIFilter.availableCategories = testListBuilder.AvailableCategories; + m_NeedRefreshRows = true; + } + + public override bool IsRenamingItemAllowed(TreeViewItem item) + { + return false; + } + + public void ExpandTreeOnCreation() + { + m_ExpandTreeOnCreation = true; + } + + public override bool IsExpandable(TreeViewItem item) + { + if (item is TestTreeViewItem) + return ((TestTreeViewItem)item).IsGroupNode; + return base.IsExpandable(item); + } + + protected override List Search(TreeViewItem rootItem, string search) + { + var result = new List(); + + if (rootItem.hasChildren) + { + foreach (var child in rootItem.children) + { + SearchTestTree(child, search, result); + } + } + return result; + } + + protected void SearchTestTree(TreeViewItem item, string search, IList searchResult) + { + var testItem = item as TestTreeViewItem; + if (!testItem.IsGroupNode) + { + if (testItem.FullName.ToLower().Contains(search)) + { + searchResult.Add(item); + } + } + else if (item.children != null) + { + foreach (var child in item.children) + SearchTestTree(child, search, searchResult); + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestListTreeViewDataSource.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestListTreeViewDataSource.cs.meta new file mode 100644 index 0000000..5ec5332 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestListTreeViewDataSource.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ce87c287371edde43a4b5fcfdee7b9ef +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestListTreeViewGUI.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestListTreeViewGUI.cs new file mode 100644 index 0000000..6657813 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestListTreeViewGUI.cs @@ -0,0 +1,11 @@ +using UnityEditor.IMGUI.Controls; + +namespace UnityEditor.TestTools.TestRunner.GUI +{ + internal class TestListTreeViewGUI : TreeViewGUI + { + public TestListTreeViewGUI(TreeViewController testListTree) : base(testListTree) + { + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestListTreeViewGUI.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestListTreeViewGUI.cs.meta new file mode 100644 index 0000000..ed09e25 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestListTreeViewGUI.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 52c907c81459f324497af504b84fd557 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestTreeViewItem.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestTreeViewItem.cs new file mode 100644 index 0000000..8d99de9 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestTreeViewItem.cs @@ -0,0 +1,118 @@ +using System; +using System.Reflection; +using System.Text; +using UnityEditor.IMGUI.Controls; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine.TestTools.TestRunner.GUI; + +namespace UnityEditor.TestTools.TestRunner.GUI +{ + internal sealed class TestTreeViewItem : TreeViewItem + { + public TestRunnerResult result; + internal ITestAdaptor m_Test; + + public Type type; + public MethodInfo method; + + private const int k_ResultTestMaxLength = 15000; + + public bool IsGroupNode { get { return m_Test.IsSuite; } } + + public string FullName { get { return m_Test.FullName; } } + + public TestTreeViewItem(ITestAdaptor test, int depth, TreeViewItem parent) + : base(GetId(test), depth, parent, test.Name) + { + m_Test = test; + + if (test.TypeInfo != null) + { + type = test.TypeInfo.Type; + } + if (test.Method != null) + { + method = test.Method.MethodInfo; + } + + displayName = test.Name.Replace("\n", ""); + icon = Icons.s_UnknownImg; + } + + private static int GetId(ITestAdaptor test) + { + return test.UniqueName.GetHashCode(); + } + + public void SetResult(TestRunnerResult testResult) + { + result = testResult; + result.SetResultChangedCallback(ResultUpdated); + ResultUpdated(result); + } + + public string GetResultText() + { + var durationString = String.Format("{0:0.000}", result.duration); + var sb = new StringBuilder(string.Format("{0} ({1}s)", displayName.Trim(), durationString)); + if (!string.IsNullOrEmpty(result.description)) + { + sb.AppendFormat("\n{0}", result.description); + } + if (!string.IsNullOrEmpty(result.messages)) + { + sb.Append("\n---\n"); + sb.Append(result.messages.Trim()); + } + if (!string.IsNullOrEmpty(result.stacktrace)) + { + sb.Append("\n---\n"); + sb.Append(result.stacktrace.Trim()); + } + if (!string.IsNullOrEmpty(result.output)) + { + sb.Append("\n---\n"); + sb.Append(result.output.Trim()); + } + if (sb.Length > k_ResultTestMaxLength) + { + sb.Length = k_ResultTestMaxLength; + sb.AppendFormat("...\n\n---MESSAGE TRUNCATED AT {0} CHARACTERS---", k_ResultTestMaxLength); + } + return sb.ToString().Trim(); + } + + private void ResultUpdated(TestRunnerResult testResult) + { + switch (testResult.resultStatus) + { + case TestRunnerResult.ResultStatus.Passed: + icon = Icons.s_SuccessImg; + break; + case TestRunnerResult.ResultStatus.Failed: + icon = Icons.s_FailImg; + break; + case TestRunnerResult.ResultStatus.Inconclusive: + icon = Icons.s_InconclusiveImg; + break; + case TestRunnerResult.ResultStatus.Skipped: + icon = Icons.s_IgnoreImg; + break; + default: + if (testResult.ignoredOrSkipped) + { + icon = Icons.s_IgnoreImg; + } + else if (testResult.notRunnable) + { + icon = Icons.s_FailImg; + } + else + { + icon = Icons.s_UnknownImg; + } + break; + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestTreeViewItem.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestTreeViewItem.cs.meta new file mode 100644 index 0000000..1a29abe --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestListTreeView/TestTreeViewItem.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ce567ddbf30368344bc7b80e20cac36e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestRunnerResult.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestRunnerResult.cs new file mode 100644 index 0000000..b70d0ab --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestRunnerResult.cs @@ -0,0 +1,149 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine.TestTools.TestRunner.GUI; + +namespace UnityEditor.TestTools.TestRunner.GUI +{ + [Serializable] + internal class TestRunnerResult : TestRunnerFilter.IClearableResult + { + public string id; + public string uniqueId; + public string name; + public string fullName; + public ResultStatus resultStatus = ResultStatus.NotRun; + public float duration; + public string messages; + public string output; + public string stacktrace; + public bool notRunnable; + public bool ignoredOrSkipped; + public string description; + public bool isSuite; + public List categories; + public string parentId; + public string parentUniqueId; + + //This field is suppose to mark results from before domain reload + //Such result is outdated because the code might haev changed + //This field will get reset every time a domain reload happens + [NonSerialized] + public bool notOutdated; + + protected Action m_OnResultUpdate; + + internal TestRunnerResult(ITestAdaptor test) + { + id = test.Id; + uniqueId = test.UniqueName; + + fullName = test.FullName; + name = test.Name; + description = test.Description; + isSuite = test.IsSuite; + + ignoredOrSkipped = test.RunState == RunState.Ignored || test.RunState == RunState.Skipped; + notRunnable = test.RunState == RunState.NotRunnable; + + if (ignoredOrSkipped) + { + messages = test.SkipReason; + } + if (notRunnable) + { + resultStatus = ResultStatus.Failed; + messages = test.SkipReason; + } + categories = test.Categories.ToList(); + parentId = test.ParentId; + parentUniqueId = test.ParentUniqueName; + } + + internal TestRunnerResult(ITestResultAdaptor testResult) : this(testResult.Test) + { + notOutdated = true; + + messages = testResult.Message; + output = testResult.Output; + stacktrace = testResult.StackTrace; + duration = (float)testResult.Duration; + if (testResult.Test.IsSuite && testResult.ResultState == "Ignored") + { + resultStatus = ResultStatus.Passed; + } + else + { + resultStatus = ParseNUnitResultStatus(testResult.TestStatus); + } + } + + public void Update(TestRunnerResult result) + { + if (ReferenceEquals(result, null)) + return; + resultStatus = result.resultStatus; + duration = result.duration; + messages = result.messages; + output = result.output; + stacktrace = result.stacktrace; + ignoredOrSkipped = result.ignoredOrSkipped; + notRunnable = result.notRunnable; + description = result.description; + notOutdated = result.notOutdated; + if (m_OnResultUpdate != null) + m_OnResultUpdate(this); + } + + public void SetResultChangedCallback(Action resultUpdated) + { + m_OnResultUpdate = resultUpdated; + } + + [Serializable] + internal enum ResultStatus + { + NotRun, + Passed, + Failed, + Inconclusive, + Skipped + } + + private static ResultStatus ParseNUnitResultStatus(TestStatus status) + { + switch (status) + { + case TestStatus.Passed: + return ResultStatus.Passed; + case TestStatus.Failed: + return ResultStatus.Failed; + case TestStatus.Inconclusive: + return ResultStatus.Inconclusive; + case TestStatus.Skipped: + return ResultStatus.Skipped; + default: + return ResultStatus.NotRun; + } + } + + public override string ToString() + { + return string.Format("{0} ({1})", name, fullName); + } + + public string Id { get { return uniqueId; } } + public string FullName { get { return fullName; } } + public string ParentId { get { return parentUniqueId; } } + public bool IsSuite { get { return isSuite; } } + public List Categories { get { return categories; } } + + public void Clear() + { + resultStatus = ResultStatus.NotRun; + if (m_OnResultUpdate != null) + m_OnResultUpdate(this); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestRunnerResult.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestRunnerResult.cs.meta new file mode 100644 index 0000000..771053c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestRunnerResult.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a04a45bbed9e1714f9902fc9443669b9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestRunnerUIFilter.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestRunnerUIFilter.cs new file mode 100644 index 0000000..a9df8e6 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestRunnerUIFilter.cs @@ -0,0 +1,167 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using UnityEngine; +using UnityEngine.TestTools.TestRunner.GUI; + +namespace UnityEditor.TestTools.TestRunner.GUI +{ + [Serializable] + internal class TestRunnerUIFilter + { + private int m_PassedCount; + private int m_FailedCount; + private int m_NotRunCount; + private int m_InconclusiveCount; + private int m_SkippedCount; + + public int PassedCount { get { return m_PassedCount; } } + public int FailedCount { get { return m_FailedCount + m_InconclusiveCount; } } + public int NotRunCount { get { return m_NotRunCount + m_SkippedCount; } } + + [SerializeField] + public bool PassedHidden; + [SerializeField] + public bool FailedHidden; + [SerializeField] + public bool NotRunHidden; + + [SerializeField] + private string m_SearchString; + [SerializeField] + private int selectedCategoryMask; + + public string[] availableCategories = new string[0]; + + + private GUIContent m_SucceededBtn; + private GUIContent m_FailedBtn; + private GUIContent m_NotRunBtn; + + public Action RebuildTestList; + public Action SearchStringChanged; + public bool IsFiltering + { + get + { + return !string.IsNullOrEmpty(m_SearchString) || PassedHidden || FailedHidden || NotRunHidden || + selectedCategoryMask != 0; + } + } + + public string[] CategoryFilter + { + get + { + var list = new List(); + for (int i = 0; i < availableCategories.Length; i++) + { + if ((selectedCategoryMask & (1 << i)) != 0) + { + list.Add(availableCategories[i]); + } + } + return list.ToArray(); + } + } + + public void UpdateCounters(List resultList) + { + m_PassedCount = m_FailedCount = m_NotRunCount = m_InconclusiveCount = m_SkippedCount = 0; + foreach (var result in resultList) + { + if (result.isSuite) + continue; + switch (result.resultStatus) + { + case TestRunnerResult.ResultStatus.Passed: + m_PassedCount++; + break; + case TestRunnerResult.ResultStatus.Failed: + m_FailedCount++; + break; + case TestRunnerResult.ResultStatus.Inconclusive: + m_InconclusiveCount++; + break; + case TestRunnerResult.ResultStatus.Skipped: + m_SkippedCount++; + break; + case TestRunnerResult.ResultStatus.NotRun: + default: + m_NotRunCount++; + break; + } + } + + var succeededTooltip = string.Format("Show tests that succeeded\n{0} succeeded", m_PassedCount); + m_SucceededBtn = new GUIContent(PassedCount.ToString(), Icons.s_SuccessImg, succeededTooltip); + var failedTooltip = string.Format("Show tests that failed\n{0} failed\n{1} inconclusive", m_FailedCount, m_InconclusiveCount); + m_FailedBtn = new GUIContent(FailedCount.ToString(), Icons.s_FailImg, failedTooltip); + var notRunTooltip = string.Format("Show tests that didn't run\n{0} didn't run\n{1} skipped or ignored", m_NotRunCount, m_SkippedCount); + m_NotRunBtn = new GUIContent(NotRunCount.ToString(), Icons.s_UnknownImg, notRunTooltip); + } + + public void Draw() + { + EditorGUI.BeginChangeCheck(); + m_SearchString = EditorGUILayout.ToolbarSearchField(m_SearchString); + if (EditorGUI.EndChangeCheck() && SearchStringChanged != null) + { + SearchStringChanged(m_SearchString); + } + + if (availableCategories != null && availableCategories.Any()) + { + EditorGUI.BeginChangeCheck(); + selectedCategoryMask = EditorGUILayout.MaskField(selectedCategoryMask, availableCategories, EditorStyles.toolbarDropDown, GUILayout.MaxWidth(150)); + if (EditorGUI.EndChangeCheck() && RebuildTestList != null) + { + RebuildTestList(); + } + } + else + { + EditorGUILayout.Popup(0, new[] { "" }, EditorStyles.toolbarDropDown, GUILayout.MaxWidth(150)); + } + + EditorGUI.BeginChangeCheck(); + if (m_SucceededBtn != null) + { + PassedHidden = !GUILayout.Toggle(!PassedHidden, m_SucceededBtn, EditorStyles.toolbarButton, GUILayout.MaxWidth(GetMaxWidth(PassedCount))); + } + if (m_FailedBtn != null) + { + FailedHidden = !GUILayout.Toggle(!FailedHidden, m_FailedBtn, EditorStyles.toolbarButton, GUILayout.MaxWidth(GetMaxWidth(FailedCount))); + } + if (m_NotRunBtn != null) + { + NotRunHidden = !GUILayout.Toggle(!NotRunHidden, m_NotRunBtn, EditorStyles.toolbarButton, GUILayout.MaxWidth(GetMaxWidth(NotRunCount))); + } + + if (EditorGUI.EndChangeCheck() && RebuildTestList != null) + { + RebuildTestList(); + } + } + + private static int GetMaxWidth(int count) + { + if (count < 10) + return 33; + return count < 100 ? 40 : 47; + } + + public void Clear() + { + PassedHidden = false; + FailedHidden = false; + NotRunHidden = false; + selectedCategoryMask = 0; + m_SearchString = ""; + if (SearchStringChanged != null) + { + SearchStringChanged(m_SearchString); + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestRunnerUIFilter.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestRunnerUIFilter.cs.meta new file mode 100644 index 0000000..e65f91a --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/TestRunnerUIFilter.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 15f870c6975ad6449b5b52514b90dc2b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views.meta new file mode 100644 index 0000000..ca14182 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c5535d742ea2e4941850b421f9c70a1f +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/EditModeTestListGUI.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/EditModeTestListGUI.cs new file mode 100644 index 0000000..3de1253 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/EditModeTestListGUI.cs @@ -0,0 +1,88 @@ +using System; +using System.Linq; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine; +using UnityEngine.TestTools; +using UnityEngine.TestTools.TestRunner.GUI; + +namespace UnityEditor.TestTools.TestRunner.GUI +{ + [Serializable] + internal class EditModeTestListGUI : TestListGUI + { + public override TestMode TestMode + { + get { return TestMode.EditMode; } + } + + public override void RenderNoTestsInfo() + { + if (!TestListGUIHelper.SelectedFolderContainsTestAssembly()) + { + var noTestText = "No tests to show"; + + if (!PlayerSettings.playModeTestRunnerEnabled) + { + const string testsArePulledFromCustomAssemblies = + "EditMode tests can be in Editor only Assemblies, either in the editor special folder or Editor only Assembly Definitions with added Unity References \"Test Assemblies\"."; + noTestText += Environment.NewLine + testsArePulledFromCustomAssemblies; + } + + EditorGUILayout.HelpBox(noTestText, MessageType.Info); + if (GUILayout.Button("Create EditMode Test Assembly Folder")) + { + TestListGUIHelper.AddFolderAndAsmDefForTesting(isEditorOnly: true); + } + } + + if (!TestListGUIHelper.CanAddEditModeTestScriptAndItWillCompile()) + { + UnityEngine.GUI.enabled = false; + EditorGUILayout.HelpBox("EditMode test scripts can only be created in editor test assemblies.", MessageType.Warning); + } + if (GUILayout.Button("Create Test Script in current folder")) + { + TestListGUIHelper.AddTest(); + } + UnityEngine.GUI.enabled = true; + } + + public override void PrintHeadPanel() + { + base.PrintHeadPanel(); + DrawFilters(); + } + + protected override void RunTests(TestRunnerFilter filter) + { + if (EditorUtility.scriptCompilationFailed) + { + Debug.LogError("Fix compilation issues before running tests"); + return; + } + + filter.ClearResults(newResultList.OfType().ToList()); + + RerunCallbackData.instance.runFilter = filter; + RerunCallbackData.instance.testMode = TestMode.EditMode; + + var testRunnerApi = ScriptableObject.CreateInstance(); + testRunnerApi.Execute(new ExecutionSettings() + { + filter = new Filter() + { + categoryNames = filter.categoryNames, + groupNames = filter.groupNames, + testMode = TestMode, + testNames = filter.testNames + } + }); + } + + public override TestPlatform TestPlatform { get { return TestPlatform.EditMode; } } + protected override bool IsBusy() + { + return EditModeLauncher.IsRunning || EditorApplication.isCompiling || EditorApplication.isPlaying; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/EditModeTestListGUI.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/EditModeTestListGUI.cs.meta new file mode 100644 index 0000000..afd4abb --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/EditModeTestListGUI.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0336a32a79bfaed43a3fd2d88b91e974 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/PlayModeTestListGUI.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/PlayModeTestListGUI.cs new file mode 100644 index 0000000..40e3d2d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/PlayModeTestListGUI.cs @@ -0,0 +1,106 @@ +using System; +using System.Linq; +using UnityEditor.SceneManagement; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine; +using UnityEngine.TestTools; +using UnityEngine.SceneManagement; +using UnityEngine.TestTools.TestRunner; +using UnityEngine.TestTools.TestRunner.GUI; + +namespace UnityEditor.TestTools.TestRunner.GUI +{ + [Serializable] + internal class PlayModeTestListGUI : TestListGUI + { + public override TestMode TestMode + { + get { return TestMode.PlayMode; } + } + public override void PrintHeadPanel() + { + EditorGUILayout.BeginHorizontal(GUILayout.ExpandHeight(false)); + base.PrintHeadPanel(); + if (GUILayout.Button("Run all in player (" + EditorUserBuildSettings.activeBuildTarget + ")", EditorStyles.toolbarButton)) + { + RunTestsInPlayer(null); + } + EditorGUILayout.EndHorizontal(); + DrawFilters(); + EditorGUILayout.BeginHorizontal(GUILayout.ExpandHeight(false)); + EditorGUILayout.EndHorizontal(); + } + + public override void RenderNoTestsInfo() + { + if (!TestListGUIHelper.SelectedFolderContainsTestAssembly()) + { + var noTestText = "No tests to show"; + if (!PlayerSettings.playModeTestRunnerEnabled) + { + const string testsArePulledFromCustomAssemblues = "Test Assemblies are defined by Assembly Definitions where you add Unity References \"Test Assemblies\""; + const string infoTextAboutTestsInAllAssemblies = + "To have tests in all assemblies enable it in the Test Runner window context menu"; + noTestText += Environment.NewLine + testsArePulledFromCustomAssemblues + Environment.NewLine + + infoTextAboutTestsInAllAssemblies; + } + + EditorGUILayout.HelpBox(noTestText, MessageType.Info); + if (GUILayout.Button("Create PlayMode Test Assembly Folder")) + { + TestListGUIHelper.AddFolderAndAsmDefForTesting(); + } + } + + if (!TestListGUIHelper.CanAddPlayModeTestScriptAndItWillCompile()) + { + UnityEngine.GUI.enabled = false; + EditorGUILayout.HelpBox("PlayMode test scripts can only be created in non editor test assemblies.", MessageType.Warning); + } + if (GUILayout.Button("Create Test Script in current folder")) + { + TestListGUIHelper.AddTest(); + } + UnityEngine.GUI.enabled = true; + } + + protected override void RunTests(TestRunnerFilter filter) + { + // Give user chance to save the changes to their currently open scene because we close it and load our own + var cancelled = !EditorSceneManager.SaveCurrentModifiedScenesIfUserWantsTo(); + if (cancelled) + return; + + filter.ClearResults(newResultList.OfType().ToList()); + + RerunCallbackData.instance.runFilter = filter; + RerunCallbackData.instance.testMode = TestMode.PlayMode; + + var testRunnerApi = ScriptableObject.CreateInstance(); + testRunnerApi.Execute(new ExecutionSettings() + { + filter = new Filter() + { + categoryNames = filter.categoryNames, + groupNames = filter.groupNames, + testMode = TestMode, + testNames = filter.testNames + } + }); + } + + protected void RunTestsInPlayer(TestRunnerFilter filter) + { + var settings = PlaymodeTestsControllerSettings.CreateRunnerSettings(filter); + var testExecutor = new PlayerLauncher(settings, null, null); + testExecutor.Run(); + GUIUtility.ExitGUI(); + } + + public override TestPlatform TestPlatform { get { return TestPlatform.PlayMode; } } + protected override bool IsBusy() + { + return PlaymodeLauncher.IsRunning || EditorApplication.isCompiling || EditorApplication.isPlaying; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/PlayModeTestListGUI.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/PlayModeTestListGUI.cs.meta new file mode 100644 index 0000000..6f0c1d6 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/PlayModeTestListGUI.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c3efd39f2cfb43a4c830d4fd5689900f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/TestListGUIBase.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/TestListGUIBase.cs new file mode 100644 index 0000000..27c4d3f --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/TestListGUIBase.cs @@ -0,0 +1,449 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using UnityEditor.IMGUI.Controls; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine; +using UnityEngine.TestTools.TestRunner.GUI; +using UnityEngine.TestTools; + +namespace UnityEditor.TestTools.TestRunner.GUI +{ + internal abstract class TestListGUI + { + private static readonly GUIContent s_GUIRunSelectedTests = EditorGUIUtility.TrTextContent("Run Selected", "Run selected test(s)"); + private static readonly GUIContent s_GUIRunAllTests = EditorGUIUtility.TrTextContent("Run All", "Run all tests"); + private static readonly GUIContent s_GUIRerunFailedTests = EditorGUIUtility.TrTextContent("Rerun Failed", "Rerun all failed tests"); + private static readonly GUIContent s_GUIRun = EditorGUIUtility.TrTextContent("Run"); + private static readonly GUIContent s_GUIRunUntilFailed = EditorGUIUtility.TrTextContent("Run Until Failed"); + private static readonly GUIContent s_GUIRun100Times = EditorGUIUtility.TrTextContent("Run 100 times"); + private static readonly GUIContent s_GUIOpenTest = EditorGUIUtility.TrTextContent("Open source code"); + private static readonly GUIContent s_GUIOpenErrorLine = EditorGUIUtility.TrTextContent("Open error line"); + + [SerializeField] + protected TestRunnerWindow m_Window; + [SerializeField] + public List newResultList = new List(); + [SerializeField] + private string m_ResultText; + [SerializeField] + private string m_ResultStacktrace; + + private TreeViewController m_TestListTree; + [SerializeField] + internal TreeViewState m_TestListState; + [SerializeField] + internal TestRunnerUIFilter m_TestRunnerUIFilter = new TestRunnerUIFilter(); + + private Vector2 m_TestInfoScroll, m_TestListScroll; + private string m_PreviousProjectPath; + private List m_QueuedResults = new List(); + + protected TestListGUI() + { + MonoCecilHelper = new MonoCecilHelper(); + AssetsDatabaseHelper = new AssetsDatabaseHelper(); + + GuiHelper = new GuiHelper(MonoCecilHelper, AssetsDatabaseHelper); + } + + protected IMonoCecilHelper MonoCecilHelper { get; private set; } + protected IAssetsDatabaseHelper AssetsDatabaseHelper { get; private set; } + protected IGuiHelper GuiHelper { get; private set; } + + public abstract TestMode TestMode { get; } + + public virtual void PrintHeadPanel() + { + EditorGUILayout.BeginHorizontal(EditorStyles.toolbar); + using (new EditorGUI.DisabledScope(IsBusy())) + { + if (GUILayout.Button(s_GUIRunAllTests, EditorStyles.toolbarButton)) + { + var filter = new TestRunnerFilter {categoryNames = m_TestRunnerUIFilter.CategoryFilter}; + RunTests(filter); + GUIUtility.ExitGUI(); + } + } + using (new EditorGUI.DisabledScope(m_TestListTree == null || !m_TestListTree.HasSelection() || IsBusy())) + { + if (GUILayout.Button(s_GUIRunSelectedTests, EditorStyles.toolbarButton)) + { + RunTests(GetSelectedTestsAsFilter(m_TestListTree.GetSelection())); + GUIUtility.ExitGUI(); + } + } + using (new EditorGUI.DisabledScope(m_TestRunnerUIFilter.FailedCount == 0 || IsBusy())) + { + if (GUILayout.Button(s_GUIRerunFailedTests, EditorStyles.toolbarButton)) + { + var failedTestnames = new List(); + foreach (var result in newResultList) + { + if (result.isSuite) + continue; + if (result.resultStatus == TestRunnerResult.ResultStatus.Failed || + result.resultStatus == TestRunnerResult.ResultStatus.Inconclusive) + failedTestnames.Add(result.fullName); + } + RunTests(new TestRunnerFilter() {testNames = failedTestnames.ToArray(), categoryNames = m_TestRunnerUIFilter.CategoryFilter}); + GUIUtility.ExitGUI(); + } + } + GUILayout.FlexibleSpace(); + EditorGUILayout.EndHorizontal(); + } + + protected void DrawFilters() + { + EditorGUILayout.BeginHorizontal(EditorStyles.toolbar); + m_TestRunnerUIFilter.Draw(); + EditorGUILayout.EndHorizontal(); + } + + public bool HasTreeData() + { + return m_TestListTree != null; + } + + public virtual void RenderTestList() + { + if (m_TestListTree == null) + { + GUILayout.Label("Loading..."); + return; + } + + m_TestListScroll = EditorGUILayout.BeginScrollView(m_TestListScroll, + GUILayout.ExpandWidth(true), + GUILayout.MaxWidth(2000)); + + if (m_TestListTree.data.root == null || m_TestListTree.data.rowCount == 0 || (!m_TestListTree.isSearching && !m_TestListTree.data.GetItem(0).hasChildren)) + { + if (m_TestRunnerUIFilter.IsFiltering) + { + if (GUILayout.Button("Clear filters")) + { + m_TestRunnerUIFilter.Clear(); + m_TestListTree.ReloadData(); + m_Window.Repaint(); + } + } + RenderNoTestsInfo(); + } + else + { + var treeRect = EditorGUILayout.GetControlRect(GUILayout.ExpandHeight(true), GUILayout.ExpandWidth(true)); + var treeViewKeyboardControlId = GUIUtility.GetControlID(FocusType.Keyboard); + + m_TestListTree.OnGUI(treeRect, treeViewKeyboardControlId); + } + + EditorGUILayout.EndScrollView(); + } + + public virtual void RenderNoTestsInfo() + { + EditorGUILayout.HelpBox("No tests to show", MessageType.Info); + } + + public void RenderDetails() + { + m_TestInfoScroll = EditorGUILayout.BeginScrollView(m_TestInfoScroll); + var resultTextSize = TestRunnerWindow.Styles.info.CalcSize(new GUIContent(m_ResultText)); + EditorGUILayout.SelectableLabel(m_ResultText, TestRunnerWindow.Styles.info, + GUILayout.ExpandHeight(true), + GUILayout.ExpandWidth(true), + GUILayout.MinWidth(resultTextSize.x), + GUILayout.MinHeight(resultTextSize.y)); + EditorGUILayout.EndScrollView(); + } + + public void Reload() + { + if (m_TestListTree != null) + { + m_TestListTree.ReloadData(); + UpdateQueuedResults(); + } + } + + public void Repaint() + { + if (m_TestListTree == null || m_TestListTree.data.root == null) + { + return; + } + + m_TestListTree.Repaint(); + if (m_TestListTree.data.rowCount == 0) + m_TestListTree.SetSelection(new int[0], false); + TestSelectionCallback(m_TestListState.selectedIDs.ToArray()); + } + + public void Init(TestRunnerWindow window, ITestAdaptor rootTest) + { + if (m_Window == null) + { + m_Window = window; + } + + if (m_TestListTree == null) + { + if (m_TestListState == null) + { + m_TestListState = new TreeViewState(); + } + if (m_TestListTree == null) + m_TestListTree = new TreeViewController(m_Window, m_TestListState); + + m_TestListTree.deselectOnUnhandledMouseDown = false; + + m_TestListTree.selectionChangedCallback += TestSelectionCallback; + m_TestListTree.itemDoubleClickedCallback += TestDoubleClickCallback; + m_TestListTree.contextClickItemCallback += TestContextClickCallback; + + var testListTreeViewDataSource = new TestListTreeViewDataSource(m_TestListTree, this, rootTest); + + if (!newResultList.Any()) + testListTreeViewDataSource.ExpandTreeOnCreation(); + + m_TestListTree.Init(new Rect(), + testListTreeViewDataSource, + new TestListTreeViewGUI(m_TestListTree), + null); + } + + EditorApplication.update += RepaintIfProjectPathChanged; + + m_TestRunnerUIFilter.UpdateCounters(newResultList); + m_TestRunnerUIFilter.RebuildTestList = () => m_TestListTree.ReloadData(); + m_TestRunnerUIFilter.SearchStringChanged = s => m_TestListTree.searchString = s; + } + + public void UpdateResult(TestRunnerResult result) + { + if (!HasTreeData()) + { + m_QueuedResults.Add(result); + return; + } + + if (newResultList.All(x => x.uniqueId != result.uniqueId)) + { + return; + } + + var testRunnerResult = newResultList.FirstOrDefault(x => x.uniqueId == result.uniqueId); + if (testRunnerResult != null) + { + testRunnerResult.Update(result); + } + + Repaint(); + m_Window.Repaint(); + } + + private void UpdateQueuedResults() + { + foreach (var testRunnerResult in m_QueuedResults) + { + var existingResult = newResultList.FirstOrDefault(x => x.uniqueId == testRunnerResult.uniqueId); + if (existingResult != null) + { + existingResult.Update(testRunnerResult); + } + } + m_QueuedResults.Clear(); + TestSelectionCallback(m_TestListState.selectedIDs.ToArray()); + Repaint(); + m_Window.Repaint(); + } + + internal void TestSelectionCallback(int[] selected) + { + if (m_TestListTree != null && selected.Length == 1) + { + if (m_TestListTree != null) + { + var node = m_TestListTree.FindItem(selected[0]); + if (node is TestTreeViewItem) + { + var test = node as TestTreeViewItem; + m_ResultText = test.GetResultText(); + m_ResultStacktrace = test.result.stacktrace; + } + } + } + else if (selected.Length == 0) + { + m_ResultText = ""; + } + } + + protected virtual void TestDoubleClickCallback(int id) + { + if (IsBusy()) + return; + + RunTests(GetSelectedTestsAsFilter(new List { id })); + GUIUtility.ExitGUI(); + } + + protected virtual void RunTests(TestRunnerFilter filter) + { + throw new NotImplementedException(); + } + + protected virtual void TestContextClickCallback(int id) + { + if (id == 0) + return; + + var m = new GenericMenu(); + var testFilter = GetSelectedTestsAsFilter(m_TestListState.selectedIDs); + var multilineSelection = m_TestListState.selectedIDs.Count > 1; + + if (!multilineSelection) + { + var testNode = GetSelectedTest(); + var isNotSuite = !testNode.IsGroupNode; + if (isNotSuite) + { + if (!string.IsNullOrEmpty(m_ResultStacktrace)) + { + m.AddItem(s_GUIOpenErrorLine, + false, + data => + { + if (!GuiHelper.OpenScriptInExternalEditor(m_ResultStacktrace)) + { + GuiHelper.OpenScriptInExternalEditor(testNode.type, testNode.method); + } + }, + ""); + } + + m.AddItem(s_GUIOpenTest, + false, + data => GuiHelper.OpenScriptInExternalEditor(testNode.type, testNode.method), + ""); + m.AddSeparator(""); + } + } + + if (!IsBusy()) + { + m.AddItem(multilineSelection ? s_GUIRunSelectedTests : s_GUIRun, + false, + data => RunTests(testFilter), + ""); + + if (EditorPrefs.GetBool("DeveloperMode", false)) + { + m.AddItem(multilineSelection ? s_GUIRunSelectedTests : s_GUIRunUntilFailed, + false, + data => + { + testFilter.testRepetitions = int.MaxValue; + RunTests(testFilter); + }, + ""); + + m.AddItem(multilineSelection ? s_GUIRunSelectedTests : s_GUIRun100Times, + false, + data => + { + testFilter.testRepetitions = 100; + RunTests(testFilter); + }, + ""); + } + } + else + m.AddDisabledItem(multilineSelection ? s_GUIRunSelectedTests : s_GUIRun, false); + + m.ShowAsContext(); + } + + private TestRunnerFilter GetSelectedTestsAsFilter(IEnumerable selectedIDs) + { + var namesToRun = new List(); + var exactNamesToRun = new List(); + var assembliesToRun = new List(); + foreach (var lineId in selectedIDs) + { + var line = m_TestListTree.FindItem(lineId); + if (line is TestTreeViewItem) + { + var testLine = line as TestTreeViewItem; + if (testLine.IsGroupNode && !testLine.FullName.Contains("+")) + { + if (testLine.parent != null && testLine.parent.displayName == "Invisible Root Item") + { + //Root node selected. Use an empty TestRunnerFilter to run every test + namesToRun.Clear(); + exactNamesToRun.Clear(); + assembliesToRun.Clear(); + break; + } + + if (testLine.FullName.EndsWith(".dll", StringComparison.OrdinalIgnoreCase)) + assembliesToRun.Add(TestRunnerFilter.AssemblyNameFromPath(testLine.FullName)); + else + namesToRun.Add(string.Format("^{0}$", testLine.FullName)); + } + else + exactNamesToRun.Add(testLine.FullName); + } + } + + var filter = new TestRunnerFilter + { + assemblyNames = assembliesToRun.ToArray(), + groupNames = namesToRun.ToArray(), + testNames = exactNamesToRun.ToArray(), + categoryNames = m_TestRunnerUIFilter.CategoryFilter + }; + return filter; + } + + private TestTreeViewItem GetSelectedTest() + { + foreach (var lineId in m_TestListState.selectedIDs) + { + var line = m_TestListTree.FindItem(lineId); + if (line is TestTreeViewItem) + { + return line as TestTreeViewItem; + } + } + return null; + } + + public abstract TestPlatform TestPlatform { get; } + + public void RebuildUIFilter() + { + m_TestRunnerUIFilter.UpdateCounters(newResultList); + if (m_TestRunnerUIFilter.IsFiltering) + { + m_TestListTree.ReloadData(); + } + } + + public void RepaintIfProjectPathChanged() + { + var path = TestListGUIHelper.GetActiveFolderPath(); + if (path != m_PreviousProjectPath) + { + m_PreviousProjectPath = path; + TestRunnerWindow.s_Instance.Repaint(); + } + + EditorApplication.update -= RepaintIfProjectPathChanged; + } + + protected abstract bool IsBusy(); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/TestListGUIBase.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/TestListGUIBase.cs.meta new file mode 100644 index 0000000..3bef151 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/GUI/Views/TestListGUIBase.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b8abb41ceb6f62c45a00197ae59224c1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension.meta new file mode 100644 index 0000000..0c99889 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3f9202a39620f51418046c7754f215f0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension/Attributes.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension/Attributes.meta new file mode 100644 index 0000000..a5930f1 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension/Attributes.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 96c503bf059df984c86eecf572370347 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension/Attributes/AssetPipelineIgnore.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension/Attributes/AssetPipelineIgnore.cs new file mode 100644 index 0000000..e71b62c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension/Attributes/AssetPipelineIgnore.cs @@ -0,0 +1,63 @@ +using System; +using NUnit.Framework; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; + +namespace UnityEditor.TestTools +{ + /// + /// Ignore attributes dedicated to Asset Import Pipeline backend version handling. + /// + internal static class AssetPipelineIgnore + { + internal enum AssetPipelineBackend + { + V1, + V2 + } + + /// + /// Ignore the test when running with the legacy Asset Import Pipeline V1 backend. + /// + internal class IgnoreInV1 : AssetPipelineIgnoreAttribute + { + public IgnoreInV1(string ignoreReason) : base(AssetPipelineBackend.V1, ignoreReason) {} + } + + /// + /// Ignore the test when running with the latest Asset Import Pipeline V2 backend. + /// + internal class IgnoreInV2 : AssetPipelineIgnoreAttribute + { + public IgnoreInV2(string ignoreReason) : base(AssetPipelineBackend.V2, ignoreReason) {} + } + + [AttributeUsage(AttributeTargets.Assembly | AttributeTargets.Class | AttributeTargets.Method)] + internal class AssetPipelineIgnoreAttribute : NUnitAttribute, IApplyToTest + { + readonly string m_IgnoreReason; + readonly AssetPipelineBackend m_IgnoredBackend; + static readonly AssetPipelineBackend k_ActiveBackend = AssetDatabase.IsV2Enabled() + ? AssetPipelineBackend.V2 + : AssetPipelineBackend.V1; + + static string ActiveBackendName = Enum.GetName(typeof(AssetPipelineBackend), k_ActiveBackend); + + public AssetPipelineIgnoreAttribute(AssetPipelineBackend backend, string ignoreReason) + { + m_IgnoredBackend = backend; + m_IgnoreReason = ignoreReason; + } + + public void ApplyToTest(Test test) + { + if (k_ActiveBackend == m_IgnoredBackend) + { + test.RunState = RunState.Ignored; + var skipReason = string.Format("Not supported by asset pipeline {0} backend {1}", ActiveBackendName, m_IgnoreReason); + test.Properties.Add(PropertyNames.SkipReason, skipReason); + } + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension/Attributes/AssetPipelineIgnore.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension/Attributes/AssetPipelineIgnore.cs.meta new file mode 100644 index 0000000..5f7207f --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension/Attributes/AssetPipelineIgnore.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b88caca58e05ee74486d86fb404c48e2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension/TestRunnerStateSerializer.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension/TestRunnerStateSerializer.cs new file mode 100644 index 0000000..a24190e --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension/TestRunnerStateSerializer.cs @@ -0,0 +1,162 @@ +using System; +using System.Reflection; +using System.Text; +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.TestRunner.NUnitExtensions.Runner; +using UnityEngine.TestTools.NUnitExtensions; +using UnityEngine.TestTools.Logging; + +namespace UnityEditor.TestTools.TestRunner +{ + [Serializable] + internal class TestRunnerStateSerializer : IStateSerializer + { + private const BindingFlags Flags = BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance | BindingFlags.FlattenHierarchy; + + [SerializeField] + private HideFlags m_OriginalHideFlags; + + [SerializeField] + private bool m_ShouldRestore; + + [SerializeField] + private string m_TestObjectTypeName; + + [SerializeField] + private ScriptableObject m_TestObject; + + [SerializeField] + private string m_TestObjectTxt; + + [SerializeField] + private long StartTicks; + + [SerializeField] + private double StartTimeOA; + + [SerializeField] + private string output; + + [SerializeField] + private LogMatch[] m_ExpectedLogs; + + public bool ShouldRestore() + { + return m_ShouldRestore; + } + + public void SaveContext() + { + var currentContext = UnityTestExecutionContext.CurrentContext; + + if (currentContext.TestObject != null) + { + m_TestObjectTypeName = currentContext.TestObject.GetType().AssemblyQualifiedName; + m_TestObject = null; + m_TestObjectTxt = null; + if (currentContext.TestObject is ScriptableObject) + { + m_TestObject = currentContext.TestObject as ScriptableObject; + m_OriginalHideFlags = m_TestObject.hideFlags; + m_TestObject.hideFlags |= HideFlags.DontSave; + } + else + { + m_TestObjectTxt = JsonUtility.ToJson(currentContext.TestObject); + } + } + + output = currentContext.CurrentResult.Output; + StartTicks = currentContext.StartTicks; + StartTimeOA = currentContext.StartTime.ToOADate(); + if (LogScope.HasCurrentLogScope()) + { + m_ExpectedLogs = LogScope.Current.ExpectedLogs.ToArray(); + } + + m_ShouldRestore = true; + } + + public void RestoreContext() + { + var currentContext = UnityTestExecutionContext.CurrentContext; + + var outputProp = currentContext.CurrentResult.GetType().BaseType.GetField("_output", Flags); + (outputProp.GetValue(currentContext.CurrentResult) as StringBuilder).Append(output); + + currentContext.StartTicks = StartTicks; + currentContext.StartTime = DateTime.FromOADate(StartTimeOA); + if (LogScope.HasCurrentLogScope()) + { + LogScope.Current.ExpectedLogs = new Queue(m_ExpectedLogs); + } + + m_ShouldRestore = false; + } + + public bool CanRestoreFromScriptableObject(Type requestedType) + { + if (m_TestObject == null) + { + return false; + } + return m_TestObjectTypeName == requestedType.AssemblyQualifiedName; + } + + public ScriptableObject RestoreScriptableObjectInstance() + { + if (m_TestObject == null) + { + Debug.LogError("No object to restore"); + return null; + } + EditorApplication.playModeStateChanged += OnPlayModeStateChanged; + var temp = m_TestObject; + m_TestObject = null; + m_TestObjectTypeName = null; + return temp; + } + + public bool CanRestoreFromJson(Type requestedType) + { + if (string.IsNullOrEmpty(m_TestObjectTxt)) + { + return false; + } + return m_TestObjectTypeName == requestedType.AssemblyQualifiedName; + } + + public void RestoreClassFromJson(ref object instance) + { + if (string.IsNullOrEmpty(m_TestObjectTxt)) + { + Debug.LogWarning("No JSON representation to restore"); + return; + } + JsonUtility.FromJsonOverwrite(m_TestObjectTxt, instance); + m_TestObjectTxt = null; + m_TestObjectTypeName = null; + } + + private void OnPlayModeStateChanged(PlayModeStateChange state) + { + if (m_TestObject == null) + { + EditorApplication.playModeStateChanged -= OnPlayModeStateChanged; + return; + } + + //We set the DontSave flag here because the ScriptableObject would be nulled right before entering EditMode + if (state == PlayModeStateChange.ExitingPlayMode) + { + m_TestObject.hideFlags |= HideFlags.DontSave; + } + else if (state == PlayModeStateChange.EnteredEditMode) + { + m_TestObject.hideFlags = m_OriginalHideFlags; + EditorApplication.playModeStateChanged -= OnPlayModeStateChanged; + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension/TestRunnerStateSerializer.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension/TestRunnerStateSerializer.cs.meta new file mode 100644 index 0000000..7d36e9d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/NUnitExtension/TestRunnerStateSerializer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 124533853216377448d786fd7c725701 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/RequireApiProfileAttribute.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/RequireApiProfileAttribute.cs new file mode 100644 index 0000000..e99d452 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/RequireApiProfileAttribute.cs @@ -0,0 +1,32 @@ +using System; +using System.Linq; +using NUnit.Framework; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; + +namespace UnityEditor.TestTools +{ + [AttributeUsage(AttributeTargets.Assembly | AttributeTargets.Class | AttributeTargets.Method)] + internal class RequireApiProfileAttribute : NUnitAttribute, IApplyToTest + { + public ApiCompatibilityLevel[] apiProfiles { get; private set; } + + public RequireApiProfileAttribute(params ApiCompatibilityLevel[] apiProfiles) + { + this.apiProfiles = apiProfiles; + } + + void IApplyToTest.ApplyToTest(Test test) + { + test.Properties.Add(PropertyNames.Category, string.Format("ApiProfile({0})", string.Join(", ", apiProfiles.Select(p => p.ToString()).OrderBy(p => p).ToArray()))); + ApiCompatibilityLevel testProfile = PlayerSettings.GetApiCompatibilityLevel(EditorUserBuildSettings.activeBuildTargetGroup); + + if (!apiProfiles.Contains(testProfile)) + { + string skipReason = "Skipping test as it requires a compatible api profile set: " + string.Join(", ", apiProfiles.Select(p => p.ToString()).ToArray()); + test.RunState = RunState.Skipped; + test.Properties.Add(PropertyNames.SkipReason, skipReason); + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/RequireApiProfileAttribute.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/RequireApiProfileAttribute.cs.meta new file mode 100644 index 0000000..66d03bd --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/RequireApiProfileAttribute.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a667f6654ad7a9548b8c8e68b51c8895 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/RequirePlatformSupportAttribute.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/RequirePlatformSupportAttribute.cs new file mode 100644 index 0000000..321a0fe --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/RequirePlatformSupportAttribute.cs @@ -0,0 +1,33 @@ +using System; +using System.Linq; +using NUnit.Framework; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; + +namespace UnityEditor.TestTools +{ + [AttributeUsage(AttributeTargets.Assembly | AttributeTargets.Class | AttributeTargets.Method)] + public class RequirePlatformSupportAttribute : NUnitAttribute, IApplyToTest + { + public RequirePlatformSupportAttribute(params BuildTarget[] platforms) + { + this.platforms = platforms; + } + + public BuildTarget[] platforms { get; private set; } + + void IApplyToTest.ApplyToTest(Test test) + { + test.Properties.Add(PropertyNames.Category, string.Format("RequirePlatformSupport({0})", string.Join(", ", platforms.Select(p => p.ToString()).OrderBy(p => p).ToArray()))); + + if (!platforms.All(p => BuildPipeline.IsBuildTargetSupported(BuildTargetGroup.Unknown, p))) + { + var missingPlatforms = platforms.Where(p => !BuildPipeline.IsBuildTargetSupported(BuildTargetGroup.Unknown, p)).Select(p => p.ToString()).ToArray(); + string skipReason = "Test cannot be run as it requires support for the following platforms to be installed: " + string.Join(", ", missingPlatforms); + + test.RunState = RunState.Skipped; + test.Properties.Add(PropertyNames.SkipReason, skipReason); + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/RequirePlatformSupportAttribute.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/RequirePlatformSupportAttribute.cs.meta new file mode 100644 index 0000000..8493058 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/RequirePlatformSupportAttribute.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d2146428d3f1ad54eb7326c9a44b3284 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestBuildAssemblyFilter.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestBuildAssemblyFilter.cs new file mode 100644 index 0000000..4f0a041 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestBuildAssemblyFilter.cs @@ -0,0 +1,21 @@ +using System.Linq; +using UnityEditor.Build; + +namespace UnityEditor.TestRunner +{ + internal class TestBuildAssemblyFilter : IFilterBuildAssemblies + { + private const string nunitAssemblyName = "nunit.framework"; + private const string unityTestRunnerAssemblyName = "UnityEngine.TestRunner"; + + public int callbackOrder { get; } + public string[] OnFilterAssemblies(BuildOptions buildOptions, string[] assemblies) + { + if ((buildOptions & BuildOptions.IncludeTestAssemblies) == BuildOptions.IncludeTestAssemblies || PlayerSettings.playModeTestRunnerEnabled) + { + return assemblies; + } + return assemblies.Where(x => !x.Contains(nunitAssemblyName) && !x.Contains(unityTestRunnerAssemblyName)).ToArray(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestBuildAssemblyFilter.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestBuildAssemblyFilter.cs.meta new file mode 100644 index 0000000..f3cd3bd --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestBuildAssemblyFilter.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3411e19edd44cfd46b548b058c3bc36c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers.meta new file mode 100644 index 0000000..c6a951b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d64d92e4f04a13e4b99ea8d48e9e8ae9 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/AttributeFinderBase.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/AttributeFinderBase.cs new file mode 100644 index 0000000..0c069e5 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/AttributeFinderBase.cs @@ -0,0 +1,95 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using NUnit.Framework.Interfaces; +using UnityEngine; +using UnityEngine.TestTools; + +namespace UnityEditor.TestTools.TestRunner +{ + internal abstract class AttributeFinderBase + { + public abstract IEnumerable Search(ITest tests, ITestFilter filter, RuntimePlatform testTargetPlatform); + } + + internal abstract class AttributeFinderBase : AttributeFinderBase where T2 : Attribute + { + private readonly Func m_TypeSelector; + protected AttributeFinderBase(Func typeSelector) + { + m_TypeSelector = typeSelector; + } + + public override IEnumerable Search(ITest tests, ITestFilter filter, RuntimePlatform testTargetPlatform) + { + var selectedTests = new List(); + GetMatchingTests(tests, filter, ref selectedTests, testTargetPlatform); + + var result = new List(); + result.AddRange(GetTypesFromPrebuildAttributes(selectedTests)); + result.AddRange(GetTypesFromInterface(selectedTests, testTargetPlatform)); + + return result.Distinct(); + } + + private static void GetMatchingTests(ITest tests, ITestFilter filter, ref List resultList, RuntimePlatform testTargetPlatform) + { + foreach (var test in tests.Tests) + { + if (IsTestEnabledOnPlatform(test, testTargetPlatform)) + { + if (test.IsSuite) + { + GetMatchingTests(test, filter, ref resultList, testTargetPlatform); + } + else + { + if (filter.Pass(test)) + resultList.Add(test); + } + } + } + } + + private static bool IsTestEnabledOnPlatform(ITest test, RuntimePlatform testTargetPlatform) + { + if (test.Method == null) + { + return true; + } + + var attributesFromMethods = test.Method.GetCustomAttributes(true).Select(attribute => attribute); + var attributesFromTypes = test.Method.TypeInfo.GetCustomAttributes(true).Select(attribute => attribute); + + if (!attributesFromMethods.All(a => a.IsPlatformSupported(testTargetPlatform))) + { + return false; + } + + if (!attributesFromTypes.All(a => a.IsPlatformSupported(testTargetPlatform))) + { + return false; + } + + return true; + } + + private IEnumerable GetTypesFromPrebuildAttributes(IEnumerable tests) + { + var attributesFromMethods = tests.SelectMany(t => t.Method.GetCustomAttributes(true).Select(attribute => attribute)); + var attributesFromTypes = tests.SelectMany(t => t.Method.TypeInfo.GetCustomAttributes(true).Select(attribute => attribute)); + + var result = new List(); + result.AddRange(attributesFromMethods); + result.AddRange(attributesFromTypes); + + return result.Select(m_TypeSelector).Where(type => type != null); + } + + private static IEnumerable GetTypesFromInterface(IEnumerable selectedTests, RuntimePlatform testTargetPlatform) + { + var typesWithInterfaces = selectedTests.Where(t => typeof(T1).IsAssignableFrom(t.Method.TypeInfo.Type) && IsTestEnabledOnPlatform(t, testTargetPlatform)); + return typesWithInterfaces.Select(t => t.Method.TypeInfo.Type); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/AttributeFinderBase.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/AttributeFinderBase.cs.meta new file mode 100644 index 0000000..19986f0 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/AttributeFinderBase.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5d4de3d4682a8d641907cc75e4fb950e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/EditModeLauncher.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/EditModeLauncher.cs new file mode 100644 index 0000000..d8314d3 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/EditModeLauncher.cs @@ -0,0 +1,141 @@ +using System.Collections.Generic; +using NUnit.Framework.Interfaces; +using UnityEditor.SceneManagement; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine; +using UnityEngine.SceneManagement; +using UnityEngine.TestTools; +using UnityEngine.TestTools.TestRunner; +using UnityEngine.TestTools.TestRunner.GUI; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class EditModeLauncher : TestLauncherBase + { + public static bool IsRunning; + private readonly EditModeRunner m_EditModeRunner; + + public EditModeLauncher(TestRunnerFilter filter, TestPlatform platform) + { + m_EditModeRunner = ScriptableObject.CreateInstance(); + m_EditModeRunner.UnityTestAssemblyRunnerFactory = new UnityTestAssemblyRunnerFactory(); + m_EditModeRunner.Init(filter, platform); + } + + public override void Run() + { + // Give user chance to save the changes to their currently open scene because we close it and load our own + var cancelled = !EditorSceneManager.SaveCurrentModifiedScenesIfUserWantsTo(); + if (cancelled) + return; + + IsRunning = true; + var exceptionThrown = ExecutePreBuildSetupMethods(m_EditModeRunner.GetLoadedTests(), m_EditModeRunner.GetFilter()); + if (exceptionThrown) + { + CallbacksDelegator.instance.RunFailed("Run Failed: One or more errors in a prebuild setup. See the editor log for details."); + return; + } + + var undoGroup = Undo.GetCurrentGroup(); + SceneSetup[] previousSceneSetup; + if (!OpenNewScene(out previousSceneSetup)) + return; + + var callback = AddEventHandler(); + callback.previousSceneSetup = previousSceneSetup; + callback.undoGroup = undoGroup; + callback.runner = m_EditModeRunner; + AddEventHandler(); + + m_EditModeRunner.Run(); + AddEventHandler(); + } + + private static bool OpenNewScene(out SceneSetup[] previousSceneSetup) + { + previousSceneSetup = null; + + var sceneCount = SceneManager.sceneCount; + + var scene = SceneManager.GetSceneAt(0); + var isSceneNotPersisted = string.IsNullOrEmpty(scene.path); + + if (sceneCount == 1 && isSceneNotPersisted) + { + EditorSceneManager.NewScene(NewSceneSetup.DefaultGameObjects, NewSceneMode.Single); + return true; + } + RemoveUntitledScenes(); + + // In case the user chose not to save the dirty scenes we reload them + ReloadUnsavedDirtyScene(); + + previousSceneSetup = EditorSceneManager.GetSceneManagerSetup(); + + scene = EditorSceneManager.NewScene(NewSceneSetup.EmptyScene, NewSceneMode.Additive); + SceneManager.SetActiveScene(scene); + + return true; + } + + private static void ReloadUnsavedDirtyScene() + { + for (var i = 0; i < SceneManager.sceneCount; i++) + { + var scene = SceneManager.GetSceneAt(i); + var isSceneNotPersisted = string.IsNullOrEmpty(scene.path); + var isSceneDirty = scene.isDirty; + if (isSceneNotPersisted && isSceneDirty) + { + EditorSceneManager.ReloadScene(scene); + } + } + } + + private static void RemoveUntitledScenes() + { + int sceneCount = SceneManager.sceneCount; + + var scenesToClose = new List(); + for (var i = 0; i < sceneCount; i++) + { + var scene = SceneManager.GetSceneAt(i); + var isSceneNotPersisted = string.IsNullOrEmpty(scene.path); + if (isSceneNotPersisted) + { + scenesToClose.Add(scene); + } + } + foreach (Scene scene in scenesToClose) + { + EditorSceneManager.CloseScene(scene, true); + } + } + + public class BackgroundListener : ScriptableObject, ITestRunnerListener + { + public void RunStarted(ITest testsToRun) + { + } + + public void RunFinished(ITestResult testResults) + { + IsRunning = false; + } + + public void TestStarted(ITest test) + { + } + + public void TestFinished(ITestResult result) + { + } + } + + public T AddEventHandler() where T : ScriptableObject, ITestRunnerListener + { + return m_EditModeRunner.AddEventHandler(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/EditModeLauncher.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/EditModeLauncher.cs.meta new file mode 100644 index 0000000..694d7d6 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/EditModeLauncher.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ac68f5ae37c8957468562b8da42f9984 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/EditModeLauncherContextSettings.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/EditModeLauncherContextSettings.cs new file mode 100644 index 0000000..e20305c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/EditModeLauncherContextSettings.cs @@ -0,0 +1,31 @@ +using System; +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class EditModeLauncherContextSettings : IDisposable + { + private bool m_RunInBackground; + + public EditModeLauncherContextSettings() + { + SetupProjectParameters(); + } + + public void Dispose() + { + CleanupProjectParameters(); + } + + private void SetupProjectParameters() + { + m_RunInBackground = Application.runInBackground; + Application.runInBackground = true; + } + + private void CleanupProjectParameters() + { + Application.runInBackground = m_RunInBackground; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/EditModeLauncherContextSettings.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/EditModeLauncherContextSettings.cs.meta new file mode 100644 index 0000000..2bed8fd --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/EditModeLauncherContextSettings.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a582090813554df479fb9ca03e9857d3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup.meta new file mode 100644 index 0000000..4947382 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ebc4d20cc106cea49b1df1153f0b3b5e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/AndroidPlatformSetup.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/AndroidPlatformSetup.cs new file mode 100644 index 0000000..9f39c0a --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/AndroidPlatformSetup.cs @@ -0,0 +1,62 @@ +using System; +using UnityEngine; +using System.Net; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class AndroidPlatformSetup : IPlatformSetup + { + private string m_oldApplicationIdentifier; + private string m_oldDeviceSocketAddress; + [SerializeField] + private bool m_Stripping; + + public void Setup() + { + m_oldApplicationIdentifier = PlayerSettings.GetApplicationIdentifier(BuildTargetGroup.Android); + PlayerSettings.SetApplicationIdentifier(BuildTargetGroup.Android, "com.UnityTestRunner.UnityTestRunner"); + + m_oldDeviceSocketAddress = EditorUserBuildSettings.androidDeviceSocketAddress; + var androidDeviceConnection = Environment.GetEnvironmentVariable("ANDROID_DEVICE_CONNECTION"); + EditorUserBuildSettings.waitForPlayerConnection = true; + if (androidDeviceConnection != null) + { + EditorUserBuildSettings.androidDeviceSocketAddress = androidDeviceConnection; + } + m_Stripping = PlayerSettings.stripEngineCode; + PlayerSettings.stripEngineCode = false; + } + + public void PostBuildAction() + { + PlayerSettings.stripEngineCode = m_Stripping; + } + + public void PostSuccessfulBuildAction() + { + var connectionResult = -1; + var maxTryCount = 10; + var tryCount = maxTryCount; + while (tryCount-- > 0 && connectionResult == -1) + { + connectionResult = EditorConnectionInternal.ConnectPlayerProxy(IPAddress.Loopback.ToString(), 34999); + if (EditorUtility.DisplayCancelableProgressBar("Editor Connection", "Connecting to the player", + 1 - ((float)tryCount / maxTryCount))) + { + EditorUtility.ClearProgressBar(); + throw new TestLaunchFailedException(); + } + } + EditorUtility.ClearProgressBar(); + if (connectionResult == -1) + throw new TestLaunchFailedException( + "Timed out trying to connect to the player. Player failed to launch or crashed soon after launching"); + } + + public void CleanUp() + { + EditorUserBuildSettings.androidDeviceSocketAddress = m_oldDeviceSocketAddress; + PlayerSettings.SetApplicationIdentifier(BuildTargetGroup.Android, m_oldApplicationIdentifier); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/AndroidPlatformSetup.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/AndroidPlatformSetup.cs.meta new file mode 100644 index 0000000..6e18a7c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/AndroidPlatformSetup.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 961642509dec50b44a293d26240140ec +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/ApplePlatformSetup.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/ApplePlatformSetup.cs new file mode 100644 index 0000000..59cc688 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/ApplePlatformSetup.cs @@ -0,0 +1,38 @@ +using System; +using System.Diagnostics; +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner +{ + [Serializable] + internal class ApplePlatformSetup : IPlatformSetup + { + [SerializeField] + private bool m_Stripping; + + public ApplePlatformSetup(BuildTarget buildTarget) + { + } + + public void Setup() + { + // Camera and fonts are stripped out and app crashes on iOS when test runner is trying to add a scene with... camera and text + m_Stripping = PlayerSettings.stripEngineCode; + PlayerSettings.stripEngineCode = false; + } + + public void PostBuildAction() + { + // Restoring player setting as early as possible + PlayerSettings.stripEngineCode = m_Stripping; + } + + public void PostSuccessfulBuildAction() + { + } + + public void CleanUp() + { + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/ApplePlatformSetup.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/ApplePlatformSetup.cs.meta new file mode 100644 index 0000000..36f22a6 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/ApplePlatformSetup.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f6c189a159d3bde4c964cee562e508ea +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/IPlatformSetup.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/IPlatformSetup.cs new file mode 100644 index 0000000..0cbcb33 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/IPlatformSetup.cs @@ -0,0 +1,10 @@ +namespace UnityEditor.TestTools.TestRunner +{ + internal interface IPlatformSetup + { + void Setup(); + void PostBuildAction(); + void PostSuccessfulBuildAction(); + void CleanUp(); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/IPlatformSetup.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/IPlatformSetup.cs.meta new file mode 100644 index 0000000..94405b5 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/IPlatformSetup.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9d614808f9add8a4f8e4860db2c7af0d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/LuminPlatformSetup.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/LuminPlatformSetup.cs new file mode 100644 index 0000000..1d03809 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/LuminPlatformSetup.cs @@ -0,0 +1,46 @@ +using System; +using System.Threading; +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class LuminPlatformSetup : IPlatformSetup + { + private const string kDeviceAddress = "127.0.0.1"; + private const int kDevicePort = 55000; + + public void Setup() + { + } + + public void PostBuildAction() + { + } + + public void PostSuccessfulBuildAction() + { + var connectionResult = -1; + var maxTryCount = 100; + var tryCount = maxTryCount; + while (tryCount-- > 0 && connectionResult == -1) + { + Thread.Sleep(1000); + connectionResult = EditorConnectionInternal.ConnectPlayerProxy(kDeviceAddress, kDevicePort); + if (EditorUtility.DisplayCancelableProgressBar("Editor Connection", "Connecting to the player", + 1 - ((float)tryCount / maxTryCount))) + { + EditorUtility.ClearProgressBar(); + throw new TestLaunchFailedException(); + } + } + EditorUtility.ClearProgressBar(); + if (connectionResult == -1) + throw new TestLaunchFailedException( + "Timed out trying to connect to the player. Player failed to launch or crashed soon after launching"); + } + + public void CleanUp() + { + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/LuminPlatformSetup.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/LuminPlatformSetup.cs.meta new file mode 100644 index 0000000..9e4dcc5 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/LuminPlatformSetup.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c38ae0585d6a55042a2d678330689685 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/PlatformSpecificSetup.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/PlatformSpecificSetup.cs new file mode 100644 index 0000000..7db5801 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/PlatformSpecificSetup.cs @@ -0,0 +1,105 @@ +using System; +using System.Collections.Generic; +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner +{ + [Serializable] + internal class PlatformSpecificSetup + { + [SerializeField] + private ApplePlatformSetup m_AppleiOSPlatformSetup = new ApplePlatformSetup(BuildTarget.iOS); + [SerializeField] + private ApplePlatformSetup m_AppleTvOSPlatformSetup = new ApplePlatformSetup(BuildTarget.tvOS); + [SerializeField] + private XboxOnePlatformSetup m_XboxOnePlatformSetup = new XboxOnePlatformSetup(); + [SerializeField] + private AndroidPlatformSetup m_AndroidPlatformSetup = new AndroidPlatformSetup(); + [SerializeField] + private SwitchPlatformSetup m_SwitchPlatformSetup = new SwitchPlatformSetup(); + + [SerializeField] + private UwpPlatformSetup m_UwpPlatformSetup = new UwpPlatformSetup(); + + [SerializeField] + private LuminPlatformSetup m_LuminPlatformSetup = new LuminPlatformSetup(); + + + private IDictionary m_SetupTypes; + + [SerializeField] + private BuildTarget m_Target; + + public PlatformSpecificSetup() + { + } + + public PlatformSpecificSetup(BuildTarget target) + { + m_Target = target; + } + + public void Setup() + { + var dictionary = GetSetup(); + + if (!dictionary.ContainsKey(m_Target)) + { + return; + } + + dictionary[m_Target].Setup(); + } + + public void PostBuildAction() + { + var dictionary = GetSetup(); + + if (!dictionary.ContainsKey(m_Target)) + { + return; + } + + dictionary[m_Target].PostBuildAction(); + } + + public void PostSuccessfulBuildAction() + { + var dictionary = GetSetup(); + + if (!dictionary.ContainsKey(m_Target)) + { + return; + } + + dictionary[m_Target].PostSuccessfulBuildAction(); + } + + public void CleanUp() + { + var dictionary = GetSetup(); + + if (!dictionary.ContainsKey(m_Target)) + { + return; + } + + dictionary[m_Target].CleanUp(); + } + + private IDictionary GetSetup() + { + m_SetupTypes = new Dictionary() + { + {BuildTarget.iOS, m_AppleiOSPlatformSetup}, + {BuildTarget.tvOS, m_AppleTvOSPlatformSetup}, + {BuildTarget.XboxOne, m_XboxOnePlatformSetup}, + {BuildTarget.Android, m_AndroidPlatformSetup}, + {BuildTarget.WSAPlayer, m_UwpPlatformSetup}, + {BuildTarget.Lumin, m_LuminPlatformSetup}, + {BuildTarget.Switch, m_SwitchPlatformSetup} + }; + return m_SetupTypes; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/PlatformSpecificSetup.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/PlatformSpecificSetup.cs.meta new file mode 100644 index 0000000..a250a1a --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/PlatformSpecificSetup.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6cccd50ebf7384242bda4d7bcb282ebf +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/SwitchPlatformSetup.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/SwitchPlatformSetup.cs new file mode 100644 index 0000000..20cabe0 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/SwitchPlatformSetup.cs @@ -0,0 +1,33 @@ +namespace UnityEditor.TestTools.TestRunner +{ + internal class SwitchPlatformSetup : IPlatformSetup + { + public void Setup() + { + EditorUserBuildSettings.switchCreateRomFile = true; + EditorUserBuildSettings.switchNVNGraphicsDebugger = false; + EditorUserBuildSettings.switchNVNDrawValidation = true; // catches more graphics errors + EditorUserBuildSettings.development = true; + EditorUserBuildSettings.switchRedirectWritesToHostMount = true; + + // We can use these when more debugging is required: + //EditorUserBuildSettings.switchNVNDrawValidation = false; // cannot be used with shader debug + //EditorUserBuildSettings.switchNVNGraphicsDebugger = true; + //EditorUserBuildSettings.switchNVNShaderDebugging = true; + //EditorUserBuildSettings.switchCreateSolutionFile = true; // for shorter iteration time + //EditorUserBuildSettings.allowDebugging = true; // managed debugger can be attached + } + + public void PostBuildAction() + { + } + + public void PostSuccessfulBuildAction() + { + } + + public void CleanUp() + { + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/SwitchPlatformSetup.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/SwitchPlatformSetup.cs.meta new file mode 100644 index 0000000..fb9dd05 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/SwitchPlatformSetup.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: adf7bea9401c1834380d55601add6cfb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/UwpPlatformSetup.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/UwpPlatformSetup.cs new file mode 100644 index 0000000..6eb634a --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/UwpPlatformSetup.cs @@ -0,0 +1,48 @@ +using System; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class UwpPlatformSetup : IPlatformSetup + { + private const string k_SettingsBuildConfiguration = "BuildConfiguration"; + private bool m_InternetClientServer; + private bool m_PrivateNetworkClientServer; + + public void Setup() + { + m_InternetClientServer = PlayerSettings.WSA.GetCapability(PlayerSettings.WSACapability.InternetClientServer); + m_PrivateNetworkClientServer = PlayerSettings.WSA.GetCapability(PlayerSettings.WSACapability.PrivateNetworkClientServer); + PlayerSettings.WSA.SetCapability(PlayerSettings.WSACapability.InternetClientServer, true); + PlayerSettings.WSA.SetCapability(PlayerSettings.WSACapability.PrivateNetworkClientServer, true); + + // This setting is initialized only when Window Store App is selected from the Build Settings window, and + // is typically an empty strings when running tests via UTR on the command-line. + bool wsaSettingNotInitialized = string.IsNullOrEmpty(EditorUserBuildSettings.wsaArchitecture); + + // If WSA build settings aren't fully initialized or running from a build machine, specify a default build configuration. + // Otherwise we can use the existing configuration specified by the user in Build Settings. + if (!string.IsNullOrEmpty(Environment.GetEnvironmentVariable("UNITY_THISISABUILDMACHINE")) || wsaSettingNotInitialized) + { + EditorUserBuildSettings.wsaSubtarget = WSASubtarget.PC; + EditorUserBuildSettings.wsaArchitecture = "x64"; + EditorUserBuildSettings.SetPlatformSettings(BuildPipeline.GetBuildTargetName(BuildTarget.WSAPlayer), k_SettingsBuildConfiguration, WSABuildType.Debug.ToString()); + EditorUserBuildSettings.wsaUWPBuildType = WSAUWPBuildType.ExecutableOnly; + PlayerSettings.SetIl2CppCompilerConfiguration(BuildTargetGroup.WSA, Il2CppCompilerConfiguration.Debug); + } + } + + public void PostBuildAction() + { + } + + public void PostSuccessfulBuildAction() + { + } + + public void CleanUp() + { + PlayerSettings.WSA.SetCapability(PlayerSettings.WSACapability.InternetClientServer, m_InternetClientServer); + PlayerSettings.WSA.SetCapability(PlayerSettings.WSACapability.PrivateNetworkClientServer, m_PrivateNetworkClientServer); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/UwpPlatformSetup.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/UwpPlatformSetup.cs.meta new file mode 100644 index 0000000..751ac7e --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/UwpPlatformSetup.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 667c6ad86a0b7a548aaa5c287f2c2861 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/XboxOnePlatformSetup.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/XboxOnePlatformSetup.cs new file mode 100644 index 0000000..0897dc5 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/XboxOnePlatformSetup.cs @@ -0,0 +1,43 @@ +namespace UnityEditor.TestTools.TestRunner +{ + internal class XboxOnePlatformSetup : IPlatformSetup + { + private XboxOneDeployMethod oldXboxOneDeployMethod; + private XboxOneDeployDrive oldXboxOneDeployDrive; + private string oldXboxOneAdditionalDebugPorts; + + public void Setup() + { + oldXboxOneDeployMethod = EditorUserBuildSettings.xboxOneDeployMethod; + oldXboxOneDeployDrive = EditorUserBuildSettings.xboxOneDeployDrive; + oldXboxOneAdditionalDebugPorts = EditorUserBuildSettings.xboxOneAdditionalDebugPorts; + + EditorUserBuildSettings.xboxOneDeployMethod = XboxOneDeployMethod.Package; + EditorUserBuildSettings.xboxOneDeployDrive = XboxOneDeployDrive.Default; + + // This causes the XboxOne post processing systems to open this port in your package manifest. + // In addition it will open the ephemeral range for debug connections as well. + // Failure to do this will cause connection problems. + EditorUserBuildSettings.xboxOneAdditionalDebugPorts = "34999"; + } + + public void PostBuildAction() + { + } + + public void PostSuccessfulBuildAction() + { + } + + public void CleanUp() + { + EditorUserBuildSettings.xboxOneDeployMethod = oldXboxOneDeployMethod; + EditorUserBuildSettings.xboxOneDeployDrive = oldXboxOneDeployDrive; + + // This causes the XboxOne post processing systems to open this port in your package manifest. + // In addition it will open the ephemeral range for debug connections as well. + // Failure to do this will cause connection problems. + EditorUserBuildSettings.xboxOneAdditionalDebugPorts = oldXboxOneAdditionalDebugPorts; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/XboxOnePlatformSetup.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/XboxOnePlatformSetup.cs.meta new file mode 100644 index 0000000..771c853 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlatformSetup/XboxOnePlatformSetup.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: aed7ab02155e43341a2dbcb7bc17c160 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncher.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncher.cs new file mode 100644 index 0000000..7655d4d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncher.cs @@ -0,0 +1,185 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using UnityEditor; +using UnityEditor.TestRunner.TestLaunchers; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine; +using UnityEngine.SceneManagement; +using UnityEngine.TestTools.TestRunner; +using UnityEngine.TestTools.TestRunner.Callbacks; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class TestLaunchFailedException : Exception + { + public TestLaunchFailedException() {} + public TestLaunchFailedException(string message) : base(message) {} + } + + [Serializable] + internal class PlayerLauncher : RuntimeTestLauncherBase + { + private readonly PlaymodeTestsControllerSettings m_Settings; + private readonly BuildTarget m_TargetPlatform; + private string m_TempBuildLocation; + private ITestRunSettings m_OverloadTestRunSettings; + + public PlayerLauncher(PlaymodeTestsControllerSettings settings, BuildTarget? targetPlatform, ITestRunSettings overloadTestRunSettings) + { + m_Settings = settings; + m_TargetPlatform = targetPlatform ?? EditorUserBuildSettings.activeBuildTarget; + m_OverloadTestRunSettings = overloadTestRunSettings; + } + + protected override RuntimePlatform? TestTargetPlatform + { + get { return BuildTargetConverter.TryConvertToRuntimePlatform(m_TargetPlatform); } + } + + public override void Run() + { + var editorConnectionTestCollector = RemoteTestRunController.instance; + editorConnectionTestCollector.hideFlags = HideFlags.HideAndDontSave; + editorConnectionTestCollector.Init(m_TargetPlatform); + + var remotePlayerLogController = RemotePlayerLogController.instance; + remotePlayerLogController.hideFlags = HideFlags.HideAndDontSave; + + using (var settings = new PlayerLauncherContextSettings(m_OverloadTestRunSettings)) + { + var sceneName = CreateSceneName(); + var scene = PrepareScene(sceneName); + + var filter = m_Settings.filter.BuildNUnitFilter(); + var runner = LoadTests(filter); + var exceptionThrown = ExecutePreBuildSetupMethods(runner.LoadedTest, filter); + if (exceptionThrown) + { + ReopenOriginalScene(m_Settings.originalScene); + AssetDatabase.DeleteAsset(sceneName); + CallbacksDelegator.instance.RunFailed("Run Failed: One or more errors in a prebuild setup. See the editor log for details."); + return; + } + + var playerBuildOptions = GetBuildOptions(scene); + + var success = BuildAndRunPlayer(playerBuildOptions); + editorConnectionTestCollector.PostBuildAction(); + ExecutePostBuildCleanupMethods(runner.LoadedTest, filter); + + ReopenOriginalScene(m_Settings.originalScene); + AssetDatabase.DeleteAsset(sceneName); + + if (!success) + { + ScriptableObject.DestroyImmediate(editorConnectionTestCollector); + Debug.LogError("Player build failed"); + throw new TestLaunchFailedException("Player build failed"); + } + + editorConnectionTestCollector.PostSuccessfulBuildAction(); + } + } + + public Scene PrepareScene(string sceneName) + { + var scene = CreateBootstrapScene(sceneName, runner => + { + runner.AddEventHandlerMonoBehaviour(); + runner.settings = m_Settings; + runner.AddEventHandlerMonoBehaviour(); + }); + return scene; + } + + private static bool BuildAndRunPlayer(PlayerLauncherBuildOptions buildOptions) + { + Debug.LogFormat(LogType.Log, LogOption.NoStacktrace, null, "Building player with following options:\n{0}", buildOptions); + + + // Android has to be in listen mode to establish player connection + if (buildOptions.BuildPlayerOptions.target == BuildTarget.Android) + { + buildOptions.BuildPlayerOptions.options &= ~BuildOptions.ConnectToHost; + } + + // For now, so does Lumin + if (buildOptions.BuildPlayerOptions.target == BuildTarget.Lumin) + { + buildOptions.BuildPlayerOptions.options &= ~BuildOptions.ConnectToHost; + } + + var result = BuildPipeline.BuildPlayer(buildOptions.BuildPlayerOptions); + if (result.summary.result != Build.Reporting.BuildResult.Succeeded) + Debug.LogError(result.SummarizeErrors()); + + return result.summary.result == Build.Reporting.BuildResult.Succeeded; + } + + private PlayerLauncherBuildOptions GetBuildOptions(Scene scene) + { + var buildOptions = new BuildPlayerOptions(); + var reduceBuildLocationPathLength = false; + + //Some platforms hit MAX_PATH limits during the build process, in these cases minimize the path length + if ((m_TargetPlatform == BuildTarget.WSAPlayer) || (m_TargetPlatform == BuildTarget.XboxOne)) + { + reduceBuildLocationPathLength = true; + } + + var scenes = new List() { scene.path }; + scenes.AddRange(EditorBuildSettings.scenes.Select(x => x.path)); + buildOptions.scenes = scenes.ToArray(); + + buildOptions.options |= BuildOptions.AutoRunPlayer | BuildOptions.Development | BuildOptions.ConnectToHost | BuildOptions.IncludeTestAssemblies | BuildOptions.StrictMode; + buildOptions.target = m_TargetPlatform; + + if (EditorUserBuildSettings.waitForPlayerConnection) + buildOptions.options |= BuildOptions.WaitForPlayerConnection; + + var buildTargetGroup = EditorUserBuildSettings.activeBuildTargetGroup; + var uniqueTempPathInProject = FileUtil.GetUniqueTempPathInProject(); + + if (reduceBuildLocationPathLength) + { + uniqueTempPathInProject = Path.GetTempFileName(); + File.Delete(uniqueTempPathInProject); + Directory.CreateDirectory(uniqueTempPathInProject); + } + + //Check if Lz4 is supported for the current buildtargetgroup and enable it if need be + if (PostprocessBuildPlayer.SupportsLz4Compression(buildTargetGroup, m_TargetPlatform)) + { + if (EditorUserBuildSettings.GetCompressionType(buildTargetGroup) == Compression.Lz4) + buildOptions.options |= BuildOptions.CompressWithLz4; + else if (EditorUserBuildSettings.GetCompressionType(buildTargetGroup) == Compression.Lz4HC) + buildOptions.options |= BuildOptions.CompressWithLz4HC; + } + + m_TempBuildLocation = Path.GetFullPath(uniqueTempPathInProject); + + string extensionForBuildTarget = PostprocessBuildPlayer.GetExtensionForBuildTarget(buildTargetGroup, buildOptions.target, buildOptions.options); + + var playerExecutableName = "PlayerWithTests"; + var playerDirectoryName = reduceBuildLocationPathLength ? "PwT" : "PlayerWithTests"; + + var locationPath = Path.Combine(m_TempBuildLocation, playerDirectoryName); + + if (!string.IsNullOrEmpty(extensionForBuildTarget)) + { + playerExecutableName += string.Format(".{0}", extensionForBuildTarget); + locationPath = Path.Combine(locationPath, playerExecutableName); + } + + buildOptions.locationPathName = locationPath; + + return new PlayerLauncherBuildOptions + { + BuildPlayerOptions = buildOptions, + PlayerDirectory = Path.Combine(m_TempBuildLocation, playerDirectoryName), + }; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncher.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncher.cs.meta new file mode 100644 index 0000000..60bb1c7 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncher.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d973fc1524e4d724081553934c55958c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncherBuildOptions.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncherBuildOptions.cs new file mode 100644 index 0000000..b498514 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncherBuildOptions.cs @@ -0,0 +1,23 @@ +using System.Text; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class PlayerLauncherBuildOptions + { + public BuildPlayerOptions BuildPlayerOptions; + public string PlayerDirectory; + + public override string ToString() + { + var str = new StringBuilder(); + str.AppendLine("locationPathName = " + BuildPlayerOptions.locationPathName); + str.AppendLine("target = " + BuildPlayerOptions.target); + str.AppendLine("scenes = " + string.Join(", ", BuildPlayerOptions.scenes)); + str.AppendLine("assetBundleManifestPath = " + BuildPlayerOptions.assetBundleManifestPath); + str.AppendLine("options.Development = " + ((BuildPlayerOptions.options & BuildOptions.Development) != 0)); + str.AppendLine("options.AutoRunPlayer = " + ((BuildPlayerOptions.options & BuildOptions.AutoRunPlayer) != 0)); + str.AppendLine("options.ForceEnableAssertions = " + ((BuildPlayerOptions.options & BuildOptions.ForceEnableAssertions) != 0)); + return str.ToString(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncherBuildOptions.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncherBuildOptions.cs.meta new file mode 100644 index 0000000..73c1779 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncherBuildOptions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 2a0bd678385f98e4d8eabdfc07d62b4f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncherContextSettings.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncherContextSettings.cs new file mode 100644 index 0000000..89b1cb2 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncherContextSettings.cs @@ -0,0 +1,106 @@ +using System; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class PlayerLauncherContextSettings : IDisposable + { + private ITestRunSettings m_OverloadSettings; + + private EditorBuildSettingsScene[] m_EditorBuildSettings; +#pragma warning disable 618 + private ResolutionDialogSetting m_DisplayResolutionDialog; +#pragma warning restore 618 + private bool m_RunInBackground; + private FullScreenMode m_FullScreenMode; + private bool m_ResizableWindow; + private bool m_ShowUnitySplashScreen; + private string m_OldproductName; + private string m_OldAotOptions; + private Lightmapping.GIWorkflowMode m_OldLightmapping; + private bool m_explicitNullChecks; + + private bool m_Disposed; + + public PlayerLauncherContextSettings(ITestRunSettings overloadSettings) + { + m_OverloadSettings = overloadSettings; + SetupProjectParameters(); + + if (overloadSettings != null) + { + overloadSettings.Apply(); + } + } + + public void Dispose() + { + if (!m_Disposed) + { + CleanupProjectParameters(); + if (m_OverloadSettings != null) + { + m_OverloadSettings.Dispose(); + } + + m_Disposed = true; + } + } + + private void SetupProjectParameters() + { + EditorApplication.LockReloadAssemblies(); + + m_EditorBuildSettings = EditorBuildSettings.scenes; + +#pragma warning disable 618 + m_DisplayResolutionDialog = PlayerSettings.displayResolutionDialog; + PlayerSettings.displayResolutionDialog = ResolutionDialogSetting.Disabled; +#pragma warning restore 618 + + m_RunInBackground = PlayerSettings.runInBackground; + PlayerSettings.runInBackground = true; + + m_FullScreenMode = PlayerSettings.fullScreenMode; + PlayerSettings.fullScreenMode = FullScreenMode.Windowed; + + m_OldAotOptions = PlayerSettings.aotOptions; + PlayerSettings.aotOptions = "nimt-trampolines=1024"; + + m_ResizableWindow = PlayerSettings.resizableWindow; + PlayerSettings.resizableWindow = true; + + m_ShowUnitySplashScreen = PlayerSettings.SplashScreen.show; + PlayerSettings.SplashScreen.show = false; + + m_OldproductName = PlayerSettings.productName; + PlayerSettings.productName = "UnityTestFramework"; + + m_OldLightmapping = Lightmapping.giWorkflowMode; + Lightmapping.giWorkflowMode = Lightmapping.GIWorkflowMode.OnDemand; + + m_explicitNullChecks = EditorUserBuildSettings.explicitNullChecks; + EditorUserBuildSettings.explicitNullChecks = true; + } + + private void CleanupProjectParameters() + { + EditorBuildSettings.scenes = m_EditorBuildSettings; + + PlayerSettings.fullScreenMode = m_FullScreenMode; + PlayerSettings.runInBackground = m_RunInBackground; +#pragma warning disable 618 + PlayerSettings.displayResolutionDialog = m_DisplayResolutionDialog; +#pragma warning restore 618 + PlayerSettings.resizableWindow = m_ResizableWindow; + PlayerSettings.SplashScreen.show = m_ShowUnitySplashScreen; + PlayerSettings.productName = m_OldproductName; + PlayerSettings.aotOptions = m_OldAotOptions; + Lightmapping.giWorkflowMode = m_OldLightmapping; + EditorUserBuildSettings.explicitNullChecks = m_explicitNullChecks; + + EditorApplication.UnlockReloadAssemblies(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncherContextSettings.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncherContextSettings.cs.meta new file mode 100644 index 0000000..29cb891 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlayerLauncherContextSettings.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6965880f76f40194593cb53a88f74005 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlaymodeLauncher.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlaymodeLauncher.cs new file mode 100644 index 0000000..78a9c72 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlaymodeLauncher.cs @@ -0,0 +1,129 @@ +using System; +using System.Collections.Generic; +using NUnit.Framework.Interfaces; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine; +using UnityEngine.SceneManagement; +using UnityEngine.TestTools.TestRunner; +using UnityEngine.TestTools.TestRunner.Callbacks; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class PlaymodeLauncher : RuntimeTestLauncherBase + { + public static bool IsRunning; + private Scene m_Scene; + private bool m_IsTestSetupPerformed; + private readonly PlaymodeTestsControllerSettings m_Settings; + private ITestFilter testFilter; + + [SerializeField] + private List m_EventHandlers = new List(); + + public PlaymodeLauncher(PlaymodeTestsControllerSettings settings) + { + m_Settings = settings; + } + + public override void Run() + { + IsRunning = true; + ConsoleWindow.SetConsoleErrorPause(false); + Application.runInBackground = true; + + var sceneName = CreateSceneName(); + m_Scene = CreateBootstrapScene(sceneName, runner => + { + runner.AddEventHandlerMonoBehaviour(); + runner.AddEventHandlerScriptableObject(); + runner.AddEventHandlerScriptableObject(); + + foreach (var eventHandler in m_EventHandlers) + { + var obj = ScriptableObject.CreateInstance(eventHandler); + runner.AddEventHandlerScriptableObject(obj as ITestRunnerListener); + } + + runner.settings = m_Settings; + }); + + if (m_Settings.sceneBased) + { + var newListOfScenes = + new List {new EditorBuildSettingsScene(sceneName, true)}; + newListOfScenes.AddRange(EditorBuildSettings.scenes); + EditorBuildSettings.scenes = newListOfScenes.ToArray(); + } + + EditorApplication.update += UpdateCallback; + } + + public void UpdateCallback() + { + if (m_IsTestSetupPerformed) + { + if (m_Scene.IsValid()) + SceneManager.SetActiveScene(m_Scene); + EditorApplication.update -= UpdateCallback; + EditorApplication.isPlaying = true; + } + else + { + testFilter = m_Settings.filter.BuildNUnitFilter(); + var runner = LoadTests(testFilter); + + var exceptionThrown = ExecutePreBuildSetupMethods(runner.LoadedTest, testFilter); + if (exceptionThrown) + { + EditorApplication.update -= UpdateCallback; + IsRunning = false; + var controller = PlaymodeTestsController.GetController(); + ReopenOriginalScene(controller); + AssetDatabase.DeleteAsset(controller.settings.bootstrapScene); + CallbacksDelegator.instance.RunFailed("Run Failed: One or more errors in a prebuild setup. See the editor log for details."); + return; + } + m_IsTestSetupPerformed = true; + } + } + + [InitializeOnLoad] + public class BackgroundWatcher + { + static BackgroundWatcher() + { + EditorApplication.playModeStateChanged += OnPlayModeStateChanged; + } + + private static void OnPlayModeStateChanged(PlayModeStateChange state) + { + if (!PlaymodeTestsController.IsControllerOnScene()) + return; + var runner = PlaymodeTestsController.GetController(); + if (runner == null) + return; + if (state == PlayModeStateChange.ExitingPlayMode) + { + AssetDatabase.DeleteAsset(runner.settings.bootstrapScene); + ExecutePostBuildCleanupMethods(runner.m_Runner.LoadedTest, runner.settings.filter.BuildNUnitFilter(), Application.platform); + IsRunning = false; + } + else if (state == PlayModeStateChange.EnteredEditMode) + { + //reopen the original scene once we exit playmode + ReopenOriginalScene(runner); + } + } + } + + protected static void ReopenOriginalScene(PlaymodeTestsController runner) + { + ReopenOriginalScene(runner.settings.originalScene); + } + + public void AddEventHandler() where T : ScriptableObject, ITestRunnerListener + { + m_EventHandlers.Add(typeof(T)); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlaymodeLauncher.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlaymodeLauncher.cs.meta new file mode 100644 index 0000000..ddb6e1c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PlaymodeLauncher.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d3217d58bbd1d2b4aaee933e2e8b9195 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PostbuildCleanupAttributeFinder.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PostbuildCleanupAttributeFinder.cs new file mode 100644 index 0000000..32dee2b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PostbuildCleanupAttributeFinder.cs @@ -0,0 +1,9 @@ +using UnityEngine.TestTools; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class PostbuildCleanupAttributeFinder : AttributeFinderBase + { + public PostbuildCleanupAttributeFinder() : base(attribute => attribute.TargetClass) {} + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PostbuildCleanupAttributeFinder.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PostbuildCleanupAttributeFinder.cs.meta new file mode 100644 index 0000000..454dd10 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PostbuildCleanupAttributeFinder.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 2c2dfcbbb77359547bcaa7cdabd47ebb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PrebuildSetupAttributeFinder.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PrebuildSetupAttributeFinder.cs new file mode 100644 index 0000000..b51241f --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PrebuildSetupAttributeFinder.cs @@ -0,0 +1,9 @@ +using UnityEngine.TestTools; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class PrebuildSetupAttributeFinder : AttributeFinderBase + { + public PrebuildSetupAttributeFinder() : base((attribute) => attribute.TargetClass) {} + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PrebuildSetupAttributeFinder.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PrebuildSetupAttributeFinder.cs.meta new file mode 100644 index 0000000..d524e56 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/PrebuildSetupAttributeFinder.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3c4ccfb0896bcf44da13e152b267aa49 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemotePlayerLogController.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemotePlayerLogController.cs new file mode 100644 index 0000000..25f4b65 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemotePlayerLogController.cs @@ -0,0 +1,83 @@ +using System; +using System.Collections.Generic; +using UnityEditor.DeploymentTargets; +using UnityEditor.TestTools.TestRunner.CommandLineTest; +using UnityEngine; + +namespace UnityEditor.TestRunner.TestLaunchers +{ + [Serializable] + internal class RemotePlayerLogController : ScriptableSingleton + { + private List m_LogWriters; + + private Dictionary m_Loggers; + + private string m_DeviceLogsDirectory; + + public void SetBuildTarget(BuildTarget buildTarget) + { + m_Loggers = GetDeploymentTargetLoggers(buildTarget); + } + + public void SetLogsDirectory(string dir) + { + m_DeviceLogsDirectory = dir; + } + + public void StartLogWriters() + { + if (m_DeviceLogsDirectory == null || m_Loggers == null) + return; + + m_LogWriters = new List(); + + foreach (var logger in m_Loggers) + { + m_LogWriters.Add(new LogWriter(m_DeviceLogsDirectory, logger.Key, logger.Value)); + logger.Value.Start(); + } + } + + public void StopLogWriters() + { + if (m_LogWriters == null) + return; + + foreach (var logWriter in m_LogWriters) + { + logWriter.Stop(); + } + } + + private Dictionary GetDeploymentTargetLoggers(BuildTarget buildTarget) + { + DeploymentTargetManager deploymentTargetManager; + + try + { + deploymentTargetManager = DeploymentTargetManager.CreateInstance(EditorUserBuildSettings.activeBuildTargetGroup, buildTarget); + } + catch (NotSupportedException ex) + { + Debug.Log(ex.Message); + Debug.Log("Deployment target logger not initialised"); + return null; + } + + var targets = deploymentTargetManager.GetKnownTargets(); + var loggers = new Dictionary(); + + foreach (var target in targets) + { + if (target.status != DeploymentTargetStatus.Ready) continue; + + var logger = deploymentTargetManager.GetTargetLogger(target.id); + logger.Clear(); + loggers.Add(target.id, logger); + } + + return loggers; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemotePlayerLogController.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemotePlayerLogController.cs.meta new file mode 100644 index 0000000..b208419 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemotePlayerLogController.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: edd2a1fe1acbbde43aad39862bb3f4a8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemotePlayerTestController.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemotePlayerTestController.cs new file mode 100644 index 0000000..a7288ba --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemotePlayerTestController.cs @@ -0,0 +1,81 @@ +using System; +using UnityEditor.Networking.PlayerConnection; +using UnityEditor.TestTools.TestRunner; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEditor.TestTools.TestRunner.UnityTestProtocol; +using UnityEngine; +using UnityEngine.Networking.PlayerConnection; +using UnityEngine.TestRunner.TestLaunchers; + +namespace UnityEditor.TestRunner.TestLaunchers +{ + [Serializable] + internal class RemoteTestRunController : ScriptableSingleton + { + [SerializeField] + private RemoteTestResultReciever m_RemoteTestResultReciever; + + [SerializeField] + private PlatformSpecificSetup m_PlatformSpecificSetup; + + [SerializeField] + private bool m_RegisteredConnectionCallbacks; + + public void Init(BuildTarget buildTarget) + { + m_PlatformSpecificSetup = new PlatformSpecificSetup(buildTarget); + m_PlatformSpecificSetup.Setup(); + m_RemoteTestResultReciever = new RemoteTestResultReciever(); + EditorConnection.instance.Initialize(); + if (!m_RegisteredConnectionCallbacks) + { + EditorConnection.instance.Initialize(); + DelegateEditorConnectionEvents(); + } + } + + private void DelegateEditorConnectionEvents() + { + m_RegisteredConnectionCallbacks = true; + //This is needed because RemoteTestResultReciever is not a ScriptableObject + EditorConnection.instance.Register(PlayerConnectionMessageIds.runStartedMessageId, RunStarted); + EditorConnection.instance.Register(PlayerConnectionMessageIds.runFinishedMessageId, RunFinished); + EditorConnection.instance.Register(PlayerConnectionMessageIds.testStartedMessageId, TestStarted); + EditorConnection.instance.Register(PlayerConnectionMessageIds.testFinishedMessageId, TestFinished); + } + + private void RunStarted(MessageEventArgs messageEventArgs) + { + m_RemoteTestResultReciever.RunStarted(messageEventArgs); + CallbacksDelegator.instance.RunStartedRemotely(messageEventArgs.data); + } + + private void RunFinished(MessageEventArgs messageEventArgs) + { + m_RemoteTestResultReciever.RunFinished(messageEventArgs); + m_PlatformSpecificSetup.CleanUp(); + + CallbacksDelegator.instance.RunFinishedRemotely(messageEventArgs.data); + } + + private void TestStarted(MessageEventArgs messageEventArgs) + { + CallbacksDelegator.instance.TestStartedRemotely(messageEventArgs.data); + } + + private void TestFinished(MessageEventArgs messageEventArgs) + { + CallbacksDelegator.instance.TestFinishedRemotely(messageEventArgs.data); + } + + public void PostBuildAction() + { + m_PlatformSpecificSetup.PostBuildAction(); + } + + public void PostSuccessfulBuildAction() + { + m_PlatformSpecificSetup.PostSuccessfulBuildAction(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemotePlayerTestController.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemotePlayerTestController.cs.meta new file mode 100644 index 0000000..020222b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemotePlayerTestController.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7d36034e63ad8254b9b2f55280fcc040 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemoteTestResultReciever.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemoteTestResultReciever.cs new file mode 100644 index 0000000..b45141b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemoteTestResultReciever.cs @@ -0,0 +1,22 @@ +using System; +using UnityEditor.Networking.PlayerConnection; +using UnityEngine; +using UnityEngine.Networking.PlayerConnection; +using UnityEngine.TestRunner.TestLaunchers; + +namespace UnityEditor.TestTools.TestRunner +{ + [Serializable] + internal class RemoteTestResultReciever + { + public void RunStarted(MessageEventArgs messageEventArgs) + { + } + + public void RunFinished(MessageEventArgs messageEventArgs) + { + EditorConnection.instance.Send(PlayerConnectionMessageIds.runFinishedMessageId, null, messageEventArgs.playerId); + EditorConnection.instance.DisconnectAll(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemoteTestResultReciever.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemoteTestResultReciever.cs.meta new file mode 100644 index 0000000..e701015 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RemoteTestResultReciever.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fdb35ef8fc437e14fa4b6c74a0609e86 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RuntimeTestLauncherBase.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RuntimeTestLauncherBase.cs new file mode 100644 index 0000000..4f4aeb4 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RuntimeTestLauncherBase.cs @@ -0,0 +1,92 @@ +using System; +using System.Linq; +using NUnit.Framework.Interfaces; +using UnityEditor.Events; +using UnityEditor.SceneManagement; +using UnityEngine; +using UnityEngine.SceneManagement; +using UnityEngine.TestRunner.NUnitExtensions.Runner; +using UnityEngine.TestTools; +using UnityEngine.TestTools.NUnitExtensions; +using UnityEngine.TestTools.TestRunner; +using UnityEngine.TestTools.Utils; + +namespace UnityEditor.TestTools.TestRunner +{ + internal abstract class RuntimeTestLauncherBase : TestLauncherBase + { + protected Scene CreateBootstrapScene(string sceneName, Action runnerSetup) + { + var scene = EditorSceneManager.NewScene(NewSceneSetup.EmptyScene, NewSceneMode.Single); + var go = new GameObject(PlaymodeTestsController.kPlaymodeTestControllerName); + + var editorLoadedTestAssemblyProvider = new EditorLoadedTestAssemblyProvider(new EditorCompilationInterfaceProxy(), new EditorAssembliesProxy()); + + var runner = go.AddComponent(); + runnerSetup(runner); + runner.settings.bootstrapScene = sceneName; + runner.AssembliesWithTests = editorLoadedTestAssemblyProvider.GetAssembliesGroupedByType(TestPlatform.PlayMode).Select(x => x.Assembly.GetName().Name).ToList(); + + EditorSceneManager.MarkSceneDirty(scene); + AssetDatabase.SaveAssets(); + EditorSceneManager.SaveScene(scene, sceneName, false); + + return scene; + } + + public string CreateSceneName() + { + return "Assets/InitTestScene" + DateTime.Now.Ticks + ".unity"; + } + + protected UnityTestAssemblyRunner LoadTests(ITestFilter filter) + { + var editorLoadedTestAssemblyProvider = new EditorLoadedTestAssemblyProvider(new EditorCompilationInterfaceProxy(), new EditorAssembliesProxy()); + var assembliesWithTests = editorLoadedTestAssemblyProvider.GetAssembliesGroupedByType(TestPlatform.PlayMode).Select(x => x.Assembly.GetName().Name).ToList(); + + var nUnitTestAssemblyRunner = new UnityTestAssemblyRunner(new UnityTestAssemblyBuilder(), null); + var assemblyProvider = new PlayerTestAssemblyProvider(new AssemblyLoadProxy(), assembliesWithTests); + nUnitTestAssemblyRunner.Load(assemblyProvider.GetUserAssemblies().Select(a => a.Assembly).ToArray(), UnityTestAssemblyBuilder.GetNUnitTestBuilderSettings(TestPlatform.PlayMode)); + return nUnitTestAssemblyRunner; + } + + protected static void ReopenOriginalScene(string originalSceneName) + { + EditorSceneManager.NewScene(NewSceneSetup.DefaultGameObjects); + if (!string.IsNullOrEmpty(originalSceneName)) + { + EditorSceneManager.OpenScene(originalSceneName); + } + } + } + + internal static class PlaymodeTestsControllerExtensions + { + internal static T AddEventHandlerMonoBehaviour(this PlaymodeTestsController controller) where T : MonoBehaviour, ITestRunnerListener + { + var eventHandler = controller.gameObject.AddComponent(); + SetListeners(controller, eventHandler); + return eventHandler; + } + + internal static T AddEventHandlerScriptableObject(this PlaymodeTestsController controller) where T : ScriptableObject, ITestRunnerListener + { + var eventListener = ScriptableObject.CreateInstance(); + AddEventHandlerScriptableObject(controller, eventListener); + return eventListener; + } + + internal static void AddEventHandlerScriptableObject(this PlaymodeTestsController controller, ITestRunnerListener obj) + { + SetListeners(controller, obj); + } + + private static void SetListeners(PlaymodeTestsController controller, ITestRunnerListener eventHandler) + { + UnityEventTools.AddPersistentListener(controller.testStartedEvent, eventHandler.TestStarted); + UnityEventTools.AddPersistentListener(controller.testFinishedEvent, eventHandler.TestFinished); + UnityEventTools.AddPersistentListener(controller.runStartedEvent, eventHandler.RunStarted); + UnityEventTools.AddPersistentListener(controller.runFinishedEvent, eventHandler.RunFinished); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RuntimeTestLauncherBase.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RuntimeTestLauncherBase.cs.meta new file mode 100644 index 0000000..28c7416 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/RuntimeTestLauncherBase.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0efb23ecb373b6d4bbe5217485785138 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/TestLauncherBase.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/TestLauncherBase.cs new file mode 100644 index 0000000..cb8b5c4 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/TestLauncherBase.cs @@ -0,0 +1,66 @@ +using System; +using NUnit.Framework.Interfaces; +using UnityEngine; +using UnityEngine.TestTools; + +namespace UnityEditor.TestTools.TestRunner +{ + internal abstract class TestLauncherBase + { + public abstract void Run(); + + protected virtual RuntimePlatform? TestTargetPlatform + { + get { return Application.platform; } + } + + protected bool ExecutePreBuildSetupMethods(ITest tests, ITestFilter testRunnerFilter) + { + var attributeFinder = new PrebuildSetupAttributeFinder(); + var logString = "Executing setup for: {0}"; + return ExecuteMethods(tests, testRunnerFilter, attributeFinder, logString, targetClass => targetClass.Setup(), TestTargetPlatform); + } + + public void ExecutePostBuildCleanupMethods(ITest tests, ITestFilter testRunnerFilter) + { + ExecutePostBuildCleanupMethods(tests, testRunnerFilter, TestTargetPlatform); + } + + public static void ExecutePostBuildCleanupMethods(ITest tests, ITestFilter testRunnerFilter, RuntimePlatform? testTargetPlatform) + { + var attributeFinder = new PostbuildCleanupAttributeFinder(); + var logString = "Executing cleanup for: {0}"; + ExecuteMethods(tests, testRunnerFilter, attributeFinder, logString, targetClass => targetClass.Cleanup(), testTargetPlatform); + } + + private static bool ExecuteMethods(ITest tests, ITestFilter testRunnerFilter, AttributeFinderBase attributeFinder, string logString, Action action, RuntimePlatform? testTargetPlatform) + { + var exceptionsThrown = false; + + if (testTargetPlatform == null) + { + Debug.LogError("Could not determine test target platform from build target " + EditorUserBuildSettings.activeBuildTarget); + return true; + } + + foreach (var targetClassType in attributeFinder.Search(tests, testRunnerFilter, testTargetPlatform.Value)) + { + try + { + var targetClass = (T)Activator.CreateInstance(targetClassType); + + Debug.LogFormat(logString, targetClassType.FullName); + action(targetClass); + } + catch (InvalidCastException) {} + catch (Exception e) + { + Debug.LogException(e); + exceptionsThrown = true; + } + } + + return exceptionsThrown; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/TestLauncherBase.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/TestLauncherBase.cs.meta new file mode 100644 index 0000000..c36990c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestLaunchers/TestLauncherBase.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1cddf785b0d07434d8e0607c97b09135 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestResultSerializer.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestResultSerializer.cs new file mode 100644 index 0000000..f471fee --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestResultSerializer.cs @@ -0,0 +1,71 @@ +using System; +using System.Reflection; +using System.Text; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner +{ + [Serializable] + internal class TestResultSerializer + { + private static readonly BindingFlags flags = BindingFlags.NonPublic | BindingFlags.Public | + BindingFlags.Instance | BindingFlags.FlattenHierarchy; + + [SerializeField] public string id; + + [SerializeField] public string fullName; + + [SerializeField] private double duration; + + [SerializeField] private string label; + + [SerializeField] private string message; + + [SerializeField] private string output; + + [SerializeField] private string site; + + [SerializeField] private string stacktrace; + + [SerializeField] private double startTimeAO; + + [SerializeField] private string status; + + public static TestResultSerializer MakeFromTestResult(ITestResult result) + { + var wrapper = new TestResultSerializer(); + wrapper.id = result.Test.Id; + wrapper.fullName = result.FullName; + wrapper.status = result.ResultState.Status.ToString(); + wrapper.label = result.ResultState.Label; + wrapper.site = result.ResultState.Site.ToString(); + wrapper.output = result.Output; + wrapper.duration = result.Duration; + wrapper.stacktrace = result.StackTrace; + wrapper.message = result.Message; + wrapper.startTimeAO = result.StartTime.ToOADate(); + return wrapper; + } + + public void RestoreTestResult(TestResult result) + { + var resultState = new ResultState((TestStatus)Enum.Parse(typeof(TestStatus), status), label, + (FailureSite)Enum.Parse(typeof(FailureSite), site)); + result.GetType().BaseType.GetField("_resultState", flags).SetValue(result, resultState); + result.GetType().BaseType.GetField("_output", flags).SetValue(result, new StringBuilder(output)); + result.GetType().BaseType.GetField("_duration", flags).SetValue(result, duration); + result.GetType().BaseType.GetField("_message", flags).SetValue(result, message); + result.GetType().BaseType.GetField("_stackTrace", flags).SetValue(result, stacktrace); + result.GetType() + .BaseType.GetProperty("StartTime", flags) + .SetValue(result, DateTime.FromOADate(startTimeAO), null); + } + + public bool IsPassed() + { + return status == TestStatus.Passed.ToString(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestResultSerializer.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestResultSerializer.cs.meta new file mode 100644 index 0000000..96f2960 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestResultSerializer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 559482fe33c79e44882d3a6cedc55fb5 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner.meta new file mode 100644 index 0000000..d09886b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 49d4c2ab7ff0f4442af256bad7c9d57c +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks.meta new file mode 100644 index 0000000..9e611a4 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5d7f0d6acfced954682a89e7002c04d9 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/EditModeRunnerCallback.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/EditModeRunnerCallback.cs new file mode 100644 index 0000000..9b92fbc --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/EditModeRunnerCallback.cs @@ -0,0 +1,190 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using NUnit.Framework; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; +using UnityEditor.SceneManagement; +using UnityEngine; +using UnityEngine.TestTools.TestRunner; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class EditModeRunnerCallback : ScriptableObject, ITestRunnerListener + { + private EditModeLauncherContextSettings m_Settings; + public SceneSetup[] previousSceneSetup; + public int undoGroup; + public EditModeRunner runner; + + private bool m_Canceled; + private ITest m_CurrentTest; + private int m_TotalTests; + + [SerializeField] + private List m_PendingTests; + [SerializeField] + private string m_LastCountedTestName; + [SerializeField] + private bool m_RunRestarted; + + public void OnDestroy() + { + CleanUp(); + } + + public void RunStarted(ITest testsToRun) + { + Setup(); + if (m_PendingTests == null) + { + m_PendingTests = GetTestsExpectedToRun(testsToRun, runner.GetFilter()); + m_TotalTests = m_PendingTests.Count; + } + } + + public void OnEnable() + { + if (m_RunRestarted) + { + Setup(); + } + } + + private void Setup() + { + m_Settings = new EditModeLauncherContextSettings(); + Application.logMessageReceivedThreaded += LogReceived; + EditorApplication.playModeStateChanged += WaitForExitPlaymode; + EditorApplication.update += DisplayProgressBar; + AssemblyReloadEvents.beforeAssemblyReload += BeforeAssemblyReload; + } + + private void BeforeAssemblyReload() + { + if (m_CurrentTest != null) + { + m_LastCountedTestName = m_CurrentTest.FullName; + m_RunRestarted = true; + } + } + + private void DisplayProgressBar() + { + if (m_CurrentTest == null) + return; + if (!m_Canceled && EditorUtility.DisplayCancelableProgressBar("Test Runner", "Running test " + m_CurrentTest.Name, Math.Min(1.0f, (float)(m_TotalTests - m_PendingTests.Count) / m_TotalTests))) + { + EditorApplication.update -= DisplayProgressBar; + m_Canceled = true; + EditorUtility.ClearProgressBar(); + runner.OnRunCancel(); + } + } + + private static void LogReceived(string message, string stacktrace, LogType type) + { + if (TestContext.Out != null) + TestContext.Out.WriteLine(message); + } + + private static void WaitForExitPlaymode(PlayModeStateChange state) + { + if (state == PlayModeStateChange.EnteredEditMode) + { + EditorApplication.playModeStateChanged -= WaitForExitPlaymode; + //because logMessage is reset on Enter EditMode + //we remove and add the callback + //because Unity + Application.logMessageReceivedThreaded -= LogReceived; + Application.logMessageReceivedThreaded += LogReceived; + } + } + + public void RunFinished(ITestResult result) + { + if (previousSceneSetup != null && previousSceneSetup.Length > 0) + { + try + { + EditorSceneManager.RestoreSceneManagerSetup(previousSceneSetup); + } + catch (ArgumentException e) + { + Debug.LogWarning(e.Message); + } + } + else + { + EditorSceneManager.NewScene(NewSceneSetup.DefaultGameObjects, NewSceneMode.Single); + } + CleanUp(); + PerformUndo(undoGroup); + } + + private void CleanUp() + { + m_CurrentTest = null; + EditorUtility.ClearProgressBar(); + if (m_Settings != null) + { + m_Settings.Dispose(); + } + Application.logMessageReceivedThreaded -= LogReceived; + EditorApplication.update -= DisplayProgressBar; + } + + public void TestStarted(ITest test) + { + if (test.IsSuite || !(test is TestMethod)) + { + return; + } + + m_CurrentTest = test; + + if (m_RunRestarted) + { + if (test.FullName == m_LastCountedTestName) + m_RunRestarted = false; + } + } + + public void TestFinished(ITestResult result) + { + if (result.Test is TestMethod) + { + m_PendingTests.Remove(result.Test.FullName); + } + } + + private static void PerformUndo(int undoGroup) + { + EditorUtility.DisplayProgressBar("Undo", "Reverting changes to the scene", 0); + var undoStartTime = DateTime.Now; + Undo.RevertAllDownToGroup(undoGroup); + if ((DateTime.Now - undoStartTime).TotalSeconds > 1) + Debug.LogWarning("Undo after editor test run took " + (DateTime.Now - undoStartTime).Seconds + " seconds."); + EditorUtility.ClearProgressBar(); + } + + private static List GetTestsExpectedToRun(ITest test, ITestFilter filter) + { + var expectedTests = new List(); + + if (filter.Pass(test)) + { + if (test.IsSuite) + { + expectedTests.AddRange(test.Tests.SelectMany(subTest => GetTestsExpectedToRun(subTest, filter))); + } + else + { + expectedTests.Add(test.FullName); + } + } + + return expectedTests; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/EditModeRunnerCallback.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/EditModeRunnerCallback.cs.meta new file mode 100644 index 0000000..1a0d71c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/EditModeRunnerCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: cc456ba93311a3a43ad896449fee9868 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallback.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallback.cs new file mode 100644 index 0000000..0bd60e9 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallback.cs @@ -0,0 +1,83 @@ +using UnityEditor.TestTools.TestRunner.Api; +using UnityEditor.TestTools.TestRunner.CommandLineTest; +using UnityEngine.TestTools.TestRunner.GUI; +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class RerunCallback : ScriptableObject, ICallbacks + { + public static bool useMockRunFilter = false; + public static TestRunnerFilter mockRunFilter = null; + + public void RunFinished(ITestResultAdaptor result) + { + if (RerunCallbackData.instance.runFilter == null) + RerunCallbackData.instance.runFilter = new TestRunnerFilter(); + + var runFilter = RerunCallbackData.instance.runFilter; + + if (useMockRunFilter) + { + runFilter = mockRunFilter; + } + + runFilter.testRepetitions--; + if (runFilter.testRepetitions <= 0 || result.TestStatus != TestStatus.Passed) + { + ExitCallbacks.preventExit = false; + return; + } + + ExitCallbacks.preventExit = true; + if (EditorApplication.isPlaying) + { + EditorApplication.playModeStateChanged += WaitForExitPlaymode; + return; + } + + if (!useMockRunFilter) + { + ExecuteTestRunnerAPI(); + } + } + + private static void WaitForExitPlaymode(PlayModeStateChange state) + { + if (state == PlayModeStateChange.EnteredEditMode) + { + ExecuteTestRunnerAPI(); + } + } + + private static void ExecuteTestRunnerAPI() + { + var runFilter = RerunCallbackData.instance.runFilter; + var testMode = RerunCallbackData.instance.testMode; + + var testRunnerApi = ScriptableObject.CreateInstance(); + testRunnerApi.Execute(new Api.ExecutionSettings() + { + filter = new Filter() + { + categoryNames = runFilter.categoryNames, + groupNames = runFilter.groupNames, + testMode = testMode, + testNames = runFilter.testNames + } + }); + } + + public void TestStarted(ITestAdaptor test) + { + } + + public void TestFinished(ITestResultAdaptor result) + { + } + + public void RunStarted(ITestAdaptor testsToRun) + { + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallback.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallback.cs.meta new file mode 100644 index 0000000..3a3be6c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b7ff2b2e91321ff4381d4ab45870a32e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallbackData.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallbackData.cs new file mode 100644 index 0000000..270a5c5 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallbackData.cs @@ -0,0 +1,15 @@ +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine; +using UnityEngine.TestTools.TestRunner.GUI; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class RerunCallbackData : ScriptableSingleton + { + [SerializeField] + internal TestRunnerFilter runFilter; + + [SerializeField] + internal TestMode testMode; + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallbackData.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallbackData.cs.meta new file mode 100644 index 0000000..e72f3af --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallbackData.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 087cba9fa6ac867479a0b0fdc0a5864b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallbackInitializer.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallbackInitializer.cs new file mode 100644 index 0000000..2260d4d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallbackInitializer.cs @@ -0,0 +1,17 @@ +using UnityEngine; +using UnityEditor.TestTools.TestRunner.Api; + +namespace UnityEditor.TestTools.TestRunner +{ + [InitializeOnLoad] + static class RerunCallbackInitializer + { + static RerunCallbackInitializer() + { + var testRunnerApi = ScriptableObject.CreateInstance(); + + var rerunCallback = ScriptableObject.CreateInstance(); + testRunnerApi.RegisterCallbacks(rerunCallback); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallbackInitializer.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallbackInitializer.cs.meta new file mode 100644 index 0000000..5149605 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/RerunCallbackInitializer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f73fc901e4b0f2d4daf11f46506054ba +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/TestRunnerCallback.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/TestRunnerCallback.cs new file mode 100644 index 0000000..4234754 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/TestRunnerCallback.cs @@ -0,0 +1,37 @@ +using NUnit.Framework.Interfaces; +using UnityEngine; +using UnityEngine.TestTools.TestRunner; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class TestRunnerCallback : ScriptableObject, ITestRunnerListener + { + public void RunStarted(ITest testsToRun) + { + EditorApplication.playModeStateChanged += OnPlayModeStateChanged; + } + + private void OnPlayModeStateChanged(PlayModeStateChange state) + { + if (state == PlayModeStateChange.ExitingPlayMode) + { + EditorApplication.playModeStateChanged -= OnPlayModeStateChanged; + //We need to make sure we don't block NUnit thread in case we exit PlayMode earlier + PlaymodeTestsController.TryCleanup(); + } + } + + public void RunFinished(ITestResult testResults) + { + EditorApplication.isPlaying = false; + } + + public void TestStarted(ITest testName) + { + } + + public void TestFinished(ITestResult test) + { + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/TestRunnerCallback.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/TestRunnerCallback.cs.meta new file mode 100644 index 0000000..1356ff9 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/TestRunnerCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d44e6804bc58be84ea71a619b468f150 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/WindowResultUpdater.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/WindowResultUpdater.cs new file mode 100644 index 0000000..e3f0be0 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/WindowResultUpdater.cs @@ -0,0 +1,32 @@ +using UnityEditor.TestTools.TestRunner.Api; + +namespace UnityEditor.TestTools.TestRunner.GUI +{ + internal class WindowResultUpdater : ICallbacks + { + public void RunStarted(ITestAdaptor testsToRun) + { + } + + public void RunFinished(ITestResultAdaptor testResults) + { + if (TestRunnerWindow.s_Instance != null) + { + TestRunnerWindow.s_Instance.RebuildUIFilter(); + } + } + + public void TestStarted(ITestAdaptor testName) + { + } + + public void TestFinished(ITestResultAdaptor test) + { + if (TestRunnerWindow.s_Instance == null) + return; + + var result = new TestRunnerResult(test); + TestRunnerWindow.s_Instance.m_SelectedTestTypes.UpdateResult(result); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/WindowResultUpdater.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/WindowResultUpdater.cs.meta new file mode 100644 index 0000000..d9e35df --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Callbacks/WindowResultUpdater.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6d468ee3657be7a43a2ef2178ec14239 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditModePCHelper.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditModePCHelper.cs new file mode 100644 index 0000000..8776887 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditModePCHelper.cs @@ -0,0 +1,32 @@ +using System.Collections; +using System.Reflection; +using UnityEngine.TestTools; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class EditModePcHelper : TestCommandPcHelper + { + public override void SetEnumeratorPC(IEnumerator enumerator, int pc) + { + GetPCFieldInfo(enumerator).SetValue(enumerator, pc); + } + + public override int GetEnumeratorPC(IEnumerator enumerator) + { + if (enumerator == null) + { + return 0; + } + return (int)GetPCFieldInfo(enumerator).GetValue(enumerator); + } + + private FieldInfo GetPCFieldInfo(IEnumerator enumerator) + { + var field = enumerator.GetType().GetField("$PC", BindingFlags.NonPublic | BindingFlags.Instance); + if (field == null) // Roslyn + field = enumerator.GetType().GetField("<>1__state", BindingFlags.NonPublic | BindingFlags.Instance); + + return field; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditModePCHelper.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditModePCHelper.cs.meta new file mode 100644 index 0000000..ce559af --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditModePCHelper.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6d16f2e78a356d34c9a32108929de932 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditModeRunner.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditModeRunner.cs new file mode 100644 index 0000000..12b4cc7 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditModeRunner.cs @@ -0,0 +1,423 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; +using UnityEngine; +using UnityEngine.TestTools.NUnitExtensions; +using UnityEngine.TestTools.TestRunner; +using UnityEngine.TestTools; +using UnityEngine.TestTools.TestRunner.GUI; +using UnityEditor.Callbacks; +using UnityEngine.TestRunner.NUnitExtensions; +using UnityEngine.TestRunner.NUnitExtensions.Runner; + +namespace UnityEditor.TestTools.TestRunner +{ + internal interface IUnityTestAssemblyRunnerFactory + { + IUnityTestAssemblyRunner Create(TestPlatform testPlatform, WorkItemFactory factory); + } + + internal class UnityTestAssemblyRunnerFactory : IUnityTestAssemblyRunnerFactory + { + public IUnityTestAssemblyRunner Create(TestPlatform testPlatform, WorkItemFactory factory) + { + return new UnityTestAssemblyRunner(new UnityTestAssemblyBuilder(), factory); + } + } + + [Serializable] + internal class EditModeRunner : ScriptableObject, IDisposable + { + [SerializeField] + private TestRunnerFilter m_Filter; + + //The counter from the IEnumerator object + [SerializeField] + private int m_CurrentPC; + + [SerializeField] + private bool m_ExecuteOnEnable; + + [SerializeField] + private List m_AlreadyStartedTests; + + [SerializeField] + private List m_ExecutedTests; + + [SerializeField] + private List m_CallbackObjects = new List(); + + [SerializeField] + private TestStartedEvent m_TestStartedEvent = new TestStartedEvent(); + + [SerializeField] + private TestFinishedEvent m_TestFinishedEvent = new TestFinishedEvent(); + + [SerializeField] + private RunStartedEvent m_RunStartedEvent = new RunStartedEvent(); + + [SerializeField] + private RunFinishedEvent m_RunFinishedEvent = new RunFinishedEvent(); + + [SerializeField] + private TestRunnerStateSerializer m_TestRunnerStateSerializer = new TestRunnerStateSerializer(); + + [SerializeField] + private TestFileCleanupVerifier m_CleanupVerifier = new TestFileCleanupVerifier(); + + [SerializeField] + private bool m_RunningTests; + + [SerializeField] + private TestPlatform m_TestPlatform; + + [SerializeField] + private object m_CurrentYieldObject; + + [SerializeField] + private BeforeAfterTestCommandState m_SetUpTearDownState; + [SerializeField] + private BeforeAfterTestCommandState m_OuterUnityTestActionState; + + internal IUnityTestAssemblyRunner m_Runner; + + private ConstructDelegator m_ConstructDelegator; + + private IEnumerator m_RunStep; + + public IUnityTestAssemblyRunnerFactory UnityTestAssemblyRunnerFactory { get; set; } + + public void Init(TestRunnerFilter filter, TestPlatform platform) + { + m_Filter = filter; + m_TestPlatform = platform; + m_AlreadyStartedTests = new List(); + m_ExecutedTests = new List(); + InitRunner(); + } + + private void InitRunner() + { + //We give the EditMode platform here so we dont suddenly create Playmode work items in the test Runner. + m_Runner = (UnityTestAssemblyRunnerFactory ?? new UnityTestAssemblyRunnerFactory()).Create(TestPlatform.EditMode, new EditmodeWorkItemFactory()); + var testAssemblyProvider = new EditorLoadedTestAssemblyProvider(new EditorCompilationInterfaceProxy(), new EditorAssembliesProxy()); + var loadedTests = m_Runner.Load( + testAssemblyProvider.GetAssembliesGroupedByType(m_TestPlatform).Select(x => x.Assembly).ToArray(), + UnityTestAssemblyBuilder.GetNUnitTestBuilderSettings(m_TestPlatform)); + loadedTests.ParseForNameDuplicates(); + hideFlags |= HideFlags.DontSave; + EnumerableSetUpTearDownCommand.ActivePcHelper = new EditModePcHelper(); + OuterUnityTestActionCommand.ActivePcHelper = new EditModePcHelper(); + } + + public void OnEnable() + { + if (m_ExecuteOnEnable) + { + InitRunner(); + m_ExecuteOnEnable = false; + foreach (var callback in m_CallbackObjects) + { + AddListeners(callback as ITestRunnerListener); + } + m_ConstructDelegator = new ConstructDelegator(m_TestRunnerStateSerializer); + + EnumeratorStepHelper.SetEnumeratorPC(m_CurrentPC); + + UnityWorkItemDataHolder.alreadyExecutedTests = m_ExecutedTests.Select(x => x.fullName).ToList(); + UnityWorkItemDataHolder.alreadyStartedTests = m_AlreadyStartedTests; + Run(); + } + } + + public void TestStartedEvent(ITest test) + { + m_AlreadyStartedTests.Add(test.FullName); + } + + public void TestFinishedEvent(ITestResult testResult) + { + m_AlreadyStartedTests.Remove(testResult.FullName); + m_ExecutedTests.Add(TestResultSerializer.MakeFromTestResult(testResult)); + } + + public void Run() + { + EditModeTestCallbacks.RestoringTestContext += OnRestoringTest; + var context = m_Runner.GetCurrentContext(); + if (m_SetUpTearDownState == null) + { + m_SetUpTearDownState = CreateInstance(); + } + context.SetUpTearDownState = m_SetUpTearDownState; + + if (m_OuterUnityTestActionState == null) + { + m_OuterUnityTestActionState = CreateInstance(); + } + context.OuterUnityTestActionState = m_OuterUnityTestActionState; + + m_CleanupVerifier.RegisterExistingFiles(); + + if (!m_RunningTests) + { + m_RunStartedEvent.Invoke(m_Runner.LoadedTest); + } + + if (m_ConstructDelegator == null) + m_ConstructDelegator = new ConstructDelegator(m_TestRunnerStateSerializer); + + Reflect.ConstructorCallWrapper = m_ConstructDelegator.Delegate; + m_TestStartedEvent.AddListener(TestStartedEvent); + m_TestFinishedEvent.AddListener(TestFinishedEvent); + + AssemblyReloadEvents.beforeAssemblyReload += OnBeforeAssemblyReload; + + RunningTests = true; + + EditorApplication.LockReloadAssemblies(); + + var testListenerWrapper = new TestListenerWrapper(m_TestStartedEvent, m_TestFinishedEvent); + m_RunStep = m_Runner.Run(testListenerWrapper, m_Filter.BuildNUnitFilter()).GetEnumerator(); + m_RunningTests = true; + + EditorApplication.update += TestConsumer; + } + + private void OnBeforeAssemblyReload() + { + EditorApplication.update -= TestConsumer; + + if (m_ExecuteOnEnable) + { + AssemblyReloadEvents.beforeAssemblyReload -= OnBeforeAssemblyReload; + return; + } + + if (m_Runner != null && m_Runner.TopLevelWorkItem != null) + m_Runner.TopLevelWorkItem.ResultedInDomainReload = true; + + if (RunningTests) + { + Debug.LogError("TestRunner: Unexpected assembly reload happened while running tests"); + + EditorUtility.ClearProgressBar(); + + if (m_Runner.GetCurrentContext() != null && m_Runner.GetCurrentContext().CurrentResult != null) + { + m_Runner.GetCurrentContext().CurrentResult.SetResult(ResultState.Cancelled, "Unexpected assembly reload happened"); + } + OnRunCancel(); + } + } + + private bool RunningTests; + + private Stack StepStack = new Stack(); + + private bool MoveNextAndUpdateYieldObject() + { + var result = m_RunStep.MoveNext(); + + if (result) + { + m_CurrentYieldObject = m_RunStep.Current; + while (m_CurrentYieldObject is IEnumerator) // going deeper + { + var currentEnumerator = (IEnumerator)m_CurrentYieldObject; + + // go deeper and add parent to stack + StepStack.Push(m_RunStep); + + m_RunStep = currentEnumerator; + m_CurrentYieldObject = m_RunStep.Current; + } + + if (StepStack.Count > 0 && m_CurrentYieldObject != null) // not null and not IEnumerator, nested + { + Debug.LogError("EditMode test can only yield null, but not <" + m_CurrentYieldObject.GetType().Name + ">"); + } + + return true; + } + + if (StepStack.Count == 0) // done + return false; + + m_RunStep = StepStack.Pop(); // going up + return MoveNextAndUpdateYieldObject(); + } + + private void TestConsumer() + { + var moveNext = MoveNextAndUpdateYieldObject(); + + if (m_CurrentYieldObject != null) + { + InvokeDelegator(); + } + + if (!moveNext && !m_Runner.IsTestComplete) + { + CompleteTestRun(); + throw new IndexOutOfRangeException("There are no more elements to process and IsTestComplete is false"); + } + + if (m_Runner.IsTestComplete) + { + CompleteTestRun(); + } + } + + private void CompleteTestRun() + { + EditorApplication.update -= TestConsumer; + TestLauncherBase.ExecutePostBuildCleanupMethods(this.GetLoadedTests(), this.GetFilter(), Application.platform); + m_CleanupVerifier.VerifyNoNewFilesAdded(); + m_RunFinishedEvent.Invoke(m_Runner.Result); + + if (m_ConstructDelegator != null) + m_ConstructDelegator.DestroyCurrentTestObjectIfExists(); + Dispose(); + UnityWorkItemDataHolder.alreadyExecutedTests = null; + } + + private void OnRestoringTest() + { + var item = m_ExecutedTests.Find(t => t.fullName == UnityTestExecutionContext.CurrentContext.CurrentTest.FullName); + if (item != null) + { + item.RestoreTestResult(UnityTestExecutionContext.CurrentContext.CurrentResult); + } + } + + private static bool IsCancelled() + { + return UnityTestExecutionContext.CurrentContext.ExecutionStatus == TestExecutionStatus.AbortRequested || UnityTestExecutionContext.CurrentContext.ExecutionStatus == TestExecutionStatus.StopRequested; + } + + private void InvokeDelegator() + { + if (m_CurrentYieldObject == null) + { + return; + } + + if (IsCancelled()) + { + return; + } + + if (m_CurrentYieldObject is RestoreTestContextAfterDomainReload) + { + if (m_TestRunnerStateSerializer.ShouldRestore()) + { + m_TestRunnerStateSerializer.RestoreContext(); + } + + return; + } + + try + { + if (m_CurrentYieldObject is IEditModeTestYieldInstruction) + { + var editModeTestYieldInstruction = (IEditModeTestYieldInstruction)m_CurrentYieldObject; + if (editModeTestYieldInstruction.ExpectDomainReload) + { + PrepareForDomainReload(); + } + return; + } + } + catch (Exception e) + { + UnityTestExecutionContext.CurrentContext.CurrentResult.RecordException(e); + return; + } + + Debug.LogError("EditMode test can only yield null"); + } + + private void CompilationFailureWatch() + { + if (EditorApplication.isCompiling) + return; + + EditorApplication.update -= CompilationFailureWatch; + + if (EditorUtility.scriptCompilationFailed) + { + EditorUtility.ClearProgressBar(); + OnRunCancel(); + } + } + + private void PrepareForDomainReload() + { + m_TestRunnerStateSerializer.SaveContext(); + m_CurrentPC = EnumeratorStepHelper.GetEnumeratorPC(TestEnumerator.Enumerator); + m_ExecuteOnEnable = true; + + RunningTests = false; + } + + public T AddEventHandler() where T : ScriptableObject, ITestRunnerListener + { + var eventHandler = CreateInstance(); + eventHandler.hideFlags |= HideFlags.DontSave; + m_CallbackObjects.Add(eventHandler); + + AddListeners(eventHandler); + + return eventHandler; + } + + private void AddListeners(ITestRunnerListener eventHandler) + { + m_TestStartedEvent.AddListener(eventHandler.TestStarted); + m_TestFinishedEvent.AddListener(eventHandler.TestFinished); + m_RunStartedEvent.AddListener(eventHandler.RunStarted); + m_RunFinishedEvent.AddListener(eventHandler.RunFinished); + } + + public void Dispose() + { + Reflect.MethodCallWrapper = null; + EditorApplication.update -= TestConsumer; + + DestroyImmediate(this); + + if (m_CallbackObjects != null) + { + foreach (var obj in m_CallbackObjects) + { + DestroyImmediate(obj); + } + m_CallbackObjects.Clear(); + } + RunningTests = false; + EditorApplication.UnlockReloadAssemblies(); + } + + public void OnRunCancel() + { + UnityWorkItemDataHolder.alreadyExecutedTests = null; + m_ExecuteOnEnable = false; + m_Runner.StopRun(); + } + + public ITest GetLoadedTests() + { + return m_Runner.LoadedTest; + } + + public ITestFilter GetFilter() + { + return m_Filter.BuildNUnitFilter(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditModeRunner.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditModeRunner.cs.meta new file mode 100644 index 0000000..78c0039 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditModeRunner.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c9219e99d466b7741a057132d1994f35 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditmodeWorkItemFactory.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditmodeWorkItemFactory.cs new file mode 100644 index 0000000..c2bf921 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditmodeWorkItemFactory.cs @@ -0,0 +1,14 @@ +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; +using UnityEngine.TestRunner.NUnitExtensions.Runner; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class EditmodeWorkItemFactory : WorkItemFactory + { + protected override UnityWorkItem Create(TestMethod method, ITestFilter filter, ITest loadedTest) + { + return new EditorEnumeratorTestWorkItem(method, filter); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditmodeWorkItemFactory.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditmodeWorkItemFactory.cs.meta new file mode 100644 index 0000000..ab4bd45 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditmodeWorkItemFactory.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3dde15f260b0dd1469e60d16eaa795dc +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditorEnumeratorTestWorkItem.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditorEnumeratorTestWorkItem.cs new file mode 100644 index 0000000..90353a2 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditorEnumeratorTestWorkItem.cs @@ -0,0 +1,181 @@ +using System; +using System.Collections; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; +using NUnit.Framework.Internal.Commands; +using NUnit.Framework.Internal.Execution; +using UnityEngine; +using UnityEngine.TestRunner.NUnitExtensions.Runner; +using UnityEngine.TestTools; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class EditorEnumeratorTestWorkItem : UnityWorkItem + { + private TestCommand m_Command; + + public EditorEnumeratorTestWorkItem(TestMethod test, ITestFilter filter) + : base(test, null) + { + m_Command = test.RunState == RunState.Runnable || test.RunState == RunState.Explicit && filter.IsExplicitMatch(test) + ? CommandBuilder.MakeTestCommand(test) + : CommandBuilder.MakeSkipCommand(test); + } + + private static IEnumerableTestMethodCommand FindFirstIEnumerableTestMethodCommand(TestCommand command) + { + if (command == null) + { + return null; + } + + if (command is IEnumerableTestMethodCommand) + { + return (IEnumerableTestMethodCommand)command; + } + + if (command is DelegatingTestCommand) + { + var delegatingTestCommand = (DelegatingTestCommand)command; + return FindFirstIEnumerableTestMethodCommand(delegatingTestCommand.GetInnerCommand()); + } + return null; + } + + protected override IEnumerable PerformWork() + { + if (IsCancelledRun()) + { + yield break; + } + + if (m_DontRunRestoringResult) + { + if (EditModeTestCallbacks.RestoringTestContext == null) + { + throw new NullReferenceException("RestoringTestContext is not set"); + } + EditModeTestCallbacks.RestoringTestContext(); + Result = Context.CurrentResult; + yield break; + } + + try + { + if (IsCancelledRun()) + { + yield break; + } + + if (m_Command is SkipCommand) + { + m_Command.Execute(Context); + Result = Context.CurrentResult; + yield break; + } + + //Check if we can execute this test + var firstEnumerableCommand = FindFirstIEnumerableTestMethodCommand(m_Command); + if (firstEnumerableCommand == null) + { + Context.CurrentResult.SetResult(ResultState.Error, "Returning IEnumerator but not using test attribute supporting this"); + yield break; + } + + if (m_Command.Test.Method.ReturnType.IsType(typeof(IEnumerator))) + { + if (m_Command is ApplyChangesToContextCommand) + { + var applyChangesToContextCommand = ((ApplyChangesToContextCommand)m_Command); + applyChangesToContextCommand.ApplyChanges(Context); + m_Command = applyChangesToContextCommand.GetInnerCommand(); + } + + var innerCommand = (IEnumerableTestMethodCommand)m_Command; + if (innerCommand == null) + { + Debug.Log("failed getting innerCommand"); + throw new Exception("Tests returning IEnumerator can only use test attributes handling those"); + } + + foreach (var workItemStep in innerCommand.ExecuteEnumerable(Context)) + { + if (IsCancelledRun()) + { + yield break; + } + + if (workItemStep is TestEnumerator) + { + if (EnumeratorStepHelper.UpdateEnumeratorPcIfNeeded(TestEnumerator.Enumerator)) + { + yield return new RestoreTestContextAfterDomainReload(); + } + continue; + } + + if (workItemStep is AsyncOperation) + { + var asyncOperation = (AsyncOperation)workItemStep; + while (!asyncOperation.isDone) + { + if (IsCancelledRun()) + { + yield break; + } + + yield return null; + } + continue; + } + + ResultedInDomainReload = false; + + if (workItemStep is IEditModeTestYieldInstruction) + { + var editModeTestYieldInstruction = (IEditModeTestYieldInstruction)workItemStep; + yield return editModeTestYieldInstruction; + var enumerator = editModeTestYieldInstruction.Perform(); + while (true) + { + bool moveNext; + try + { + moveNext = enumerator.MoveNext(); + } + catch (Exception e) + { + Context.CurrentResult.RecordException(e); + break; + } + + if (!moveNext) + { + break; + } + yield return null; + } + } + else + { + yield return workItemStep; + } + } + + Result = Context.CurrentResult; + EditorApplication.isPlaying = false; + yield return null; + } + } + finally + { + WorkItemComplete(); + } + } + + private bool IsCancelledRun() + { + return Context.ExecutionStatus == TestExecutionStatus.AbortRequested || Context.ExecutionStatus == TestExecutionStatus.StopRequested; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditorEnumeratorTestWorkItem.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditorEnumeratorTestWorkItem.cs.meta new file mode 100644 index 0000000..982f7ee --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EditorEnumeratorTestWorkItem.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1ebc1994f9a3d5649a1201d3a84b38df +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EnumeratorStepHelper.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EnumeratorStepHelper.cs new file mode 100644 index 0000000..98eeda8 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EnumeratorStepHelper.cs @@ -0,0 +1,51 @@ +using System.Collections; +using System.Reflection; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class EnumeratorStepHelper + { + private static int m_PC; + + public static void SetEnumeratorPC(int pc) + { + m_PC = pc; + } + + /// + /// Gets the current enumerator PC + /// + /// + /// The PC + /// 0 if no current Enumeration + /// + public static int GetEnumeratorPC(IEnumerator enumerator) + { + if (enumerator == null) + { + return 0; + } + return (int)GetPCFieldInfo(enumerator).GetValue(enumerator); + } + + public static bool UpdateEnumeratorPcIfNeeded(IEnumerator enumerator) + { + if (m_PC > 0) + { + GetPCFieldInfo(enumerator).SetValue(enumerator, m_PC); + m_PC = 0; + return true; + } + return false; + } + + private static FieldInfo GetPCFieldInfo(IEnumerator enumerator) + { + var field = enumerator.GetType().GetField("$PC", BindingFlags.NonPublic | BindingFlags.Instance); + if (field == null) // Roslyn + field = enumerator.GetType().GetField("<>1__state", BindingFlags.NonPublic | BindingFlags.Instance); + + return field; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EnumeratorStepHelper.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EnumeratorStepHelper.cs.meta new file mode 100644 index 0000000..08662b9 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/EnumeratorStepHelper.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 901b761c5c1e22d4e8a3ba7d95bc1f5d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages.meta new file mode 100644 index 0000000..0660c63 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d9682e749d3efc642af54d789d9090a6 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/EnterPlayMode.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/EnterPlayMode.cs new file mode 100644 index 0000000..796c531 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/EnterPlayMode.cs @@ -0,0 +1,39 @@ +using System; +using System.Collections; +using UnityEditor; + +namespace UnityEngine.TestTools +{ + public class EnterPlayMode : IEditModeTestYieldInstruction + { + public bool ExpectDomainReload { get; } + public bool ExpectedPlaymodeState { get; private set; } + + public EnterPlayMode(bool expectDomainReload = true) + { + ExpectDomainReload = expectDomainReload; + } + + public IEnumerator Perform() + { + if (EditorApplication.isPlaying) + { + throw new Exception("Editor is already in PlayMode"); + } + if (EditorUtility.scriptCompilationFailed) + { + throw new Exception("Script compilation failed"); + } + yield return null; + ExpectedPlaymodeState = true; + + EditorApplication.UnlockReloadAssemblies(); + EditorApplication.isPlaying = true; + + while (!EditorApplication.isPlaying) + { + yield return null; + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/EnterPlayMode.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/EnterPlayMode.cs.meta new file mode 100644 index 0000000..fa1dc2e --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/EnterPlayMode.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9bd5a110ed89025499ddee8c7e73778e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/ExitPlayMode.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/ExitPlayMode.cs new file mode 100644 index 0000000..2eed28b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/ExitPlayMode.cs @@ -0,0 +1,32 @@ +using System; +using System.Collections; +using UnityEditor; + +namespace UnityEngine.TestTools +{ + public class ExitPlayMode : IEditModeTestYieldInstruction + { + public bool ExpectDomainReload { get; } + public bool ExpectedPlaymodeState { get; private set; } + + public ExitPlayMode() + { + ExpectDomainReload = false; + ExpectedPlaymodeState = false; + } + + public IEnumerator Perform() + { + if (!EditorApplication.isPlayingOrWillChangePlaymode) + { + throw new Exception("Editor is already in EditMode"); + } + + EditorApplication.isPlaying = false; + while (EditorApplication.isPlaying) + { + yield return null; + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/ExitPlayMode.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/ExitPlayMode.cs.meta new file mode 100644 index 0000000..1de769d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/ExitPlayMode.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 408674d91d506a54aac9a7f07951c018 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/RecompileScripts.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/RecompileScripts.cs new file mode 100644 index 0000000..cd15bf3 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/RecompileScripts.cs @@ -0,0 +1,63 @@ +using System; +using System.Collections; +using UnityEditor; + +namespace UnityEngine.TestTools +{ + internal class RecompileScripts : IEditModeTestYieldInstruction + { + public RecompileScripts() : this(true) + { + } + + public RecompileScripts(bool expectScriptCompilation) : this(expectScriptCompilation, true) + { + } + + public RecompileScripts(bool expectScriptCompilation, bool expectScriptCompilationSuccess) + { + ExpectScriptCompilation = expectScriptCompilation; + ExpectScriptCompilationSuccess = expectScriptCompilationSuccess; + ExpectDomainReload = true; + } + + public bool ExpectDomainReload { get; private set; } + public bool ExpectedPlaymodeState { get; } + public bool ExpectScriptCompilation { get; private set; } + public bool ExpectScriptCompilationSuccess { get; private set; } + public static RecompileScripts Current { get; private set; } + + public IEnumerator Perform() + { + Current = this; + + // We need to yield, to give the test runner a chance to prepare for the domain reload + // If the script compilation happens very fast, then EditModeRunner.MoveNextAndUpdateYieldObject will not have a chance to set m_CurrentYieldObject + // This really should be fixed in EditModeRunner.MoveNextAndUpdateYieldObject + yield return null; + + AssetDatabase.Refresh(); + + if (ExpectScriptCompilation && !EditorApplication.isCompiling) + { + Current = null; + throw new Exception("Editor does not need to recompile scripts"); + } + + EditorApplication.UnlockReloadAssemblies(); + + while (EditorApplication.isCompiling) + { + yield return null; + } + + Current = null; + + if (ExpectScriptCompilationSuccess && EditorUtility.scriptCompilationFailed) + { + EditorApplication.LockReloadAssemblies(); + throw new Exception("Script compilation failed"); + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/RecompileScripts.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/RecompileScripts.cs.meta new file mode 100644 index 0000000..f764d6e --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/RecompileScripts.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9202fbba95ea8294cb5e718f028f21b0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/WaitForDomainReload.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/WaitForDomainReload.cs new file mode 100644 index 0000000..be5534b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/WaitForDomainReload.cs @@ -0,0 +1,44 @@ +using System; +using System.Collections; +using UnityEditor; + +namespace UnityEngine.TestTools +{ + internal class WaitForDomainReload : IEditModeTestYieldInstruction + { + public WaitForDomainReload() + { + ExpectDomainReload = true; + } + + public bool ExpectDomainReload { get;  } + public bool ExpectedPlaymodeState { get; } + + public IEnumerator Perform() + { + EditorApplication.UnlockReloadAssemblies(); + + // Detect if AssetDatabase.Refresh was called (true) or if it will be called on next tick + bool isAsync = EditorApplication.isCompiling; + + yield return null; + + if (!isAsync) + { + EditorApplication.LockReloadAssemblies(); + throw new Exception("Expected domain reload, but it did not occur"); + } + + while (EditorApplication.isCompiling) + { + yield return null; + } + + if (EditorUtility.scriptCompilationFailed) + { + EditorApplication.LockReloadAssemblies(); + throw new Exception("Script compilation failed"); + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/WaitForDomainReload.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/WaitForDomainReload.cs.meta new file mode 100644 index 0000000..7fa45cb --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Messages/WaitForDomainReload.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5df3c21c5237c994db89660fbdfee07d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/TestFileCleanupVerifier.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/TestFileCleanupVerifier.cs new file mode 100644 index 0000000..45417cd --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/TestFileCleanupVerifier.cs @@ -0,0 +1,98 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner +{ + [Serializable] + internal class TestFileCleanupVerifier + { + const string k_Indent = " "; + + [SerializeField] + List m_ExistingFiles; + + [SerializeField] + bool m_ExistingFilesScanned; + + public Action logAction = Debug.LogWarning; + + private Func getAllAssetPathsAction; + public Func GetAllAssetPathsAction + { + get + { + if (getAllAssetPathsAction != null) + { + return getAllAssetPathsAction; + } + return AssetDatabase.GetAllAssetPaths; + } + set + { + getAllAssetPathsAction = value; + } + } + + public void RegisterExistingFiles() + { + if (m_ExistingFilesScanned) + { + return; + } + + m_ExistingFiles = GetAllFilesInAssetsDirectory().ToList(); + m_ExistingFilesScanned = true; + } + + public void VerifyNoNewFilesAdded() + { + var currentFiles = GetAllFilesInAssetsDirectory().ToList(); + + //Expect that if its the same amount of files, there havent been any changes + //This is to optimize if there are many files + if (currentFiles.Count != m_ExistingFiles.Count) + { + LogWarningForFilesIfAny(currentFiles.Except(m_ExistingFiles)); + } + } + + void LogWarningForFilesIfAny(IEnumerable filePaths) + { + if (!filePaths.Any()) + { + return; + } + + var stringWriter = new StringWriter(); + stringWriter.WriteLine("Files generated by test without cleanup."); + stringWriter.WriteLine(k_Indent + "Found {0} new files.", filePaths.Count()); + + foreach (var filePath in filePaths) + { + stringWriter.WriteLine(k_Indent + filePath); + } + + LogAction(stringWriter.ToString()); + } + + private void LogAction(object obj) + { + if (this.logAction != null) + { + this.logAction(obj); + } + else + { + Debug.LogWarning(obj); + } + } + + private IEnumerable GetAllFilesInAssetsDirectory() + { + return GetAllAssetPathsAction(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/TestFileCleanupVerifier.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/TestFileCleanupVerifier.cs.meta new file mode 100644 index 0000000..6a4fc47 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/TestFileCleanupVerifier.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d6e23541e3b2fea489be46f704b64707 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils.meta new file mode 100644 index 0000000..78ceec0 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1f5bbb88ca730434483440cbc0278ef6 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/CachingTestListProvider.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/CachingTestListProvider.cs new file mode 100644 index 0000000..ff540e6 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/CachingTestListProvider.cs @@ -0,0 +1,48 @@ +using System; +using System.Collections.Generic; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine.TestRunner.NUnitExtensions; +using UnityEngine.TestTools; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class CachingTestListProvider + { + private readonly ITestListProvider m_InnerTestListProvider; + private readonly ITestListCache m_TestListCache; + private readonly ITestAdaptorFactory m_TestAdaptorFactory; + public CachingTestListProvider(ITestListProvider innerTestListProvider, ITestListCache testListCache, ITestAdaptorFactory testAdaptorFactory) + { + m_InnerTestListProvider = innerTestListProvider; + m_TestListCache = testListCache; + m_TestAdaptorFactory = testAdaptorFactory; + } + + public IEnumerator GetTestListAsync(TestPlatform platform) + { + var testFromCache = m_TestListCache.GetTestFromCacheAsync(platform); + while (testFromCache.MoveNext()) + { + yield return null; + } + + + if (testFromCache.Current != null) + { + yield return testFromCache.Current; + } + else + { + var test = m_InnerTestListProvider.GetTestListAsync(platform); + while (test.MoveNext()) + { + yield return null; + } + + test.Current.ParseForNameDuplicates(); + m_TestListCache.CacheTest(platform, test.Current); + yield return m_TestAdaptorFactory.Create(test.Current); + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/CachingTestListProvider.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/CachingTestListProvider.cs.meta new file mode 100644 index 0000000..5756623 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/CachingTestListProvider.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 26f3e7301af463c4ca72fa98d59b429e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorAssembliesProxy.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorAssembliesProxy.cs new file mode 100644 index 0000000..5682619 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorAssembliesProxy.cs @@ -0,0 +1,13 @@ +using System.Linq; +using UnityEngine.TestTools.Utils; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class EditorAssembliesProxy : IEditorAssembliesProxy + { + public IAssemblyWrapper[] loadedAssemblies + { + get { return EditorAssemblies.loadedAssemblies.Select(x => new EditorAssemblyWrapper(x)).ToArray(); } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorAssembliesProxy.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorAssembliesProxy.cs.meta new file mode 100644 index 0000000..fdb1b6c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorAssembliesProxy.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f96d0ea807c081145a1170ed1b6d71e0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorAssemblyWrapper.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorAssemblyWrapper.cs new file mode 100644 index 0000000..804eb4b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorAssemblyWrapper.cs @@ -0,0 +1,18 @@ +using System.Reflection; +using UnityEngine.TestTools.Utils; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class EditorAssemblyWrapper : AssemblyWrapper + { + public EditorAssemblyWrapper(Assembly assembly) + : base(assembly) {} + + public override AssemblyName[] GetReferencedAssemblies() + { + return Assembly.GetReferencedAssemblies(); + } + + public override string Location { get { return Assembly.Location; } } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorAssemblyWrapper.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorAssemblyWrapper.cs.meta new file mode 100644 index 0000000..70bd58b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorAssemblyWrapper.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 20cdb37e6fea6d946bbb84d2c923db85 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorCompilationInterfaceProxy.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorCompilationInterfaceProxy.cs new file mode 100644 index 0000000..ad0b5ad --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorCompilationInterfaceProxy.cs @@ -0,0 +1,17 @@ +using UnityEditor.Scripting.ScriptCompilation; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class EditorCompilationInterfaceProxy : IEditorCompilationInterfaceProxy + { + public ScriptAssembly[] GetAllEditorScriptAssemblies() + { + return EditorCompilationInterface.Instance.GetAllEditorScriptAssemblies(EditorCompilationInterface.GetAdditionalEditorScriptCompilationOptions()); + } + + public PrecompiledAssembly[] GetAllPrecompiledAssemblies() + { + return EditorCompilationInterface.Instance.GetAllPrecompiledAssemblies(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorCompilationInterfaceProxy.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorCompilationInterfaceProxy.cs.meta new file mode 100644 index 0000000..ef5ade0 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorCompilationInterfaceProxy.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c9b23632c77de204abfe8bf7168d48c0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorLoadedTestAssemblyProvider.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorLoadedTestAssemblyProvider.cs new file mode 100644 index 0000000..6d8cc0e --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorLoadedTestAssemblyProvider.cs @@ -0,0 +1,69 @@ +using System.Collections.Generic; +using System.IO; +using System.Linq; +using UnityEditor.Scripting.ScriptCompilation; +using UnityEngine.TestTools; +using UnityEngine.TestTools.Utils; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class EditorLoadedTestAssemblyProvider + { + private const string k_NunitAssemblyName = "nunit.framework"; + private const string k_TestRunnerAssemblyName = "UnityEngine.TestRunner"; + internal const string k_PerformanceTestingAssemblyName = "Unity.PerformanceTesting"; + + private readonly IEditorAssembliesProxy m_EditorAssembliesProxy; + private readonly ScriptAssembly[] m_AllEditorScriptAssemblies; + private readonly PrecompiledAssembly[] m_AllPrecompiledAssemblies; + + public EditorLoadedTestAssemblyProvider(IEditorCompilationInterfaceProxy compilationInterfaceProxy, IEditorAssembliesProxy editorAssembliesProxy) + { + m_EditorAssembliesProxy = editorAssembliesProxy; + m_AllEditorScriptAssemblies = compilationInterfaceProxy.GetAllEditorScriptAssemblies(); + m_AllPrecompiledAssemblies = compilationInterfaceProxy.GetAllPrecompiledAssemblies(); + } + + public List GetAssembliesGroupedByType(TestPlatform mode) + { + var assemblies = GetAssembliesGroupedByTypeAsync(mode); + while (assemblies.MoveNext()) + { + } + + return assemblies.Current; + } + + public IEnumerator> GetAssembliesGroupedByTypeAsync(TestPlatform mode) + { + IAssemblyWrapper[] loadedAssemblies = m_EditorAssembliesProxy.loadedAssemblies; + + IDictionary> result = new Dictionary>() + { + {TestPlatform.EditMode, new List() }, + {TestPlatform.PlayMode, new List() } + }; + + foreach (var loadedAssembly in loadedAssemblies) + { + if (loadedAssembly.GetReferencedAssemblies().Any(x => x.Name == k_NunitAssemblyName || x.Name == k_TestRunnerAssemblyName || x.Name == k_PerformanceTestingAssemblyName)) + { + var assemblyName = new FileInfo(loadedAssembly.Location).Name; + var scriptAssemblies = m_AllEditorScriptAssemblies.Where(x => x.Filename == assemblyName).ToList(); + var precompiledAssemblies = m_AllPrecompiledAssemblies.Where(x => new FileInfo(x.Path).Name == assemblyName).ToList(); + if (scriptAssemblies.Count < 1 && precompiledAssemblies.Count < 1) + { + continue; + } + + var assemblyFlags = scriptAssemblies.Any() ? scriptAssemblies.Single().Flags : precompiledAssemblies.Single().Flags; + var assemblyType = (assemblyFlags & AssemblyFlags.EditorOnly) == AssemblyFlags.EditorOnly ? TestPlatform.EditMode : TestPlatform.PlayMode; + result[assemblyType].Add(loadedAssembly); + yield return null; + } + } + + yield return result[mode]; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorLoadedTestAssemblyProvider.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorLoadedTestAssemblyProvider.cs.meta new file mode 100644 index 0000000..efba6a7 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/EditorLoadedTestAssemblyProvider.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 033c884ba52437d49bc55935939ef1c6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/IEditorAssembliesProxy.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/IEditorAssembliesProxy.cs new file mode 100644 index 0000000..35ec87d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/IEditorAssembliesProxy.cs @@ -0,0 +1,9 @@ +using UnityEngine.TestTools.Utils; + +namespace UnityEditor.TestTools.TestRunner +{ + internal interface IEditorAssembliesProxy + { + IAssemblyWrapper[] loadedAssemblies { get; } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/IEditorAssembliesProxy.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/IEditorAssembliesProxy.cs.meta new file mode 100644 index 0000000..ad00f55 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/IEditorAssembliesProxy.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 98808b11e78f6c84a841a6b4bc5a29d2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/IEditorCompilationInterfaceProxy.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/IEditorCompilationInterfaceProxy.cs new file mode 100644 index 0000000..25defb7 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/IEditorCompilationInterfaceProxy.cs @@ -0,0 +1,10 @@ +using UnityEditor.Scripting.ScriptCompilation; + +namespace UnityEditor.TestTools.TestRunner +{ + internal interface IEditorCompilationInterfaceProxy + { + ScriptAssembly[] GetAllEditorScriptAssemblies(); + PrecompiledAssembly[] GetAllPrecompiledAssemblies(); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/IEditorCompilationInterfaceProxy.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/IEditorCompilationInterfaceProxy.cs.meta new file mode 100644 index 0000000..2bc608b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/IEditorCompilationInterfaceProxy.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 28c8fcb831e6e734a9f564bc4f495eba +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListCache.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListCache.cs new file mode 100644 index 0000000..5df7a78 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListCache.cs @@ -0,0 +1,13 @@ +using System.Collections.Generic; +using NUnit.Framework.Interfaces; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine.TestTools; + +namespace UnityEditor.TestTools.TestRunner +{ + interface ITestListCache + { + void CacheTest(TestPlatform platform, ITest test); + IEnumerator GetTestFromCacheAsync(TestPlatform platform); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListCache.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListCache.cs.meta new file mode 100644 index 0000000..41943d4 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListCache.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a704c010bcdb1ec4a9f3417b3c393164 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListCacheData.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListCacheData.cs new file mode 100644 index 0000000..c93762d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListCacheData.cs @@ -0,0 +1,12 @@ +using System.Collections.Generic; +using UnityEngine.TestRunner.TestLaunchers; +using UnityEngine.TestTools; + +namespace UnityEditor.TestTools.TestRunner +{ + interface ITestListCacheData + { + List platforms { get; } + List cachedData { get; } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListCacheData.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListCacheData.cs.meta new file mode 100644 index 0000000..b229c0c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListCacheData.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7043e9a330ac2d84a80a965ada4589ad +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListProvider.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListProvider.cs new file mode 100644 index 0000000..b734f53 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListProvider.cs @@ -0,0 +1,11 @@ +using System.Collections.Generic; +using NUnit.Framework.Interfaces; +using UnityEngine.TestTools; + +namespace UnityEditor.TestTools.TestRunner +{ + interface ITestListProvider + { + IEnumerator GetTestListAsync(TestPlatform platform); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListProvider.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListProvider.cs.meta new file mode 100644 index 0000000..b62929b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/ITestListProvider.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 64689f8b25eadac4da519e96f514b653 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListCache.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListCache.cs new file mode 100644 index 0000000..6f48c9c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListCache.cs @@ -0,0 +1,64 @@ +using System.Collections.Generic; +using NUnit.Framework.Interfaces; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine.TestRunner.TestLaunchers; +using UnityEngine.TestTools; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class TestListCache : ITestListCache + { + private readonly ITestAdaptorFactory m_TestAdaptorFactory; + private readonly IRemoteTestResultDataFactory m_TestResultDataFactory; + private readonly ITestListCacheData m_TestListCacheData; + + public TestListCache(ITestAdaptorFactory testAdaptorFactory, IRemoteTestResultDataFactory testResultDataFactory, ITestListCacheData testListCacheData) + { + m_TestAdaptorFactory = testAdaptorFactory; + m_TestResultDataFactory = testResultDataFactory; + m_TestListCacheData = testListCacheData; + } + + public void CacheTest(TestPlatform platform, ITest test) + { + var data = m_TestResultDataFactory.CreateFromTest(test); + + var index = m_TestListCacheData.platforms.IndexOf(platform); + if (index < 0) + { + m_TestListCacheData.cachedData.Add(data); + m_TestListCacheData.platforms.Add(platform); + } + else + { + m_TestListCacheData.cachedData[index] = data; + } + } + + public IEnumerator GetTestFromCacheAsync(TestPlatform platform) + { + var index = m_TestListCacheData.platforms.IndexOf(platform); + if (index < 0) + { + yield return null; + yield break; + } + + var testData = m_TestListCacheData.cachedData[index]; + var test = m_TestAdaptorFactory.BuildTreeAsync(testData); + while (test.MoveNext()) + { + yield return null; + } + + yield return test.Current; + } + + [Callbacks.DidReloadScripts] + private static void ScriptReloaded() + { + TestListCacheData.instance.cachedData.Clear(); + TestListCacheData.instance.platforms.Clear(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListCache.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListCache.cs.meta new file mode 100644 index 0000000..ea8d096 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListCache.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d685d97a1eb004f49afea0cc982ff728 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListCacheData.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListCacheData.cs new file mode 100644 index 0000000..58acbc0 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListCacheData.cs @@ -0,0 +1,26 @@ +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.TestRunner.TestLaunchers; +using UnityEngine.TestTools; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class TestListCacheData : ScriptableSingleton, ITestListCacheData + { + [SerializeField] + private List m_Platforms = new List(); + + [SerializeField] + private List m_CachedData = new List(); + + public List platforms + { + get { return m_Platforms; } + } + + public List cachedData + { + get { return m_CachedData; } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListCacheData.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListCacheData.cs.meta new file mode 100644 index 0000000..2ad79ac --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListCacheData.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f1b6399349763114d9361bc6dfcd025b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListJob.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListJob.cs new file mode 100644 index 0000000..0df60c3 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListJob.cs @@ -0,0 +1,36 @@ +using System; +using System.Collections.Generic; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine.TestTools; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class TestListJob + { + private CachingTestListProvider m_TestListProvider; + private TestPlatform m_Platform; + private Action m_Callback; + private IEnumerator m_ResultEnumerator; + public TestListJob(CachingTestListProvider testListProvider, TestPlatform platform, Action callback) + { + m_TestListProvider = testListProvider; + m_Platform = platform; + m_Callback = callback; + } + + public void Start() + { + m_ResultEnumerator = m_TestListProvider.GetTestListAsync(m_Platform); + EditorApplication.update += EditorUpdate; + } + + private void EditorUpdate() + { + if (!m_ResultEnumerator.MoveNext()) + { + m_Callback(m_ResultEnumerator.Current); + EditorApplication.update -= EditorUpdate; + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListJob.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListJob.cs.meta new file mode 100644 index 0000000..a17c091 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListJob.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: dec9066d4afefe444be0dad3f137730d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListProvider.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListProvider.cs new file mode 100644 index 0000000..f7d9a82 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListProvider.cs @@ -0,0 +1,39 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using NUnit.Framework.Interfaces; +using UnityEngine.TestTools; +using UnityEngine.TestTools.NUnitExtensions; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class TestListProvider : ITestListProvider + { + private readonly EditorLoadedTestAssemblyProvider m_AssemblyProvider; + private readonly UnityTestAssemblyBuilder m_AssemblyBuilder; + + public TestListProvider(EditorLoadedTestAssemblyProvider assemblyProvider, UnityTestAssemblyBuilder assemblyBuilder) + { + m_AssemblyProvider = assemblyProvider; + m_AssemblyBuilder = assemblyBuilder; + } + + public IEnumerator GetTestListAsync(TestPlatform platform) + { + var assemblies = m_AssemblyProvider.GetAssembliesGroupedByTypeAsync(platform); + while (assemblies.MoveNext()) + { + yield return null; + } + + var settings = UnityTestAssemblyBuilder.GetNUnitTestBuilderSettings(platform); + var test = m_AssemblyBuilder.BuildAsync(assemblies.Current.Select(x => x.Assembly).ToArray(), settings); + while (test.MoveNext()) + { + yield return null; + } + + yield return test.Current; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListProvider.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListProvider.cs.meta new file mode 100644 index 0000000..c0e66d5 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunner/Utils/TestListProvider.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f15cbb987069826429540d0ea0937442 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunnerWindow.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunnerWindow.cs new file mode 100644 index 0000000..a591508 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunnerWindow.cs @@ -0,0 +1,274 @@ +using System; +using UnityEditor.Callbacks; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEditor.TestTools.TestRunner.GUI; +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner +{ + [Serializable] + internal class TestRunnerWindow : EditorWindow, IHasCustomMenu + { + internal static class Styles + { + public static GUIStyle info; + public static GUIStyle testList; + + static Styles() + { + info = new GUIStyle(EditorStyles.wordWrappedLabel); + info.wordWrap = false; + info.stretchHeight = true; + info.margin.right = 15; + + testList = new GUIStyle("CN Box"); + testList.margin.top = 0; + testList.padding.left = 3; + } + } + + private readonly GUIContent m_GUIHorizontalSplit = EditorGUIUtility.TrTextContent("Horizontal layout"); + private readonly GUIContent m_GUIVerticalSplit = EditorGUIUtility.TrTextContent("Vertical layout"); + private readonly GUIContent m_GUIEnableaPlaymodeTestsRunner = EditorGUIUtility.TrTextContent("Enable playmode tests for all assemblies"); + private readonly GUIContent m_GUIDisablePlaymodeTestsRunner = EditorGUIUtility.TrTextContent("Disable playmode tests for all assemblies"); + private readonly GUIContent m_GUIRunPlayModeTestAsEditModeTests = EditorGUIUtility.TrTextContent("Run playmode tests as editmode tests"); + + internal static TestRunnerWindow s_Instance; + private bool m_IsBuilding; + [NonSerialized] + private bool m_Enabled; + public TestFilterSettings filterSettings; + + private readonly SplitterState m_Spl = new SplitterState(new float[] { 75, 25 }, new[] { 32, 32 }, null); + + private TestRunnerWindowSettings m_Settings; + + private enum TestRunnerMenuLabels + { + PlayMode = 0, + EditMode = 1 + } + [SerializeField] + private int m_TestTypeToolbarIndex = (int)TestRunnerMenuLabels.EditMode; + [SerializeField] + private PlayModeTestListGUI m_PlayModeTestListGUI; + [SerializeField] + private EditModeTestListGUI m_EditModeTestListGUI; + + internal TestListGUI m_SelectedTestTypes; + + private ITestRunnerApi m_testRunnerApi; + + private WindowResultUpdater m_WindowResultUpdater; + + [MenuItem("Window/General/Test Runner", false, 201, false)] + public static void ShowPlaymodeTestsRunnerWindowCodeBased() + { + if (s_Instance != null) + { + try + { + s_Instance.Close(); + } + catch (Exception exception) + { + Debug.LogException(exception); + } + } + + s_Instance = GetWindow("Test Runner"); + s_Instance.Show(); + } + + static TestRunnerWindow() + { + InitBackgroundRunners(); + } + + private static void InitBackgroundRunners() + { + EditorApplication.playModeStateChanged -= OnPlayModeStateChanged; + EditorApplication.playModeStateChanged += OnPlayModeStateChanged; + } + + [DidReloadScripts] + private static void CompilationCallback() + { + UpdateWindow(); + } + + private static void OnPlayModeStateChanged(PlayModeStateChange state) + { + if (s_Instance && state == PlayModeStateChange.EnteredEditMode && s_Instance.m_SelectedTestTypes.HasTreeData()) + { + //repaint message details after exit playmode + s_Instance.m_SelectedTestTypes.TestSelectionCallback(s_Instance.m_SelectedTestTypes.m_TestListState.selectedIDs.ToArray()); + s_Instance.Repaint(); + } + } + + public void OnDestroy() + { + EditorApplication.playModeStateChanged -= OnPlayModeStateChanged; + if (m_testRunnerApi != null) + { + m_testRunnerApi.UnregisterCallbacks(m_WindowResultUpdater); + } + } + + private void OnEnable() + { + s_Instance = this; + SelectTestListGUI(m_TestTypeToolbarIndex); + + m_testRunnerApi = ScriptableObject.CreateInstance(); + m_WindowResultUpdater = new WindowResultUpdater(); + m_testRunnerApi.RegisterCallbacks(m_WindowResultUpdater); + } + + private void Enable() + { + m_Settings = new TestRunnerWindowSettings("UnityEditor.PlaymodeTestsRunnerWindow"); + filterSettings = new TestFilterSettings("UnityTest.IntegrationTestsRunnerWindow"); + + if (m_SelectedTestTypes == null) + { + SelectTestListGUI(m_TestTypeToolbarIndex); + } + + StartRetrieveTestList(); + m_SelectedTestTypes.Reload(); + m_Enabled = true; + } + + private void SelectTestListGUI(int testTypeToolbarIndex) + { + if (testTypeToolbarIndex == (int)TestRunnerMenuLabels.PlayMode) + { + if (m_PlayModeTestListGUI == null) + { + m_PlayModeTestListGUI = new PlayModeTestListGUI(); + } + m_SelectedTestTypes = m_PlayModeTestListGUI; + } + else if (testTypeToolbarIndex == (int)TestRunnerMenuLabels.EditMode) + { + if (m_EditModeTestListGUI == null) + { + m_EditModeTestListGUI = new EditModeTestListGUI(); + } + m_SelectedTestTypes = m_EditModeTestListGUI; + } + } + + private void StartRetrieveTestList() + { + if (!m_SelectedTestTypes.HasTreeData()) + { + m_testRunnerApi.RetrieveTestList(new ExecutionSettings() { filter = new Filter() { testMode = m_SelectedTestTypes.TestMode } }, (rootTest) => + { + m_SelectedTestTypes.Init(this, rootTest); + m_SelectedTestTypes.Reload(); + }); + } + } + + public void OnGUI() + { + if (!m_Enabled) + { + Enable(); + } + + if (BuildPipeline.isBuildingPlayer) + { + m_IsBuilding = true; + } + else if (m_IsBuilding) + { + m_IsBuilding = false; + Repaint(); + } + + EditorGUILayout.BeginHorizontal(); + GUILayout.FlexibleSpace(); + var selectedIndex = m_TestTypeToolbarIndex; + m_TestTypeToolbarIndex = GUILayout.Toolbar(m_TestTypeToolbarIndex, Enum.GetNames(typeof(TestRunnerMenuLabels)), "LargeButton", UnityEngine.GUI.ToolbarButtonSize.FitToContents); + GUILayout.FlexibleSpace(); + EditorGUILayout.EndHorizontal(); + + if (selectedIndex != m_TestTypeToolbarIndex) + { + SelectTestListGUI(m_TestTypeToolbarIndex); + StartRetrieveTestList(); + } + + EditorGUILayout.BeginVertical(); + using (new EditorGUI.DisabledScope(EditorApplication.isPlayingOrWillChangePlaymode)) + { + m_SelectedTestTypes.PrintHeadPanel(); + } + EditorGUILayout.EndVertical(); + + if (m_Settings.verticalSplit) + SplitterGUILayout.BeginVerticalSplit(m_Spl); + else + SplitterGUILayout.BeginHorizontalSplit(m_Spl); + + EditorGUILayout.BeginVertical(); + EditorGUILayout.BeginVertical(Styles.testList); + m_SelectedTestTypes.RenderTestList(); + EditorGUILayout.EndVertical(); + EditorGUILayout.EndVertical(); + + m_SelectedTestTypes.RenderDetails(); + + if (m_Settings.verticalSplit) + SplitterGUILayout.EndVerticalSplit(); + else + SplitterGUILayout.EndHorizontalSplit(); + } + + public void AddItemsToMenu(GenericMenu menu) + { + menu.AddItem(m_GUIVerticalSplit, m_Settings.verticalSplit, m_Settings.ToggleVerticalSplit); + menu.AddItem(m_GUIHorizontalSplit, !m_Settings.verticalSplit, m_Settings.ToggleVerticalSplit); + + menu.AddSeparator(null); + + var playModeTestRunnerEnabled = PlayerSettings.playModeTestRunnerEnabled; + var currentActive = playModeTestRunnerEnabled ? m_GUIDisablePlaymodeTestsRunner : m_GUIEnableaPlaymodeTestsRunner; + + if (EditorPrefs.GetBool("InternalMode", false)) + { + menu.AddItem(m_GUIRunPlayModeTestAsEditModeTests, PlayerSettings.runPlayModeTestAsEditModeTest, () => + { + PlayerSettings.runPlayModeTestAsEditModeTest = !PlayerSettings.runPlayModeTestAsEditModeTest; + }); + } + + menu.AddItem(currentActive, false, () => + { + PlayerSettings.playModeTestRunnerEnabled = !playModeTestRunnerEnabled; + EditorUtility.DisplayDialog(currentActive.text, "You need to restart the editor now", "Ok"); + }); + } + + public void RebuildUIFilter() + { + if (m_SelectedTestTypes != null && m_SelectedTestTypes.HasTreeData()) + { + m_SelectedTestTypes.RebuildUIFilter(); + } + } + + public static void UpdateWindow() + { + if (s_Instance != null && s_Instance.m_SelectedTestTypes != null) + { + s_Instance.m_SelectedTestTypes.Repaint(); + s_Instance.Repaint(); + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunnerWindow.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunnerWindow.cs.meta new file mode 100644 index 0000000..5cb0e86 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunnerWindow.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4dfcd3a631f61d248b7cc0b845d40345 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunnerWindowSettings.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunnerWindowSettings.cs new file mode 100644 index 0000000..366df26 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunnerWindowSettings.cs @@ -0,0 +1,26 @@ +namespace UnityEditor.TestTools.TestRunner +{ + internal class TestRunnerWindowSettings + { + public bool verticalSplit; + + private readonly string m_PrefsKey; + + public TestRunnerWindowSettings(string prefsKey) + { + m_PrefsKey = prefsKey; + verticalSplit = EditorPrefs.GetBool(m_PrefsKey + ".verticalSplit", true); + } + + public void ToggleVerticalSplit() + { + verticalSplit = !verticalSplit; + Save(); + } + + private void Save() + { + EditorPrefs.SetBool(m_PrefsKey + ".verticalSplit", verticalSplit); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunnerWindowSettings.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunnerWindowSettings.cs.meta new file mode 100644 index 0000000..44bcc5a --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestRunnerWindowSettings.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 2b301b727225f1941974d69e61a55620 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings.meta new file mode 100644 index 0000000..4127631 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 95b719082a664ea45bb56759eed1f271 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/ITestSettings.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/ITestSettings.cs new file mode 100644 index 0000000..d272037 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/ITestSettings.cs @@ -0,0 +1,22 @@ +using System; + +namespace UnityEditor.TestTools.TestRunner +{ + internal interface ITestSettings : IDisposable + { + ScriptingImplementation? scriptingBackend { get; set; } + + string Architecture { get; set; } + + ApiCompatibilityLevel? apiProfile { get; set; } + + bool? appleEnableAutomaticSigning { get; set; } + string appleDeveloperTeamID { get; set; } + ProvisioningProfileType? iOSManualProvisioningProfileType { get; set; } + string iOSManualProvisioningProfileID { get; set; } + ProvisioningProfileType? tvOSManualProvisioningProfileType { get; set; } + string tvOSManualProvisioningProfileID { get; set; } + + void SetupProjectParameters(); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/ITestSettings.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/ITestSettings.cs.meta new file mode 100644 index 0000000..9a8563c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/ITestSettings.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 83eda34b7da01e04aa894f268158b0c0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/ITestSettingsDeserializer.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/ITestSettingsDeserializer.cs new file mode 100644 index 0000000..701c91d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/ITestSettingsDeserializer.cs @@ -0,0 +1,7 @@ +namespace UnityEditor.TestTools.TestRunner +{ + interface ITestSettingsDeserializer + { + ITestSettings GetSettingsFromJsonFile(string jsonFilePath); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/ITestSettingsDeserializer.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/ITestSettingsDeserializer.cs.meta new file mode 100644 index 0000000..72c587e --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/ITestSettingsDeserializer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d208a1684f8aa6a40ad91d6aa9600c14 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/TestSettings.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/TestSettings.cs new file mode 100644 index 0000000..a5bdf7a --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/TestSettings.cs @@ -0,0 +1,160 @@ +using System; + +namespace UnityEditor.TestTools.TestRunner +{ + internal class TestSettings : ITestSettings + { + private readonly TestSetting[] m_Settings = + { + new TestSetting( + settings => settings.scriptingBackend, + () => PlayerSettings.GetScriptingBackend(EditorUserBuildSettings.activeBuildTargetGroup), + implementation => PlayerSettings.SetScriptingBackend(EditorUserBuildSettings.activeBuildTargetGroup, implementation.Value)), + new TestSetting( + settings => settings.Architecture, + () => EditorUserBuildSettings.activeBuildTarget == BuildTarget.Android ? PlayerSettings.Android.targetArchitectures.ToString() : null, + architecture => + { + if (EditorUserBuildSettings.activeBuildTarget == BuildTarget.Android) + { + if (!string.IsNullOrEmpty(architecture)) + { + var targetArchitectures = (AndroidArchitecture)Enum.Parse(typeof(AndroidArchitecture), architecture, true); + PlayerSettings.Android.targetArchitectures = targetArchitectures; + } + } + }), + new TestSetting( + settings => settings.apiProfile, + () => PlayerSettings.GetApiCompatibilityLevel(EditorUserBuildSettings.activeBuildTargetGroup), + implementation => + { + if (Enum.IsDefined(typeof(ApiCompatibilityLevel), implementation.Value)) + { + PlayerSettings.SetApiCompatibilityLevel(EditorUserBuildSettings.activeBuildTargetGroup, + implementation.Value); + } + }), + new TestSetting( + settings => settings.appleEnableAutomaticSigning, + () => PlayerSettings.iOS.appleEnableAutomaticSigning, + enableAutomaticSigning => + { + if (enableAutomaticSigning != null) + PlayerSettings.iOS.appleEnableAutomaticSigning = enableAutomaticSigning.Value; + }), + new TestSetting( + settings => settings.appleDeveloperTeamID, + () => PlayerSettings.iOS.appleDeveloperTeamID, + developerTeam => + { + if (developerTeam != null) + PlayerSettings.iOS.appleDeveloperTeamID = developerTeam; + }), + new TestSetting( + settings => settings.iOSManualProvisioningProfileType, + () => PlayerSettings.iOS.iOSManualProvisioningProfileType, + profileType => + { + if (profileType != null) + PlayerSettings.iOS.iOSManualProvisioningProfileType = profileType.Value; + }), + new TestSetting( + settings => settings.iOSManualProvisioningProfileID, + () => PlayerSettings.iOS.iOSManualProvisioningProfileID, + provisioningUUID => + { + if (provisioningUUID != null) + PlayerSettings.iOS.iOSManualProvisioningProfileID = provisioningUUID; + }), + new TestSetting( + settings => settings.tvOSManualProvisioningProfileType, + () => PlayerSettings.iOS.tvOSManualProvisioningProfileType, + profileType => + { + if (profileType != null) + PlayerSettings.iOS.tvOSManualProvisioningProfileType = profileType.Value; + }), + new TestSetting( + settings => settings.tvOSManualProvisioningProfileID, + () => PlayerSettings.iOS.tvOSManualProvisioningProfileID, + provisioningUUID => + { + if (provisioningUUID != null) + PlayerSettings.iOS.tvOSManualProvisioningProfileID = provisioningUUID; + }), + }; + + private bool m_Disposed; + + public ScriptingImplementation? scriptingBackend { get; set; } + + public string Architecture { get; set; } + + public ApiCompatibilityLevel? apiProfile { get; set; } + + public bool? appleEnableAutomaticSigning { get; set; } + public string appleDeveloperTeamID { get; set; } + public ProvisioningProfileType? iOSManualProvisioningProfileType { get; set; } + public string iOSManualProvisioningProfileID { get; set; } + public ProvisioningProfileType? tvOSManualProvisioningProfileType { get; set; } + public string tvOSManualProvisioningProfileID { get; set; } + + public void Dispose() + { + if (!m_Disposed) + { + foreach (var testSetting in m_Settings) + { + testSetting.Cleanup(); + } + + m_Disposed = true; + } + } + + public void SetupProjectParameters() + { + foreach (var testSetting in m_Settings) + { + testSetting.Setup(this); + } + } + + private abstract class TestSetting + { + public abstract void Setup(TestSettings settings); + public abstract void Cleanup(); + } + + private class TestSetting : TestSetting + { + private T m_ValueBeforeSetup; + private Func m_GetFromSettings; + private Func m_GetCurrentValue; + private Action m_SetValue; + + public TestSetting(Func getFromSettings, Func getCurrentValue, Action setValue) + { + m_GetFromSettings = getFromSettings; + m_GetCurrentValue = getCurrentValue; + m_SetValue = setValue; + } + + public override void Setup(TestSettings settings) + { + m_ValueBeforeSetup = m_GetCurrentValue(); + var newValue = m_GetFromSettings(settings); + if (newValue != null) + { + m_SetValue(newValue); + } + } + + public override void Cleanup() + { + m_SetValue(m_ValueBeforeSetup); + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/TestSettings.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/TestSettings.cs.meta new file mode 100644 index 0000000..23e6f5e --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/TestSettings.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6b32b6725087a0d4bb1670818d26996e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/TestSettingsDeserializer.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/TestSettingsDeserializer.cs new file mode 100644 index 0000000..cdba06e --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/TestSettingsDeserializer.cs @@ -0,0 +1,130 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner +{ + /// + /// Handles deserialization of TestSettings from a provided json file path. + /// + internal class TestSettingsDeserializer : ITestSettingsDeserializer + { + private static readonly SettingsMap[] s_SettingsMapping = + { + new SettingsMap("scriptingBackend", (settings, value) => settings.scriptingBackend = value), + new SettingsMap("architecture", (settings, value) => settings.Architecture = value), + new SettingsMap("apiProfile", (settings, value) => settings.apiProfile = value), + new SettingsMap("appleEnableAutomaticSigning", (settings, value) => settings.appleEnableAutomaticSigning = value), + new SettingsMap("appleDeveloperTeamID", (settings, value) => settings.appleDeveloperTeamID = value), + new SettingsMap("iOSManualProvisioningProfileType", (settings, value) => settings.iOSManualProvisioningProfileType = value), + new SettingsMap("iOSManualProvisioningProfileID", (settings, value) => settings.iOSManualProvisioningProfileID = value), + new SettingsMap("tvOSManualProvisioningProfileType", (settings, value) => settings.tvOSManualProvisioningProfileType = value), + new SettingsMap("tvOSManualProvisioningProfileID", (settings, value) => settings.tvOSManualProvisioningProfileID = value), + }; + + private readonly Func m_TestSettingsFactory; + public TestSettingsDeserializer(Func testSettingsFactory) + { + m_TestSettingsFactory = testSettingsFactory; + } + + public ITestSettings GetSettingsFromJsonFile(string jsonFilePath) + { + var text = File.ReadAllText(jsonFilePath); + var settingsDictionary = Json.Deserialize(text) as Dictionary; + + var testSettings = m_TestSettingsFactory(); + if (settingsDictionary == null) + { + return testSettings; + } + + foreach (var settingsMap in s_SettingsMapping) + { + if (!settingsDictionary.ContainsKey(settingsMap.Key)) + { + continue; + } + + if (settingsMap.Type.IsEnum) + { + SetEnumValue(settingsMap.Key, settingsDictionary[settingsMap.Key], settingsMap.Type, value => settingsMap.ApplyToSettings(testSettings, value)); + } + else + { + SetValue(settingsMap.Key, settingsDictionary[settingsMap.Key], settingsMap.Type, value => settingsMap.ApplyToSettings(testSettings, value)); + } + } + + return testSettings; + } + + private abstract class SettingsMap + { + public string Key { get; } + public Type Type { get; } + protected SettingsMap(string key, Type type) + { + Key = key; + Type = type; + } + + public abstract void ApplyToSettings(ITestSettings settings, object value); + } + + private class SettingsMap : SettingsMap + { + private Action m_Setter; + public SettingsMap(string key, Action setter) : base(key, typeof(T)) + { + m_Setter = setter; + } + + public override void ApplyToSettings(ITestSettings settings, object value) + { + m_Setter(settings, (T)value); + } + } + + private static void SetEnumValue(string key, object value, Type type, Action setter) + { + object enumValue; + if (TryGetEnum(value as string, type, out enumValue)) + { + setter(enumValue); + return; + } + + var acceptedValues = string.Join(", ", Enum.GetValues(type).OfType().Select(val => val.ToString()).ToArray()); + + Debug.LogFormat("Could not convert '{0}' argument '{1}' to a valid {2}. Accepted values: {3}.", key, value, type.Name, acceptedValues); + } + + private static bool TryGetEnum(string value, Type type, out object enumValue) + { + try + { + enumValue = Enum.Parse(type, value, true); + return true; + } + catch (Exception) + { + enumValue = null; + return false; + } + } + + private static void SetValue(string key, object value, Type type, Action setter) + { + if (type.IsInstanceOfType(value)) + { + setter(value); + return; + } + + Debug.LogFormat("Could not convert '{0}' argument '{1}' to a valid {2}.", key, value, type.Name); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/TestSettingsDeserializer.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/TestSettingsDeserializer.cs.meta new file mode 100644 index 0000000..4d50295 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/TestSettings/TestSettingsDeserializer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 75e7d7a9a57458841a85fe42d9c9141f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityEditor.TestRunner.asmdef b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityEditor.TestRunner.asmdef new file mode 100644 index 0000000..efdc7cf --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityEditor.TestRunner.asmdef @@ -0,0 +1,21 @@ +{ + "name": "UnityEditor.TestRunner", + "references": [ + "UnityEngine.TestRunner" + ], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": true, + "precompiledReferences": [ + "nunit.framework.dll", + "Mono.Cecil.dll", + "Mono.Cecil.Pdb.dll", + "Mono.Cecil.Mdb.dll", + "Mono.Cecil.Rocks.dll" + ], + "autoReferenced": false, + "defineConstraints": [] +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityEditor.TestRunner.asmdef.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityEditor.TestRunner.asmdef.meta new file mode 100644 index 0000000..63c0290 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityEditor.TestRunner.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 0acc523941302664db1f4e527237feb3 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol.meta new file mode 100644 index 0000000..8499c83 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 936c6340f3468444ebb1785b4c311126 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/AssemblyCompilationErrorsMessage.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/AssemblyCompilationErrorsMessage.cs new file mode 100644 index 0000000..7f00c5b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/AssemblyCompilationErrorsMessage.cs @@ -0,0 +1,13 @@ +namespace UnityEditor.TestTools.TestRunner.UnityTestProtocol +{ + internal class AssemblyCompilationErrorsMessage : Message + { + public string assembly; + public string[] errors; + + public AssemblyCompilationErrorsMessage() + { + type = "AssemblyCompilationErrors"; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/AssemblyCompilationErrorsMessage.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/AssemblyCompilationErrorsMessage.cs.meta new file mode 100644 index 0000000..67d5b2a --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/AssemblyCompilationErrorsMessage.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c346a7445959bba46a96de0747e77c2a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/ITestRunnerApiMapper.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/ITestRunnerApiMapper.cs new file mode 100644 index 0000000..f7dcacf --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/ITestRunnerApiMapper.cs @@ -0,0 +1,15 @@ +using System.Collections.Generic; +using UnityEditor.TestTools.TestRunner.Api; + +namespace UnityEditor.TestTools.TestRunner.UnityTestProtocol +{ + interface ITestRunnerApiMapper + { + string GetRunStateFromResultNunitXml(ITestResultAdaptor result); + TestState GetTestStateFromResult(ITestResultAdaptor result); + List FlattenTestNames(ITestAdaptor testsToRun); + TestPlanMessage MapTestToTestPlanMessage(ITestAdaptor testsToRun); + TestStartedMessage MapTestToTestStartedMessage(ITestAdaptor test); + TestFinishedMessage TestResultToTestFinishedMessage(ITestResultAdaptor result); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/ITestRunnerApiMapper.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/ITestRunnerApiMapper.cs.meta new file mode 100644 index 0000000..75e0ba2 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/ITestRunnerApiMapper.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6de79ae237e51554da96fd28f68b66a6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/IUtpLogger.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/IUtpLogger.cs new file mode 100644 index 0000000..bdb96c1 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/IUtpLogger.cs @@ -0,0 +1,7 @@ +namespace UnityEditor.TestTools.TestRunner.UnityTestProtocol +{ + interface IUtpLogger + { + void Log(Message msg); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/IUtpLogger.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/IUtpLogger.cs.meta new file mode 100644 index 0000000..dbd33aa --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/IUtpLogger.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9014630255533ed42915965b4065cde8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/IUtpMessageReporter.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/IUtpMessageReporter.cs new file mode 100644 index 0000000..3a9895e --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/IUtpMessageReporter.cs @@ -0,0 +1,14 @@ +using System.Collections.Generic; +using UnityEditor.Compilation; +using UnityEditor.TestTools.TestRunner.Api; + +namespace UnityEditor.TestTools.TestRunner.UnityTestProtocol +{ + internal interface IUtpMessageReporter + { + void ReportAssemblyCompilationErrors(string assembly, IEnumerable errorCompilerMessages); + void ReportTestFinished(ITestResultAdaptor result); + void ReportTestRunStarted(ITestAdaptor testsToRun); + void ReportTestStarted(ITestAdaptor test); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/IUtpMessageReporter.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/IUtpMessageReporter.cs.meta new file mode 100644 index 0000000..4c96a90 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/IUtpMessageReporter.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 952b3dc7b47846947b37c8d3ae46579a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/Message.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/Message.cs new file mode 100644 index 0000000..d10a5e4 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/Message.cs @@ -0,0 +1,29 @@ +using System; +using System.Diagnostics; + +namespace UnityEditor.TestTools.TestRunner.UnityTestProtocol +{ + [Serializable] + internal abstract class Message + { + public string type; + // Milliseconds since unix epoch + public ulong time; + public int version; + public string phase; + public int processId; + + protected Message() + { + version = 2; + phase = "Immediate"; + processId = Process.GetCurrentProcess().Id; + AddTimeStamp(); + } + + public void AddTimeStamp() + { + time = Convert.ToUInt64((DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalMilliseconds); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/Message.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/Message.cs.meta new file mode 100644 index 0000000..bfc702b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/Message.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 321dc2c0720f8dd4f9396ecdc12b8746 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestFinishedMessage.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestFinishedMessage.cs new file mode 100644 index 0000000..6280fd0 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestFinishedMessage.cs @@ -0,0 +1,17 @@ +namespace UnityEditor.TestTools.TestRunner.UnityTestProtocol +{ + internal class TestFinishedMessage : Message + { + public string name; + public TestState state; + public string message; + public ulong duration; // milliseconds + public ulong durationMicroseconds; + + public TestFinishedMessage() + { + type = "TestStatus"; + phase = "End"; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestFinishedMessage.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestFinishedMessage.cs.meta new file mode 100644 index 0000000..15b951b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestFinishedMessage.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 423fe2ef878fa1140a7e1f7f9e365815 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestPlanMessage.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestPlanMessage.cs new file mode 100644 index 0000000..c0a76da --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestPlanMessage.cs @@ -0,0 +1,14 @@ +using System.Collections.Generic; + +namespace UnityEditor.TestTools.TestRunner.UnityTestProtocol +{ + internal class TestPlanMessage : Message + { + public List tests; + + public TestPlanMessage() + { + type = "TestPlan"; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestPlanMessage.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestPlanMessage.cs.meta new file mode 100644 index 0000000..c057f60 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestPlanMessage.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 28f79a0d7e64c2345bc46f8c4cf788f8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestRunnerApiMapper.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestRunnerApiMapper.cs new file mode 100644 index 0000000..d231b74 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestRunnerApiMapper.cs @@ -0,0 +1,98 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Xml; +using UnityEditor.TestTools.TestRunner.Api; + +namespace UnityEditor.TestTools.TestRunner.UnityTestProtocol +{ + internal class TestRunnerApiMapper : ITestRunnerApiMapper + { + public TestPlanMessage MapTestToTestPlanMessage(ITestAdaptor testsToRun) + { + var testsNames = testsToRun != null ? FlattenTestNames(testsToRun) : new List(); + + var msg = new TestPlanMessage + { + tests = testsNames + }; + + return msg; + } + + public TestStartedMessage MapTestToTestStartedMessage(ITestAdaptor test) + { + return new TestStartedMessage + { + name = test.FullName + }; + } + + public TestFinishedMessage TestResultToTestFinishedMessage(ITestResultAdaptor result) + { + return new TestFinishedMessage + { + name = result.Test.FullName, + duration = Convert.ToUInt64(result.Duration * 1000), + durationMicroseconds = Convert.ToUInt64(result.Duration * 1000000), + message = result.Message, + state = GetTestStateFromResult(result) + }; + } + + public string GetRunStateFromResultNunitXml(ITestResultAdaptor result) + { + var doc = new XmlDocument(); + doc.LoadXml(result.ToXml().OuterXml); + return doc.FirstChild.Attributes["runstate"].Value; + } + + public TestState GetTestStateFromResult(ITestResultAdaptor result) + { + var state = TestState.Failure; + + if (result.TestStatus == TestStatus.Passed) + { + state = TestState.Success; + + var runstate = GetRunStateFromResultNunitXml(result); + runstate = runstate ?? String.Empty; + + if (runstate.ToLowerInvariant().Equals("explicit")) + state = TestState.Skipped; + } + else if (result.TestStatus == TestStatus.Skipped) + { + state = TestState.Skipped; + + if (result.ResultState.ToLowerInvariant().EndsWith("ignored")) + state = TestState.Ignored; + } + else + { + if (result.ResultState.ToLowerInvariant().Equals("inconclusive")) + state = TestState.Inconclusive; + + if (result.ResultState.ToLowerInvariant().EndsWith("cancelled") || + result.ResultState.ToLowerInvariant().EndsWith("error")) + state = TestState.Error; + } + + return state; + } + + public List FlattenTestNames(ITestAdaptor test) + { + var results = new List(); + + if (!test.IsSuite) + results.Add(test.FullName); + + if (test.Children != null && test.Children.Any()) + foreach (var child in test.Children) + results.AddRange(FlattenTestNames(child)); + + return results; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestRunnerApiMapper.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestRunnerApiMapper.cs.meta new file mode 100644 index 0000000..47634b9 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestRunnerApiMapper.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 2011a59d3f76b3d4a85cb53f945fceee +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestStartedMessage.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestStartedMessage.cs new file mode 100644 index 0000000..c21464f --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestStartedMessage.cs @@ -0,0 +1,15 @@ +namespace UnityEditor.TestTools.TestRunner.UnityTestProtocol +{ + internal class TestStartedMessage : Message + { + public string name; + public TestState state; + + public TestStartedMessage() + { + type = "TestStatus"; + phase = "Begin"; + state = TestState.Inconclusive; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestStartedMessage.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestStartedMessage.cs.meta new file mode 100644 index 0000000..18b53d1 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestStartedMessage.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: bd3e81baa10021f4d877fa36382bab16 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestState.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestState.cs new file mode 100644 index 0000000..223a73d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestState.cs @@ -0,0 +1,13 @@ +namespace UnityEditor.TestTools.TestRunner.UnityTestProtocol +{ + // This matches the state definitions expected by the Perl code, which in turn matches the NUnit 2 values... + internal enum TestState + { + Inconclusive = 0, + Skipped = 2, + Ignored = 3, + Success = 4, + Failure = 5, + Error = 6 + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestState.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestState.cs.meta new file mode 100644 index 0000000..ac66641 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/TestState.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 77f432980bb30084299a138e15c6f571 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UnityTestProtocolListener.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UnityTestProtocolListener.cs new file mode 100644 index 0000000..09daf8d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UnityTestProtocolListener.cs @@ -0,0 +1,35 @@ +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner.UnityTestProtocol +{ + internal class UnityTestProtocolListener : ScriptableObject, ICallbacks + { + private IUtpMessageReporter m_UtpMessageReporter; + + public UnityTestProtocolListener() + { + m_UtpMessageReporter = new UtpMessageReporter(new UtpDebugLogger()); + } + + public void RunStarted(ITestAdaptor testsToRun) + { + m_UtpMessageReporter.ReportTestRunStarted(testsToRun); + } + + public void RunFinished(ITestResultAdaptor testResults) + { + // Apparently does nothing :) + } + + public void TestStarted(ITestAdaptor test) + { + m_UtpMessageReporter.ReportTestStarted(test); + } + + public void TestFinished(ITestResultAdaptor result) + { + m_UtpMessageReporter.ReportTestFinished(result); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UnityTestProtocolListener.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UnityTestProtocolListener.cs.meta new file mode 100644 index 0000000..8ba29be --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UnityTestProtocolListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 900aac3710bc14542a8d164e3f0ff820 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UnityTestProtocolStarter.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UnityTestProtocolStarter.cs new file mode 100644 index 0000000..cca2fd8 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UnityTestProtocolStarter.cs @@ -0,0 +1,37 @@ +using System; +using System.Linq; +using UnityEditor.Compilation; +using UnityEditor.TestTools.TestRunner.Api; +using UnityEngine; +using UnityEngine.TestTools; + +namespace UnityEditor.TestTools.TestRunner.UnityTestProtocol +{ + [InitializeOnLoad] + internal static class UnityTestProtocolStarter + { + static UnityTestProtocolStarter() + { + var commandLineArgs = Environment.GetCommandLineArgs(); + if (commandLineArgs.Contains("-automated") && commandLineArgs.Contains("-runTests")) // wanna have it only for utr run + { + var api = ScriptableObject.CreateInstance(); + var listener = ScriptableObject.CreateInstance(); + api.RegisterCallbacks(listener); + CompilationPipeline.assemblyCompilationFinished += OnAssemblyCompilationFinished; + } + } + + public static void OnAssemblyCompilationFinished(string assembly, CompilerMessage[] messages) + { + bool checkCompileErrors = RecompileScripts.Current == null || RecompileScripts.Current.ExpectScriptCompilationSuccess; + + if (checkCompileErrors && messages.Any(x => x.type == CompilerMessageType.Error)) + { + var compilerErrorMessages = messages.Where(x => x.type == CompilerMessageType.Error); + var utpMessageReporter = new UtpMessageReporter(new UtpDebugLogger()); + utpMessageReporter.ReportAssemblyCompilationErrors(assembly, compilerErrorMessages); + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UnityTestProtocolStarter.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UnityTestProtocolStarter.cs.meta new file mode 100644 index 0000000..540b31e --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UnityTestProtocolStarter.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1ac58cb55fc8daf4abd3945a2bbbb0c5 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UtpDebuglogger.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UtpDebuglogger.cs new file mode 100644 index 0000000..e32f6d2 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UtpDebuglogger.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace UnityEditor.TestTools.TestRunner.UnityTestProtocol +{ + class UtpDebugLogger : IUtpLogger + { + public void Log(Message msg) + { + var msgJson = JsonUtility.ToJson(msg); + Debug.LogFormat(LogType.Log, LogOption.NoStacktrace, null, "\n##utp:{0}", msgJson); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UtpDebuglogger.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UtpDebuglogger.cs.meta new file mode 100644 index 0000000..7debc23 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UtpDebuglogger.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d0abdd8cb6b29a24c8ee19626ef741b9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UtpMessageReporter.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UtpMessageReporter.cs new file mode 100644 index 0000000..37c4ee7 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UtpMessageReporter.cs @@ -0,0 +1,57 @@ +using System.Collections.Generic; +using System.Linq; +using UnityEditor.Compilation; +using UnityEditor.TestTools.TestRunner.Api; + +namespace UnityEditor.TestTools.TestRunner.UnityTestProtocol +{ + internal class UtpMessageReporter : IUtpMessageReporter + { + public ITestRunnerApiMapper TestRunnerApiMapper; + public IUtpLogger Logger; + + public UtpMessageReporter(IUtpLogger utpLogger) + { + TestRunnerApiMapper = new TestRunnerApiMapper(); + Logger = utpLogger; + } + + public void ReportAssemblyCompilationErrors(string assembly, IEnumerable errorCompilerMessages) + { + var compilationErrorMessage = new AssemblyCompilationErrorsMessage + { + assembly = assembly, + errors = errorCompilerMessages.Select(x => x.message).ToArray() + }; + + Logger.Log(compilationErrorMessage); + } + + public void ReportTestRunStarted(ITestAdaptor testsToRun) + { + var msg = TestRunnerApiMapper.MapTestToTestPlanMessage(testsToRun); + + Logger.Log(msg); + } + + public void ReportTestStarted(ITestAdaptor test) + { + if (test.IsSuite) + return; + + var msg = TestRunnerApiMapper.MapTestToTestStartedMessage(test); + + Logger.Log(msg); + } + + public void ReportTestFinished(ITestResultAdaptor result) + { + if (result.Test.IsSuite) + return; + + var msg = TestRunnerApiMapper.TestResultToTestFinishedMessage(result); + + Logger.Log(msg); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UtpMessageReporter.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UtpMessageReporter.cs.meta new file mode 100644 index 0000000..c818d4f --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEditor.TestRunner/UnityTestProtocol/UtpMessageReporter.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ebcc5f899d9277642868aeda9a17cbaf +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner.meta new file mode 100644 index 0000000..9589050 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 950890083f4907541a6ed06d70959e49 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/AssemblyInfo.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/AssemblyInfo.cs new file mode 100644 index 0000000..4149677 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/AssemblyInfo.cs @@ -0,0 +1,16 @@ +using System.Reflection; +using System.Runtime.CompilerServices; + +[assembly: AssemblyTitle("UnityEngine.TestRunner")] + +[assembly: InternalsVisibleTo("UnityEditor.TestRunner")] +[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")] +[assembly: InternalsVisibleTo("Unity.PerformanceTesting")] +[assembly: InternalsVisibleTo("Unity.PerformanceTesting.Editor")] +[assembly: InternalsVisibleTo("Assembly-CSharp-testable")] +[assembly: InternalsVisibleTo("Assembly-CSharp-Editor-testable")] +[assembly: InternalsVisibleTo("UnityEngine.TestRunner.Tests")] +[assembly: InternalsVisibleTo("UnityEditor.TestRunner.Tests")] +[assembly: InternalsVisibleTo("Unity.PackageManagerUI.Editor")] + +[assembly: AssemblyVersion("1.0.0")] diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/AssemblyInfo.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/AssemblyInfo.cs.meta new file mode 100644 index 0000000..b499e31 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/AssemblyInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: cc22cc13b69c1094c85e176c008b9ef8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions.meta new file mode 100644 index 0000000..4e7bbdf --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1ad55f5ad04d1d045a1f287409c650dd +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/AllocatingGCMemoryConstraint.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/AllocatingGCMemoryConstraint.cs new file mode 100644 index 0000000..339a090 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/AllocatingGCMemoryConstraint.cs @@ -0,0 +1,83 @@ +using System; +using NUnit.Framework; +using NUnit.Framework.Constraints; +using UnityEngine.Profiling; + +namespace UnityEngine.TestTools.Constraints +{ + public class AllocatingGCMemoryConstraint : Constraint + { + private class AllocatingGCMemoryResult : ConstraintResult + { + private readonly int diff; + public AllocatingGCMemoryResult(IConstraint constraint, object actualValue, int diff) : base(constraint, actualValue, diff > 0) + { + this.diff = diff; + } + + public override void WriteMessageTo(MessageWriter writer) + { + if (diff == 0) + writer.WriteMessageLine("The provided delegate did not make any GC allocations."); + else + writer.WriteMessageLine("The provided delegate made {0} GC allocation(s).", diff); + } + } + + private ConstraintResult ApplyTo(Action action, object original) + { + var recorder = Recorder.Get("GC.Alloc"); + + // The recorder was created enabled, which means it captured the creation of the Recorder object itself, etc. + // Disabling it flushes its data, so that we can retrieve the sample block count and have it correctly account + // for these initial allocations. + recorder.enabled = false; + +#if !UNITY_WEBGL + recorder.FilterToCurrentThread(); +#endif + + recorder.enabled = true; + + try + { + action(); + } + finally + { + recorder.enabled = false; +#if !UNITY_WEBGL + recorder.CollectFromAllThreads(); +#endif + } + + return new AllocatingGCMemoryResult(this, original, recorder.sampleBlockCount); + } + + public override ConstraintResult ApplyTo(object obj) + { + if (obj == null) + throw new ArgumentNullException(); + + TestDelegate d = obj as TestDelegate; + if (d == null) + throw new ArgumentException(string.Format("The actual value must be a TestDelegate but was {0}", + obj.GetType())); + + return ApplyTo(() => d.Invoke(), obj); + } + + public override ConstraintResult ApplyTo(ActualValueDelegate del) + { + if (del == null) + throw new ArgumentNullException(); + + return ApplyTo(() => del.Invoke(), del); + } + + public override string Description + { + get { return "allocates GC memory"; } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/AllocatingGCMemoryConstraint.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/AllocatingGCMemoryConstraint.cs.meta new file mode 100644 index 0000000..0933c85 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/AllocatingGCMemoryConstraint.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d09858396dd7adb4bbdb22ea0c8c3a37 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/ConstraintsExtensions.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/ConstraintsExtensions.cs new file mode 100644 index 0000000..812b1f0 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/ConstraintsExtensions.cs @@ -0,0 +1,14 @@ +using NUnit.Framework.Constraints; + +namespace UnityEngine.TestTools.Constraints +{ + public static class ConstraintExtensions + { + public static AllocatingGCMemoryConstraint AllocatingGCMemory(this ConstraintExpression chain) + { + var constraint = new AllocatingGCMemoryConstraint(); + chain.Append(constraint); + return constraint; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/ConstraintsExtensions.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/ConstraintsExtensions.cs.meta new file mode 100644 index 0000000..1343496 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/ConstraintsExtensions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 68a48d1900320ed458e118415857faf6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/InvalidSignatureException.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/InvalidSignatureException.cs new file mode 100644 index 0000000..ab4ff8e --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/InvalidSignatureException.cs @@ -0,0 +1,18 @@ +using NUnit.Framework; +using NUnit.Framework.Interfaces; + +namespace UnityEngine.TestTools.TestRunner +{ + internal class InvalidSignatureException : ResultStateException + { + public InvalidSignatureException(string message) + : base(message) + { + } + + public override ResultState ResultState + { + get { return ResultState.NotRunnable; } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/InvalidSignatureException.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/InvalidSignatureException.cs.meta new file mode 100644 index 0000000..86aee7f --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/InvalidSignatureException.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9650d910fcaefb34cb45f121c1993892 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/Is.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/Is.cs new file mode 100644 index 0000000..c0871ef --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/Is.cs @@ -0,0 +1,10 @@ +namespace UnityEngine.TestTools.Constraints +{ + public class Is : NUnit.Framework.Is + { + public static AllocatingGCMemoryConstraint AllocatingGCMemory() + { + return new AllocatingGCMemoryConstraint(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/Is.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/Is.cs.meta new file mode 100644 index 0000000..23ed44a --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/Is.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6d5833966abeadb429de247e4316eef4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogAssert.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogAssert.cs new file mode 100644 index 0000000..19ecd1c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogAssert.cs @@ -0,0 +1,43 @@ +using System.Text.RegularExpressions; +using UnityEngine.TestTools.Logging; +using UnityEngine.TestTools.TestRunner; + +namespace UnityEngine.TestTools +{ + public static class LogAssert + { + public static void Expect(LogType type, string message) + { + LogScope.Current.ExpectedLogs.Enqueue(new LogMatch() { LogType = type, Message = message }); + } + + public static void Expect(LogType type, Regex message) + { + LogScope.Current.ExpectedLogs.Enqueue(new LogMatch() { LogType = type, MessageRegex = message }); + } + + public static void NoUnexpectedReceived() + { + LogScope.Current.ProcessExpectedLogs(); + var isAllLogsHandled = LogScope.Current.IsAllLogsHandled(); + if (isAllLogsHandled) + { + return; + } + var unhandledLog = LogScope.Current.GetUnhandledLog(); + throw new UnhandledLogMessageException(unhandledLog); + } + + public static bool ignoreFailingMessages + { + get + { + return LogScope.Current.IgnoreFailingMessages; + } + set + { + LogScope.Current.IgnoreFailingMessages = value; + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogAssert.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogAssert.cs.meta new file mode 100644 index 0000000..7a278a3 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogAssert.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c97b794b51780d349a16826a4c7898d7 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope.meta new file mode 100644 index 0000000..284dc6a --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b1d8465ba1376b148bdab58965101f47 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/ILogScope.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/ILogScope.cs new file mode 100644 index 0000000..750d2b5 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/ILogScope.cs @@ -0,0 +1,10 @@ +using System; +using System.Collections.Generic; + +namespace UnityEngine.TestTools.Logging +{ + internal interface ILogScope : IDisposable + { + List LogEvents { get; } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/ILogScope.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/ILogScope.cs.meta new file mode 100644 index 0000000..69e7d55 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/ILogScope.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3504aa04cda851b44a65973f9aead6f7 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogEvent.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogEvent.cs new file mode 100644 index 0000000..bbc805e --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogEvent.cs @@ -0,0 +1,18 @@ +namespace UnityEngine.TestTools.Logging +{ + internal class LogEvent + { + public string Message { get; set; } + + public string StackTrace { get; set; } + + public LogType LogType { get; set; } + + public bool IsHandled { get; set; } + + public override string ToString() + { + return string.Format("[{0}] {1}", LogType, Message); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogEvent.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogEvent.cs.meta new file mode 100644 index 0000000..66c9130 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogEvent.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0c56471f08a0f6846afc792f0b4205b9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogMatch.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogMatch.cs new file mode 100644 index 0000000..9b862d9 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogMatch.cs @@ -0,0 +1,103 @@ +using System; +using System.Text.RegularExpressions; + +namespace UnityEngine.TestTools.Logging +{ + [Serializable] + internal class LogMatch + { + [SerializeField] + private bool m_UseRegex; + [SerializeField] + private string m_Message; + [SerializeField] + private string m_MessageRegex; + [SerializeField] + private string m_LogType; + + public string Message + { + get { return m_Message; } + set + { + m_Message = value; + m_UseRegex = false; + } + } + + public Regex MessageRegex + { + get + { + if (!m_UseRegex) + { + return null; + } + + return new Regex(m_MessageRegex); + } + set + { + if (value != null) + { + m_MessageRegex = value.ToString(); + m_UseRegex = true; + } + else + { + m_MessageRegex = null; + m_UseRegex = false; + } + } + } + + public LogType? LogType + { + get + { + if (!string.IsNullOrEmpty(m_LogType)) + { + return Enum.Parse(typeof(LogType), m_LogType) as LogType ? ; + } + + return null; + } + set + { + if (value != null) + { + m_LogType = value.Value.ToString(); + } + else + { + m_LogType = null; + } + } + } + + public bool Matches(LogEvent log) + { + if (LogType != null && LogType != log.LogType) + { + return false; + } + + if (m_UseRegex) + { + return MessageRegex.IsMatch(log.Message); + } + else + { + return Message.Equals(log.Message); + } + } + + public override string ToString() + { + if (m_UseRegex) + return string.Format("[{0}] Regex: {1}", LogType, MessageRegex); + else + return string.Format("[{0}] {1}", LogType, Message); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogMatch.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogMatch.cs.meta new file mode 100644 index 0000000..ffc2bc3 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogMatch.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9945ffed4692c6044b6d3acf81efd694 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogScope.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogScope.cs new file mode 100644 index 0000000..c5bf097 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogScope.cs @@ -0,0 +1,224 @@ +using System; +using System.Collections.Generic; +using System.Linq; + +namespace UnityEngine.TestTools.Logging +{ + internal class LogScope : IDisposable + { + private bool m_Disposed; + private readonly object _lock = new object(); + + public Queue ExpectedLogs { get; set; } + public List AllLogs { get; } + public List FailingLogs { get; } + public bool IgnoreFailingMessages { get; set; } + public bool IsNUnitException { get; private set; } + public bool IsNUnitSuccessException { get; private set; } + public bool IsNUnitInconclusiveException { get; private set; } + public bool IsNUnitIgnoreException { get; private set; } + public string NUnitExceptionMessage { get; private set; } + + private bool m_NeedToProcessLogs; + private static List s_ActiveScopes = new List(); + + internal static LogScope Current + { + get + { + if (s_ActiveScopes.Count == 0) + throw new InvalidOperationException("No log scope is available"); + return s_ActiveScopes[0]; + } + } + + internal static bool HasCurrentLogScope() + { + return s_ActiveScopes.Count > 0; + } + + public LogScope() + { + AllLogs = new List(); + FailingLogs = new List(); + ExpectedLogs = new Queue(); + IgnoreFailingMessages = false; + Activate(); + } + + private void Activate() + { + s_ActiveScopes.Insert(0, this); + RegisterScope(this); + Application.logMessageReceivedThreaded -= AddLog; + Application.logMessageReceivedThreaded += AddLog; + } + + private void Deactivate() + { + Application.logMessageReceivedThreaded -= AddLog; + s_ActiveScopes.Remove(this); + UnregisterScope(this); + } + + private static void RegisterScope(LogScope logScope) + { + Application.logMessageReceivedThreaded += logScope.AddLog; + } + + private static void UnregisterScope(LogScope logScope) + { + Application.logMessageReceivedThreaded -= logScope.AddLog; + } + + public void AddLog(string message, string stacktrace, LogType type) + { + lock (_lock) + { + m_NeedToProcessLogs = true; + var log = new LogEvent + { + LogType = type, + Message = message, + StackTrace = stacktrace, + }; + + AllLogs.Add(log); + + if (IsNUnitResultStateException(stacktrace, type)) + { + if (message.StartsWith("SuccessException")) + { + IsNUnitException = true; + IsNUnitSuccessException = true; + if (message.StartsWith("SuccessException: ")) + { + NUnitExceptionMessage = message.Substring("SuccessException: ".Length); + return; + } + } + else if (message.StartsWith("InconclusiveException")) + { + IsNUnitException = true; + IsNUnitInconclusiveException = true; + if (message.StartsWith("InconclusiveException: ")) + { + NUnitExceptionMessage = message.Substring("InconclusiveException: ".Length); + return; + } + } + else if (message.StartsWith("IgnoreException")) + { + IsNUnitException = true; + IsNUnitIgnoreException = true; + if (message.StartsWith("IgnoreException: ")) + { + NUnitExceptionMessage = message.Substring("IgnoreException: ".Length); + return; + } + } + } + + if (IsFailingLog(type) && !IgnoreFailingMessages) + { + FailingLogs.Add(log); + } + } + } + + public bool IsAllLogsHandled() + { + lock (_lock) + { + return AllLogs.All(x => x.IsHandled); + } + } + + public LogEvent GetUnhandledLog() + { + lock (_lock) + { + return AllLogs.First(x => !x.IsHandled); + } + } + + private static bool IsNUnitResultStateException(string stacktrace, LogType logType) + { + if (logType != LogType.Exception) + return false; + + return string.IsNullOrEmpty(stacktrace) || stacktrace.StartsWith("NUnit.Framework.Assert."); + } + + private static bool IsFailingLog(LogType type) + { + switch (type) + { + case LogType.Assert: + case LogType.Error: + case LogType.Exception: + return true; + default: + return false; + } + } + + public void Dispose() + { + Dispose(true); + GC.SuppressFinalize(this); + } + + protected virtual void Dispose(bool disposing) + { + if (m_Disposed) + { + return; + } + + m_Disposed = true; + + if (disposing) + { + Deactivate(); + } + } + + internal bool AnyFailingLogs() + { + ProcessExpectedLogs(); + return FailingLogs.Any(); + } + + internal void ProcessExpectedLogs() + { + lock (_lock) + { + if (!m_NeedToProcessLogs || !ExpectedLogs.Any()) + return; + + LogMatch expectedLog = null; + foreach (var logEvent in AllLogs) + { + if (!ExpectedLogs.Any()) + break; + if (expectedLog == null && ExpectedLogs.Any()) + expectedLog = ExpectedLogs.Peek(); + + if (expectedLog != null && expectedLog.Matches(logEvent)) + { + ExpectedLogs.Dequeue(); + logEvent.IsHandled = true; + if (FailingLogs.Any(expectedLog.Matches)) + { + var failingLog = FailingLogs.First(expectedLog.Matches); + FailingLogs.Remove(failingLog); + } + expectedLog = null; + } + } + m_NeedToProcessLogs = false; + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogScope.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogScope.cs.meta new file mode 100644 index 0000000..ea13dd6 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/LogScope/LogScope.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4bbc17b35884fdf468e4b52ae4222882 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnexpectedLogMessageException.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnexpectedLogMessageException.cs new file mode 100644 index 0000000..8ad39f4 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnexpectedLogMessageException.cs @@ -0,0 +1,29 @@ +using NUnit.Framework; +using NUnit.Framework.Interfaces; +using UnityEngine.TestTools.Logging; + +namespace UnityEngine.TestTools.TestRunner +{ + internal class UnexpectedLogMessageException : ResultStateException + { + public LogMatch LogEvent; + + public UnexpectedLogMessageException(LogMatch log) + : base(BuildMessage(log)) + { + LogEvent = log; + } + + private static string BuildMessage(LogMatch log) + { + return string.Format("Expected log did not appear: {0}", log); + } + + public override ResultState ResultState + { + get { return ResultState.Failure; } + } + + public override string StackTrace { get { return null; } } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnexpectedLogMessageException.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnexpectedLogMessageException.cs.meta new file mode 100644 index 0000000..7b9e611 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnexpectedLogMessageException.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5b2eeca598284bd4abb4a15c30df1576 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnhandledLogMessageException.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnhandledLogMessageException.cs new file mode 100644 index 0000000..9427cc8 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnhandledLogMessageException.cs @@ -0,0 +1,35 @@ +using NUnit.Framework; +using NUnit.Framework.Interfaces; +using UnityEngine.TestTools.Logging; +using UnityEngine.TestTools.Utils; + +namespace UnityEngine.TestTools.TestRunner +{ + internal class UnhandledLogMessageException : ResultStateException + { + public LogEvent LogEvent; + private readonly string m_CustomStackTrace; + + public UnhandledLogMessageException(LogEvent log) + : base(BuildMessage(log)) + { + LogEvent = log; + m_CustomStackTrace = StackTraceFilter.Filter(log.StackTrace); + } + + private static string BuildMessage(LogEvent log) + { + return string.Format("Unhandled log message: '{0}'. Use UnityEngine.TestTools.LogAssert.Expect", log); + } + + public override ResultState ResultState + { + get { return ResultState.Failure; } + } + + public override string StackTrace + { + get { return m_CustomStackTrace; } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnhandledLogMessageException.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnhandledLogMessageException.cs.meta new file mode 100644 index 0000000..1019924 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnhandledLogMessageException.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a8ed4063f2beecd41a234a582202f3c4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnityTestTimeoutException.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnityTestTimeoutException.cs new file mode 100644 index 0000000..6ba39c2 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnityTestTimeoutException.cs @@ -0,0 +1,28 @@ +using NUnit.Framework; +using NUnit.Framework.Interfaces; + +namespace UnityEngine.TestTools.TestRunner +{ + internal class UnityTestTimeoutException : ResultStateException + { + public UnityTestTimeoutException(int timeout) + : base(BuildMessage(timeout)) + { + } + + private static string BuildMessage(int timeout) + { + return string.Format("UnityTest exceeded Timeout value of {0}ms", timeout); + } + + public override ResultState ResultState + { + get { return ResultState.Failure; } + } + + public override string StackTrace + { + get { return ""; } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnityTestTimeoutException.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnityTestTimeoutException.cs.meta new file mode 100644 index 0000000..d366ec9 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Assertions/UnityTestTimeoutException.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ffb335140c799c4408411d81789fb05c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions.meta new file mode 100644 index 0000000..3023e52 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3e8d6af343b383544ba5743d119f4062 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/ActionDelegator.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/ActionDelegator.cs new file mode 100644 index 0000000..ed8d896 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/ActionDelegator.cs @@ -0,0 +1,79 @@ +using System; +using System.Linq; +using UnityEngine.TestRunner.NUnitExtensions.Runner; +using UnityEngine.TestTools.Logging; +using UnityEngine.TestTools.TestRunner; + +namespace UnityEngine.TestTools.NUnitExtensions +{ + /// + /// This class delegates actions from the NUnit thread that should be executed on the main thread. + /// NUnit thread calls Delegate which blocks the execution on the thread until the action is executed. + /// The main thread will poll for awaiting actions (HasAction) and invoke them (Execute). + /// Once the action is executed, the main thread releases the lock and executino on the NUnit thread is continued. + /// + internal class ActionDelegator : BaseDelegator + { + private Func m_Action; + public object Delegate(Action action) + { + return Delegate(() => { action(); return null; }); + } + + public object Delegate(Func action) + { + if (m_Aborted) + { + return null; + } + + AssertState(); + m_Context = UnityTestExecutionContext.CurrentContext; + + m_Signal.Reset(); + m_Action = action; + + WaitForSignal(); + + return HandleResult(); + } + + private void AssertState() + { + if (m_Action != null) + { + throw new Exception("Action not executed yet"); + } + } + + public bool HasAction() + { + return m_Action != null; + } + + public void Execute(LogScope logScope) + { + try + { + SetCurrentTestContext(); + m_Result = m_Action(); + if (logScope.AnyFailingLogs()) + { + var failingLog = logScope.FailingLogs.First(); + throw new UnhandledLogMessageException(failingLog); + } + if (logScope.ExpectedLogs.Any()) + throw new UnexpectedLogMessageException(LogScope.Current.ExpectedLogs.Peek()); + } + catch (Exception e) + { + m_Exception = e; + } + finally + { + m_Action = null; + m_Signal.Set(); + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/ActionDelegator.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/ActionDelegator.cs.meta new file mode 100644 index 0000000..5f4e2d1 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/ActionDelegator.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4f939b9e23a0946439b812551e07ac81 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes.meta new file mode 100644 index 0000000..c7cae09 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0cb14878543cf3d4f8472b15f7ecf0e3 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/TestEnumerator.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/TestEnumerator.cs new file mode 100644 index 0000000..89c5f76 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/TestEnumerator.cs @@ -0,0 +1,52 @@ +using System; +using System.Collections; +using NUnit.Framework; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; + +namespace UnityEngine.TestTools +{ + internal class TestEnumerator + { + private readonly ITestExecutionContext m_Context; + private static IEnumerator m_TestEnumerator; + + public static IEnumerator Enumerator { get { return m_TestEnumerator; } } + + public TestEnumerator(ITestExecutionContext context, IEnumerator testEnumerator) + { + m_Context = context; + m_TestEnumerator = testEnumerator; + } + + public IEnumerator Execute() + { + m_Context.CurrentResult.SetResult(ResultState.Success); + + while (true) + { + object current = null; + try + { + if (!m_TestEnumerator.MoveNext()) + { + yield break; + } + + if (!m_Context.CurrentResult.ResultState.Equals(ResultState.Success)) + { + yield break; + } + + current = m_TestEnumerator.Current; + } + catch (Exception exception) + { + m_Context.CurrentResult.RecordException(exception); + yield break; + } + yield return current; + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/TestEnumerator.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/TestEnumerator.cs.meta new file mode 100644 index 0000000..6ca4f72 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/TestEnumerator.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 750aad009559b814dbc27001341fc1c3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityCombinatorialStrategy.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityCombinatorialStrategy.cs new file mode 100644 index 0000000..84f8d84 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityCombinatorialStrategy.cs @@ -0,0 +1,20 @@ +using System.Collections; +using System.Collections.Generic; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal.Builders; + +namespace UnityEngine.TestTools +{ + internal class UnityCombinatorialStrategy : CombinatorialStrategy, ICombiningStrategy + { + public new IEnumerable GetTestCases(IEnumerable[] sources) + { + var testCases = base.GetTestCases(sources); + foreach (var testCase in testCases) + { + testCase.GetType().GetProperty("ExpectedResult").SetValue(testCase, new object(), null); + } + return testCases; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityCombinatorialStrategy.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityCombinatorialStrategy.cs.meta new file mode 100644 index 0000000..84774ce --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityCombinatorialStrategy.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7af6ac3e6b51b8d4aab04adc85b8de2f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityPlatformAttribute.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityPlatformAttribute.cs new file mode 100644 index 0000000..ff538ea --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityPlatformAttribute.cs @@ -0,0 +1,56 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using NUnit.Framework; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; + +namespace UnityEngine.TestTools +{ + [AttributeUsage(AttributeTargets.Assembly | AttributeTargets.Class | AttributeTargets.Method, AllowMultiple = true, Inherited = false)] + public class UnityPlatformAttribute : NUnitAttribute, IApplyToTest + { + public RuntimePlatform[] include { get; set; } + public RuntimePlatform[] exclude { get; set; } + + private string m_skippedReason; + + public UnityPlatformAttribute() + { + include = new List().ToArray(); + exclude = new List().ToArray(); + } + + public UnityPlatformAttribute(params RuntimePlatform[] include) + : this() + { + this.include = include; + } + + public void ApplyToTest(Test test) + { + if (test.RunState == RunState.NotRunnable || test.RunState == RunState.Ignored || IsPlatformSupported(Application.platform)) + { + return; + } + test.RunState = RunState.Skipped; + test.Properties.Add("_SKIPREASON", m_skippedReason); + } + + internal bool IsPlatformSupported(RuntimePlatform testTargetPlatform) + { + if (include.Any() && !include.Any(x => x == testTargetPlatform)) + { + m_skippedReason = string.Format("Only supported on {0}", string.Join(", ", include.Select(x => x.ToString()).ToArray())); + return false; + } + + if (exclude.Any(x => x == testTargetPlatform)) + { + m_skippedReason = string.Format("Not supported on {0}", string.Join(", ", include.Select(x => x.ToString()).ToArray())); + return false; + } + return true; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityPlatformAttribute.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityPlatformAttribute.cs.meta new file mode 100644 index 0000000..003e154 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityPlatformAttribute.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5440c1153b397e14c9c7b1d6eb83b9f9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnitySetUpAttribute.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnitySetUpAttribute.cs new file mode 100644 index 0000000..f51da12 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnitySetUpAttribute.cs @@ -0,0 +1,10 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.TestTools +{ + [AttributeUsage(AttributeTargets.Method)] + public class UnitySetUpAttribute : NUnitAttribute + { + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnitySetUpAttribute.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnitySetUpAttribute.cs.meta new file mode 100644 index 0000000..ccd0d7e --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnitySetUpAttribute.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: cc6401f13df54ba44bfd7cdc93c7d64d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityTearDownAttribute.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityTearDownAttribute.cs new file mode 100644 index 0000000..dec605c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityTearDownAttribute.cs @@ -0,0 +1,10 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.TestTools +{ + [AttributeUsage(AttributeTargets.Method)] + public class UnityTearDownAttribute : NUnitAttribute + { + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityTearDownAttribute.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityTearDownAttribute.cs.meta new file mode 100644 index 0000000..db19904 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityTearDownAttribute.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 600f4b74746dbf944901257f81a8af6d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityTestAttribute.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityTestAttribute.cs new file mode 100644 index 0000000..06cdd6b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityTestAttribute.cs @@ -0,0 +1,43 @@ +using System; +using NUnit.Framework; +using NUnit.Framework.Internal.Commands; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; +using NUnit.Framework.Internal.Builders; +using UnityEngine.TestRunner.NUnitExtensions.Runner; + +namespace UnityEngine.TestTools +{ + [AttributeUsage(AttributeTargets.Method)] + public class UnityTestAttribute : CombiningStrategyAttribute, IWrapSetUpTearDown, ISimpleTestBuilder, IImplyFixture + { + public UnityTestAttribute() : base(new UnityCombinatorialStrategy(), new ParameterDataSourceProvider()) {} + + private readonly NUnitTestCaseBuilder _builder = new NUnitTestCaseBuilder(); + + TestMethod ISimpleTestBuilder.BuildFrom(IMethodInfo method, Test suite) + { + TestCaseParameters parms = new TestCaseParameters + { + ExpectedResult = new object(), + HasExpectedResult = true + }; + + var t = _builder.BuildTestMethod(method, suite, parms); + + if (t.parms != null) + t.parms.HasExpectedResult = false; + return t; + } + + public TestCommand Wrap(TestCommand command) + { + return new OuterUnityTestActionCommand( + new EnumerableSetUpTearDownCommand( + new SetUpTearDownCommand( + new TestActionCommand( + new UnityLogCheckDelegatingCommand( + new EnumerableTestMethodCommand((TestMethod)command.Test)))))); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityTestAttribute.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityTestAttribute.cs.meta new file mode 100644 index 0000000..e2fcb63 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Attributes/UnityTestAttribute.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fedb0f9e5006b1943abae52f52f08a1a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/BaseDelegator.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/BaseDelegator.cs new file mode 100644 index 0000000..65bcbba --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/BaseDelegator.cs @@ -0,0 +1,58 @@ +using System; +using System.Threading; +using NUnit.Framework.Internal; + +namespace UnityEngine.TestTools.NUnitExtensions +{ + internal abstract class BaseDelegator + { + protected ManualResetEvent m_Signal = new ManualResetEvent(false); + + protected object m_Result; + protected Exception m_Exception; + protected ITestExecutionContext m_Context; + + protected bool m_Aborted; + + protected object HandleResult() + { + SetCurrentTestContext(); + if (m_Exception != null) + { + var temp = m_Exception; + m_Exception = null; + throw temp; + } + var tempResult = m_Result; + m_Result = null; + return tempResult; + } + + protected void WaitForSignal() + { + while (!m_Signal.WaitOne(100)) + { + if (m_Aborted) + { + m_Aborted = false; + Reflect.MethodCallWrapper = null; + throw new Exception(); + } + } + } + + public void Abort() + { + m_Aborted = true; + } + + protected void SetCurrentTestContext() + { + var prop = typeof(TestExecutionContext).GetProperty("CurrentContext"); + if (prop != null) + { + prop.SetValue(null, m_Context, null); + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/BaseDelegator.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/BaseDelegator.cs.meta new file mode 100644 index 0000000..613537b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/BaseDelegator.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 37cea569bfefafe49a1513c4d7f0e9eb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands.meta new file mode 100644 index 0000000..75dd09d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6b72875690e0f7343911e06af3145bd5 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/BeforeAfterTestCommandBase.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/BeforeAfterTestCommandBase.cs new file mode 100644 index 0000000..af350f1 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/BeforeAfterTestCommandBase.cs @@ -0,0 +1,196 @@ +using System; +using System.Collections; +using System.Linq; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; +using NUnit.Framework.Internal.Commands; +using UnityEngine.TestRunner.NUnitExtensions; +using UnityEngine.TestRunner.NUnitExtensions.Runner; +using UnityEngine.TestTools.Logging; +using UnityEngine.TestTools.TestRunner; + +namespace UnityEngine.TestTools +{ + internal abstract class BeforeAfterTestCommandBase : DelegatingTestCommand, IEnumerableTestMethodCommand + { + private string m_BeforeErrorPrefix; + private string m_AfterErrorPrefix; + private bool m_SkipYieldAfterActions; + protected BeforeAfterTestCommandBase(TestCommand innerCommand, string beforeErrorPrefix, string afterErrorPrefix, bool skipYieldAfterActions = false) + : base(innerCommand) + { + m_BeforeErrorPrefix = beforeErrorPrefix; + m_AfterErrorPrefix = afterErrorPrefix; + m_SkipYieldAfterActions = skipYieldAfterActions; + } + + protected T[] BeforeActions = new T[0]; + + protected T[] AfterActions = new T[0]; + + protected abstract IEnumerator InvokeBefore(T action, Test test, UnityTestExecutionContext context); + + protected abstract IEnumerator InvokeAfter(T action, Test test, UnityTestExecutionContext context); + + protected abstract BeforeAfterTestCommandState GetState(UnityTestExecutionContext context); + + public IEnumerable ExecuteEnumerable(ITestExecutionContext context) + { + var unityContext = (UnityTestExecutionContext)context; + var state = GetState(unityContext); + + if (state == null) + { + // We do not expect a state to exist in playmode + state = ScriptableObject.CreateInstance(); + } + + state.ApplyTestResult(context.CurrentResult); + + while (state.NextBeforeStepIndex < BeforeActions.Length) + { + var action = BeforeActions[state.NextBeforeStepIndex]; + var enumerator = InvokeBefore(action, Test, unityContext); + ActivePcHelper.SetEnumeratorPC(enumerator, state.NextBeforeStepPc); + + using (var logScope = new LogScope()) + { + while (true) + { + try + { + if (!enumerator.MoveNext()) + { + break; + } + } + catch (Exception ex) + { + state.TestHasRun = true; + context.CurrentResult.RecordPrefixedException(m_BeforeErrorPrefix, ex); + state.StoreTestResult(context.CurrentResult); + break; + } + + state.NextBeforeStepPc = ActivePcHelper.GetEnumeratorPC(enumerator); + state.StoreTestResult(context.CurrentResult); + if (m_SkipYieldAfterActions) + { + break; + } + else + { + yield return enumerator.Current; + } + } + + if (logScope.AnyFailingLogs()) + { + state.TestHasRun = true; + context.CurrentResult.RecordPrefixedError(m_BeforeErrorPrefix, new UnhandledLogMessageException(logScope.FailingLogs.First()).Message); + state.StoreTestResult(context.CurrentResult); + } + } + + state.NextBeforeStepIndex++; + state.NextBeforeStepPc = 0; + } + + if (!state.TestHasRun) + { + if (innerCommand is IEnumerableTestMethodCommand) + { + var executeEnumerable = ((IEnumerableTestMethodCommand)innerCommand).ExecuteEnumerable(context); + foreach (var iterator in executeEnumerable) + { + state.StoreTestResult(context.CurrentResult); + yield return iterator; + } + } + else + { + context.CurrentResult = innerCommand.Execute(context); + state.StoreTestResult(context.CurrentResult); + } + + state.TestHasRun = true; + } + + while (state.NextAfterStepIndex < AfterActions.Length) + { + state.TestAfterStarted = true; + var action = AfterActions[state.NextAfterStepIndex]; + var enumerator = InvokeAfter(action, Test, unityContext); + ActivePcHelper.SetEnumeratorPC(enumerator, state.NextAfterStepPc); + + using (var logScope = new LogScope()) + { + while (true) + { + try + { + if (!enumerator.MoveNext()) + { + break; + } + } + catch (Exception ex) + { + context.CurrentResult.RecordPrefixedException(m_AfterErrorPrefix, ex); + state.StoreTestResult(context.CurrentResult); + break; + } + + state.NextAfterStepPc = ActivePcHelper.GetEnumeratorPC(enumerator); + state.StoreTestResult(context.CurrentResult); + + if (m_SkipYieldAfterActions) + { + break; + } + else + { + yield return enumerator.Current; + } + } + + if (logScope.AnyFailingLogs()) + { + state.TestHasRun = true; + context.CurrentResult.RecordPrefixedError(m_AfterErrorPrefix, new UnhandledLogMessageException(logScope.FailingLogs.First()).Message); + state.StoreTestResult(context.CurrentResult); + } + } + + state.NextAfterStepIndex++; + state.NextAfterStepPc = 0; + } + + state.Reset(); + } + + public override TestResult Execute(ITestExecutionContext context) + { + throw new NotImplementedException("Use ExecuteEnumerable"); + } + + private static TestCommandPcHelper pcHelper; + + internal static TestCommandPcHelper ActivePcHelper + { + get + { + if (pcHelper == null) + { + pcHelper = new TestCommandPcHelper(); + } + + return pcHelper; + } + set + { + pcHelper = value; + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/BeforeAfterTestCommandBase.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/BeforeAfterTestCommandBase.cs.meta new file mode 100644 index 0000000..e3e4819 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/BeforeAfterTestCommandBase.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: cbbca1d8a0434be4bbc7f165523763ac +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/BeforeAfterTestCommandState.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/BeforeAfterTestCommandState.cs new file mode 100644 index 0000000..273b61c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/BeforeAfterTestCommandState.cs @@ -0,0 +1,49 @@ +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; + +namespace UnityEngine.TestTools +{ + internal class BeforeAfterTestCommandState : ScriptableObject + { + public int NextBeforeStepIndex; + public int NextBeforeStepPc; + public int NextAfterStepIndex; + public int NextAfterStepPc; + public bool TestHasRun; + public TestStatus CurrentTestResultStatus; + public string CurrentTestResultLabel; + public FailureSite CurrentTestResultSite; + public string CurrentTestMessage; + public string CurrentTestStrackTrace; + public bool TestAfterStarted; + + public void Reset() + { + NextBeforeStepIndex = 0; + NextBeforeStepPc = 0; + NextAfterStepIndex = 0; + NextAfterStepPc = 0; + TestHasRun = false; + CurrentTestResultStatus = TestStatus.Inconclusive; + CurrentTestResultLabel = null; + CurrentTestResultSite = default(FailureSite); + CurrentTestMessage = null; + CurrentTestStrackTrace = null; + TestAfterStarted = false; + } + + public void StoreTestResult(TestResult result) + { + CurrentTestResultStatus = result.ResultState.Status; + CurrentTestResultLabel = result.ResultState.Label; + CurrentTestResultSite = result.ResultState.Site; + CurrentTestMessage = result.Message; + CurrentTestStrackTrace = result.StackTrace; + } + + public void ApplyTestResult(TestResult result) + { + result.SetResult(new ResultState(CurrentTestResultStatus, CurrentTestResultLabel, CurrentTestResultSite), CurrentTestMessage, CurrentTestStrackTrace); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/BeforeAfterTestCommandState.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/BeforeAfterTestCommandState.cs.meta new file mode 100644 index 0000000..da9bd2b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/BeforeAfterTestCommandState.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7f65567c9026afb4db5de3355accc636 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableApplyChangesToContextCommand.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableApplyChangesToContextCommand.cs new file mode 100644 index 0000000..d452f24 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableApplyChangesToContextCommand.cs @@ -0,0 +1,34 @@ + +using System.Collections; +using System.Collections.Generic; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; +using NUnit.Framework.Internal.Commands; +using UnityEngine.TestRunner.NUnitExtensions.Runner; + +namespace UnityEngine.TestTools +{ + internal class EnumerableApplyChangesToContextCommand : ApplyChangesToContextCommand, IEnumerableTestMethodCommand + { + public EnumerableApplyChangesToContextCommand(TestCommand innerCommand, IEnumerable changes) + : base(innerCommand, changes) { } + + public IEnumerable ExecuteEnumerable(ITestExecutionContext context) + { + ApplyChanges(context); + + if (innerCommand is IEnumerableTestMethodCommand) + { + var executeEnumerable = ((IEnumerableTestMethodCommand)innerCommand).ExecuteEnumerable(context); + foreach (var iterator in executeEnumerable) + { + yield return iterator; + } + } + else + { + context.CurrentResult = innerCommand.Execute(context); + } + } + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableApplyChangesToContextCommand.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableApplyChangesToContextCommand.cs.meta new file mode 100644 index 0000000..6a955ca --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableApplyChangesToContextCommand.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3b4429eff9fcffb48b006e8edcc90338 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableSetUpTearDownCommand.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableSetUpTearDownCommand.cs new file mode 100644 index 0000000..e5bf7b8 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableSetUpTearDownCommand.cs @@ -0,0 +1,44 @@ +using System; +using System.Collections; +using System.Linq; +using System.Reflection; +using NUnit.Framework.Internal; +using NUnit.Framework.Internal.Commands; +using UnityEngine.TestRunner.NUnitExtensions.Runner; + +namespace UnityEngine.TestTools +{ + internal class EnumerableSetUpTearDownCommand : BeforeAfterTestCommandBase + { + public EnumerableSetUpTearDownCommand(TestCommand innerCommand) + : base(innerCommand, "SetUp", "TearDown") + { + if (Test.TypeInfo.Type != null) + { + BeforeActions = GetMethodsWithAttributeFromFixture(Test.TypeInfo.Type, typeof(UnitySetUpAttribute)); + AfterActions = GetMethodsWithAttributeFromFixture(Test.TypeInfo.Type, typeof(UnityTearDownAttribute)).Reverse().ToArray(); + } + } + + private static MethodInfo[] GetMethodsWithAttributeFromFixture(Type fixtureType, Type setUpType) + { + MethodInfo[] methodsWithAttribute = Reflect.GetMethodsWithAttribute(fixtureType, setUpType, true); + return methodsWithAttribute.Where(x => x.ReturnType == typeof(IEnumerator)).ToArray(); + } + + protected override IEnumerator InvokeBefore(MethodInfo action, Test test, UnityTestExecutionContext context) + { + return (IEnumerator)Reflect.InvokeMethod(action, context.TestObject); + } + + protected override IEnumerator InvokeAfter(MethodInfo action, Test test, UnityTestExecutionContext context) + { + return (IEnumerator)Reflect.InvokeMethod(action, context.TestObject); + } + + protected override BeforeAfterTestCommandState GetState(UnityTestExecutionContext context) + { + return context.SetUpTearDownState; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableSetUpTearDownCommand.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableSetUpTearDownCommand.cs.meta new file mode 100644 index 0000000..e61d049 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableSetUpTearDownCommand.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: dd85a35169d313840a0874aea1a28629 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableTestMethodCommand.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableTestMethodCommand.cs new file mode 100644 index 0000000..7a548ec --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableTestMethodCommand.cs @@ -0,0 +1,86 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using NUnit.Framework; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; +using NUnit.Framework.Internal.Commands; +using NUnit.Framework.Internal.Execution; +using UnityEngine.TestRunner.NUnitExtensions.Runner; +using UnityEngine.TestTools.TestRunner; + +namespace UnityEngine.TestTools +{ + internal class EnumerableTestMethodCommand : TestCommand, IEnumerableTestMethodCommand + { + private readonly TestMethod testMethod; + + public EnumerableTestMethodCommand(TestMethod testMethod) + : base(testMethod) + { + this.testMethod = testMethod; + } + + public IEnumerable ExecuteEnumerable(ITestExecutionContext context) + { + yield return null; + + var currentExecutingTestEnumerator = new TestEnumeratorWrapper(testMethod).GetEnumerator(context); + if (currentExecutingTestEnumerator != null) + { + var testEnumeraterYieldInstruction = new TestEnumerator(context, currentExecutingTestEnumerator); + + yield return testEnumeraterYieldInstruction; + + var enumerator = testEnumeraterYieldInstruction.Execute(); + + var executingEnumerator = ExecuteEnumerableAndRecordExceptions(enumerator, context); + while (executingEnumerator.MoveNext()) + { + yield return executingEnumerator.Current; + } + } + else + { + if (context.CurrentResult.ResultState != ResultState.Ignored) + { + context.CurrentResult.SetResult(ResultState.Success); + } + } + } + + private static IEnumerator ExecuteEnumerableAndRecordExceptions(IEnumerator enumerator, ITestExecutionContext context) + { + while (true) + { + try + { + if (!enumerator.MoveNext()) + { + break; + } + } + catch (Exception ex) + { + context.CurrentResult.RecordException(ex); + break; + } + + if (enumerator.Current is IEnumerator) + { + var current = (IEnumerator)enumerator.Current; + yield return ExecuteEnumerableAndRecordExceptions(current, context); + } + else + { + yield return enumerator.Current; + } + } + } + + public override TestResult Execute(ITestExecutionContext context) + { + throw new NotImplementedException("Use ExecuteEnumerable"); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableTestMethodCommand.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableTestMethodCommand.cs.meta new file mode 100644 index 0000000..4631e40 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/EnumerableTestMethodCommand.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 19a6f000f81e24c4a826c1abd43e77c7 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/ImmediateEnumerableCommand.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/ImmediateEnumerableCommand.cs new file mode 100644 index 0000000..ae1b7b7 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/ImmediateEnumerableCommand.cs @@ -0,0 +1,32 @@ +using System; +using System.Collections; +using NUnit.Framework.Internal; +using NUnit.Framework.Internal.Commands; +using UnityEngine.TestRunner.NUnitExtensions.Runner; + +namespace UnityEngine.TestTools +{ + internal class ImmediateEnumerableCommand : DelegatingTestCommand + { + public ImmediateEnumerableCommand(TestCommand innerCommand) + : base(innerCommand) { } + + public override TestResult Execute(ITestExecutionContext context) + { + if (innerCommand is IEnumerableTestMethodCommand) + { + var executeEnumerable = ((IEnumerableTestMethodCommand)innerCommand).ExecuteEnumerable(context); + foreach (var iterator in executeEnumerable) + { + if (iterator != null) + { + throw new Exception("Only null can be yielded at this point."); + } + } + return context.CurrentResult; + } + + return innerCommand.Execute(context); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/ImmediateEnumerableCommand.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/ImmediateEnumerableCommand.cs.meta new file mode 100644 index 0000000..e650b54 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/ImmediateEnumerableCommand.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8349e42a2b30c7a4abd8678c203428ba +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/OuterUnityTestActionCommand.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/OuterUnityTestActionCommand.cs new file mode 100644 index 0000000..a0646f1 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/OuterUnityTestActionCommand.cs @@ -0,0 +1,49 @@ +using System.Collections; +using System.Collections.Generic; +using System.Reflection; +using NUnit.Framework.Internal; +using NUnit.Framework.Internal.Commands; +using UnityEngine.TestRunner.NUnitExtensions.Runner; + +namespace UnityEngine.TestTools +{ + internal class OuterUnityTestActionCommand : BeforeAfterTestCommandBase + { + public OuterUnityTestActionCommand(TestCommand innerCommand) + : base(innerCommand, "BeforeTest", "AfterTest") + { + if (Test.TypeInfo.Type != null) + { + BeforeActions = GetUnityTestActionsFromMethod(Test.Method.MethodInfo); + AfterActions = BeforeActions; + } + } + + private static IOuterUnityTestAction[] GetUnityTestActionsFromMethod(MethodInfo method) + { + var attributes = method.GetCustomAttributes(false); + List actions = new List(); + foreach (var attribute in attributes) + { + if (attribute is IOuterUnityTestAction) + actions.Add(attribute as IOuterUnityTestAction); + } + return actions.ToArray(); + } + + protected override IEnumerator InvokeBefore(IOuterUnityTestAction action, Test test, UnityTestExecutionContext context) + { + return action.BeforeTest(test); + } + + protected override IEnumerator InvokeAfter(IOuterUnityTestAction action, Test test, UnityTestExecutionContext context) + { + return action.AfterTest(test); + } + + protected override BeforeAfterTestCommandState GetState(UnityTestExecutionContext context) + { + return context.OuterUnityTestActionState; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/OuterUnityTestActionCommand.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/OuterUnityTestActionCommand.cs.meta new file mode 100644 index 0000000..6415872 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/OuterUnityTestActionCommand.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0d4fc309a0784294c8ab658b53b12320 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/SetUpTearDownCommand.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/SetUpTearDownCommand.cs new file mode 100644 index 0000000..c6ff0d9 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/SetUpTearDownCommand.cs @@ -0,0 +1,48 @@ +using System; +using System.Collections; +using System.Linq; +using System.Reflection; +using NUnit.Framework; +using NUnit.Framework.Internal; +using NUnit.Framework.Internal.Commands; +using NUnit.Framework.Internal.Execution; +using UnityEngine.TestRunner.NUnitExtensions.Runner; + +namespace UnityEngine.TestTools +{ + internal class SetUpTearDownCommand : BeforeAfterTestCommandBase + { + public SetUpTearDownCommand(TestCommand innerCommand) + : base(innerCommand, "SetUp", "TearDown", true) + { + if (Test.TypeInfo.Type != null) + { + BeforeActions = GetMethodsWithAttributeFromFixture(Test.TypeInfo.Type, typeof(SetUpAttribute)); + AfterActions = GetMethodsWithAttributeFromFixture(Test.TypeInfo.Type, typeof(TearDownAttribute)).Reverse().ToArray(); + } + } + + private static MethodInfo[] GetMethodsWithAttributeFromFixture(Type fixtureType, Type setUpType) + { + MethodInfo[] methodsWithAttribute = Reflect.GetMethodsWithAttribute(fixtureType, setUpType, true); + return methodsWithAttribute.Where(x => x.ReturnType == typeof(void)).ToArray(); + } + + protected override IEnumerator InvokeBefore(MethodInfo action, Test test, UnityTestExecutionContext context) + { + Reflect.InvokeMethod(action, context.TestObject); + yield return null; + } + + protected override IEnumerator InvokeAfter(MethodInfo action, Test test, UnityTestExecutionContext context) + { + Reflect.InvokeMethod(action, context.TestObject); + yield return null; + } + + protected override BeforeAfterTestCommandState GetState(UnityTestExecutionContext context) + { + return null; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/SetUpTearDownCommand.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/SetUpTearDownCommand.cs.meta new file mode 100644 index 0000000..28b84ac --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/SetUpTearDownCommand.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e0db3f3921670cd4ca2e925737c3fba4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/TestActionCommand.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/TestActionCommand.cs new file mode 100644 index 0000000..9b99dd0 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/TestActionCommand.cs @@ -0,0 +1,53 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Reflection; +using NUnit.Framework; +using NUnit.Framework.Internal; +using NUnit.Framework.Internal.Commands; +using UnityEngine.TestRunner.NUnitExtensions.Runner; + +namespace UnityEngine.TestTools +{ + internal class TestActionCommand : BeforeAfterTestCommandBase + { + public TestActionCommand(TestCommand innerCommand) + : base(innerCommand, "BeforeTest", "AfterTest", true) + { + if (Test.TypeInfo.Type != null) + { + BeforeActions = GetTestActionsFromMethod(Test.Method.MethodInfo); + AfterActions = BeforeActions; + } + } + + private static ITestAction[] GetTestActionsFromMethod(MethodInfo method) + { + var attributes = method.GetCustomAttributes(false); + List actions = new List(); + foreach (var attribute in attributes) + { + if (attribute is ITestAction) + actions.Add(attribute as ITestAction); + } + return actions.ToArray(); + } + + protected override IEnumerator InvokeBefore(ITestAction action, Test test, UnityTestExecutionContext context) + { + action.BeforeTest(test); + yield return null; + } + + protected override IEnumerator InvokeAfter(ITestAction action, Test test, UnityTestExecutionContext context) + { + action.AfterTest(test); + yield return null; + } + + protected override BeforeAfterTestCommandState GetState(UnityTestExecutionContext context) + { + return null; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/TestActionCommand.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/TestActionCommand.cs.meta new file mode 100644 index 0000000..3f44e9d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/TestActionCommand.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 2de8ba3b840049641897e0da7ce1d5cd +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/TestCommandPcHelper.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/TestCommandPcHelper.cs new file mode 100644 index 0000000..26eb4b0 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/TestCommandPcHelper.cs @@ -0,0 +1,18 @@ +using System; +using System.Collections; + +namespace UnityEngine.TestTools +{ + internal class TestCommandPcHelper + { + public virtual void SetEnumeratorPC(IEnumerator enumerator, int pc) + { + // Noop implementation used in playmode. + } + + public virtual int GetEnumeratorPC(IEnumerator enumerator) + { + return 0; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/TestCommandPcHelper.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/TestCommandPcHelper.cs.meta new file mode 100644 index 0000000..1dbd4f4 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Commands/TestCommandPcHelper.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 33e6b78c96bb0694e96383e3c56b7b54 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/ConstructDelegator.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/ConstructDelegator.cs new file mode 100644 index 0000000..dd7fbc2 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/ConstructDelegator.cs @@ -0,0 +1,141 @@ +using System; +using System.Linq; +using NUnit.Framework.Internal; +using UnityEngine.TestRunner.NUnitExtensions.Runner; +using UnityEngine.TestTools.Logging; +using UnityEngine.TestTools.TestRunner; + +namespace UnityEngine.TestTools.NUnitExtensions +{ + /// + /// Specialization of BaseDelegator that makes sure objects are created on the MainThread. + /// It also deals with ScriptableObjects so that tests can survive assembly reload. + /// + internal class ConstructDelegator + { + private Type m_RequestedType; + private object[] m_Arguments; + + private ScriptableObject m_CurrentRunningTest; + private readonly IStateSerializer m_StateSerializer; + + protected Exception m_Exception; + protected object m_Result; + protected ITestExecutionContext m_Context; + + public ConstructDelegator(IStateSerializer stateSerializer) + { + m_StateSerializer = stateSerializer; + } + + protected object HandleResult() + { + SetCurrentTestContext(); + if (m_Exception != null) + { + var temp = m_Exception; + m_Exception = null; + throw temp; + } + var tempResult = m_Result; + m_Result = null; + return tempResult; + } + + protected void SetCurrentTestContext() + { + var prop = typeof(UnityTestExecutionContext).GetProperty("CurrentContext"); + if (prop != null) + { + prop.SetValue(null, m_Context, null); + } + } + + public object Delegate(Type type, object[] arguments) + { + AssertState(); + m_Context = UnityTestExecutionContext.CurrentContext; + + m_RequestedType = type; + m_Arguments = arguments; + + using (var logScope = new LogScope()) + { + Execute(logScope); + } + + return HandleResult(); + } + + private void AssertState() + { + if (m_RequestedType != null) + { + throw new Exception("Constructor not executed yet"); + } + } + + public bool HasAction() + { + return m_RequestedType != null; + } + + public void Execute(LogScope logScope) + { + try + { + if (typeof(ScriptableObject).IsAssignableFrom(m_RequestedType)) + { + if (m_CurrentRunningTest != null && m_RequestedType != m_CurrentRunningTest.GetType()) + { + DestroyCurrentTestObjectIfExists(); + } + if (m_CurrentRunningTest == null) + { + if (m_StateSerializer.CanRestoreFromScriptableObject(m_RequestedType)) + { + m_CurrentRunningTest = m_StateSerializer.RestoreScriptableObjectInstance(); + } + else + { + m_CurrentRunningTest = ScriptableObject.CreateInstance(m_RequestedType); + } + } + m_Result = m_CurrentRunningTest; + } + else + { + DestroyCurrentTestObjectIfExists(); + m_Result = Activator.CreateInstance(m_RequestedType, m_Arguments); + if (m_StateSerializer.CanRestoreFromJson(m_RequestedType)) + { + m_StateSerializer.RestoreClassFromJson(ref m_Result); + } + } + if (logScope.AnyFailingLogs()) + { + var failingLog = logScope.FailingLogs.First(); + throw new UnhandledLogMessageException(failingLog); + } + if (logScope.ExpectedLogs.Any()) + throw new UnexpectedLogMessageException(LogScope.Current.ExpectedLogs.Peek()); + } + catch (Exception e) + { + m_Exception = e; + } + finally + { + m_RequestedType = null; + m_Arguments = null; + } + } + + public void DestroyCurrentTestObjectIfExists() + { + if (m_CurrentRunningTest == null) + return; + Object.DestroyImmediate(m_CurrentRunningTest); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/ConstructDelegator.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/ConstructDelegator.cs.meta new file mode 100644 index 0000000..cb04fc8 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/ConstructDelegator.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b42e1db66fe9c634798674cb9e1df2ca +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Filters.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Filters.meta new file mode 100644 index 0000000..a0aa994 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Filters.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c3de99f9efc582a48995bc8e8c2df418 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Filters/AssemblyNameFilter.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Filters/AssemblyNameFilter.cs new file mode 100644 index 0000000..d53a2d0 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Filters/AssemblyNameFilter.cs @@ -0,0 +1,25 @@ +using System; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal.Filters; + +namespace UnityEngine.TestRunner.NUnitExtensions.Filters +{ + internal class AssemblyNameFilter : ValueMatchFilter + { + public AssemblyNameFilter(string assemblyName) : base(assemblyName) {} + + public override bool Match(ITest test) + { + string assemblyName = string.Empty; + //Assembly fullname is in the format "Assembly-name, meta data ...", so extract the name by looking for the comma + if (test.TypeInfo != null && test.TypeInfo.Assembly != null && test.TypeInfo.FullName != null) + assemblyName = test.TypeInfo.Assembly.FullName.Substring(0, test.TypeInfo.Assembly.FullName.IndexOf(',')).TrimEnd(','); + return ExpectedValue.Equals(assemblyName, StringComparison.OrdinalIgnoreCase); + } + + protected override string ElementName + { + get { return "id"; } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Filters/AssemblyNameFilter.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Filters/AssemblyNameFilter.cs.meta new file mode 100644 index 0000000..2b89745 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Filters/AssemblyNameFilter.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 91319408591cec1478efd3c62f9f418a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Filters/CategoryFilterExtended.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Filters/CategoryFilterExtended.cs new file mode 100644 index 0000000..58430e8 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Filters/CategoryFilterExtended.cs @@ -0,0 +1,36 @@ +using System.Collections; +using System.Linq; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; +using NUnit.Framework.Internal.Filters; + +namespace UnityEngine.TestRunner.NUnitExtensions.Filters +{ + internal class CategoryFilterExtended : CategoryFilter + { + public static string k_DefaultCategory = "Uncategorized"; + + public CategoryFilterExtended(string name) : base(name) + { + } + + public override bool Match(ITest test) + { + IList testCategories = test.Properties[PropertyNames.Category].Cast().ToList(); + + if (test is TestMethod) + { + // Do not count tests with no attribute as Uncategorized if test fixture class has at least one attribute + // The test inherits the attribute from the test fixture + IList fixtureCategories = test.Parent.Properties[PropertyNames.Category].Cast().ToList(); + if (fixtureCategories.Count > 0) + return false; + } + + if (testCategories.Count == 0 && ExpectedValue == k_DefaultCategory && test is TestMethod) + return true; + + return base.Match(test); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Filters/CategoryFilterExtended.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Filters/CategoryFilterExtended.cs.meta new file mode 100644 index 0000000..a115cd2 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Filters/CategoryFilterExtended.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ebeedaa04bb53e24ba2e7fb6745e3fd3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/IStateSerializer.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/IStateSerializer.cs new file mode 100644 index 0000000..951d079 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/IStateSerializer.cs @@ -0,0 +1,12 @@ +using System; + +namespace UnityEngine.TestTools.NUnitExtensions +{ + internal interface IStateSerializer + { + ScriptableObject RestoreScriptableObjectInstance(); + void RestoreClassFromJson(ref object instance); + bool CanRestoreFromJson(Type requestedType); + bool CanRestoreFromScriptableObject(Type requestedType); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/IStateSerializer.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/IStateSerializer.cs.meta new file mode 100644 index 0000000..1d32715 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/IStateSerializer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5f875a14565308a40a5262d2504da705 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner.meta new file mode 100644 index 0000000..1604cb5 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 37888acc09d9ee848bf9559f06645c45 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/CompositeWorkItem.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/CompositeWorkItem.cs new file mode 100644 index 0000000..260e3cf --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/CompositeWorkItem.cs @@ -0,0 +1,342 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using System.Reflection; +using NUnit.Framework; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; +using NUnit.Framework.Internal.Commands; +using NUnit.Framework.Internal.Execution; +using UnityEngine.TestTools.Logging; +using UnityEngine.TestTools.TestRunner; + +namespace UnityEngine.TestRunner.NUnitExtensions.Runner +{ + internal class CompositeWorkItem : UnityWorkItem + { + private readonly TestSuite _suite; + private readonly TestSuiteResult _suiteResult; + private readonly ITestFilter _childFilter; + private TestCommand _setupCommand; + private TestCommand _teardownCommand; + + public List Children { get; private set; } + + private int _countOrder; + + private CountdownEvent _childTestCountdown; + + public CompositeWorkItem(TestSuite suite, ITestFilter childFilter, WorkItemFactory factory) + : base(suite, factory) + { + _suite = suite; + _suiteResult = Result as TestSuiteResult; + _childFilter = childFilter; + _countOrder = 0; + } + + protected override IEnumerable PerformWork() + { + InitializeSetUpAndTearDownCommands(); + + if (UnityTestExecutionContext.CurrentContext != null && m_DontRunRestoringResult && EditModeTestCallbacks.RestoringTestContext != null) + { + EditModeTestCallbacks.RestoringTestContext(); + } + + if (!CheckForCancellation()) + if (Test.RunState == RunState.Explicit && !_childFilter.IsExplicitMatch(Test)) + SkipFixture(ResultState.Explicit, GetSkipReason(), null); + else + switch (Test.RunState) + { + default: + case RunState.Runnable: + case RunState.Explicit: + Result.SetResult(ResultState.Success); + + CreateChildWorkItems(); + + if (Children.Count > 0) + { + if (!m_DontRunRestoringResult) + { + //This is needed to give the editor a chance to go out of playmode if needed before creating objects. + //If we do not, the objects could be automatically destroyed when exiting playmode and could result in errors later on + yield return null; + PerformOneTimeSetUp(); + } + + if (!CheckForCancellation()) + { + switch (Result.ResultState.Status) + { + case TestStatus.Passed: + foreach (var child in RunChildren()) + { + if (CheckForCancellation()) + { + yield break; + } + + yield return child; + } + break; + case TestStatus.Skipped: + case TestStatus.Inconclusive: + case TestStatus.Failed: + SkipChildren(_suite, Result.ResultState.WithSite(FailureSite.Parent), "OneTimeSetUp: " + Result.Message); + break; + } + } + + if (Context.ExecutionStatus != TestExecutionStatus.AbortRequested && !m_DontRunRestoringResult) + { + PerformOneTimeTearDown(); + } + } + break; + + case RunState.Skipped: + SkipFixture(ResultState.Skipped, GetSkipReason(), null); + break; + + case RunState.Ignored: + SkipFixture(ResultState.Ignored, GetSkipReason(), null); + break; + + case RunState.NotRunnable: + SkipFixture(ResultState.NotRunnable, GetSkipReason(), GetProviderStackTrace()); + break; + } + if (!ResultedInDomainReload) + { + WorkItemComplete(); + } + } + + private bool CheckForCancellation() + { + if (Context.ExecutionStatus != TestExecutionStatus.Running) + { + Result.SetResult(ResultState.Cancelled, "Test cancelled by user"); + return true; + } + + return false; + } + + private void InitializeSetUpAndTearDownCommands() + { + List setUpTearDownItems = _suite.TypeInfo != null + ? CommandBuilder.BuildSetUpTearDownList(_suite.TypeInfo.Type, typeof(OneTimeSetUpAttribute), typeof(OneTimeTearDownAttribute)) + : new List(); + + var actionItems = new List(); + foreach (ITestAction action in Actions) + { + bool applyToSuite = (action.Targets & ActionTargets.Suite) == ActionTargets.Suite + || action.Targets == ActionTargets.Default && !(Test is ParameterizedMethodSuite); + + bool applyToTest = (action.Targets & ActionTargets.Test) == ActionTargets.Test + && !(Test is ParameterizedMethodSuite); + + if (applyToSuite) + actionItems.Add(new TestActionItem(action)); + + if (applyToTest) + Context.UpstreamActions.Add(action); + } + + _setupCommand = CommandBuilder.MakeOneTimeSetUpCommand(_suite, setUpTearDownItems, actionItems); + _teardownCommand = CommandBuilder.MakeOneTimeTearDownCommand(_suite, setUpTearDownItems, actionItems); + } + + private void PerformOneTimeSetUp() + { + var logScope = new LogScope(); + try + { + _setupCommand.Execute(Context); + } + catch (Exception ex) + { + if (ex is NUnitException || ex is TargetInvocationException) + ex = ex.InnerException; + + Result.RecordException(ex, FailureSite.SetUp); + } + + if (logScope.AnyFailingLogs()) + { + Result.RecordException(new UnhandledLogMessageException(logScope.FailingLogs.First())); + } + logScope.Dispose(); + } + + private IEnumerable RunChildren() + { + int childCount = Children.Count; + if (childCount == 0) + throw new InvalidOperationException("RunChildren called but item has no children"); + + _childTestCountdown = new CountdownEvent(childCount); + + foreach (UnityWorkItem child in Children) + { + if (CheckForCancellation()) + { + yield break; + } + + var unityTestExecutionContext = new UnityTestExecutionContext(Context); + child.InitializeContext(unityTestExecutionContext); + + var enumerable = child.Execute().GetEnumerator(); + + while (true) + { + if (!enumerable.MoveNext()) + { + break; + } + ResultedInDomainReload |= child.ResultedInDomainReload; + yield return enumerable.Current; + } + + _suiteResult.AddResult(child.Result); + childCount--; + } + + if (childCount > 0) + { + while (childCount-- > 0) + CountDownChildTest(); + } + } + + private void CreateChildWorkItems() + { + Children = new List(); + var testSuite = _suite; + + foreach (ITest test in testSuite.Tests) + { + if (_childFilter.Pass(test)) + { + var child = m_Factory.Create(test, _childFilter); + + if (test.Properties.ContainsKey(PropertyNames.Order)) + { + Children.Insert(0, child); + _countOrder++; + } + else + { + Children.Add(child); + } + } + } + + if (_countOrder != 0) SortChildren(); + } + + private class UnityWorkItemOrderComparer : IComparer + { + public int Compare(UnityWorkItem x, UnityWorkItem y) + { + var xKey = int.MaxValue; + var yKey = int.MaxValue; + + if (x.Test.Properties.ContainsKey(PropertyNames.Order)) + xKey = (int)x.Test.Properties[PropertyNames.Order][0]; + + if (y.Test.Properties.ContainsKey(PropertyNames.Order)) + yKey = (int)y.Test.Properties[PropertyNames.Order][0]; + + return xKey.CompareTo(yKey); + } + } + + private void SortChildren() + { + Children.Sort(0, _countOrder, new UnityWorkItemOrderComparer()); + } + + private void SkipFixture(ResultState resultState, string message, string stackTrace) + { + Result.SetResult(resultState.WithSite(FailureSite.SetUp), message, StackFilter.Filter(stackTrace)); + SkipChildren(_suite, resultState.WithSite(FailureSite.Parent), "OneTimeSetUp: " + message); + } + + private void SkipChildren(TestSuite suite, ResultState resultState, string message) + { + foreach (Test child in suite.Tests) + { + if (_childFilter.Pass(child)) + { + Context.Listener.TestStarted(child); + TestResult childResult = child.MakeTestResult(); + childResult.SetResult(resultState, message); + _suiteResult.AddResult(childResult); + + if (child.IsSuite) + SkipChildren((TestSuite)child, resultState, message); + + Context.Listener.TestFinished(childResult); + } + } + } + + private void PerformOneTimeTearDown() + { + _teardownCommand.Execute(Context); + } + + private string GetSkipReason() + { + return (string)Test.Properties.Get(PropertyNames.SkipReason); + } + + private string GetProviderStackTrace() + { + return (string)Test.Properties.Get(PropertyNames.ProviderStackTrace); + } + + private void CountDownChildTest() + { + _childTestCountdown.Signal(); + if (_childTestCountdown.CurrentCount == 0) + { + if (Context.ExecutionStatus != TestExecutionStatus.AbortRequested) + PerformOneTimeTearDown(); + + foreach (var childResult in _suiteResult.Children) + if (childResult.ResultState == ResultState.Cancelled) + { + this.Result.SetResult(ResultState.Cancelled, "Cancelled by user"); + break; + } + + WorkItemComplete(); + } + } + + public override void Cancel(bool force) + { + if (Children == null) + return; + + foreach (var child in Children) + { + var ctx = child.Context; + if (ctx != null) + ctx.ExecutionStatus = force ? TestExecutionStatus.AbortRequested : TestExecutionStatus.StopRequested; + + if (child.State == WorkItemState.Running) + child.Cancel(force); + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/CompositeWorkItem.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/CompositeWorkItem.cs.meta new file mode 100644 index 0000000..355dd71 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/CompositeWorkItem.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 110d5035a36a6a34580fb65bb40cd78f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/CoroutineTestWorkItem.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/CoroutineTestWorkItem.cs new file mode 100644 index 0000000..3ec037b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/CoroutineTestWorkItem.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; +using NUnit.Framework.Internal.Commands; +using NUnit.Framework.Internal.Execution; +using UnityEngine.TestTools.Utils; + +namespace UnityEngine.TestRunner.NUnitExtensions.Runner +{ + internal class CoroutineTestWorkItem : UnityWorkItem + { + private static MonoBehaviour m_MonoBehaviourCoroutineRunner; + private TestCommand m_Command; + + public static MonoBehaviour monoBehaviourCoroutineRunner + { + get + { + if (m_MonoBehaviourCoroutineRunner == null) + { + throw new NullReferenceException("MonoBehaviour coroutine runner not set"); + } + return m_MonoBehaviourCoroutineRunner; + } + set { m_MonoBehaviourCoroutineRunner = value; } + } + + public CoroutineTestWorkItem(TestMethod test, ITestFilter filter) + : base(test, null) + { + m_Command = test.RunState == RunState.Runnable || test.RunState == RunState.Explicit && filter.IsExplicitMatch(test) + ? CommandBuilder.MakeTestCommand(test) + : CommandBuilder.MakeSkipCommand(test); + } + + protected override IEnumerable PerformWork() + { + if (m_Command is SkipCommand) + { + m_Command.Execute(Context); + Result = Context.CurrentResult; + WorkItemComplete(); + yield break; + } + + if (m_Command is ApplyChangesToContextCommand) + { + var applyChangesToContextCommand = (ApplyChangesToContextCommand)m_Command; + applyChangesToContextCommand.ApplyChanges(Context); + m_Command = applyChangesToContextCommand.GetInnerCommand(); + } + + var enumerableTestMethodCommand = (IEnumerableTestMethodCommand)m_Command; + try + { + var executeEnumerable = enumerableTestMethodCommand.ExecuteEnumerable(Context).GetEnumerator(); + + var coroutineRunner = new CoroutineRunner(monoBehaviourCoroutineRunner, Context); + yield return coroutineRunner.HandleEnumerableTest(executeEnumerable); + + if (coroutineRunner.HasFailedWithTimeout()) + { + Context.CurrentResult.SetResult(ResultState.Failure, string.Format("Test exceeded Timeout value of {0}ms", Context.TestCaseTimeout)); + } + + while (executeEnumerable.MoveNext()) {} + + Result = Context.CurrentResult; + } + finally + { + WorkItemComplete(); + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/CoroutineTestWorkItem.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/CoroutineTestWorkItem.cs.meta new file mode 100644 index 0000000..f5eb998 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/CoroutineTestWorkItem.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b557515fff172984e8c4400b43f1c631 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/DefaultTestWorkItem.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/DefaultTestWorkItem.cs new file mode 100644 index 0000000..36dfb1a --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/DefaultTestWorkItem.cs @@ -0,0 +1,137 @@ +using System; +using System.Collections; +using System.Linq; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; +using NUnit.Framework.Internal.Commands; +using NUnit.Framework.Internal.Execution; +using UnityEngine.TestTools; +using SetUpTearDownCommand = NUnit.Framework.Internal.Commands.SetUpTearDownCommand; +using TestActionCommand = NUnit.Framework.Internal.Commands.TestActionCommand; + +namespace UnityEngine.TestRunner.NUnitExtensions.Runner +{ + internal class EditModeTestCallbacks + { + public static Action RestoringTestContext { get; set; } + } + + internal class DefaultTestWorkItem : UnityWorkItem + { + private TestCommand _command; + + public DefaultTestWorkItem(TestMethod test, ITestFilter filter) + : base(test, null) + { + _command = test.RunState == RunState.Runnable || test.RunState == RunState.Explicit && filter.IsExplicitMatch(test) + ? BuildTestCommand(test) + : new SkipCommand(test); + } + + private static TestCommand BuildTestCommand(TestMethod test) + { + var command = (TestCommand)new TestMethodCommand(test); + command = new UnityLogCheckDelegatingCommand(command); + foreach (var wrapper in test.Method.GetCustomAttributes(true)) + { + command = wrapper.Wrap(command); + if (command == null) + { + var message = string.Format("IWrapTestMethod implementation '{0}' returned null as command.", wrapper.GetType().FullName); + return new FailCommand(test, ResultState.Failure, message); + } + } + + command = new TestTools.TestActionCommand(command); + command = new TestTools.SetUpTearDownCommand(command); + command = new ImmediateEnumerableCommand(command); + foreach (var wrapper in test.Method.GetCustomAttributes(true)) + { + command = wrapper.Wrap(command); + if (command == null) + { + var message = string.Format("IWrapSetUpTearDown implementation '{0}' returned null as command.", wrapper.GetType().FullName); + return new FailCommand(test, ResultState.Failure, message); + } + } + + command = new EnumerableSetUpTearDownCommand(command); + command = new OuterUnityTestActionCommand(command); + + IApplyToContext[] changes = test.Method.GetCustomAttributes(true); + if (changes.Length > 0) + { + command = new EnumerableApplyChangesToContextCommand(command, changes); + } + + return command; + } + + protected override IEnumerable PerformWork() + { + if (m_DontRunRestoringResult && EditModeTestCallbacks.RestoringTestContext != null) + { + EditModeTestCallbacks.RestoringTestContext(); + Result = Context.CurrentResult; + yield break; + } + + try + { + if (_command is SkipCommand || _command is FailCommand) + { + Result = _command.Execute(Context); + yield break; + } + + if (!(_command is IEnumerableTestMethodCommand)) + { + Debug.LogError("Cannot perform work on " + _command.GetType().Name); + yield break; + } + + foreach (var workItemStep in ((IEnumerableTestMethodCommand)_command).ExecuteEnumerable(Context)) + { + ResultedInDomainReload = false; + + if (workItemStep is IEditModeTestYieldInstruction) + { + var editModeTestYieldInstruction = (IEditModeTestYieldInstruction)workItemStep; + yield return editModeTestYieldInstruction; + var enumerator = editModeTestYieldInstruction.Perform(); + while (true) + { + bool moveNext; + try + { + moveNext = enumerator.MoveNext(); + } + catch (Exception e) + { + Context.CurrentResult.RecordException(e); + break; + } + + if (!moveNext) + { + break; + } + + yield return null; + } + } + else + { + yield return workItemStep; + } + } + + Result = Context.CurrentResult; + } + finally + { + WorkItemComplete(); + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/DefaultTestWorkItem.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/DefaultTestWorkItem.cs.meta new file mode 100644 index 0000000..a843b77 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/DefaultTestWorkItem.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c7cfda246e604b945b12b7afedb094ce +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/FailCommand.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/FailCommand.cs new file mode 100644 index 0000000..f710da0 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/FailCommand.cs @@ -0,0 +1,27 @@ + +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; +using NUnit.Framework.Internal.Commands; + +namespace UnityEngine.TestRunner.NUnitExtensions.Runner +{ + internal class FailCommand : TestCommand + { + private ResultState m_ResultState; + private string m_Message; + + public FailCommand(Test test, ResultState resultState, string message) + : base(test) + { + m_ResultState = resultState; + m_Message = message; + } + + public override TestResult Execute(ITestExecutionContext context) + { + context.CurrentResult.SetResult(m_ResultState, m_Message); + return context.CurrentResult; + } + } + +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/FailCommand.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/FailCommand.cs.meta new file mode 100644 index 0000000..921cc0a --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/FailCommand.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 68e5dc8bfd5d72647a93b7f2e1da831a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/IEnumerableTestMethodCommand.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/IEnumerableTestMethodCommand.cs new file mode 100644 index 0000000..758e295 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/IEnumerableTestMethodCommand.cs @@ -0,0 +1,10 @@ +using System.Collections; +using NUnit.Framework.Internal; + +namespace UnityEngine.TestRunner.NUnitExtensions.Runner +{ + internal interface IEnumerableTestMethodCommand + { + IEnumerable ExecuteEnumerable(ITestExecutionContext context); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/IEnumerableTestMethodCommand.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/IEnumerableTestMethodCommand.cs.meta new file mode 100644 index 0000000..4434337 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/IEnumerableTestMethodCommand.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: dbd43d8a3b8122d4e89b055f53382b11 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/PlaymodeWorkItemFactory.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/PlaymodeWorkItemFactory.cs new file mode 100644 index 0000000..5d32f26 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/PlaymodeWorkItemFactory.cs @@ -0,0 +1,13 @@ +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; + +namespace UnityEngine.TestRunner.NUnitExtensions.Runner +{ + internal class PlaymodeWorkItemFactory : WorkItemFactory + { + protected override UnityWorkItem Create(TestMethod method, ITestFilter filter, ITest loadedTest) + { + return new CoroutineTestWorkItem(method, filter); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/PlaymodeWorkItemFactory.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/PlaymodeWorkItemFactory.cs.meta new file mode 100644 index 0000000..9c2a8ed --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/PlaymodeWorkItemFactory.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7ef6801a8b664544aa9f2ab1bc1f8b60 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/RestoreTestContextAfterDomainReload.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/RestoreTestContextAfterDomainReload.cs new file mode 100644 index 0000000..e05910a --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/RestoreTestContextAfterDomainReload.cs @@ -0,0 +1,4 @@ +namespace UnityEngine.TestRunner.NUnitExtensions.Runner +{ + internal class RestoreTestContextAfterDomainReload {} +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/RestoreTestContextAfterDomainReload.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/RestoreTestContextAfterDomainReload.cs.meta new file mode 100644 index 0000000..640354d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/RestoreTestContextAfterDomainReload.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 26721f9940339264fb14bdbfe1290e21 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityLogCheckDelegatingCommand.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityLogCheckDelegatingCommand.cs new file mode 100644 index 0000000..7e6ac65 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityLogCheckDelegatingCommand.cs @@ -0,0 +1,106 @@ +using System; +using System.Collections; +using System.Linq; +using NUnit.Framework.Internal; +using NUnit.Framework.Internal.Commands; +using UnityEngine.TestTools.Logging; +using UnityEngine.TestTools.TestRunner; + +namespace UnityEngine.TestRunner.NUnitExtensions.Runner +{ + internal class UnityLogCheckDelegatingCommand : DelegatingTestCommand, IEnumerableTestMethodCommand + { + public UnityLogCheckDelegatingCommand(TestCommand innerCommand) + : base(innerCommand) {} + + public override TestResult Execute(ITestExecutionContext context) + { + var logCollector = new LogScope(); + + try + { + innerCommand.Execute(context); + + if (logCollector.AnyFailingLogs()) + { + var failingLog = logCollector.FailingLogs.First(); + throw new UnhandledLogMessageException(failingLog); + } + + if (logCollector.ExpectedLogs.Any()) + { + throw new UnexpectedLogMessageException(logCollector.ExpectedLogs.Peek()); + } + } + catch (Exception exception) + { + context.CurrentResult.RecordException(exception); + } + logCollector.Dispose(); + return context.CurrentResult; + } + + public IEnumerable ExecuteEnumerable(ITestExecutionContext context) + { + var logCollector = new LogScope(); + + if (!(innerCommand is IEnumerableTestMethodCommand)) + { + Execute(context); + yield break; + } + + var enumerableTestMethodCommand = (IEnumerableTestMethodCommand)innerCommand; + + IEnumerable executeEnumerable; + + try + { + executeEnumerable = enumerableTestMethodCommand.ExecuteEnumerable(context); + } + catch (Exception e) + { + context.CurrentResult.RecordException(e); + yield break; + } + + foreach (var step in executeEnumerable) + { + try + { + if (logCollector.AnyFailingLogs()) + { + var failingLog = logCollector.FailingLogs.First(); + throw new UnhandledLogMessageException(failingLog); + } + } + catch (Exception e) + { + context.CurrentResult.RecordException(e); + break; + } + yield return step; + } + + try + { + if (logCollector.AnyFailingLogs()) + { + var failingLog = logCollector.FailingLogs.First(); + throw new UnhandledLogMessageException(failingLog); + } + + logCollector.ProcessExpectedLogs(); + if (logCollector.ExpectedLogs.Any()) + { + throw new UnexpectedLogMessageException(LogScope.Current.ExpectedLogs.Peek()); + } + } + catch (Exception exception) + { + context.CurrentResult.RecordException(exception); + } + logCollector.Dispose(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityLogCheckDelegatingCommand.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityLogCheckDelegatingCommand.cs.meta new file mode 100644 index 0000000..86d9d9e --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityLogCheckDelegatingCommand.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 48230e4e90fb4d14a9d56bddea898413 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityTestAssemblyRunner.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityTestAssemblyRunner.cs new file mode 100644 index 0000000..8c9339a --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityTestAssemblyRunner.cs @@ -0,0 +1,96 @@ +using System.Collections; +using System.Collections.Generic; +using System.Reflection; +using NUnit; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; +using UnityEngine.TestTools.NUnitExtensions; + +namespace UnityEngine.TestRunner.NUnitExtensions.Runner +{ + internal interface IUnityTestAssemblyRunner + { + ITest LoadedTest { get; } + ITestResult Result { get; } + bool IsTestLoaded { get; } + bool IsTestRunning { get; } + bool IsTestComplete { get; } + UnityWorkItem TopLevelWorkItem { get; set; } + UnityTestExecutionContext GetCurrentContext(); + ITest Load(Assembly[] assemblies, IDictionary settings); + IEnumerable Run(ITestListener listener, ITestFilter filter); + void StopRun(); + } + + internal class UnityTestAssemblyRunner : IUnityTestAssemblyRunner + { + private readonly UnityTestAssemblyBuilder unityBuilder; + private readonly WorkItemFactory m_Factory; + + protected UnityTestExecutionContext Context { get; set; } + + public UnityTestExecutionContext GetCurrentContext() + { + return UnityTestExecutionContext.CurrentContext; + } + + protected IDictionary Settings { get; set; } + public ITest LoadedTest { get; protected set; } + + public ITestResult Result + { + get { return TopLevelWorkItem == null ? null : TopLevelWorkItem.Result; } + } + + public bool IsTestLoaded + { + get { return LoadedTest != null; } + } + + public bool IsTestRunning + { + get { return TopLevelWorkItem != null && TopLevelWorkItem.State == NUnit.Framework.Internal.Execution.WorkItemState.Running; } + } + public bool IsTestComplete + { + get { return TopLevelWorkItem != null && TopLevelWorkItem.State == NUnit.Framework.Internal.Execution.WorkItemState.Complete; } + } + + public UnityTestAssemblyRunner(UnityTestAssemblyBuilder builder, WorkItemFactory factory) + { + unityBuilder = builder; + m_Factory = factory; + Context = new UnityTestExecutionContext(); + } + + public ITest Load(Assembly[] assemblies, IDictionary settings) + { + Settings = settings; + + if (settings.ContainsKey(FrameworkPackageSettings.RandomSeed)) + Randomizer.InitialSeed = (int)settings[FrameworkPackageSettings.RandomSeed]; + + return LoadedTest = unityBuilder.Build(assemblies, settings); + } + + public IEnumerable Run(ITestListener listener, ITestFilter filter) + { + TopLevelWorkItem = m_Factory.Create(LoadedTest, filter); + TopLevelWorkItem.InitializeContext(Context); + UnityTestExecutionContext.CurrentContext = Context; + Context.Listener = listener; + + return TopLevelWorkItem.Execute(); + } + + public UnityWorkItem TopLevelWorkItem { get; set; } + + public void StopRun() + { + if (IsTestRunning) + { + TopLevelWorkItem.Cancel(false); + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityTestAssemblyRunner.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityTestAssemblyRunner.cs.meta new file mode 100644 index 0000000..96179c5 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityTestAssemblyRunner.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 874e40a588dbb1e48bc128d686337d4e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityTestExecutionContext.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityTestExecutionContext.cs new file mode 100644 index 0000000..dd58c14 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityTestExecutionContext.cs @@ -0,0 +1,128 @@ +using System; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using NUnit.Framework; +using NUnit.Framework.Constraints; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; +using NUnit.Framework.Internal.Execution; +using UnityEngine.TestTools; + +namespace UnityEngine.TestRunner.NUnitExtensions.Runner +{ + internal class UnityTestExecutionContext : ITestExecutionContext + { + private readonly UnityTestExecutionContext _priorContext; + private TestResult _currentResult; + private int _assertCount; + + public static UnityTestExecutionContext CurrentContext { get; set; } + + public UnityTestExecutionContext Context { get; private set; } + + public Test CurrentTest { get; set; } + public DateTime StartTime { get; set; } + public long StartTicks { get; set; } + public TestResult CurrentResult + { + get { return _currentResult; } + set + { + _currentResult = value; + if (value != null) + OutWriter = value.OutWriter; + } + } + + public object TestObject { get; set; } + public string WorkDirectory { get; set; } + + + private TestExecutionStatus _executionStatus; + public TestExecutionStatus ExecutionStatus + { + get + { + // ExecutionStatus may have been set to StopRequested or AbortRequested + // in a prior context. If so, reflect the same setting in this context. + if (_executionStatus == TestExecutionStatus.Running && _priorContext != null) + _executionStatus = _priorContext.ExecutionStatus; + + return _executionStatus; + } + set + { + _executionStatus = value; + + // Push the same setting up to all prior contexts + if (_priorContext != null) + _priorContext.ExecutionStatus = value; + } + } + + public List UpstreamActions { get; private set; } + public int TestCaseTimeout { get; set; } + public CultureInfo CurrentCulture { get; set; } + public CultureInfo CurrentUICulture { get; set; } + public ITestListener Listener { get; set; } + + public UnityTestExecutionContext() + { + UpstreamActions = new List(); + CurrentContext = this; + } + + public UnityTestExecutionContext(UnityTestExecutionContext other) + { + _priorContext = other; + + CurrentTest = other.CurrentTest; + CurrentResult = other.CurrentResult; + TestObject = other.TestObject; + WorkDirectory = other.WorkDirectory; + Listener = other.Listener; + TestCaseTimeout = other.TestCaseTimeout; + UpstreamActions = new List(other.UpstreamActions); + SetUpTearDownState = other.SetUpTearDownState; + OuterUnityTestActionState = other.OuterUnityTestActionState; + + TestContext.CurrentTestExecutionContext = this; + + CurrentCulture = other.CurrentCulture; + CurrentUICulture = other.CurrentUICulture; + CurrentContext = this; + } + + public TextWriter OutWriter { get; private set; } + public bool StopOnError { get; set; } + + public IWorkItemDispatcher Dispatcher { get; set; } + + public ParallelScope ParallelScope { get; set; } + public string WorkerId { get; private set; } + public Randomizer RandomGenerator { get; private set; } + public ValueFormatter CurrentValueFormatter { get; private set; } + public bool IsSingleThreaded { get; set; } + public BeforeAfterTestCommandState SetUpTearDownState { get; set; } + public BeforeAfterTestCommandState OuterUnityTestActionState { get; set; } + + internal int AssertCount + { + get + { + return _assertCount; + } + } + + public void IncrementAssertCount() + { + _assertCount += 1; + } + + public void AddFormatter(ValueFormatterFactory formatterFactory) + { + throw new NotImplementedException(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityTestExecutionContext.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityTestExecutionContext.cs.meta new file mode 100644 index 0000000..33d323b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityTestExecutionContext.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 59ff995fabb3bac45afa0f96f333e5dc +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityWorkItem.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityWorkItem.cs new file mode 100644 index 0000000..71bddbd --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityWorkItem.cs @@ -0,0 +1,112 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Diagnostics; +using System.Linq; +using NUnit.Framework; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; +using NUnit.Framework.Internal.Execution; + +namespace UnityEngine.TestRunner.NUnitExtensions.Runner +{ + internal abstract class UnityWorkItem + { + protected readonly WorkItemFactory m_Factory; + protected bool m_ExecuteTestStartEvent; + protected bool m_DontRunRestoringResult; + public event EventHandler Completed; + + public bool ResultedInDomainReload { get; internal set; } + + public UnityTestExecutionContext Context { get; private set; } + + public Test Test { get; private set; } + + public TestResult Result { get; protected set; } + + public WorkItemState State { get; private set; } + + public List Actions { get; private set; } + + protected UnityWorkItem(Test test, WorkItemFactory factory) + { + m_Factory = factory; + Test = test; + Actions = new List(); + Result = test.MakeTestResult(); + State = WorkItemState.Ready; + m_ExecuteTestStartEvent = ShouldExecuteStartEvent(); + m_DontRunRestoringResult = ShouldRestore(test); + } + + protected static bool ShouldRestore(ITest loadedTest) + { + return UnityWorkItemDataHolder.alreadyExecutedTests != null && UnityWorkItemDataHolder.alreadyExecutedTests.Contains(loadedTest.FullName); + } + + protected bool ShouldExecuteStartEvent() + { + return UnityWorkItemDataHolder.alreadyStartedTests != null && UnityWorkItemDataHolder.alreadyStartedTests.All(x => x != Test.FullName) && !ShouldRestore(Test); + } + + protected abstract IEnumerable PerformWork(); + + public void InitializeContext(UnityTestExecutionContext context) + { + Context = context; + + if (Test is TestAssembly) + Actions.AddRange(ActionsHelper.GetActionsFromTestAssembly((TestAssembly)Test)); + else if (Test is ParameterizedMethodSuite) + Actions.AddRange(ActionsHelper.GetActionsFromTestMethodInfo(Test.Method)); + else if (Test.TypeInfo != null) + Actions.AddRange(ActionsHelper.GetActionsFromTypesAttributes(Test.TypeInfo.Type)); + } + + public virtual IEnumerable Execute() + { + Context.CurrentTest = this.Test; + Context.CurrentResult = this.Result; + + if (m_ExecuteTestStartEvent) + { + Context.Listener.TestStarted(Test); + } + + Context.StartTime = DateTime.UtcNow; + Context.StartTicks = Stopwatch.GetTimestamp(); + + State = WorkItemState.Running; + + return PerformWork(); + } + + protected void WorkItemComplete() + { + State = WorkItemState.Complete; + + Result.StartTime = Context.StartTime; + Result.EndTime = DateTime.UtcNow; + + long tickCount = Stopwatch.GetTimestamp() - Context.StartTicks; + double seconds = (double)tickCount / Stopwatch.Frequency; + Result.Duration = seconds; + + //Result.AssertCount += Context.AssertCount; + + Context.Listener.TestFinished(Result); + + if (Completed != null) + Completed(this, EventArgs.Empty); + + Context.TestObject = null; + Test.Fixture = null; + } + + public virtual void Cancel(bool force) + { + Context.Listener.TestFinished(Result); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityWorkItem.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityWorkItem.cs.meta new file mode 100644 index 0000000..48b9f92 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityWorkItem.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 79ced2556f0af814a840b86232613ff1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityWorkItemDataHolder.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityWorkItemDataHolder.cs new file mode 100644 index 0000000..d9fb700 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityWorkItemDataHolder.cs @@ -0,0 +1,10 @@ +using System.Collections.Generic; + +namespace UnityEngine.TestRunner.NUnitExtensions.Runner +{ + internal class UnityWorkItemDataHolder + { + public static List alreadyStartedTests = new List(); + public static List alreadyExecutedTests; + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityWorkItemDataHolder.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityWorkItemDataHolder.cs.meta new file mode 100644 index 0000000..6d90872 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/UnityWorkItemDataHolder.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5b3e90046c38f1d4dad2e0d5a79e871c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/WorkItemFactory.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/WorkItemFactory.cs new file mode 100644 index 0000000..94d9c0f --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/WorkItemFactory.cs @@ -0,0 +1,28 @@ +using System.Collections; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; + +namespace UnityEngine.TestRunner.NUnitExtensions.Runner +{ + internal abstract class WorkItemFactory + { + public UnityWorkItem Create(ITest loadedTest, ITestFilter filter) + { + TestSuite suite = loadedTest as TestSuite; + if (suite != null) + { + return new CompositeWorkItem(suite, filter, this); + } + + var testMethod = (TestMethod)loadedTest; + if (testMethod.Method.ReturnType.Type != typeof(IEnumerator)) + { + return new DefaultTestWorkItem(testMethod, filter); + } + + return Create(testMethod, filter, loadedTest); + } + + protected abstract UnityWorkItem Create(TestMethod method, ITestFilter filter, ITest loadedTest); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/WorkItemFactory.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/WorkItemFactory.cs.meta new file mode 100644 index 0000000..e5f0377 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/Runner/WorkItemFactory.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5c15bf0966eb95847a4260d830a30d30 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/TestExtensions.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/TestExtensions.cs new file mode 100644 index 0000000..5d35307 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/TestExtensions.cs @@ -0,0 +1,138 @@ +using System.Collections.Generic; +using System.Linq; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; +using UnityEngine.TestRunner.NUnitExtensions.Filters; + +namespace UnityEngine.TestRunner.NUnitExtensions +{ + internal static class TestExtensions + { + private static IEnumerable GetTestCategories(this ITest test) + { + var categories = test.Properties[PropertyNames.Category].Cast().ToList(); + if (categories.Count == 0 && test is TestMethod) + { + // only mark tests as Uncategorized if the test fixture doesn't have a category, + // otherwise the test inherits the Fixture category + var fixtureCategories = test.Parent.Properties[PropertyNames.Category].Cast().ToList(); + if (fixtureCategories.Count == 0) + categories.Add(CategoryFilterExtended.k_DefaultCategory); + } + return categories; + } + + public static bool HasCategory(this ITest test, string[] categoryFilter) + { + var categories = test.GetAllCategoriesFromTest().Distinct(); + return categoryFilter.Any(c => categories.Any(r => r == c)); + } + + public static List GetAllCategoriesFromTest(this ITest test) + { + if (test.Parent == null) + return test.GetTestCategories().ToList(); + + var categories = GetAllCategoriesFromTest(test.Parent); + categories.AddRange(test.GetTestCategories()); + return categories; + } + + public static void ParseForNameDuplicates(this ITest test) + { + var duplicates = new Dictionary(); + for (var i = 0; i < test.Tests.Count; i++) + { + var child = test.Tests[i]; + int count; + if (duplicates.TryGetValue(child.FullName, out count)) + { + count++; + child.Properties.Add("childIndex", count); + duplicates[child.FullName] = count; + } + else + { + duplicates.Add(child.FullName, 1); + } + ParseForNameDuplicates(child); + } + } + + public static int GetChildIndex(this ITest test) + { + var index = test.Properties["childIndex"]; + return (int)index[0]; + } + + public static bool HasChildIndex(this ITest test) + { + var index = test.Properties["childIndex"]; + return index.Count > 0; + } + + static string GetAncestorPath(ITest test) + { + var path = ""; + var testParent = test.Parent; + + while (testParent != null && testParent.Parent != null && !string.IsNullOrEmpty(testParent.Name)) + { + path = testParent.Name + "/" + path; + testParent = testParent.Parent; + } + + return path; + } + + public static string GetUniqueName(this ITest test) + { + var id = GetAncestorPath(test) + GetFullName(test); + if (test.HasChildIndex()) + { + var index = test.GetChildIndex(); + if (index >= 0) + id += index; + } + if (test.IsSuite) + { + id += "[suite]"; + } + return id; + } + + public static string GetFullName(ITest test) + { + if (test.TypeInfo == null && (test.Parent == null || test.Parent.TypeInfo == null)) + { + return "[" + test.FullName + "]"; + } + var assemblyId = test.TypeInfo == null ? test.Parent.TypeInfo.Assembly.GetName().Name : test.TypeInfo.Assembly.GetName().Name; + return string.Format("[{0}][{1}]", assemblyId, test.FullName); + } + + public static string GetSkipReason(this ITest test) + { + if (test.Properties.ContainsKey(PropertyNames.SkipReason)) + return (string)test.Properties.Get(PropertyNames.SkipReason); + + return null; + } + + public static string GetParentId(this ITest test) + { + if (test.Parent != null) + return test.Parent.Id; + + return null; + } + + public static string GetParentUniqueName(this ITest test) + { + if (test.Parent != null) + return GetUniqueName(test.Parent); + + return null; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/TestExtensions.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/TestExtensions.cs.meta new file mode 100644 index 0000000..3230eb4 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/TestExtensions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8bc74398aa3944646ade4ee78cd57484 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/TestResultExtensions.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/TestResultExtensions.cs new file mode 100644 index 0000000..d79072b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/TestResultExtensions.cs @@ -0,0 +1,77 @@ +using System; +using NUnit.Framework; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; + +namespace UnityEngine.TestRunner.NUnitExtensions +{ + internal static class TestResultExtensions + { + public static void RecordPrefixedException(this TestResult testResult, string prefix, Exception ex, ResultState resultState = null) + + { + if (ex is NUnitException) + { + ex = ex.InnerException; + } + + if (resultState == null) + { + resultState = testResult.ResultState == ResultState.Cancelled + ? ResultState.Cancelled + : ResultState.Error; + } + + var exceptionMessage = ExceptionHelper.BuildMessage(ex); + string stackTrace = "--" + prefix + NUnit.Env.NewLine + ExceptionHelper.BuildStackTrace(ex); + if (testResult.StackTrace != null) + { + stackTrace = testResult.StackTrace + NUnit.Env.NewLine + stackTrace; + } + + if (testResult.Test.IsSuite) + { + resultState = resultState.WithSite(FailureSite.TearDown); + } + + if (ex is ResultStateException) + { + exceptionMessage = ex.Message; + resultState = ((ResultStateException)ex).ResultState; + stackTrace = StackFilter.Filter(ex.StackTrace); + } + + string message = (string.IsNullOrEmpty(prefix) ? "" : (prefix + " : ")) + exceptionMessage; + if (testResult.Message != null) + { + message = testResult.Message + NUnit.Env.NewLine + message; + } + + testResult.SetResult(resultState, message, stackTrace); + } + + public static void RecordPrefixedError(this TestResult testResult, string prefix, string error, ResultState resultState = null) + + { + if (resultState == null) + { + resultState = testResult.ResultState == ResultState.Cancelled + ? ResultState.Cancelled + : ResultState.Error; + } + + if (testResult.Test.IsSuite) + { + resultState = resultState.WithSite(FailureSite.TearDown); + } + + string message = (string.IsNullOrEmpty(prefix) ? "" : (prefix + " : ")) + error; + if (testResult.Message != null) + { + message = testResult.Message + NUnit.Env.NewLine + message; + } + + testResult.SetResult(resultState, message); + } + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/TestResultExtensions.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/TestResultExtensions.cs.meta new file mode 100644 index 0000000..ff97b17 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/TestResultExtensions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 65fb6da362a78334ab360a125cfafdaf +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/UnityTestAssemblyBuilder.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/UnityTestAssemblyBuilder.cs new file mode 100644 index 0000000..f16a9f3 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/UnityTestAssemblyBuilder.cs @@ -0,0 +1,52 @@ +using System.Collections.Generic; +using System.IO; +using System.Reflection; +using NUnit; +using NUnit.Framework.Api; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; + +namespace UnityEngine.TestTools.NUnitExtensions +{ + internal class UnityTestAssemblyBuilder : DefaultTestAssemblyBuilder + { + private readonly string m_ProductName; + public UnityTestAssemblyBuilder() + { + m_ProductName = Application.productName; + } + + public ITest Build(Assembly[] assemblies, IDictionary options) + { + var test = BuildAsync(assemblies, options); + while (test.MoveNext()) + { + } + + return test.Current; + } + + public IEnumerator BuildAsync(Assembly[] assemblies, IDictionary options) + { + var productName = string.Join("_", m_ProductName.Split(Path.GetInvalidFileNameChars())); + var suite = new TestSuite(productName); + foreach (var assembly in assemblies) + { + var assemblySuite = Build(assembly, options) as TestSuite; + if (assemblySuite != null && assemblySuite.HasChildren) + { + suite.Add(assemblySuite); + } + yield return null; + } + yield return suite; + } + + public static Dictionary GetNUnitTestBuilderSettings(TestPlatform testPlatform) + { + var emptySettings = new Dictionary(); + emptySettings.Add(FrameworkPackageSettings.TestParameters, "platform=" + testPlatform); + return emptySettings; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/UnityTestAssemblyBuilder.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/UnityTestAssemblyBuilder.cs.meta new file mode 100644 index 0000000..f0fdf17 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/NUnitExtensions/UnityTestAssemblyBuilder.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 98ba0396e4b4ee8498a8f097affcfddf +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner.meta new file mode 100644 index 0000000..e44f879 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1ddb9e1c877ea80479d1eab4ddaa5d0d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks.meta new file mode 100644 index 0000000..899ce79 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 61e236e8570a95e4eb754fb291e102e0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/PlayModeRunnerCallback.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/PlayModeRunnerCallback.cs new file mode 100644 index 0000000..d792687 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/PlayModeRunnerCallback.cs @@ -0,0 +1,47 @@ +using NUnit.Framework; +using NUnit.Framework.Interfaces; + +namespace UnityEngine.TestTools.TestRunner.Callbacks +{ + [AddComponentMenu("")] + internal class PlayModeRunnerCallback : MonoBehaviour, ITestRunnerListener + { + private TestResultRenderer m_ResultRenderer; + + public void RunFinished(ITestResult testResults) + { + Application.logMessageReceivedThreaded -= LogRecieved; + if (Camera.main == null) + { + gameObject.AddComponent(); + } + m_ResultRenderer = new TestResultRenderer(testResults); + m_ResultRenderer.ShowResults(); + } + + public void TestFinished(ITestResult result) + { + } + + public void OnGUI() + { + if (m_ResultRenderer != null) + m_ResultRenderer.Draw(); + } + + public void RunStarted(ITest testsToRun) + { + Application.logMessageReceivedThreaded += LogRecieved; + } + + public void TestStarted(ITest test) + { + } + + private void LogRecieved(string message, string stacktrace, LogType type) + { + if (TestContext.Out != null) + TestContext.Out.WriteLine(message); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/PlayModeRunnerCallback.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/PlayModeRunnerCallback.cs.meta new file mode 100644 index 0000000..15706d5 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/PlayModeRunnerCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3cf5cb9e1ef590c48b1f919f2a7bd895 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/RemoteTestResultSender.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/RemoteTestResultSender.cs new file mode 100644 index 0000000..2092850 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/RemoteTestResultSender.cs @@ -0,0 +1,130 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using NUnit.Framework.Interfaces; +using UnityEngine.Networking.PlayerConnection; +using UnityEngine.TestRunner.TestLaunchers; + +namespace UnityEngine.TestTools.TestRunner.Callbacks +{ + [AddComponentMenu("")] + internal class RemoteTestResultSender : MonoBehaviour, ITestRunnerListener + { + private class QueueData + { + public Guid id { get; set; } + public byte[] data { get; set; } + } + + private readonly Queue m_SendQueue = new Queue(); + private readonly object m_LockQueue = new object(); + private readonly IRemoteTestResultDataFactory m_TestResultDataFactory = new RemoteTestResultDataFactory(); + + public void Start() + { + PlayerConnection.instance.Register(PlayerConnectionMessageIds.runFinishedMessageId, EditorProccessedTheResult); + StartCoroutine(SendDataRoutine()); + } + + private void EditorProccessedTheResult(MessageEventArgs arg0) + { + if (arg0.data != null) + { + return; + } + + //Some platforms don't quit, so we need to disconnect to make sure they will not connect to another editor instance automatically. + PlayerConnection.instance.DisconnectAll(); + + //XBOX has an error when quitting + if (Application.platform == RuntimePlatform.XboxOne) + { + return; + } + Application.Quit(); + } + + private byte[] SerializeObject(object objectToSerialize) + { + return Encoding.UTF8.GetBytes(JsonUtility.ToJson(objectToSerialize)); + } + + public void RunStarted(ITest testsToRun) + { + var data = SerializeObject(m_TestResultDataFactory.CreateFromTest(testsToRun)); + lock (m_LockQueue) + { + m_SendQueue.Enqueue(new QueueData + { + id = PlayerConnectionMessageIds.runStartedMessageId, + data = data + }); + } + } + + public void RunFinished(ITestResult testResults) + { + var data = SerializeObject(m_TestResultDataFactory.CreateFromTestResult(testResults)); + lock (m_LockQueue) + { + m_SendQueue.Enqueue(new QueueData { id = PlayerConnectionMessageIds.runFinishedMessageId, data = data, }); + } + } + + public void TestStarted(ITest test) + { + var data = SerializeObject(m_TestResultDataFactory.CreateFromTest(test)); + lock (m_LockQueue) + { + m_SendQueue.Enqueue(new QueueData + { + id = PlayerConnectionMessageIds.testStartedMessageId, + data = data + }); + } + } + + public void TestFinished(ITestResult result) + { + var testRunnerResultForApi = m_TestResultDataFactory.CreateFromTestResult(result); + var resultData = SerializeObject(testRunnerResultForApi); + lock (m_LockQueue) + { + m_SendQueue.Enqueue(new QueueData + { + id = PlayerConnectionMessageIds.testFinishedMessageId, + data = resultData, + }); + } + } + + public IEnumerator SendDataRoutine() + { + while (!PlayerConnection.instance.isConnected) + { + yield return new WaitForSeconds(1); + } + + while (true) + { + lock (m_LockQueue) + { + if (PlayerConnection.instance.isConnected && m_SendQueue.Count > 0) + { + var queueData = m_SendQueue.Dequeue(); + PlayerConnection.instance.Send(queueData.id, queueData.data); + yield return null; + } + + //This is needed so we dont stall the player totally + if (!m_SendQueue.Any()) + { + yield return new WaitForSeconds(0.02f); + } + } + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/RemoteTestResultSender.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/RemoteTestResultSender.cs.meta new file mode 100644 index 0000000..cbb4d40 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/RemoteTestResultSender.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 20793418366caf14293b29c55df5e9ec +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/TestResultRenderer.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/TestResultRenderer.cs new file mode 100644 index 0000000..280c6c4 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/TestResultRenderer.cs @@ -0,0 +1,97 @@ +using System.Collections.Generic; +using System.Linq; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; + +namespace UnityEngine.TestTools.TestRunner.Callbacks +{ + internal class TestResultRenderer + { + private static class Styles + { + public static readonly GUIStyle SucceedLabelStyle; + public static readonly GUIStyle FailedLabelStyle; + public static readonly GUIStyle FailedMessagesStyle; + + static Styles() + { + SucceedLabelStyle = new GUIStyle("label"); + SucceedLabelStyle.normal.textColor = Color.green; + SucceedLabelStyle.fontSize = 48; + + FailedLabelStyle = new GUIStyle("label"); + FailedLabelStyle.normal.textColor = Color.red; + FailedLabelStyle.fontSize = 32; + + FailedMessagesStyle = new GUIStyle("label"); + FailedMessagesStyle.wordWrap = false; + FailedMessagesStyle.richText = true; + } + } + + private readonly List m_FailedTestCollection; + + private bool m_ShowResults; + private Vector2 m_ScrollPosition; + + public TestResultRenderer(ITestResult testResults) + { + m_FailedTestCollection = new List(); + GetFailedTests(testResults); + } + + private void GetFailedTests(ITestResult testResults) + { + if (testResults is TestCaseResult) + { + if (testResults.ResultState.Status == TestStatus.Failed) + m_FailedTestCollection.Add(testResults); + } + else if (testResults.HasChildren) + { + foreach (var testResultsChild in testResults.Children) + { + GetFailedTests(testResultsChild); + } + } + } + + private const int k_MaxStringLength = 15000; + + public void ShowResults() + { + m_ShowResults = true; + Cursor.visible = true; + } + + public void Draw() + { + if (!m_ShowResults) return; + if (m_FailedTestCollection.Count == 0) + { + GUILayout.Label("All test succeeded", Styles.SucceedLabelStyle, GUILayout.Width(600)); + } + else + { + int count = m_FailedTestCollection.Count; + GUILayout.Label(count + " tests failed!", Styles.FailedLabelStyle); + + m_ScrollPosition = GUILayout.BeginScrollView(m_ScrollPosition, GUILayout.ExpandWidth(true)); + var text = ""; + + text += "Code-based tests\n"; + text += string.Join("\n", m_FailedTestCollection + .Select(result => result.Name + " " + result.ResultState + "\n" + result.Message) + .ToArray()); + + if (text.Length > k_MaxStringLength) + text = text.Substring(0, k_MaxStringLength); + + GUILayout.TextArea(text, Styles.FailedMessagesStyle); + GUILayout.EndScrollView(); + } + if (GUILayout.Button("Close")) + Application.Quit(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/TestResultRenderer.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/TestResultRenderer.cs.meta new file mode 100644 index 0000000..02cca20 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/TestResultRenderer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5ebb87899ca30b743bb4274bc00c02b4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/TestResultRendererCallback.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/TestResultRendererCallback.cs new file mode 100644 index 0000000..b5d23f7 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/TestResultRendererCallback.cs @@ -0,0 +1,36 @@ +using NUnit.Framework.Interfaces; + +namespace UnityEngine.TestTools.TestRunner.Callbacks +{ + internal class TestResultRendererCallback : MonoBehaviour, ITestRunnerListener + { + private TestResultRenderer m_ResultRenderer; + public void RunStarted(ITest testsToRun) + { + } + + public void RunFinished(ITestResult testResults) + { + if (Camera.main == null) + { + gameObject.AddComponent(); + } + m_ResultRenderer = new TestResultRenderer(testResults); + m_ResultRenderer.ShowResults(); + } + + public void OnGUI() + { + if (m_ResultRenderer != null) + m_ResultRenderer.Draw(); + } + + public void TestStarted(ITest test) + { + } + + public void TestFinished(ITestResult result) + { + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/TestResultRendererCallback.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/TestResultRendererCallback.cs.meta new file mode 100644 index 0000000..deaa0ae --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Callbacks/TestResultRendererCallback.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: dfc336f10b83bd74eaded16a658275c7 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/ITestRunnerListener.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/ITestRunnerListener.cs new file mode 100644 index 0000000..6a2fa5b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/ITestRunnerListener.cs @@ -0,0 +1,26 @@ +using System; +using NUnit.Framework.Interfaces; +using UnityEngine.Events; + +namespace UnityEngine.TestTools.TestRunner +{ + internal interface ITestRunnerListener + { + void RunStarted(ITest testsToRun); + void RunFinished(ITestResult testResults); + void TestStarted(ITest test); + void TestFinished(ITestResult result); + } + + [Serializable] + internal class TestFinishedEvent : UnityEvent {} + + [Serializable] + internal class TestStartedEvent : UnityEvent {} + + [Serializable] + internal class RunFinishedEvent : UnityEvent {} + + [Serializable] + internal class RunStartedEvent : UnityEvent {} +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/ITestRunnerListener.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/ITestRunnerListener.cs.meta new file mode 100644 index 0000000..848ab3d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/ITestRunnerListener.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d1b534518943030499685344fd1d476d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Messages.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Messages.meta new file mode 100644 index 0000000..5ab167c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Messages.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 256a0ca37fa972840bce7fca446e75e7 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Messages/IEditModeTestYieldInstruction.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Messages/IEditModeTestYieldInstruction.cs new file mode 100644 index 0000000..df7acb2 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Messages/IEditModeTestYieldInstruction.cs @@ -0,0 +1,12 @@ +using System.Collections; + +namespace UnityEngine.TestTools +{ + public interface IEditModeTestYieldInstruction + { + bool ExpectDomainReload { get; } + bool ExpectedPlaymodeState { get; } + + IEnumerator Perform(); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Messages/IEditModeTestYieldInstruction.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Messages/IEditModeTestYieldInstruction.cs.meta new file mode 100644 index 0000000..f61c35a --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/Messages/IEditModeTestYieldInstruction.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 898bc38486fc899428fbe5bd6adfe473 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/PlaymodeTestsController.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/PlaymodeTestsController.cs new file mode 100644 index 0000000..3efa3d3 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/PlaymodeTestsController.cs @@ -0,0 +1,129 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using UnityEngine.SceneManagement; +using UnityEngine.TestRunner.NUnitExtensions; +using UnityEngine.TestRunner.NUnitExtensions.Runner; +using UnityEngine.TestTools.NUnitExtensions; +using UnityEngine.TestTools.Utils; + +namespace UnityEngine.TestTools.TestRunner +{ + [Serializable] + [AddComponentMenu("")] + internal class PlaymodeTestsController : MonoBehaviour + { + private IEnumerator m_TestSteps; + + [SerializeField] + private List m_AssembliesWithTests; + public List AssembliesWithTests + { + get + { + return m_AssembliesWithTests; + } + set + { + m_AssembliesWithTests = value; + } + } + + [SerializeField] + internal TestStartedEvent testStartedEvent = new TestStartedEvent(); + [SerializeField] + internal TestFinishedEvent testFinishedEvent = new TestFinishedEvent(); + [SerializeField] + internal RunStartedEvent runStartedEvent = new RunStartedEvent(); + [SerializeField] + internal RunFinishedEvent runFinishedEvent = new RunFinishedEvent(); + + internal const string kPlaymodeTestControllerName = "Code-based tests runner"; + + [SerializeField] + public PlaymodeTestsControllerSettings settings = new PlaymodeTestsControllerSettings(); + + internal UnityTestAssemblyRunner m_Runner; + + public IEnumerator Start() + { + //Skip 2 frame because Unity. + yield return null; + yield return null; + StartCoroutine(Run()); + } + + internal static bool IsControllerOnScene() + { + return GameObject.Find(kPlaymodeTestControllerName) != null; + } + + internal static PlaymodeTestsController GetController() + { + return GameObject.Find(kPlaymodeTestControllerName).GetComponent(); + } + + public IEnumerator TestRunnerCorotine() + { + while (m_TestSteps.MoveNext()) + { + yield return m_TestSteps.Current; + } + + if (m_Runner.IsTestComplete) + { + runFinishedEvent.Invoke(m_Runner.Result); + Cleanup(); + + yield return null; + } + } + + public IEnumerator Run() + { + CoroutineTestWorkItem.monoBehaviourCoroutineRunner = this; + gameObject.hideFlags |= HideFlags.DontSave; + + if (settings.sceneBased) + { + SceneManager.LoadScene(1, LoadSceneMode.Additive); + yield return null; + } + + var testListUtil = new PlayerTestAssemblyProvider(new AssemblyLoadProxy(), m_AssembliesWithTests); + m_Runner = new UnityTestAssemblyRunner(new UnityTestAssemblyBuilder(), new PlaymodeWorkItemFactory()); + + var loadedTests = m_Runner.Load(testListUtil.GetUserAssemblies().Select(a => a.Assembly).ToArray(), UnityTestAssemblyBuilder.GetNUnitTestBuilderSettings(TestPlatform.PlayMode)); + loadedTests.ParseForNameDuplicates(); + runStartedEvent.Invoke(m_Runner.LoadedTest); + + var testListenerWrapper = new TestListenerWrapper(testStartedEvent, testFinishedEvent); + m_TestSteps = m_Runner.Run(testListenerWrapper, settings.filter.BuildNUnitFilter()).GetEnumerator(); + + yield return TestRunnerCorotine(); + } + + public void Cleanup() + { + if (m_Runner != null) + { + m_Runner.StopRun(); + m_Runner = null; + } + if (Application.isEditor) + { + Destroy(gameObject); + } + } + + public static void TryCleanup() + { + var controller = GetController(); + if (controller != null) + { + controller.Cleanup(); + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/PlaymodeTestsController.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/PlaymodeTestsController.cs.meta new file mode 100644 index 0000000..9693778 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/PlaymodeTestsController.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 102e512f651ee834f951a2516c1ea3b8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/PlaymodeTestsControllerSettings.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/PlaymodeTestsControllerSettings.cs new file mode 100644 index 0000000..f52b3b8 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/PlaymodeTestsControllerSettings.cs @@ -0,0 +1,28 @@ +using System; +using UnityEngine.SceneManagement; +using UnityEngine.TestTools.TestRunner.GUI; + +namespace UnityEngine.TestTools.TestRunner +{ + [Serializable] + internal class PlaymodeTestsControllerSettings + { + [SerializeField] + public TestRunnerFilter filter; + public bool sceneBased; + public string originalScene; + public string bootstrapScene; + + public static PlaymodeTestsControllerSettings CreateRunnerSettings(TestRunnerFilter filter) + { + var settings = new PlaymodeTestsControllerSettings + { + filter = filter, + sceneBased = false, + originalScene = SceneManager.GetActiveScene().path, + bootstrapScene = null + }; + return settings; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/PlaymodeTestsControllerSettings.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/PlaymodeTestsControllerSettings.cs.meta new file mode 100644 index 0000000..06448a7 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/PlaymodeTestsControllerSettings.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 2799eb4c84e72e54092a292cf626936b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers.meta new file mode 100644 index 0000000..d23c0a7 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 91c20d2c22b8b3a4cb6c816bd225591a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/IRemoteTestResultDataFactory.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/IRemoteTestResultDataFactory.cs new file mode 100644 index 0000000..fffba29 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/IRemoteTestResultDataFactory.cs @@ -0,0 +1,11 @@ +using System; +using NUnit.Framework.Interfaces; + +namespace UnityEngine.TestRunner.TestLaunchers +{ + internal interface IRemoteTestResultDataFactory + { + RemoteTestResultDataWithTestData CreateFromTestResult(ITestResult result); + RemoteTestResultDataWithTestData CreateFromTest(ITest test); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/IRemoteTestResultDataFactory.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/IRemoteTestResultDataFactory.cs.meta new file mode 100644 index 0000000..3bc8e30 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/IRemoteTestResultDataFactory.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 874c0713cdc44f549b0161750b48d2c2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/PlayerConnectionMessageIds.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/PlayerConnectionMessageIds.cs new file mode 100644 index 0000000..3dbfdb4 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/PlayerConnectionMessageIds.cs @@ -0,0 +1,12 @@ +using System; + +namespace UnityEngine.TestRunner.TestLaunchers +{ + internal static class PlayerConnectionMessageIds + { + public static Guid runStartedMessageId { get { return new Guid("6a7f53dd-4672-461d-a7b5-9467e9393fd3"); } } + public static Guid runFinishedMessageId { get { return new Guid("ffb622fc-34ad-4901-8d7b-47fb04b0bdd4"); } } + public static Guid testStartedMessageId { get { return new Guid("b54d241e-d88d-4dba-8c8f-ee415d11c030"); } } + public static Guid testFinishedMessageId { get { return new Guid("72f7b7f4-6829-4cd1-afde-78872b9d5adc"); } } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/PlayerConnectionMessageIds.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/PlayerConnectionMessageIds.cs.meta new file mode 100644 index 0000000..bf86f7e --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/PlayerConnectionMessageIds.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 41d60936b62cc6d4ca7fe628b22b0e40 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestData.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestData.cs new file mode 100644 index 0000000..b2cf24e --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestData.cs @@ -0,0 +1,54 @@ +using System; +using System.Linq; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; +using UnityEngine.TestRunner.NUnitExtensions; + +namespace UnityEngine.TestRunner.TestLaunchers +{ + [Serializable] + internal class RemoteTestData + { + public string id; + public string name; + public string fullName; + public int testCaseCount; + public int ChildIndex; + public bool hasChildren; + public bool isSuite; + public string[] childrenIds; + public int testCaseTimeout; + public string[] Categories; + public bool IsTestAssembly; + public RunState RunState; + public string Description; + public string SkipReason; + public string ParentId; + public string UniqueName; + public string ParentUniqueName; + + internal RemoteTestData(ITest test) + { + id = test.Id; + name = test.Name; + fullName = test.FullName; + testCaseCount = test.TestCaseCount; + ChildIndex = -1; + if (test.Properties["childIndex"].Count > 0) + { + ChildIndex = (int)test.Properties["childIndex"][0]; + } + hasChildren = test.HasChildren; + isSuite = test.IsSuite; + childrenIds = test.Tests.Select(t => t.Id).ToArray(); + Categories = test.GetAllCategoriesFromTest().ToArray(); + IsTestAssembly = test is TestAssembly; + RunState = (RunState)Enum.Parse(typeof(RunState), test.RunState.ToString()); + Description = (string)test.Properties.Get(PropertyNames.Description); + SkipReason = test.GetSkipReason(); + ParentId = test.GetParentId(); + UniqueName = test.GetUniqueName(); + ParentUniqueName = test.GetParentUniqueName(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestData.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestData.cs.meta new file mode 100644 index 0000000..0c286dc --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestData.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b135ec222fdcd11468014c90d11d6821 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultData.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultData.cs new file mode 100644 index 0000000..90f82a4 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultData.cs @@ -0,0 +1,54 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using NUnit.Framework.Interfaces; + +namespace UnityEngine.TestRunner.TestLaunchers +{ + [Serializable] + internal class RemoteTestResultData + { + public string testId; + public string name; + public string fullName; + public string resultState; + public TestStatus testStatus; + public double duration; + public DateTime startTime; + public DateTime endTime; + public string message; + public string stackTrace; + public int assertCount; + public int failCount; + public int passCount; + public int skipCount; + public int inconclusiveCount; + public bool hasChildren; + public string output; + public string xml; + public string[] childrenIds; + + internal RemoteTestResultData(ITestResult result) + { + testId = result.Test.Id; + name = result.Name; + fullName = result.FullName; + resultState = result.ResultState.ToString(); + testStatus = result.ResultState.Status; + duration = result.Duration; + startTime = result.StartTime; + endTime = result.EndTime; + message = result.Message; + stackTrace = result.StackTrace; + assertCount = result.AssertCount; + failCount = result.FailCount; + passCount = result.PassCount; + skipCount = result.SkipCount; + inconclusiveCount = result.InconclusiveCount; + hasChildren = result.HasChildren; + output = result.Output; + xml = result.ToXml(true).OuterXml; + childrenIds = result.Children.Select(child => child.Test.Id).ToArray(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultData.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultData.cs.meta new file mode 100644 index 0000000..a213e6b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultData.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 03e4d63665d06f04c8a6cf68133c1592 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultDataFactory.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultDataFactory.cs new file mode 100644 index 0000000..0b3cd03 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultDataFactory.cs @@ -0,0 +1,51 @@ +using System.Collections.Generic; +using System.Linq; +using NUnit.Framework.Interfaces; +using UnityEngine.TestRunner.NUnitExtensions.Runner; + +namespace UnityEngine.TestRunner.TestLaunchers +{ + internal class RemoteTestResultDataFactory : IRemoteTestResultDataFactory + { + public RemoteTestResultDataWithTestData CreateFromTestResult(ITestResult result) + { + var tests = CreateTestDataList(result.Test); + tests.First().testCaseTimeout = UnityTestExecutionContext.CurrentContext.TestCaseTimeout; + return new RemoteTestResultDataWithTestData() + { + results = CreateTestResultDataList(result), + tests = tests + }; + } + + public RemoteTestResultDataWithTestData CreateFromTest(ITest test) + { + var tests = CreateTestDataList(test); + if (UnityTestExecutionContext.CurrentContext != null) + { + tests.First().testCaseTimeout = UnityTestExecutionContext.CurrentContext.TestCaseTimeout; + } + + return new RemoteTestResultDataWithTestData() + { + tests = tests + }; + } + + private RemoteTestData[] CreateTestDataList(ITest test) + { + var list = new List(); + list.Add(new RemoteTestData(test)); + list.AddRange(test.Tests.SelectMany(CreateTestDataList)); + return list.ToArray(); + } + + private static RemoteTestResultData[] CreateTestResultDataList(ITestResult result) + { + var list = new List(); + list.Add(new RemoteTestResultData(result)); + list.AddRange(result.Children.SelectMany(CreateTestResultDataList)); + return list.ToArray(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultDataFactory.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultDataFactory.cs.meta new file mode 100644 index 0000000..bc0dd7c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultDataFactory.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 826b6becaef90fb458eedebe4c2f3664 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultDataWithTestData.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultDataWithTestData.cs new file mode 100644 index 0000000..36124cc --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultDataWithTestData.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using NUnit.Framework.Interfaces; +using UnityEngine.TestRunner.NUnitExtensions.Runner; + +namespace UnityEngine.TestRunner.TestLaunchers +{ + [Serializable] + internal class RemoteTestResultDataWithTestData + { + public RemoteTestResultData[] results; + public RemoteTestData[] tests; + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultDataWithTestData.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultDataWithTestData.cs.meta new file mode 100644 index 0000000..ffab8f6 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/RemoteHelpers/RemoteTestResultDataWithTestData.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 475e3699f219c854f8581a9838135002 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestEnumeratorWrapper.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestEnumeratorWrapper.cs new file mode 100644 index 0000000..5ed2ec8 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestEnumeratorWrapper.cs @@ -0,0 +1,51 @@ +using System; +using System.Collections; +using System.Reflection; +using NUnit.Framework; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; + +namespace UnityEngine.TestTools.TestRunner +{ + internal class TestEnumeratorWrapper + { + private readonly TestMethod m_TestMethod; + + public TestEnumeratorWrapper(TestMethod testMethod) + { + m_TestMethod = testMethod; + } + + public IEnumerator GetEnumerator(ITestExecutionContext context) + { + if (m_TestMethod.Method.ReturnType.Type == typeof(IEnumerator)) + { + return HandleEnumerableTest(context); + } + var message = string.Format("Return type {0} of {1} in {2} is not supported.", + m_TestMethod.Method.ReturnType, m_TestMethod.Method.Name, m_TestMethod.Method.TypeInfo.FullName); + if (m_TestMethod.Method.ReturnType.Type == typeof(IEnumerable)) + { + message += "\nDid you mean IEnumerator?"; + } + throw new InvalidSignatureException(message); + } + + private IEnumerator HandleEnumerableTest(ITestExecutionContext context) + { + try + { + return m_TestMethod.Method.MethodInfo.Invoke(context.TestObject, m_TestMethod.parms != null ? m_TestMethod.parms.OriginalArguments : null) as IEnumerator; + } + catch (TargetInvocationException e) + { + if (e.InnerException is IgnoreException) + { + context.CurrentResult.SetResult(ResultState.Ignored, e.InnerException.Message); + return null; + } + throw; + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestEnumeratorWrapper.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestEnumeratorWrapper.cs.meta new file mode 100644 index 0000000..f19ee3e --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestEnumeratorWrapper.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9ad0b0c865b01af4ca1b414689e71259 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestListenerWrapper.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestListenerWrapper.cs new file mode 100644 index 0000000..ffa23de --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestListenerWrapper.cs @@ -0,0 +1,30 @@ +using NUnit.Framework.Interfaces; + +namespace UnityEngine.TestTools.TestRunner +{ + internal class TestListenerWrapper : ITestListener + { + private readonly TestFinishedEvent m_TestFinishedEvent; + private readonly TestStartedEvent m_TestStartedEvent; + + public TestListenerWrapper(TestStartedEvent testStartedEvent, TestFinishedEvent testFinishedEvent) + { + m_TestStartedEvent = testStartedEvent; + m_TestFinishedEvent = testFinishedEvent; + } + + public void TestStarted(ITest test) + { + m_TestStartedEvent.Invoke(test); + } + + public void TestFinished(ITestResult result) + { + m_TestFinishedEvent.Invoke(result); + } + + public void TestOutput(TestOutput output) + { + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestListenerWrapper.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestListenerWrapper.cs.meta new file mode 100644 index 0000000..aefe039 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestListenerWrapper.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 73deb9b8722aa284eab27c4dc90956c6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestPlatform.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestPlatform.cs new file mode 100644 index 0000000..21a6ec2 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestPlatform.cs @@ -0,0 +1,21 @@ +using System; + +namespace UnityEngine.TestTools +{ + [Flags] + [Serializable] + public enum TestPlatform : byte + { + All = 0xFF, + EditMode = 1 << 1, + PlayMode = 1 << 2 + } + + internal static class TestPlatformEnumExtensions + { + public static bool IsFlagIncluded(this TestPlatform flags, TestPlatform flag) + { + return (flags & flag) == flag; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestPlatform.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestPlatform.cs.meta new file mode 100644 index 0000000..6eb087a --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestPlatform.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 743879b4db4bc1a4b829aae4386f4acf +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestRunnerFilter.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestRunnerFilter.cs new file mode 100644 index 0000000..b0bd461 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestRunnerFilter.cs @@ -0,0 +1,197 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text.RegularExpressions; +using System.IO; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; +using NUnit.Framework.Internal.Filters; +using UnityEngine.TestRunner.NUnitExtensions.Filters; + +namespace UnityEngine.TestTools.TestRunner.GUI +{ + [Serializable] + internal class TestRunnerFilter + { +#pragma warning disable 649 + public string[] assemblyNames; + public string[] groupNames; + public string[] categoryNames; + public static TestRunnerFilter empty = new TestRunnerFilter(); + public string[] testNames; + public int testRepetitions = 1; + + public static string AssemblyNameFromPath(string path) + { + string output = Path.GetFileName(path); + if (output != null && output.EndsWith(".dll", StringComparison.OrdinalIgnoreCase)) + return output.Substring(0, output.Length - 4); + return output; + } + + private bool CategoryMatches(IEnumerable categories) + { + if (categoryNames == null || categoryNames.Length == 0) + return true; + + foreach (string category in categories) + { + if (categoryNames.Contains(category)) + return true; + } + + return false; + } + + private bool IDMatchesAssembly(string id) + { + if (AreOptionalFiltersEmpty()) + return true; + + if (assemblyNames == null) + return false; + + int openingBracket = id.IndexOf('['); + int closingBracket = id.IndexOf(']'); + if (openingBracket >= 0 && openingBracket < id.Length && closingBracket > openingBracket && openingBracket < id.Length) + { + //Some assemblies are absolute and explicitly part of the test ID e.g. + //"[/path/to/assembly-name.dll][rest of ID ...]" + //While some are minimal assembly names e.g. + //"[assembly-name][rest of ID ...]" + //Strip them down to just the assembly name + string assemblyNameFromID = AssemblyNameFromPath(id.Substring(openingBracket + 1, closingBracket - openingBracket - 1)); + foreach (string assemblyName in assemblyNames) + { + if (assemblyName.Equals(assemblyNameFromID, StringComparison.OrdinalIgnoreCase)) + return true; + } + } + return false; + } + + private bool NameMatches(string name) + { + if (AreOptionalFiltersEmpty()) + return true; + + if (groupNames == null) + return false; + + foreach (var nameFromFilter in groupNames) + { + //Strict regex match for test group name on its own + if (Regex.IsMatch(name, nameFromFilter)) + return true; + //Match test names that end with parametrized test values and full nunit generated test names that have . separators + var regex = nameFromFilter.TrimEnd('$') + @"[\.|\(.*\)]"; + if (Regex.IsMatch(name, regex)) + return true; + } + return false; + } + + private bool AreOptionalFiltersEmpty() + { + if (assemblyNames != null && assemblyNames.Length != 0) + return false; + if (groupNames != null && groupNames.Length != 0) + return false; + if (testNames != null && testNames.Length != 0) + return false; + return true; + } + + private bool NameMatchesExactly(string name) + { + if (AreOptionalFiltersEmpty()) + return true; + + if (testNames == null) + return false; + + foreach (var exactName in testNames) + { + if (name == exactName) + return true; + } + return false; + } + + private static void ClearAncestors(IEnumerable newResultList, string parentID) + { + if (string.IsNullOrEmpty(parentID)) + return; + foreach (var result in newResultList) + { + if (result.Id == parentID) + { + result.Clear(); + ClearAncestors(newResultList, result.ParentId); + break; + } + } + } + + public void ClearResults(List newResultList) + { + foreach (var result in newResultList) + { + if (!result.IsSuite && CategoryMatches(result.Categories)) + { + if (IDMatchesAssembly(result.Id) || NameMatches(result.FullName) || NameMatchesExactly(result.FullName)) + { + result.Clear(); + ClearAncestors(newResultList, result.ParentId); + } + } + } + } + + public ITestFilter BuildNUnitFilter() + { + var filters = new List(); + + if (testNames != null && testNames.Length != 0) + { + var nameFilter = new OrFilter(testNames.Select(n => new FullNameFilter(n)).ToArray()); + filters.Add(nameFilter); + } + + if (groupNames != null && groupNames.Length != 0) + { + var exactNamesFilter = new OrFilter(groupNames.Select(n => + { + var f = new FullNameFilter(n); + f.IsRegex = true; + return f; + }).ToArray()); + filters.Add(exactNamesFilter); + } + + if (assemblyNames != null && assemblyNames.Length != 0) + { + var assemblyFilter = new OrFilter(assemblyNames.Select(c => new AssemblyNameFilter(c)).ToArray()); + filters.Add(assemblyFilter); + } + + if (categoryNames != null && categoryNames.Length != 0) + { + var categoryFilter = new OrFilter(categoryNames.Select(c => new CategoryFilterExtended(c) {IsRegex = true}).ToArray()); + filters.Add(categoryFilter); + } + + return filters.Count == 0 ? TestFilter.Empty : new AndFilter(filters.ToArray()); + } + + internal interface IClearableResult + { + string Id { get; } + string FullName { get; } + string ParentId { get; } + bool IsSuite { get; } + List Categories { get; } + void Clear(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestRunnerFilter.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestRunnerFilter.cs.meta new file mode 100644 index 0000000..5f9aa3b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/TestRunner/TestRunnerFilter.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a025ba7ee40d0104db8d08b1d9eabb0d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/UnityEngine.TestRunner.asmdef b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/UnityEngine.TestRunner.asmdef new file mode 100644 index 0000000..6dc17da --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/UnityEngine.TestRunner.asmdef @@ -0,0 +1,13 @@ +{ + "name": "UnityEngine.TestRunner", + "references": [], + "includePlatforms": [], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": true, + "precompiledReferences": [ + "nunit.framework.dll" + ], + "autoReferenced": false, + "defineConstraints": [] +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/UnityEngine.TestRunner.asmdef.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/UnityEngine.TestRunner.asmdef.meta new file mode 100644 index 0000000..a2002fd --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/UnityEngine.TestRunner.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 27619889b8ba8c24980f49ee34dbb44a +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils.meta new file mode 100644 index 0000000..d9503ad --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: bb32bccaf32a6db448d1c0cc99c78688 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider.meta new file mode 100644 index 0000000..a8326f0 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 51557afa652635743b264a309f0a5c60 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/AssemblyLoadProxy.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/AssemblyLoadProxy.cs new file mode 100644 index 0000000..9edc517 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/AssemblyLoadProxy.cs @@ -0,0 +1,12 @@ +using System.Reflection; + +namespace UnityEngine.TestTools.Utils +{ + internal class AssemblyLoadProxy : IAssemblyLoadProxy + { + public IAssemblyWrapper Load(string assemblyString) + { + return new AssemblyWrapper(Assembly.Load(assemblyString)); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/AssemblyLoadProxy.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/AssemblyLoadProxy.cs.meta new file mode 100644 index 0000000..8bb527d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/AssemblyLoadProxy.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fb593906b7b6d824087dcaebf6c082e0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/AssemblyWrapper.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/AssemblyWrapper.cs new file mode 100644 index 0000000..cb46f1b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/AssemblyWrapper.cs @@ -0,0 +1,30 @@ +using System; +using System.Reflection; + +namespace UnityEngine.TestTools.Utils +{ + internal class AssemblyWrapper : IAssemblyWrapper + { + public AssemblyWrapper(Assembly assembly) + { + Assembly = assembly; + } + + public Assembly Assembly { get; } + + public virtual string Location + { + get + { + //Some platforms dont support this + throw new NotImplementedException(); + } + } + + public virtual AssemblyName[] GetReferencedAssemblies() + { + //Some platforms dont support this + throw new NotImplementedException(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/AssemblyWrapper.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/AssemblyWrapper.cs.meta new file mode 100644 index 0000000..1e4a718 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/AssemblyWrapper.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 2e3b9bbf2c1a3cd4f88883ca32882ec6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IAssemblyLoadProxy.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IAssemblyLoadProxy.cs new file mode 100644 index 0000000..feffa62 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IAssemblyLoadProxy.cs @@ -0,0 +1,7 @@ +namespace UnityEngine.TestTools.Utils +{ + internal interface IAssemblyLoadProxy + { + IAssemblyWrapper Load(string assemblyString); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IAssemblyLoadProxy.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IAssemblyLoadProxy.cs.meta new file mode 100644 index 0000000..284d33b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IAssemblyLoadProxy.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 12dfd4bdbb5c8e6419432fbc54ef25d9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IAssemblyWrapper.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IAssemblyWrapper.cs new file mode 100644 index 0000000..145c682 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IAssemblyWrapper.cs @@ -0,0 +1,11 @@ +using System.Reflection; + +namespace UnityEngine.TestTools.Utils +{ + internal interface IAssemblyWrapper + { + Assembly Assembly { get; } + string Location { get; } + AssemblyName[] GetReferencedAssemblies(); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IAssemblyWrapper.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IAssemblyWrapper.cs.meta new file mode 100644 index 0000000..486888d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IAssemblyWrapper.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1c5afe945b715e149a70113a4be7b32a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IScriptingRuntimeProxy.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IScriptingRuntimeProxy.cs new file mode 100644 index 0000000..0dc2b7f --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IScriptingRuntimeProxy.cs @@ -0,0 +1,7 @@ +namespace UnityEngine.TestTools.Utils +{ + internal interface IScriptingRuntimeProxy + { + string[] GetAllUserAssemblies(); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IScriptingRuntimeProxy.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IScriptingRuntimeProxy.cs.meta new file mode 100644 index 0000000..85ae985 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/IScriptingRuntimeProxy.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fe4aef60e4ace544c8430da8ef8acba2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/ITestAssemblyProvider.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/ITestAssemblyProvider.cs new file mode 100644 index 0000000..74f2769 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/ITestAssemblyProvider.cs @@ -0,0 +1,10 @@ +using NUnit.Framework.Interfaces; + +namespace UnityEngine.TestTools.Utils +{ + internal interface ITestAssemblyProvider + { + ITest GetTestsWithNUnit(); + IAssemblyWrapper[] GetUserAssemblies(); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/ITestAssemblyProvider.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/ITestAssemblyProvider.cs.meta new file mode 100644 index 0000000..d7e856b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/ITestAssemblyProvider.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c5acba6181d845c4e92146009bd4480f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/PlayerTestAssemblyProvider.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/PlayerTestAssemblyProvider.cs new file mode 100644 index 0000000..04cd11b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/PlayerTestAssemblyProvider.cs @@ -0,0 +1,66 @@ +using System.Collections.Generic; +using System.IO; +using System.Linq; +using NUnit.Framework.Interfaces; +using UnityEngine.TestTools.NUnitExtensions; + +namespace UnityEngine.TestTools.Utils +{ + internal class PlayerTestAssemblyProvider + { + private IAssemblyLoadProxy m_AssemblyLoadProxy; + private readonly List m_AssembliesToLoad; + + //Cached until domain reload + private static List m_LoadedAssemblies; + + internal PlayerTestAssemblyProvider(IAssemblyLoadProxy assemblyLoadProxy, List assembliesToLoad) + { + m_AssemblyLoadProxy = assemblyLoadProxy; + m_AssembliesToLoad = assembliesToLoad; + LoadAssemblies(); + } + + public ITest GetTestsWithNUnit() + { + return BuildTests(TestPlatform.PlayMode, m_LoadedAssemblies.ToArray()); + } + + public List GetUserAssemblies() + { + return m_LoadedAssemblies; + } + + protected static ITest BuildTests(TestPlatform testPlatform, IAssemblyWrapper[] assemblies) + { + var settings = UnityTestAssemblyBuilder.GetNUnitTestBuilderSettings(testPlatform); + var builder = new UnityTestAssemblyBuilder(); + return builder.Build(assemblies.Select(a => a.Assembly).ToArray(), settings); + } + + private void LoadAssemblies() + { + if (m_LoadedAssemblies != null) + { + return; + } + + m_LoadedAssemblies = new List(); + + foreach (var userAssembly in m_AssembliesToLoad) + { + IAssemblyWrapper a; + try + { + a = m_AssemblyLoadProxy.Load(userAssembly); + } + catch (FileNotFoundException) + { + continue; + } + if (a != null) + m_LoadedAssemblies.Add(a); + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/PlayerTestAssemblyProvider.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/PlayerTestAssemblyProvider.cs.meta new file mode 100644 index 0000000..ffee12c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/PlayerTestAssemblyProvider.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 43a3aec217baa9644a7cf34b5f93fed9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/ScriptingRuntimeProxy.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/ScriptingRuntimeProxy.cs new file mode 100644 index 0000000..0f1eb2b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/ScriptingRuntimeProxy.cs @@ -0,0 +1,10 @@ +namespace UnityEngine.TestTools.Utils +{ + internal class ScriptingRuntimeProxy : IScriptingRuntimeProxy + { + public string[] GetAllUserAssemblies() + { + return ScriptingRuntime.GetAllUserAssemblies(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/ScriptingRuntimeProxy.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/ScriptingRuntimeProxy.cs.meta new file mode 100644 index 0000000..7b16cb9 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AssemblyProvider/ScriptingRuntimeProxy.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f3a361a6ad1aff14ba8f48976e94ad76 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AttributeHelper.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AttributeHelper.cs new file mode 100644 index 0000000..7d710cb --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AttributeHelper.cs @@ -0,0 +1,45 @@ +using System; +using System.IO; +using System.Linq; + +namespace UnityEngine.TestTools +{ + internal static class AttributeHelper + { + internal static Type GetTargetClassFromName(string targetClassName, Type attributeInterface) + { + Type targetClass = null; + foreach (var assemblyName in ScriptingRuntime.GetAllUserAssemblies()) + { + // we need to pass the assembly name without the .dll extension, so removing that first + var name = Path.GetFileNameWithoutExtension(assemblyName); + targetClass = Type.GetType(targetClassName + "," + name); + if (targetClass != null) + break; + } + + if (targetClass == null) + { + Debug.LogWarningFormat("Class type not found: " + targetClassName); + return null; + } + + ValidateTargetClass(targetClass, attributeInterface); + return targetClass; + } + + private static void ValidateTargetClass(Type targetClass, Type attributeInterface) + { + var constructorInfos = targetClass.GetConstructors(); + if (constructorInfos.All(constructor => constructor.GetParameters().Length != 0)) + { + Debug.LogWarningFormat("{0} does not implement default constructor", targetClass.Name); + } + + if (!attributeInterface.IsAssignableFrom(targetClass)) + { + Debug.LogWarningFormat("{0} does not implement {1}", targetClass.Name, attributeInterface.Name); + } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AttributeHelper.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AttributeHelper.cs.meta new file mode 100644 index 0000000..cc47e6f --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/AttributeHelper.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ae8ce3ffe04ac2c42945fd27e0291fc3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/ColorEqualityComparer.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/ColorEqualityComparer.cs new file mode 100644 index 0000000..073aa08 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/ColorEqualityComparer.cs @@ -0,0 +1,36 @@ +using System.Collections.Generic; + +namespace UnityEngine.TestTools.Utils +{ + public class ColorEqualityComparer : IEqualityComparer + { + private const float k_DefaultError = 0.01f; + private readonly float AllowedError; + + + private static readonly ColorEqualityComparer m_Instance = new ColorEqualityComparer(); + public static ColorEqualityComparer Instance { get { return m_Instance; } } + + private ColorEqualityComparer() : this(k_DefaultError) + { + } + + public ColorEqualityComparer(float error) + { + this.AllowedError = error; + } + + public bool Equals(Color expected, Color actual) + { + return Utils.AreFloatsEqualAbsoluteError(expected.r, actual.r, AllowedError) && + Utils.AreFloatsEqualAbsoluteError(expected.g, actual.g, AllowedError) && + Utils.AreFloatsEqualAbsoluteError(expected.b, actual.b, AllowedError) && + Utils.AreFloatsEqualAbsoluteError(expected.a, actual.a, AllowedError); + } + + public int GetHashCode(Color color) + { + return 0; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/ColorEqualityComparer.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/ColorEqualityComparer.cs.meta new file mode 100644 index 0000000..42da075 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/ColorEqualityComparer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d6105bc8cf5ce544487daca4cbc62583 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/CoroutineRunner.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/CoroutineRunner.cs new file mode 100644 index 0000000..db4d769 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/CoroutineRunner.cs @@ -0,0 +1,103 @@ +using System; +using System.Collections; +using NUnit.Framework.Internal; +using UnityEngine.TestRunner.NUnitExtensions.Runner; + +namespace UnityEngine.TestTools.Utils +{ + internal class CoroutineRunner + { + private bool m_Running; + private bool m_TestFailed; + private bool m_Timeout; + private readonly MonoBehaviour m_Controller; + private readonly UnityTestExecutionContext m_Context; + private Coroutine m_TimeOutCoroutine; + private IEnumerator m_TestCoroutine; + + internal const int k_DefaultTimeout = 1000 * 180; + + public CoroutineRunner(MonoBehaviour playmodeTestsController, UnityTestExecutionContext context) + { + m_Controller = playmodeTestsController; + m_Context = context; + } + + public IEnumerator HandleEnumerableTest(IEnumerator testEnumerator) + { + if (m_Context.TestCaseTimeout == 0) + { + m_Context.TestCaseTimeout = k_DefaultTimeout; + } + do + { + if (!m_Running) + { + m_Running = true; + m_TestCoroutine = ExMethod(testEnumerator, m_Context.TestCaseTimeout); + m_Controller.StartCoroutine(m_TestCoroutine); + } + if (m_TestFailed) + { + StopAllRunningCoroutines(); + yield break; + } + + if (m_Context.ExecutionStatus == TestExecutionStatus.StopRequested || m_Context.ExecutionStatus == TestExecutionStatus.AbortRequested) + { + StopAllRunningCoroutines(); + yield break; + } + yield return null; + } + while (m_Running); + } + + private void StopAllRunningCoroutines() + { + if (m_TimeOutCoroutine != null) + { + m_Controller.StopCoroutine(m_TimeOutCoroutine); + } + + if (m_TestCoroutine != null) + { + m_Controller.StopCoroutine(m_TestCoroutine); + } + } + + private IEnumerator ExMethod(IEnumerator e, int timeout) + { + m_TimeOutCoroutine = m_Controller.StartCoroutine(StartTimer(e, timeout, + () => + { + m_TestFailed = true; + m_Timeout = true; + m_Running = false; + })); + + yield return m_Controller.StartCoroutine(e); + m_Controller.StopCoroutine(m_TimeOutCoroutine); + m_Running = false; + } + + private IEnumerator StartTimer(IEnumerator coroutineToBeKilled, int timeout, Action onTimeout) + { + yield return new WaitForSecondsRealtime(timeout / 1000f); + if (coroutineToBeKilled != null) + m_Controller.StopCoroutine(coroutineToBeKilled); + if (onTimeout != null) + onTimeout(); + } + + public bool HasFailedWithTimeout() + { + return m_Timeout; + } + + public int GetDefaultTimeout() + { + return k_DefaultTimeout; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/CoroutineRunner.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/CoroutineRunner.cs.meta new file mode 100644 index 0000000..756d54e --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/CoroutineRunner.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 24a158219395ebf44a60547b97784ddc +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/FloatEqualityComparer.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/FloatEqualityComparer.cs new file mode 100644 index 0000000..58438a7 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/FloatEqualityComparer.cs @@ -0,0 +1,30 @@ +using System.Collections.Generic; + +namespace UnityEngine.TestTools.Utils +{ + public class FloatEqualityComparer : IEqualityComparer + { + private const float k_DefaultError = 0.0001f; + private readonly float AllowedError; + + private static readonly FloatEqualityComparer m_Instance = new FloatEqualityComparer(); + public static FloatEqualityComparer Instance { get { return m_Instance; } } + + private FloatEqualityComparer() : this(k_DefaultError) {} + + public FloatEqualityComparer(float allowedError) + { + this.AllowedError = allowedError; + } + + public bool Equals(float expected, float actual) + { + return Utils.AreFloatsEqual(expected, actual, AllowedError); + } + + public int GetHashCode(float value) + { + return 0; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/FloatEqualityComparer.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/FloatEqualityComparer.cs.meta new file mode 100644 index 0000000..7497131 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/FloatEqualityComparer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: af5042802f06c804c8abddd544b77a4a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IOuterUnityTestAction.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IOuterUnityTestAction.cs new file mode 100644 index 0000000..ff0fe77 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IOuterUnityTestAction.cs @@ -0,0 +1,19 @@ +using System.Collections; +using NUnit.Framework.Interfaces; + +namespace UnityEngine.TestTools +{ + /// + /// When implemented by an attribute, this interface implemented to provide actions to execute before setup and after teardown of tests. + /// + public interface IOuterUnityTestAction + { + /// Executed before each test is run + /// The test that is going to be run. + IEnumerator BeforeTest(ITest test); + + /// Executed after each test is run + /// The test that has just been run. + IEnumerator AfterTest(ITest test); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IOuterUnityTestAction.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IOuterUnityTestAction.cs.meta new file mode 100644 index 0000000..93429d4 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IOuterUnityTestAction.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b9c2a6302985d3846b7b9f6fd9e2da9a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IPostBuildCleanup.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IPostBuildCleanup.cs new file mode 100644 index 0000000..489357c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IPostBuildCleanup.cs @@ -0,0 +1,7 @@ +namespace UnityEngine.TestTools +{ + public interface IPostBuildCleanup + { + void Cleanup(); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IPostBuildCleanup.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IPostBuildCleanup.cs.meta new file mode 100644 index 0000000..f1cb9a9 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IPostBuildCleanup.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ff67c526455160f4690a44f74dee4cbe +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IPrebuildSceneSetup.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IPrebuildSceneSetup.cs new file mode 100644 index 0000000..3920b0b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IPrebuildSceneSetup.cs @@ -0,0 +1,7 @@ +namespace UnityEngine.TestTools +{ + public interface IPrebuildSetup + { + void Setup(); + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IPrebuildSceneSetup.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IPrebuildSceneSetup.cs.meta new file mode 100644 index 0000000..77dff87 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/IPrebuildSceneSetup.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: acc16f0c684508f44813662a300c574b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/MonoBehaviourTest.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/MonoBehaviourTest.meta new file mode 100644 index 0000000..5da2eb9 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/MonoBehaviourTest.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ce8da628f68c7594b8b9a597fa52db7b +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/MonoBehaviourTest/IMonoBehaviourTest.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/MonoBehaviourTest/IMonoBehaviourTest.cs new file mode 100644 index 0000000..334da4c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/MonoBehaviourTest/IMonoBehaviourTest.cs @@ -0,0 +1,7 @@ +namespace UnityEngine.TestTools +{ + public interface IMonoBehaviourTest + { + bool IsTestFinished {get; } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/MonoBehaviourTest/IMonoBehaviourTest.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/MonoBehaviourTest/IMonoBehaviourTest.cs.meta new file mode 100644 index 0000000..9af4004 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/MonoBehaviourTest/IMonoBehaviourTest.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a002d3737b873954395b7cf862873ab8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/MonoBehaviourTest/MonoBehaviourTest.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/MonoBehaviourTest/MonoBehaviourTest.cs new file mode 100644 index 0000000..e0b6372 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/MonoBehaviourTest/MonoBehaviourTest.cs @@ -0,0 +1,23 @@ +namespace UnityEngine.TestTools +{ + public class MonoBehaviourTest : CustomYieldInstruction where T : MonoBehaviour, IMonoBehaviourTest + { + public T component { get; } + public GameObject gameObject { get { return component.gameObject; } } + + public MonoBehaviourTest(bool dontDestroyOnLoad = true) + { + var go = new GameObject("MonoBehaviourTest: " + typeof(T).FullName); + component = go.AddComponent(); + if (dontDestroyOnLoad) + { + Object.DontDestroyOnLoad(go); + } + } + + public override bool keepWaiting + { + get { return !component.IsTestFinished; } + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/MonoBehaviourTest/MonoBehaviourTest.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/MonoBehaviourTest/MonoBehaviourTest.cs.meta new file mode 100644 index 0000000..c727f85 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/MonoBehaviourTest/MonoBehaviourTest.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 164c9b1458eaab743a4b45c37a4d720d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/PostBuildCleanupAttribute.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/PostBuildCleanupAttribute.cs new file mode 100644 index 0000000..ba7cea7 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/PostBuildCleanupAttribute.cs @@ -0,0 +1,20 @@ +using System; + +namespace UnityEngine.TestTools +{ + [AttributeUsage(AttributeTargets.Class | AttributeTargets.Method)] + public class PostBuildCleanupAttribute : Attribute + { + public PostBuildCleanupAttribute(Type targetClass) + { + TargetClass = targetClass; + } + + public PostBuildCleanupAttribute(string targetClassName) + { + TargetClass = AttributeHelper.GetTargetClassFromName(targetClassName, typeof(IPostBuildCleanup)); + } + + internal Type TargetClass { get; private set; } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/PostBuildCleanupAttribute.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/PostBuildCleanupAttribute.cs.meta new file mode 100644 index 0000000..b45a7a6 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/PostBuildCleanupAttribute.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 621fd19bcb071b64aa1d68f0271aa780 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/PrebuildSceneSetupAttribute.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/PrebuildSceneSetupAttribute.cs new file mode 100644 index 0000000..cb7d8e2 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/PrebuildSceneSetupAttribute.cs @@ -0,0 +1,20 @@ +using System; + +namespace UnityEngine.TestTools +{ + [AttributeUsage(AttributeTargets.Class | AttributeTargets.Method)] + public class PrebuildSetupAttribute : Attribute + { + public PrebuildSetupAttribute(Type targetClass) + { + TargetClass = targetClass; + } + + public PrebuildSetupAttribute(string targetClassName) + { + TargetClass = AttributeHelper.GetTargetClassFromName(targetClassName, typeof(IPrebuildSetup)); + } + + internal Type TargetClass { get; private set; } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/PrebuildSceneSetupAttribute.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/PrebuildSceneSetupAttribute.cs.meta new file mode 100644 index 0000000..7b6ae4a --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/PrebuildSceneSetupAttribute.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d1b7ce919aa8864409412e809073cf96 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/QuaternionEqualityComparer.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/QuaternionEqualityComparer.cs new file mode 100644 index 0000000..220f1aa --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/QuaternionEqualityComparer.cs @@ -0,0 +1,31 @@ +using System.Collections.Generic; + +namespace UnityEngine.TestTools.Utils +{ + public class QuaternionEqualityComparer : IEqualityComparer + { + private const float k_DefaultError = 0.00001f; + private readonly float AllowedError; + + private static readonly QuaternionEqualityComparer m_Instance = new QuaternionEqualityComparer(); + public static QuaternionEqualityComparer Instance { get { return m_Instance; } } + + + private QuaternionEqualityComparer() : this(k_DefaultError) {} + + public QuaternionEqualityComparer(float allowedError) + { + AllowedError = allowedError; + } + + public bool Equals(Quaternion expected, Quaternion actual) + { + return Mathf.Abs(Quaternion.Dot(expected, actual)) > (1.0f - AllowedError); + } + + public int GetHashCode(Quaternion quaternion) + { + return 0; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/QuaternionEqualityComparer.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/QuaternionEqualityComparer.cs.meta new file mode 100644 index 0000000..31faf0c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/QuaternionEqualityComparer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3b28913f21577de429da928d6d05219f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/StacktraceFilter.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/StacktraceFilter.cs new file mode 100644 index 0000000..af431f3 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/StacktraceFilter.cs @@ -0,0 +1,43 @@ +using System.Linq; +using System.Text; + +namespace UnityEngine.TestTools.Utils +{ + internal static class StackTraceFilter + { + private static readonly string[] s_FilteredLogMessages = + { + @"UnityEngine.DebugLogHandler:Internal_Log", + @"UnityEngine.DebugLogHandler:Log", + @"UnityEngine.Logger:Log", + @"UnityEngine.Debug" + }; + + private static readonly string[] s_LastMessages = + { + @"System.Reflection.MonoMethod:InternalInvoke(Object, Object[], Exception&)", + @"UnityEditor.TestTools.TestRunner.EditModeRunner:InvokeDelegator" + }; + + public static string Filter(string inputStackTrace) + { + int idx; + foreach (var lastMessage in s_LastMessages) + { + idx = inputStackTrace.IndexOf(lastMessage); + if (idx != -1) + inputStackTrace = inputStackTrace.Substring(0, idx); + } + + var inputStackTraceLines = inputStackTrace.Split('\n'); + var result = new StringBuilder(); + foreach (var line in inputStackTraceLines) + { + if (s_FilteredLogMessages.Any(s => line.StartsWith(s))) + continue; + result.AppendLine(line); + } + return result.ToString(); + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/StacktraceFilter.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/StacktraceFilter.cs.meta new file mode 100644 index 0000000..4f837a1 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/StacktraceFilter.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fc748d99f1f0d484a811a566fc7915ec +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Utils.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Utils.cs new file mode 100644 index 0000000..bc8b617 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Utils.cs @@ -0,0 +1,40 @@ +using System; + +namespace UnityEngine.TestTools.Utils +{ + public static class Utils + { + public static bool AreFloatsEqual(float expected, float actual, float epsilon) + { + // special case for infinity + if (expected == Mathf.Infinity || actual == Mathf.Infinity || expected == Mathf.NegativeInfinity || actual == Mathf.NegativeInfinity) + return expected == actual; + + // we cover both relative and absolute tolerance with this check + // which is better than just relative in case of small (in abs value) args + // please note that "usually" approximation is used [i.e. abs(x)+abs(y)+1] + // but we speak about test code so we dont care that much about performance + // but we do care about checks being more precise + return Math.Abs(actual - expected) <= epsilon * Mathf.Max(Mathf.Max(Mathf.Abs(actual), Mathf.Abs(expected)), 1.0f); + } + + public static bool AreFloatsEqualAbsoluteError(float expected, float actual, float allowedAbsoluteError) + { + return Math.Abs(actual - expected) <= allowedAbsoluteError; + } + + /// + /// Analogous to GameObject.CreatePrimitive, but creates a primitive mesh renderer with fast shader instead of a default builtin shader. + /// Optimized for testing performance. + /// + /// A GameObject with primitive mesh renderer and collider. + public static GameObject CreatePrimitive(PrimitiveType type) + { + var prim = GameObject.CreatePrimitive(type); + var renderer = prim.GetComponent(); + if (renderer) + renderer.sharedMaterial = new Material(Shader.Find("VertexLit")); + return prim; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Utils.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Utils.cs.meta new file mode 100644 index 0000000..63b9c66 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Utils.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9502550ba4785e3499d6c9251fa2114b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector2ComparerWithEqualsOperator.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector2ComparerWithEqualsOperator.cs new file mode 100644 index 0000000..081a8bb --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector2ComparerWithEqualsOperator.cs @@ -0,0 +1,22 @@ +using System.Collections.Generic; + +namespace UnityEngine.TestTools.Utils +{ + public class Vector2ComparerWithEqualsOperator : IEqualityComparer + { + private static readonly Vector2ComparerWithEqualsOperator m_Instance = new Vector2ComparerWithEqualsOperator(); + public static Vector2ComparerWithEqualsOperator Instance { get { return m_Instance; } } + + private Vector2ComparerWithEqualsOperator() {} + + public bool Equals(Vector2 expected, Vector2 actual) + { + return expected == actual; + } + + public int GetHashCode(Vector2 vec2) + { + return 0; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector2ComparerWithEqualsOperator.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector2ComparerWithEqualsOperator.cs.meta new file mode 100644 index 0000000..07662bb --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector2ComparerWithEqualsOperator.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 65701ebe8bada6b4785e9c7afe7f5bee +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector2EqualityComparer.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector2EqualityComparer.cs new file mode 100644 index 0000000..c0cca3f --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector2EqualityComparer.cs @@ -0,0 +1,33 @@ +using System.Collections.Generic; + +namespace UnityEngine.TestTools.Utils +{ + public class Vector2EqualityComparer : IEqualityComparer + { + private const float k_DefaultError = 0.0001f; + private readonly float AllowedError; + + private static readonly Vector2EqualityComparer m_Instance = new Vector2EqualityComparer(); + public static Vector2EqualityComparer Instance { get { return m_Instance; } } + + private Vector2EqualityComparer() : this(k_DefaultError) + { + } + + public Vector2EqualityComparer(float error) + { + this.AllowedError = error; + } + + public bool Equals(Vector2 expected, Vector2 actual) + { + return Utils.AreFloatsEqual(expected.x, actual.x, AllowedError) && + Utils.AreFloatsEqual(expected.y, actual.y, AllowedError); + } + + public int GetHashCode(Vector2 vec2) + { + return 0; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector2EqualityComparer.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector2EqualityComparer.cs.meta new file mode 100644 index 0000000..ed2951a --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector2EqualityComparer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 58ad09607a0d62d458a78d7174665566 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector3ComparerWithEqualsOperator.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector3ComparerWithEqualsOperator.cs new file mode 100644 index 0000000..ed665c0 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector3ComparerWithEqualsOperator.cs @@ -0,0 +1,22 @@ +using System.Collections.Generic; + +namespace UnityEngine.TestTools.Utils +{ + public class Vector3ComparerWithEqualsOperator : IEqualityComparer + { + private static readonly Vector3ComparerWithEqualsOperator m_Instance = new Vector3ComparerWithEqualsOperator(); + public static Vector3ComparerWithEqualsOperator Instance { get { return m_Instance; } } + + private Vector3ComparerWithEqualsOperator() {} + + public bool Equals(Vector3 expected, Vector3 actual) + { + return expected == actual; + } + + public int GetHashCode(Vector3 vec3) + { + return 0; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector3ComparerWithEqualsOperator.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector3ComparerWithEqualsOperator.cs.meta new file mode 100644 index 0000000..01662a4 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector3ComparerWithEqualsOperator.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5b994928117e3db418da69c821da7e19 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector3EqualityComparer.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector3EqualityComparer.cs new file mode 100644 index 0000000..47fac4b --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector3EqualityComparer.cs @@ -0,0 +1,32 @@ +using System.Collections.Generic; + + +namespace UnityEngine.TestTools.Utils +{ + public class Vector3EqualityComparer : IEqualityComparer + { + private const float k_DefaultError = 0.0001f; + private readonly float AllowedError; + + private static readonly Vector3EqualityComparer m_Instance = new Vector3EqualityComparer(); + public static Vector3EqualityComparer Instance { get { return m_Instance; } } + + private Vector3EqualityComparer() : this(k_DefaultError) {} + public Vector3EqualityComparer(float allowedError) + { + this.AllowedError = allowedError; + } + + public bool Equals(Vector3 expected, Vector3 actual) + { + return Utils.AreFloatsEqual(expected.x, actual.x, AllowedError) && + Utils.AreFloatsEqual(expected.y, actual.y, AllowedError) && + Utils.AreFloatsEqual(expected.z, actual.z, AllowedError); + } + + public int GetHashCode(Vector3 vec3) + { + return 0; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector3EqualityComparer.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector3EqualityComparer.cs.meta new file mode 100644 index 0000000..37e0a03 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector3EqualityComparer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4bd2bc28ff24d5c488844851cb785db0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector4ComparerWithEqualsOperator.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector4ComparerWithEqualsOperator.cs new file mode 100644 index 0000000..1f8d106 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector4ComparerWithEqualsOperator.cs @@ -0,0 +1,22 @@ +using System.Collections.Generic; + +namespace UnityEngine.TestTools.Utils +{ + public class Vector4ComparerWithEqualsOperator : IEqualityComparer + { + private static readonly Vector4ComparerWithEqualsOperator m_Instance = new Vector4ComparerWithEqualsOperator(); + public static Vector4ComparerWithEqualsOperator Instance { get { return m_Instance; } } + + private Vector4ComparerWithEqualsOperator() {} + + public bool Equals(Vector4 expected, Vector4 actual) + { + return expected == actual; + } + + public int GetHashCode(Vector4 vec4) + { + return 0; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector4ComparerWithEqualsOperator.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector4ComparerWithEqualsOperator.cs.meta new file mode 100644 index 0000000..a23cf66 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector4ComparerWithEqualsOperator.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 44100f5f60f351348b9719b46d46cebe +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector4EqualityComparer.cs b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector4EqualityComparer.cs new file mode 100644 index 0000000..7047242 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector4EqualityComparer.cs @@ -0,0 +1,32 @@ +using System.Collections.Generic; + +namespace UnityEngine.TestTools.Utils +{ + public class Vector4EqualityComparer : IEqualityComparer + { + private const float k_DefaultError = 0.0001f; + private readonly float AllowedError; + + private static readonly Vector4EqualityComparer m_Instance = new Vector4EqualityComparer(); + public static Vector4EqualityComparer Instance { get { return m_Instance; } } + + private Vector4EqualityComparer() : this(k_DefaultError) {} + public Vector4EqualityComparer(float allowedError) + { + this.AllowedError = allowedError; + } + + public bool Equals(Vector4 expected, Vector4 actual) + { + return Utils.AreFloatsEqual(expected.x, actual.x, AllowedError) && + Utils.AreFloatsEqual(expected.y, actual.y, AllowedError) && + Utils.AreFloatsEqual(expected.z, actual.z, AllowedError) && + Utils.AreFloatsEqual(expected.w, actual.w, AllowedError); + } + + public int GetHashCode(Vector4 vec4) + { + return 0; + } + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector4EqualityComparer.cs.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector4EqualityComparer.cs.meta new file mode 100644 index 0000000..149157d --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/UnityEngine.TestRunner/Utils/Vector4EqualityComparer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 32da81683c22faf458026716a2b821aa +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/package.json b/Library/PackageCache/com.unity.test-framework@1.0.13/package.json new file mode 100644 index 0000000..58da1d4 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/package.json @@ -0,0 +1,21 @@ +{ + "name": "com.unity.test-framework", + "displayName": "Test Framework", + "version": "1.0.13", + "unity": "2019.2", + "unityRelease": "0a10", + "description": "Test framework for running Edit mode and Play mode test in Unity.", + "keywords": [ "Test", "TestFramework" ], + "category": "Unity Test Framework", + "repository": { + "type": "git", + "url": "git@gitlab.cds.internal.unity3d.com/upm-packages/core/com.unity.test-framework.git", + "revision": "8d09534f1c9f96b37fa38167a8697e5965ab58b8" + }, + "dependencies": { + "com.unity.ext.nunit": "1.0.0" + }, + "relatedPackages": { + "com.unity.test-framework.tests": "1.0.13" + } +} diff --git a/Library/PackageCache/com.unity.test-framework@1.0.13/package.json.meta b/Library/PackageCache/com.unity.test-framework@1.0.13/package.json.meta new file mode 100644 index 0000000..63170c3 --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.0.13/package.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: d6a2e6e4803de7b43baacdc355fc144d +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/.gitlab-ci.yml b/Library/PackageCache/com.unity.textmeshpro@2.0.1/.gitlab-ci.yml new file mode 100644 index 0000000..e8c8114 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/.gitlab-ci.yml @@ -0,0 +1,12 @@ +image: node:6.10.0 + +stages: + - push_to_packman_staging + +push_to_packman_staging: + stage: push_to_packman_staging + only: + - tags + script: + - curl -u $USER_NAME:$API_KEY https://staging-packages.unity.com/auth > .npmrc + - npm publish diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/CHANGELOG.md b/Library/PackageCache/com.unity.textmeshpro@2.0.1/CHANGELOG.md new file mode 100644 index 0000000..56e1e8b --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/CHANGELOG.md @@ -0,0 +1,180 @@ +# Changelog +These are the release notes for the TextMesh Pro UPM package which was first introduced with Unity 2018.1. Please see the following link for the Release Notes for prior versions of TextMesh Pro. http://digitalnativestudios.com/forum/index.php?topic=1363.0 + +## [2.0.1] - 2019-05-08 +### Changes +- See Release 1.4.1 +- Requires .Net 4.x Scripting Runtime. + +## [2.0.0] - 2019-03-01 +### Changes +- Same release as 1.4.0 + +## [1.4.1] - 2019-05-08 +### Changes +- Improved handling of automatic Font Asset upgrade to version 1.1.0 which is required to support the new Dynamic SDF system. See Case #1144858 +- Made release compatible with .Net 3.5 Scripting Runtime. +- Added support for Stereo rendering to the TMP SDF Overlay shaders. +- Fixed Caret positioning issue when using IME. Case #1146626 + +## [1.4.0] - 2019-03-07 +### Changes +- Same release as 1.4.0-preview.3a. + +## [1.4.0-preview.3a] - 2019-02-28 +### Changes +- Improved performance of the Project Files GUID Remapping Tool. +- Fixed an issue with the TMP_FontAsset.TryAddCharacters() functions which was resulting in an error when added characters exceeded the capacity of the atlas texture. +- Updated TMP_FontAsset.TryAddCharacters functions to add new overloads returning list of characters that could not be added. +- Added function in OnEnable of FontAsset Editor's to clean up Fallback list to remove any null / empty entries. +- Added support for Stereo rendering to the TMP Distance Field and Mobile Distance Field shaders. + +## [1.4.0-preview.2a] - 2019-02-14 +### Changes +- Fixed an issue with SDF Scale handling where the text object would not render correctly after the object scale had been set to zero. +- Fixed an issue with the TMP_UpdateManager where text objects were not getting unregistered correctly. +- Any changes to Font Asset Creation Settings' padding, atlas width and / or atlas height will now result in all Material Presets for the given font asset to also be updated. +- Added new section in the TMP Settings related to the new Dynamic Font System. +- Added new property in the Dynamic Font System section to determine if OpenType Font Features will be retrieved from source font files at runtime as new characters are added to font assets. Glyph Adjustment Data (Kerning) is the only feature currently supported. +- Fix an issue where font assets created at runtime were not getting their asset version number set to "1.1.0". +- Improved parsing of the text file used in the Font Asset Creator and "Characters from File" option to handle UTF16 "\u" and UTF32 "\U" escape character sequences. +- Fixed a Null Reference Error (NRE) that could occur when using the <font> tag with an invalid font name followed by the <sprite> tag. +- The Glyph Adjustment Table presentation and internal data structure has been changed to facilitate the future addition of OpenType font features. See https://forum.unity.com/threads/version-1-4-0-preview-with-dynamic-sdf-for-unity-2018-3-now-available.622420/#post-4206595 for more details. +- Fixed an issue with the <rotate> tag incorrectly affecting character spacing. + +## [1.4.0-preview.1] - 2019-01-30 +### Changes +- Renamed TMPro_FontUtilities to TMP_FontAssetCommon to more accurately reflect the content of this file. +- Accessing the TextMesh Pro Settings via the new Edit - Settings menu when TMP Essential Resources have not yet been imported in the project will no longer open a new window to provide the options to import these resources. +- Fixed an issue where using int.MaxValue, int.MinValue, float.MaxValue and float.MinValue in conjunction with SetText() would display incorrect numerical values. Case #1078521. +- Added public setter to the TMP Settings' missingGlyphCharacter to allow changing which character will be used for missing characters via scripting. +- Fixed a potential Null Reference Exception related to loading the Default Style Sheet. +- Added compiler conditional to TMP_UpdateManager.cs to address changes to SRP. +- Improved the <margin> tag to make it possible to define both left and right margin values. Example: <margin left=10% right=10px>. +- Added new menu option to allow the quick creation of a UI Button using TMP. New menu option is located in Create - UI - Button (TextMeshPro). +- Renamed TMP related create menu options. +- Fixed TMP object creation handling when using Prefab isolation mode. Case #1077392 +- Fixed another issue related to Prefabs where some serialized properties of the text object would incorrectly show up in the Overrides prefab options. Case #1093101 +- Fixed issue where changing the Sorting Layer or Sorting Order of a object would not dirty the scene. Case #1069776 +- Fixed a text alignment issue when setting text alignment on disabled text objects. Case #1047771 +- Fixed an issue where text object bounds were not set correctly on newly created text objects or in some cases when setting the text to null or string.empty. Case #1093388 +- Fixed an issue in the IntToString() function that could result in Index Out Of Bounds error. Case #1102007 +- Changed the TMP_InputField IsValidChar function to protected virtual. +- The "Allow Rich Text Editing" property of the TMP_InputField is now set to false by default. +- Added new option to the Sprite Asset context menu to make it easier to update sprite glyphs edited via the Unity Sprite Editor. +- Added new Sharpness slider in the Debug section of the SDF Material inspector. +- Fixed an error that would occur when using the context menu Reset on text component. Case #1044726 +- Fixed issue where CharacterInfo.index would be incorrect as a result of using Surrogate Pairs in the text. Case #1037828 +- The TMP_EditorPanel and TMP_UiEditorPanel now have their "UseForChildren" flag set to true to enable user / custom inspectors to inherit from them. +- Fixed an issue where rich text tags using pixel (px) or font units (em) were not correctly accounting for orthographic camera mode. This change only affects the normal TMP text component. +- Fixed an inspector issue related to changes to the margin in the TMP Extra Settings panel. Case #1114253 +- Added new property to Glyph Adjustment Pairs which determines if Character Spacing Adjustments should affect the given pair. +- Updated the Glyph Adjustment Table where ID now represents the unicode (hex) value for the character instead of its decimal value. +- Added new SetValueWithoutNotify() function to TMP_DropDown and SetTextWithoutNotify() function to TMP_InputField allowing these to be set without triggering OnValueChanged event. +- Geometry buffer deallocation which normally takes place when current allocations exceed those of the new text by more than 256 characters will no longer occur if the new text is set to null or string.empty. +- Fixed a minor issue where the underline SDF scale would be incorrect when the underline text sequence contained normal size characters and ended with a subscript or superscript character. +- Fixed an error that would occur when using the Reset Context menu on a Material using the SDF Surface or Mobile SDF Surface Shaders. Case #1122279 +- Resolved a Null Reference Error that would appear when cycling through the text overflow modes. Case #1121624 + +## [1.3.0] - 2018-08-09 +### Changes +- Revamped UI to conform to Unity Human Interface Guidelines. +- Updated the title text on the Font Asset Creator window tab to "Font Asset Creator". +- Using TMP_Text.SetCharArray() with an empty char[] array will now clear the text. +- Made a small improvement to the TMP Input Field when using nested 2d RectMasks. +- Renamed symbol defines used by TMP to append TMP_ in front of the define to avoid potential conflicts with user defines. +- Improved the Project Files GUID Remapping tool to allow specifying a target folder to scan. +- Added the ability to cancel the scanning process used by the Project Files GUID Remapping tool. +- Moved TMP Settings to universal settings window in 2018.3 and above. +- Changing style sheet in the TMP Settings will now be reflected automatically on existing text objects in the editor. +- Added new function TMP_StyleSheet.UpdateStyleSheet() to update the internal reference to which style sheet text objects should be using in conjunction with the style tag. + +## [1.2.4] - 2018-06-10 +### Changes +- Fixed a minor issue when using Justified and Flush alignment in conjunction with \u00A0. +- The Font Asset creationSettings field is no longer an Editor only serialized field. + +## [1.2.3] - 2018-05-29 +### Changes +- Added new bitmap shader with support for Custom Font Atlas texture. This shader also includes a new property "Padding" to provide control over the geometry padding to closely fit a modified / custom font atlas texture. +- Fixed an issue with ForceMeshUpdate(bool ignoreActiveState) not being handled correctly. +- Cleaned up memory allocations from repeated use of the Font Asset Creator. +- Sprites are now scaled based on the current font instead of the primary font asset assigned to the text object. +- It is now possible to recall the most recent settings used when creating a font asset in the Font Asset Creator. +- Newly created font assets now contain the settings used when they were last created. This will make the process of updating / regenerating font assets much easier. +- New context menu "Update Font Asset" was added to the Font Asset inspector which will open the Font Asset Creator with the most recently used settings for that font asset. +- New Context Menu "Create Font Asset" was added to the Font inspector panel which will open the Font Asset Creator with this source font file already selected. +- Fixed 3 compiler warnings that would appear when using .Net 4.x. +- Modified the TMP Settings to place the Missing Glyph options in their own section. +- Renamed a symbol used for internal debugging to avoid potential conflicts with other user project defines. +- TMP Sprite Importer "Create Sprite Asset" and "Save Sprite Asset" options are disabled unless a Sprite Data Source, Import Format and Sprite Texture Atlas are provided. +- Improved the performance of the Project Files GUID Remapping tool. +- Users will now be prompted to import the TMP Essential Resources when using the Font Asset Creator if such resources have not already been imported. + +## [1.2.2] - 2018-03-28 +### Changes +- Calling SetAllDirty() on a TMP text component will now force a regeneration of the text object including re-parsing of the text. +- Fixed potential Null Reference Exception that could occur when assigning a new fallback font asset. +- Removed public from test classes. +- Fixed an issue where using nested links (which doesn't make sense conceptually) would result in an error. Should accidental use of nested links occurs, the last / most nested ends up being used. +- Fixed a potential text alignment issue where an hyphen at the end of a line followed by a new line containing a single word too long to fit the text container would result in miss alignment of the hyphen. +- Updated package license. +- Non-Breaking Space character (0xA0) will now be excluded from word spacing adjustments when using Justified or Flush text alignment. +- Improved handling of Underline, Strikethrough and Mark tag with regards to vertex color and Color tag alpha. +- Improved TMP_FontAsset.HasCharacter(char character, bool searchFallbacks) to include a recursive search of fallbacks as well as TMP Settings fallback list and default font asset. +- The <gradient> tag will now also apply to sprites provided the sprite tint attribute is set to a value of 1. Ex. <sprite="Sprite Asset" index=0 tint=1>. +- Updated Font Asset Creator Plugin to allow for cancellation of the font asset generation process. +- Added callback to support the Scriptable Render Pipeline (SRP) with the normal TextMeshPro component. +- Improved handling of some non-breaking space characters which should not be ignored at the end of a line. +- Sprite Asset fallbacks will now be searched when using the <sprite> tag and referencing a sprite by Unicode or by Name. +- Updated EmojiOne samples from https://www.emojione.com/ and added attribution. +- Removed the 32bit versions of the TMP Plugins used by the Font Asset Creator since the Unity Editor is now only available as 64bit. +- The isTextTruncated property is now serialized. +- Added new event handler to the TMP_TextEventHandler.cs script included in Example 12a to allow tracking of interactions with Sprites. + +## [1.2.1] - 2018-02-14 +### Changes +- Package is now backwards compatible with Unity 2018.1. +- Renamed Assembly Definitions (.asmdef) to new UPM package conventions. +- Added DisplayName for TMP UPM package. +- Revised Editor and Playmode tests to ignore / skip over the tests if the required resources are not present in the project. +- Revised implementation of Font Asset Creator progress bar to use Unity's EditorGUI.ProgressBar instead of custom texture. +- Fixed an issue where using the material tag in conjunction with fallback font assets was not handled correctly. +- Fixed an issue where changing the fontStyle property in conjunction with using alternative typefaces / font weights would not correctly trigger a regeneration of the text object. + +## [1.2.0] - 2018-01-23 +### Changes +- Package version # increased to 1.2.0 which is the first release for Unity 2018.2. + +## [1.1.0] - 2018-01-23 +### Changes +- Package version # increased to 1.1.0 which is the first release for Unity 2018.1. + +## [1.0.27] - 2018-01-16 +### Changes +- Fixed an issue where setting the TMP_InputField.text property to null would result in an error. +- Fixed issue with Raycast Target state not getting serialized properly when saving / reloading a scene. +- Changed reference to PrefabUtility.GetPrefabParent() to PrefabUtility.GetCorrespondingObjectFromSource() to reflect public API change in 2018.2 +- Option to import package essential resources will only be presented to users when accessing a TMP component or the TMP Settings file via the project menu. + +## [1.0.26] - 2018-01-10 +### Added +- Removed Tizen player references in the TMP_InputField as the Tizen player is no longer supported as of Unity 2018.1. + +## [1.0.25] - 2018-01-05 +### Added +- Fixed a minor issue with PreferredValues calculation in conjunction with using text auto-sizing. +- Improved Kerning handling where it is now possible to define positional adjustments for the first and second glyph in the pair. +- Renamed Kerning Info Table to Glyph Adjustment Table to better reflect the added functionality of this table. +- Added Search toolbar to the Glyph Adjustment Table. +- Fixed incorrect detection / handling of Asset Serialization mode in the Project Conversion Utility. +- Removed SelectionBase attribute from TMP components. +- Revised TMP Shaders to support the new UNITY_UI_CLIP_RECT shader keyword which can provide a performance improvement of up to 30% on some devices. +- Added TMP_PRESENT define as per the request of several third party asset publishers. + +## [1.0.23] - 2017-11-14 +### Added +- New menu option added to Import Examples and additional content like Font Assets, Materials Presets, etc for TextMesh Pro. This new menu option is located in "Window -> TextMeshPro -> Import Examples and Extra Content". +- New menu option added to Convert existing project files and assets created with either the Source Code or DLL only version of TextMesh Pro. Please be sure to backup your project before using this option. The new menu option is located in "Window -> TextMeshPro -> Project Files GUID Remapping Tool". +- Added Assembly Definitions for the TMP Runtime and Editor scripts. +- Added support for the UI DirtyLayoutCallback, DirtyVerticesCallback and DirtyMaterialCallback. \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/CHANGELOG.md.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/CHANGELOG.md.meta new file mode 100644 index 0000000..dcb004a --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/CHANGELOG.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 22464cf7ab0243a6bf9c79851183b002 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Documentation~/TextMeshPro.md b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Documentation~/TextMeshPro.md new file mode 100644 index 0000000..db47562 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Documentation~/TextMeshPro.md @@ -0,0 +1,35 @@ +# **_TextMesh Pro User Guide_** + +#### **Overview** +This User Guide was designed to provide first time users of TextMesh Pro with a basic overview of the features and functionality of the tool. + +#### **Installation** +The TextMesh Pro UPM package is already included with the Unity Editor and as such does not require installation. TextMesh Pro "TMP" does however require adding resources to your project which are essential for using TextMesh Pro. + +To import the "*TMP Essential Resources*", please use the "*Window -> TextMeshPro -> Import TMP Essential Resources*" menu option. These resources will be added at the root of your project in the "*TextMesh Pro*" folder. + +The TextMesh Pro package also includes additional resources and examples that will make discovering and learning about TextMesh Pro's powerful features easier. It is strongly recommended that first time users import these additional resources. + +To import the "*TMP Examples & Extras*", please use the "*Window -> TextMeshPro -> Import TMP Examples & Extras*" menu option. These resources will also be added in the same "*TextMesh Pro*" folder inside your project. + + +#### **Quick Start** +There are two TextMesh Pro components available. The first TMP text component is of type <TextMeshPro> and designed to work with the MeshRenderer. This component is an ideal replacement for the legacy TextMesh component. + +To add a new <TextMeshPro> text object, go to: “*GameObject->3D Object->TextMeshPro Text*”. + +The second TMP text component is of type <TextMeshProUGUI> and designed to work with the CanvasRenderer and Canvas system. This component is an ideal replacement for the UI.Text component. + +To add a new <TextMeshProUGUI> text object, go to: “*GameObject->UI->TextMeshPro Text*”. + +You may also wish to watch this [Getting Started](https://youtu.be/olnxlo-Wri4) short video which covers this topic. + +We strongly recommend that you also watch the [Font Asset Creation](https://youtu.be/qzJNIGCFFtY) video as well as the [Working with Material Presets](https://youtu.be/d2MARbDNeaA) as these two topics is also key to working and getting the most out of TextMesh Pro. + +As mentionned in the Installation section of this guide, it is recommended that you import the "*TMP Examples & Extras*" and take the time to explore each of the examples as they provide a great overview of the functionality of the tool and the many text layout and [rich text tags](http://digitalnativestudios.com/textmeshpro/docs/rich-text/) available in TextMesh Pro. + +#### **Support & API Documentation** +Should you have questions or require assistance, please visit the [Unity UI & TextMesh Pro](https://forum.unity.com/forums/unity-ui-textmesh-pro.60/) section of the Unity forum as well as the [TextMesh Pro User Forum](http://digitalnativestudios.com/forum/index.php) where you will find additional information, [Video Tutorials](http://digitalnativestudios.com/forum/index.php?board=4.0) and [FAQ](http://digitalnativestudios.com/forum/index.php?topic=890.0). In the event you are unable to find the information you seek, always feel free to post on the [Unity UI & TextMesh Pro](https://forum.unity.com/forums/unity-ui-textmesh-pro.60/) section user forum. + +[Online Documentation](http://digitalnativestudios.com/textmeshpro/docs/) is also available on TextMesh Pro including Rich Text tags, Shaders, Scripting API and more. + diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Documentation~/TextMeshPro.md.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Documentation~/TextMeshPro.md.meta new file mode 100644 index 0000000..f94c4e3 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Documentation~/TextMeshPro.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ca77d26d10b9455ca5a4b22c93be2a31 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources.meta new file mode 100644 index 0000000..2f748c9 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d1a0a27327b54c3bac52a08929c33f81 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos.meta new file mode 100644 index 0000000..9397cd5 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e93ec7eb6de342aabd156833e253f838 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Dropdown Icon.psd b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Dropdown Icon.psd new file mode 100644 index 0000000000000000000000000000000000000000..93f5a2cba4edda006da1d1611ce610dfd6d1c55f GIT binary patch literal 85308 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 literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Font Asset Icon.psd.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Font Asset Icon.psd.meta new file mode 100644 index 0000000..3cad9ca --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Font Asset Icon.psd.meta @@ -0,0 +1,57 @@ +fileFormatVersion: 2 +guid: ee148e281f3c41c5b4ff5f8a5afe5a6c +timeCreated: 1463559213 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + linearTexture: 1 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 7 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 128 + textureSettings: + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + allowsAlphaSplitting: 0 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 2 + buildTargetSettings: [] + spriteSheet: + sprites: [] + outline: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Input Field Icon.psd b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Input Field Icon.psd new file mode 100644 index 0000000000000000000000000000000000000000..f0360d349d07234742b64e274c4c2d6ae2d17554 GIT binary patch literal 102100 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 literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Input Field Icon.psd.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Input Field Icon.psd.meta new file mode 100644 index 0000000..a24a171 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Input Field Icon.psd.meta @@ -0,0 +1,57 @@ +fileFormatVersion: 2 +guid: 3ee40aa79cd242a5b53b0b0ca4f13f0f +timeCreated: 1457860876 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + linearTexture: 1 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 128 + textureSettings: + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + allowsAlphaSplitting: 0 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 2 + buildTargetSettings: [] + spriteSheet: + sprites: [] + outline: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Sprite Asset Icon.psd b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Sprite Asset Icon.psd new file mode 100644 index 0000000000000000000000000000000000000000..7036296ea5331b80315ac29da27250ee2ad38572 GIT binary patch literal 103456 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 Y82vX-%ikT{7RfM-f8I6!0TeNLg#Z8m literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Sprite Asset Icon.psd.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Sprite Asset Icon.psd.meta new file mode 100644 index 0000000..fc9f31c --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Sprite Asset Icon.psd.meta @@ -0,0 +1,57 @@ +fileFormatVersion: 2 +guid: ec7c645d93308c04d8840982af12101e +timeCreated: 1463559213 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + linearTexture: 1 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 7 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 128 + textureSettings: + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + allowsAlphaSplitting: 0 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 2 + buildTargetSettings: [] + spriteSheet: + sprites: [] + outline: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Text Component Icon.psd b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Text Component Icon.psd new file mode 100644 index 0000000000000000000000000000000000000000..3cc41630a761fd8ff6f789a03b443350be9970c4 GIT binary patch literal 89826 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 LwR(Acqmuj|^O?dr literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Text Component Icon.psd.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Text Component Icon.psd.meta new file mode 100644 index 0000000..e848826 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Gizmos/TMP - Text Component Icon.psd.meta @@ -0,0 +1,53 @@ +fileFormatVersion: 2 +guid: 2fd6421f253b4ef1a19526541f9ffc0c +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + linearTexture: 1 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 128 + textureSettings: + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 2 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Shaders.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Shaders.meta new file mode 100644 index 0000000..34468d2 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Shaders.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2da27f5fe80a3a549ac7331d9f52f5f0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Shaders/TMP_Properties.cginc b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Shaders/TMP_Properties.cginc new file mode 100644 index 0000000..e8adf28 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Shaders/TMP_Properties.cginc @@ -0,0 +1,85 @@ +// UI Editable properties +uniform sampler2D _FaceTex; // Alpha : Signed Distance +uniform float _FaceUVSpeedX; +uniform float _FaceUVSpeedY; +uniform fixed4 _FaceColor; // RGBA : Color + Opacity +uniform float _FaceDilate; // v[ 0, 1] +uniform float _OutlineSoftness; // v[ 0, 1] + +uniform sampler2D _OutlineTex; // RGBA : Color + Opacity +uniform float _OutlineUVSpeedX; +uniform float _OutlineUVSpeedY; +uniform fixed4 _OutlineColor; // RGBA : Color + Opacity +uniform float _OutlineWidth; // v[ 0, 1] + +uniform float _Bevel; // v[ 0, 1] +uniform float _BevelOffset; // v[-1, 1] +uniform float _BevelWidth; // v[-1, 1] +uniform float _BevelClamp; // v[ 0, 1] +uniform float _BevelRoundness; // v[ 0, 1] + +uniform sampler2D _BumpMap; // Normal map +uniform float _BumpOutline; // v[ 0, 1] +uniform float _BumpFace; // v[ 0, 1] + +uniform samplerCUBE _Cube; // Cube / sphere map +uniform fixed4 _ReflectFaceColor; // RGB intensity +uniform fixed4 _ReflectOutlineColor; +//uniform float _EnvTiltX; // v[-1, 1] +//uniform float _EnvTiltY; // v[-1, 1] +uniform float3 _EnvMatrixRotation; +uniform float4x4 _EnvMatrix; + +uniform fixed4 _SpecularColor; // RGB intensity +uniform float _LightAngle; // v[ 0,Tau] +uniform float _SpecularPower; // v[ 0, 1] +uniform float _Reflectivity; // v[ 5, 15] +uniform float _Diffuse; // v[ 0, 1] +uniform float _Ambient; // v[ 0, 1] + +uniform fixed4 _UnderlayColor; // RGBA : Color + Opacity +uniform float _UnderlayOffsetX; // v[-1, 1] +uniform float _UnderlayOffsetY; // v[-1, 1] +uniform float _UnderlayDilate; // v[-1, 1] +uniform float _UnderlaySoftness; // v[ 0, 1] + +uniform fixed4 _GlowColor; // RGBA : Color + Intesity +uniform float _GlowOffset; // v[-1, 1] +uniform float _GlowOuter; // v[ 0, 1] +uniform float _GlowInner; // v[ 0, 1] +uniform float _GlowPower; // v[ 1, 1/(1+4*4)] + +// API Editable properties +uniform float _ShaderFlags; +uniform float _WeightNormal; +uniform float _WeightBold; + +uniform float _ScaleRatioA; +uniform float _ScaleRatioB; +uniform float _ScaleRatioC; + +uniform float _VertexOffsetX; +uniform float _VertexOffsetY; + +//uniform float _UseClipRect; +uniform float _MaskID; +uniform sampler2D _MaskTex; +uniform float4 _MaskCoord; +uniform float4 _ClipRect; // bottom left(x,y) : top right(z,w) +//uniform float _MaskWipeControl; +//uniform float _MaskEdgeSoftness; +//uniform fixed4 _MaskEdgeColor; +//uniform bool _MaskInverse; + +uniform float _MaskSoftnessX; +uniform float _MaskSoftnessY; + +// Font Atlas properties +uniform sampler2D _MainTex; +uniform float _TextureWidth; +uniform float _TextureHeight; +uniform float _GradientScale; +uniform float _ScaleX; +uniform float _ScaleY; +uniform float _PerspectiveFilter; +uniform float _Sharpness; diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Shaders/TMP_Properties.cginc.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Shaders/TMP_Properties.cginc.meta new file mode 100644 index 0000000..cd55b56 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Shaders/TMP_Properties.cginc.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 3c6c403084eacec478a1129ce20061ea +ShaderImporter: + externalObjects: {} + defaultTextures: [] + nonModifiableTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Shaders/TMP_SDF Internal SSD.shader b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Shaders/TMP_SDF Internal SSD.shader new file mode 100644 index 0000000..d053216 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Shaders/TMP_SDF Internal SSD.shader @@ -0,0 +1,126 @@ +// Simplified SDF shader: +// - No Shading Option (bevel / bump / env map) +// - No Glow Option +// - Softness is applied on both side of the outline + +Shader "Hidden/TextMeshPro/Internal/Distance Field SSD" { + +Properties { + _FaceColor ("Face Color", Color) = (1,1,1,1) + _FaceDilate ("Face Dilate", Range(-1,1)) = 0 + + _OutlineSoftness ("Outline Softness", Range(0,1)) = 0.02 + + _WeightNormal ("Weight Normal", float) = 0 + _WeightBold ("Weight Bold", float) = .5 + + _MainTex ("Font Atlas", 2D) = "white" {} + _TextureWidth ("Texture Width", float) = 512 + _TextureHeight ("Texture Height", float) = 512 + _GradientScale ("Gradient Scale", float) = 5 + _ScaleX ("Scale X", float) = 1 + _ScaleY ("Scale Y", float) = 1 + _Sharpness ("Sharpness", Range(-1,1)) = 0 + + _VertexOffsetX ("Vertex OffsetX", float) = 0 + _VertexOffsetY ("Vertex OffsetY", float) = 0 + + _ColorMask ("Color Mask", Float) = 15 +} + +SubShader { + Tags + { + "ForceSupported" = "True" + } + + Lighting Off + Blend One OneMinusSrcAlpha + Cull Off + ZWrite Off + ZTest Always + + Pass { + CGPROGRAM + #pragma vertex VertShader + #pragma fragment PixShader + + #include "UnityCG.cginc" + #include "TMP_Properties.cginc" + + sampler2D _GUIClipTexture; + uniform float4x4 unity_GUIClipTextureMatrix; + + struct vertex_t { + float4 vertex : POSITION; + float3 normal : NORMAL; + fixed4 color : COLOR; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + }; + + struct pixel_t { + float4 vertex : SV_POSITION; + fixed4 faceColor : COLOR; + float2 texcoord0 : TEXCOORD0; + float2 clipUV : TEXCOORD1; + }; + + + pixel_t VertShader(vertex_t input) + { + // Does not handle simulated bold correctly. + + float4 vert = input.vertex; + vert.x += _VertexOffsetX; + vert.y += _VertexOffsetY; + float4 vPosition = UnityObjectToClipPos(vert); + + float opacity = input.color.a; + + fixed4 faceColor = fixed4(input.color.rgb, opacity) * _FaceColor; + faceColor.rgb *= faceColor.a; + + // Generate UV for the Clip Texture + float3 eyePos = UnityObjectToViewPos(input.vertex); + float2 clipUV = mul(unity_GUIClipTextureMatrix, float4(eyePos.xy, 0, 1.0)); + + // Structure for pixel shader + pixel_t output = { + vPosition, + faceColor, + float2(input.texcoord0.x, input.texcoord0.y), + clipUV, + }; + + return output; + } + + half transition(half2 range, half distance) + { + return smoothstep(range.x, range.y, distance); + } + + // PIXEL SHADER + fixed4 PixShader(pixel_t input) : SV_Target + { + half distanceSample = tex2D(_MainTex, input.texcoord0).a; + half smoothing = fwidth(distanceSample) * (1 - _Sharpness) + _OutlineSoftness; + half contour = 0.5 - _FaceDilate * 0.5; + half2 edgeRange = half2(contour - smoothing, contour + smoothing); + + half4 c = input.faceColor; + + half edgeTransition = transition(edgeRange, distanceSample); + c *= edgeTransition; + + c *= tex2D(_GUIClipTexture, input.clipUV).a; + + return c; + } + ENDCG + } +} + +CustomEditor "TMPro.EditorUtilities.TMP_SDFShaderGUI" +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Shaders/TMP_SDF Internal SSD.shader.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Shaders/TMP_SDF Internal SSD.shader.meta new file mode 100644 index 0000000..2c6f9be --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Shaders/TMP_SDF Internal SSD.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: ce4ec0f498d1b1a4f90fe94e115b6f9a +ShaderImporter: + externalObjects: {} + defaultTextures: [] + nonModifiableTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures.meta new file mode 100644 index 0000000..7214572 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f8e6a2d47aba4c6c9b3c5a72d9f48da5 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/SectionHeader_Dark.psd b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/SectionHeader_Dark.psd new file mode 100644 index 0000000000000000000000000000000000000000..8ebaa27aa4aa698b57764149516a0fbdf37dcba2 GIT binary patch literal 20744 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 literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/SectionHeader_Dark.psd.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/SectionHeader_Dark.psd.meta new file mode 100644 index 0000000..aaf6109 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/SectionHeader_Dark.psd.meta @@ -0,0 +1,53 @@ +fileFormatVersion: 2 +guid: fb5730e24283d0c489e5c7d0bee023d9 +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + linearTexture: 1 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 2 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/SectionHeader_Light.psd b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/SectionHeader_Light.psd new file mode 100644 index 0000000000000000000000000000000000000000..e598e6d9575f5dafc1c76950e476469c2cf580b6 GIT binary patch literal 20732 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 d(vQLMUM~57lQTd#^dA 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 R79z)q63!!c0xgHh{{v&paXtV5 literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignBaseLine.psd.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignBaseLine.psd.meta new file mode 100644 index 0000000..25dfa98 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignBaseLine.psd.meta @@ -0,0 +1,53 @@ +fileFormatVersion: 2 +guid: 8bc445bb79654bf496c92d0407840a92 +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + linearTexture: 1 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 2 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignBaseLine_Light.psd b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignBaseLine_Light.psd new file mode 100644 index 0000000000000000000000000000000000000000..cf49b6cb024072d87361899040ef58f45cf43679 GIT binary patch literal 43792 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 literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignBottom_Light.psd.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignBottom_Light.psd.meta new file mode 100644 index 0000000..9828dc2 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignBottom_Light.psd.meta @@ -0,0 +1,53 @@ +fileFormatVersion: 2 +guid: 585b70cb75dd43efbfead809c30a1731 +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + linearTexture: 1 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 2 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCapLine.psd b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCapLine.psd new file mode 100644 index 0000000000000000000000000000000000000000..7eefe6b2e535cce1ec014aed5919d728044e8fbb GIT binary patch literal 43303 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 literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCapLine.psd.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCapLine.psd.meta new file mode 100644 index 0000000..1a93ca9 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCapLine.psd.meta @@ -0,0 +1,58 @@ +fileFormatVersion: 2 +guid: 0d9a36012a224080966c7b55896aa0f9 +timeCreated: 1467964791 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + linearTexture: 1 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 7 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + allowsAlphaSplitting: 0 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 2 + buildTargetSettings: [] + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCapLine_Light.psd b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCapLine_Light.psd new file mode 100644 index 0000000000000000000000000000000000000000..f08bb6cecccd3eb5ae47f40377c6ef52b6e144e1 GIT binary patch literal 43393 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%0Aq?S8rqQIlbF^ukZar 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 literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCenterGeo.psd.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCenterGeo.psd.meta new file mode 100644 index 0000000..871fa21 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCenterGeo.psd.meta @@ -0,0 +1,56 @@ +fileFormatVersion: 2 +guid: c76700ea0062413d9f69409b4e9e151b +timeCreated: 1484171296 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + linearTexture: 1 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + allowsAlphaSplitting: 0 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 2 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCenterGeo_Light.psd b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCenterGeo_Light.psd new file mode 100644 index 0000000000000000000000000000000000000000..e37b2e2558d13363f395557e913458dd1a3bb77a GIT binary patch literal 40812 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 literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCenter_Light.psd.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCenter_Light.psd.meta new file mode 100644 index 0000000..b25ea7c --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignCenter_Light.psd.meta @@ -0,0 +1,53 @@ +fileFormatVersion: 2 +guid: 6ace62d30f494c948b71d5594afce11d +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + linearTexture: 1 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 2 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignFlush.psd b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignFlush.psd new file mode 100644 index 0000000000000000000000000000000000000000..eeeea67be6eb648c505085d768dac6b56afa16a1 GIT binary patch literal 35952 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 G-2VfEP|P;~ literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignFlush.psd.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignFlush.psd.meta new file mode 100644 index 0000000..d9ea2ab --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignFlush.psd.meta @@ -0,0 +1,53 @@ +fileFormatVersion: 2 +guid: 691475c57a824010be0c6f474caeb7e1 +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + linearTexture: 1 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 2 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignFlush_Light.psd b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignFlush_Light.psd new file mode 100644 index 0000000000000000000000000000000000000000..b69f6a2eff7afcfee728011a5ecf733083dbc325 GIT binary patch literal 42370 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 literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignFlush_Light.psd.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignFlush_Light.psd.meta new file mode 100644 index 0000000..38e53d0 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignFlush_Light.psd.meta @@ -0,0 +1,53 @@ +fileFormatVersion: 2 +guid: 64b9fad609434c489c32b1cdf2004a1c +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + linearTexture: 1 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 2 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignJustified.psd b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignJustified.psd new file mode 100644 index 0000000000000000000000000000000000000000..3ce55c4960e080920c0239406c7c2e8ec98c47bf GIT binary patch literal 33922 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 literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignJustified_Light.psd.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignJustified_Light.psd.meta new file mode 100644 index 0000000..c8420d4 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignJustified_Light.psd.meta @@ -0,0 +1,59 @@ +fileFormatVersion: 2 +guid: fa6bd40a216346b783a4cce741d277a5 +timeCreated: 1472535778 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + linearTexture: 1 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 7 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + allowsAlphaSplitting: 0 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + buildTargetSettings: [] + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignLeft.psd b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignLeft.psd new file mode 100644 index 0000000000000000000000000000000000000000..fc7e10b254cfe51ed074203cc581660612922d46 GIT binary patch literal 37030 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 literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignLeft.psd.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignLeft.psd.meta new file mode 100644 index 0000000..d421ca5 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignLeft.psd.meta @@ -0,0 +1,53 @@ +fileFormatVersion: 2 +guid: 9288066c33474b94b6ee5465f4df1cc0 +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + linearTexture: 1 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 2 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignLeft_Light.psd b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignLeft_Light.psd new file mode 100644 index 0000000000000000000000000000000000000000..5522c37387e5c5cc571a7465c74276af6f7af043 GIT binary patch literal 42188 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 wjI6EJ3&~gD-kRKMy_ozvg!oi`_&Q^dQN0z$^ed

ecaMMv{r<+ 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�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

m~*qwvyUjR)tFt)2zXz9rYoDpDohc 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 d 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N<-)e4lHb4efanu3FI^T6~Z=V^semBAe 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

eFozNU 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

1hA*(sOy%_Ib&yqLso6il0g}wUue$780=#RVfvg z1+xYxm2(#CuYqK+)+hrr1$HCn$N)`&Q?=HK!qu#)x+QHBOc+E?sIE!lqFJRdQwnZ@ zX!Ja~){Udw&B27p%47iGtDsNK~RRK1gf(vQx>oW(tE##FPpQiwg@ZEEGl+ z3=I?(DlE*?qi<;@VIAzRF^?4HV0DhLw>qa1O@4}D*AW%cB^G9>j)M!%Iik4~ZO!CI zW|Fdi50leXBU;tNlN4TIShOlH{Sru&YYj5JmnaF^$OAKl(Y=IbUyAyfnQ|doR%;x2 z0VJ~Hk?80Unp3sbxMbE;%^DW?H78z@U=kN*^5wzI(-P5;7NLncqCvt$w6d^^rNYxa z$MwvlykM=>tYNy-b^RK`%&*b+X3aF4ReQ5$Su$(lGKJ636nZBPWu9b2UmlTS)gHqO zYJXo}qtk+uq}N<3oEFR)SWD5#HF|SauZY+7*r22Auc6u`7bq+$gRMD6fMGbRuuN`h zDnJygt4|!EG?XZ)xuSR zNj@$SEmL@k)7+Fxh0_R4qZ3DVm1tNZ8ma@gTi~23OJs_ZD-ABMTb)+9X#s{qsj%iH zp&mmVBp3z>1~+J^Yp-vHmx1gG3+G9VSn=vf$^*BiN&7)ez1ly^BoD_bt#P^5IGZ(g za+A6|o3)$$wZX7B(4_${d9#})n6Bu9lB=CHRA}OA)&*!%m4TT!4^CH^(g4GO2W!ny zOGvc)YXGxC3~QQYiRd~Q*1(f8B!&{hRq-=XxMCYb!bo8nw9qJ5oeMH)HL66bEFpg4 zoaj4gE$eJo_gwk4TI-~eyxgH;z`Nn%b;`Bc9mxe z_s;6Mt%s9<+=NBrtXq?P8S2rBrW{AfH1NPonX+}QnWRHZfMeR-%Z zP9gVOc>T@=#c94i>NQI)2wYauEjBsypuBpzUB*y!j{WrTbG+7oI&QUb}K2XCOO4>DLK zY$C<2aP2P5Kv~=g*V-ol@Zm7a{gc37)=Drqoh z8q}&)>s<_!H+HJJ%TpMM3W!iBnj!!$Ow>)|o%lT2?C-bix&uzyM3e_L8>K<#DDB%g znqu02SD{p)Zvq6ruVie&$8>}n*kY7PiZ9ibFla*aND}v;#aX@ul8_JrMFPBYN`B&$ zP_A;+enz9cA^N)gY$6)E-Dhc*hdPom=mfT%uC?Ud0>KO$&oF?b*LEf{Nzezq*>u6-M*yuvS(kx?DsEcL@UU~y=#l6uV_~A z^}32eMl~i*2IL5Rivw>%B(Xyclgw&N-d7S)w74yZW$#^6vkdx)B5JY0l03dZNL13Z zg|f<%D+KR){VI`Xm$998l^kf|l)ko;U7_NVxsr5y!(B8F_S@)3cu%8dhyV-(dm&;N zV~=`xk10N@h@3z!nPOFaaOvAA7c+2o+{A^_yTB8$Mimf z$i~gyIZh^(UhA}`iDZwUmpnNe4CJul*hP1N+EMVq%QicoQjUnYs0pu`58`3Flpp%yj$5S%p6UdLW8vTb*Qu*qxJU#*269Q{F#!)@0;Eo=ZnZIvt5R zX>AmHvf7$A#a81`74%%C``LZ7l)FsMC6=ajmDXXifGw^ymQj;wJ89HXmR%(~xypVF9rts(S8+fJN%crb+!91lS2~%S-~A8L$5Lo1f1v-#Gi`=a+6CzjN}_)hBM> zI{k8YesX#G^Vtg@oSa?UJbCZu)3eJDPXE~5eI)b#d$?Esz53nB`N>z8yYp9n{`Ktg z?gIa6sI%Rjjr2IXbXz68a&ocz@#^6}$NrZuzS>=V6!-kP06W&;B|aPXd4DY}xMknZQTa^Iof7{b}{&!|zVN`r&MMadG9*W6t_dW9-G{`RNb4%kR#A{`K3N za63*CA3nJkzg@$JCtu!0Xg`ve|>uP?LVc{%?F0>Vv584kGCfL=hu_#-(I@^ zV6nUZKyf4g(-)O|{cAP-?Qiejc;)SzPbvpW&z^jH-QaQ!vbRnzu15Ln^P6Aa+?}6Y ziC?Yl3Pv}&{_yOV_fAgFFYf;A^(%nBzB{@8YVz%$7GG(;{?nJg{{GjC%j-`&U-i)Z zeE#)K7tOPQXi%l7%R#}7aC?AzZzKKb$2T_tn-^pp2~Jo)P8W71c)tDbz?ee%i6 zU;lP;_SH3L!m-3!>h764`scR~uI4@adT-s+O3J&b;*t?;`1P09e?0m28pZ!{ zkI-=pN&j`P#JJJ|p1iWaE6J_2fK|Q1Ypv?VbnLTB{BOHuwFRu|memsTL3Wjubl<2) z4iqRG-BljFTV$mLY}76OnEw5}KI%&9Z`3IVij{4aVC%W%K$WrPl@{>imL+bRlS&xqo;q}FSN;H%cJ+oCQmKvdF2qdE^B4rbzQO+ z&<=Bu+~if*dOkVOUcb$&u*dI~wHEN?mPKya}!`5@lLH7G?9`4t3$^q)) ztsd;-YKN5rU4(72HeS&ybnLSK*S)gM`I z@0M*Qu}ANgO&;(cy<4_O?FT|cCYxS0_=HK^>pX*-*n4?>f-nmEzh&61Ld%^&9nU@_li8l%JZ!1P+r+2 zdB2`l4$@H}PrLo|tm;6aqEDgnJgYiPsOVbiZ`3IV3YDh>_B^XPP^dhW#m}>^<95nM zxvtfm^2BxhpWL!hR%JD}9H0W*=;i%tE;$e@ywU6X)!cG`NZIJ!{c0{bNd2|ZyZcA( zl&5X}c~*58r)>06@^AL8tT}R@h`;kG;Dslk)R(%&8%J?eaTVtSMNzUX!@_c9m*OhE zJ5pP5JQF8zjtT!w{jJ*FWM-`Cmb!m^%KKWPb_t8}MiY{+wj~$xz20b2^3}HG5}NW_ z*!xDef7>0GhmKynGn>HgjOF_P~=%Y08^?G{`IN%7q@C_a@EC>ut-Wdh_07 z9Qk_Naw%3#yF7=hi)jnL5(95^TP_et zzRgVjr@bX_GPc*(g5*nO@?VXCx4A7B+LgEZUwOS+;rkK@_BP8apZ1o#$sGQxZOKJq z`ZtSRujRm8DtvsS`1Q$e%bUcoS9{3WMa;^Z)Ra$qOWvlIyjG(1V&L^QHRY4vmN%&_ z7~s{6{lxxM%Un^nsW_RU63iCD}D*XmF<`r3Z`qs?({re%0fBep0 z{`~P9A3l_i_4Qx><_mty`CC8F!~62}FSOnK&;0Iv`Tn=79R&{U`pOr7_xE>GWx8;( z2}TQv69m>YjZ|RJXcS`RuYB?2zy4Y&!~gnseCw*x_3kf!{#p6>@!g**QBLrOzx@4b zEbV*0Q@`d%`A_wRoj1Pwi$*~qjFJZ)<`8&7%SlKDqDC8G?7RBczr6eN$Dh6XcllZV z(_i1$Z~Eb1rnWw(Z?4Mp*E~)2L)Fh&eyyvp-m}y)^T+r3!>`^=AAeuhAmHZ3@0EAI z`~AnwtK;wURUSWU-_azYA+iF zs=rX=`ZpVX<%=oOg3ecEE>~@aY2CDCk!%)=q&9E?=A2BR=s-NBLD@<#|rS4O|G?Yrkr% zww17}^1Hvk&sRUM(lY0|BsU@#{<}>0F~5H|?!N!|1fNgvQWMOpaDMn)Fh8H*vopb; z|8n)G{C{DteU>K~%^k&k&;Od^CY zeD$ke{o9@uJYmZ}`je~5@9_OUfB3jKG5hZ~^R#pG;w=2&-B7L;$0Gmv!xw+{ z?eBc?8_hQRN5223{JZk4s@Bz|`tZH{;rHF?C|B?5BK*5dzbscD>aEpD@i+VjQM@Je!DHr{@42FZ=8$e{;glpm$bSv(NB@-n`r)qEe{%Ki zFIVqA{;T@WX(9L<@BjMy{QVC=qb>Dth9ox?J_VtZFc+b{& zQ1QMxP8)Bk5%TAEAO3RlYbE%b?{a6vSN1CZ^%tkV{_^zKUtJUagSO_C-M)&eFu(uH zRnwooYVR6*U!3yCyxoG|Hc$6``S78=@vs1Wetmv@etmv@etmv@etmx3x;Vt3A%!7K zVTJ$z2nf`M{}jR;N*F^97GfO~{(l!cr5Wgagi@&=f*qy~gN9tWns(+IoL33Yxg_Le zJ)cSE4d)hee-p9FY-&&OPCO)R9%PNILOJZm*N@dK8xI&#%tQ`TWJ_w?Lm5 zU3c2u9XxhqdjVP>z7{kdyM+=^$S}eLrH&Z`2AJz8P^)e*KmrAE&7JES#Q%eyNEn>f z2#Vo+R0=Z~aHY-;(51eI3JLPgT;{w&7@uebC}ao_m-T!WomtXIxqOX~K!5>V?$327I`0VN>pAuNnp6&;z(4?1BlYlF z9<@+U^#UNB<6g=)vnDVQz%V^g7cN2Tb1B{E z6WDe8w792y}@rs?;F{BRtyIrg|>SJ8HQ6N>2^XO zg!JS!fnX=typNqJz$Zf2{#@Pe?x67u6J!v#50|B^mwHg?LLs6Ah>JRir_=nl!&~_9sxplgjApE$^hi{k5SRikR+j@ zAiw||#wSTPhG7Sr_c5M60lMy5L+p0<42ylwGDi1i@d>u);j7C{M`J)jbG@7ih)785 zusTv3{*#gr6H&l|6AoyI2whJY@Kv%E1^@{G6~{_xpmaVug#${Zi^Fh_{%2qqkuleq zkZ5Nvpy0cTFg$t}sIG2=86!@FBorT@GaTSNBQ}|)KtSomN5C0JGz7>1!S;QA05B+y zF|w7{6;=4oxJyFi)OAPP8!Ch@XXf&y6bUN@1qX~6x^0XhG#}Y_iqLRy?ulZ%tKY{2 zPC-I;S;PancbA3A*B0s-Uf{J|DyMv|niPq;237f3_K zff&l8bW%dS=Z5mltVna8Jm-KwS%g=4lNSh)K?nL|i9Fj8LFzLwNi( z0N451=O^Nw`LD548peOd>AJ%{IIV;U$L%Z|oPatPH{0{VIe=5SiCu%3j53W>I509X zv(ypW@Slj0fo7U$aQdhte?rEvV1M%`pPhrfPv>VyNOkpztWr90yfuJBeJA3K5hkEJ zS55(;N&*&=%FoQ<_FPmduZb8(--Ylfl+GY9qY;o%Y3q3(ona1gKj#o2BUMQuN(<*N zJu0uG@9KyI8Nv=l2?z$4*g`Bk@@-^3$^0~<^x`!h5~WJXQI5}GqUXS z`QW_gxupVzh?#)2t;uF5WmydhXc!=d@i4Yy7$IUnTPQz~j+siGmvO=t$HOCZ;S#hy zm(oR__(q?oY{!i}!3;4BXYsY5ZZcQX1>)<6uce+MtrmvdY{)GH=Z(y{elc>O$z?At zK2Fz{1oS8$AOY2HRh&s(8{rH~&~;KNph5}dk-E6p#>q84R&Hj7UF@vikLnnoKI3%V zP991%eu;V}w?=3Nj_X5z#}!aZ~XXw^Tumvcp|dljiLb84Kw^zeOUDkL}} zK)jWchyXCOsGpcJ6`Hs5x}r)#0IT=nPWB>Ta=acGIr^&4UB*y=XI~LzY&t}M*)w&r zME(@W>Nhe+PIa$BzpqJUsgx@V2S@#a3I+60+D$taYTpaY56r6&Agy*OGdQ2)0Y33j zS@rBSicDN-C04f0P9iHu2FiqJP=F3c4+aDUjc}oSD;-Vm-L@)DNMK<)OzkCTeJ-W9 z^ofVRF#a=4*Im)) zgi1h(1IrE`BNtYxJBxLfK^_?&JWzA!IarsQj>g7=fRKo&BpGC?qsY9DQhy&MOA?hv zZ{XZ<7drNbHD{K+2O__)55R6ym53(RD&H(IhVxM=H@9U#(N~TG@2)?=jG2T3XF*ZP zJ99No0~-}$#{qZ*=EYW%BxB-HSh7rKbLW*#!UQvLNDpvsL{!)$v^|R9rAOnoYKT%H z!d8_ECo2bG0z;}isayWc<5pTbstk=AuV~~`>)*2%NQ2wNNl;i!##PEn{W&$s;;Gw4 za^JV0dSp`=IlC7XC2#JU>W-_B01wO@T(=Vj&!j`Q9Zo0|D(&o)&l~A5i2|Hx zCdLE>@L*i~GPJ%dr91j0wjEubh%&Yco?tr5kiwGDxlnu^j$rs=`w2*0)`Yd`$BN*t zSu28{h%ULfQNg_st<&bkP0VZDKW-$ z2c50@5Kw%F@m`IaC^1Wr93gTXUwlvmNjx)?xuxS1ZX+NROvE&E5|Ai%BCn1rjhlv; zCwW&1bGQCNrQ@|qi4dj9S(7oBt`sF=ok^FOdIYBwC~;_e-X)aUYPP%jeHu9inM4FQ zyBs1W1ki(hl^!>oTc}+x5HZ~oqe>{fI>j_~KI09at0tuwBW(CA6t8pD2czEz2(u#{ zaS^N3;$|O*2vQ{S$Ux#0OBi;~kcP7XFkz<1z+p5)p_7Z84Kd!h~#;+UWU>g zeL5Lko*c=&Kj0+3PCWGZ+N0|ikFPh^e&pXV+z33+jjV1%cn`tXb;r^xWsTh z`x3j?oPZvrve_=CK%@J~Q{-r8NMcdy`Z06IwiHS@er;@{V>3s+H9yO=VmyO|@iR=< zUGZEZ=1_M|WDkvVBuQKtDPlYC1kbDhQ17AcHHRhY?=ip1>?jrE6lVn`6^*KDYMR>c zpQ4JgqK4S?tzFb{mj!w1IkQCZx~}BUEIG?pg4&TTxQCxIYhq0CW0hKNy4pQ=i76IE z6;(BtFV(0ROH7Lo&?7jv{vP>*qzGL?N#o`|)=*zn_wTtsky{+#`qu~ynX+gdRGXNPBnSdtFqLCNQUwY`I zA(AL(M`8vI`J`fMPD80Q#E8wRZRNG0ip(7`33c^n5-`k|h`RMp5u&;73|b7kjES+K z&h<6vwsGhlKw{*fM>Y+oO-Bnx{XRA_sFY_%{U}A^O%~#ye(zeSb1$&Rs1fsCpV|qZ zQ|B|d?Ptw8-@|9_d`gqmHuC|inm|@hSRz(>N7HpDMRS~bE(a-L>7FayI`fux#DtNR^!$?}POLkj>1-y|6i3I?NXfIY zbO6cj%lpT*hk9CS4m}5}j^wI?qf|7rY@?MF>VS>9K?*k8RNu>HCPo$-?yk{{=gii+ zCegT&`S1cBfUHp(OQ`!RzQ0qVlL5wRG5g9XwO(!j33k`|_xK^H8l`YLmlZ>ms4@y% zdtrxn!RreY9ARSjRZ^05cC@HNED;W60QT&EP7faFd(5!BXaCPKCgK^BQ7nq0&RdCf zZaQMpK+ydeaj#qmXkh8qf6$=Wz|;ntS1ALVZ8S5~q1p280Vs!V{bQ9=(aG47O*eO? zV8ybD&T8(1l)j>?em`hWZ(FFr^wbMnW7Kj-pBi>P!^&sNrp(S~Ytg3eD7|yI}LWTnI zK)&LMv|f}_*Qc(Xx<(SiW`Jtlo8Wn$;+4*Fk|E_KqjQn?`ffQz7`%?gG`d#|JzJIB zpRO8gVA2uXHETt1STv=hH#>GGrOJ(UA0VuKm>J<-%uW!ITwjvJ?$PaI8*{ChEZsz5 zKG+SmXB#EqI=fiXG0u@Ba`HU8XDUC#bRC&1TTHa2^absI3^ORqn;z=fYYxHXhCDuD zGe;>*mNca_q^XWl$J~bhG}TvgN+~8wn1a>Swb-MXxa7>PGXY#ynI8~eg#kfNFI0*dr1j6k~80c^mINkhkv(hxsM4r$&DH1RkfxG#|(e>1S0AjOo@*zan8=VS?OG}57a0IPl<>e<+_P+Dzt zM-J>U>b3^Jn@s&~MyXr>$;76FU7yA@G`j1boXBR2S~h$xy=HuU( zO2z1&E7QClRWQZ zPBTVZ*PkC%(z-)bwF~*yG zt@lpIPWSIp$>AuzmqW6w11xjpk}=t}O?-mCsK6(^iqvhk)b$(kkmijy8c#9+cHI7F z>U@uN&iIT$2kif?{EK@{F)i}XHn=rQQe0-|>keCBgq~?3DKRzL{VwZL78CSnJ~>XM zgdM}1F3D;$%)otyl0zzs2kQ4}nw$bj!Pr-{>-XWFjXeuxjvOgNk5Oe)0}xDGd$ONV za_b)xbT7^6wPN$;l?|W0#w3^yWdOE4^&%is)HNqmQchsxmGy9vU5cANjO7ezxNB^! zY7SegDxshG$pnW^>^+gzi&A<^J6oNm$(QS=q%omo&->&UB6b^_ySs4EWR+?{U+ZQ^VxV{<_b+W@Ys= zOxI!ipF_j*7q$P?yOI(S4gD>2R-eH#rqOFGX6%*9SZBhNGHs$lm2sOhcIyvG6E-MhyfR&`u+ z+SI8{4^sOiS}#iJ_WYl=Zq}ZapcFi!;4aT&T)IK(Piq|q9U*fXm+1Ne@%3FNOR!si z^9T-{vSh*3swAc4ky)=gj_7jJxtgP9C}R?$t2v080$FE5{G0D7*X00(=F{dc)`#Chh}wf{TMOqs|Snh$mo zCu6Sx#8%P1;RnN6M$SF0ZvDYV1J9O5Rj)#6!jv<6RLH&d5?$N6HFoO{j#x=mqjv*R zospLuz=Hmd?%8k))iXl5QF>FQ_G|-~bnQOR)YGAtaJRhQR;OiL!@Ahl1U^|F)>YcAxv z!lbciHcsI2A|>-(ACx`5PF51Ox>L8I+T&}>`r`5R-6u=9TmRhaXjS%C4CiKvIu@oL z!_6E0o>S<)%h*5dUV_t^4K>H&D`wpTz`c{BoBB!1pQJUTvt&=QXHYFwKgsZ<*RCKP zsGaWj*iCibSdmWCuta35C!Vfz%b#(&{$KV#1NWy4WoDkdQ`8)_gQWy1dJJFE;C0t* zVyMNt`&C6rNl`&TQBg_RaXNY5b}-u1n}+T~q=Z&X4K%yw+-o6^IxoC`*#==(|Et^5 zkfh1B>n*3$Gk4sx_S~OkL-+UQ`Q0fsOA@+Y2T9L*IsoJ0OonV?jJ0E7Hv?b~W&rN9 z|2?l|;kl!7S|W;Us#mu2{J-cm7?!Zc$=e#hd9Pf$sk5v#8}hh`Tin+xM%ks3w3sDY zV)-?WE77_&O)jgB%Dvkpdkkc&PjRbfyLF!!0SsP$wF5h?D<>iompaRXwbDA42^p2!m|Y{t>7{`x7u09Y~#}N zcX~(v3u9ee?|&@{${N>x)5Qz0Iv=b)KQzY-Mwisf(=|jkv^g-|M zzW)tE-Rg87-z)f*7NjRjCz<+*U`0m-zB!G)@mIzyY1niROcIxlt=?}E*EP!#E zUA}wl_Sg+cGgd0|S&tpBRUQ4z)Aj$c|2O$sTs_>1l|5fNWlp2-d-9xp>>aDJKHV=% zs>6IF$uex7FQxswDQjw8fLCuJ#X4(9Wv6pK96*VO{jU{aH@m8fmF|d}&SJp0eEa6v zs=Db&JF6rt(Pi)JwEjD*p4!F3nT)fF`GR@wZJt ztVPxDNA_$q3sp8XzLv%3UITzG329RUNY|En=QK&)$ByVkdHdNqg3Ww-tZ~ zdlt?ugL{}~eG6dREnwSKB*W65c(wLM*?iwvGhrdc1pQS#t*#xi|4*a!(v3PkqODaph>T>ewg7Njep3~~3U`qZSvm?2rVCqP&ig9)x z+IK~b-t`@=xSvDatI@UNp`j7?{u#UD+4Bkn(_J=k(`(mJ`1(XJ#QVpidhFJdxSs%B zuW$b;%uD{c$7)lv*uBCfy>}07GS*4OC6kvEtLxMKCm!n<>S+H?TsW`)L%`;FQyNtI z8N%%ODD53RYfkfE753rk{}y32kyq?>iTQdyV92P zu~!yiw?Zhwb~D$(XL#LsU>);%1|Xhf0P<-D0BLU=vHx}V@-v1AEwM>IgEa@dE2l)^ z?q0d`8o=3!4ZW48PmHTCww{t)waV7+%ps*ETi%~DARQ4&gU@W4_PoD?`Se}`*i@-E zC)GStKUp}d0rUtC426(Nw^y+GD`W3Q?Y(UbYbFT0yso?VByI7`@J7e07H@nO?G)!2 zuCpQM_P<4|_m0^soYuU0|D7MSsxL?DyDu!gh`ig} zy&b1j``Dp88=wn{R5gL+1yvy?1>1(T?9`=|Jg@)e#L-!_0ccYK~fk zC)F9OU1cF!Wg&4Lkqnn~^>4OzJu%gCrk<;Ap4#+kyQed1ywWsYkx1B{o}iT=wILP@ zMJ^vz%doHUP1*GF!0cxziQpvlOu}UeM@@bCgm-6eG=DZ8Vkdu(p!Tv2|mOP2?7fWvHgH6wNGwotF z_3gk-P7N0<`wN6YgT}^e9*MCcOc68%LWhZ42TWYjGaif)oUoC*u&!h54zK9{PxkfS z`hUT<-n!gcbA+_za9GKVi4~W`(S@v1Q2W@5GB$lMP#N|5=y( z$$bT2iP3t$@Sp;)K3W(QJ>8Tn{(N zow-xh@OI_(Y-H))b?66ga@ez_Zt_X}rTlu%JA=5Wz2X8| z`7fO%k4F~go6nlVfu3%#*}$t<>?WTjNL1b9Qj+wmBpy|2KfTZa{B5!_8qHJ&!_qlVBaAETn^nGPE;)dnO=GQEaUr`58|@ie-=3m z7dX#no0rIU6@dJt0+64tEB>D%`A-&Z*sx+$eX{r_R&Gh0>DB`Ew`VzB6T47Xa z!$ynG9dbTek08ZOPH!`)3njgnTjjq#J&y>j9J$pmsINcr^$yT;8$NW32w5K0>cXlBZWb+Za#heTFPPRct|? ztTU=!|Fu`wxZGX&Xs^G%QxH^w-0va3MyVyXT5B@PP{j9>WJ~d=mHuLWJ>{KQytI{E zU5Q$iYG%p3Z)&S``XG5C^0*RFqD+h5Pvjar@-sp!14Y_{IQ*sTu!Z}#=y`TtSh3ObB*(0jbf(+r`=b4=d*tl4}yrj-v<+1n9O zQo;>c6{w58qlQ&}yGAEfu=SgP?Hy$TtVqBBu3YS!yT@vMmLtmfwC+Dx<+yge<1lt0 zrpn(%YH7v}Rdj)%^!v{`$9ESy0IoyKX}_G&DgbLKUHunAys$3#f6T}qEJT0}3WS&X z)#fO?v>?RjI*y$=0W;<0V-H(^Uoy3p!RqK&m0dHxJ~Ipv~} zi4ThdyI$`_hoN=KZz$TcY3GTK6IQ+cB(xh^<*l>u=3ak&r(c0Lv|9_`%-RZ8Z%18!@S+d}$ zKz)Dhr>o1VF~w-;0Ozw*sEJlppq6(C6T5cP%}LQG5?Rnn0TUuD;4e;OcQ4fX;OMX3 zy8p4UGX#M3cfo0PpTjaXwc7B3)V+{68#E-d+Jb zpxa!2$(HN+^7NE1FFk+&p~YfXl`<;^$E(^949HGjKrB(@qTe+ZGB!pHO}hU?-h*F5 z`R>X6gE!qzS8{vYzCeWS*3Z`*6~rf?RjE%%btD36TAKmAH{SYCO>YZOgj*&?b zfbqfod-yyJtB+ZlsVt+hGLzhkAooI|Vf$WHuUg35&2LEh!BbVe{U>2lCA)I57KU)BDb%WOtfh(}ArkB)me>tZ|7TcRo<1fZH$T*J`c0-l1G6MJ9^n=&nWy z?#R!`X%%mS1z68E!vY&R3|Pof+^_zL@vv$~vPz7ir?X=N&3FpX>1M{EHoly&cK)SJ z8`eKz?EdP${wx1Ks*%#I%huWEMV~Tji-paxyI{8169y z{}w}AU!AYi2u6D`e69endt<%!|IV#%uJpCy#rVv)Qv+5mWxChQ75`uDT2H184ApaA zT!90@-TPBxW3~W(x4GUs_5Y;)KN{mcg)06zV3O?R@oRr3Hy{WQVb2mb$mnHH-g4BU z_Cxh*HG?yafqPti2^KkKsWa04+}yDQQm=IoR;_DDu6pM~i(A|ZbiXuaF|<$5%Ixli zvFnejV5fPTG>^nsj=tR!Red^`3{)=VI^?ozfZ!oOhTV^}clP?LI~}tBPA^vTYl-*1 z{wpxf1PJU`#WuxX%&$kwXV~G2%5?7MZYFBvv0;P;6$lWVTU>PO*MDE14+sPWHi-ee zX$hS=lG0Pq=hkWz##5MZI>I?OvvcUnW|k?uv}SkfA2D`+bzlFD|G!fswaRO})n+wf zWK{)j+Pl~3>UY!1SvpK1x{!j?UWk+UHVOZq?Dr`-UN|utvJj8B^o@z^ucrPNo#{|+ z3O$j#$_(W+co;onlS!{>k9<33Xt5kF7dkW}K4xf}uRL`yG=}Lb0P-9yZ!FCnD?ai6 z7mebD=Y`+XspARYC|)9)21VTA_RKS6EQWZ2(+GX8!=<2cQ2lI>Q(!xdXXF^bdu}f!%D>h009a#y|xL(<9&#+`>XrX43P5C8K1rRS*5b-H%hGL|GP_?Y;GdQ^7l= zx_AMpMC993sFeuRO2l?lB4!-U16?NHYYS-47g{y5078a_gaIS2k5}I-Hg-MBz398n znYJTl+bdvNi}I&g1m(F`wMq8zA#xqX*YI9Vv1^MIi0$fL-0Lsybb>2Z>z*rFe!bXC z08|9O)Cj|>K9`UYA^&)OJ<~kHw8^PQ%~t~F^HYfa1o-mrF=Qh903CM)9!W9Q$**!|Ug{l5Rdn?!2*DXf*oc;jZt*=nW=T)XM& zo2-^=&Y~?<67eF)nh+L?+7AWl{aQ5r{Uzrdg@xmJWr|HA2AiNOXJxrqWu8y{m(01V z&C40EIEM>%+5Di~r}4fbySj>j&&4ol=btPetIChnayxN-M@pW@AUb35jg`OlMrD2K z|Cfu4U3?j_zRQO?GL-)m9-pHKe3 z0KtNUMLZ}`ezpc>M#0VZH4DQ|7R7B~T-83XMQpou;1^ysKn8Nl1MeT)3LXj~CaH-t z72)%P_dayj7q0B}mv%Z#6zzD1c+RhH9ehRblh^{?oz&bbI$*c{Xny@n^GvFegUVW! z`f9zPb;;l?a#wAbd#mF6~}>*k!R6jiDw{L-4u)>iNzFm``+U%&7FyXR)8 zd_a!o#NSAbjw19+kmk83`jdUI92I=nZ?ru16*dO=3_xl6( zFV8%C)|z?N%sSFpysLpf#d!a!ANXvy5hA zk4j$R0I;Vt90}s&s)LB3Hr-y}iMBO<*!%baqrWOxN2x|dca$M_OJ&VF7h*G0z>hJluFfI;y9iLi74QRL<8N|Ngt_ zl|c5vvX$As^r@+`ZK&UPqW6Iper^czWctndLTkQmueM3|Hzz4SUpYL^Ue#Q(H0bQa;Ebi(zF>pU#RoJ zV|_f%EJ;EI{Qpb&27q6*)#THX$LCuUkxWl}Fz9|*3II^9yNSr=>P)wJzf z+fd>*j$N~|?*%PHM{Ru#*?N}>xi~aIHy-b){|Kp-vin;7VD-v2Jp&Fa=6Tf!HIb9| zV%OT^v#)l0Ya-K{_AVXg2gjE(7u&~+b(+54XE{9(o6-U9{PBOf0T zH{-W)I3>Y$h&s+lmS3Gugg=V^6F1{~z|yX?{mp>i(yUQw{~N3RALI_YEm(I*?-omU z?wdRRv2hdui-ahuXek9WnF69_cZSA3d#>Go9yBc35!Ap51+Td3go0M6?gpajg&?MvgS|I5E&L7ZTA0z6(_<7&^Gw01^a2recT6X+) zSFG^#JnBeW)-5mQT)E>*z0rxu6O?OXpv)DQM}y=``&fnNi{shs*vGNi9$2lNgw^G`U5aVVJ*Aj_`8ujmz3ko#xCxkyKll}H ztJJ|OvG?spYABz0wo`J{o$J#+H|MmaLIbpBqhj2FUZm|#FEPT+PTaFf2!Y)X{I;0W zM?*jNB1=1;$je~NGUEY=4f>syP6}u@f0v>*BzsaK05bj(@a!p45FvO1SPdca_Y7O! zyH^Z33NLF8O3id!_R5ZjGh{Gql|NM$XD1rz)-GGCS`E$uxP52mXUDuSK*FcRIEm$5 z&5+Y2jTJ%b>0`5Ey^N!4sC=M$0qO_-%-p7*8k?q{L$8#qQ=~F^_*Gnr`)?mksPS6L{f>L++~eO&SVigjwj0zwNxa8a&W4nIb!n)#m(M zcsM?u;y)DWNZ~$9^3gfA6gB-F`Sm;<^+8Inqt7or(nZ;j0paCi%<~)84xW<3 zDUV;+%llnsINBRR&+d6-fzcJpW}b8b|2D^xBVx^`JQuGccwslpAbD{j1f`6U?ap67xgw02(Q)r4`@_8DyjalfI`R;1# za@pxY%(9=GtfVc9TQFG>Q`r<%U4gSQd6wDt?%Ss0_QLC)FONHeX-SzreEQa>t$!%!al*_O9LrJ;bhs8;dp|IQ_nsGRpMS~ z(OhNzDJ~UXye)j{+Z>%m9cphW=U8Jn%U7pdl%I4TuN+-8@Bb$V9!4Fzfb`6_=G(^c zwBv54L^O=%0h%16=c9SCanHoEe=RO^`cY$QW6$_`J;N5G_VL03Z((5%abiWQey>*I z!QCk}{er&!QiHJ8lq|*NUYvHdhs$;)+BfgC-(=gzx3F&7D&c_~@h86_ik6{&Px%F{ ztvRN61RfUUOP6uUr%v!X+9mw)ge}tHXA|b}U`l6R9GCAy>Ui4?yn`^FUcj9S&=&$k084(Fnd}fsImurL=*(3ti zN`W3Ui}LSA3(45~1Co<{SmbgH=o! zXV>@V!vJQeUP^Kl3Re4_A|0*2^W+PAhus%;#T%B!DJx%#%d!y6?~`QkdE5K>a`t1B z0~_O2pZB$vWaGU&0<|_P<3kEyRDEY`=f@4t0GV~|c!npiI|-p;^po=4{G z+>DOAofqsDVtVfhFh$&x&f1>#Mi6~%AbXhA}?4~=9yOgKw_Jzt@;s_ zb%jt+P13p=t-s6U3r)vdQ^$P`r&BM^9`?3g-GCj>qjqeZP0URH?U9B_6=jY|*7+U1B`q?T= zET+C$KcrTp&Yu~6C$olYub2-q(&EU!uRcmmYrhP0N^BVljoXeSvBznV9hGEcG2|@0 z@`iw`)%G`JeNX8)^VNsPQ$WlA5FDO763KK4FgA>?Y#d4rB|3lAU4xstzWdU8%Gl=u zJ3`u-;AXzYbW~ak^%6dCaKQ>V9G} zR3AUZhRbJsY2T4#9PC|FE-AT(6go)c4Q(0tYO5W^hQ;V)l|-V|`~@Wib$J;mUPimJ zft3W$nyl#rhb$y+AFmxU(7oj3LvS)ik~4~pDh4s+vnHtGiTnz)K1q=-+_t@S&q>@0 zG9sADokzT9j{~%#baaN}&W^H#$hu1eMNy^$x5(;=OKKx&6y~)3_z~=^F4VXKjYd zZab(3AXqsrBb8X1lAeL1ehORsvRK@?(YDYg53;4o!ci>a4|SUvLJ-oKCoiKYCz7=1 zf*zJ%3DcgQ^R)CF8>MUDCq>Klz~bty?XlHl16-0ePu(6b$( ze^ZJ%dt)otrZr;`gNI0xf+G_o16>Ire8qGm*U}$3P%XDR$n~=>wuUe+$SI2x?%N-S zPjDhbkilnQQqX_GjiDu3gXdJ|w6OTz1H;(~cg{zJ z2oL&VReuI_xBE^5%3Kww5j8T=-dz@D5wI-U7qFNE1~LZ@>-%pc)`hA>=Twqqj-`f1 z`z0645Q7s?gc|S|td3r-PxDimguYx>h!Gm6 zJYS44KO+^bQIvQ>u>S?zj<>EU7Jt|8ZOQL`IxbO|SlR1JOq-fVU3H$<_@XaPS zD)z5XhU?cnxeDIf%4bh(t{$d<11E0_fOJ)s`I39Uh=#&Xem z*7(fpz4vLPxV{EU0F(P+5cfumS=Gwq+O!_q-J>DkQ8eap3n_o8D^_;T zFoGmBTQN8S)&!{gcRln$} zJgo5yb1SZ89mB8&eu?=crzUqVy@37?!aHWr&iT%AHwbN`+@1$lW)MJ#hY_jO?)*ey zA6Gdv#dW2G*3cvUyvxG11}18*b)TI}jjDZ{tACGsz`RvA5WtkN>-lO-C)K=yAa{!b zZNwagxBlgv?p|HQQxZV--L$TwZ;27VUNQ`@&B7;NGpcUL&<`ugcOB|aPQbk!GHeVJ zI)rQdedW93pvA9ks@|#JtPTXBy-{aHR@V8{>!6`cmm>kd3)T!{V-vd zc>m51;kCk!7Su4uzJ#f)}kK2%@`}UGg8*d zgm2k6fdAtwbI#(yZ~sL2inXWOCr5+RTmb1QvzI`OeNgA5kh5L{|LJ9zllE%>tli+M zl(SF3ciyVGgi3~ld+BDeq0)Uk$-QabZ@J{buZ-1Xfvcm>@&ykUPJ`n8V(mdYEEL6` z3^ymHTlwnvqV@%H8|u|J&<_JbKbrp{VbtBmoqE`L-0y|cBbo86c2^27?I{i2?~&SF zV*-%>KZo_!HDu*+Y#ox3)ILcUoFXxHHtm0N`ymacIyjy#56csHYrm2zizs>`JG1nC0@YtDC{({B zD!JjKNG-MA-J!5S%5?Jv&~K;k-a_jy1E%~QGXiz!Tb@p;oEeQ*xq4dD6e23+uiYL} zddjy`BOS5*!B2yuJM@!#ZD8v~_Jrw{q?ka0bqe7xG(xRle|Z9>)dq5Qrz+%n6`qsv zfHC@_qA{E2Pf7w4lH-tfAsVj;G%r|krT~FRF~mM4nsh1!#IT7=3nF)EX}GolK)}A>^ZHkN6p=1~WvOaWYWE1$ zQiJ_ed8Y};cCrx!sFLOcM%o*)<`~}T4i5hEMK--pzP~Md0aRgtIj~;4p_EpFt6(NF z>ZI{~9SdBgF3a-PLx>ncSRi{94<}hq&`L{s_P{UVm=GBONO$w9r?Qa0N)>_G6bjO zD|MHCqO9-y$$awzT$V|eYnZ#!We8p`aoUW3);<2T?51S$EXC^Hk8rW>(&FK}Y92>Z zegq6}0!CLrmv`T7I$!=iF|rj;+t7m_=-fpb^rfTqkX{g z+EKiOYH5e)#jg}`Kg3GzTiq`aO|I|jC4PB}jjms&+Zvj*`}wd4XGQjdsQ<})8qrin zY~d3`Iy}6?#m1oc?ITICS}T=Nz{|E8XjkZOSkRErkV%!U)V7j>GbDOPyeU(ZD_zif z0h}ua^H;noMhCWptqmRPzkT=F`4zw8nVPAJ~d8GHF*W7pC1DhfYc>U}QU zn?^)TXm4c7$9bf%17PylOmlnjBW=gcoz>YXmW8+Td>8-&6D`t_4_ak=nuQJ zL6o$u^dvrCxD8XBDFS*BoP83C^#c!vBkb448Q5Odx3&0dREK@=&1t+3f%O!OWyoK|o8hM9+qgwM<**h8 zyDD!Me4dRwaBs$qQledTx+J12z{o$8K#vn!W7UI((BN$wtq%tZ#(P~9!*}(bK_$tJ z9Z~#yW9j+$#;U-!Sy-ECof}QH#@%*>RK70rcFlXv!~4UmB+K}BU3u7|iZLdoarfI~ zuDsbEXjhfHT)m-6DtV45-U+1y z;tn1hn`sWSsYAVNzGzBbJUO~5lA5!FqD|?AIgcSHyHkeXwGyWrSznB?TC)ki@t@9a z3ZNZl3;2<%W36ZK;ArZzysgOS?A?8Ps049Q*&w%jUVwk89PH#5Z|hOMuWmE5dZQ*; z%kc62HbwXUL3Q@bsG>Rg)5>zS-mzEcZ5S>~qgl4FHJY9RV-ouhjdwmcf?GF>rvixl z8L4-Tl;X~hv0W4l~X^cJ=d1V0bH&si-It2CDnu^W>;ux_2}^|Ljz6 z0j}P>DH%G6=2+uJQT#i7`mOaPvT=4oiK{-Ra&m@Hh+L(xx5`&NXf>V8Y~(NMzp-g z+=`PwtlJ6b6_;7E6s$;&oVB015H&ci_iBGX0!XVu{yAnzQ)q;pe>`;$I~XFBMm{~$ zC*;+}qY@O#b@nGLU0yo@k*-gzYJgPlaQ3OoFv*qm@^-_3b(XQGa1O+kPYkB-4C&dw zRXV2;R=qvf^T!=8hm?=*?cKVwCXBfSz#x>3!q?d&q^_bH0lEKBF?d4ph?(PdJw@mB zT@T1x$*tSneOSe^ho!!b$N4>bUGYm&^?YTN4nBy7@}LX#GyCA+tWyN-BX7Yt`6FKE zfdqFS>Vf&C{nM4;(|kk1Y3rxiZ%d7Dci&SnCi@d=p|CXnjXA;gy)9liWod)3@F&%74{L#^`$cDb^xChr? z*#Cc4isiL@@yU>MOioW$wSRb4TDOC9xGXOa%0ZLAEW-VBp6O90f0D7U1|$=iU^4n& zO&`lHrd+x1f$rA41F4(|a}L(COF*iF+oa|u<@Wt+_{utnuX{2}X!?X{PfHb{$*hll zp0bZEdW~PDFfsD~HRi2Z@sd~t;? zZs#o+5wW{g*2BxjgDpToy40k2RXHR5ZPoY54qYYh*PL2Ju|B*$`^mm7wDsqWH4fKj zbVByc-w3WKX2w^czl4VZe-)$5WXskaUm1c|4~rgMej$_Ko5PD1S9eqI^AO|udz_|# zyoVs^d-LPm&->)!CyTk*COW^R#O*C8E&Ud>ZXIcAQV+MxVg$>{?D`GBisxh95jxe^ zri5jdge?t)BrnlzOr3TH4Y_(BL2)0FyJeq@#5*Vv3JGbFG8+}W7_-J8zO@P_t@m5@ z=f?&w>)toIP6DY@oSYz4v1_VA`+F-n`{yeK;`G^m{!4k8Ul`qDS*zl?5vjPpHI z4y=vsKba^|xGa-dvhmjW7RZ<_v^w479wHv`PYgU*-D2zySs{Kn&OoV`=}$mmg95){ zgS$BrZyiS;!!zRa52l}(*2uKu^_N!T$oKaY;|(T0x#gv}9*P7|5!{(Tt_faRg^Yf* zkKY(-+CE&11Sm}kr8|Eu_C540nh1h4UXj)y?ecS=BOCd;B@BW6k$_rYoqK{w>Jg)R zNPp$NY?UzlDbXh8T)qi`2!(Niw@|^cW$ga?U4M4H-up>s-0}V8DRV`{rJ3qvz!DhGX*60-4U{!u~E(aB?eq zK9_?Hq5Hq3v;N!|AUC`F2}oNvy(8y9cSasie)6l(OTXG2(N|Elj4KU>;bdlfU_Zd3 zdVBNxlUcRFOZ_$qYqOsE`dCryz)T@6H<0p)|15*>Jz6e1Y}(7mwFt65uYyN}<6#P) zf1V0@HN%>>jOQJ%V&5rTD1sFK-wa@XuLEQ)orS2xgUq`^^Bipt8wzvW8(Y zlp?c8mjEdHuW5b%=x4lH+3u#wxBCYE@8}Ps+>B&~Hi2Q)mbl^63>{9IiZ)mc1A>t? zdZjMLUO&OJ&ls%cZHE-SfR^RsUeyS|#zRJ#WN)M2?(uOlFfWB0-KIBguB5BQvAY+$Xvxr9q|>E$nWSFx^#TJfu5mvy8BR`_ktYC$PV%<( z@wXWH)AS3)y$)MrD$c(k-A@U7nFf%1-zc0!dH+hV(7wt7DzbADARl(-G$2cOO&Kua zMeO)z@g8Om3>vbX-n2Xm2n|4pzV3@N;C^6L@c**Xg>c{+mbNor_yU;wVpJZpS?E@( z;Z@_MaG@e#Sj{e-Zk~68po_t{EvBBseA8O}0nS85Up|mtf9}@rl^`Q~ckSNCW_t2+ z)xNe5JPNth@o&#{e4+5o4ncNO_xO^9D6^sO;&C}TJrnUJL=MPCtL`Dtel?*3AnPNR z6zpW$42SRkeA0LMw5h}Q@CS7R*3ia@lH@z4zfCnQz^4YMKN}L+{~*40L}wVrsHWYJ zI&J|cya{9;E0Y|g{uCHYlf_5j#LJ5oH^sNAw!7H2pyu`9 ztpR|Cf$?J?`$;Pp=f`>}X(yK!mkKqTP=8niGG1$0RL2R_?dz;)gnBWm8kO)NaDJWc zAH2#Os{J{6l9q7no}34nRWD(|4*y>-(%n0^`a%wFoT)9~53>?~9Xh|60@ZHN)?|(P z@bF7RNBg|I;4KI|0NEZxSkS>k!}S+ohjSQ&V7h)Eg;3~Tus$q2d*@$eZcd09lF6~{U1$RPC?zaU2w!pI&jsI}*>DiBqY2S@GNrw%* z+u~?1a`_NnHTExtEfX0n?`t{k`<|cnJfDXXOi3*E@?Y#-+;?^2cK}#GpjgJjwSjoKzLCF~v|@mgTD7bz05QpUlhBOIVjX;0eVFCNS-U$2Lw=D!5G9QU#B~dv*cI zMfeg3Y$}EhXI=Wqx?B53(+>otMa_3}wiYDHPS@{*{VCSU?6VQcKV;i}YCS75f@b9j0W>IRUmhzsH^H|9k8zut*q?5 zdBi}*yoNWppea6M_|Ih~aeMRfn3Gq>y>Z#}mH3_X?+EynV3ynKzM8$h{r4qPc>wP$oE8}5k@JJifb?T@&rDMwUCHk*nAOe7utrQh0xsIUJklZ}gm23+|UcPOB{R$3#NNu}I_)c&(L#?68Lk zPCSpTg$=?Nf4s$R*|@5?1pb_N1$|SQa0JRDV{z??QTk9gWlMty*IVbacjs%F@{G*j zSBR=4{{lW$rg;5nMigZ+Xyg?`GZ3C!%6JOvGPJjZUm~Q3?FikHa{ke33N29o^l+Op zHTa7nq*%}hJ(;B)?xm$A`>j~>Y<1QNaQq+Kt<%<3Lb*Nk{IrC%uFu(+_3Dl^?B=mV z6hD59!7F*<8wbs}JHOYxePg%*upoDP90Btyg7dd?$!w|CbM|V6#CkNHj_%X#f~NiD z^g(w-zx>}lOSq0Ks*N*(h$H9C@h5tr;Kw2Y8A$<3ah-%~-r^&mUo4c%SIVif={5}* zzE2-ZKSZ*|{I~V@6jAXsB)TWb(xa{8*ss(``ssB0{c!ELkl6H3l7K%gIgUI2b?Z0= z?!OCBLAV6msL3&I87tE-e%V3oirB+lmGeewExK$oCV7Y3C(~(L`M~}gxxU@cRHz?^ zsLd*llv4&j@JI_m^ zxdK*J1U0kU5{P;(wK(eZUlawIOz@c6Jv6^d*0__(&7T-Od1?}|{0;C6+(d|PUMxB& zy%2W#`Y6&$R4LtzO=LX!0}`PoFD@5@LyzZ%`{p6M2;%x2pNz;sij1p9g*YpOg^) z5+#`!Q?|~)T}*o)<-1$fqlylihAlng0q3jN;R4)4pBG|s{GB!tXZ68W64sXAdgo3% z!be?C-Bx+SE08*;>z|jLa0WB9I2=Z%-!bD}G8a2iYR-X#)V;N08>sB4&pt# zO}?@zDbTCqjz}pSj9yCtY1m7Yx{HzrjHQc3bg}Y<7SYn+Wb6geE#@+OOsQC-`zjTP zNoH%N6C_((6X1SMjTocdYK`ri_MjkauQC3aIcGW}%q8PD zs-68IocE~NUwad$<*4a*+WSP4959sx+?}3E9qR|Y;GY>?KT9l54LSa$G=U6gUq4dKqX!@0Ibb15R7`T?KiF{qnK>-n>^GHwkVIJ+6NQ z3TO+~eISx(mrUqF#)egkZ`zfjyd)zQ< zwn{~4+!4F@cG4H{NmQP+Pz|x|@{q5T4+uzW;Raf#TU1T_AF((DCY45WmF@XMbE{w% z-vpNXj1u|rnTtwMn36vRJ&(%;>{6sFtxVDLsx8^^PTe?9Nh{e}J1l_{1${+;{nn4X z%CP$a!<4o^5AW)dYg|RK**unQSYPtv{<=1HH8A?$#-kedxyn);3z;}s^Y@d*mz*;v zdYhRGO#p0ctnVoKvcF-CI#Fmau#~FmX5|fjg0+POYR?cj<=*n%n+f|@-+L z;UivZSa)q>Vzf$2L1VUA!3QuWz%tJ2P z)DV;~vNUx~^1P5a{!Q0r^^)S!iaTCC+M@44gfh1@b|UY-pYla`U&E|>1-H*&k@q2- zPLgg&EpJDrlPYw~@+W8W3oR4xqMy$&{v*h4P`~}F(qFtKAnT|~JWyLmp>cD+Sbh=X z)y4qpT#5;n)hLz+M9gu$sMSKQoXm4_I@9zaG2k1I^=;}UlE^uHM_v8#GY+t7CcTakAidR6s;it?(?}jE^S%% zGeGo~O4M`O&`-F7Ryx2A2>;+7f#P6#nedSqw?KXBxmoeCuILKG>-YB%%{QUTh6WQ6 z28?vpWs;I&CZKmJU-Hbe>%5;VdyPL|!ss=Hu9CFdUbmsAIp)p~->pT!D{a%1B$a~m9v7;e7Aor*0Eix3eCFLe7-*I8&Q#u z!Yq8)o6TaGl&SXaDXZ| zDFzm7n@tm!OMS4s$~o#oobgI!$u5gZwtd{*rxxH!5*PT}Hc$(TH%Cgi#%?niiiZo< zcpr_9^g!9YIRgxjen)BI5IO}EpKML$_n(~iO7OSORPJbQ=8K+<9`Ry+gw@Bp7tpR1 zk7?9RKLZ9{FxWG(u#6Gaup4iM&2YK&t+~RZOT#nNOF<^dw{BK6DfDOiP28+zGJ^iX zdR`ad$Fq1EiMr5XLkB{_KNb$$x!!X4uRiyo_A)}wjsdNcK5oflM^?^tCZ`H2(oClm zgipL*|EoZbfzA{W^Hdf+>OMV2ArYDHkyU7ZB{H86P|t{*h6d?2BKyHM@~kRbT=`cJ zKDguCF;130_94W+46UU_Y}0$=4^M>ymt;nMr#>0Qpi)=A!2;d;m)f|CNa1u1P@7^s z3a8~`p7@>HLWxGK{OiN3t7~Pw>u2-g!li^2W&G%xl8F5WNVeGdaL&-}o@kd0oeJ5U*#1y#idW#gd8}#Dd zK3x9YBN-L=ROIu0UjxxrDnNGrX zkS1iJT`N>eAt>kjzsJ7%Lb0!dqziYUYug*TiLH<=WP>n4*ci$|ut!~lb~W0bKawh0 z(=zO{haS4itaXiacA!%v!b1?Vu%XU<-!h0eB!_3VwDY6Zr(0DAl|l3(_fLE( zs56#1B?2Mednm>>o-5%eUU}~CXg2=6uS~n1;V_$0?YL*D-P_w=jGUxpvcp11L)|8_ zVXIdWmHKh|t!;;-!Me9iY=~7pM{qmwLKAAH|(RN&_hB@Z`$ zX?S2RpJPCGQv;)k@Tv9$sakr399vFdimzbV#OCmV^a50w3=q_qS1g5jsO`FZ zu_){DT$4rk^05bpcdUU~Vrw|X{-rv+Vtr@yeI(~k=i{{7L#I2S+ys?j)8Dk{yl5|D z`_%TRW0T_~i^K?cQi66-em5G!I;hl7!8VamQKN#t8;-#8X4j1Z;U`u$E0oOOpyK_- zLzUN`*%7Q$mG^cLz5x2fYwT1tA(>oBW@~&-6U=|87ns81Rhbk~`3#||0=(l&yD=xl zbPac)3E|#D$FndnERU7evYdU`4JD%hKlr-Uq~c9w@$1$+$qoy?@^y5PFZfzEM{!Sy ze1(jncz3q$Q$TzfUF)yv>SMebQFYcI|B~LV1jeD6o&Y|pItYGJh+fuK21td5suG4fC$F8F~^ zoZo&|B};Bxv>gk!07_l2|DL2euZ$8fwdxK{uSgSM_^z6oQVQZ-2J!)38h?rLF5l2M z_9|P6^2Kz`$~Dz`Cyh4XA2PF81<4Dl%IWTZ6l=!apH}NWhVZ!6w%I~DGL200c5EwE zR{n5=4oi?UtidB2qkdvU17ys$n}fiTH^&W=k@zZWpfYK zc3bx)&)3@h9jH-3@!QOEq!LXYe&@e`oXCA;)8q80-F~Y+?|ZWP(u!hwKYy3F@)i!& zdD7TMos?4!j$+GavZiI&|FUg{&%#e1i6mx zUEpvtL(3#Nm1Y>&EmN3vIu3O{qhl=oJBuIN(@15(Q%5O&e5HHFgq;5-pA(Q9{Am%I z&sCW8JWNE1_Hs0Auo;YS$pL*BM)h}-NAzE7X}<)R2vl3^7hUQ$;)rZZ$~4CJnnDiISyL{=PE_pK*xTMPF z*wm7XcNXGuq@m_U&ym{`spc43vpl{X|Kg_wPguWB)sj^W=HOtv`>=aD_Dxs=^-_(c zY7bV@v>&JAXwA0PK}@?Qv_*0cO@F+VNjH;KY5(&8RpsiiOTDX6-}r=^6QtN)At{*G z0uvS)7z-%A574#}BhF{WuiUA3!ay5-=V+`qb-+}$6NnRQ7TT*SZr4(nukExS?+Jh~ zHbQ*tOtrO{M+JBo?j(uLu&xWF)3hK&TZ+Mk+tO!C)`3Ln{vTt_0r*D)IB^p$(-6ssM*hC+V*x1za_6uWbZM8mIg*COQT;=){^^TE>VKG{}a z!AamYbs46vlwr5Qo((f9FUe5WcYTdTyl?V8>niK@m$db|9+bw?`*GjtX?e#t%4f^6 zZd6Nh(!t9G_B^9AG;XSh8&4S6O3Lx9e5M}SB{Q(0ifKNi|5lthHffcQ(|CoYE-9xmR<$PEmi)n`f|fZi#y{jQ(dTUg7ot+S zqxXORthWJZ9%pW3%x$<=Efr{pxY)P%(Vu*S1Y56Kt0BijnKol86Q;?B9tS_8n*(<} ze!$Xu^`iV6jFw(%32qg-!a&b4+kusD#yyq;R;S)4k~DFq)c?9Zxy;6MQI$sLul>|T zYZF8+_cc?LSorr*!6zeI^F#9Q_qgEW9Gfx46vZM_DFAb@R;;!};`?>nbB>|-l02KH z2$T1v4yn(#xJ1wCwU;P%+Q$*_I6i;UZjA{wtemku%+J}5j`h*!90)eI|NI12UagpR&%Ll50Ck0R^bABkw#4j5yIDK#DcQJplRaPylN_uHRHNHH{Y{%-0 zx5Q7{(bD#3mgTsJ2{h6-_pM=4^fZ7psf+zPc3_s}WDDrScUHfC=UOu-WNAA3?t0i6 z#R_Q#4aWm z^_u5E+O;g63W2#ael-{QxI#7dzGxr3L>D_RdTTP06ar$x7>&q^61YRktzv(?uyYoXXDR= zj(in*E?rWyN%(1h46K(iD=1AsH9XivG*4Y=Zs$eKv-iIKO)foJ(D28r~!@$=)0Uer<i)Mh8HaJIj#K4rTd@yAVlTr_=5{o9AC^CCtQ%?QhW<1 z9IH0>weFPk*ba62jmWAAs4Y^=tNx#FN4zT&E~oUSVb_?!3@^p#nj30ksISS}Myy0b zKU#|X#NE@8x3a#6-iwJDY?Znd?x3R*%4UVGu zto-Q?iRJhfJWsQQieoz2`g}23gY?LZIo2!vh)$`Y+%CiH{9JxkW_i9d0!`obY!=}H z57B_zL+&BFk?$of7EBG(so@X2W~D2lqOH!cQZ?x6jvUk7&LRA(I2yA5505}_zl7$F zQO*q)B^gP)jFNx$k$0>SfRh*`gnZ(matx~XhQ9lt-k)UVbbQcr8$QYB@_eu5n{A$7 z_-6Mi0BaS1Jo`MIM+nYW@2L@9o}Qq;gyoZI&Q3JWFHdsn698mHtRL@JYl$4nm$k&; zL9Lz5Y&q9jE+yaO13zW7^}rP()iT=uCk9!BmwA;4W1)?>O=S3>yY4M3giJ z=+YB$s_`2l>z$mVtrC;?ecbo0^I=AZ@0q9NE&QFp#@8iU(Yc)^3|8Raem0v_?a_Tf2{8j${{EmZp(&4?&nnfKw zR0~<|L6?~?m1y_=3oiP+P7)=D%%8ql@_w&!U*P|rRRMxl0g#v~wdp(tPqaz2RnT43 zz|;5^GXX^^R1Y_jIrPh_b-P*Z>Wn6j3st%XC^zscL<0DAKgGX@wpD|U&0 zKRpv44a10a`kRvE+@OC`^(1E*ebx69Vq=)j7%9HTt9s6reMk>r&#b-k#UcRG=}&y? zU8$NVa^)c1*Pzv*xLb0Ggz7)5_#*$>eAkImtbNENcx0O@A*g>=q{~ojPNE^q>FqS< zEkJLfo*RhxSXD zm3({;59xcqv97(5bg+&Z&HL(y+I0-Dbcj3-jCybUaw_KtZOqXKHLApfSofOSFI%L0 z1klBk5@o4kC7+KT>Za=MlUjgC4l}~J_doe&jXdSkZWXup_sCt%5jO>noV$tP< z+k1P~w>^BkYd~^dlgvmQ+5@OMgD_3}CO+yvzdTR<%5yermM7GIlD;2?D$&2EL4h2m zS7M}9!+ZLhyyo0_N7VaGZpIe8aqyW(3i_vm@O!p^K4|ywTBTVtYw2~sM+9JXdM8sL zKs152#5*TM(IL?)xh3R~0?SJOtQ?B=9x1ZmkiF=6+Ej@=gh?HY=@L|H@9T*YAoaHd z0}%s8?1xoF0igl|xN@P!p5?PTB6QW7Y@_&!QaMaA-!7!M(`_e0WmC zgq@HQ)xFzgcw6sLYCA=If58A7u-hJ1c;uVu=Q;w)({i|BLq>oM@ZvYyeQSjcZ%>(S zNI^yt54c_MBIZ^1d=dr%BDVR)p@aUs#hc&nUai0??}8{&n%PVQAAbAd-}9cmewSYp zCG7>U_Ax?8QYX@yS9DhSYJ#H)fu!@rQdg^#b~aBKs;V+Cyv%C4G8-yRiT&Xp-LCsusPM3)8{7!Awq(TZeFkf z0lLlA%V#3G1^@vV((+jq3NUy#T)GtRdRGA;ih9#nKC3_m26E$9Z_nX9ynj9MM#MTw zbvI}h1{8=XO;+9At-8i*^i6~YON7>t5GB?N7j!Ou^4vTrL)$GqZl63SW zvP6!e3T+tk;}b5kny&bNzAM*E{@+jjf3t!Kzuo_{bb&TZxM}9!q!OWhV%4zrxyWwD z&O-ao^#3EoW)VQiK0B!bL`DB9H=f3YF4Y;cgwfkvdtp22r2QfKi_!EKA#9RUSJU9% zvY)j24l~-H=pKTxTQ-SC^TcmW_V={BnPx>zQFX41>Y*b81IxHGMn*+StKzjzlu9}^ zkQGyy;}Fd>_Cu$0CQ&8H-|jWK?5fm_=7mqqKlu2paQ0blxbCV;PkmZ+)eUd}%V%}h zTygv>ng5md@Rs$|8$p-c&=|lWV8Db0>laqNx#*sZ&>%tpa+@nZ%;X+F!Bub&HJhfz zLuHHz;$4cwM)}hF`S*M?a?vH1@8?nV!Rw125M6NW(&5Iji_X9FX@`3Q4iE@uU6i_-T!;HDGC%M^AE-uY7Cayrd$r*tpxY)$Nwu+r&(sc&$y|Qn;SRY zZyzYtC;O87FV!hellD;~fF^%ayLSSlkM2#~JLQ%^k)kc)j-k^|k$>X%LRU2c7{s(0 zzcpGNCQB?<^Y)=$G3#7Qr)vDOI(PZkO|?8?DyggD^;XE{Nd)B-av0+M12ygZ#|x~5 z|382I*<%0z|IbQLce}1uy*^>pKO(exh(@wYE?)MvKYgZbdht*VG6e8|Px=142T87c z`exbj)1UO;{*a4~U2$FFXOvh4!MP#PO1x-C&teN*Pu4rGJ`w|1q)V8jEb22oW@ z8FG+F4pY+!tM~Uqdv)Zgd!ssHf-F~l>x451+)U*v=U$vf0adTObrBCDpV6Ffj- zr6S6gVEqFYHX+2OnjBrcKM5+CA7XRD%}%%t+<(t*~8N;%vHCkRVTITXCbVMwij4USL46@1@Zsj z1r_Ix6?4tdYPj>}we1?+GWLIi{-3!@7*nTws?3|C;&*PmDNMb^OYWvMs0u*F!XHex z44{VFB!D*_C7Lg0kfF77SbUl7`MlIATKTO6ZQ-}p6ii90<&87L8FId@<+FHZkw8 z>G|Oc5~Mv|U;G}00Gdev5X9rXmPu&Sy~q#tLjQmL-fPbmyX7?*3RLLUueo>PJ5(r; zZWx!eP71t6UiEb)adE>-Qy*i5e z{-Q>EG55$R+h;ckpA?i5OK?qTQ1)Oj78t0HdwGINj$tUf88D;#vXv1O=RQJwz=bZb zVY12cSQa7}&TU?*4RX-7M^%+ zdIppWPTNtR(8P#>9f#fRyqF04?%#F!+xhsUYhknV*(dzY#hCx0it+E;UtBse8pkY( zt@~g{r=>iH|mCY-_!+q3i&!me_5mdH%_kC zE;(cXa?Su2fr(k-w|vR=zbTmx&rykQsQY-j)z`a1w0lHk<%iarFY~vbPg=CZ;h=KG z#!#uQb=g$w63$wetJ`lZvt%wu4$7s;V(! z*Gvn}+JTA`W&*5;P|ljWkKJXAO(RqddwgC*^Y%S?t4DN4Y%{dAW;{(h*I8!+e)AN2 z=lWar2i8}=cVwc~*5`dhWf2TL?ZeJdv-~ANg-yBa*?t3E7W)7J<_o;TV_uPcVv;59h0BE8B?eKF+!ZFX69Jn zfw!*CwLSXtzdiats?68vd_FDs?2`V%o3XR-6V646FXYawy3n*P)y_fHL&~m+TyTE7 zu3MF^O-YOJpduYj$3Lku^Txo$$$h&XyGd})8FwbD*8Qp}y(lJOXivW5N%@#rxgr=P z&J=#niZe7ek{Pe@%1u3GxG)Iw3^QNydeoBxz29G0-ptCOBp# zKlVBP)++(PbgxO%UtiYZ=&5H#H+PHs0{7<5SYZNO{)RofK)sq+ofLa2d!5U2TA!l- z57f5rTwa-nfI+`ca!2E;0%sI40 z zNF!3GErKhzTFq$ct=%RL);HeI<{wgF`Fr30Q;T~QtXfd?E)f0OC+ zEXLaD;wM61*5c@C)n+-Js;WMqW)xYi{nNo{vU@ik9sm$0Z_6+P#4s{KOcFhDS?Yno_e%UOQW%4w#kQ5P}mo1~Za zG=!2);7Z1`|ArzZR-ao8`A?2@cCVhYsYLY$E2bJZyW_m55bZkM)-Sfo%+F_6_;)92 zI980_H`ZwJBPy(a@BZA2*Jm;2fo*ZjqS&$z(}HzXWYLMY<}c>sSMEOB54;CRl{4bg zvoRkgdu;D=Pq1s(dp<9Vc71c@`e;48Xjwqg9h>6Wr7oUbkClKQ<|KZ`SWYqzCrnGS zXC-kg=Swm*<_R3;H@X0LLT#smEspgkT%Q-58_qBwzK9Whe(hbk4DHs%^m^oewvIT@T9>QZ zrFp%0rDgACgY-g=ZnH>r@CSq1=5L7maC1Bg>~ASXOOhicIy72wVn) zflR?%q(&}z*gWQZ$DX#uP2|dX4XaMK;S^2jbk#dQshuxc=clvTG_qg#^ncU-IBZZH zKfC+evejQ~we@))Y_-$|D1J}H*+`7533Gc@vNw?KzbuDkCweR0p`dcdxh~< z7eH&D6LP~i5sz^jkC2Ck;aKmI58R68I2334yp8Al+G|p*|I{KaYwOSW z6U(m4^2WR1*F*k)#bk=}C3gLmAC@}GWsm+H=s(C=hENaF`5as94_(rWxuhqkm-+t> z+-XgV7cB>FpK^_nVgil+l>iwgq?h=i*DuWh+*L#8ky@J+5}(a^cl9)#o7BCkxieV> z;%geG5L6*4M@qrDD)dVha?YZ@6+{^Y2ArH96``}K^HW}z;Ym|0)N%U*pQJ-ktxAa) zH_b~2S4Cr<7EA6qycGYfvUZ*B8o?dgDK+;ylU%>>I%|m@Rg5ome}2#YRMQ**tMg}D z0{6f6+S+$wm9^nwSFigX!Sa`4c$;$n4K((p42wf+h51KsnDS|7Gm&9=I1dI+554PG z=laINkwYFioBt=qZi;6Ud7tLJ6m8uJ_{E&$jxY+UippzN;&rQ58c&%;pRcU?)pg<0 zfFVen6S3en1e2pjYM|2$sKK_}h1?5cy$?FmXUB7e(_Viaupy`oX_g31u>siplQzO=?CZ9?_O&Lkf>?g%clh~JatLGa=9A+S_7O` zh`gT^jw|m!@QwL%K8%no3&0aL*WQf>=-ln*^>SyjzTTC4;E|Zi_Dj~|sQWnnCqaLR zh1;e0pKe|iisX%|qZJi1%0laUBmS?IHBi-R)@F&y2Th6rMUE>1)K2HfV5|?)D0{3J z9sTjmx$)n$zdiaBwnaZnBbi3;;c;x;M`AKJ&16U!jNRY)rcrR`+oVHHo*45yIkcV; z+Gl5G)SdNxXO>rpVy`OC0?OxYs@xgwd|v1B)>29;z{9XvWzPZPW?c(K^S+b;2!OL+ zwNvsiCuuy+If-Q@z#9*4Ts$k;^C)v;@#?j_k+r_)~${nreDJX`w8B|Tm8jkoKMYW!AbM~wNjB2^NvRq`eD&-X42$-T9X z+}yHrlYF&<+NC*fzRhI)BK`|W{{@R)j{lpkbTR(l{p5@Jh-YQf7FE#_*>3BN_+L&A zU8>V<=z?tCj)fafXMkpBfNI6)XLI+8Q57E-ziff|+>5c4W3)1dGo}HOI5*ZN&A@@pf6Eg*DC+Hj0OxRaN$GiY~6^(8VIA<~2>r zYns9*3#)#&l%z^tmIIjXIVzjCV7Oc@3ZSWtM$JiDf>Ta13b@9|o|C{qVPuwGswshW3#Fq0qYTo5Qig3aKVr0jNFlj+1L;R5Q?AQhr7h>Gm6osq~v_xhWUaX z+O8RC9i09H*5rA?XvvzaaYGG62+Uirj&I zUA%jnJ#|TcewiBot5kFyxcAN`-dTx;&^|y7T6nOxCaC|Mm;k z8}YyPiWlQQ8tcCiM~ow}_Wq@ifYci6R{Or*i2qidtqxsQ%@$+7jJ0O8vzY|l6QX&= zSQx!xOv~Ba5TOFRh3omd_Gi=9J;s`U)@J@$!n07}QmwW=@1rW8XD)ShOEsg$=fb0q z>1}#VZm|zJ<&s+56j@RnS#r)xHtR|xQ(O0)sV_HcyzXKx#66MGj7AtBZfP4=7;xh4P)szM!(B~Ly1%QzDV6PKj013 zzsDDtA7Z$#gQF)ZH=&1d_=$3f+wh$WRBbNqG31j{xu|M7ev?`9)0a7~f9&p|OL~DA zwjWT$&`i|p?1JO8>W)2mYfAYO7ik_~+T6~KIjeKGAV1-}`8fXnj`c5%|10aC6QwPS z`9`D~YHzufCT+eE|GhdpIdrkc*2-Inem)lw$rAs$il7wzr)-W8pcP}}%_>G-&gMZ8 zJJMUM-oI^sj<(hqt0)Zj&rYRDP%kVwDP?PAZ5r9lA{g3CqBE%LR+S)0iblZupKE1a zivOf}31FjSc}ZDzmQ`6qWUEx$KUc41kMkN`n^e>G-YRJp(5h5$E%L-epIO#9fM)=T zMXG;3MHj{Mx$nwy5;B*ODX72mtXRczl2W;5U99^o`rpB`l3ubtLHA@eZ?U*%08jf8 zb?Lfp+9x6FCPhP#I49zS+X%|R_K5?sb)*c#vEUhs-DSN`Ql^h(0hR;M&PRPw_5b%> z6pF@>3G~@H{YUu_KXqZqd$#l~m-H)_*VzxUqp{c3Kd8R-7hjL!|Ls?r@|5it%m*fAZ>da2C&Vi+blFbFGS_JJyN-12jcBr|OB37}oRLKH%HjDP! zLF2`YnI@&TRK5PT{b863+gcq>)GwnIQXg|xx2$N5wF#F%K$FMe^6%VhC*b~U#!M%<{&P*uU1E`>SxmSKEKZVr>?zYQKZ;Dy8R>z zlv09fkd`!W8Nda1*4w0HxVM^QFb()nxNM%2)Y|IDg?rB9&#g++-QYPZS-izd+7g?7 zM#TEGFX6cBy=qTj-e*N8NyPbpzsQc;h=x2|CJqFKXV@IW!Fm_Ne;n=;8C5x+H49+l zbZj@*zZWuq#Ygm|g{vdR8{VA%zy5XCUT1GWrv*PzSO3sO>QN%*QF7L{sNdh|8viv? zW|m*Hly&#x@!!t&yT(_>+|9+SRH|L0#jH@J(M$240Z!G~>d+NSw@EQt-xUpqRqgk! z+<2Hngs6W7FBN059(RdbbvYF&mXQo!_pGGbPgj3} z)zs_7{Ma&e?@N5G$kLp5y;tq+fJ6w6AV~{;q;h63^;3wP+s-|tia!qgcz#VyqwbN^-Qq`LDX@!!w( zyT&&I&(b8yR%?w?HCk|mI$ntX+2+OP>TGrBVgc<}19uiqjLO3rA19&y|Kz~9Gs+5R z{~IK`Q&u$(NLgIH2;?H(>2KWMC$)9OU}k;#p>mBftV3N&(#RTgsfU*JDl`W$XOCE* zbOEb@NjA@BvPBOrav}bAD5?r6k>W^f(SPha)68PlruWbK#Bu>cMP^PMIhwY&aOX{N z2vg@6TV=~HlZ1N)U`piCFvnUAf6Uo#zAfrq$EAh5Vy=Kn~UN4qBEuUtdDm{_C!rze!S#D3^i()Lzh>|8;fJ-bEXU#a!5S~{U_4@+7*K@I*r$A*8H+NhuqxPb5g>F0ObO1 z>~GxP-OW7OCo%Pt04X}XCfOV_*SKh8B_@ro#T>PpTqq zQIkx4f=Tr=YTB$XAvlq~_za_CB>Aqpu05D+_pS?aW6E4`8@0sq#9`Oq^o|sjs&45Y zSF^jU_bG;95P?Jcd~#m(5q-MK$q}QYAo-cSh5GcZJYIA__Mfq9 zqEP{$LA>z3e}&V;g|#>itK3oeZz@v8oA0J8H_^!#dyR06X>rC*%5tmU^5wqmq5(kO zl_yWL|E_g)c=?n0xr-Km6Fzv9l*MBu5mNX8royiO-*@%JxFz~s>+HJo1Mz>yDv7cF z)57}KdcT5jQQn&b8C5RF|6NJA?(^bPbq0!}3ngo8Rlb^Y=W|NCGOT(;rIby%l8pZ* zii6uEYL%UNn73z5AuCkLxKQxw%3C*Z^GlEwtmZ&*s8@n~|>@0e7qwLxXe zHn@cSi8-o`Q%~(!wAJx;~vkfFphmvqS3$H zc2&0;rRzOe`!~#}zjw~XpBt<8U-zselQiIET|vwG5-kRbSTHo86ul$+p}>Cqsr|)O<(3yD@ilbtTol zC*;TOUsruZpRTkzVi=oob2aP==_R!`{fwR2A3t%|k}4;4%=$j{@cOm0+6 z)e;3{)Os=g-<5>B&5IA!nUJ#1nse2=d%}zq4*K-d)!XkJ_*T%WY}AN`xo6Obk*Ht5 zjeTc-RoPWp&qnpH__6&Z02s^cpYq1tKZ&HZKl9|6hhw~2s=9Wq8)FF;*r(qXSEY7~ z{*k+J6HtGrracVGF@xqOiNy4O$~mUl)NH2W%+R2DNo(NMyWijVk1=5!af?%zJtyPl z*Sv8lq15|Mb!IV2V9G5+N*Zg^;z{tQnU(mYr0#ux@0JjEPTIrI_It-veMQ%H+-LMn zBdzr{v};oI$<;iyF99)`k5>J}10X$Jm~hG9sD#ojqqyS>vv%w^Lm%*tiCiWQGuO0v z?OzLNRx)a+tbK_lVv0(B55tCLop%()e*l-J!nvdwyrHbt*y>>mb z-KnKP3jHEJM}S}`1A-qa`(Xqc#5#|ePdORkVFzibYH`+>0}oaB7&l}XFL?%V=vvcu z_uVw*Cif6~=s~$;O>@<8d{yQ4Q2P&Ht*obchRU+EuEv4+-=zHWSp`9LSB&LSOt({F zU)3$#p-T=*h4W2a#G5;ECnA2@(fZpK6Jfu*Gk-h&FIc7JY>xuk1FbS8mdcY$NdhnQ z|6NIVnHK|3tAnr<-nitM#UcfmzAdNvNuR##aU_AoSWyS^t*}Md#*;z$;~b~s#!eXR zpV(jAV$%t5)wi^&f5k9ncKi1J80a|r=cE|SUQ=x{h3rn<_C#^S8OOd7Eh<6D{`Rf* z78~p52tLWSKb^pO7&)-Z`X^0D~9~Vfz_a*EzWS!%1XrDj9rTQlhJWN3=)mgK#9eQC?Lw59m z@iTnlu)F4auC-4}l6DS;W(l?A!#!9L4AF7~)F(L$Fz0UA1+rb|&)CIlKB7;jlkV|o zPa0g=$n}UW`n0dg{-VnMQzC?4D z3#)oZa&?Qw_s|HXrna7x=cFSaTcwKu64Wm9VJ&X0Cp^QupuKF(CIb9yj3`V0$e#HeXA z+}MNu?ECxk^KGWCY`&~$fx;D*4V8IT6Uk!@Da>eF_GDj z8&t&l`)vJ&u{*XFD4U`g+4?M?h|T%w9<$(n56#_^<_Vp*W!HlU*>`=u=&6tBv(-+H z7~Oh6-BbygaCdmR&;=+EO^*y>OO)j7U6XneoyQ>IMc>MY9i+Q!@#+38Nut;y5MOlR zgVlw~zVYU}Y5Gt3a;HMjuHXQ8IUh1iDFpQ*ocNT}@^>xuJIoMv zMCv!=e+&ca39GdE*e9cUqK$mwB%_4$o%d;{VtX2+*x_jH9{Btt+KvB)h3XQhV~srJ4+Gj z=@byiT50!KG}5*`((2u}Ix9)>c*TlbpNspT)-PDF?9~ts_vWisw|7QmD3Z)tYFE5T z*H|lQCNxiiaPTC^_KiQztg7-=qy_IIXt%_41*e~=#j+8ic=sQRs2y+AJ=Oax!TSVAiArrGnk~=bTy4g(f?KLIUr{q##-DY>(A{@57V9v zFBr+eN!fyYxChuhrv7~LiBZp+@48_3XL-KTQy~w$oKB9LyQ)+3PGN_uOacu_zC*#m+&G&;tm^3~A37|jG+T5Vr%vbceST+unGDgV zOYvizy74coJ-Lx`#>3BvGO**z`k@Ot|Tpz?$Fp zm=mOSn$0Vdy`rKvqD>EqMb)ln%D_p1K(Vz&HHtBmQ%snSvg5s@Z85D`?|;R|CDY1{ zIL)hTs;+l)1=5V|<{W6K%dw*zt>0huUGTWS_>aIkFKq0P+ zw?I$ba^Ix+VktqRz1;TC)!yV(o8u!zzn{_OI6ZZDg>0%?1(pGnk6r6GkM-S&{{H8O zm2y6wBX6jqr4n7yK>4z!Y=pP|i#t5kr+U~EDzbKXMv@%!cFsl=(~(lX^@yHge(ZYK zL5g<%tSja%$0Ttm;*)g-^~XuORsP~GRCTXu4VzQ)a1XJ^9+Y7C)Vx12^W|oB#^k$~ z*hNPtuxCj6o}{#8&h?PtNY09B6`F*Y-|VQrezBwQN(@o#JZH^!S-Ci_Zm~LaSywPd ze(F>9KXtto|M&h^Ik5iGS^uq)h)1od@jq5*`Dy$=&5M_rLeg3I#;DO%H2QOzrnK9X zKVQrEq)*=p7v$m0sE-J`EvGaKd8TsjbfPjOy~2KDf0DD-rrB0x&MnOZT1RCHRQ$>5 z&-nt5nP1(XMvqFY6YY_!^^S*P|BC(j)xrH59Xpy#BXMw1Cm$yJP{BjQ6^yDf`%s5T6 z2U0u4?;t~?T-6Rhw$qoiTQWRO-Rsnl`u-{T%xe17YM*@96kJumVRn91{aBurBxSs1 z(||16mmrPaxkBxVdxkLLAM-8 ze=n|Bhrf^2@RgEc0>1~Q=x1ori9xPm*HtK@e=DUND~%h!<6`_zg7OrUq)QGSkInS5 zCRf8=qECj1`UO4gJsVDz4Hx}h=feU{-XprR8?Rlb4wB_+=le%h#hBV}F3>#wKUSj5 zhGe_cmS zgaZ8{#^HMxg>I^yY_pe^NmWjTXNjd8)Ga{3qJZ$msAoc_P0s|mb!7g_bfaR(dhcl} zQNBXIX<2_e{LD37yC>hm#Od6*t?My{Y9q>;lPh> zBC5zHrX5dZ)0t;A9yZ6}r?j~g>{Y1uXURI9-k*Jae;)t4o^No9|C5ToSF&g&>(5z~ z4X^Icqgv9OqTMl<`YDR_akJH)1O*tw!ph%r^ zr*Bw3;Uuf6cn>a?J(Px3?)?Kpz89MAs@F_krH35GqKjT((;OhWme87&loo2%9t?5z z=jS>AC+(&h+4fa$Q?uGE|I!JJc1g0LHYlQ^4>pSx_i0FxP{>p_q_*XKEII|WKlzKi9q*KB>wyw|jb@W@3@zSv8Ib00BO zoeDONFXpiKPFxk*{2ZQQD5GhKvdwcUv+m)(?0b=deJ=)ti_h;nS5@Y9)Bc_8vlsL0 zh=zkLcXbQIaXGZBeDZ3JjpVCF| zU#vfCozA7g*6Zc{^(Fp`%v1bdy3hXPinAp^&uDyYe}DKCL1HO(+9h-8Mc3nR_bBSP zzhnrw%&nkKbX2+7r@>yqS`Jb}@!0=$_di=rtZ03!{`L1YW}HqH6iduuex;9R&bU#( zefmAPKSPcEgA0d+x5n6D0}Sb*LUOd(e^#{$t+VZ8skG5l{#h zz2=a4@$4+6t8vC|L+QRv@oDFZ!fa&x>g;TxU01qI$BD!Uf48c{i@#!V@7Ed z)aV-1-u?CZJ$laW(d|AHd~tvBH2!<{*=yHnF+S;xILH3l{){_z_ofg>{|AlS^)&se zhCob9y-EU#-bjvs3y$cFQf+^y4nWvWdFsRNzp^CQD&p2sZC3qjP3sY{VNfn{`t$i~ z-KV;ApW32eof)H3$Dko{Jm$jFQphs}!>NxGlBn5Alyo`%|4!W~^J(4@B!-lZrh@3pG@`0jGxWax zpR@k)0qg%G+L6yHhn-|{DgFzj#|$WAuQly{wv&!bmd)7OxI36Iu>#vT*-S{)Pwvbp zo9osT7e2aG*nZYI&;Da$FYfPI{qLAbukXhJx299)*Y*eK)8qY9EcPijt^b+p5fO)B zsmvkw+vNY_9g^wXuWo-kSA5(7_=A#0S!%FkF}heie6PXKYA{vCz2uLpr@Ns~#x1wV zlX;E(DMVRyYfoo)i)>YPwTZ-WPp%(e%J=vbGsO^mCbsioGNW@a<{pJTw;*RGP$(Y% zNfGO^s5j+`${?s#zjLaJX;8$vq9MTW;+tnQ`*|pp%yqLE{xdD;O~7Kxx}rQLra-c2 z4rfQ-<%}!tbkA5`j{huOV^aHa^)kvdHzlz;u9~}p>`F|ohh2Rx(-4%qPha>bAdSd| z@~lfg0-V!IiC@A1p0R&u-)qG^d9LNz_R^`NN3mw@!^N@aHFtFovzpd)xQaV>KJuWH znyr5lWLWP+^h}KAB_@Vt6$(#P@V<=ywO08L#sAOPU7K0D4rq7%s#)6ZwQ4RU?PC1@ zjk-~!IYmR%eeX=^8NpPde9=aeDkYq%0fd3yjQ<@A5p5o!R;&{Wdo+ZUUWosvH_Ok! zD75mB?0sHzWSn)M^QI9X=cNCy^E1aZ51Y|zh3$ES&)>bm#>GFzW}PqXk7)aI{68W8 znj}S9wWaS|XhwWxe*iF@eKm9QTD#h(czd;&R5wv0rw11Jk50Fd`8=RGq zX%IPg{}FpFtawUi#Bc+jsH_;kiF5%2_z3&wJdNd(vMwXZ%GLR!FQy`zOs_c<7BJ7w zQv1Ob+vfeY=Az(OW!6xO>sL1IiE;t1#(-+tX(Ot4Z;W3N|IGo>s+_fZ>ix;OY2~kO zpza`6S-9@VNgfvv8NX3CicB>k;~;V^q#Ea0fiw2lGz(zE9*ux+#Q%!X@zd?_85H9> zCp$wW9T775HPfvz%=+A~2 zt#7B5-z)p0@htv(WcS$WY>9r?t)c$P{{F$;l^{8e8^JH3P`K(jILQA$!Lh|u38bil znzg6fM0hvCJEKNZB+6A|Zi*GR zZ&17J;7Qt^Sl>aS{GszbO?sFqdcAkirVF9gsfs_`y=R>X^sB4QlRrJpX+mdfFI>+x;uQRa{cZ7(!FW#A1(uVVq%lqPV#mGA)z>&N@^c)AdNN2o zRyW2&cv>e}{Z(xGpK71F|9VbprQRlSVS**~Qtd zb+S!vadwl>G~D`ek8eXK2}j)9i2hE|D!u~okPml{U7DXR%ld4BGj}Es`Ai#M`+fgh z-oDZMcb^*HxdZ4dC9a&$mz^Lfy0Du1Zr^Fh6t`aO|JN~LP~!PgKcxbXN6tBS(<5AK zKm{zOhh1lV$J0(Wxq;|vbNY!ByT<_b0|u}@U#Hl=29{+#VE=-3$nr^C>y(Uvv%@os zlYnV|t^S!SHZrCFwVRfQ=1oP>&>5YBR(bN)Dw_rldRvx#{@D1>imja;5W}vcgYIc{ zwdpqs{WZ)xLh^|;@=@}e0^nOj#_!XOx_i+GvUk(Mg$m+*rNoL(Ph5fIt=Hqf&Ry-4 zvJSSf{*61GLcbLMD`g*ardwk+WOmsjb#}AlAj?jhPNLf)z&|Uv5H*ME;2>trpHuPH z3on*UY$rqBvz`5VV`zQ8KkiI#>i>P;MBmQ|oee&cR_N`*{wigt$JLk&nV2ixqlcl| znB|Uu19~~gg2{g~t$~O?f&N1c7p9x9_-vXjv_w8Aq2CcH8DTyVVV zTJU629*Rc~&F$2mG-8G?E^bhiuj)U&T;cy6;=haKbV;n{@t739H$g@~IVE~6=0Le$HlwPk(*gyZ&Yo-v>f+^e{&rEunChK}Ux?;=TgVGcnIcIgD zjGK?QIYyF*dXiC=k5%ygcKlD~fVj*Kh&ElDJ1-e7Vzd6*VqU8Z<>VAYSodev|AlUp zdC_RJYo>)1pb~XoJ`KgYG*xVhR9wFt|23nYeN#{y=DV7kai_2J|L1;Pj|ov{v7RaT zTzcOUc=4hfGL4C-oHH+51b~Jn0iz&V69LnlR+}YkU5toGT?}O%fk&5(q4oLxIP<&t ze~)SEn^aj2EO_W?`pW6T{*JtMdpop-D8_1AxBj204~$&#=aQnLR`UrcVbQ%#y#4uv zdxHrBR`L)Db<%FnLH#2|uH;tAv~DPPzrgXNO|ie(uI3ERA%kP%{>i>hHgtn32VOeU z%AvzBPr<3?qY{H(Z4T+(0{@&fv`57H6#44pkJ#Zw)I&$l>#iJ}RAYJW{>n5Z!SX$EKpeptx>hSsWbfVdW*PcxK6H4kW;iEFD9U?{H$=v-*Np-WYVxA#iryvF z!X+r-+ImDlei8p~5im}j<5K-i&292IkxTJE8-p!wvr{10#7;~O*7>=0@@5_nD(ARG z0MEWCLlMfe`d-Y6q8hypZ0jse<8(eUv_9P*ugq`aKWks9pcaX;9Jqr??{ZR>D_z*% zc_b2yos;@M*pLSt?2Uo(~+&*dafXf~f zWJ$Ge?HinVn>fFOSL;6zYEiE4Si_o|z5goK#?b!2k?TGoj5H|2<6;;4Kk!J%jpsP2 zrz72duaB^QGk&;F9Drg7!_v4Wk!L6HX@&{)N5z4uQ=(OaAv<#c%F1+!x`M7b{wJGr z*FRX6F`J%J`lI+?*&i00$KwbbN?2mtc|3Y}Jc=TIW)yFnwG_`Ws88#4K41XHXX^s? z&z|ZxZrzhtQ=^&@{e2eri1!#~S8Vg{q~M_fSrw}uOgYf2Hrfg|hqb1MCmj9d9~A$i zW%S7$5dGwUn4`oNqs=$(>RNH%2L?h$Jv+32;Mpl+HhUu3SVq5EH)@Y?;YkafF#V~U z3Swpbbop1}|FUEK*PCxjm7VuG)Z8w`|GoQ}eZROT&`jBVq9WT(Rb8uZpvYF&fQqcl z8`2U_PTo0+hFgc-rmb?`pZ#=yTzr2K|Hp0JSoO26J|>2Zy%$yKUVOcxwp~5>vQ8c(z$5l3)5In_OpnSZpVE=}rH<4hT!fB3UZjYL;!{@weOxs+siNoeW z$pH$EjhDdi@ebySCg$eQYyR=^zibmd_-PdMgT~GQF=^JDr@Y!9?tRl9D}{zr9^OZu zz1Qwwa_cSn|61LsQ-+K6kQnICyCPJP@^8fdo$^93*8iyVSjS$B|DD7~)QjbgoW`f- z?L7}|_ujFTl4q|sOpz;Ck;RiSEn66OOfxdW%5=cX7xZUiEE7tieY!smzC4ZplB+E+ zCaoV_ZhpogY#D&M^TZ4L0}}M$$XJTk_;If&I9D(wi#gxmOx?FE0{eQUL_YUBZl;DwMQw{APhKVJg(VGucKA!E_+5WumvFkW@jsFS0 zDfgLh@T+z6(yVY<8SiseMwgU)bABmK8T1R*$Yc7MII{}>$%6MpyjLavLi{I^d6}D1 z_WkC8XC9AW${11;zEKA)#o*)&9sO8y;gi}9dy_7$_viO3>|fkR0{i{E{(d*lPcgjy z2;tz0ow16Kz`qb@u)iBz(esqy*B>7Ly>ct6A$phKfd|RvfVerlM|D7yk_=Z9>|9(@ zPtn{h%{N-_TcK6iD|J38ex+{I#AbTrL%_d#)F1CFq!?~jAJ1e zf81cfi;_W?`(1Y8@RZ~m!+oA5eY!ut z_>=j6bzA3lT8e4HUF%S-O>t3NX}GD*UD_XNZm9ZV`fP~eTnTt0S7KgrOzZSy7g_h- z1B#>c_gd7>&02%vJW6hFBEmw=XY|@@%ElqcjSqTuhIIY1{{Q$oo@mo--c_F8Y!38qiVdR12!l2&sI zTeK7s_x&p60}p_2;(u`6*4^W=nFsz7^3>OiLg#?d*R#OPezdl{;Fe1)f~739i_cD*nBA=V?RAaoBPIc%!FV)c)b|->ZUM zSAHLxm-g1ji24?A&bj6Rm8hW6U#s%zJQ=x}Z*)HTMuWXliRP2)SL#M>SAL2YO3>T( zs)XcGADlXQT#NtcM$gI%LD5{t=rQoZk# z{=*!Z{Ne|ku-h3v?R-A_+5UKC@6$>AFV)E+d|#;NNNYJMAuqY4B^6`<(5=0+KXjOA zvFYi`atN0(7H2&wQ-VBXq^rXiBz**xz-8MMQaQwmHGM7d1+zsk3 zWm1Cu=PJ4~R*_b@j#iq-pB!JW_(8V!ZT!!N>MOYlH8b{wBdQgD0q_@+n_F8N;rI1#d`m%V+!Jh3RSh=Z6(G ztuCm0_*}OPz%$&#u}2qb!vK!lFR!uveqUh!Yz}->iQb%|#o;vdQ0stR|Ky6@i6|<{x$jm% z=0sc6{w49hTJ$f$g%TYYjXhH?a6laDJy=Ebsb6G8^rzRfxD#s3o&S#X`03Jo|Q59H75Gp5HLmj(vr`q}OHH(y{hqvUzdBp#d2H?_h}eF;ZloS zU*dP?clZeVchq@Gh7e)sJlvf=>rD&P{Q9zXG)PZ0QujtVS(WoIivL1>ivCrd&q<&7 zl$Xf?aco(w`5nd@bj6x9UrlgFYS2n9C%(}OC-eX&2EebX}zjnj#qSEz>2ogt-fti1-;R9X)R#&K7V7=4tZJK`bGSg zhsDI?G!M{I*j$MY>OIPkv)S95KCJdsEaF;EWJTr^`D$PPfs+B|Bt<#uke4*Tn}R-n>HWM z&7-1cqQwUx8e8V%QQ@;5F2(;fN^(2B z*fKf7rP!@o6~2i7AK~lwXR7_4M?D;YKD>C=7+T?p7=xRY%rD{VKiZ#PJb$A9qnKt& ztYuzz2YCdF_U2yaj|1X|kIU|+JoWy57 zOsVln-V=@gcTn`SoOMwZrVRa)0li*j+Z{4?!7roFJ3^kj7Vur$ZfWr5Y0Z3e-c-lhW zR9>TtK02tO6)4!+S1?wM@(4D%cP6}nM&JL

`OLdw9WaW&+yylW!Y7=sHgb+%Q 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 z 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⩔ldq_L%hEszY0(oFEdY8SkIvr4-oV>j~Yfs)~! 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ˉNLIj%t}apQiMuvz9yj`Y1zyc<}^kVHUev*^`|(G5Km4TK57{=J@xEa9n+OIM%YB-cRQv+=c-$73 z-R_{#muO^i6h|r3Rn)~7#Xf?88;o5p@ObQTwYXk)5y_S78tDSYT`uHMEO7Bz6erUG zjhCDOWv49LLWEnnjb(Ps8r*#3o-Y`uQ`8a7&G@0c+NDj8RLUT;#F$mqI)Jf-kyXd> zi=oSsy(2-l+o#B;kWAv{yky>}yvcbanYTEPTbqYbURU@P93>I2;%$Ire1-Ut43ouF zS^|tW!!bgrX{2i!z)rhNsrKgwPIt`8pjEa%QE(r2TI|(o(lTdA6Fn(XjokJ65s^7U zV7)WH20JUh)y@jsFP%dLXN9++V-6Mbo3OwCMnAK6r*o*>EQjh|$f0rwhBI5Y<*2U( zP1JoYkLtb_zaJh7T7$Wk%qh=wVci}dmaO1Sp!OhSH9;(~y*=KQ+2_2APzBhGnEs0@ z4T)4B!cG-&rtpH%t?mYOS5v}iIu&BI@+ZEt4usf8Ejl|{VUY+aLP#kG33satV;s%T zFP+p>oX z*N4wu^u%A))@48b@rKVw;%a=Odik(%7;a}851G1P&}lUA^MU%%!w)?KEkr-037)47 zS};|8OFh0zJ-&AQSqLKuA^t^%#|6169!_#P?KZ2`ZgO#g-v?XR1pCk`i58|W=#3gX zYRIgHB4MKqA+QJPk!Zbl5r13ty481FcEfJgir5TDS*@31lp7aTx zO{Kd=Pp?a#Ww3zQ8K&U!W?ZVigWa#b`TlciPxUSQ*{{cEFaH}wo3hS*S0@C zK=!mAe(l^Tbd5g=@x3Ih@i^pQ4JGk7a$9JsJf919KjdTOB9fOt0aqXy7!_Ctz@&!* zM+0U%p;=fy$iniNXaSei#Cu{S22!phm=Mf*7cj#-y#qTqo^c1yduCJC(3qb`LvPU2 zmt!8k$fAM?_meFzDfm2GhM!!!xBBpgBmYvkd8z9?m^*^=*KWB${or+|OWWpo5dwd= z;wn5s-QIiQqSmi&KL)iH`NN-qw(7VpbsfV|06l&#KLYr^IeE4<2%Iynb7d3^!aj@z zW(5{AW(CUqWcK4h_=U;Bcn3W{;xjoYD8*&AMYh*%yp^VPxTqK!(qfR1(m@Qsd^<^8 zo~~cfj{}1o`r=Mi8_hsi(fp|N^E;g@I1hgKlk*X{smgvh-d@GQ=od8yAugR83TLVp zC6h6e$Pu^I>ar2hMtq6|yC8$g4smS46R?wMVxe9#Lh0^kWZ?vXJx#v?;=aj=NgNPp zxiOEwafs{pKG*G;!~6FD)LP9t{NVMG2A1h4U^X0t7q?+b>kkqYuD+U zHsV?8I{FFj-vfBPI+L9#EeM(NS?*K>JOrg?6Y+SE1T~j7TflCzyAU7Eaav^p$4bB} z5F!vvTz0dTpH~gD45YAWZbwXeCkqpkP8jTAoR$^@vS;EFU05Kv_tn=4Zj%|TuVK(3RE z;so5F1vqZOabDrP%@YpoIB?f<6PmFVTh&2)YicR(pPEaA%G9r~Ht%?RqL5m{T_H?- z^zPS>J&t<>yt~(mrS~jY*?0FN@2fA7 z_tY0Q-Zxy`q>g-N;JTa7;ME4aXTU9M2M$y}@^WJ8xO3W}J>(MT6U)&W4bv|$2RU%^ zO-t6>L~G1s0@=rTUXBQXK#=6X84;ANP%q+fMM)IkHB5vcL4dLfy6A(lExqX5&qsS+ zI?Rf`0pguaPJP@BbMs^i_X(X2b%0@xcB*U14mv%s36{Y`EbDBNN*APV;#7Q$?c)`& z#sDS@xXVW~lHEmz!=7g{L3A#`^WIz`6bjQz4u!pTC?8Se7y<0Le2u{bbuMEm>~$dJ ze`L^Y;4lZc%AP!65+-g%Gk1F1e6`JC_ulIJ!b?`A zBm6ZpPqgjVF@GAeNI~C&!ufP>0}1EgbUw8cPIgvR%Yb$P0|J5`94oJd$NKVQk1@x( z{;As@+p>K^ba1!P<)^zNPQ@|)kIgjYy6ah2uDav48NGJ&oOZ!E<>$`WbY^ti^o9Lb z{AtXVJ2y;k?3chBGP&3{?hN74>c02-cOTw2M~c1>d2+RunmysViM{eY?pRI9^l&_K z-G##=d69MV8fW&EoW6p-O`6{`2KLJ`;U2K$*CmIY(cfI%sQ=KRy+$<+O$38EMahuA$m=aCas%R_bSly7 zg6|;uw9wOPgP+NaYagrcb`s$$O!~NU>Bj~yU%6~rk4!v2|H%IKf}b#J1r6_?b??Ko zMwV{sIq|F!1aY%(D~q}GM814E}QhofDatn_)> zp*I$Qixd%7)L`h0g=k}}7cba!#l)JGEi1c@nlb9}?hiiQqWT?a@87JJ$9a z29Yyb_rJ0Szo_>5S^bMTR>Ra2OmMygC|$A}t}dUA7X%w5NrwEqTS7j&k73K&jM%b9 zy0S54bqXd@JK3traUl8x{4{TyQ>+x`8 zML|>y_=cr<4iPS6B%+eikOF5q_>Huju>4RyF`J>!iP=S5)Diz*SnkkRBhSQw2pY=; z)%BWXLP5$nK6?E7zx_xt_)>ER^bu}abK5G*kZ!e&BhJKy{rcFhUwh+fci(>1BZrRE zUG#D6X2^VBCtiEzfyZO12tR zBUsCW*W(6yzC#W6`TJpPuD(s2QZ^Yw`a8Im+6YcCZCJUWSb1f-xnmbT%fWSJZpjdexY?i{4h}9Q@wV z{meg~esIkd4X2H%=pKf zj7*lwVqQFMNBIQ>u`m*alF~#hKad}n0^r;age?-qJtWGc3>Jz0$r5ooZeb&2q%lVo zYhKiTSg)PH{Cf51zgyKWa9CAw=)m5)cJ6&_`_5*(_RQ+Sie2Zs)r$|}YMgsOojvX# z_q=+)ItMSqjd(O(!17i_Tn-7ZKLe)e3%IQHF53;_uVs8)>q>Iv-%f&isdISGFvCiy`X^@mw>$3?&mNqi?~)7WDsMj2}#jLKq? zT=?7}bwSHZFYnuP!4+3tGG*qRDR^L-!OIWgVyqlc7mj*H+X-AX_T!-Xllt-JufF>E z2k*X>^0(vb^XI89*X_hAaklUioV8s6fv~W^UYr0;K(fDA5uu1)d3L_KDw5~Qo77a6 zTkHcknTlddF%(Edvmp_l~fYDv_hNWLzGmcmh#W0!&Bb`7-Pr%X!? zxnASUCxatS=eUrocj*kXjt6Om%Z|S8J*&3nEbrUzfBuU1teTnz@8Qp${6QYut!}hu z{_HE~d&bnkcmLpWe#SY$^7{HNe)X&0eo{XTbg8c^Q*iz->hi8#d-tq}y#2@%Z-pv) z_9(BX>vZ~w?<_f{Bd7`uK%;2#QVfQY?w!Eq{*vl<3eSN9${a@5e?qk4~0 z`t|ERxv8HLnbf54PMB<`#|pD-^$Zw@h8*T5_P(s)XQ3d z^-T>&zV4Rg7#=eSMmzcwZP#4^)1VUF02M+QJYw}(IEgQXB>N-k-?!eO{`j`~@}2ln zoE*J+_|X0r*ZuVb!p<)ieRF5zcVBb~8p28)JUzorR3*r^gK#Fb?;_JoV-J zV|ZU(_kI;KX6@Kpn(R?U&M)m<+w=TEH?bNI8rKu&h#OG>?4>iHZ|lG+)TOehf>c!c zd2_FjY?cQOsOklXZK$iOD<_ezy~@gZbtQfIzV#3p?)yVu&O-Wvw^xFrQu5irRC!NH)h5F>s~@>}9$85+ zU~;mq$2_K$Bp5EKS2ekx4BObaoB^A6zxuiQ5}t{ZI=sUzU#rKl^nGy`bu8Wz#n<3^ zJO(dg_zvppP${9RuR2mKNW;bfyXS3w7|>Le3>hgJMJaM&ZwBDoNRk248yR7FSuq*@ z`)hAv^!42zMjm%wamnU2n>Y5UfKcf+xI$a80|y!G?lW(`@xGjTPRnCG3bCUP5HOwu zXPn6_yLk|(*~)uiC1EVtMbN}0o5^iLm6dYa5!lJCW-1^8d?q{v^#c2>A*8iL-8KSW zSfc)6@tv#HyG!uI;p&|w_`HSNZX`EvI#>O6(x%C39scQ@P3L0e+|85lGpa&mqyCAX zk0%RXA_X~`&BWuRRduh@Wlnwb411V?&&M@TOFVf0BfpY)UA65XYPNPgd*fkETwPuK^upOwr(9Ay zzVy6-7hKH03>T+=@Y<0Q$Dzdnstmo-qY|zNCE=w_IQ!u9 zn?}q@in5*xz2H_EiKZs& z1_I(^-~O?|gA0aNOV)aOZLPaUv4G0GL9VpaR5`T&@cJI*!OF^Dd5`+x{fC;vr}g%Q zDF`n;qAKatjoir@7c@ouhVL{S8a`=E`f4Qq%RFI>Dt!|4Me6{`^zP7kgsV z7XB0cn^c6oXD$1x{@MtCIB-UHc*ew@nL*#PulDxzomPyis-Povo1xXesZ)gaOf(lY zj3y?l6t5S%ISvOyAv5?Et+ZwznmCy$%%nd!%e&b7cQ5fSmIW6QF=3w4Lrg9EB=pKT z)jiq@ebOtblWP7N=3%d`x8NA5q32``r`7f!+<))N)llD$$E#axJM1kj_8qo#t^aRb zQjg=?wR(TyI8HwQyn0aYd;224N%%Vu5`kU^<&bG2f&;*85`BsyyAYB^IVTzjDT|?S zm_W=xG24c8CM&4prCL+=<(hW$zq82iaZp%V3*zXzlVF%($_<& ztU6ptWCFekoUQ}i(emh{nP~40zU&miUP>p!Vf>r$3d?Z;I{h}2Kp+(YNj51Oq1id2 zTLxbrkxlR+VaWrUm4ealqEjO?6Y)*dwI%4RX`V9&+ga*Lzj?Sq%gPZvk3YUNb(E!U zu3P%sbegiF*Ut)OhMN+C_1x7LM0Orf|0TZ_!k@fg6(V6|_mQB}NjwC=m4Y7lfRYTE zT33RcO{=>duA2<-zB-aBqteaf3cH)QN-+EYJKo=oFP?L+dVUMn@Hfnln?3DH^)Yoh zUb=AjmD8vAxaosZ9|}u8d1>3sYbWEcu{(97e8G8_bwheTyEs1_MOfdCs?sh3$CG># zMftMB;Y7~L3X9Ja3W13fa=9gESl~*!@MU}%96jKDWxaXR6bI5xU^BGS|8>$`KyZ=X z$yx6M%h5itx)H3S66?%F&prRba~rQYK2G49q0EFA_^w-*ym08rdCR9=({IJ*@!hY! zXi@@F@xNVt>Dd=`+i(7p+9ZfOyYW?1JQtp${tPDY(`UDAe*2};MH8l;uVaH?@`NdZ zOem3b3nC&SF!D&d*bz}Z`pg%YlC9&AP2>l5Uo}-p%{%e z$!T#Q$K)mv=Ex>97$ee_cWg|}hjWmPLG-SG}}V#__Gkej$gO>Rid z;5KOVd-b|W2k3mc#ALEt1-i?flE{4OgaTzbAScrynU(b73>ZdbE3!IWSqWQ6%amdj zmM^~ySbb1tqQ1T?rE=Ud+^mhc6V_QP?2#D7X?LQC&*ul%v)>;=Brl%hhO~#A9H?Xr z!}cI%KhN91k?M!7@vJs_nus<5@A1c3f z>C>-0xVPu!mrgoBHl+&pJ%ue;#_^BTefO+gn{)PXT!0vlvAgbE2@K_<(+&FG%T+LKHX*K*GQdc!MOfnfEEY4faR4ZO%@?Kmo(+PUG!q zEgLfQgGt8+XTP=T!NU~~wr}UJUh5b$^vOqN z?HCtRFMxhF>g>c-pJ;NA0A|Aokb4pIA5DhyWRP(zDi?xBf>; zfMSP_BB>}3;z>$D)F(-TP0{6$eZ`;-f-nk$$w6b&eez0JCJb^FEj~O|Ev#q6_5!UM z@s!oDYK>N7f>D39k>NtsL0)CgVsCDspg=0?%IDB^Hf3P1yeMNfDy%`!ulNtVuKTw6##BHnO_l8gxanm!}{v z5{=rd6@m}CxR;a&$jaB&6?kM1Y-*1u*A$85<^~}L+f@ZeVwEY`#bk0&1D)M{ETE`2 z#>l|CYclCv93CC4z5@UEGT^i@?rR*8?B(COugl3wf;X>?&zXDi7_~L8Prs3a_yr43 zRv&!rF8{P~(=Lyvadr4R;cW0jhD)(bYi{9GhJstT=l#w=&@Xce90r`sxse+(Fx|4G z!BH6&K4rV3`mM2c4 zuW(Qm#mVr=NNs3xD^j`|IK4_4r5NZtRV}cQ(v=;yTXsdTzP+@4Xu$UhfEHK*ZA&5j z++%Xl7U+;j;N`u+kdH$aIAA??NKLmu%~k;ZNgxW(PFCGi1`63pqTRJw&~i)*WNFr{ z7OyW(V}1eMZ}zNeX-Sq{8Nd3aHq@`{ujFoVrRGxsOOQ15V$r?0LdX7^rmjZFPmQcs}UN9pzv-XTaHUO5TfhWo8^x)r_jnkWgps36kZ zTpYaQW4-kHgG=z2W;H=2ZNWpn$5-pc*SGx&wDP))!+?WS=5_OwOdj+G9F&96h}jPq zS8lT@jKXQ#h4Tbu2S*s8?EtTg7D1ZQjPa5Mrv@L)dg%mHZ3i=6)Du~_YP_Gx*GlEf z`czIxRzOb?vst4U2nO;!vK%%0Va-CNyC zJyl&_%tpeki<@y*^>B85`(mL7q^hTOXVtj#j{w~z2nnCEo&#WcwZp5kdl2#YoeZkZ z#&O8ukxc|aln;>%uBtJ6pu^!1??k-u5^ixP!d3fq3R%a0sh#D;upUOTJnBKod`csw z&QA$N5K-ma4LW^_NkR&1HE5)--4<&jE?a`}V*FvY^wjq|#RnjJbj-4y3@fXDGU2dW zO_IoQgh+M*aNZaUKT+Z(D@DR_n0Z22!bRI*m0iV_!JuU)6n|by1l-xS>xkzGnL>LnX%`jvk6>{Pd&35@y@P9A?B06J#Zl)5I|_DT~EUd$W!_;wt*fK*k-evI5Tgy6Q|^mFmR1Af#wZF1T#lp z3N?BQC4I~^yV__53<3O^`c?);U{z~_#xtAiM)N-4GY*x2Wg)vM9`|}+gRtJ6i9Aab zcx7rfFf9--4kYhFXZfe z1Tmg6R1ei9HHt;5tc=z{EAgUgJ`}Z>yZ5Lr3h_J_i**5*)0pg#!Ntgn0g7tLm4JzD zOi^IETnFrdbh{oFV1wDHmD33uoZ^ycstyM|EYiL9s5b-Cz>Lgd--W_Q)0W?U!}9yo zkJT3zAKS95ab)jNx7_>ATfIj%PJ8O^DSsG!$;3YW&l#i+Z@g$q!{|wqihK9zgRjMt z-@`+9*DudgpZZDtME%e+87Ck39!FRFwE55K3+H<($sNyb-=)4cWCB*UZaqTfkbpcM z8RANXs2VzX*A}68BGA=YULN*ZEa9$kzP5%BBtZA)a!R4wb&hDayJ_2T(GLfLkISbm zi?X4Sdgs|8Lz1z& zOXqLhP<_Ur^;ciBc4gNyx*n*nsI2W)Sy7j$FDSrKEMgZf4=?h5_wp+rkP#nW_0Z>^ zJf!}*krd&%SFcz(`;w<>Yo9C?CSoFd^Na=!j$tQu<6IWKJn-3jho?@r zFS$QFX9P24wEmD&DQ+vW(fBSF32)`052f9K%oa1fV|bC>x*Bew>k#9^7*1vPYP!Y2 z>IXM#?F@d~M{iWEdjUoXbt=PTvC-ZfqRng}78`~!EC4UxKs(7`4ucJnPCL~`G7h3a zuxmEPe03KEWtqKwIY28cZGDAZn#?!HPhwb%c}dBNG0$=I4zuutV>*J&oU6K|wT9N% zUyp0JTMwwc-^7LG<+$igZm{0H`ryS=xYKn1MyHK}e$Vz>O2()sy z-Gyk^TLB@?DVsQ=bxFxo8e~c@J#n22tY5i(@j!K5nj3W${50i&I)yvR-KnvZnzV^> zXy8kxW81Bg#387)^18wz0_L2o{>#R4&)an9e(lDtiD$UgN52sFH8Kr9J>9H6&G*dk zy;A)Q=cd=4a5~fTAQz4xDE&4IJdZgmB*~lL9O3LP=+ZzC-=^-FU@8sjp25>^%==~t z02W-s{%0$Odr%$q78g+6Z{ZdA+PBmkeEW*#Zrs$=ChjBduGG6+N$UL6lbQyIkssFT zk9<#!E()Y@D!ORQ1n81D<^P}ytLleO<0b0N&toUHzo_1fOE27Bf%mIta9ud3IsxC6 z`dJ;D)(NY?AK8P+t8X&SJIn%9Jqnxy2`;ypckqyl;gD&YAS7wVgkH6GsNH@|LmL^O zZ{k(_t*RHWeD?sRud0CW_P2ffXPQQwwiOCtuFmCqQ5%4b&9T89h}Xt$fUy-(qGK~d zq4Tjj9lVeXQ(w@rcho!hUaMP=qyb*Y9t}?z#_kDx`yj_T*CM)|KF|?;BJl?(elXN~ zdVN0dg8O6*Kv+9FsAg&$I2${dQP2TDcy;rw9T0@u39@DnIml6WQ^ScnGabC$uxXiSUA4`0(=P))Fn8bA8*z`RBC=iYtbK=Y;Z z@zW1KLFF`eI>ATODr+9aTgI&=R`o|@#7$y!ns@`9JfpLL(TOd1READLRwP0Cy>yy% zLfg@)B=Es*OV&28pLP1x&CPR8n}x68D5jD+bCVTJ`FBit8q!jw`(15q-vjb|o1MYs zNgwTkf&kyiEz=$4aKKH4%;_#wMx)o*AEZX>4Z`~uFMsejfKXfSX=@82EKzyZ6eNS~ z_dUa27>e{Br{V_IL$U;&o2>G=3xf{PWGafq9BxuthMWP&u_}}T*hT`LfX51Gm6M^_ zfC%9(So_vCEvsGrct_`fzVb4ycVdXJBp{k4;q8TGt?|6qg!7OoUP!}c7`^s~w|hKr zmipph$oAdh?SJ)+?w!7QML|3T$6v;^JB8GwkJJ-(^1iJ8le^*z_4x8@2JXBMkHu9t zEb7^-SM@AhfyY0nKKW{XKW@GH%U{32Hl1HS1-cdlNnurV$uULq5%Sx;l4OsP!UE** zIUrdcoM>)KC={oWQxQ555GY~rWwF{>i3R0TSC+VV9tUiuxnwz(ZbeV=!T-K}<5f2W zx1Oi&`ubni+7pzykn-yh{P7dgx*L{m7V)o7ymap1@)HP)Sp2q6U*PDo?@~_%R{r^q zdp0Az*VoHz?g~&BsO{2u?pgVFP3Oi3oa)Co--}1% z$Vn%a$>Ak7r@5$**6{fNodKaB^xJ`j9LvqML9_0nVk8CNYAB?O*ba+$R1=j{(qb3E zgdz=1cHc>)kR^ibiDpGB`TupQ$EzP+uU;Xae6ElA)sJvtF+SRHy0d#pX}wcSWpW{T zUc-&x&cVG{4rPA6P>2B`wTlo*=TO4mGaOom>3K~1d)$PO{`c;Vf3NvP_!F#G*=Xn@ z=Z7$h(~100HwckaFY@LmVtzkFn*9EVLd;$*=Ib@Yd~3AUOh!G#(2J{}oi7B?pyO~W z83T(v;!oV7{<8A`^@dbzS-9^FST?^r-_jO=m{p6zxbBVp>ZgC)urBAEk(fLB!O_%Q zgTL|4YRC(27ynJbjxS^3L*OOg^(w%Nf|P>%I5_(uUKmiKJ{ka4vI4+B^r_g%jsnwW zp@z_)5Ane(-dv-*MsB`!<}(WxH>YD1V+y~-+{8QoI*&O=o_KW8!{?|mgLiU4zEAy$ z@*%5JXq`H{|8oP12fHn958VC%4@BPeJ|8|&@ARSDO6`HQI&byCvXr!TAKfRfS!itc z@i^pI-NIUaoUJ~v%FyydOR&=JFB{}kJ3f;Mb#@ zI314XPJCswnr>Q{4WYXGY4t^1pAE7@v!)Qz)-S^{_k#~LfdGe|BDFh3 z5wKnZL6)E9kZc55ys0eY%h*{P_#& zcRi*~9Dxyb<27ym-RaP>`rg|&=zSs?hKnC+Qwk|fY5LsOU;rVn)k~m8I_xkv0F_qB zCRr7vdA$uzoz6*Q1$`M3wRVkoh-dn=g>!Y6@2Af_{A%9fac4fX7vJ6H_!T}?e_ehX z!diYG)A7LvD>*rbMG!=X=yq9num>%ojWx~W9JDu=K9?G0Iz7heG&sHqKWpV?T}F@X zSEu0H4X$rkN^H(pZXVy0`Q7t4tJNe57!sKTr`v@gFo-GImgH2-p!h>QmXcoL+2b3* zHDPHRuw?f^&fS_eN3fP-r~87Lp3n4JAMHA8Gb=t9#-Qk%LD6>#lc=)jgN_Oa){E@6 z=$bynk6+Cw*~YF}9kqR?>tD3WpzPn$djX#6#>3fPS<= zh}*^mfx`$z{Uni}2OTOc#1|kApUeqK0nv71NKcT|)aN$0d`2vKK4d>^ViB4OT#0kp zQHgV~pY_)fxo6?bS#QRc;v#k9_3B#d8G^_Y=({?{TOgXja-H?h`&e@4z1ObI&09IG zHAxNz-u20|_O*_I^v}v(H{=v=SI8SEy{3daS$!(-;8YZFyz7w4)NE3cifc5aOE@JP z7l3nGqL9iu@j5F;t-o_nWy({hz{)hib6z&MvbO3dz_Nxhh5Isnd}O9io%oYni1Jx& z1dr!w_cTWvmvRt^j__@LsnUHAgsnewWCF5la6%l?QInnX>^dO_!{B>hZfB^|5WQ(i_2jL&G;`)r)Ab-q@o zpXt(tj#FwbEhc&Ga3qJrIM>5j5u$k>Jn;fjyyWp%0K|-taK!2LIv~35MQ)GF?V@@L zZM)UhnGOXq?J(P`+gh$iRy#W8jm26-ikoBXK-UjH*7^=_R_kB;VbOP5W)s4=p`>708m-t@AdD=gf^U^uOGa?gz)M!hgU+n0_otv>zODxij4_+pyk7 zQ>-`r?|FpuzjwpmJ6!Gz(p&od**v_c&%>?hIad@q51z+P9B=l(AjUaQk29Z+qtC^! zndjW>Ian(m7|i&b-fNBR@oIg%qv<`Kmq*uh%oNKpBjdblHRNoMpQVqLN(b%Kutg4~=`YntJHo(^)0` zF-#n-9toSEt#K+yz6z?Xom9?a=dVAgf90?I`^O*t*sfOIjRKTrpA*QJBoT?BpdvNE zg#ckBnN`T!j1}_PG52l|>BI)={63;Hv9Eq%lmfl-Xl=;QpOZ5)CZq@T&nrQ;}5m7Gq;`J#=N zZRp+fGkJM*oWRULyu&!m&&v3DPv>V=`k7EjpwHL?K9k${jOO!XbMr5qpEuLb1cP)O zztyj}jfV`&cVT(#7F3Z82qLU~5fPi!!qMQHXf_kpc`a>F8iQi#h?twNOm$!N;AY{v zEx$d%dc9qz<*~3_b@sl*EWrLU6RXVvfl7-+-xmt+l~cYiOG}3^8{bopva#L|tUnu* z%SZbCd4{(BctYjR6TnSKHAlmOKkFO2Ft(dWI3zH+h)4I8ww0M!h~$a}6kH z2mx^t6oTQ94RaU{HI57NK|8=VD=r0EB!zhs-OeHTt*bp*7eK;5hpd-FUNdutSiGJRoCvQP{tk}QBe?YAMX2UG;) zj)Z+gk^>6w@)82(I&pz8S*9*CEOfGru`NLl+3Ow{L#WFq483D_{tYnI;le0ubYH`#h4H z+3P?RVgUP;EHxpx+=1tsqCd^%%QkOBCEZs{(qtS{x zr*V{lMhOw+|EH0})sLwpN2#yiuIeFOn$O{G5cV5GW1aY`_4sKjMz!yHHKh60$0Nkw z&T4`jWh(}3kI)K!x|hL8RL_dNV&kv;=vKV7 zCAH^oYU@Ef7}5x?RS)7_OAgK83XU)O?q@9Tdjb- z=>234?fv|qdVEsP7uLM`6kaobM>WSaU%qhRtlx&uyz)?f8G-$WylKi3~V)pQ*Wf8N< zY?|CuP+&GApDg=)62ypklsB368*X28pjTvM7}EO=pSt40M}vM0HS5BcKR)n&cA3TI zo%0u9^WJ}ZKYM-Q><*{MHNEe(pe>U!O=$og$Kx|GRUT=aqNzj~5m)q+1CvpG)C`WMf`2``$ z2^8mv-gqJbz+Va3=KXH5ey25a2&FD`B*$+wXl9Murt6n>2uLmPDBu( zUxi@MrPy4YjDrG3BLt5-oey3iljdw+y8ZDEbAUZdS;a)br5ARbfaphzZW;E%Y0O^; zdDDX8C(&4pD0V)PpOa%%6u5R2VwG6bI7Bx=)}~Gq+P3=L*})2JFY91&>!1Iwlc2@i z>#m!#_dD;=r^uM>z(s4fty{KirK`T>bFCMg_!O-TWHftyB%G5&ymmgG7l}Y{KxhE4 zQmaG{A{3yD{rAw^F^a*?(mw2L5_|{0&yHsNYvDCO@7GUqg&pG=sd?%%Telth=D;z8 zS?}3rK)ykmFK-n^lha0^X%B6E05y%^6=%@Xb~7=_$ej^zTlC66Y=&M#xWFh{(fj;& zy1)L)v^X(JyX=iZ)cvd=$0f|q3Ub8YD;78p|UisA)LPM}K0mN0OrY zO7Q@o2qt79DseOG zWU*-5wp)LVls%s7`;HdlPY_(h2n6HB88E>Vsbr!ulIv&0-C5{dD)2~Rnf97`& z1CZ8#QTHgno9Mvj(u5Ea&+!?5LwJ3EH)RnzQF|7-kuTtKh*qod0>%gja9>=41#CxI z=ZcG4gTup*#Og+>bvFiQ1{|~#rD-j*(?=C_FYQ^NEXr!zqD9-RRz*Wh!-t!O4p#e+ zH52>b=cSi<`PC<9JTYH=z2VmiFY%!C)xl%&i|{-*Zt0sgvWOTO+&Vjr|Yx&=6y4k3wy zJ_jImUij7?8hh)>;e%GlMPs#j@yE?oNhBq zx9u++Hg0_7I>c!_7F1`8^em!4V~ROy?=Tvt=Wc;Na69(wv%K%sN6=5Lne+(qp`?Jt z5r<51@Ym+WUX3rsyev{}Bf)HrSI10});)@+^5^np@!nF~;!@kkOe*Y>)h{O_H;Mny zuXF4EZJM`|+NY%kJU!Fqb}7ucuYDH(p~CQc+?3-{12Tc6MX*NKF=`VM*%~

    7q{XBb;jXpcAra{hVF9SZGEmcVvvs)ZV}}nv_JXpg zy1E*X+9sTaH`w!$956tES%6~dU_HJ70&A@0bxYh|6(d-+scOgQ*|jLlqr!^a?dw6gwjzKF*v_wL_T_waSQ;Tu9o2>k|qz+l`OJTaEnJoy6lXiBrP z;0n)`lVj-X$9|Mm%=VhsiyNtYI*3VHZscj!t#xS8n6HayO*&*@aOlE^i}Nyz3X9^) za?>+9bWBTuK`8O?b7tPK1q+7;7nXHMN$c1lBdwiO7+knuNN{0P(SV|?jv4LRr>D1X zm(ei`evD%8FAQe1>yQTTF+E3O9=@)vK@J$B*_01gUjsG(<_zusj&rAl!J@?rhqP}s zXh2cyoOT&a+I2`z>%b6rc<7J?41pG%GTODvfG^OOVIY6cN?X~D4X85&U~C8@Jtsex z4@Mvr4hu=jsyFoP;K9k>(W8yNmTA(~)NO~uUH}q zqDz&%V%5HT+0n=kJ3aTYG-vC?J>5$Sx{pfFZkbkEI%J4x*f8Uep{-iwv}~Ev3ZCCn z*@M>Aeu+e6Jwg$|By1JD;4xT zjfdYmtl1g?Q9F}olm!Ai_@PLZU(msx{4+Kb&E;47qzyh=C%m%u zai8|@zU^bC<6~7j#!P3=nlJ=(Yl6BjjsP6C!SpvBGFJyM#v)r5;49|jrl-ofZOXS5 zRXA~-ayYxM=d0{q(Xh92{_O#s(h2XQJxImNE#@IqFF&p<3${e})nQ$o{Lud**PUXE z1`KN5F1ToM(cr~%Kqx!3Ymxy1+^GcBuu$4Y5A=OwcrD!pN?@1nzqpG87dVqb)$ zN8r8l%137uGK@Fsj| z>cXCV5Z2qb_DB9~Z@_FrG7iXf4DBGcX?m=ps`PrndHyR z^e1KFd)2oh{Dl(0S$nTVq?hv(`!{kuRJj4`vBP>Om&W)2@EN;MG!8^pMw4iZP9qvO zG$I`La_>Sr7_8Kz9iWqy1!#p)+dXMgAPiFTDo{O4zUL)^4RY`@b1#a=f%wXJ67Mk8 zL**NMjvpZV?+UweGVU>c_wB%y>(eJqntr$ud<-(O2V|rxGJ(zEVgVrTBnHY2jsGB5 zo!~R4YrAp2TdRS^oWm-5cVX=5Fgv~v@6*aZG{Ps>Z`FvxvlpS$VVPn)h^-T*2tbhCFg`0weEbdaE|dIsf8!96D^duELvKa0~@d2oy|1-A9_lv%Z06#wH%rNl7jx0R?7og2}eAXcEfNNA5JaJp5%hy;P^ zbOt>J@2{Xbhy_7Bjtfu_3Alq6f#o+Xj`~)GY`HJJ@x~i;{Cn@++Vmdm_*^a|FTgqa zKWQnI!oTd~#&vc)=&b&K>ugO}XEE9ei#RKsMK-9jG)Y#Q)nT^T?1HX~5eGQh?cu-7 z{Iw01pqRxGo7->n53ca|@|w~r5(h2A4S*PIDfb$I02(2rHB&z}Q! z?NaRyWB|R;F})D|UhtiAK{@cHYS$$DVSMnNO1Hamg8KVi5fZKge$g-$Fy0z%K_+6x zEbG{eUC3>Yb;p>9m04l;aX?RmkF;k)PP4VkHjXHt`l2-{3HMaNZC$XNTM5fFh40kw z>P&JMe2Y(Siu0cE8as|0gU4MB{oE`kHM;L>15!E;?Jb-QZCHcJh0iDK-&Csj$vbj> z>0)IPUbk;;QKA|z16<2FE!zi7dJ{585=;oh=r|`I#_eB_AV9DFWWXKj<91j@E}Kh) zFUb>)q2o&qFX1YOR@3eum)(4y+<4-c;H$c>{2cncs*0r7sC9q&2+>S{83S=br{1lD zG3=5Q7j3cX-R>Bj^#o>D)6pDc3~pcF(*Z~mzPVriDjRN_K)fzLwGtcl=XR#KEeK1c z6CN7Zt$my4k4_uVyS2ynia)AF&xxyBx9Qw|xo|e|o;6>GB>Zo=ScO-wu}EvD$V?>N@nWc(V0{u+Tg7z@ zRw_&p&hq^?Ctwu?!C^$$P6&p<+$Z=0P4GYwNZcV}47USA1NFKjifqhpHGGV|4m_%+ zhMHb{;+WC`e+2ZU@wdJu@7HW$hmf8sY3s zbry6sAX+ATiL9VUtPaLz#&(O1m|2oK;H9^|gxeuK!;js%YQo6Z-dek!l+&$5cJPL< zsX3%_8|m{bCePy z3UF*^YkfzxtP#vn`;4V4i|B6neG~E@!w7-x&`Gb9yDSs%fB#)sUtDNs@6XBQ{{(vHMaC$V$gRmE0=d%@L1p|WvzkIyh# z`Z+04?o*ypzEE6C_<4lO+uN{S30c^R4G7uvm|0G3#e`83=~YX2rxin%1J^tUH*3P% zH!qQBpz5vdq-sMA7dl*cYb8lPx|Q=d7vOykvKNJd0l3ZdP`6;S%WxYTtrLV8xZD)o zU2Fi;&h!$QH1TVPL?rRoqK1P?1)eI5>r3>s-nFb|N3*lZk_r1=YyudR8c^en3!!Il z<-*O&pTBRxn=7-j{`hP`pToihC^tPBT3LmU{`2quRL+HdBhklaS5UpK`<9niZs=A;oRzEcs)A>a0S~i5pWg#mc9ej+1Z*)zBZwV!v(80{7O!fVEjaH5 zhad{aH7d4mxJzkC*ILXe*Uz;CwAhz~99VM5s)n=E=(4=@YO)2pe^$O$t}8z(H?dT3 zXz$5=YhNIbl-} zMbEr^Fs4ML$a0*?JE9D`Y!GqPlJdW*G0jb4O()tq9ocp;-c7K3hf;AC_gpjY)Ei2H zGH!P^{q0uKDEu_urL+qD#zzw{UlUZki1VUTz-$prR;!)uH708f4pc*DNSk;9cxgi_ zYiwa1<2R_0T86o8b#O}y8@YoF0zt2V&F0!altSU`RprN<2Zh3#Ey^=h>fV0k|Hi1)Yy+xZdT=4Shv5hEl) z&qELR7_uAgB(Y6;DQrSjw<5a%Cp2@~0@G|KbO<8(IGb9rj-Z<6rTahIKhijCY>vr& zD%SOv3(Q6bA3u&o<+pF6A2@NebHr=K;~`s@h;x3xV2vJoyoC6PKDF5nGu+9e4a z#TxLf90U{1)2jEaRC&b_tpGJ+#FD^pXAnKr2^54|eaYEd*Dm7)y}O&eC*0QD(qf!n zCHO*r_{x`E_H|m(eELf(Pkw7l7so3uN|f^=8hx2He@)#dNVT zicrl&=AZ>;I<%|8`LoPJ)}pzObTa{j#&2bqMkO3mIU z`X%}mC2Q2N*N7$bhw?{gbv_Y33azw8m8}QdJ0T=|%g+m40?6f@bU1zRVOQv`oob0^A@4XZmVi!Vg3`APLR!D+iIS8QTZAUJSIo?zR7}* z8MRO==17KKVh5k>iId>W$o5V;N;qpz6Ga4f_o9du)bM>n!}m$|2JaiN!tK*1f<$`4 z{!dXnoHQ{el!^j|fMeS_-$(Oc;CxfEa^?5%`|}ZDpA#hhIURV5PC=AJ9eft}iVb=Z zOY8}J3`_k@cEpoh;irAFa^-jIiJ@g=et5P#{Z?SYW@MdLbdaQJFj82f2s7_lTLit7 zWyD6kQ7=k1Eb=r>p3_kb0-+@w!bYq)|I`;ALH%vjY-QHW19;=J-M4MVIm%h6k9!2a zqhtfjXn6WTUI*%e8~ip#s3pR7v#3V`5EoO~ZE#8K-X6dk*~oDtHc>nDMZ}U#l(Cgh z-U<5z?X`i14LUV&Q4M=645e`9wT~s4hzCRWD~l^%BXM+u5`|AG`2^nr?_)UbrBt&H z-KSP5aFvfg1JY>qY`s87+dvF-Q=kwkvaV zzxU5S{QC2hvW3$uFUNfO#vdbRUsU|`;OWIHdW|YB-8v{_gq{YAHb|tvfu})J1B{f~ zHM90_dhUQA)nQ^SV55ush!7ww9Gno~GRRsjRfL zjEuma?s#le_f-kS+3UC9PnCm(g~9&#Gv(00!oopnogh8K^A5UmomviSjORLKM;UOE zL>2)FPKRh_1D6GmXhD_VhGPxvh`ZMmGD10KLcDSbCI+s@lS#&l&%IuA{Ma#)2@||7 zgC_m+%#mAPp5=FR8Y~lv0!!b-A9oQq}Db%JZI%lr3>NjKkw&oa8Sti4YD#{18< z2zU)9E9~IJ>ELv*vBgswvG{tK;7Pt(3k;}dVd+JX;(n#gHrs=N2ZsNIch|UaeEO&% zW2cjmt3%?>YNXab3smS}mw3Gz2AGK2c@J2qdxy#uR%T;F)MkZlV?;1e_=_bQHrGo5 zw}Z~Q{+4xiU6+%~`rXPp5CMB=&YU^b$B#oGXy@piqwy_e>du`zmHL?=!mr%sbP1%g z>Ts(Ax-gm~Dti`t4tieo(0mUz5jT~rI-5h18Dy<@HZBHUYYxzztHbYD8U9@3s_>g{ zvWoC9KJ+T5LC-*Q6UJtcf6**jZ3k_y+RoePLEFzZGS#-&R>|KHiP20gHpv{WkpQfw zO=lt)*$04v-xHohq|P7O&u0&@c|*!IIvU__Oj)1EW(}cmJt4PQh1_511iEsN=T3Um zeyymLP)YyIXRM|LoNj8>Q+M$kZPW>P$Sc8d$I-Hc|)-Mw=8-y~O2eKqlij z>`^X&TXmlGiTvv9dtZF=@p=01aP{OX%eL>RSpCHA)r>Y>&;;RWs8@_eO#`ymPK`#% zZ5Lu=EU16b;+7WrQgE}K} z^$*(FWjmuuc4R-+a3|KJ6lfllp5uiyLI+%W%jr@&bf9HuyOMR7(`g2)867e6<5d?) z%c0}mUiNeOu+Y0j=f7MskhJReUh6-8JUx5V-kSbO?AtSj?tQM`D_;COWbnJr>qkgDu8K?5wW!P^9;qIg`e zwYoeOKNRIO_Dk+mno&>vNH?U;<|TRC`dANS!pDs=&qI|4J1axc9FL(}H-`NV=e&op z{NqjK7v;NI3zb{oZ=71SbN2@2<2{ev`dw|IL<)EdC5(<8W1^&7QNBBL2)vB+&(DAK zF@Em6@@jqGEU1a6un}+?+!OHGDU#jpBuflJu{sM(W)tl3fv6~B3}k-$`$6V+eMCLx zo%VN3aK&{N++Uv(n$6Y(1@Cnk3$%Ad+0rM^zk2HYuDNBaYf6W`>icHm^qG?b)f=mUirw9H7mGX7(^0y-Le@p4*JX?v(5~GXI(uz zSlXxN;71T#_S+e;X$jM#SC~eT1g2zs^!C>XtGZ4SkcB-LStKBW)h1bt;NSDrH-4_l zt!%aO8M~NrzQWX%Bz*kI`7gt@%|L5z%dP{hK?T%0DunG4mfW)0$hK8Xh>36O^4;pF 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 hORNn#0u^yLM$$LcK`q` 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 WcM>LH5+>n45dH+?0ci>V3OE2!-yEa> literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Package Resources/TMP Essential Resources.unitypackage.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Package Resources/TMP Essential Resources.unitypackage.meta new file mode 100644 index 0000000..2971783 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Package Resources/TMP Essential Resources.unitypackage.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ce4ff17ca867d2b48b5c8a4181611901 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Package Resources/TMP Examples & Extras.unitypackage b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Package Resources/TMP Examples & Extras.unitypackage new file mode 100644 index 0000000000000000000000000000000000000000..975bf1be323ccfbc77eb9f1b5a81b70b564bd68c GIT binary patch literal 1928373 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

    yy-Fs=|fg`_E(umfrQoB?V)XB6F zW~G!F#sS)(75g!~K-BTMk<@A&LPkSLRPLt*WaF}NQaPI@=auukB;5*4EC5p!7r{Nq zOS106>gw_4S`T;>i&d{F<&W*&o0NsMLF0@jtY zy}1@1!y<|dr5MRgWkGDva!Iko4f?_T~jpo5Z;mXE@rgG|jirj+* zK`Ybcm-B>poZL;UYwB{uvQ?Y2v%NK1jfKMP$qNQHRv*u`s97heDAj{t^~1bX&s(a9 zkHxs3JoCz(z15H1%biiGM<-n~3-nMEEZs1F-{TkW`p|#bX;B5o5Hh?-P$JwI7+;Ve zD9lIyaAi2xB%|zuWg|9>tOT(E7a?q~1a(bMk`AA)LLVRvw*EEG>Ki2|rpwCT+ z^j5apRATQ&zobpDP!kkAOiSGFN#pm)Ri96pK%3Wh@WFO#@A6xF|42RoUPNL_Ujn4S zO@I6Do+UT#^*o;X&G(7&xQa6WmR!4*Yhi|Ql~QTFpsT{1A}A#k9Do=3D|5x!bdDrP z*$fp>c70&H)gr{bW8EU_V*}Be$sI0Ah|jJLvRDCNNoFgG+BSjr4w{qb%K4CrpS!;l zB_rCFo^^Bg;nP#c-F)^Gu!tp|1msm`%=ssaWAbhyB(u!yR~w! zf3HtVy7Atgg%{omgHR{(M1m6mazSZHkx(e~Z;|>p$z;(|sT~qJL+GDX%H>etm<;IE zgKh#ci{Lg{7#d}>P10<$*(6Ps+14DRaD8q)Mi2fx_SSe%)QQxgwik6yaG<;CxMBhK~?i@E%suWW}2aH$>kGB)AOGc#_@ z*?ntj@$NI5e_70nDiE9yG=$BJA=(MF^KhLA6jYqbl?r(>X<&eq8R|y4xvRPx~Nc#;L3fe&oW z;R9Pg7pcB}`{)(t{B9Ri&QH0^02d~{L`Dw{t|M>H@?rYaxAGPJpRs69Xf1TUV)%oZR(TkrQ zy)gQtO%PzxFs;C%*7>(YS%?%%6amlGDgz^n*g|9wKTD?^2%B!HO^ z&#{&Bcz#|eu9_>YD72cIAj%@U03%)Uxyq)d9=2NqTLoFw3ONe#{!y{F18*IdLV=Rg zneEm^qd=Kef)jFqgOG>ln@_dMG$CPH*zz{OLQ7y^c(62Ydj}xh0mdMJj|)0pZ01=(EGUsz>Qic? z;#l8$1h?*=D{&^>SkANCsGb5-Py~}lMwC3-@1P~0iEm8632E50Fd+z7h#Ki)fyL00 zyR*=a7F(ciKUwL2Q3+R1|MKlpNM}mWijWk9)O|wK&!w_ie5if0q28&4HVs_4V280j z&}ails7J_EX8$r{Wo>LbQ5NxsVe8)FQQTU0Fh+t`^5*RPni0y6VOFT2{iO_1+Y`3KpUD&Lcn6v^0+MmyZsQ}+9n{{ zPe3xZNToXq>%)UBQo9!LixULV-kslGnQK>S^AXi%l?VicSt1MIAldBaCCSmyf}p@i z00j&oZ<8EQIC3D8YPd~J2V#*mrPk&yQJljfLctW6P!&`kSmkSM0Df{bMq8}(R3zZ* z$`F({Te27fjnBcz334=KIu>^(5tS$6bG3fJE<*n%t#|U~nld~OC%}qV!h?|&b}8Ng z&LEvav?D)Q^bX>XotsivXxm9BWYKm7K?$H`VUXr7bEHK=GLIOZxViN<{#r{0K!r2QOc%-e^YF%VA>;(}96 zTK_tMR$pkxcNFMRc5AN$8ciVxi(Q$Pgo9=JLQAR=Y}u%f57Y#XP`WrZc`sI!Fd5YhQUGFYH&qMCXSg}Xo2mB7#5<=XIFqF zL`)05eg}eki%4H_A{m&rB``b;c}I&__ZVQu(2cih{aXymLp$sB^IEkihYN>xK*LNL z5#XOy?gifQW@SfGy(AWZin$5$HQMw6tVA1m$U(XeNz(z9rN$F{<@`b_n3f3X#A+E| z9#ol|0QE;wc_y!!47ULqJNdj!sFPv}NaLX*K2KUDC3@HhGKB~>+#ZN8pe+cd4u~%Y z34Z4-VKE>|b|NYXAD;qQr39qAfGCK}Crr^|0VbxzQ=z~BLTj?HT2U$oDqy3fTSfpv zx)ZEzY&TUR5SyD?*XAbaCU2nwVPv)H9BdWj6jhS7)lc`WK(3-TRu-Y21V?>DP*g^y z$H8;s0DdevQ3bR4!=mjWmZ1OM;-=gQerai^Nr_JX6HbH!MzJfHUlW39I47)S0jq+PO=_Q zAq#=vp85%~HpvQ2J)pfnxzuuO4I(v#P1S0wRbp>VDWrT9chB>Z@HbvE91UY@3`(P+ zA4TApBGGa{4m!X>hZD8fV_tHcU^ zKz1ZfH+$8K)Gi8}dbWymR==+x;&>yhJsM*T_kapQut$?t!{&A;BpMrmzLQ8i$%jQ- zE&iqEnsMB2ab2|`RxTEs8#7U@LQfr>>L|(qG)Zvi&+7A_WF?6X-sQd}TD=y5>9V0m zi!c=)W>6jrlNwsW3S0*oU)Lf5atWx0HYBZ-rpOm_6u#nYldUS- z>;+)5c!95g;HHOaF+PJyX+td3YIxJ4-rHQvcX9ZMRsI^;TZXuJPd3BTU!i<7P;V5 zt9Izg7O+on9Q3|_i$oge%bXB_8mqCG$t$wb%uqH#?atCzYS^%Rxw0Z)BtIcN9d$ZPf@RlHe&;Y3;nyvDR<16& zG<)agE5DdKXMV$$a~BUUg_r6Zv1(ym=Ebw!?>>B(v9PA>?n9l=lC7v02(`iR_0-O2 zFQJG7nG`9C0Zw^aUs6P*APUhsi6kwJ#9F?-N)9?( zDFR4jV((zguM2Zn5Yts&mlQ25Y(f;8Qe?TZGUkn(z-f&G62<8FfBe`U;(&zW(0f$v>}ncWl|k zU-nMxI6vj1O_>+Jr|`ty0)d8hkkqtel#sYfd~re+lVy)K^vIAafqcNI7Nn&TQAm@X zZ$H@<61W&|Z&+LeE-OvOL?NL_GWuTx+U~z1d#tC=CXrQDIb_P{jtDu%?Q<)_DENTaf1KA%c$6tFAS5Es(yFDlG=X+1E zu_xi+={J?Y$gg)_>RWpEOP_D{e4YKlg>%K;J5e#5T|szMqe39xLP}^s$YLShB1$6C z4E?|k)0Tjfi{$f82un`jCrW_ENVs2Y0r#Uy6N2Cb-l{1fwB#>|W!A`KA+ii7lyQ{$ARk{w96=0CCI9!!o3&CFoFaQWZPeUj2 zhO!8B57OmeGIe?Q-JJ>G?O;UhhgDc67z~E&uR(q(jqgKBzhM z;0e~Y=lVBSCU5%-Sp!Lv`FZ|r(ZJpX!dhOmy}d)1lmz%ivRe=3f5oY`FsFapPhM=n zA?ESZBmfNX4ts-m5O39iKq8rO7(j#>23+pnNavyr_+&xrF+o@B0m%yB9CUOsa9OUgi{yBNm9!Qje5I~U{UfLm z5F@Z3bxG^2NdLmWj^Y8=tJOlNuC%1;4P1oUJq_#3+rE7~g?t4Qi9RX&^{IL;g9^VXOmjKcd10-gg*z4J$R|7l03UowU?w%e#%$ z#;&N;B5RekseK2OF!JE_CsAq1mT8&}w`px72bSm#Qr@jXclc$b4 zuzUWncUHC}eL!^_~hhPV%Yf-?soPG zuQQYZ>|+y+hz*@u+I|p0pfVfIC9=&mqDWOFsF=lyGAeHes@+H--Tv0HzT*!z)b)-z z_vrUCKWJ|9)(4KW>4Jyb^S`?OVJBFAh>jXgT0f984Pn4kZP3=!$>;qR;{fXrL#n=h zMG0cOl6ffFPYc0lC+PtO0+G>0pw3gs$}Vzq2?fs9uu>EB(h7y^%|blTD1mj8Edwy2 zxYp_PUA1y`O{m&h9~zart2R`cV0CB{tf8JyHzJYDfsIhdCX3X-^j%4Ft1UG&oJ@5M zq<~W%d8)Tx*njcimfd}`uHN0YH-3;&C(5UH-`jh5d;R^im8Wj~P*;#t(XVIb5iOul z0}ZHd2wV)6>o%w(-a^(kEQZK-bQD4K!v~_hqoXq|1@b!%pE{EuDs~G?O1RK}5LB!) zwD|L6T(QvG4|1HuN)yLY5@N}-L>>d|u6BxWU@?eph-_f`e#b+ak23=1VN-zff%`p? z`3Y6UMeM)e{!ibap0Q7vo zHZ7Vw$;DVamUzS;qLorma+2ey(v-DlCybQ-tOz2T&qCqMy3^+llQKVIr)rnYszagP3hhb59dBUf9>&|iV^|R-@G@9z}JwaAj(Pa zpSuFy22Vp?TaM%_008!);*=HwKMBcs$aJSsi~uko|3xe=l1jA9_yT=tq0P>eZj^|n z&}xarB6Tbam_9=8jTo*zg%q}eom zP%Q8u7Vv|_v0&JlG?08KCsq~#%j--0qbw2n!dU+(XxYFV85f3H_;Q%N$@G|>1!v*) zDCk4EO;DyeJD@;h$iZMy70K^U-|FUqoCVWiBTxk+T=yec*^pw^nOsjoiDm~?;sPgDG$W+9t1pk7eClMD}< z%^Bn1Sa9-A=i3)y&Ww&E9a46pxAcV&8~vv#APoG;qiI`#UqvC|q0b`3@CVVcTD}bi zK!bGow#ZIoJ@gOBMops50rW+NHu_MFhdSBbiFw|OumK|w+JChis`&n(@0NQiR0+_c zbLu*$r0sRPe|_iAZ_cqj>v;{#PCbm@{`Co#{NVb?JFh28$qXeAb9UmuuTYP^Q3SR+ zOP18-29n`E-xYJPGYxp}UNGuYp={ru3xV4!N}!`pzyZAt`cyJh8%QzMMm{A44JT8z zP_{;;ZSA+64JBv-987>rC&gTy8kD;7=`Fm0-6Pgji{^sZLk~=YGyvb?xk3Xc$=%jg zV+{-?K%#(CC2O0?0;*0FN>4?N@kxg_UdxE+oBA_0$R&O{H00*<*^xed@1=`dCgmwn zYYMt818EJ{wGHHQ0Db=(agS?BBz4_WX;%RR4@ z13|kBC4bnZw5N$~K;5W9Rb-*@8@kbXI^u9Ez87EhN<28&)^~+7JqF_@8T8T+)DlcM-`wB<8g!+*8Q& z4@(j{AhqyjwpQX2+#XFk@iGI+<{+rn!E{TsMw8g)6vE2to`CfWXM+YAi=5R@Pggpo8w910Hmww6^zvl^d%YFRkJ#Q3AL6qx|o)JMcPKtMsu7K(j1}JFWhM*sK zL(xx0d|Fz+2q;86A>5c$glhgIwKN*S9p2r<& zjA!?;Z>JW#Umx@=zz?y2-m{ONac-*h{`QVHuealN?NGAq3e4_I>HRT35b#C2(Z5dC zv$tze*P{Id*|h+U-v!ndR59w~pyt68XWasPhC%@F?R*0nyV6*IKG%Il7PD~>9nQ9uvyg*27MeIPTr$^S ztihmNk2=-aXg+Q4?sWMzTGg|jA5(3Q$KW{p(2+?WXWR<^`3V+M@|z3?D%^( z)g>YNU!(pi84g-QiZk7zeF`V*Hz(cU1u$TUZ%iU00)2h`EBl{;!>Q-OSbqczJR0lS zz)`fAsCpoFqqB@dwaNgrA=sU7Rq*dXlIuyUd5Q#-`B0x8wf15nPz+gHn;o&vA~w_Y z_NV7E#6NzVQ6UsRp0_@L}U|2Yy_wj6U-Xk=^RU~NPAPD>gJ z^ld2OA<-`(1K(MHc&_mcYvN{GDGzk#ZQWHL;x~4rZ0yXPdF*k zD0?(Is}XA0p5tJ#28A=UrkrA~6BTbOP`jq18|s)VcsTH%$bh&GYWMymSAtHVSQ9L8 zTm^bQ2uYhzp@{L~_BlIyXWXB9)U@eY&sFn=^ah@Z_xULO{R?}CubpvF>g=;hq3`Id zRKP6Yv;l}CJ$KTHf7lJAXd$aRTNi}31P5&cN*Ef`At7iw%B)n3pdqp$|VJb7|h7YRIn8Az_o8Z#{pf}VVXy7gDTJJKNTk^YG} znqWn05ZbiU2{@t9mZ`Ff7Lm1kBhCGo&!js(^;4GoXu?g;u^lHi#*f&$pyu)Cy)M7( zL?sE*@B|M!IX{X>c2u8fA{3iKUf2f?F%lSd|G0E_~(R!hraQBa0Fs{bx10Ve0q1)ZQP13D9c&;~o;DGwP8 zat3Vm?f;B$^D$4j_D+L}Imxn=BG{64sOJq7$wI+~0L^zk$4kIdaJZw-oV*EbKWPlPu?&N=yn}5 zI}8#uv=|y@GNQXT6wLF+%DzBjN*0cMcySv5y-5iF7Jjl7{AFyd1F!br;ZMPufj#Se zWWKh!g@KDip(>u>@!;IH> zORV;uS!`OgeI;lioXr2`!_xqjJ-<0>%-RLx*&Ebt5a~Q6naKaM=aW>=P&!mKTw#CUcyrbhP? z((7PRkSd!>h0gpu!b7kJi8!8_dj&WK#x#d~`D5MlGH1dHg1WMlt%WB_wr{n9Q0~Ro z#pCZZeE#SHm@Wf2j`k3|NykE<{IeZ076@te@h|mJx{fl-ZdtZO|8IdKb92 z#{v+5lZZ$o^$%MPUY=;mn*eQUAY@i|{S}J)HS51D0{gssao(LBz^7QeqR|+5Ai&pF zf#m}t=WTRfER5p(EwqD5XN0@#1<(T`t_)B+NYMTh$b0SqAP?c4aX`Ebl=U|KCKa<* zWWeS9_n`0dg{DU{3Q~83S*`K8rhfAodXSxk7Z#s9Zs&LrnHM}kkK=d8v|}H`cFLe$9bm)@c3jan4fzAqO469FB5F|P0yf#CYo{W>1Fd7{yTH6 zHtO}V`t~EWsmBx^;N%+>EVM((sTHNhxr=n0mkk~tTQq)Bu*J^)#Nu{vSu1_Zig^!w z`}bhR;GMOpe!pD#?qOT#qk9iK*JeOE2GZ-`%gVFu*n(EIU%-3tBp(SCdMN$JjeI8i z5h!|-Wl(Phn(;E0H^1f;V4kM*o0W?L^O?Q+63H9b(E%L;Oh4WDZ&dEv2Gd1b8a`jP zT3!RMNBhiXa6|4vxD6Jc4T>9BFjU`WPG%N`0f=8XTwSHRaTyW;T@hga{)J)H|jb;>lq5YNox?YR(olb)o5G) z5@?kde;`~B1Nri6*|iJcF5M#2qmFTcpHOV60XeDi2DBYA+`$<)hW{oAG+;P9BtSO^ z>VlOlAS6APHw-l&(nk(0S?F29*M+AVOcD zM*~gD9{If!Wm3wU;--TeL7f7$3`+FkKLR?4%UYlK%W80&e{X8Ksz=3}WNnaQ*pkSF zuxA=ed$lQ0X_@^CBsQT35WKhg4Hz_l+@DT4Y3wvZq^9@AD@2#MDknXK{51^TSXr}Ki%7F$$7oavC-g!`>r$R-pEeu-wdLy~>2N(xg zcTmj1kG^PokYQxMUvz!j^>*PtB7~TFU7I8yAv}Oi^|k+uac|jN@`;SaR;4fCiLCrV ziml${#Q;RiAru2$2Z+&_E@U}CdtyjjNu2 zKuq_Fu^$1EIqy4AzdrSGQ+bAdPJ%usaHd8W$LW3l2;jgeFinp77>v+mEVc=De}^}O zE6@SQf>|wj40$skxD!Y-58JTJx3~_TmjnYg2M|BZrfL4YEhW%!L60wlZxFZv-roH1 znxFfF$~9Xq?sh+AtmYS>W8VCwck4E*hhUI1!`geT{oac}rGVML`35VfSoYwr6sW4r z+j0Y@CFkE(xxZ_7Xam5M!9TAX3>Rzd#>i|rmaBKjgU-0=?teeyix&KurP;KvcUx?= zxR8*ZyvJU8T-~9hq)Mr-FXmSb9u3jfMyYlNQY}sVc^Ly$@63Mi%&HfXI7W55I?!wf zL|(z5_>X1DE8XqQK52*D-f9i~PoL&3h85gBc_r-oKc@m$YDKeY{)*JZ-5K{fJ-}Sx z{3t;xw5SCyZeFO3mu3F$%7M4u3O8V28~{qj*r)sgOeB~>L*=;xHPjf*(z!RV=%t5Y zP-g!ZrDnZl@{2{b+rWj)rsU=M?zz!b*k%Sxms!_P2TJ$6R(vYDrg2dd`p#$@sOvSXjmS$#WXq8W^eYQ-TV9?5IuZo0n`2=*w*VW+Iu`mwaAAm zxv}Z+ciIM-5}lqPyXSEoI`crBL);ZSAQS+3{}WXIFN1(X^E4}O42>D?63r&?e4DeM z{?F7tW%=y~%ah%2e=>IBny23$b;tw?DY5J%S{DMZ0YY?;*KZ5BF~_048W^E6rZ)80 z3R&-1$m0ewKs_S3Mxtmw4}1@y)J(A6Tw;u5pq7VbO2ZN?tc)LudR;to20_L5PO%L~{TN^?wI(tCY7OzBshq!~)C? zX25S7+zO)O=GEC$2>>p?w?0IIab^UZZ@)&U-3Ec4?|f4^**Jv0`gHNiEq0;5uGyMr zwdL9E1B)9z0~?(8V9{dJzd}6y18?6@>!0($?YDW(=64yIgEg9pz+-v#J2^F;=uE)j z79>iyAB1gh$?W_fWj-MJ(7Hj3t=eo^i01k%`o2c`=zlNzA1c?15Aoy9Z=A_(gxNx)KVF^cp=U zqkV1+?);L=4`)M+1RxnCx>F7eY|V#SieX5os2S}C@CEr6^S8u8O(t=_kr|~?+TDu| zLu<9V@V_bPJH9*iEzkdY3FZm>l$yFuZio&Kf9tPUp9EV z++3C)PpQJA#A56&3nL1S8<)OL>&Pc3|VQNP`@~wo za0{^I4^|&+zB1SNaZ_pXQjaYe5)qZE5xCUVGSY|W+$L4|lmDbU0Xus;F=7W16T6-J zfH8R@qr~=PtM78tKv=rGMe}d%IEb9#~vj8e2E69z}PF#D*`Fe7Eu$RS8_D)Ryv|BisIC@ z#@hSOFk@2xk;N3|{C*nkFNd-(1&F?^oM{w&8@g%#bYP|8w)K{qL>E6h`<92zkxd*& zZ}$tit~)&Uy+>9##Ft6ow@~pzYT=z>zae0+-GhqS>EAmlK&xy6y8;p*7#fB?;sLra zYwUc!_6PtSm20WFko*p~Xq4a31=8giKNsBI<9iYe3#@nuM*Fs(Pt8Akb>>s!Ts!#o zPu+5G)Qv}B{<}Bm9ku_1`|52mZnP?@*_c+ntMm=bN3*?7gWf*^+h2C%0PwK?cq5j0 zOg>Jk>$$z+*N2fXB~p9Oi*f8$MgR z(_(Mlfz`ppWGVCDQ(c>kVe;ICk!IxXK$ZaxYc!k}#%3z3cL1smggh7nx0+Yve<@yV zRkdi#i=yw=tOmanbj5r{>L>r~KdI*;eKw{F2lEer#-b7TI_>9CZQgS-HWrO}4|t1l zlZRRMqjeh~k)lmKad5E!3KK=9HS;{9$lb~QV){htK>-Ci@uH_BP(Iv3DRhvwU zaeQ4{-OZru!kAGZljyrQ>Fbh5PSbLmYSJ6ycIlmDzJqME6NY{6X0SShKXO2GID5sR zrWFi-n6P$3n^S*mQvh~Tuj5?k2&%lm~U1wCVM4_x=dmzk1K2V;7dDf4TR}ht>}G zoXmJ(9rx;7?X7s`D5-i=+{1l-g@`OcgR<&ys#(J@5b!wHd(OJgGpwvFhVDWQ+kdjZ zRZ#@5{al;xdEAY^<2ic3b#i7qu4U`qz!`zo`~XD|ZCJu%FfB?>qcIg8jZ%dt%rZpUd{Y6lSz(XtdC%&zJXy#7O{wymfGo} z`{Eva$qr(A{kg)Ej^5YaO|ctl99|c`KhZUxS;j5#{q0;Bd1mNDnaR!y_NOEtAtTd} zFi6}Kj>Dj_ZH;wExy(JW)JsI=D-{eB8{>SV3J zY~qy&oB2zb-QfVU8vr=7sc6cSy+c{xQ-11N5_lhg8o8lIE7S+$GA z#fCARZv1_!A|wcI*&&Y`SW)KATz0TbG<{a*;AjX45QGbsg3JJt000SO+Ers16Nc9+ zL2H%3zhiAx`tI3tWrhv3F@hRqkyjPJCv&R!){`S;-rc+Z9XZzv4?j}eL~R&q94OB@ zIB+is-w~I8QW%N0Z>V{!7KCo{8OKFL(r`t%~FS)8}>7|ev8`Z+BBk1k(GEz zBjkutHiI_}f6yX$#kgSzC%@3-HxRvrf|l~m7R#SR{@r~wykAI8X$5g>5@UIVacZf1 zLDU9nC_zone21~d|8<7={R!Gs&^?Fpl!mTa8yl=JtXR{3?D(K%N}_n=W)gBexWV-q zIYGUutX~T7SUne(VZdqL9hNh!i%BNjz9Us0C{%n*L)TP@3)8gQZ>-(sG=L#+jkow) zK>d8T%n=1`1XjE-^J(LjOT+bziqWCcAHq074V=vLnc)7mNBDY*gyhIZeoNmQtF|OY zl`isHMM1l=M>rNH!zj*4EhRywp`TcbMfjBYGMPxzvLQkyhW)xb^gW-%DZQ!^Md#k2 zPDV>e{QK-70-hbl@!?!5`bp}7HUoF@6g5;PdaaTB&Ce4YCz^!yOsmiM*}$7+5kc{o z(YofV68%O-iSRI)7$C4gc}R!yz31^wzw)&nGl9FJZK3vzd{FA^`#C?0!-?T*U|XYt zXq{Ea^Ww*=TEB~3XYN)Wng<~p`5Vjb3osLNa~k4pedvyx67KM_91U<=5;0S5-grWI zlZo$crPPqN$*$IcbB(7-Z-~HsH}uMHy+Ln`4o7578e)u9@8 zW4ChPd0T&mkIxY=vqQ4jnvJ*62`sLp(0-bDAJHhQ8bRX`#Mesp_&#TC>hZ>ZFCSLTQv#?Lv7LqNpOO6XiOUAMDgOT zO#6s=Q}bS0hYGYW{DkpSA$lg_uo`}!OG3s6*}zVJNWz&kiA`jc+m= zMKQ88``zB}j#FB`EMw8^y$W7T*T!r;^AP_?a`LvCcU;KJe1Euo)lnf5)#uo>_K=B% zc|kU8QBpl;Xeyu;1_Pbp+~P>q+pCtLwJ|LY?DSmZ%xO8+_q$`U{l^=tkn~}GlwPk$ ze|{E?(n+P%OHRxpyqO!xj-5y?yUHpoN>q3mV!2nSjX_cR2DzV3C_%h}pY3w4e5^53 z=g#%%mGX-As-%wxxo!NZk-%kwOCrwO{NeO!2A9R<7YD3CZSDStFOzPwf($=luc5DT&0{6%TTo~H?*6+9~;t!eI!Pc zx#E#NXl!66Hs%0#j_GV|cQm6s)?UG{@gf&pwymQdn?W`@OY z7OQRV`R9Sc73H+1XIQC5<%p>%db2y{NiHk19@-$wqa)cdC3mBuCcEm-Vs{22TW{E# z*Ggx5Etp;BDVTuadY-p3B*)8Vw8{&b<9B4z=4b^(KoZ=w#`dBU*5yRUvsF@tsuMv5yK%`A+3$h4hZp z*bcD2@lGK*Y_7{0@+<9okqmPjO2dg{s!2(*wv4lob^SF4E+y2n?E1 zWXSnRLH1G4P&(Oro}`U7(0#@vWG{6~i)%($;2YSoOao2r#?5`DQW@@dDJXEobW|=U zPrTmbnf|9?ImJ3vrW2HLQkbt)vl4<@1J3Z~E(Jb_%3!|gGQ^DUL|3a$3)+ZEK~eYf z^8|sp%a|Tv_x@Pid6oEK3rYNxL~uE^d1usTD9iGTv-%otOcqt@g26F|r%=jE@gNT< z1A=i)E!xJSHZbW?H!5s$C!8Q;_3PlMoKv}D5)ux_ejRGQtnCb6$+hZc#Z1^5(99cC z^7De1Xzy`KHF@2Xj0hHzBKrOf>_a6S=f-{I!Zz_$Qy$cvjjl4`>0<1_Z(aHVACww1 zZiqRn#r@JjMoga>Bsielvij#D$nhShHH@_SSd^lCkU+t>-upq#xZfPd_u?rSTf@T< z=w-)8pK#}-S`|7~gAJ)3)@y46V;bZU25$OA6*Ip@&uk<(4d9ZHSwyp*a0Xto3n^rr zN#RGMYt-l*+(nvh?!^eh88-!bw_XA6@2W$%qM;HAl8w=ff8Mn4e~^B+{$JMNZ6u z&uXJR(i@5KM-=NZo+|N3$PZq9Q$c~kuybP!n;PA)^k6B;RK@U?tOB32oalsN}w!jv_?s?(D2%I@%6 zY4*LG52TK0ED339@&nmXU5MkM-RsnSPse)kv6bj6gz~oIM}}%wRx?^rLbG8^+LYn8 zvI1$tw@2O6HAr>fw@nKbAOAtsr@t~i8v)1s_If~^{)#0XV)5B2vr>YF%GKU9q(#~d zjL%??O0Xy@Zem~}l(9|jwyqdqJQC`C5B#ey5%&~Aeug8@NM!tH3nVH# zV+4kHs!fU-j|pq3@Fla@D06N~rQwb`$x>*zbVyCjX=mXk6oQavPgUl+I2P`Z-b6~n zaFmW*A>)n=Q>+?joI%0;bxPT)s6nk-3~$$xFU<;U%t^c{mg`z6c5g!F6JmKsu%3Yk zR5P;10pp08P&n66FqKRqviIP@C!=whm>weCk|Qs27||+XPjMQq*KtVnJ?lNL#n#k4s0X?T;W ziH*vvLOY>Y?#8AzQtVkGQOnYiQa){hR-G~B{;V;^zMaq^UDkjLm}(IWWT4$Q6_Bqe zf;Sgxr!%Iodru9RrgWXDy*%9%ZApC(yMdcpUVrx1>5KKmZ9Oh$qOiWhO+zS`L6-fL z`L7*WGHSV9KlkD3+B9&%bFCFfh5#4;ZxOCXM1s0Eu^h8ae6^;PI4R zxPO*n5|E$t2KE(sK$SCGxROby^>TNq2ac0G1gQ7`*G8IaQPe8-ssRD7E+v5ajF#0A zT2s>2Ca6wX)6K|cF|b$3*6pkmERDEw6Hy#EWngKdM_-*oAmaq-3=@CzO+iQ7Yore+ zZmHVs8U~zH9m?ic)iq9-JGL85df@)Hw+>1%7sdkLk2FuzAD!_GyZ3qc&UyjwoILgo zY=w@BJ}^2g3Syzx>X@j3`Z`U=RFQI&Oi=3$bK3C7Sv-NgRH=yQs9yq5@6!y+pvs}uj$q4Z{UW4Y6%=(JD2gr<3xftHVA&Og1o5$en zH3*@=OYE^%MXh)WfSTQo-lyv@8I4OB)cT2^kY)%oC`)UB^bw14XGj!%{8EupgP?08 z<_IyIR0T0$*%fiH9s{?YRxwPF?Y?Ps3A!YOr<87i+Ma|`H-fMF@auIOfdH@m_r9nP0xnX5k)o1UBoP5Z7<$D z?TEfnLPhU9{!-?`7o=ZQGYFze6gCFlHhtQhfz>z;8!n~}3U#A{5wWU);ojlqX!`*6 z2C#LA8E)R-2tA06!msbp36IGIS+zA%v}Ig~_erM$p9iD0+slpzE@^AQm3Hka@WNHZ zNL#hjPWe&f>UG_r`mbVWr7^e`uIaiY9}k&7{HW^EXnCT@k&{U6pu6eMd*WCr7%8Ft;+?ZtQTWC4Z~dN5M~Bd)<=NUP&Bo7{diC3VkX@X#Q zUbBB15e8YBHb%0v{kOQyH_u>w%*?Ah`O0aWUCSh`aHFNK)?<3i74ww6wjk`Mq4Zbx zCIkB;P-&K5%S&1`eO*NL@I+9~)VZ^im2o_5iu?`iRg~5;*VZ?J@rhwjyNW#oPnkB< zX~^Y541HuMC8u7K11Cwv42xy&bT3@YZ6bfL3wT;G>C~>0as6>KVCC}s$L>t z_{J-1_J^3DOvVf;ece;xd_jDP#(>~t#@96_x=I+Gnq||B1Sz-a4QzksE>u$2IKBtH zxkHF5ce@?OxAAEm{|*J8RwJl0G3*Y?XRoUHR(Fa69`;%gaS;k>$HI>rxRL!T_ zs~9D{1eaKGl*_GvYWM_$HVFu%oK9WIdmhJ%Mn0E6=5yZNoYTk7X_cr4-oTh8qvx5e ztj%>&LyP4YD*lKlW*3^T3r7lFS~krxj(1U9RRs(g_UaQNyH)GpXiGxzLj)2s+-WKd zZ8r_jz)cPBV9?1a8ch3?;X8HVk-oc%qU2E?MsC-riR-9Rq&ZWc3rKRy^-{(?m!2%O z-w5k8H*RM|l}XU)X&fsvY_uh_Gjx|=k`lHnp59)8V_nxQotj?5z4_32r%6Hy@;VX8>H#)8=&ZuqIn$9a$*Y|np8@g(`!2p>+6S4FeK zu-9~MBD5bb#d+nJ;2!G-!-r}Y@>QknwW+X8jnS)Of@g-M%NhkpQ?=z6!ErkHZIYfG zF%c2%67sX${5@>Bi`abfmbJ(^V0aZCARi3)%_aKOpTN(lMl9 z?%+Lqk*z*@qJfHzq!h3iR9Q%Eohoa@$sFaVF&h{j3v?N*iu?)hWQZpT{MEGCKy?e{ zYrUEORh z;I>o`oZ;m+=7xZF-742f^6`)PY+E|d{~~#hW=zWqxPI*`7qnxz)tAG>?ZL2!%}#M!i23_uEymw z#Ki5&PoZe3KfZ`Fk14NiAEhK4syo)T`R}6XeW>%JLC7^JrCVZO6cD8Fx)zvtIaADt^g6tdN|Y%n*E~!QSK&%)d%g zD+Nd6CN#1=E_&8oO$sCd2-*_%; z)3{72&Q>>BnjANiQe1x=9d0~d?Kl&JEE_qdA-$A4-AwXwVTj4dQ*$KeC^`<&HUK`{ zp@mP0bk}jkrSJ@86=jmbcpX<;kap=vxX`4dL3U~|t^#3KjlQF!_emIgG+Z*5lYq^r z@xs2M9DJe{2puV>^f`Y<2TYGdu~zdTdvfxo{WpIBEEJ;c!1eS?tBe*LDcUI(odu68>I!Vbos`< zrZdjv!PA~Or3wkEY%bC5_S42vh57V;wv)uI3H^!A0Aj3P6&ZL%&8ttp%55=!kE@Vt zJlZ)EnEL{$QmR$RfETSZywD`5!-j=KIb!QvNQ_1}B4*S^c9Ad0=hT9_h*b%XVhWqn zyKCRgX~v_!Ak$?tIZuJekUmn#)nQHSQgVuO3YW*J66q^5UNdev(}v;_hbw6tng*NW zh`n6w22*+V`Pey!(LTME9J^OIfx8z|!FD=t6?UYsFw*yXrAtU_cNjH@#dj3@JYAEn^N#$9ue0yT7wBWA#r)ntu1yv zJY5uCn?z3;(+sQ;q1*y*)m~CCpBI}85}H_+)8`pY6t@9X^@yG&zH*O<=yyhhZJt&Y zCCZt-?6pj6Ne($s6TLmRuM35lEXik)i_|;Ig_`I|g>B8ItA>g>gGp_gmVFs$@;KZ$ zJ9C2lzS4d|8O5e)oDo>sgt|{mXjbdkoe>xlzCw>^IWKsm;x*`ln&sH7@e&stwN({o zIflMZtYP?PlNoBt7L`e>1QpL1n}~5v3k;buSO%!sS+7vc(Mq%5$d@YP=$Ps;a{Mi& zMlsT&SHR(3R02X6t>Pt$PorI5A2r~{No4Fji3YKxUr^0#NB|lvfS7LJ_}D*b%v97A z5=P?qGs1U|SGKh~N?R==8Q(}%@OVvsNP8@8iHv)x`wh%QA7UoPZ&VJmvL2GDvz=AH z5zE;VvR(8-CJH$Q9Nv7PFxCluS4(4Fd8R9*bWl9&O8Xj|b3zmW9a$99*cwJHDl=Yc z))Il&NQKW@Vu~~&y=*GWpCGtDrneGS$2CgPyQ6WYB1|V`uVZ;Uqmhn5Oi-i0+hucD zDAa7$ESW>rg?-aMpo}C5!xbOB&s z_O`nGUL1~V*ym^wl20$^)7h?+2dt!Tor$O8x6|mA9Sy1RZ3h$c z&hqmoFg}}YU+75E@C~ElB27iBF1jj%xA%I;x&mAzyqMJ(m$ODaIJ@DcGI+@k=Qlkr zte2`E!b6;}WwAa9Og_=@ijUA+PPSwT%i@Ay%1rDR0J;lN`OW=EPCF=60q`(SCQU!~BdmP6%smvV7^f@+XNRnn&yM=yF z4yz!%(j6Yeo#vPD9MFzMagK^PVGThk#WsbVow0Q~i@Kplk9*~aN@#%*L{Dl#;+lkj z?OXwQMu=>t<#$wGDMSvn9IUU=!fR2JbAoN^lKSq(Mv6OOBawMuA|j!Q=rm`i>moib zQ?u-qz+c?5eJE^#&siqL#f%Q~wJ~z^D^Y?PDHFF=2!HB~<1OLcqCT7qO#4z{G1t^0 zbzom75g2z_7u6j?#P`aL;^vI|8;`$aoEBZcw`A2!4EX;rc+-5_weo`KxkoYf19}ng zvUox+?L1}QSwl&cQa&;lc{OC4;Al0nA#uvN=A2M~%rB(%cWHESTq;dCuBNQjjoA@K zCet}v1_x}DQaDNH8rV0^pANYp!4bMT^KsA5(h@r2*4&5?zMuan#6P&A*xAdrxuGI@ z1LM!_vC8T0&zq9Z+#KnO;XDe#;)z5+Gt|=0wvF%*$3$~yG?@&h!!nPQM=_hWcMoeK zglmOmh1PSZc*{%7#PZ5>>TX6iFZA_uT5l$fLjAbCqHCmvpgPl6S=1bt*@t(~pv&s> zqKaP65&S3!6JA+2PtkPVi9Zu$!r&2~ugUFw5$EzAr))Tqo2bz-+hW&YS9W(gV`JI5XwHy9maekit0|YZlRFiBlyPuGqPXwDdaFHXF>N+>hN5V{y*HTQ$}2 zz)@9t*cPtGkz{#hRZn?xsa8C%Cl?ZTy`&<1#QCvbUVp#s7g;5WR6~l2qv^T2P});W z?7)#wULW!b8YsA0_FEDi;*X8jRdnVRyy~EeSwTJI`*6HrF6U@k|AL{qFxYV+Lf2qQ zg@Hm@ULMeyMJ-t+pJMKdnUV>sQKG?hGd;shJ2O#jW1t6f_XN8pj^v5h>Vw%)8by_D%k4z=P#g z3S2}Ja^Shw=L(2lP83Lb^Ytm%Y)}oyHkk+W`J+}b} z%zcJB))P*SR>{?J9t?@GG*?GWk^xIKQqGtVOicEWID zI?Rz$JYWIXNKVR2EX~7qL728ZWoAfpIHQNIDdKOJEzj?Xwsz{)Bh+ep{1`4CvI(&6 za(GEM_zmtKyervLIkj*lq}Xk%XSI}ge>kFH_EbB`&LHUvLwia3`O;J;kS5Qvtwg;w zXQKBvBW0%?{`=o;6ua`@VU~L_V`kd>ZRa-LZ~JcS{kA`^d&aLLmO~qMB4A6Xr3hf_ zl16W5Q53!Juv?h9+-wA~vKS)Abrtjut`;h3@Hw34cAH@?G21idKBM`f+rH8VRIo(cpEEt-|8k8_KQ4Uyzel<(G7 z!#uN{yW9QkQa`7>Q9eyp@En!DCJdK3zDRTQfs|{v(w9U;;yA+G9HcGiUICf?k@21kEbL;&L%A1 z$obUFfTj>ll)p_MZA+QRb?d0JF`_3bF?8#{9#LvI>aWr!^52> zC-OM7kSBhz8JmfNAU{VH(zUe8Fx_)#qegvVMSib!p?(1u_eoFq_F|=3*k#n~gIdtB zpJTQn7w?+$>y6MXTfO)42(dqRIcnJhN8N}24QdNH60*Kt?(ctE=*gvDZ43geLcKq8BQxAE=cJ|mq^aYk2$)ZMJv?l|Rz$2=D&%`o*Fnq@<@b3u zdvlq1B;1qc^=Rr1505N+m!7zkHHo#EEl#XI+#9HXoO1X~3@>W7T4%SM#3W?byA5Zc zOA){K`NR;fEH%S`od}ZQTP7yC;Sq5ot3VazMSpG>r(Xqk_?taaB@XYMeQQ0AnBjt= zcqh@w8s3ya%q3Y|9ly7H2&V{HC<;FKjPt(Cm=Sdb#aYKT47l`U(c|%X_zE z06agYqQW_S7EFa6={79Hchu*xNCsqqLI25!dSyjF{YHAYqir`Ib6^Mrj07t40hQrl zqvTQ&Y~qLYagi>msrf+%1*_z8`cTsInklioA)@X1iZuN>t`1?$zO=lA`jLqrb zeU(H5d4J0qVMf6YH(fO|uD((Ms5_xlcz9OY@=&Uav0iQSzfUPHjYeb%iXa|uut6*2 zk)To`W?DVtG5$z)MgZ*bi;l#oytgMQIw`y56V*tL;_t6IZgQ2F>e!?g$U_ac?0~j> ziulemX?T(;drWYL5iJg}!ysJ+H#l?M7`n2&3K_~xLx@ftGR@n2MkU=AItTbW^SAMW zlc9>P019c22OMJf`joXih{-0s)o6J<6y`ti^bJfxr*4DIe( zallm3(}D)of<9$$Tp_>A%gd*c*CZ%|2XxMz)IY~gGqtJ++0s1J7#a=G}( zNOzd$GR&8?)1TDd8qiX&mhXz+p16s;F!2z@F7O@o#vD-j&mscH0Qu+oD_AFdLX8qTJKAk+@J@YdxwlX0c@zjWj9~QF2 zY{bL4P0aq}Gnh6c?BS&Gq$}auN!jHY3lNId69z;hpK%%V;m*jx}ObDLHDS)EDn{OS1=E^bE7 zeH8C0|C(0b-+q2(<-(WH63!Nrk9v~7kSwP*WdOz$Z>xJZ!*8+RzO!b}!*FJ7`>%RZ%NB`ANZ z`)1;(dvL-;JAL|<_$Q$^68QDx%lSFDw0q-H{^HDhVms#wMs(j4s_@$RT>Lkc=V_06 zpm(R3F8tVgo!`Q|6!$^XLH$M2%b+_%q%;r%KHNaKA}!boduV{MOG9T=>nbcNw2pg9 zf-YQAc57MOa<lQ$;oR=X1!>?^uiGj#bF99$^L`Gj-%R5wwuL(z+iam;G zhM(5!D(PI1y_wqfp{g(8aSpfuHf+4m+caHQJKv^H{3S1ER2pc|%DgqR^9gDb<1_F+ zEYYQv5qlbvYd$FLyv3p$QvlcvCV;rBEfWM^oS($F<=r9f!&I^krR5{S$qVpQ9?x)x zJCjxC6l_t$33zA3E?vEhNte%47RKc{fI~Ttqh5BONQsTs?OR|ws|pB}dRo@|ZTkQK z5j$rvB{Gwd*FZV*Y|pt4b>c^0ORF;V1l6_X(uqYJ?f{t|ne@VNplPFE4``KYc_bwBQ)9sc2UQ-(VU;T56sMgY%h1QKcqQzW)^KXp?U14T}^rRIb?(Y?%blM#)HdzY&O zNkG0G4fVqXp*uYeh%s2CUGW&$w&Ff$#ndU=yY@`g!oL~<_>EAoM1qMx_$M5n$h8h^ z5ItozdaTT~9#e?SQY(PEcMH&{9kjT6Xmn13;+BK}(sAW#nr|ED)|Ag}eQ^mu{0NO& zjR7lje#8Xx1{ehz`EQHTc-Djs{CPnixf`WVR^lS(@Vn)zik7SaP!Iuzxqa9)37=R=@0_`qmmj62r*nF~w2ErzH3*ge-7bo8AxTcAUj@*u z;KFE-)H)cV>!9?2N(N?-$6OJ~N)#j7r)Z8>Xz>mTN_SOT!0vz;^oWN*wGI4RxaxF&i249= zd0@D+{ae~ix115mPm1bXI*W%m?%yI5Vhf(Z3C~a~-ymx+J!}nB&mufUq2{@?gQF%R zlO*#wrBS`5-UOBkUB~FB<9G6|GOv%50KPP@Ez4T9fDDzTPAft*xG`lwPg$4wR+g|8 znN&mFg@3(L&2MF+^eMx`YpcwA^%EUrX%tVbqfp4%sN+u& zU@NYkVIJ*H+F__+nl2tsl&@_X?dIMc>->FR_558RpQUW>j!Uvl40kh|m(v>0DEuT8 zd!lioP5uQqKWp?-5Xi^J|8qgXau{R&zP{`P{L;WsC*82S_PR~yPt9`xoy>Oo=OvG< zqIu*uoC)ShR-(d%nfLwBpQPoC)TdZRXt{@2JAG=%g1(#6Eok8~jV5#i;>{csb81{g!W6v$^v$rUP5NTBVv2H@fUFw=HUzF#q2`mc4>?*|1%qGH+Y_W0-H?}Fn2JEJ z(!w!4=QM1)jxgKyuFdA>9)Fmcw`gJipdHtOydBQGQa$1{qG5*69JJZn;9B!wq^Ui;~CMRG$77MvvP zwh8VtVxc+f0nFs_x*qQvuaG?>tc_%F%&o-lhAXNFpH|z=wxwbrpO9 z;H5lNA`ThF6zY7uB}Ydeadx!dnyNu*0qq|)9EOkwyA8kAah8-Lv>@pYL;Ap|7Cc0R z$^Ek3)QV32O~B9cGb!yLHIFlgD_T2uQ|>1Zi+h)Gu=mQwq$S2@0_ZI5dtfwPdbZXa zssKjKV3d(RA&^pEUcZU_1UN})UXnThiJMYXPwZ9oATX5Z(eJm%V2mmC!#t($rJ$3p*bw7|ep31HI{lHI zafihLwgpiUA%f?`ld9nUfH&P{u`Syyd>lPbAq`m=GGSk{GFs?LLCYSg`+!3so%fN1 zOFZ`rD2Y|{wtF&;NYJI6#aHfab1=pF@R}1uAiRLJ*Kr%>@wADTeCy`LU3W3huBKK;k>I$ORTE zTWYb^+m+!8d_oG;rTL6nJ;>ts;uEMTwCj5LqMIUIQx~4fDCpHyUf{8@)WeviG>2d! zpe>wM?2l*-?W{ZW2_9V-RFx->3!TvIeSV5>@F71PSl9B;JzgkUT#qjCX5n;+Lk%Xx zWhrxvbIWK>A%^zrJu3=6h6Ztz?SB<|@(YTqwF1>^a- zF<>*@0I$11&u-+hr2bW!F$@(C8p#ts88B@{8l-C=YHD1TSSy7gQ#q?4omBlpqx!7e z9vosR7V)Rs=bN%u_k^Wg52dAxW>l_%obwZ(N}awks{O{SciUm=2ps{MHO8c#(KLLFf!MQ-V1p(tetIIlz0%MkazZ03jvA< zG{VQ-CCw*k9vbt9(HV;l)~}o3E_+7;uSs#q0`DBRCN(V_nLKVp6~NL^o$ns|lNjGs z**g0TM5>{9M-BrxV1y?rf_P0qO=#Iox6KaMgzyw1=tcS+()hY9j~`w%E!NJ5$|V2+ z7F4R2hpa!F(&eaU312CTgzhzH{Zv5Ltc5J;cCb}bLK3_hjnSyJ*_%b1)=>nrq^h{F z^yN@NPzmz7S`LI3EwhNER{~E%5TJFTz;6e=>pOly%mMf}3h!OGLWGZ0h9keOw~8ZY?wDgf3GuhJLM`IbrSY$k%#zN}>*9 z&jf9B3LhYk`9CmDw|dCml0RBSxD`~f#o7(^zSd<@e}+C(I$M3QP1;1yW2#G2P(|KM z+qE$McDE7Bb$gEu|E&@owWsN~J!Y6YU3EYQC8mk}W?ryXkzvHUIw|`c6;d$6^@b|$ zE{@8rG~W+3qH{kCiIRJKYK>|Sih+>QdMjhR-sk8d1<+tff#5@9meElW^^$ZucTsJV zuHRA(YFy7``=>y z8PSmh5Y(`Yw^j5_Zc{$(hH+`AGw1SDZ#`czzSB0dtNaWG+v;>& z-Kqr1VebIgX!D|*^s?w%@ICTS{`|bu%Iqq}vI|0n?$|%au^ZC^T_kZLI^`k8whUXAU{akmzHa@I7s_CR#qdJG zCG6J3_R3@AX;v6@oe(>z?8u$cq56j{U{(_FsNTc3II*P~o+JV+)hn6(jryV()vuN7 z%biXB(T18#cH!bm@;x!d1l>U!1FtQTgkP$8Lj+iz@Ph7E1B;5zv_BZ!T*wA3Tc2IN za#SX&t9#QaA`xH7muQd^m*vM_UE`6)%y~z!QaWD;pwauVilgIcC+*$$COY!?0YUYI{+t)HK`q$@F&@{(HREX@fu%kD znGWQ}w}L|y-mN@Gnz0(&He#hnLBL7GpEdWOo20hx_uKsJo&YMP$TIwI%NTJ;B=Hsj z7|ES8I*+6tHV`bMU_1L5Fz9)%uVA|T<*SazN}=4ryUa79w`g&-$~IMxk%(xjb^K+qRdpKAI-21hHZ=s`i$XC`vH{2%qVBVlv>8CePB&xP(9&D^Mr+NMm%G7hL}I1Rf#;>~2PMsGYC zEGVg()$}DV)XVcIFGWRr3fWCuw=t@J(g-V5=Yqy0h$D(*;d1WI-HM<9*Mup!R5Oln z+0XGmBLKzw__eomBfK!jyc_9x%MpIjJ!Rq2v5+S**Xm`;-Vl|a{+5DbEB=-5LN(4Dp{x1ocJT-04g9pz^56^O}>doW9*4zOeca&l!liu z3z6X;QR}9`lM@CHa@BsNDBw10Z=24@H@N-0keMjILszOt{5C4SAAXtqSf7v_JgNFt zl4+}dq>-id3*Vj@3VCA1hP+UGJ*{zS>Vm!`c@Aa<8RUJ8&p=%P^d_ORlY3FR{+4H# znsNyDQR=^HXgj^<%m1KLPZSzDfz&b4#1LE1GC`Om?OcX`Gcxv6L0$+E z`plAkWpB!ej7fqPd-r^^;U*CcSb1%@JYfYZL0PaTT;ox;W7ERAyvYDTe7xiRT7~$> z7`|z9Io*#-&vL7)S9J*gnUmZDXf`DEb7`3Q01V-z+8oaUckedNlVvf}ijJTuXqMbj zg*jx(9K!!j@wFPuK#fyagp}BdmStquyUwBlkDt>U^{Ed+0C;*%^sWNB@l^PfSAhg^ zL9OSYO8c8=IelqEsP`WC#e$1_KZW2Q>A+ujfl)hVO z_vzU2TBfazi(y6xT^jjVgdaN1On`FCFfc{_weWM>SUD0c9v23vf~P3cdDM2-qzRqR zwRegL4f%T+MB#m({dD$OcW2icPIb@88KlBJL#LR+S8NcVZgwtlMxpojuh02vLWUs| z+*91E1?-$J)xBZf#&iWSQ(6ijU&&in`9z$nT0^`IM9bQ>AyGiC zL4Dtq-ANCwiXjQqJXR33Fi%)p1;7Sh4_@075s}rC(hL$N|G<`tOzk)9hcg6Ek}@Vp zi4FPKz=8Box!*vL>e{rdNm7<5RTDnxfq>=BU1?E4+**H#lH0r|#0vN*B^6(pz*FtY z|5)vom(I9T6Mncz;n&q7yua*-`&L<8@S!pOkF)%JHTHdp!z1nfxzlPR(gRN*{?ix~ z{cJ;Yd)TRB0E9V>5FAR3y009$6>zQLdP>lgGNDs$#hl_j;ZZ zi#uZ?O8Bd=U`Z_`;Z@YiGAwnF=YjJf!&>sFp%(yRYwu<2mgk8gy<5(aS$_F#%n~wI zgTT=4Rl&zs#(snz<<G*3PKNs?y#L)TVuF& zU6q0`56}^J>PgS1GC`asvd*)ED{KXRGoj6miox=+vLLK1oX;x9*BZ!;x^hs!LNy#( zuVu^&M8aDBV){m1B)?Su7zK6)Gp`{o)=e^nbUo~!^1LEXz(4gxQ*s*(?9zbEcMH-N zz2CO`=Zr5X23);`dfe>=(pl|vl{Aa1p9sK(3eO6?j%hS2z;eb9Rf}j`+Ord?2lM2T z8gajHUTWJLB!efCpT|Y>_BvK7`~k{`4_*V=!l`SifFa;;MC5d zwL_^D60Ez2AQkYfa%F8SxJ}yfLPOz*Uv<9(JqeYufl&C2)97Te$t;gq9y3j1f-c#l z$3#oy5o`7FtlMxsEu}r=jm^ys+hhy#*@I+2ZYEMBaYZY2{K%hzqf*0C-F@Mf{+^kO z6lJ8aUTQg!2+Wk^tLoobtCUH#hL)QCz7SO~KTvDVPp`r7)dw9P_VwG^JNSxyIsI=7 zQ2C4Ih~xNQ&gu^c=*_hfbZ20Qv_g+l0RHt>%ctrFAUo(>?m zr$s1P{nbMU-?9UqL?N@GF~;c}h!d7&iSL@wSD8o@`w~MB)n`{%G$LV#qFHWZW-2C$ zt*@z|gzEvb4F&K#-=655FW4 zCf?wTF*9=x)IHWtD9=&L&U+3)N478doDt;eMT!o^Ytan)+Qdk_)5TsoK#fkmU=597 z-6iJq4?kOzz&oiNpNbEIGV)w_0VS?UIPNm(#iY!_{v)YQjXlhib_q&mQqr<&{vy5z(V;JK;ot z8l4f!$Kc)0(EwtJGnU>FpOinb13GbcX^gt75{jv}N~0c=JhhD@|Dut$cR5YT z5_-`l?e{sN8DkKI6peZ~Nc0R53bQn3(dz8tAtMdJcW9sbj;EH)#6&iSPpP^sf77Uc z?tEKl2+-sl=s8Y>V>EIYa1(W%k!7hlbTM~6WJa^0m3DVgy79pqGT1zi;K`}!Ps zrGdn6n8L>yS04@KwP)nkfH73lBIcl?LzrUENkkO_yPZ@|SMa8MPaRao5s zJk*9bECvceO-C6+{WSn_4_{avY;wl;n9rt9ptlmA&Q>7%(nNrJqzyk%+obGmpvmrx zM)H9kxK=`9rvAAT2TzKLDPj0q2!D4iUtL~FGUa@xbYQarv)4H=Vf;42Ppz(aaAdo^Ul5>-}b8yezEO?54Y)xo!OcjH|m@x=sJ?UIKbY`R2E7C*-F)i zIK=F#P_KyuQ}e$cV!Rl_#mK6S8Ak{He(d{gME&$7_-bK7g2SBQ)#tMmRT3TfJMNNJob~`ilTCEyR9c3y*KX zPm;6BX1zL%eFtFa^8ISHXQ6W#jD-umy4N^^LmP3P2QwfS6SkOm-$J$3Whj2FbWm8+ znz~tD+9zDjy4A2&3huO<)87h4C+tQ;(JnKX0qO-)Hkair9Stu{JKcw`}i5W4Z?t1hezO~ z*azux8EF;g_BBGj2}$|1GWOJsLmpXQ|M^vUSW=U-Vzc?Y;@qY4LudC63oX#n4b189 z>qlWJjel=&l!SfZUH1IT-v2hz{U2-Rb|gNmXbR8uwTC5@3CmWaumL}4yJ{2nmw>-6 z0hc!H+U0fD*_(w5p+TSb!>w~}Rqwa`6&YF6MKqFDI~-+RtAMQ2W|sX-ZTZA%hyCM{ zOsrZDUp?T=!7eUA?X(BCLJ^SDULD5w+y2s3-^;Z7F%vRfo}DTscnvwnzF0emX_!k| z`ivBGzj2F^I^30aBn@DHx2t;h9}%l<&IL#PP;=7xZ{+vezFZu+`dvYST}5yHY^^%< z*D6g(y4!k6!zlauLxeQr+V~6kE&N=FqZBfKxZdMLdg7-YjM}|}ipC=g zj0$?x#fv84LWjfEYxQnPZrrhFMEy#kv1@amG{kHl0_767Py;8j_Ot0aNjg_*YA!j~T>{7=D(2KKo={u(w zwg^|%8@y7XQ14ux&v!0=>{}{?{B=v=)#|nSl{2C4?ghb-vA?`n()^iQ8t7R4Uc@E! zZ9dcgpSJioeB*C;++gF>Uo>K4NXci;HN+1>pj#a5=TVM*o(b@=sOO%x=U;FuULPC# zMeX>DK=8-k zZ7B8!wRk&9N~)gxX+yyN0&sQv)`Nz@@aY=@WAz1p5oGnRn%p#oQF5Mf_97O~fXubn zbr$r%=nwRn+Je_*jh+2XP4mXb^0A90f3WOa%ydfQP33_T%Rm2iU_N%W3;bkg>c_?( z|EiilZ8h3;a}9J%#_I)%$k%J$ve>gdGDEcPb>HjBO2_I-ha=Om-LiM#5vgMrw>;AE zP3`pCKWZ|o?eH~kmxvk{kg(PTf=(HG`n2P!xnZG`-otJ#sXaSiZpkcd_8P&zfjows z+0uO^^@EIzn)=$uD{gqg*Y-eiyZ{zFnQ}1LJuYC2)js)g$tR8iuQw=1l;f~{?8qmT z8?K2EMP6|%a~?kylAzn=^$($iV4pwoN%gIt#~})f^U2FnkyCyaG0)8rK6A7yKb{G8 z-+pcD`OqS`e9-I3f3A*=U%lV<8ThvcgOd+m-0B-%gq$>a?ENRC4Zbk#R9lf=&+<36 zH;h(cFDa&6>LAyq;cLh2{H>oo&->OJZhv<8EBomM{Cu~`sUaQ$e$G`T@nwn#lM(*Rcc?2L#S$m52`Whq_Ub+?T_ zRW~M1Kku8{`v=R})qer6EKt*Yey1PSkJ3CJGva(+@WFP;u_x>i^g_~GFK_)FJRhQb zPmc1}+TYki=~kS;_}(56{Sf*?`Yu0Dj|_cN`s4i}?+g}aGr#t3ipSi~A^!kF&+7M9 zOmY6sp=0n%Bc-`ZLU0cRuhL-pgte?>o} zKcGHG`X=6AvLD)7DL&bLxcxBw2>zCTuAUFn-@JkQFnMca{BwUxA3%Pi3m?!A^&`Rh zo5Bpgvj>z?7~F^JN9o7t@#l}xpQwJB{b}$#9uL;rfAjv#9zjDV{{T@R(a+RBK=~i&NAyRF7FhthwtW8p zv4_zgMvm3>)q6~^Kcf$%KVE-8ev$n#{So~USN6?;OEaZEv4`m3u;?AH+BVOC`auuV zkElPTpXmq4`5(}i291{A@BNZKxbbU?POokGPXp->(T~uNG2}l&e2?i*>W_i?2lNhb zXxVIyf`4R>(uJzp{rm(xN09w!`h)sO;Q61`AEWako{=-gZfF}`JdGvsD7oH#0-1O&+O6l$B^;R+WTGRKSn=7 zJjamz3GzRsKdL?l=pU)Qv6JF|WRKNDDT&N@c=8B-oP9z4EdKyVK1ay?OH+PnJWuSA z^hfBlvl$`%aQZ{_=ky2ZAL$3_IpKo-&LGbt`y_o3iNYQO>Q}iXbsu4PQ0}3TG2!F- z82+Yyf$~3~KT!D}IqgRZmwd*Vw-ZR7^7H0@V*{U~`3HkfiAH7o&k$-o451FFptMZHZ1; zz`^231NjfMV6NCho*IPUp!F=GHql}Gd~8_!YAK78qYMo$x>*=t@*hRc!mGBHxT(8} zZ_^K;JV*5zr4cq3o)7e!TNvxBTbU-{`5)PmNFx-QTrd3bX=eO*p;^5F+c5)0x8cWx=Iro*5aLP8 z%k8qdW2BLOU&>;n8nuARX1d78Y_cN@A{E+7me^_7-7~rn`)&LG0E)qB*WERfFq3Ry zRkbdd-;h>O%5lWgDtp5Od`Tc;V^5pj z8W;~ZEPfVMgYdF>#4Umn$rx9- zXT2qp3>;_rtIymHO*J$Y$Bb>f~9IX+syN} z2HD)ryONh*YY=E}Il{NHinBDWEsN?8DW^L*V~j>TOu0T6ERbu$A#XFy_{41cM~CFe z@v~vI*{FoJJ>Kd)TzYXm>1%3P8Rlz|#91reoc{o^x>5X(4W01>U2dVRR%wJy*R{p2 zaA<6f*%mM~XDY>!2$Ij(`F{DIUb|r*M{_Zd#=ybF=|1-X_KEB^2Gj;(IFe?@89&~J zeD-^x0%WeX{z+Nl&9M@OsVBxuZDF-MnX6H?+ry^yYjMH)gy9dMUIHJfmO@Kf8XVx! zHs&@etg$E>;8QBb#ek)hF-G6DTD=`$Zogn_(sNVT7`AssR>$_dSiDH1QI2%Gs93D+ zC2EqSub46FN&f&Dy|Zm~LZ9*pw#dZNNwk`Vp|#bS9k7kbM?18XJ z{{SiMep@&0I&}F!Z1&3|*3&b|y|wtGs@F#zz8~@yEIeA0d(5ueZ+px_IxKbhB^2r# zC5#Ll6OyL58e^cQEUi>8I>3*HC39erBNHRlSTg12z^eDD{7G+(g$rc(MNga(lxBS#agj1|W0g zzSupgg(lOF#r6${MG%Z|P8G|ntsbhgnB1)JP8BDACCe*3OEHQN@BEoc3;S0A8bw7 zPAtjy1uVyFD;O9bFWl>P*-kj@%W6r>Xo^&uRkKXkgLY!3<+msKv{gLu)L== zk*2h{T)Fs_T7QR_4ATI!5c~X4wSsK zV1bX+S)cI;+97P4b19Ej`IXq(#(|DyltkEG=}h})N@1dAbTPIz+_>7!vAGb4p>?-8 z@zQKHrJS=`2s1}Pn)uzAn)&V8vdGN)3@8WXbLAA-b73vBtk<@jdu@}Ppk#WuY*~KB zR=Ks?PDaHP*Bxp~n#mr6e#=7Jeh+rd2P!vydB+ZVzc=E9S^h0*ZDnSDW~nwNQ!Fg1 z+F(WmpsRNqU6kt(d@OfyNsnyT=Fw@Sk&U4XRIY}rKg&) zyfH~LVr+L`X*RfGE;}n}&I6sqq==&twI4(dR>tF)YE^A!J>h~Z+~w~KALUyjvAz&m z(QBpbR+`)eEUk!adrO|}evz=2+5C#e;6~`@n_%s2Hp{Tu?A`bNXlW?#&$3nOG+EeP zI~}9j6;VTA>vHV2Zjozfx};Yu{{S7ZL?B_eCjQLNi%nZiSj5?PZ?fw8U|a?~E^WTo z*Vg*I;i7wNfN!?XingMGs{^EK6J!os-GHTEQxj`L*>-P*nvGzg75>HfAFb57BG!?? z;E)q1Gp4ugS2oRz+MLeo69`#AekOl1OG*k1jH&Gi)G(HZRs z+gMko=?Eq0pXS)ls@PuqD_IZP0naCiWf6#(_KznxG((w+%6x%?^Zm$YgDR49JDlLe z#s&}5lYuVPt$b7^x}kxvfO3iambjKy#M?K-&TD1aD-L8zm)hss-2g4TR}IalHe7)Z z+##!hb8VHb*7{4d%8FmL#>td_5AAbovaFHFb`oj_=9cB6R;V>eB%5if0r_pu6&Swv z**fiTtf#Qp1eQaMDxb!$v$SczEdB@{Uj!QaF;`#`ZRdt2K;}$b=vgkw`Z|C|vas5* z>T7-o&6cLPl_a7uE8OvB!>zrHWmZH?s`b$b)WP;drLX{g#j%~SnepqZ3sRS|A!B9y zw?+5D%J3U=HYT-6AdFUb^5kTA=H}8m%Juo>LbG*|>uq6wk%`A?*%_^EN>gp!6}X`c zv|gWZxz2McH?8a*_Qnj#HUg3FKBb+H3s zsT@2{cs0xhLf=JdX1XHe+eqO{e&H zYeM^LQ>|vY6}8+)uWrhD=6y)pu0Mi0jkVd^bwe{GP|D)XcHNrVknLrHEgxJnt5&0> z9+IQ>%lw`;b}qVgsG$zBmszUkkGK^|L2ho@v~%k`Dyfs)^CaNUgCM@3Q!19!Op03|$B<$8{*BUWz5S+}K=V=VJWPCZt| zua&m#_9xNT#YK*AYWv1R{^OrnWo%7^I{73tZ2KUXx=AELHN3PKVWRs)00O;mKq*x* ziRWw$*2L=$Vf)pKO@#?vWX98F*RM9Hp+v@`Kb>tY{{R{)Fn zv~0S=2DS?Ke~%omT8d4Iy_>U0d2ozaKh#bw;KwQ z)R&)Dv{c7soZ-6|s6jP}Z<-Y3V7&hTT`fS^z{1;FHe{(-LKK$T(KgasXqHnISjs@# zeaSUi(KB7#KgKgfshZJ?OZO$ShleM-^RWY#{z_Y&!!_yp6klOeF@s2%=U)_Vwh?|y5NAG8VQ!Ml7_8Ym2}MBz_) zvA0JfrubN%4(m*n- zN?c;XeTJ<~iDYewSi@q&r8Q#yOYBP8knAprA0z(pdvhUdQMz|htiv|vXy!JpQ3Dwx zY|A9>u&BlOUp=3=*pDyK({I?%{_LAuX3MMN@awA!R<6t>l3S)nXz4ZvY;K!UM$gEq zQZ^Q@%VViVv5@XbwKj>3{!aI3ExndQBeY8-oE*->_gS)D%|^5N2wMUznEY|x`=g6R zuM#&HQ%u-f6sB`)cZnmU8#J?t4ULM=x9zf7B8Ahs zm~0}=shZ1CAG#{yHtem6k!YwG+O|7J#wt>mWOf$W3t4CJ86PC)V;d;fySIIntkp8Q z(`}3dI5>6<<27+XYTndqI^(Jy$ojP_by{tXwv0aD|2(QQ9Hn73WEg2s=pS>K&; ztxDe8vdOfYUAL*GWlFbiNmolWVVb-x-N6CU>Py=^?17Ta`57JOK)XCnrCV7|wIOi< zZ9AJId>YC36VRs>R`!eTtzJ#5b#VUxDfX=D<^Ca-D)rqi@@ZXGde!IaR>ZPh>+{{TFTabUq+uVo7TdwJ-}_9tCtlO;F1A(g=SI3su?RqV&CU}q3}>UeeBy=y0(G3*v*p2 zdbO6D@&T_I|O=@heC)qWn z`wzw?u=3lC`xy((ge*2BWOycM>Xz1;(t@mYz&Trc?Gpb0DcHfV^DF8`B>oEo)7uZW z)|&({YwO8r_uvt&d{~SOBI7f?lVtnPjI#!&1LWsn1lEYdUSvRHi`ynv3~Tl;yJ$8l zm5fZYFs{ghg1NH+Hl%PjSZB1&fsa`oNIxLeeXUy^nRBVsYnomreTlz2nrO6Jy% zoCfQ}#>=iwT_%rR_csRRi!w5rr>bla*Roj+g37hwtQ%fD71r2D*jvjrRQ~`w_BRaS znfso`MORx_@z&D=VA--OGOhQA#^MAl{EwP%<3(O4x=RfLV>xkSe)D3+V{4leudqUP zvq@pqArQwkrbM=TLv{8X7&WxNIc~sLk{Duue>KJW`f|*6Klp4|b89*9ke#>uam!%H zK>LoqgJEn3^Qq6~o`L>VnQS&SZeg&p>qV<;xGfsGhU4}(on4kJnH@?X;{|}%*|#O> zHTt$uZ{393e{zesIJSavSSF8W*9Gwj=JZvySAwhj#mJ&{UShmn{DP zGjFr(4cA8PmF~>*rDmE9Wd=}$9Inx~HZSgH8rY~;m67YFyL4={V_h9f5V_2+J$fB? zuh(UL?%}VWU!@Tj?IH@C(o8#*$1>Kvjjt4M{HwR_qk)~M*?c;kgm~=RS-%|nvomYD zeaXK{wvD|XOaShir!X0z>hz5l&sSx+gGpOeqqo@Q>{7-hf}@%>8s=EqU^n)wOiHt)Ar4tc|7jE~vE z_Co1J7$dmKqBqU3LT133EHz9Yn$xXWHzuhAtQ%6tNL6H(gcYKq(JSRe>}tQ*Kw9lj z=Mn~$sjc?QHq-J=4Q9l4n|IkTHI)P9b%)b|w4#GIrfWk*$;$&|Y%G#TO5-$efo-lr zQc!kyw{P%@)xO0fp^2_@kQnAk1Y#zTjK6V=8PMYP)CB}D*gdrv9c|5Zfg|3w7qcXG zpJ73EDy7br`PR<(;4XES-i5W|jK0&Xv?pa%O=h*%P!vU{u?Y2HH7P{Ip#$iPI{Im*q2h)*|n@>W!no* zWK^v>q?hF~I%x?3LkIBUx?dxmWQW;ljo)wroFA3@YV4~O3rwpu%d%`Gl$mUohpTpk zf;kCRnH^@fz+-Ax50R0!)8czwJGLUUP&v~+qy}eCDSOL{%8kvQx&46-MG zW$jSv;-gZ`kF!5e zn<>rR!`|sm*Rwiv8$S6hYGm1Mc6&&55!{{o+f!8$Ni>mldT~&7m)*SuyL#TV%y%0| zD2&!99OqD%aU=X4_b9mMSyU-%cv^-n|y0 zF7dQ&I(iL%@`I%O$3buK3->13O$%7%S?z3Ay9BrFY^+NZk-}d!9Zh%}*tT(9k|s#T z&l@6!w2U%ATFZrowt4E-WNnt~AzK?Rvm+#y^R0$Zimb-05eCaGt%&GM*v$Bq=jybj_Mh6Q7*mO>8^9_TVHT79tn+=cWTI#Y`e9*Es z>1!FK-OctlLjVTFwm=zvH#ys9I8xU=;wq8EvyN?A{34s0!gda@VTtWPIeT&UApZc( zA+h=0`5M8Wy~}5`GCI9yU6Ok&plQ{VGL87_$#bwvAc=-kJBt~q(+7y*{K9J|?4ns! zmh8I2shG9!{lAs={@MaI7ae$xko<@4)ztjT{Ee*I^~n&}F_>=1*4(P-8>Oz#viyvU z>GmR`rB(K3xc>m-Zra_OAJ^1>SZbS?(4)=Vlgv`nJgCQIhTfv;$E&bJTop?gAQ zrkBLWS$)SgH_R|vJy~z@r_pq+hYpixW;o42*&O>Vn8@QQiT?m@-1|iBBd9Ib z;zl=9zI{Vs^Iej?#%rl`eOqb6CdlpW^(}O_o!o7NY+|>am`VTwl*@nI$yjJ){68@?fm8K)9IzL7>%S0 zZjqZFU(wJP)tD`OH zF1h-rO*9*}>zWJPb(b4ew=BzGX=4$q`!gxEB(uL+8$)c`e#zR|11#RQSQ&aK8&RTX z!)x(3V|Vkqdrz=qXeOO^*jHkYUj=5h#K>$q)WSz=B6HnVf5x=%fA-%yooVomeSK~5 zS{YttbIUbxw!^1mBm9n~QIuoYUpD2{!X%bGfR0Ubnhcg47vKDJ`({(FqAojeX{;04 z5x?=ilm_6h7OJqB`zz+#gMTaLd8-!fjjI=3V1^Imep#z*pA=VI7&Th<%B+9(tS2}$ zN0)JTXB|Op^J12$NS!NVMnV_e_7A)?J7Q)w-7IWnVC6HJS(Tz8Lf^*Q+ecb;tT53Z zV_~x#Gh5kBXh7J&l7HnmNLd{i4T)g};o5BsZ3iYM8HsY5S4?O~AQDRHolZACO^rcW zvLCt8NXk)`nVo-VXLTxuch%RrA-O+uXkQVs#EzKIBBhO%&StT+Vy9i>?@`9tAEu0b z_1tzA86$s^>jA1M{{SPbUXs(UQWY7Y)V0jp*b_=lNscy_lGND#*3Bp6a~8IXt~%h3 zt98;gC33sJ7(Rf2pCNj5%?+cnWj0;Rl1V?`CgRMlEQ|hDEPh6V>olK`)MFm#p6Q<; zGRtN|BeeR+{@ul<*gGaRDK*hPcG0fO6Kt-VPXy((+gY+oY{=Up7qd3r*bRv;WH8D0 zv;HxrSq9^WE4!XKp)OmZQ~E{#@5KA8garF-O)dHoO}S#OW5& z^ktg5&$jD!A=a_Kb=e8SX4+3?4zHzS$8Xxr{6=hBQjNWj{vMsIW3O(u{{Y8lP_qRH zx7~tUOgnq#71I&7M5^Sm=jL+%05wuKfz(=TD{PuY*R_!K6+9)gEn z+rBA#9COufiWuoujq=SG-32N=BU;b8j1u+>y~xK}ZC0((O><;slFgXnb0Fy%Ov9D@0IqO7TPTpD&LoFKV!Pt9n?1w>uGN+lCQ`ZoB1xv$X^}a z%PTeT*u6hsp3E`mOq+=VYgJ@XQ>!lCdwS+pebB~9QYmj3%ybWp4Rt&})LI%$~mYiSqopb^2g^jT+yXfn-)tM)AYqB=Y{{V(KnUxKnz}~$_?i$;I z2WbP#w)YIdwhIJumKxO!m)Ww}Ph5xZlYOx-EQ~=Al(Dp74|Fkz8aAwrOl6srshQf# z4TddrAC*$9En3~*#NWp;v6c&C55m+mHP!C@^6g}Nvbz5O*iamL#=Ov%jkVEdg`0di;={E6*a!QIN((?_iK8rc5; z7pBHI;cK1f0@pOUO@x5Su829)U2EMe&$Rtcyh`bI5!SPNdnDkW%KMjV!4z^9lVr8_ zFG*p~bDo^Cfk)9b#jDh(SbKz0x+3`TU$7#&1YTd!Ho~5A#OrPwI zN2;*~8`g}^V^od=#{U4sHMX5p*t+=}TrxE08C=HU)?{pM`;Z1#032@4!s(|nm|-%Q z{@hD=#;X>GSe)6Dd8az++TDyyl8)BQtlLBUR_ve<$I~yztYn+hJ%>zYP_@iswr$o@ z)3!X^wEGK1qILN8yB1!S=`MZN9bIYWGda!tMT{~!r`di@Y!AA-w#WH);7+YrGe-L$utN`@!e>^+r_WzCGb`uCz`cy!aYyEhk~`8rQn z{{SfaxV-+!vVh#|o9TB_)Tswnr?R&Dj@QQh#IM#vJbH@X&YQU0hJ<~0WnV{MVR+oJ zu(13!zM2+)7$`E6Nk`;{dA74FGT_!j4o$fIlL5!elB zKXGXP0E?$CRX~h6#l@2THbTg&h&-!Iyz(tVX(fz5&!PWOKvp1U*etXqk& zTJ5p6lREy&Doug1-jd5&$7o+OW@U%NE8b-~cD96Di6k;T#mo3Iz8yvP)DO7bY;@=w z4W>m}wx9n1Aua?l84Xr47S+7yT_67dW!9_-oN(8EBP4ZU1v&0=g`q^lA*UbamSzYL z%%&!XHKbUczSH>eRfW>6Y#*HM`cLpXF%W%UaRoN4NJGM4o3{l(-5LbLmF}*rCHOvfs=YAj*afrn8 z2wS6%@~yp}#T3^+jLmc)2pt>byKDI_&*oD~KJ5L*a~mUb{XYKyNUweoO4}e>{k(M9 zJ*P_}-Rjbb@OR$Ldk4LZbmS}U6IwEY_LXLq}hMUvUjMv9fZ^rtOx>+od_epc{RWi@~LeIk{({cPcrRkT-___Z8Ykusnb?(0)h|gV>YcbA|peI@WJa3hshB=I8-(i+o`rVwA(cC;( zw{g~_E>&)t?QvDMa#L(+?A zWMt(7h4&N3_sR|^Jb=e1%zoMy&1oMyrXpMq$cyk>E(Lqejw-tYS~r}Tqik`-mLh)j z6m5u0Go~8j9XI7yhw{Fi_RxJ8U1CkW*GTOw0n*ZYr?dY6_m_8v?=oL;ip6$9%T^s> z(b)SVvsv+nS8SFxH{CO`Zh-jdPRP?p0iNYEf-ReL0f9&E{J z(Z>`ld(*Bs7f~=aSGJpImc+;2YgYGQWLofB7S?k$iC_WSJB^h(XBOo-zk51?uYk5lM?UduR58BFyko&qU@ zD4Zeci9{@+!x8iz$)^Zl+Qx+(Vkk5uO&F;G-HBroN|YvYIppPu=YS<5}Ff} zQ{^QORM!@-xVaa46ZU{|41}9^StMAI2y1Pq^y@{0K*j;_eTnJHKmb4Cw{7p`~N;?uV z+e09>$}&vvU2XSMGelsPCkpaID+G4zKEus9W7leBf;lwAy2jUVG~=%1J53R>EPFE* zcG-@UHp66+{Ee=66TQuQu20LZ5&9sorV zk`W%Khayu(QVbM9yE?&d# z!uK)Td`L(`px8+Q*Y1CeDQwMGKFE4!pptU*T($Eu87=G^V#97^w%^)^s)}>oI`}?Pr?m2*pu zbRbEJ4y=>YGMZyDG94syD1>tAM6ZZ)m|lk*LewxHA8tn0laJ0B_WXpm?LYN~>K{oSyks^c8JgIsxr%zDs(qpNEb-5RAQC#!PpAyanK7%jsZ4?w1+r6$m`zh6or7BL`e6 z7NtINuS(gyZ*i;-aajpTjmmJV$Lzb^ZiaqX*CNmZ@88m#u=auBaTLCM4ZlaE;`93(FEEVBh=0)9dpbvU{-#{tsy!!laVK@i;LTQp@jjv zI!d#}F(odeNBk62-0D-aS44K-g?8?>6NX_yR9O?826yWP1CzqjyItT9gOKK|5L@QF*ny`4-&D z4^ctc407;`ASC_UQDppXyc<`L>K%oehcI5U(KNZN(Nqc}6D|oxEfW50XmB{G#mUHo z?N9!QcN@W?GX0`{n7US}v6iz=fH)dnmtVms#iJj5%3oL=m8a#6%hsGg

    C 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�FTSSp?HraGn+Dfd(%@Z6{&M9IZdO*_*XMlT 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

    t9BhAe6)w4^T(T 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

    Zy}4_U#`mFhDq1n18j^cYEIjr_Rq|TX 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

    UnOLZ3)IzRkH9Hb!N6B)6;Mh2x z2<>}hG5GCQQmW6*h?bfD~MNYIeFp$mHn0yg>0`O(-#!^5dxtIM)#2D;wOWt zU)W%i5-Ak%l953L@rNQEt^$pY7aqG&c3eDqb{fFtieW|1M8HDi1VEG&EEJ)(NV)#4 z0 z%FPy(RU|1yLS~^SGq7ywtR>4M$g&`|Jco|upd+?k20Gm2b>taX6@^(9X&sg!x1}p| z1Nq5;ls!;99Ehj~C^KNOOmR_;f>1Hi-$URCh@Ipi;6-D*GDTCBU}4B67Ud9+Egf|P zmHAj&Pbg|i8vF&wnOh(-IGY;9Xjw3#H)G~p8L?s?xdPFER1wBmSk&C61feF5g%BrG zt}%7bxdBDas=HDKfreb%p^+OFFep?SjY^|X8x#<}#WOnm#8HUCsd|PAf}nCw!9dJh zf_O+QwOur8NCew#Qz0XgL{iX*oFJlmDD)iU2cQpyLCI;-ybh{RO~j~{_Upf8p#A)2 z%?lDsq*}a!k|3B3%WqpKb7jUQ+0`D!QTb3ID!yUJD-k_M^`uF9Y#%CyBH+ds3>uXw z?Pl0E8MD7NRDk6AuT;*yl};|*iF-m4cBFFl#TEeM<_XF@#RMvSluwWiD#uAI4{3$+QUw&P+_}Rj+hC4#n=R!O+H!?uawrd(kK>}zcga*t zsosOCjGTyZS|#g$r4M7`m-HppPDpuGsQ{f@L?#Rpu$z_Ii__(x8GIqM(|` zzihBn$mlmWSbl}MvYAzj*4(Pan9^G7Ch^Oxn<%hUc7{r|C)s7XB*j<$)?VB222{ZT$L%yJN&!G(xq7LmXqQy~U}2!dP=nM)&a*$@K)6>D`Xj4{zo7|*`UnnxouSPTM{ z!C@okpCFsU;zATQjZ7tz31kKXq&A?2Czjo}lw(%d6cpFa@C*urM58p^O*ED=SrZg0 zZnI(*Js!Euir9eoJWf-SZAi=8Miu2+iMnO&x{ZhSXVq(Ezx@FEwUY9d6>MUY3O4cQ zQn0^JOxhLf|2qX+b>XD_`HM@P^k#~ha;*BM;u@c)@B)`29t3dtlE3pb$ zXpIu9=(it1iB(YkKdi+57xK}r#Qt9@u?mIcUsqxk^7)f0v0rHV#kHsZ#{UBzkqQX+ zwdu3|ACLr6sHp!31c*o_kVptT88LFT`+sPQgi4wZI&VuqR8}q6~S!#+YZEfWyZwu{O*L zgG4+C73_8~{^kj6N&aIXNu&T_3hwJuOY%=7k{kH{AtR6N^4}H-+h~eiJxla+h5Xp!JJQTf>4WM_NkaF2oRXpY|2G^c`x&)G01P&YI5IJN9 zY8PR_Y$BJ;VS!W@na!n>+TQ;c74`o`Ba_?xf3-zwk^kS_{}+)+28k&DK{808l88jq z{}+wcKL58#dVKIm9D1`=^$Q?ZU1?Tul2`&q;}OG}%zz?x)z#HSl>zMXFKW;h3GwpP zLU$5ou#n#C#XbuH*r?GI1sfmA^Fg=PL6GbgF)RZ50rjlSSUo8U6%5E_c1Qw*#&D2| z*cLY);sb5~1yA6*Dq%&uc%)nkjM?7B5*1)VV@RF=g~Lb^OCcJ*7)CxA0DNM^GHRv9 z6#1rC3`_z-q+g^s0iKGlNt}QX=?5r^TL1vY|2A_wKhh=)Kd80|3YNrZmj6y--$Hgp1=z~%P$2@D3t2$(iLK6FHG z`%fYwP|DJw!PZR>qH@j=>Kp2h^twt;W0LCKokI=mD2rsxA1{#?G=9%#I+Tx$hVk_? zRqDqJc^tqa0g8eh`Y1AyVW^ULT)?3hEHz*vFb$Fjmc)sq7?sH*CI;a$W=z3Luy6eo z!yj$vR${JI28%QPQtgtz$Y&^|}Al3-HNal_#n1|SXF$8fj^@yrB?Kl5&>5}vLIiW$z zdbu^#U@3yH?98v|&8FMx=mrq$b%SiJM7wI3FyZsP*Qnw0TKyX`!Lh+gUBB^@8g+$> z3&4?n*#t-ugy@WbsTmL-$&TP5;^V*t0WM~plA>zd0&Wb#No7M_l+-ylpstT=Gbp0P zvN;)1DgYN$U?aJB?`9bif-SI&-xoq-a-1V{vgz{aWG0*tP#Ol(bcOM+4V z8vU&slLR9&t%8^MWq3s}r#Ylwf+j))!-D?u<-GZ6BUtK##GxJCr0afE=I@`+OlDNPfk>Auc>3MyNnB z7~HSK2_=4WoXV^Gt#3L@1Vd4-U&>+Wmf)K)S&Hu4@tN>-{r4F@6Nq2Q6NJy-9H)}c zt#A6*@maPl`!-ybA^R3QCVo>{W-$IcxkGsT&2cJu-1??}9gn5L_wCp$#rF+4{SBp= z!T9ea58?DT$EoCW>zj^ox_Jdc`tKCn|5s|A{rCHx|C0%g&i`q|cKdIeq|coHw=^^w zp8u2SR048q5^Qw-k6kO4AO3&F$uCFYZeHrMT<(|%PK4P~2gJ$?>^$jxXr2JO;w8K9 z)PAqvi&INXZjsq!4LDDiyi$ zLq)D`ks0VG5^R`8VH02ujn0MJ{`{YWp8u05VEg%hTcj5G|J~33K{AC%QN;fuP-$5F zFJgQAuQo~T@xR*Rf3+(9mpuBHJoZ;BBY(A~p46NC7guYK_SGKk>no#uk=vtvwKCcl zvF)OL5u1tjMfsnO_C;uq_SGKk>;E9y7o|Pg*MA@Fi~3_k`y$X7$o~uq_>=enk<&|? z(lQLS6)@yhz>t3IkY5Tie~6f0iUIZ6pkK=V|JS2_wMZ~XP@$Ll@5cR75ZfO3>%R*8 zMQA$k7gE1H^4B+x{3Rc<|Gu{`h46fHM+wg4Z|N%G8^-=3G7wWN9WlZZev=fddprZ~tO6FlEbs3>RSX@%K$#fVIa1`?uqP*~?Cr zkyRFp*+nN1lp((4-V zr2H}s5iB`^UiLpq+%Gx-q>{f9ZF}6W_PAeP61S^8?$^%{_lwXT_v`11`-La{%#ptc zO-KBq5?T}Si_tLR7m?6n$S+c>LVgkd*F%0OcOqXA^Q%psn~v~BQrRYueh3$%@?Ap9 zE=IpwAS%N5bus$iD2eSZM*r_zjFMDkl-#oW;_n>cPAQ=+xi1Dm6~ZY$MEF1z;_Jov zQW~3ngg{?PD!;jT^7|SmztDf{zZ1HPM8s3+6epEkmY~+tZ<&kB{OO+qQB2TEsjQo*l zU&t?Iwix;A!HGxLRSxnKxweb^i{0Qw{$d6IvHS<}cL^i9lmfiDVX+)ArwgQPA(d$V5W>_g`(1TIBzC|Ne^rQi!PkR|0Z8OQunY zB<%Yya{KrHZIar+|0`;5gGHz{S7vi<#`kMur=D^PfWnLhiyFHOm0QnL3~7!1ttzd= zafn$7@I}r_uwSmaO?sS_yC3;7N1-k*$hA)7@B@GVk=%y?ayAJFv0b~p7?4|o8#w7x zG}8_6g_X8?raT{Wfca%_ik5c@B;d#n%aNae++6~|N&+}Sl*eKrz5z8#@0Kd0;pGTb zTqb^zyGE?kODIBAb!3D&Nco{+;&V}yXn(}@a z!51R84ijKelTK7o@198S38V2rs7c>}z;yx|y8%pyM#lq3hGtRO8+@*gP1`wtvHL{Y5|;3)Of$U%)1=&wG29YDo{bP|zHA#q)sc&W;3 zf?N3-CzXzC!grst;{Z3MDB->1A$}a{G*i}rO}OD{o|aJL`Z^EcDMpE}9KVzDRZ2P< zbIQ@JL9YOP8}JSfV*Z9mO}QINLN9*G{P<$NghoI-iH}g^E#L%jF<%D`eOh!I^s{af zTetpyU;7V~54GL?(}t-<{(o=# z4@e{-C#*OkNF{+30u`i6?LUXOpK3)A(i8CDJKH^-xg1kLK z0)qMh5gg}nMBk6ii(9HfRJ|3SXMpg?b5Af5{LaROrF5Uo#w#*SbRbU$6kdEwMM zbU^<{k_Pg>rnaW0hK8oDmR3h?JzYJ$PP&~sb=EgF?5uC3->H*fH$$T?CSALB)idaB z+Ren&*rcloibPEvsiUE(qp7K5(z#P-lP^x63UEf+YO_0NtE*Y#IvA;`8>xLdj_Zju zQd12}@;*@OfY8`cOIt^`69TZ$5Z6IXUA=>bI!ZNCIt3}mX&7l5_ab_9>@pnEvW_(Y zQ!-X-+j#CO>>70bi7kmGnxUiHt-GmN54+y>4t@HPDO4Jr(a&q3w~w!%|DfQI(6A9B z!$+|ZRX8G&H&HB!i%&>QN=}_QYxbO9=FZE^TD)ZGufHu@zGiLiy7e12ZrZ$i&)$9e z^A6N|I9?%jXzwC>sS7cXDEe)AS>ml{r8 zO`e);ml4vg4jLNj8d_+()H)=f07e>`y@(x+J%(#Rv0bde6m1jFjMcjeb!)V%4-LlP~kp>c2wh_tI zu~%|7Skxtt7+O81qGFBTZoW@PmpwL3@RQvYy0oJen|}P)aT~G1qBm2tg@(K zRBf=Fc;`jkz;2G@j9+6%gjFvcUUbUcrF3=XqoCU(t0u4}^cSVfQO~nUt2$B>pqDxQ z{N|*2Y9Y8jcV@>|U9?~LSDu>7j!`wBfBwAKtkRMCAnEmA)VwU_8iG~0))}hWU8@yu z&V~=Aq<}WlYjdD5UB7W3o;~`6`)B?B?3dN1+bw+oW^|s#({nHGB|qWiI+io<%{oQ(jy$59*hIk2^L-6ho98S>wjR2*ATluFANWTU$C_+ zr|&6Hzw7isQU3`zw?BH!i%P1VG;5mM-MDhQKKpb(;ktR$xI5TvPpaAm*q+-_vv-bT zAKg_XuzKe;%ewAnOdRRrx`~#7WhUqSh6vn~!^_|BMXR>!=GikPmCthi9yK*f^K{-4 zlcz~3!(Q|Rdp|yulA2N0)ip8U;kDeICumDzY;}t-?$YSW@5-EAnU-2APQ7~1zpgE8#9QRVXky~Sc%!zmemX@qhoq=C4;qSykf+=PF^!+MB) zjjtcGm`%~NB^9rli#y%5G=Ry@w-8_6D=@x$IkLAyuVt3MzY?4NJ<{Ri#qz8f#B7Ty zOZ5&@PCSejb{ON6*{5%}0j0BiOke5JwBGoc>i>CRW7a$1Xy%?Z@9%MXPFiBiVXwb+ z(K0zAHB0PhK67rR_vFr-BFk%8{^gU{>S?$mo7Y-=4 zsFs)(oEYroJ-<_tfukTaUp-1Q&hDTccy`)mB5R3_ z)v?q^rLq29MPWRx*nUf-GcQuPUSvVcWLsU>%D#1)ZpIU zEFW5j(F;HLXq*1?IArZ7+^{1VUcW{x(oCv0n;QGfvdFCGLak)YyS%G96J{hXWh}dz zk{^;%!lYg<5@bJrx#dc?5x?&7j*8&jJ!|tzh&BGh@h6Ph_$TzTEAzHe)X3+Oc5AN- zGL0UfH}lc(62bH>Rx66PlHoLJXiJexNdjG=wUCTcDMKbey zr^i6O!;hwBq_M4Tqz@1FwN7!gEWu54q3do?^RSsts-2QP>aT@56NX!-6Hn}7TY2ae zq#4bsj?Fd*7_xj_l;DcdBFl_**YnMWnQLXdn)J&3)&N1+;i2byzgl4JTL>+9D9%h2 z9C4^(KE0Ap_ji88Ufu;T)&gd%`Vcc|)<2Ic_O8DWy0h;1*aYKyBX9Q~$&UB8H&4Fg zIJ1kZzf*05T?e8@bfC6*>_tn4<(vyCk^V5Oy{mh4uRNy{raql4va%!S7O^Kg2Om6d z;kodN)?~ra5XPwpiw}&Vn%Ac;yy>G8N>`tHKgIlyD!N7G?kS7u zwr>W!Tb-O-+2u{x!)t*Da?I~yC0&m1nfZnr zn|V4j5m#k9$>0|K_KFm<^TmtCbTiskwA3ujb9Jaekeb!Ul^>F`hVMI&Q#kp824C%D zg7N4T1@Wf9)X??I@!?ekDJAxtRkMrfeb;VJo;ucJ%W&SiAbPD}_}DvXTd&8@e79NW zBS84u#xmU^P|Hm-cTHr;o7;@wKf8}SJbdNpg*O+BI6QB3;>-nBFG@<2!p!HGp7aIY z#@;hFTF-+ zI81qz+GCGE=sY1nm#2R2z~d4!g}=(5u&m5wZ&nfAJ$-#t zM&47Wi9;$l;R^<**iM>nQC)3y)k5-s@o2=h$sV)at%vy8&dzfByQFB^fPUhYgGMdb zdsc`1dTKdv%rEVFI^0uY?B2nE88&&uB0(f8?QvL`b1w(&QqmRm_Y?ol9$!9i`|S$1 zgEvomvIh|J=Xe^ZKYKvmJd|0t(X*I&M>AV6s#3!nC$!zX z;y}=pKP*zN#-12^_}u)fN4K9kH>fsxf5wu6F?$?dSm;&NW=qyxE}nSi&WpjDjJr=M z9H16DeD;X_!whV2HOtq=T7IZA?d1n+k07l+X!=jY0DoB%ed<>r?|V} zz&pcNXyXJW#aawAvzjBjwqAI|N;h?}+;=QGvs*!sFOX6;B`{2 zS&y;YT6DMk#xR2+#s&f7w;g=ce=t?Jta4>3oLRnIyJ$c`>fZO;9v4?FKeOWI&?PLN z;YNJ}X=nVZG+Yk2y^~a4=#^Jt%b2cd>TiB=#__70Df+%9BZn^8=S&$|z3X(1&Q8&T z2dfSTyQXN-%?s{d&smcje&V)Y9)GSN)+{Q~=$aF}Gq(;LQ2mc#iO z0ZZ@vwyX4}a7cFbi&tkyE*N(jIICOK|4K#An4t$3&sdv1LtAav)#r@$Me!a`lu5tj zHA6eB7n^S%93gaFBJ!g%jqYDue(sO+RhMjb`PHOszb-advAEW5=hj@ce@bJf5r`Tqe?vSfK(O@XxwR*sIg*4a;+f-8H6n5jlvxH?XK9=q z9qw(Bkma`Kji@Bwx@1X)AEQukr0mUQ-rmu?%#o*oz*T%)4UoOFa%2CM)eo-?TY5G! z-naYTb%W0If9)pn3AlLkI{EbP`&Y2@GPREzrZ2fr-iM!Yz&QWGjJ4+T77T=vqs{+F&91q=@(g#s{_=4oCt!?E zTB2@(1-sL9g1BtrrdXckW!v9AKJQSVdFp-c^vy8=3^NV2Ot(JC3u`EScMt6q6x#98 zKhN;xJ9;|2@94IGdwN5m-6`$V0I}^Xf@ySUW#=;lt%(mFu2CDnOLf65Gr#-zQMSJ8 zG(2hF#jg8qT%SujUSyXy=T<<)si!5(E=AAQygaw!1!L@3uZfwt8YB~k)ltye)KxOv8#k;=5uZGJkr#&mg5(_PdhZ|g55~Hq?vuYGOBBA zJJ3(nT)fWcIzJ)T`CQRrgT-4PZh8-}@4C~TnN@YYkhrw=?(I(I@yqN6r|#0P>!w*A zW6r?owSM|!ia0VeYs)x7i^$A7HK`d*LVA1U!RKJH*WnCpl_T< zxC)-OyV!ZFj+XYH&&_wePG-$3p5r?>)PM0Vz2gVB2r4SmQVO-qEaGbVFAiB3ZTQ$e zKejqYXN_Sxp2@ehB53j1JrAK9oxHD(k<2UhCNPeb_EnrjA9> z**d?SMF&$BmaAudq;J{($G$zey7$SyGWwoA7}?jSBi+`j=pLi`(#VB#{5Onp`TNrC z3{Ke56=f@OQ%f|eHr$)|e$ctydovB(7HJ*JEbkd-%B*1&7T=5NV>kM@nK^8yBcw<8 z(hji;4VaY+wI-h5KWW5(z#_Wdi8Ir?WR)N)Q*nX&g%#7UjZPd@l6Kbl&qUTN3r2+7 z@Am6;EDf|w?rmkBaMe=tKY6S0MdgGZg5O>~CdZ!4iC6n@0UyA;A8)tM<*S=x8-6cNVU&^gY3>q_kg6p7`?GoQn^4pLW!)_N#W< zTDfV#oSu&Q;+tuDDH+!?FFbxk8hE9P&$^_Ab^(WVOs}V}H<;=@+RrG+JF|RQ#>}ac zxBcPwwtpo^Du4^C?*0=Hb8ho;P99i%p`>JPpl^-+@B(*YY3+@7RjW3P9!1*QS725% zX9-Bx+g#38-&o{EDjRcA_(C$P+us{V?yiery@|){7x|ycoFdN24vU+;25$vEebo7Y z)6U{SkJN4M*k3s^SyHRD$~nGY=!}ZOn%}ez%=DS_>iBI^aZm!)G@-0++m>1T^D_tT z^}DA16j<(S{(B~=&>mN1%8b2Yy4^S6&!v6z(v3#$e;i)jf7}T(W+f-PGWCl43f}&G z%qy{Odk9?asXuQAEi3A^Y~k&g02_DbZmc7o@%wfjK0L!U(Rq2-MMF5V1AoU&=;0|o zNjj&8C#7T!ee!bI>NRCfuex{i__eUJjnM&%tU|MrH@iw5sTHTfElOeWu4Vgkw~kIo zD5~yflv3RL*P(d?<{C50-?lhq0bF;gHf=hd(exMTcRYpJF1 z+N?|Aoa@=yMt@nY5MS>qx_sLxW<8yGv~o4kH#4AuVRn)(=oj~R-rZ>D+c7pD?uD4o zTv+``yx>L*VSwA7j8WH4F3sCw@{!l;;+d>dSxKIv1N2gzqG1OhkAYXZr{|6-F`0X( zyj!q|sPFp%T*!hWef}vde0OsJH(@(%Yb;?{l2Tq@avW>v0`#U|^EoEyTyRoLl*A}uUKo39lgMox zEx!XpPp`n|U4OVQ-Ja)GY-%C7A7*>G_w??CNf~nZBd%YTVvCeov;r(LUxSCB{H#~KDoNKsai6g0_(^b7}5#h!!%y-W>$H(7SKa|Vu zR_stPU58OL{5oKPux;Ly)5q*~pX@qPz0N0OQ`r^MlUfg^+`sNY<@G**x6j~Aco34& zE52_4-&mZQQmEBc{Al=2Ue;-6>uAI3r9L+42h*~}%kR4H9_PK#d~AiFj5yu?uNd5z znjLO^t1mwmLe9rn1opM)sEz~18ZH{#$7MQ$VR?X|o?oWk zb<}8{$s6#xx4Ne1ZZpDazf#a(obPy#3o9eHSgow-Lo8lUS8lKAR|IqjK)OaV%D7}( zkq)>O9@qQB^$A(8(#?tnh+KolPYha?+IMST=VKqAWoH|Vi8yjUU>dkzy)?JSnD{{VoQ#8Ab$2^PbLbXnMmZlmw8*Dv zos#Z$%%p1cWeSg4=_i^pt8P{-NcEXOUE#cI$<@4Tw}Y}Y*{35kV#{n2i!2X@G4~&i z-WAWa8}m3gTR(fMZ_iore{9aZ5_={`d_2i`jG!b2EV9APIG&wslzoY|^T52aJJIuo z-3<%g`?Qc@QRVKjGI@lz#qT4p;xErT?;OuBzu-!&R6Fn_K_84=7@)pt%lh(tS0f^8 ztHxG?j=l9`588@EpzDWzVf*&F+&y^IsVZ;oxjxy`akT>;9NW>;Bj_sc=_efT%n;3& z6Si*ZV`@J2soG8*tqmTJF3g`-Trsv=)D}}}hV79=@`5{0OeW-bRN`XOr)_Xg-s8QA z2~|gi&L;+~?ergp&BUJx|BvHi%a91smN_>mSB_$1lOs&zCZfKWBjuWvJ2}cZvrU8; ziri<;P(N^`Ks1>NGH*K)B${pAnW`;c7QH+i<2? zfixfT3w-hm=7N^D${LbJYP}<>Yu?ROH+W8={xG)+?UuuF0=+*T0J+sU`UJ^33;^uu z%_VPKj5L+we}Lp%bO9ZTn$6l@0Ry!f^FNO*qV|(z@har?%d-AzRV;v+*7wCmGjVpiBvAwLcLFa8UgjPC+5kl^Gju#ADyI03SN>Ew@G1iKJ`4^ z=&W8O06<~z-#|QKPi6Bjy4FQ1tNOUc;ODX9Q$}~oX{Mo1wH_pmB}m(6yE;(f>x=7iT2gBbY7$OK`E%>}~*conD{G`lOV zbnZ(_yuhe}Yn^{QBHVp3zGF55{9lSF*TM3-g%OOOGm}Fs%&Ey$1_*K@M#k)|PEZ&0 z|8gUK^>wkcPsW{4dF z39PMwJ%XRas}|)CSzmh+v`}{cVK7diWvgcJJI6V=r#au5$qGJP&P|6?ebMGNSaVL> zz0{b^YB{K#q2lYDx3)woXc4}{8SVj zy=C!mB0>IDd8S8_?Nv`vjxjG7(Pw#YcTi(QJy50h>-*kvNw6Y53O~YgAX5x`^5D$P zIfP+7b?@ysn{Gsv^m`%?XvH6}g83~>)DWI)*@>$4J8VimwmaPb*-RN>F^9!=`Ls61 z9pZ8ZAgLBN%N~GbI6V`u^Ds2c6Pi6jC;6R_3$%TiZblkuGczT3oj}KI(kgTeds!H@Fd%dG;*!OTc0VlEE-lYN)LLp$E)0%rD#FS0#A!|;*!H@AD=&P z@YGpP(}8+Ul7XU)*8>6D82qOBEf4(twJ3p4Cc?<+re-o-tPz+{8X#Rm%f`VjP^;`* zPZ561uhR1WJlgy$RCh7$QFr-bb{d;sB%Q5saHfT7h`C?%U@iMSO~*A##?H}@ErsW~ z=}n>s872Dh&WtfiYlhqt33_woU8QO3(~g}|${qb+R7M_k5`-A4IZ0B<^Yi$m#)+U^ zCOUJhDpt}X>eiR5bPow(OmJKG{{VZ(5ASmA3MqJ}-pVImq4sP;jon0kClJL<0sjM_ zO1JK-Z3jPegU#J^&h(O#kN6*e4^7IB+*^AvFr_X$V^aUiD^<18U?3^~tU(aG`1r|# zrZk(Tv$zEp5s_X>&mf+%{6D~0!P3?H_Dd-f#!^OzWUj+_ZHI8a-sqD#)^hyNMUWl?f&MjNz}9MVAzyp)DhXMKSc23R0$ms$RJe_we2)r&4_ z?<|&PE}OWTGJgDIIkJL8-SM9j%ZZsFN&2&30uM@H;zS$)iZJ)Wvw?(3D^gj_{k^?+ab!ntqSGjukrwnqaabh-PJTQ% z-K*1cLWqKd(EVX=O+wfb?E@0*Y?nzUAH2dHn$X@ogS>_yIXsc~q5I6n%ukhXRs-t2 zN1x&C7S65tRokg~>9xT>}S`F zgJo?SE?Ti{J1LV>`h{1kWj05OcoCie=zQ$0H>l05je*Hw0EPq~OS4!b~7j`HYl|CLQ zc)Z?5Ye}(rJA20?du@JaExpTOAte+rb@bWqyVwuY-SrDIoL6od-tX_#)}D;#HaxQv z2p3iD-7AtL4&HM$_l8k<&nh`hv76~7O)IIAkmtHZ;UDVm=i9N`C|giVqQOw^)|V~% z$Ds&?{F>t$Yu*OATIB%WYX*i;SRr5*I6Pb@U6FNQd?`lBO@@$RQ~wbHBxTIb?qiyY z-$caQX;VSuHO+dm9a8+VGg)I70}wr7k5>S)I5$Db+ZGp6cJ>bqEk^LmG=EP8z2a0~ zblUzmi(Bt!u-{y+bxuMI9HejmuJZR+CEdE+U_R)ygL^?{M z?{v<)8iNfnoyIj6F2vkTvJ#t21%&py5PwNLrs}dp^94}MA|xy2Gv>=<0m#pI$wMDRt3Zppx((O-3pSOuloqwMD2%dA zZ|h$F{_J-9hb>vhs9>$5KRD4tbTCc@E;!W0;KoSd$C9cy-*d%Bej*9G}JG z0r}@%_qrw?))?Og5EwF?C(fopL;)x$=II5j2#T?`jBouR-f}wUQl)7wG4z1p6IGcg zD3rdP;-5C(w#GFJ2wkkuO}HphkoH7=u-fdyWouOsQ(ogS5a|_egE+%u0Tou3 zV$G*ExUwB4|En%?JB0wSm9o3}3ro zDE~e7qTRPM*;8p25hw%<#w5l5Do*QL7has_--bf9oq{kQulK&8WDMEO+l}f84Ibwn zv#m3hE;}mVOPXJEvvX~wKhswG84Uk||5m)Z^w4tbyZiIR=L!C~fZQHf;_~+HKUm;m z(Hqm}z+k^PAGnw7b8~I*k0VSlYcvC7J18a%ApETfD6JBA^o9kVT#Y45TTSHBiR#Le zpT+i^s~)4k#MwO-Z%(;qdmiVRmL7!u{B!%)hv$9xK>Ixq)SgsHpVZ(NzITZYAg}Fq z7cQivHluK4phR) zRfgzgDf^7V3B7YgT8w#vH(qf%^7+*~dLj5V)bbRa;Gq#u^e?4OqK}`ke9s)j%>t9d zQRR)haqcY%MzH?5Lj83DPzBOzC-^t_L)pOJ!o|Fv>X%pz%OMQ z+u^gkJ~sCW>dFb2jhc@ll3M)mW4X0;6z@#?J2v&)tv$N=uB25Oemi*%gHKpjtR3eh zS#0;VQU3=BYl4aYgdoNLmDz~unc~&c&Xo}~`Om&McaL|tXXSe9-d;g?q$|Patud%x z*a(kEN*db&apR%TS=PLRT!e;L8D9AH_R^i`4tf6$OflzDf&VjAfoE({r^Q&i70;IH zDgR+wUXu0CMdH$s-6Df*e|w+&5z9WKQxfEkoH%8DKVM(g$ozkR%ZMoK5{H>rR!;i{ z&%papV~5wxI(`VrxovJ3aL3yXR@5U3pchz;NT=Cs4F9PaOOZe%foYd-Kn{ zj2%9U%_lj#=}+Ch4`^iGpNvB29acVB_PH*VJUAq*Hyi%dTWo269-VWR|y18Mye_r95AUs=V+L z$~XUc2iOC~?2u@**2~|N6Egsbm!&p-2*kFTELIrF$Qxk5Rw+rwajzTRnNjYod{?SW zYLB&Q!bbrhkmYZM*DS}_M9LC6EAZ)9KZ8BAD-O*@SqjQKQ+n1ofbr(jXRcG)_pBb| zc1tL#aCWHSN1~TZ(yAO*E)Xvsd3}_;w)emMIsmlj;v=g&?9Q0htd(ZV{1OSZ?d zL0*qoRKt6_pXiq#7v6dj4Bt4V!)ihzwlVLMcM{~nCJaIApn~ls0~d)J=3C75KO(XM=}KA83<;(SgqW@UQ{ z`{;X`F!4;&WDRyFxOvV_gJdu)^YX-sBiRuBpz*13x~i98;ys#jaoFbvYx6 zl>?3MF0;;>6526Um{z&F(mOkBjdDD=(=}4Pyeb@D=uKUw%D=yec!g^>1f>QFYg2t* z$~9jPyblGx)g)%wNDRB2uWe$7*uSZZH;?@*TcU=a)&UWDTky18TNB|kSKHDv=NPu_ zy;0gM;v!0HS}t(CM&(A#oKQlP9=%p@I2VjTF%O5zOMA|FVtO@|ZTKW4;ox~h&dbR5 zUHZI{r26=xkHSJtjFiMS;}UmRFZbWS97i9yn~pQi9NpL;R^26i4kAZs{8G}u(^?iY zm#N z@A7xx38CNk9kQ#+%G|gKO*eV`@>$FrdP2;ti~ObC~fNt2)EPndeVwtCtMVSG8dU$J0FMazi|F7f9{&>QDB;&!#K z%slGPThJfm`S-3hZ;@|Sut`*bX@+RRoqA!H1%mu}r9;J%yBXspWWbaTY_^ICUD3B4 zQOK`zR*p~25(IX$;BR$idHDutgm&;3ru$Ef?(g!w@heKFjADdtSk&@>Sa_lbn)k_y zgMwU!)ufRsLss&!_o1tFhZ}av@C$940ZVY`8*w1O4$k{l&NQ{?gIbv0j#VVfwz z+}sBDVo`KQw%wHn*Vhi}U-D29i03@krBqHPkcPbeT$ukw*sEtmuw@dZg(i|k=1?Mx z?=v%_7QRlfUb#7+l}?ciJgZ8I#Waf@n+bi@JKdJJV0<;fV3zKWpTxHiZfOV$7~h~ntRa#?n?0-aIoq;z>7YA=3rDlwl7|+<@JJFK(eQws zTk6AbRv_Kf5Vt)1PC<<$`H`>0RKJi&geGiumhay0uFxT|&-S&9cZi%;lJdWe4QEpG;vkDpCHuju}OsH5nXgpIj8HD$W3ZWy}le= zoT4owQ{)ux6Y4KJ@hbUU&)@mGOYk5vzzDI}fYIDmQ8w@K)V%SmZGaOgHy=jCieG_t z@KjdL49K0~g2}Jku^evHHFAS=X?PIB4O3={?|JkEF{fM3-mLL~ld`scR4p^cIt)5- zuDx5p2oCll5Zjl~fW5YYU_@h-{(aE>L+{tpOu!bEZBc=<_tR`8BwVAON%YDo`7 z%W|I6-F&hK0$e4jAQ{N@&TssO!o`T{9#H%L0HK#%mQ`W6s?$UmjX)a}&ZP`gWk9os z{Vtt{FlG?RmWG%l;2plqE)H8)&DZUde`{iN$PN&C19a1R(9cX9D;E~Heh_vj7R_1OF?^F!P`U_9#?^T8F8F8z-#d@(j zG!1AzPdv+GTK}us-N)pTUEV#cRjs(=4*g=B{P+!F33cIKM4{&(Z}4msCp?#RP+Z2c z_hwFdA9Mt^A!mW9kZz0tYBx`KVPUOynWf7+9Ra#+(WL^G$?0Egdi@jIJ91Sj28B4@ zObbW@v%z4g3Z#}tgHO3>f9`L))VJDuUnE__O95rl1yct@VSpgU&Dy`x?@|Vu?QD$h z5BGy*3SnYT2&7mc?JnsI(L|H#;%-Hg2aSgSFlG2{@H*{<4<<$}<^DCujoX4?$w23? z?0)_nd<_kbPrMm!^BugM_S&5?goxY?8MekVgQjL$qaZcE4;93k@D;r(6E;_t>ny4p zh$ew|%Im7)JiEK_)pt_}=WmURDmN}>d3^b^muq-s-jHSNmk86ucE&2uvLnT^{DPKO z?WyCAx4akLbP5C+Q~!JUx39}o8$^k?{_M6 zb37?MO77CS&Z%}g&6q#C&^Lan!1SZln545crL~mOMbtc(OmbxyTV_}2wZ9I%YM%mQ z(xq?}V4zHdHj97c_*Q8W%J%EUi=KiD=GFitby@V-u&>88mT@If)$P z^IeS%<(OBvYA|C$(4~sbL2fj=K3?+k$HGC6FocPUPo&Lynd_c55^{O|jTW^yt>~h4 zMs>ocpDVpKnWA4zU=UUe{9}|-$9*WgVm8z&?Q3Ofev`hYl1eo@i@!@p>o|Be)FnTl zv2WEG+8AR_sntF;`PB%v2xE%Ti%N>qO{&orsi)MjtIc51xDy?*0cP7>`$&JgT1zz!CbseqZ|#H?b2d zT8=3+1G_y&fB1{c$~fG6UwLisOvQ6)mcM0r)h@NMei4rB_X+}dJ40+%J1@G`Pux_Y zT>ATrxd362*#J1`Vx~i%i}yVFs+Q}0hrR%o6Vt=gq4gxk z5!kT3tXf9pI#>h#Hq~HOVE2ALAAhw6Z)i1kaK11}mxFQ|w828e@6ii=%N5r82n1hP zo}ufFu5;^MK@geT)ts)1Y^_UeX)3nrQ~V>ocUw6bAP>@qk(cgX0s*IteJ@%jdB{x-sDbnyhrD89kE>nEWToAYjJ@!1q)7`E|)BLD;7~p~6Nr{~N z5;FEUbz}hi68;8D6cWDC-sY2m;oJbr6x?|iS~|S{xIR!HR^|kjQ2c3zLWgU6)JbLo zSCo(5o;!tOGwwA>Un~;;&*ykm&o8^pz&17NqGX~=&1}--ZC{MW-d=_K;7`cQwe`hf z&6_pXd$M4Q=-u@nWA!d0LqkHw!5&Xh+?OFs5P<^h9ydN^#Ii2de@O4>X1pfXIl<@J zNk6jb!0Fh^n+<3s`I@v~r=4FXs$QD_7RZhK^b5H>U`?9%xj%vkHmLyIkp2M$c;5s3 z`5)kB+NeQ}TnxEG(-p3f0f75BP)HebPa1cfOQp@X`#@#Ma?$UVhIo=+RDn^*ZuH_- zeqfS0dTcJ>@)>qNBS^a@o(?XSq1eJ(@hq?Hn**stI(r4PISV9#)0%oDD%-m1MODwl zqrSht7Tj)*?dC~W$YL?)(ZDa;oz0nk)5otN`n3)$8xX=jY30YkS7)kn1WGIwRkS5^T?SqVhv?bL)Fz16y*JvK*d|i*p2x8`4l%rAEG8VfP+3=Nd5g#4 zb%Q=<`4=j(y|-Z`{4T0&5}K-*f3~;DCDQqBqof%aj&wX=d?P)WZ;9I1PqHx9ob9Z5 zwn$?G7j+{Ka_>i73u;U)2o~{EQu&}{D6S$%GGl&87_u9ksKr92Gda6q){6mX1??qzzI?Gs6G1DijKgI6sLISBOW z+0cAcx&;}%JIZ|aR_AVBebh;A+`w**Td@b>?8WR@r_X1kdA${igR*dto};#s^A=nM zytsIrR|SA8g@&C4GQtjoT&z2tU$E5$#F}mL%O&PwsP9?EvPsWlfqn=l*f#HVu?NO3r`Oy_Xkkg$9!@+-Imc&OyKu5` zNBX*l3~wjrE6^?ks97HY2GKZ6_tg?Z@ky0Zo#m?0IjPz*;*8v^;fIpg-OTKg zOq&zBjT4&cr{{qSMRg7~P65x!>ibomYlZ`?R%=Zb{{)e*BWqgxK$y79241fpd$B} zhXoU)<_2~%pha^=Ej5d-B(Bt>DiKkJ$+q?;%@g$I;Pot$t=?OIN_G5+hImLzg`!1r zihvh)v$gknLj)L&qY}o_GYptLO@Syl)V%DKsR0)A#BkN}l3gw`89r~`;V0qGxq<|U zcUv00H$vIG0xp1r_E$7;Cwx!3-<@^ComkbSnnm~qfpjxY${#jO?}AoNjI8_aFdeTo{4-fGka;cq>G4AvJGH zU=1t$@Hw5<54keT(wZ*bN`$&#S-@=;C3`w__6tbu0DQ|pi=fPXHttvFneT0fro-eA zF~cyJb;695&VEEnr=Z-KPaMGcHrA;=zDgS?!qxV90g)hVtE?vl=y&7mK|g~Wh(%Y* zh+fhMJ&Z(XJrYS&aUg2I1ON#9cor}IP+0rU@KHPuMNsOluf4#fu3hiWjcz8Gc+6K| z>}npbsE}uORHJT?yWS2G23Ab%3=fN~!p=Hq?NP1#I@4T1Lg)xS7;6s>%v4O3FK~Uy zvfGBM3Lmz!)Rb3gnz$3;t}0?murSfTTDFuTatR#RZ^{M4O#X&8AM%^B8h z^MZ`@=nBO_VGBhVqApAOOO?cH?7Y1nCkhId$z{PpoHElswX@XKw(iPjq;n=`+WoR7 z>j}H4nB6ZaPe+qu~bMQGiLDpBp; z6=ge;%MHc)KB|9z{-)TtO7P9u>P4c!8zLFW08SDg{`K7SR_94Y;wKzqa1{1#ugL}y^RN}_o;ygr@Zz;smlig6wYpfD2uVx7I2N;K* zV!}zvsb4GAB3N|D=ph> z=uHb&VJ^YbnR>|#mgUMkuE4kb4{)LS%I{TCiGEH;m_U?v#d_%xL|88=S$SMp{P{8^mv*|s*xUn;TB)5hG}(v2rbCY%$6VxksBFO{aid%W3h9ax5>%7TBaiZB(%OoD+K!z9@QB7ehhLAP{e_b5)7f}ebL{!?$)Xu z!TSxNLbV1zPLS6qvYWL5hah`az}MXQ@jkBvyeFfI?x*7^Nlo|iDq&lm-#&2<=y+u`wEB*jJ>M3}t1tQpno z{ngsQQX8nef^|{nm z_++&aXQGB*0xI81?8f!bmdWJ1hh|7pi z(oJRuN zcKYwT=I0=mSRqn8+b)gOUtqCNe`|2VK_X}WW)WJ5j-1VU1g#(#{Ivo;`g%&gJ&-f0 z0l{W!n5lN53?0~qRSRI}~o+~rU zQHCG4ho0P-S@=1BRO;|w9d@3oewUKOipZr!XYr(b;R|S2c_aWyeWL@fNtTEF3IOf| zv}s1R^+;6eWQ}H2uyu8A0cuVCxkxCR@g?{d;89ylE(6c@+g7 zN%;o*6ZqL+xQZeMmpf`TLU4350FhsCkmZTA4WR^e3Y+sK#j_q^IJ}6F%*oJriDZ&> z3e+vqUP$FAO!0%L!k54p?34x*!!{uKC&{?=Ww}_7BHYP_Gqn*-?&oUnrkj|%hW2?{ zKEm=@Z7aF;vGp*((VJss8eJD|3$R_-E^QRetMS)vV^U7swX1YK(Gq$8{N6!(?LLhZ z3Zrkgjp37l%!|wvU!x*p*d)oszNr8Fz!4pJ5}|vmV|C@$j`p3dz6y~@r@*I=oD`Lm z|Ie_Q_%q@EaePeXzCx3^GG`JaZEmUAB4=)i=BQj7k-6_mGd4L}Lr4@7ITLcseJ6LT zjpfe$RqFTiKYSjK&*S}kJ)e!CMy6{nTZi|Vz27vs#C1Slp}4Kl&|_6UQR>x8 zU!c(;NkMp}p|JpkCnFw(J9+|smW!Lij*cg2?B$7=825sdH5?wQFYOfRmG9rj=O>)B z&aN%@Ro^S@L>y?2C@s`6#f9(8T@(Mi+QfEysbgLsI%KEX02e>XGujk>V1k{fJ)f4! zo8k>%OJIXO0JHRYo;klARs89Qv%X5Yu^Y%}h_%49eXwhWId9w=?01wyOE+x>bIVSg z-WC6DGwVDik#A|ko@A|c?6g5(k(??aPeXEl2+ASIUfz0*Ounhkx{%J=C}(Tb&78aZ zr0kB45#WBg(mR`Fm0Yi?15*366(G(m#tgnjRY}kgDp$X}F4*IgNu3WX|8b?}1)-vl zz2yvXJ_9#BdE2)!k^#xcElm%+8O@*~@jWQ{hM-}lMe?=g<3{V!)QW64LN@H`+^KFy9CK5X<9g_6S5(Y^k z$bAUzgh1s#AK(PUi{L4lluZvf4M~%E>S4pNVzSl$EA4+V%^%pbxKlu&+x< zQUo-6+eaqK_PY%g<1b{nO755{^Tx+%&}vr0*LDirCjSS(s8hr130G(ySltX19LhST z!b?&Y&5?~ey~@3uLMaIPza)l1E1n7d!;4=aB5bg-lhlpGuPuKDiD?>cW540?AqO6J?T;`C2w_x}J-cVDY-Sdd>r7yXB?usdacwrKjz(`@G%6Adlmu&IZcf=I{T#R!p5@qd8S1Yx&Qg&-&(@oAp77SxoNa}@=kOC7p2eT zgePzYQP=x1_;uh-x2sglHAQZxg(BH^Kf~J@ZSI|^ML`c)dD79(*)G=g(|`z|8eS^G zm-wpcv7yyPY(COsmCMIxZIZ1ZrVcQ-)>mYfuR{(ifc9mQuV>uc?vOY5>}6NTImn z0(mxr3421MBTe+2n!}#C!Q!NEH&38*l%h5$_0H#2$6jH;=MF-`X49yo$0|J)7 z&2JzXY_b^WFFneBUoqBr%nc1D=yPO4KQ5saT=i1Ap#-KEg9GxTs#91exPSB!lrCAO z+TBb_Bu8uIk8r}}&7Sc#k~Eohw^fXP9MZ@C))`|^ ztQ0?`&}@6M#v`m-)JI03V70sig#GMnm*v1c8S)>_QPJpm)~kth_u{XMnf_tdL{BYV zx<^I}sj|H&Zvf9w4o6p{4vz|g{6bp4D9AbW zLgJuwT*}tQ*6hoBYC(atOuwb_E0rvifD>z(r$l&e=XlLi%;9n*xBGX#oqj`4W_(+Q zWsI$PYLiV=MdUBg~_kLXUzJ_LVJJQ5F1hudwfC@WU zE6zEG*jrjT0%m$p0aHv-FCabUZ`=rH4MRaNRtfA*Pu6i&1*YN>yyV+^E%4D{^(NWp1mKTj>IWM&M!=!#$|y%IFmrHn6# zKGuHjyye~Km5qrS=K&$#Gt~!)T);1{0hVDPxVS0z$ZAU!C=l|+aG@kL|`b%wXLX`rRKar z%Ec=oeGrjvkKFgw4#lA~QFf(#TY&E=6yhgWMwOn3*^+VJg$=n6jwWC`Rgo~wBcz7T zFB~nXv(kGJT=t1nOi-6x7QQa#n1SWQ#ZwEcA|~!MKkW-o9-azrub`rPzlXb{z@Ubh zEQ|JEpZi3ejhpVJ3VG=tKmbobu)hx(zoZaFk8Aie+ez1UE7tWUrMfg}^86#1zOC8P z9U1G!tMzxk%RLqKEGSr#ObnHf^^oRd5I-nBD*Z5zhO#-T>WIqnPxtYal_~u+-f|4| zUmTN9-+)(cbn8tAQ7oXYt6Fum_^86$$$g`c&WxupaYr8EDZG&bF9UAAe6RDP zUB#B$jU6r@C=iW4c>Sqfb(X_%F1@#O(U$unfyfySq|Rp^uii5qes8{nxKbQA&lfPP z!vcdhMi|cHE;sm2UC)I&@IBA*6XAwPH-QMT`xR(9dH8bZtqsY4TX&%pVPb1-=9c5K zNli!)pXRLlh0ad38j|XQdV5)%&ISWQTE$ulUiW@cL-yTS5R0nMvnUJ1a`!C5_1RC- z!cF6<2*$0+b4`lK+4bOdjC_?DR4CZe_gm%uY=y`DT?oBY0PVPMruvO7ey65X@{v*CxcGFzb78T0CL5 zW9{VfDDLx%#2ArXaXdxgQru8#v}1ZinAlK@-#da_ia4L(;90iLV6K%6{MO31)YKog z4&j7UHV<&Q4M9i{XwX(ImhsSBfTzeKuRJ- z3`+olfr->4-|7#(t2*q6s7J|tsz@I<(P0hbw>w5#)urd>!_Ix!@tzT>tqWwk_>s?x z0pj?jySo~FfATUvN5#1`MPjfC`;`&_YS&Jz+=xpP=I*<{p^{cB^8ndHLeM zm6@)pqBpu6hO|7`**d))Wj#o1$Fk|36QyT>Jm&U&^(pj{>*jn30-QfUhD(hs!x!f- zy{p!{7KZ{$n#>wqEE8)*B+IJE*AB@Ie8g=|NBm`^Tg4y_-r|Mzd-U4EO9E!gCcaMW zuNXIoEQ$v_=Rv4;f3k099PO|CRZ&VRSGl_@#%Gq-pDo3Sw1fc#Eu&wbafthL$Zndz zbKI5LJ0H@cmmz3pUAZ15M5k=dy?dinZFqFJVLWi2uScWwx_3P4OXIO1F#mzYk1!7l z&z!sJz<8_)@p_IqH>0AxfVFaN0~ z$!AsJ-&5E?pY$-*t?Ci;~ z-f&|u?Mo-W8hAt|u2AiEmWOg~92%&Ibm4!=z0yrlth+8R7MX1W~djZURF6 zaQ%j}?bSido%l!duLlK#I~yh`A^&OFc$T@>ahl)zq4`Fo{!Z`Zo)XC4A4p{MBmtA^ zAR#qawfA!^b#2&jr zi4JInF^H6*iumwmZs5GD+K(~0P@GXp^~ywd z2*=<~pK5QBgXviYTvkLY13kAkPv5@YdC{<3=WXD%h3>^t94iO!eQK;h#DvyAqXeZK z0woX?{{sYNiJ)wkMFl8vys+168SsVppW%JrH@nyC9k=fG{1EH)CF;P$49tawI^ZDi zs@eFv4`t$H7`J>g*XtjsFImQ_PH80<5lTCo{NkW_*GkJ-LA4^)TPW2c6Ci|gdT-;e zDup=Hup{q9G@(4vlIE6&0}ff>V_kdgR@XxNvEm!0Xz!zjDijFOgFA}J?BsaQMW;lz{)&?2q3nob=|>Bf4fF!P!|Ha9J-&Xk)y`>WOBWfM+S(+|J{FkxtD|%q;^{h zd*{JyU>ei>)Hr6a=H|Uo*XW9$r*f}$pCFJDoyo2F%naSIEqis30LAEc3rVxx!N>2Z zNP0w!(RJhdroorMDIQmoJdQ}p0Q$dZT}CA|XUI=9)zK>>t^L_jJOck&IJG@Lziw6uzb zc&K;9ry*aZD11`=7WO8IM4I$X+*=_IH8r#d`R9p3IM1-n8=EQkIINVo__ydkRmo`_2)4 zbvl)K{(k1(gLu(nOslU~s*PQp7<4{v@G%pPD^?WzNaKx2hkvR)M|LPSsOo}&3R)CEQhnb+Q{_DMWy zQ~g=Xwe;uYr}M0am}639nX4)OwVBw^#@oAG1k`sIZTT?QB?kjD1A&n78vnYPs*Bt; zX1Tp{qEOd9yHRiSA>&ev0V3)Bt?Oe-*>8JpY*4Cgh{YMW_~Tnhe!ZFdJ^@av_jjI$ zrY?NPd>B+oTjf6WIn<8Wq`$r8vfMvBYosEjMDTbNd<8WK(sMRZ+VYkEO2Oh48}Al* zY>u{@<&Is;rMXc{#8>D40jvB1XTt}TyX_gIV9c&Ph0bI$5=UZUU0k0%Qm5AEC)D|S z%*9n*?}|v!h<j{)(gQNt8wvCa4PqwnCd6NR-d!7!*%)UEAcBDL^AQi=6|mtr z6ZS4?es%TI|5HqVPSKGa>^&VSS+_)%(e;kq*);Bx}U52~?xR z;ZyuRcjg*2@*JtuM)k$h+<8a>f(A@4waE5aQb1b!ifF1a$+YSlCt6lnD*(;QB~-O8 zdVApwtz!u_{LllyX_!lcPF&>CF4x9_nb1vZw~c`?=O9ASoogqYv>W?65M#mrwCruKY59PX}vdH@C7_u2GW= zdw=~`|N72p@(cF)>S5ilsYVj{&SKY*VoKVF82C(ewM5}sSo$jfoG?Il4lwkRHd+9j@8~NZk z#6dk!lTQe_nu@J_#%5_19D$MFUvUn*eg8wl)$ox#X_(86{uv;koU!)rut96VoZIg4 zb!50{2hq%5C-5!+kA!gEb9&8z>!n zna?|R0bem5vCm}N=!r~phK^v~4T$>4ON6=-j*sYr9dUf4mV{VSu)_nX<^1hJ**f99P<4SAZMQ*#G&DaO954B zSRIKDU_H_7XE3WN6)`G>dc>W&26*`(Pb4#U$RT?t z)u#fx^V_PzZVB*GV<1KNUvzoK3h^ZU{n*aEP-Bj1GodzWA9`#m}!-5uhzb)L20xehznWifg{#>tRSPE zAt1YPZ{juYDZJ)9YCN`(>wZyflcTOg>aF1Sk-!&g71}Ml;Iru$PpdH{P z=k&PGLl8vj1Gc$5ldb2jgNZ35^jPjmtku112P*Bpq}L&8zV8YNs;GQ0eXV9<*8}5X z5kkJ{GbpZ2?^7eoGyL^NM$}C?H_^OAz^d8TO4sIQMKMxf83#Rpu&D%+G!I13fj5M6 zqF4U(W{K8v&c$gMV%|Me)f>Yq&%4Z-1aE(|9umhbmmBGBO0oGfmW&R+R+>s@g_bMd zC0}|R)y~N_2iW8gz$HY-{XW|Y;o6cTLiu??$n=MsBXTJJ?SGeoZ#Xapoi9*-oKX%w z80?}ayoF&c>6+=)(p6i9Zwb7A6~$`#$=&jL?Bun~Ia2$u)&Bt1gj+f`uPo2;e2y+m zZm<>(XF@`0Knd{X`5Lua=gcq;TrZd1gH_{^KeExd4#-|b!SwbMadg00h1&~fP-kR= zL+U~(^bn$^C4G$Y-e6<0rVFWPeNOeNMX{QO6__DkKGG)kqhS`=LpR9_6h{%bH3Qo&U`<&%-6N>0Ibq6e25nbQR zsiba99M^%(#vea??9NymN0pU~GGq@D8P;>(K17zNh!51to)J8Q|1QFnjkfuzDj^JK( zjX`;hD1WjN{5v>2LTDl1K4@8G`=Vy=IlTe22=jW;y-irv2*p>Ot@YZrtA41Vx8qk+ zX?}oYW4SoQ@caYt$+qEocZz*@<-<$kp*kktj-_!QLLnSZ$5i=g+M+R8Ri1xLVHq{G zLX9*KA(nGhH z+m$|U-!_`mZYtY~wI4kP25}H57^z3MOHHE#)G}Hp2PfvTd9J`0C=814M3oUwH7*EJ zAD@?Z&ga%#FhF8Nsp;@Xx?JMo9Qx8QFH}y_pH!&e3TA3D40-Bj&ZW z7is4DvxST^@=(U;{_iofO9`FY+amL4qO_l!jXUu|(y81hfKsYygyHf#>+Np0)Syl4 zV1eo*FF~+d?1RKO4N%#VlaL?mT(c{bw6Udcaf>Km++$XK+p^W~ws~`7em~y9h^lx& zZ5-IF)B9(rqi%aaQoP#oPv6165(Ufcot%8I7RAKV`3CEnlpn zbxH=7#UC~0S$jowl98GTxQY7nhUd|8;o>vC3J?-B{x(#zqZjgvGvu$TGi@742JsXWs2rhHte}Jlc z4P5{57_esZW@kT_yOqW6kj1Y%vkO1i#OBRNDYFs#O7k%?E_c4!Iq<$BpAN;sx?wWe*<-?0kh)3CLd>ziK;NVQ8xrPkj+BaF_RS z_JHW{xNmDNTWv?ts^HDJMdM&{d+Zv~#7edX_539zDBXb1w@Ct3OF!I@qoS}bJ$JoS@WubJ$A3j#mip7zw zQF9H1QW4etco?xjU|S=8c%9u}$wbNAe^JQXXAzB+2y7#wzc#pi92>JW(8z^!3qo8- zy6Mk*PsErBnvh`VsTX+Iso5F*P!1v|9IQ|JY0m$K?0)rb>QbCCdL%HCl^*2Mau$8? z=poWCMeZ3AJsS+uI3rIrENi<5{jjrmiX`teozU`RK!C}D%X(lMO6Br!pO>{x2c%wU zK{Dsjy^Lv$QBJFK{jKU<N>U+{36U}Ebr|aS`N+rQ%T!Bti#83q=O_0@ z{os&^!ga-j9=9>!&pFf*Nul&>vrA4I7glS%^JjkBc zsj+UEt}+{Fm!AK3gMw8p%YtqWv9fKa)o!W_;F-Qt_0SZASN~?#T$Qn2NG5G)<9HRJ zX8h13kX~;tQo(IAQeyh z5h)aD|9ZXno>GRU8jbv)JAQ-U`%@L+{}L9xoTU-{hiCc`jsIR9}?zKlZZ z7BP!+BsWPg2-HsnmDj)Ws^Nx&pL=+;SZ^>$a~#rHqGRWDPBh$$T1MYEn17^OBco$7 z%#`maTr-h7Y7p&1>~B$x{@xmWsxdf7?rGxS6K+hl$sCT{iP)x0cymey^n^$v2hHEq zw08h}-*w27uNi`Nm`Bh%Z@W}x&7_Et(v;t4Lwa^Q<<)FatVcfc#!%)?_{i;%R8Ne` z#yPHN+r$BMd_eYknuBo(R3!)@nO+Bwv zyyG6QZKtAnyeD&r@1cxeJ@j3!S=#hZ9HF}L)rIR%L74}!I#vq}r+EEAJ0lXHrj@<& z;>P@03{$X%Pi*?FH5JeH-aHxs`7`;@C3+#P>wL8Tfda!Z%~`X_$qTpg-|t^~#&_ob z=m-h0e-F0QOq@8@wFSLm1Xc~k+Y7OiJ#FtK5&!;uk0?z*ePNJ=N z*t(%pZ`ziSa>GmK^kqi2#pLIZF|jKB4gK~`2+)7;49w{Gy-Qc5L^FHH@2?kPU9OY? zl6yJCW&hnub`&3T?+acmqhzXE}64m7F9hF|3Fg`O|pQV%qo(XP%@YFs$4 zVek|Z2nPVrGziX^TOO(abk#Tksvg}}N;NFAV_|5}4O&6MGO6UE%b-#4n!au6-jw@bV-1D6VATch2 zu>UtEtH!YS;1=m~3Y>xcF0~-~PNu8)grT|rx8ij9Yo?p&r%R4%Ga|~E_zvzC#KyGX zXX=kVm7!q%rnC#}y)$kITpW5BhMSD10%i?vpw2EXe(6vX7J3x^%`bbdf8XPz7XeLB zF_E_$km5dgDRc41?*bB~Ofgd7CvR>tv?x{Q4*C;K*j`0q*7=ua%K5}$0lknugL|TR z&nsLypcgOCie6I`%S#N7O_IrZeMlQm&E~!NN6$@vOf$EJm-4<*zL1$7n75qjcg1zn z(?q0(;HvtuSAg|U8N~qa(ezoZw-R=OV9wlR?HJQ;#UIgD@;D9wW^{-%kuZv+x|+6{ z9tHG;{9UIwj6Qp-*?84Qc!RG^eJZG2zHQCr0qm+`|MppNXT|)lKs8x8`(9c0nLQce zc}u@)*jN$QQ(et2@{%(VE4my1ZHw){FI-;P25GPWb(j}sdXEL)n*NfT7wB$GdYuPE zzE!x8ITB;W*g^@J1bgLxlW%S>z2=B2HbBUR&_wrZuO+j1d9Ts}_iQDD=~O}4U_DH} zxw+v>Ej2QHzSJ&k6Vxww+h*c}TLMSwuu;K-^*I+#@bpJ9z4vS*2D$;PN+8F?%*)fr z(rM2=>vc{piIoJC3_M+b%}4vG=oQ z=w7k9Qsdk=1us_N+vx?CSmggHIM2AG!afY+#6g-XA#sA+d=-5S+@lmn?yZ%3rRLt- zv@}G~G%LlCTeIAnR#+)GF}0i(21@SSY3t?vdd~TD&iVbG|8w8h^#tZrzw}ctaTI_y zT9BNxCXEfq;1L-1X?@U4n}6U7D*3~L!%bIN zvH=tgQ*C@=G=1R57el9{TbV^Y-n1+t7y3qGr0IiOF2I`|f67Kwdu`pDy%m3(#X%G3 zQccTC;99~xNR3yu{sIibdNQnfYX51D^C1`d&IJj1>4ftJK$hO$3>wSj{r(VqjlYcz zq)90NPT&{L&TKp6)vpBCXI#n~sI-yFK#zb~Gc#Vl`TJVY_-)wMrovX<>|LDqvOW8+ zg~`}M0*GOnU6o37!NzK^CUNJnikG!&GglgjRV|6Wzdv?htR!hD|bjgdg@$B(sA zrLTLG`zUj|SDolD1jtW~|Ls^!7e5V6RNY4iAx{8DFAqSm#+u%T4cgz81=TB?DAa=RnMwf9Z_rE~rlDY^2bUo&{iJ~j zo08_O(?^+gjeh4g0#C%jQ$J_<>+^!O%P1ar&BMdG%*LRhQ~m}QPT>8!AvJ%#s3eLd z|4>6u#Va9l>rsC;cuXfF@up{ZghD4*K6hs!dh~qh6jTny(o4_a_1xiXmSfP_Z~!&% zG-oR@Rnvgx?k~d{&l%a{@oS!VgLbsO`?ac8xw$96pf{S81ry2G@qD~?)lT+71Ib>@ zD4QlG+|x+I*Wq{Ct9MVK%$x>ASk1D7uQTQ=FNVPzs8uA?HXhkP!+m^6=L>;vbCc;mL6Ki`H6VUS zjtI;7L5plaCc(SRUsRvo%_{`zK*KExD-^X&Cb=v%4`vGmDJ-*;$RX)|vQiI^v)0hV z+v?O31xULa9Itjt`v8sjY*hpUU@aX8FrX~Un-r#9BYp)bwGsZ(Iq7s=FR@-qB=H}h zsf&NPTHXgh547gA+25Pw(fcK7f5);uQjRKO?XkCfP{d#{Wv4ss)ku)JFlGIvG={mQ zqV+>ne?)9FPKL`YZ;+Stjzt2>Zw15=gT>z>utN{Wxd;Ni1>rxbU*{e(nhoYB0&m7} zn_qSQ0Vc1RNm##VTN2@Y(4_nc27?~#lDo|08VcG`?klg?!Ynzz1AAOA41IIC{-93e z(#-5JS=_?T$E6s@8niKvA|dU{BCLK!HTTH3gC9w9`~=0c0a%uvi|YId%9$FA?_<-h z>g#iEub&qyZ<39|8!p9W^bt$ZvJ5o902^exTK~DX;2l%afMWQh3Uc?b=9kL3*DAEv z!dxN}{{UsVMtwrlh;hhxR@>^`;G#6%LojjEexUM)47hvcjWk;J91()r{?sWQDVREN zuOMO}j3WL!R_sl&bziYToA%?V7ibII3tujy^QJ&NicH07 zF;?Ca!y4|~+= z1KHa9!V+C!UrP>8H_(!iBE!xWog6jd}Kc6%}~ zCjfrE9jTVypILGabC!lYql&vaVb#KF33-3lBi{RqQNo8)YhCe>r##Y8(Z&iBFm|S4 z1WROpYwFo>UREDdh8%|>i7wGrlz}2ZL40JpuhV63r9OC;4#fY z%3{Op3nO&yn%(NCDl{HZK-}9*t2}{Xtt?NQVoszMX!r7V%X__yt=xa0)>`hqyz?^K zQzSd*?dYJ7B|;PM4lJ4o{UOIMw>%+D?M)uFG?~CV9}rmSnDDcUlNDCKEULCo7pslH zZ0I8;=K{__?Zjk-Ygffg4Kffp%4WVUHu_$stYzM~xi@bFhw;fD+(z$rSr>jyjj@s~ z^<_>aQK+OMkL0A z7S%M3PABAt!u|LPnH53aX}quu9d=$<{NyO|v1p@G%Y1Nku|%|XHWi{xMQ-P2BVLc) zihA(0&M0h?DG;TdPWZz?U3U>a0Gpezy-?jj@>e|AE7XUr7v6H<6I;0mPMULAD(Vjp zK7ukMuGzifrN2O*n2)GEy+Hrjr(2ITxt&lIYH-}+b0smrdr;zmuf^}zWo1$H#!1aw z@~eUo)(GVVPJl5CRBHtxkSmd5ckz*~wl}g$I97WNohffAjAE!4#LsK9giV`~X-C&# zKhYX-%fq=}6$%XowYu>!*zlqXyT|9pOQm{qQLqE=E(sMJyg;6@@LK}Ic$WRKhuIU` zTdUp>XROG$-Do!&D)tC~Nz+Ubg1L?G6}5Qhe?d3JmJ^b)IxrQssD_*iQ)BeEA1p-FkGhgd|b+P^|B8eXzPbxqT6@`Anxr}LYdR>_C@OLSD!HVykFpL#myxKUOKa|YK-$Eh4lSd2PR<4E>Dm{^`7~) zwDXCGJc2Xg5vNO;SYcopl;;my&`8EQK=+p5TL1W=u6bufzYscqls!x{*8~F@?bdE*DbXkV2dVdN35h&J zZn_G%FOllxMQ6rD%#;meHxg-LYL8RAX3cL&wq;aY;^2T;+MoPAk;VLVV0m&+yFa9L zl;bK);)n#RnE6_t&|WkI+WAoNFf?}SRDT3)(W7JX#d z>({bc9h~dzua)B3%|m@jhcFh@qUlB=BLxp#jWUw)^4sj^KfwGCM9Uug zLwba9LNQay^?AZD!sJHr)7VNE-G-8Gny^}Yu=goeZPue`ed)E9qnlgTQ#MSu8B30c z#37AQTIJ7vI=&xJ=*~SN8ob(FEOj8s3Lun7=djWbHc8AdR z+0`Z$AHF;%e{HJ9gTJ0Lg99>h8or!*Gv(d;ml+FJ_F6jBkP6PD;ls(6nm@wVhr;=d z+boh691SbemWuFrdj9J673CwZBJ(TGIpksp*G=*8M-hTFdfux^9);+h+^b*ni?N0~ z^9Feslb9cq@+Gs4_qxtbW z!&Plv&aLbbs%3kN6|3*Zx!-%+G7Wl!@c<@u@;B`?l~e5X2Qn+DD6Q05H#d~WXtAGa zV=TvIP&5&U9l$TZo~g*Sc)ZJIM4hy80<}S#LBe zjU@Y=qB`@+DkK25hz9V`@qgmarY|ZqL^10RW&=FS00~&&%ztIxbEfSy&u%9j%*_0z ze|gsAO%su3M8Lrrs^9g*U0v)A$18_1+@bIt)-)5ZgkxgE;e;?VyY;1v4kn&hAp+dH z%)cxlMX+S=o}>s%;pyjM2q1=9VYybk@B-$DRZ8z|HN>MwPPXk7n@36<6e6cQt-6uK z)LOVB4d>PvaNOxz$7BF+kd+Wi*2KqApP56A0HHV4;DBC0Y)k@^*3c08b zYB3$rQ)C7V(s45l+r)#qK3&)L34*Awgueu?A}Q)m(3ojZg8(VD_`aIiaupH^An^X} zNzh>K7@>u70jOEBmxz(eQREfJooBFpfi<>!%TE>9t!A*9vqw!4LOpP$MCb00{vbN5 zPwEA=^s|pk{TUx%4H81bE2JnMqbw!dBC$<>eB)BhYM8PsBq1rTybPWTkH~UP!`P5cpPXY0df%Ng~di~>SY8jtZ# z8Q_(Um4*FcLE)JxTp^vu`Cd_gD7%UZyG|3hWz^Wk;S~=`E7?kynrkG&%J*5jVS0-T z8LV}iI5YQ^W!>)5V>MHF2t06r%`0wE$8>Y)G~9M^q19UlMliTfy3#_P0!|L zk2dER8#zb(W*k<=M&1}K(GVYDof~4thQt-m)!H9J86B?c;yo}L4sS11h z1-P)NFASTF^!Ct@fM4R?Hg2B*T!xc_G$3i&hm~5rH%k}$GVm!lR$qap)KYu103bmD z(L7=xs7+g=i1r*0Ty1=;oZPtSRUH7ZSB&A;!RM40?-P~$J})?5F1yS(D}cu1z-2C1u zf0{f=viEQOrjgKSbD-k&fnOh`^3vb4hRRALV1NFa7dstt=gNy~Q-7!!ImF1njYU>#?*#F+*Na}lfNy0-Vx2^2la-x6Orumfj$NdeDNJO>xgEXIEludsL z5g;_UYd`-|e}8Dr&7C6Jpk3>?5mpbS(7b0vgRGx%U&)t!C_q7I^+H6`lp;`IS)C1$ z%}mkGJ!70mk}B8rG8yy+=RbfCfERdFcgH`uW9!8=sj-XZ1=kU1$YkVf6hkFRAe+~9 zpHhoGm8!0XI(bAa$l@1)Wthh{oEJNq6y@=v{NLB7KNm0ABV0BBoW?E z%l!jf=U8+wAV`{$^^JK`pTYUAt$n*Z$laHXf(m5cnEwvkpU{k>7EZ26Bb2awm2Bfi zVaqDQ4B}+E# zMu;=w)LoYpk;ihwr~I;>?|4<)Usw91A$5#dF%SDmfK!4oDjwV*Z``C6 zWXNI5zfY<)rEj`jj2aUI>GhFCECu;+7$ydWoxa!*$Ui?M z{T}gbypU9f{Cz*m9$Hp1X&%9}M4Wp(mpu~ldp1BE1P)aa#uJcI4Vtq{Hcc{ zjE7+bKFXCHP|<}W(Kq6*Ph;zo3s6e5qTx>>*3d)IgY&qK25wfAj#RUH{B97ydH z?TWe};oY&JWTEQr*BCx7tQ4?_+yY)R&9v>-G0@KAtRTwS%FROL*`Tz=8(Rj$JcTc+SY ztD%)IURF+ObeVnruy;+{d!}j=YsKI?KioZO@aE=o@GDRO@Rji(2C$k@qIcEv!v@1- z)Z)#wyTw%ih3G9)5b?FGkK%n) z-=`(K!=hU_Cs|d(!SH%NPOeIuvvFBL=na3xkQqjKtXTGSa@q0p=ZGUR_xA>ed3aNYvnrP~)c*lAMmHAM$2x<} zi7(Q|!?UP`z?)CNo4JP};x`W@d*gl3^DGiv1~8T)%#X_g>ofSSHO(Xo-jRdMNfkA` zajNV5t68xbi+vd98hYb$G-;4<=6`0d{>XIxzSBoxn*n79yhOaA6-&biW4xbLRLWP= zxGeYHvz=Yj8~i=xMnaLjnPL;JV;sPgX1oIKm2d-ShRFg8mC&AqK8UgapkN4A8FT`7;_ZwCL zL_Ld0B7;i#0Jq&Lw#bFb@O;Q%jH&eB-)bMnw@QUfhh9qi>7KdlLvJ5tbF``e{JTub{k)hOOCjkS+jpQ7so#famiS^}AvGK*8xMsZ|lCAYECh-Nbpv?NY#t1|Gx7S;w3?jtR}~gku~NET z)weW-2gx-WYb-_Cic38!M!|fIPQHT@4G}zQgCy;L0EPxnEDj;;4ui3DJTD_&njNWC z70BRjN;5{28(?_NBkEC&y1K%$+652x&y~&5V&y?`f|HgIAr`)_oKw@?v&bRD7hZ&R zA-hWWZ|6zmI$8I1S8yL;2{vrGJzAk`ta$|42xJ0e$)N5H*8^AmhrjSxYW<1)Y3JEh zA~J*=Q}J9~z3Bn)Iidmt7F$h%w)i!Gfo$pA`+H@yvt%94=7gh$9>0C*TSL}w*5TS7 zt4xX+@1ZKNAG))x4lj$R4<<>aYD0K@PHZ{PI4T$;i zN_FISzEH8yZ)+`av2W3P=3@0xzZHfn8ef#2w)di!H9mhfjx1nT zBhNjrb=625JuOhoOE+HSN*RFiys4j^?gc9|o0+LvgBkAPA&tNCNUVHg)}YGQ*pBp9 z#;#~YoSy%-LbO)^uHV!M8B^8=AF;r+?fLtcws|fJls^rPr}mOI=cY?Z%E6ZCQ_Eq= znDS-5{G@{n)ZtOfxT_c zKSnf~+5AoXIVDv@IKDT%qw9*h>qOH)pn%w}a>YugcjD?4?-;8a{{T79gzpDuyGS{0 zrbUt^mW?GesDtmMk_tEb008= z(E;cB+zaC=CmU*bwNH=K#oW!tIs723Q2(AcM-47d5)kQk1_4EXn}}!%%;$J4CqP58_8#z8f|bxFAeV7(aH|NAIZpE7OV!FSoBm`53bEXfh|TkbyWy zdNy*!y#N-9txW1WAzF4ByV;j^OL1e^LochsqoA~dr5?II-yn;*fZqj5h>Ky5_uS6m z@D4t^M3PlCI7a5$*g=n+pg;+QUInI{tlNIp_r|oCU6hs;moo-X8zH}&HLO&nVwXSk zO4{MM4oIP|-_WctK5T8R*!sZn^jw=+h=0svcz*yDo6Kux&W9Dr=9DaGoD5^184lCP z+@1_-Cr0E9^Is}UTm6CHeJ*};^r=fOdSXpL zZEI~iG8azZ5QvZvS{{bT;Gkf(DUleSlrEjOq@u+!#LFcWexo(j>kBNn5nvT$egBtN z`*T;j&@aI<2=*8umbApA0W2+YY13@(oO$eAkLDdK#H8}tRToJ0wQ&P2%T*YLH)_9K}O6Hb9CQXwK^ezjMuh`Gh zn#gxVzL?${?|mzdmWyJ=v}VO%K>Mc0+e@3}&02EXwA{TFm-GF~zZxdzB-j^?SjtwD z33Q!}+`#J5)eN);SdrcltiZ#>c1*1r+~7%=nW{jT-(nk>nd@-;QH^iNC|O{`MR<$z#ua(uXEK##NR%Xo|gqv+E<{jSvC5l1~e^af1OL2wy72c%~`T z%z1|;InM!Et8A^rXuSS6^9T9kdBesRuJ;Xskre)fgllZ=E=v~Q1bh2ZAEV7hYfVsp zYkoOs<-l0m(y;nCY&yQ$)cp24If(+G$Qw)E{bwANVNH}P*8U28knPF% zVFYq3fUTKi9nF8XoN{t#iNF1Hp>@0km}T)SkY^)mzcQqE{lA zM-dBlnDh~7(O2=b=8$mK%Idaxl?#UKQVh{Bj0k~Nw8k}noGx^~mA$_;buC+=B{e~9 zSpT+zo>AE>C)~1O>xMc=AMK_UFA34L{(F54F86NCNOA;aS5)z! zESkWwDp=&AaDAdJZ#G`8!!&PmKFm^W3L|!u6Z_x3^5f8C!f88Dg5L^$2BJPsB{)7P zG_P|fgY1?Dd`@pf*~O2}>&1hkcl5-ASl#=|L-=JuuD-gSf9B<${h0>9bRsk(f^eos z+Nn{zsGdX`UL`MQ0UAHBP8gem)>hOhsj(`;{+!#XKGUb+r70K~g523X`W1#oSY^5kRqbbNLC6*YlP~x59GYNHQ`(;y#gTHABA;@KE(Cw2#Ng zvVXQvCFKUYiM3An&l=0O%PD*9r*Om%gA<+9v(JH`mMga)UjPM{8H{v_)lY|h&JQxi z4^PT6KKKWC;&2u95FtnDq_H*C=r1ZFbqS1peX}ZVjg3Qpag<{O#PpeLb?{if|Kf$n zni;r7n2$Ee+0$SnoIX(Tdwq?x^HiW}BfBcHC`y18%cXu(02?ikz(PiLs8 zhy~RH!8W$C6CFLhO^0jELI(X~@c^wbea}g&H;lJbKO`XUaP5@!ytVKB@bnE8E9Qa; zbuM3u=Dq=ncA_`sSUg}R!s_Ww0^ttkel7p)$`=~e0Dq2y!9hDCH18jxihhI;U$1e_ z>&xL}`Vfl}w_~tbk$?KAJaR-^fONdMoPcxb`S7OHB0@~W&#-_;hex&IVB+S>(%~Ht z2E#-sD4$4A3;)S;bhX&ILs-mjrL(>G66V)GK*gs*rtW8tGO8SdDF8S4FK^M5@^x~w zi1>pB-cDvy34rd?-)Ht3dpmvrN(n`VlWh5}j9&kOY=);z$VfXazAI;xDJCg;T)>El z`;DmNdYA$jq)G!}ex2oZM0bpFs|Tf3a$UENhL9OU_*Fms@u_!GG%U$^k7yxA6zyGi z4b3(W6p_{+{>H<5gF6N?^7~b9iFJ-Q)Y9b1EBo@Fi}RBR!cK7X_LoMBFLoNk@s^zjeOz(L)#`qF2Q+|tgo0YUL71a8vAK!3z2+S&!+$AT>kN^^>;`&aogX=5beuQQR)NT34#oct@bAap*xgD-tUPm|PJ@RH5`#+$gkf`k;YVqd@`2ZMKFmnp|$r`uNi&l|=GWx9RrrPD<0?Mkv3njWU^+?`UoY0>;A^Ft|DaW6nO$d4n{vGQGgAM3 zX$yu7wtWXc8&9jv^-)pcMvD(j)WET*sCz;-J;e~+{YG$uqJ*!{t5?$5H&TiI2NLoC778J`9^D2rLQ9%Yx|mKcw-Zet$( zeex$&0Wi_WEch@|99hRX=>}||MG=AcJHK+ru%FB~J3U1%gkFA`Z9VYZYK1yeckY(^ z1l;>1C~H9@OEHa?rFZjCuh`L6(u)d8&uDpKhg{DbAzMDG(J`~ga0@;i8a7Hf#C3wG zET?$Y$Je~CmE-&upG(R(W=qO^boV%+OR((IpWigM*mu9uufncxtKy^g(DEI4WHLx2 z+up=eMB-l7^#*V#j1|Mf3pkiA_<$J`?Ru=9^`QOt3xy0gOB+2ipZ*oh?eFz=5t&PMkJPUUhxnnzv@~pHW|ZGkJ*iO121=f<;zx+v*={ z+S?)TZxsPcq@5gxzdk6eOsn4{YbSi<-YoS^-bWjzfip*SQ4-O_$P6n>1&H#D)e~~z zlzuzANG=Xqb4Daj&!sf&wXhOzYTbavxv#c zdx0Kd(Pr#wpkaZ+)>w1Dm;V6y;JXu$JCGZU6w3fw)N^`f*Oir6w2aOk+^H?CvDSQA zYF}R(3;JEd@Hbglpx<(bIzNRDP~aK2oaS^2~Y1?*PZMP< z-V#oB562uHy@-l^)sq!s>tg2nyP&qbNR%BIYRX)5|AD|*hV{XsNx0e@%;-e24!{K)@ z{o#MMHSi02JLxP=JctkB7M1Fli zfUY%IbTqpT)?0dEDVBo>X;x5pF@zO!EY&6}%#X4WGkotHawB{>^XuliYa1>Zo?aP? zwLptqtL-n)-zB=wc07_`Ot0J9xyB^UtG<$VlUhxOQ80~tHunyt)Gxm1M!%Srjq~yMC6d`-^p{V7T9kzHPk)dE4R{nE-@5f zfKEh2V9&)w*UtWGJj&r188=GfBZ=Gm{?6PuO(|Tw9OxY=uE591j!>PGVCD@Lcb{45 z2@eN_!X@9bONN=fpm;>Y5$AM|V2h{0lM(^d3c^4fZgywO>PE5Pj++>o>A`Bg0t5fl zOxF1>M!i$?s?CY3ZAj+h$mFz%o;)Rr{955w#3naKO-LI51}5fwoa`Q0$e^b1T(vdn z6ed5cFN!9<4*JvmRH?)BQ4N`^T~#ZN0Ms)$O|avuf-<|sIdAhd3u={u=)fP){GgJ6 z>N7j2xsmwf$T6BmG>HvOTguQozrFx7tRNIiansG z<@3~v%BJ&^b^6&R5vrMa%>;tpT|mO8Y_6-T`!oK#m!Z+D2ZuGfnbUM}`AJUDxRqAo zr!s`n=BtNwXfg_xIhj&X?&E48{azs{Lv=r6nSC9f%6EF)d|!Cs*$2S};2PH}li;Em z@fH1x-H!iJugUM_9evM2G*pQ@qOWgW*XgR^A1%1{pZS-Wa*iJV1C=al(_04ssN{3{ zel^bN7aJs&6?bLlETG}N@PDmt8z8}1nf#SMKHOp4j>o_G`qVaBNTI3|3ZMwZmeHg=b;4g*!1sI z6g9{y(rpSt{Ksfh&u^#Fi-8(kEK?y(q1iToNarB+$iO(`*Qa`l%T+~-=2&cYZR z5I$kXIq6bf+N9B>k}z$Hh53eZq!I=WdxP7ls`A^&+x)qVu!GdD-1hEz;AiVV7VYoj zjL8!#GGp%$#N)3da1Z|gt2MV^o?9^=>RL7ocMuz^0C0H8$6hmv=OCKi#gVtW>;=^l zFh?BpC#PP%^|hwz6H63L8f^%>ctr(%_#c{c|B&)Rk`CNu0C+nWQ`M~W|H6)(m`7o*GNH|wcNyr0%#{;L+zH?J8 z#QIIVUU5ceRdp!9gC%8Ay1N$lp>3kLiFSEsGGvp^Pq00E@#|JJ<%Z@6Sj{E9 zz);H^gXMpihT3!KgN~e@n5b{#isp1NpjSMI*PP@64>{zH!=6t{viEVvXBkNlIbLyq zpELgD|0tR|<=xZlZmTQ?FdD-P>1hY0-kFO`3 z{{V$+>Ng_l86`rFa59L$;p>mDKGn_LT@fbI%jR|3dLr}3wg4ZWtqG3BXO2k9kVpvl z#@vr=o~ECBJFz>$m*aB|2Q>`Zk(HE0#X;njI2`0tQg~#H7Hye7Hcol%{{ZTs1}sf1 zZpc@m$miRE%}*@k#pOH5sS`6r1Cqir#AJX+JPcH6GDPKa%EOXI27TzBRhA|N!iD8f zHyrc9{7?Bbz^QPP7~_zsbYt>1Hip3D{eJICxf>xu$ebxw*bop-ey5LadsR8M0$ovx zlecq#3FD3^6UP7m$tDVdN+t$<#_l@$b3m?Kk=21BN68JegbIEC01V@g{{U4|mSu+7 zmA0JYEwqNtez^QiI^y&gSf*HR``gJKc^E#NR!sLR<}wY0mE5Jq3XF0v3FoinO$E&< z=Y|*}5xERg3`}Kt=Yh!ww>YVi{jJCE5D5w^B#`g`C#w$m&NKA%u6|jb9K#c*X5OK5 z)1RBJ52kTaBf2vdY1owlLR<44ew4*?S5p&22KU0UZaE`yT!HJKPssHrHAJ_ca~id} zhCd)~2H~DF)7P)ks$ASG4q6SeqeKBqg$zOCBz_$ay*|+`#PP{_yg*mx5Dc>NIUL~q zC=Jb0(HPvkj@ZPDvHtIWlyU&){Pd`PI`}CJ62Y$qQfIe zhjg5B3~Dy#Z$X}O)AOcF?v1&%E1NZqT4~Rh&kvSD2s{z>7{_|f)%9tw;E|NNZF7Ra6nX0a*#>8%{C*0P3om z#e^>KHp!7AO@K<}g0L)dtBx{BI2;W1rM`@6>te>O979f9#Yg?=E{n)gIOJsDu6GZY z=rfAS7lP^L9#mV)5V8Zea}4q_6-IdEjo1Knt(z-WiVrOwC-YRsqhMjYYM7jZ8N`h4a7UP}FIRlim zWVc3<<_@g;oX5G85uUtt$MYXbw8&;{y`a-g&)RL|lH`PKn{uPR;7RoQq~PzjRd@eT842lmiZ9w8;Bb9D{EM1ohy z#D*b)H}kap?gw6bQ=#2-QXTB^C(L--19i^_)MS4yv8KtlN$=m=aB z^&{(7ZEm2{QdWC$awSrzvBdlFk(~U;IOFdQhv;fIk7FR3>7<$^W{pek!6R!NoOL5V zhZw4ux=WuuS*{_8j}a=!Tab7=cs}FOfY?C~ukwe5x4nfWw4Ceq~cRjJ|S6(=nFepi1 znOm?JBmu|srkNGD0V}TTtYKSdR_aC%`TV(T5e4O)z|5xAqz+iCuq6H7*v~?9jGo@K z<$^0c{{UpYX+Xh=yOs2$!!=^f+dC21It;41uF4 z2|Wg69s2(OPuI0rNK7psD2T&$(Syb_-2VVNo9yz!jq)*-Kh--wDc=Ae&aE|zhyjXH z!cLe{2_%!q&Oa>l6s|3V-{pn{@(KnUI%flpKN_>S4w-OP;0c;kD{bWizphUF{J6;& z?~&=nQxRAQWDU3EV!#Y@?0r9#MFj4VZRj#dTwwR(KAegMUU(P?q+q~EGNkljoMdOv z=caqrh<@WJjH9;-Ul{ku$I~4uI7pRz!r(Y1cK-l(zi+Aht47sgLcx$2i()5r865_9 z014ptD#&KKxjz}%WoMm%Hf!WIbElXq#x(UwQNtQFoF>j z+gY0>dW`$$r#=0uE2}GeR13UrK(0(~a1@|80QVb)Kp5cDr?Gw+FU8 zPh9sL3X+NuYH~f;MB0Jha5EjnN4etz9Q5r@x|sd0Nma{6T;am)+&dDW@zSM}NRITm zi54Y|ig{)8^Jmn49-h?Jx0xbXqTJGB0zsdbf-rdX$KX5Wq@p{S3ru%PBrGzy z4+Y2Y=O6Cpo;d5A3LlUZF49$nrk*n)!9^23%pT_ho;z|m$5Fv{lXo&ihB6{`$z9U7 zZl8`TM^TDbwUKb@t%(lE%xH&c1a!d8K^XNI#Z(q!D3Pqp+X-X1jyC+HWMBYKuRXDv zVz|1DrU``dI1$X-n;9wyB#e%7eqq-qsOd~grMNQ1fSdkg$vHe@8UCDcR_`>~uI%HH zSZ;&>s76R$Xu!hl&oIRt^ykwQ=AZ4S9A2h5*!urQw@g&8OS1OPjB$G=}%=&m&V)-TT4B+He_JG&AFG1L*-s6%S*NM&3OOEDiV2cq(O z^rGT2p}Hy#@HX-kclJF${Z&@-&&jq{kuqjOA`!@7TN(Dw8`Gs}U0Z?@U_nxGyRgR` z{=K`_Rpc{5BmjasHW+co^`Lh#89*45Z~*QAcL)Cf)j~%km;pm59F-i8!@XLb+b&oH zF`wZFKZQiGmyw;A1_yRr^55s)nh_ah^5k#zYOVoSE1cx?8PBgz#+~N8!JBwehk=}y zruk$v0NmOD@ecy+_M82$Tx`?AFMabGdUB`~!on{G35|XZE;DWesLGA8+>Pe;z9t*R5M^ld3`kD#c zw2~^u%CSloMN#|1$s8WMagYsXUEJ=HHB*jz9OomS%wQjFusQH2rhJzMGN^&S0b+$_jm%)=8;v6ymm_i}UV?VNP=rdX`07uwzYxC`L! z1Fu{G{(4pEA}zg2M;TlwVh=p^{J)h^I((C~WU=ALKwATza65m9=|#YN_tTq3wL>U` zu#ti=3Qjxm+dcc5iWz+SbW#Wro`*bwdUfZmU1#&4U*DjW1{4x-22V!q)bMLM!6TM$ zF5hDlkT6>#+>V{I_?iY@Q4zRSC1OE>3}o&k3=_ybdgRufy{m})xxC*i__nEIxSj_C z(=|@e<}o8T$}_pkE_dTO!60|XC$Xs}o*7@v*(BtGSf~I4fKQ@>oZ_bXf>$NJG0u?U zY@jF1jX_2S*k_->b~TxGY@1eOEhLfPtFLjA3HGf>nmG~UCk_C?X2=Jr;2%OU_|zAc zlR}cZ$-|tG(Sv|S2k_(9oC>7HW1o%X6389oKOx&53w<(w`uVF@7Yla`aG#np(446N z^~v%g;yb%Q&Z0|$5|RNSLX(0ILErKIwW9ZWq8Rrcz3>lChP5MTn#Oqx%Cf-GvM7W$@OpyS`EW7$Rt!=r+zBRc zv?g-$nKxwi9Bn;-?^SR^O@dxKlylvg*@@b44$ub#@s3Y#!kZP;(CM>9Ah%O1BS;8V zk@+Ata#?=&usHUqrj4hHHJRi2(VSZ%9zekPg69N|$DX;yL9ECP(P>p$RFHhE#1XuI z4tiq;o=zy-R~A@W>Hr~(h};5L%k!|u01!Iy+zQNHFPGlnLJ3(20kB77>64%HjOq_D zl~z>+$t#YeR3EAJbbiSLt-z~lTa zTMKI`Wr#|#Mp*C>S(gVNF$3HD_GP@0!Kp)TZ4s3SR*o0tSJy10FV}(UD&4oAb9Aei zz!DW-Efh!#4yBX=eSidgGfguVx`@*aRzT7;3+1VGFN~->sD;-p}dMRuk-Es z*;FqFsNL76)2=;pcHYAgNo_Ra?94xORW>t_Grt>8Wgv9M;3-@^49lyuTQZ^mj?xzM zSTRNepy1%+Ey(11RaLV0wBBY>= zt&9Z1f$QA%ADw7I5+V{L*pg?=P)-{iI&uMFkHVo?7|rss`C#R+Ll2-C{{TEwKu)nh zV}WJ5SlLjJSxDKz;{*(3@z?aKD=ZQGflC%7w)nxwAOW=X?%tiM=?#= zQWbgY&p*?xG%-{KkWIij0FDRapYztVXR_O46oF(|nlrX$#@QWQhbVifz#mbcN~bTM z9Pq3~14P*be5V=U=Y!Yr{HRtPyOYNo65z;~*~Ul(iQ}i>fBk1Q47j+vVHzxIFpK2^ z0Kgpj^N+`xwP?q36l^lC)(Or%anC>fZ+e&IHP8IBYzs>&E-DFw2_1E+j{Q%>P>@@dZ6bhl~0WEeY4iZPM^7|18^2Bdl3_Bh~q zckGPB3WX#L?(Nr{b^Q6N(JM8&+&qht8A^aYRvZ9Ed;b8AI#jJBY^#XCRT*bh>T$+K zPvxG!N|BagjyY%fmLR~c*!dfW8C~Aw^!LtbQV%{77F3L=B%Q?NhI4`kJbgM2Y8IH> zpm!Xp+wzQnJ+sIE0ITarw=T?^hc2WsPnRi;xZ~6gM}Mg_iXQiO5hFV(euH*?=g{ZZ z`FF)xj`@lOWyvyOx2PPCeEn-SIeyZ`Lv98@0)hNHxdC&Iaxy9IUQ1{coCH#_1Iq!D zK>bfWMtGnRywgh@@&;vCqh}>SRVu*qgVY>>_!I3~mO815b7mze0}!$-1^1{6vy}~w z26M;pHZ$Lvnpx#}?kAHM1n&|832p~b&N#>A?@^1TgeoeQG5y|iw3E+nI0L0C6m^#m zZ6&x#qA|DxhgKm7V}M5P000AzQSDf70kx1n%3oj`qd-P|@JCV45SjQ!#|?jE0)UwVDbtZ`thgB#c|OymMaKcDMa@Jwy# zA@jx#KAzNAcj#$(#U0M}h&wQ3jGfrVHscM(hZg+XsKRIOn&nDwvQlaM;0Y z5uSta@BS3_ft&zxtOEeVXQ1eK?}3kVMS(Hb(8gGZU5VTdf+j{x9Ajp7-d`3>(MtYLD!S+8|a>%YWs*=i?+^#?zeeciPnqm>+5y2uTCG&v!&m+HHooY6K z%>iy^Zs2189CjUh&>)NF9P@xTbyN8t@@X!m7SKhohb&H4k+Yn0?bF|y0Hfw8c9u{h zk%mb;f%%+v{{THIs-rY5wNytNgS>t3!`JX0zLjoUW^znwM{>$eGuIrP9*4iRIyfVR zQQP;9F@@ipah%}skH(QjGi(Cwk&$}*%8i0~>C>E$M?RlQUo1wZ6e?0SW-O|#K43U3 zIXyaOf)A})fr(a(0va63<2c4}IOF`9Y!bRmRaeU_gXJIt>5xt_*R3=rKFZc4jJT22 zGCp!Pp$9w@$>-2>!K({8A_qx)w-^e1q7{cf#mA>iALW)TrZst?jyPFd4>ggbW%LSr z6M{Mqtz26~Ow5tWWnQw)Dw#Lq<^vh`#(Dl!gJUX7Nn@AyERGw4`@%x;jO20K)~`e# zJKa!o$xx060CF+@e;n4emYQR@Gi-8wjlh1ZJ4<^PuXQ>|Jpybv) z{m~{gMG}FG?Qk-=Cm*kHdsLcqnUKv41h+UU3pyRY-p)rJ-1AOCTbDf8Vzx;ZM%p+5 zzHQufAZMOCA5NTQuoqS_%9x+-?U06SAH;V!>*^^Le$f&Mr1Ke7w;2xBMb7}J2eAGg zz;wkr&|9psJkgDzcN9_|YUC2zu%o|x;C7BSWl^8qFFSbafHvpoMN)fKl5)+p zqZtQq$myJ(oicefN!$qTG}qH55-jlC7EB3Y%auN)9s%bAkyRv1cokAj&kFDq9k^24 zuzBN>-%*~Gd18-Iki?OzfS3v-033BApy}_N)^R1wgn5x1FC-18w*$97iN|WBLn}pV z_Oot_8elT7m{jFQIXNfpj5caH*a0R7mw>=FLCFLB^WL?rj56jMjq%8sRFc^8PV8V{ z;B`6AY}I{2#o!LD83A16wsuHYBa9w-7|1@oD7frl+XfdbRs7Hi7}@|mfg`BydFP;_ zv?I4`4K^ou<4-)5i)wR@LFe(~xuT6;!`pJ}D7Q#j7PlumNODd_K5e9u4?DQW0B}ug z>Cr_rK3sw*8zgR2+{7y9rbiqPrhb)`Z*Z$W%O%7)*r2&w=Q(ee9CO^CO6YY9^Ci4& zsL415Rw<$k%$%LvF9YuL!Rd-R7@4))<`w~4o-!mu<12atfO z{P0S+^y$+i4_bE%Tmm1oES^ZlbL2@G2r>utDtmSntES5)pteOy+eCoEE)U&l3o9@< zA-PHCP$bZ~z4*GDvPuEI=IO<37OE)V>;R#Met2sF=7i1}nRE;f^}+ z-n?h=6S(bS#-J^Zp(_~*!n}ykfK&{CPIHrtbLr_=@lWRd{bNB2X9SJR4|C7W#~$CA zHD=O8)$cAPxRit&o8;t%QSt$ve(@c8~luw9*1FH{+*5xX%D|{Cz5W%`#|pCXK)Z94T1vr0w<2I{Wqf>cP_FR3%Ef zBxRjGX!i_(z-B#iIRn>&Da zh9ivrpM^G9E-n-q^5ux!@&n6q4}1^)v8!^=9o56aQHc!OL1s80bB^6V$-u*>hDf4R zibjyaKU%eO zCQC$P{p*1%KbiMVeGer2R5Dn>^Fb0U82Ok5IDRpn`D2XW4{kA<5E5B6vY9tUy%Bj_ zWkEOq5)Oa;e}zubq>{{#&Ke!XSA3Y`2d)QyOpct^Yg@9Z36qSFs+iow^PWFnVOrXA z7H4VEUC7B_?{YW?*PgV%uN)T^vM9_-Nh`h1;BW~3dB+u}yck5XA&B*hkQIUJf#fQ6N$SBZXQCm1`r?fG&CsGwu*q!voK ziHyaU2tWaszF7VpIXwDuT^X8C9d{}yP)WyLGn4on)CCzXm0mUgl5;5>w<83feDRvT zBw0~Hx7(Bg)7)=ci8mk55xnuH(CgKeNb<qLcKQZ3Hdn6V4lPhNWe0A9UmkvkYhBt|>R0m0AV_?m2T;aV-b#=tNE$NU6jdwTUW ztUK6Pr8!`t5Zn;QAm;!PlaF5X*{>v%0mx9j#QDBF_7C^B=rF2fsU14+HW*tcOHW|_Vyp8PmrH=S_L|iu1AH-J}&nFoj3C9&y@*pMN&6VUcMEtvh>U|fUAMBT$M&jd3OdrVt@`n zInUyF>A>qiZaPSsXiRZh`K(8nRa2l)GIBd|2{;`(j&noHY1NB5mnr~KIqonz`r@>l z7{tpW`AifPK&R*9IXr>^81MLVRA!P1Bn2Bkc|v2L@5XW0)cRDEW4pT(leNJaI2}83 z2l?WecW-jRF2HcJN0f8GJ5D-#V--BNGDaP?mfWDI9)s!JR2I0LkU3&d=rm)srH|=LAF9Rs^K%v%n*KDfA#vBW3e=HEyFB$*&to)&+_t5 zeh(jqT8Z3<)NT@%P@#b7$>;iikxfV$6>;5zd+5zR1MZnrv5Oc{t zL!5S|A&nNnH;c_X3@8%NIu=MQ(Ux{jS|RJQ5PJYq@LO9 z&U*Lvr?9kTjV=phc8hf8;2)5<3J2@$*A;k^Z+PKL6es4~qnr%j0(s!R}6R!R~m?ELZn&$Y!>i&UOU891gr=2R)Bt z?MrN4*4$3X5=zQ;Fi$KYz#wD}dye#6Wiz@ojxRNEz=c@O@Tay0Ff+m6{{T9(1cK@{ z%Dj6QC(M1lzW2XQ*z1fMR%?kvN<-pT4TdKtuTnr}=to~(l#L2}&oD??L1tZ~mB7#O z5zpX%nW-JhvyrvSv}+_;#A<`EIph%#uW)VhU3W>Ge9XL%KQa1yRl9?( zLH7vx@_Mr|Jw1g|xz?jrkIck{N~^StNF;xFoD<)io}Pk$B#tGGnZ7{S1h8TXka9uB zM?uDV`}8m@5zFRWL`BF~J7kR)9A^ifRP{Z-98`C@ot~$w!4@F8a;kjHqTx}Sa*##_J8}UXKscxBA(xhdIK##pECwX#4^LlDa5`3f)LTJj zD$*#(4S}~D@-g-N>ec?U6zZ{(ieHc-V}r@a#yI{}jd82YkT_WciWHmz1~K(Kk?r|a z3dQ|l{?ud4Y07{V23G_8=8D8R#B)L9&Jr}iY`Mm4|e88g7Vhpt!h} z<$TBhWJx!>$W8!J*!RwO;|Cv?HGVlAZRA!&T%3)k z46J$1M_zz)o`a=cmr|BpmovnZz=sO}4H5>&P@^D`)cT4pWo+`N|r$Uf?%vKe!L!z6|SJPdLCHCt2h1Wj)gc5p^i!HHia zhI|t26!hb7%g^2DGm52YD%~Z`?8^{}*aax~LzBST0mYSEr%lstb!aUT z*<><1x!r=`36+$R>YGyVYPU`W;h3h$N+lN)iK{fdu=pN zakXsbc*|{uJ9b$Z6Wcp*-s6m%4AL%|)>3SZL$hb^1q8Ut;G&bXWN>&q=e;eanCT>`|?>dk8e zQ7jRs$VT{x=eBc>du07^D;7Jr{?@IJElY07laM_QJ8}IpT5{e9Zr=bZQI zIssGK1dGNry7GN_?MP$bf(T^5g5{TZ zjRN*L<+vEZ!5*DWPc^(z*cXmizSK$*0_}DjXQJ%`w;4QDCsLAI$mQ1?R0mv=y+ItG zT#O$1!L2KK*4|O(M!>idGXU$jH!5+C6oNVDfN2bK+e2v<>x2T~0~L+9QZtc($>0xe zm7MbwX2UYJ-K~ZBagLew?Z+Ql*o4b?BvfEkzV;68Fx-xZociLTx`*v4*SjBc~jU)DYRTJN@Ar<$|X`PhJVnCj*aK znOSaJM{yyy*yECS5~Yqu9eU@tp~X<1gOd(H4y-tgqLcIoIUc<`Vy(w&fZHPOeZaQe zgpdgs`>cBZ09v7JftlkBP{uaC{h*$B9eF2rPp_p+lO$`fBNpLy02pUIhfbLMDF6i6 zjpe!B_d)DO;h*PLZT?S}a>T`Vu{{SF!1O2A-`<$gfe_j-P;<4n0&$#hPfBt;k08m& zBOf^{8$UWI#e9NU4CQfJY>HbJyCZWJ|b2 ze{1qaLob<<03>G}#~k$S_|y|m8z^OB%-tm54n}ww7#!yV(u4zKF}tacHtn#TrMNxt z5B~tK`qE-pS}99{lN_$rBOo?8*I1ArC4okq-6K}@G9-J<|vQO4h|0Ppl3M;zvKB; z1htmtV#uu|tCw#t3=S7L{{Vo1PI^@F7}+FE%ue8a71xoTx#~J|`cQ<+t1MDU7*>(D zW6Y0k2L$J*UI6QknD?n(DRw&*B*>*(uiff$K^gV$RPE7LWwovEQ=$`B+8Mv zHs$%r2MkYB_kUAX?)I4E$}D6Is~o9O#zsBOR`T8%(W00{3lE<-$4)cXIsX6}lCD>t zbPQfF9n)|rDLqFYH$3N$O#U@Z%z-zl8;qZEPa`?>>@(N@0Iga#*2l?jG#6$g54lfl zj(vGKs@E1$eVs7HQQIUEqXVZS(>r;`uca~E%60%ozF;gI=Q!GZPp4e*j)J0zR4dIi zj2I^5;~~yRUV39Z`(mxz+3k`|n83qsC!-9U4o9i!Oq$tk~YlAWrdd-@-?9fghO6yPGsIf+h7%|80=*DGTLdm*96Y-lra*)93JjnH1; zxJWxubXm;6T7PLyhUOx8>n!!7ITDnU734q6&HeMWY)rhWMjFocL0 zp-peWd#T_fnuGh|g+YDBR}q5pIUQ3a`$c|UtoI>>QMtzn{0?l+q-n?n+9a0l>~B|@ z85$u>Adlb7u*yzh;|sQ8_x0z67r!*vvf;4mS$4!fJ}O(p?yR6zkSq6$?odpAj-cQbd@t9Y(hG&+FbQhk<(E2Z5m{x6;@8D4WmMR4Xp4i;? zc~k3!RKZ^C_l^HLD;%?VWW?{YZKovQBGHC3VDX7z-<_1gpkhV0zJ?$I`bK?chGS(Cv)ugfClh)czNchYn(g= zB$!A!G;zE}XNkqNqe&v=iI3yeivIxlg_H&#*KXC?0EJ_7gVpn0@(c$im~adYT#0FQtVJF6uzxRfothO_6fQ~t5_A0 zN-yU?rD2Y0%_Zd#);`Y1x9E2ANL$fjrT3F|Cjcgim5PI8Yn;>hn&sgDMc#k%lQaui z2;qOIP!armZ4$%k+vlv25kB0xaA3{o7p_W;wBfuU+8r47QWmOVdJ+nv^Jvtf(Y9pY z(f3&RuiYL|YQ{EGx!oB59hZkq38_-Skf`+uC#jm_?~^YCBzo$h04jujb`M@I zA_dkl)h^304vH3llBAroY3T39tMs>E0Cj!!StKj88%|!$C~f%W7w`7muX6GI)6fo0 zs&H&h(bU9mw z?U{SeQrdE8Tp;rM;^(WLoFSq33a(ANO#u#HW`Due++d#NC*E^TD}f&s7PwmzQQ?Tp zLk(7FM9kS*g~m(PJQ)B~M?p$+S#%VCO{32I5V^?3k%M>{bBD0>OmrSh4oJqUpX=@p z_|Kd1g@3+>4iwaXm=F+Hus9fXA2eQ`~|EOO@tDlL5xS|F+|$zjs~!L|vxK?Ql60wdLK}x28${&*KW6 zjk52&WO>E^@ySjfzK54cb)>WvEzQ6^f8Jjyo52j;x@3={yuC|^p=5l<6KNN`_J?OD zBMFXT5Ma*cD1`fa4bRjrYskh6#wP@mK}jxmu0Ox|nz&RdY?PW4L-u4+dZ=pT^$B|Y zoR+wn->jEON7@%)YXekDGbA>?u&R%*Mo1s(;OKVt$1`M_vNCF|aWW3e*UDeBDHqe` z{H7Zl7Sl^q>piN(T98lMrd5+auE?>D0x{#&<_E8?th(GqO9(FLoAv-N%!ROuTf)T= z2=$0s?yf$fNDq0Hku)G^;{-?cB`D~LI{q$YAD?fW{k*#6;3n;$CO@tQDzS`(h(r&V z`N}mN`&hG;K_i)6!K05ubO=o)qjAr%5k86@9i$AGEYa;)hLVkYBgJ9)OGaK+u(Au^ zNXtozyHR8W^{t~U$J0r>}@ID3LfTFPGzZ`@;2m{ZASvUmGH8k3$+;IfT94Iec{${3r<1+8th z&%}E&19}Odhv>gGJN0^w(qRg(8!UAp$g|TE8)XSeugDkxI~cJ*uX_wV;kxHM@16Z* zNG2g1dKt#4y$eMplgh2<(1(LI5Z@thN1YB&%kKb8@0zaIIb66_GV@ytVUW*Dz?-Ot zM?|l$-~Or+m>VpQK&%Uah6DlG4Ak9MRZdSUB_$nYlnGA$#K!~v%zY9?#sKV(FjhN3 zg@y~|-hIGCoJTeyt_Z8tvff{2IX3%@vlDXyiKxxr6N>OlA!~lWl@$K7DyC=sM_ty9 zYUfF>&<{zLi_KfmKkY*5k)*)(ig8e}ZfhojVMsZ&n8HySFJ6Zw?*12d&vSdUYblmGsh zJ31MY_L+9xmt2asZQQXx5&8K1y__=q|4A)Qr+C%?uOn(5oifVd7EB$n<3@Mg`DJcp%|XDNVnV41%L1himbOP2ZZGDX@AI1ji6tl*Z=da2Vfh)Qun2Koa(V)I z!)hX#K5p`RO_x{wS-#9fOp$Bz>=&utJn%dxGf3zY6#qF24Su36!yNS^~ zbRU9g@>*Pc+uwU{zREr~{10H{-1Cq$Jt|ca&jR6EDH>~H4OL(Q6Id7kcglrltCSw; z5c0Q3DrP7nq3iZf3BkI2IbrdVCC+hHi<(Ia7Y&9GINR<-f>Djc_+arxFN`pweAAciwfpL14 z4y+#0ZnsWKfL~5^EQ8o3P^4HK@2L6dgA;pBB9GZ~jw#QTb4RgQ?(?0|l?<=kT|!?gKDT8@ zot5GhK*FJ0AZn$5g~g478l1YS&xK?}0`0gUnVu5a&{}t&&AVTi>Ucj;WdN40K$q^4 zgYR^Ng_6|V6v`V|(KW4_v1uY@sxt|bDu!@>_v>?!swO;4Yg4sW^GzY0+gW9Ab{ zE!7$^x{aNXh4HEyQwOu}rh9M!(ME8!vv$6FViTrU8-DUul1FZf!F!>&s1s`08xoDv zf1C&uIEH*Te9Qbdsfg0s-DX~xL7v*_dEO9veB3G9YJ{};^Lu<9uQ3fRxa9TU{{h%GA~Ymj zeIxY2mj<1G^}->ETU>P5r|~YP)c}S<@!}K~+u)#9P$^OHWZaeIwE%Y0U#`C*hmqCy zSQVI{QxeqdSn(yz0r_mW*GN}#k#ytJ|dqux|dxY7D%>?p?FP!TMH1Pe)5xL zy#%drdzHh>H+NibsrU)DK*+YFEnEG*4X>Dplz&yZ}W9pq2_ks$)ec> zvd&GL$ue-wO8$@UV=75YV2;v@YyC7PT*`(CWsl}2cl0LkaZ{PLN9Is2LWuigdTLPe z+sZrRa`p9F&Ze#mQKSWLMI1HpXDP(KD^lKV^8rmSmw+V;vHN&)u>}9{#WhJ^O&h(n z#;_4yb>nj8SEQqe^YyFZ%tC-jkQDUe!5c8m9zmGOOWU2`ppQ+TUt|t8{akZAOJB?$TehD4u$_ zXAF`O99{q7q*EIX>#ld2OUR=1sVH$r!E$azFFJE6BiuEnYEm z$<=d>XnP+}R{!36Is8`9md4tnnJQCV(<4$qcytlfO zGF59suXPO~lk526vqsCejZ%#L|2W|d@mQ7D4&mC3W)}tN=L5+u#mD2Xuejhio zGMx)2EPtE$&j039equ=+uejLmzBJRpXiH4*VQtGvhU{~vR_|WDD*#KyBfSvgO`;0( z46h+W!mOs=x0?bkE<#L6N^BGygkzZ#7i#C`p6;0yg0)+rsbv?J&#uBaM2DuvZYj%S z+7uC<7}B6ui!KO0ss?)dTV*rG{F2FjZOf{@<`@Hn!$aYGZRAnYST=zL*~T4U7{m%+ zxTMxg(C)-*=hamEH_Di&RkB`nvF9e32#zQZc$=_be`E423G7|IQ%^WTiO_1xj|KcS z7nTg_zB11b*pS&2vk^v23y?5lxC$$;zQ=oq^g9#0nZI-`OO-jNmLqAF=iku&RSy!L z+W_0A7gJ^ji+4!Wt(R(B(M;!^M{3)q z1F=Gm4O~r0UoY5BBc)|qMMo3IHxFu%zEXaMZWRB;6p+$Njv`b4>B-JLuKoSkCIn9h$kp=WcNNox@WCQ(D^vQwpeB4JL{_9tc?+9&LLQ z&=cTuF=3u`4n^&oFzO#0FNdWuJD@`l%s(EV9DI^U)OHcj?+qE)VOZ}Gwz7&ZN#}=Lfvek$Eti#j#fmZ=`9DnS0-1s5Pe1 z|5JQcS_~4m%&-rnhfJ$nTwlLPydqq9eU{ceF_O9}?nN3=UjQhdr4w)X zAPnB43JO{*$==93HE_Tyg0bk(OzBHker)qWG*m8@E>iKX0nUx5XG@@^Gi;;fdj7tyvshhpP%FK!sYxC@G>E5fYE z;D-%vEn&LE9TXK)GT3~$0o%hO_9nKxts#K6Ed_d?U!BIYKlrcTT#9Uat`mJ{N=rK1 zDSu)HoI3S)`vubrN~P0t62hiu)V;W;;+t8s1z%>2`-m$CKQz9)8ZvckqPd%RT;#0( zd4(HmEY71;3JBq34m09+sQZ^JeyiVI*X3cSFWTO_k!~sIm_Djl)QR(1a?vk=(HPAc z$TFOK6o|)xRFSzK_T;NPt=K28Qj*_m4GDlZ6NZMSI`}hHN6wi0cf%^>~ ziF5qr^tF}%G~Gr02dMFxO=AAR0>n%tFmo;1{HTZu5rr!0Z`Gz)zX+EJWu;P1kWYann^r`LLf*q0{+*^ z?55+V@9-IuTMC$P@Q4r_B1FLmgzk!ssBQTkZ?SA^1zQu^RUy)U);}uT5$Wb zwE7h~`>sI3@$Ha@FKeKkjRErF5NRVSPzoaQF>7)rvnTHtOfg^EJfSwZ2?P?(<+2Q) zY1(d%YJ$D)N9=G@0I%`$aH{ZWWSwhFc`MHIt5na`R#Rs6g`EW~FmyA+%c&M=8wq}P z%@41i;z)!FQl&nA$G>td9A?~}W^2-!pL^OcqT4Gt!pVAcRHK=D$~JJAMwy#^661ZG zNZ^bj=xvCmo}^XzwOxvuI#;lMojS==G1 zC=_-$di@&*kC8>0;(BuOq*j|qG9UAkExcPA^SUUk27I+?9DD|fy)JgWX5=B-D<#YstY$CfKMypLea62ub{2o{^D{NeH;hgWP}w^JS9;e5LnJTNBH5|9tOBG zOr6YT5fnCpOvGYPCMt(dj2IO>Utd9>0SgIMnw&q&UePEam6u0^oM3Wy6&Tbs>0+(< zjtsF7xV|u_Z;&ciKp#t!Q|3VD8s94zzg7n7(1HPGF}Mn)-4?|Ebt_}i=J=SItjY9@ zQCR&?Ss>a(6XlyTYO6SEH-Lyh-iHKT=+8!!sVYlf!r>X%6skiPkWBx7+x)e-w?j zYfh<(L95Q&U20xucPs3@OhF9bX zbesvl^EU4aL*Bf&Cnx3HYSB)=5n<5n;&*hhu?3{I-a6LY>?$ZZ(~!~;qu0-U_Gi?t z*;h2`fN%3zB>Gz26FKl=VJmQN0Vz_reZb#NA{xE6c*H~Cxw@BaD3}4@<1`EEA!}E^ zt$R=eb5fQw_exQ_ty|`x+?F`0V~(F%de@wJ)vK%JE^Cr#=YIhBP&io=67on#`+lXF zAGBltuougMHgLL-NZbFX%MfF_vX)m5ox^JO@&Our<=|`1%a0yyJkp*Hf<@$cWI<}d}-K}VInEKhY0>HS)I?%o*U`Q;d}u(-gY+!UmEN2J!1Hiig#E?)HSQQ zO9Nq?F{JekjiasUtqHxSx~MmE?bbb^32J|}_A{8A|LH_rQD&1ti)eG%>O29CSFc-N zFS%U2k~TG{%fNvwgM_dwP~pVtI!&qEj#4DcY|4;A@Bi!HAOEg(^)9+^qDh+Z3GQ@= z_vnI;3db!y>AwYutA9p*FTlTu0dt_1MXcO)t`y#NeHJ1if3;70CF?%q6$l>K2e`0J z&)rtZS7gtr)EA`5LRAMKVX=wC0IyJ@d!D<~Q#MV@{tMRijmfRTS^8?kSh))rNW(zK zXPF9+kB^6OuNr(UwxqPik)o8F*Fx%4x!Xd4Fgnw3suRaMvp42mU!O>01WUZTN(8RB zak2p6zbR!m?%h;Yx}e9a%KZf{$8t!tBNI)LhU<4t0&{ER^j02zv1BDE%v)(fd`s%! z->eJ1-^lrMiTFN|BB=9^CgY>{f||h9yP4E@uxw{E+tkkP$wVv(uAL-UA8|TPN zd&dQG_JKs(xZfZqoIQs%5-%mY;M!td z;?&r~womxdczU7f?GxV5q2ZeT0j-xg*)U4^@)*?Jf`@(hHp0)?TL!fT-t|BM;Ih4p z*#m-+)cD7@rclXiY|s0c#k{+{zz4F)C=p`!eRU?YXBE=qX8g^EmFXLbe~^>)Y6G{6 zmr4R+_N+ws&n>Bkvjd-wPQqZ*#7BMOl1-vYBCek%mgpy@1%Pwrnj}&861A{?1 zYetLT6M57WRc!PBIVCvi#<(luI63J(Q0M#-Z*B_o3}u@poV&Tvq@Z#k%02%9B&t(r zNFTIprSW`ZH^5>63l>pFidJ{Yd@z5(U^~d{Ku;AbunL+X{%QjeX;VoCIkah4xaen8fk26MO;P&bVn6_Uqwn zYUq_b>#z_YZ_nLvy4j|k@;+!apIrWwk^$(|!-FJMNg%kO2>p{Jd;OyKul#FeT@g`6 zOR8Sn$!$uJBld@+6tOw~Y`ut&%n9bgbq|cF za;CP^f5h^l4daDt5`^U~yZ`rXNcRY<5i}g5d52c=T?;6)&F!NMmZ7+Kt#I=1*8U zGPK8NT@EE}4<3znX}hN1KAt~&HHH0`6jCVW5sFrxL>I@S;}Q>f1*V~qVp)0V8`BHi zr$b8y8{~4Q9gw895!jcqL8c&I$S>Qg0bc@ER7yfwLFb^70BSW=;BfX_>Y`S0PEDWFu%!64>KmTl}eXO7wLSgE#VqxoQ2nOvpg zd&}IdAtRhZux0!oEsLwo?yk~>8GMMna;Lqck}Z#T&A5ow501R)6D3W!YoSc{=zP}} z;5Wp#KE$L~?M;nTD_t&sb6>Wg7qb#j8&Z}dhGU#d&N;Sy-*P2tZZu^{u-vgdP40#H zN9`3MGi1p6n$d#)mtOxE?!6z%u)q}LzIU{sSV{k>-3?()=cYSug?C#O-r~lV1#fu| zl>;Zv`o`Z1-+z(g5P_C@k1`4Pb9_XFaStH@3UeBvXol6i`qa3fi1C4o---s2a(^^> zz2{VMk#d|yqWX_y@om_+LJB>DU6XW&u$P$_ z*{C|`@FY(4N!N<58V#ydD}0@KG6(!GxkD6u}Ugp+I){i z=~brxgdJt3QG9urZ6V4usoI*ARKaD+WSvt1SpE$mKU3gOi)cQali8?#Np1NMvcUOG zYa&X?A3HbG@B6-0%zRo278Jj=#LOJ;sf;cTxBZI;DmFw@a@1@fugd*L=)|i|mSFAD z(un^Lp-65)XfG<*K#nQIY{|M89X z%#_ccUnaZYE`S9=a56 zymQjd-?{@5!uO~vK3XAagm4GdWAvUuCFWg}u`x#~K5k(dGN#wAcd2qntKZ$;e2R^s zSCC9?UGjS+`5`?@wp=zQ)we*GG!mj+0EpKtk|`2M&6~P6gMK0RAHdt!vCU2>Pc)jB zG}^73sz z3R_m9l$giiW`@e_<*s&ye*^3Ff^kUTyW_SIb>J+&&jzVhh3&S7U0ILM3B77y?e@&d zW^`o=zwEuQ{qe{)Un#&sN!50|cFN1RWcn4e3P^Z&Y{`z)ivFt}`%N)e!jRAO_M9mL zdpnqRa!J8z6EonJ^Lf8~9yYjuQ(g$6uZF^z7w%|3tqB5rz>H~x?<br`9dG%gwqrfboa_*IZGNk?zOl%~*&d;D7nU>phKkSUB=Ntu3myw;ytWsg3p zg3|AF9|R~}%&#)O;-7@c9xe?$O?U<4ptjBv5aD)yT#P>n`^V2! zzZla|tcrmBuyWas;)(@;u4XJl0pF%+P?BwLv!GBCx)QoXzdmLu6u?+)N13SIIi5?9Xi1W?Y1O!; zIKs9|K#Xyz3F_Ru?JBEbDDW{*mJbvz@bsplCRYbOhD=bLZF@;+@K_QMGC)=4MO^?( zX$A@_lYXCmlhwT65%AO=(0+^nfB^VEYxMB-P)n}*F@`jDK@|Fq@U4fa_DgHyFN()X zBI$~X2lFrC#3r)TnldqzmZ8FMJt%*}Fhgr8H1|_Nk4SQ!7Bd&@Xf1X;(7_W$Z$WV5 z|7YYDo(N*%v_yoK#6E0z^|XTLpRK8XI81_+vspxke%9YJv;OqmuahEu?BzQW$w1Hp zqRTOBTK?=4h2F`2@*3sM_df4MiQz;Z>GlFK>y|EfR)dRhwq0h9#cV8dyxmqbZFAke zGDD*y?J#C!*hxuQfDOGNkE z-**y0vZQ7~Ovp?mxfF<^($i1@SDxJx^YcUn&uG?+oZ)sjyc=VL)#Gy;N5=ob?WU2k zS8P?mp0WQ7PM!QdtBGKAZON=J^GS*p0Jl`cKv7%2)kaLzv_=4xnNG+K{rFd=zlnk) zMie~$Ov$AZ{#e!GMN1A0MN|`}^TuEz#q#pcfSKMqI~6x=!$5A3Q<0yQ;@Ig5*QWHB zFwQ56GhCzO9@_1+{{a3POT)v1#%Z!jHDXj)$@9sNR`r6&5OZi=$O0_}z}e}+58MCx zPI0oReq;NdXOUx@Ze5Ff1uF2gPby~;yx@UXG{49`RE278<+0!x1is=q@ZJhPj)#w^ z*L9bJ(`01_hs$-OgiOF-@@CGLqfM8hhkKtsdZA5Twkk=-WEa=Wh9jY6!2Rl`m93o5 zXuq8Sw_$trYXqCDon>F}2!rsoj1xDXI_1K``7w=$!HRcNb)$vSsB5v`fg?%RU=J7y zir-j9)9_uVJn9kE7Bw?+V=*{!fCmHa0J6+T=jVUdI)&X>CKwN!*A;I}QKYm|-vUu| z?KkQA?7#DK*=goY3t5WYYrqR>bi;72r20nL{ZJU{Ee0wJC>7Hq-olV++XJ4rf&&H9 zNWZLCa8GqUEH4@h8wp2mPNE+K23PK@%DMZJTZ6s}+4GX5G!Lja`z++0N@vRSUfF|v zK3Q*PJm5Ga7R5m={mf)~;WJhy&D;Iq#LQ>X-NZ9Z20AOI73#1ByT*Y>3WD*HJy-w7 z-f>1X)g^=UB1lt^79bQAkkCU1=}IpGA{ZbvA*9iz7eQm_AT1ywNbgOG1tfG35I#B> zdQ+()$hUEO-*fiIp51eH4!oB;bL-5V`|{@AnY26g;)#vz?i05+g_cHt;3X#{?q2fM z(%KtxqzdE>v^cmTptMk3lE+NeDnVe_4kMGGHkt8z+okXx)&oq?$MoNn17xCVqT3_LGyW_8JU6vHIpqT~N#hXc!Vr{;6@sK-`+vJkWQ~;?jPKHf2cZJS& zzY*c{EqT}ed}QA?Y3~MS;)I(7jdG)X;J(7)e)*ldPQ6IQ0zmDeof>})lbQ5P5O;`O z*RyNV?@TWZGDqTUx(U2(Rfs@yJ`>Nj7P$qTt*Z<>Kx_kK!+3f0h2)0sgtMq+vyWGJ z4*SQdM^x$yIDbK02G4oBI%YokfyC#D7O&L$glQ=wqM^xHAE#^ymD0hAolL3(f@nhN z0|K>(3hmGXyxI$guvwDt0Q()5 zUI(}x_TD-F-o*g&dD-OWzlawgXLJ&}wX$rONukF%j??+BaPLC6G2B*BuUeDm;x0lo zQ|RDAV)6?Bf5NS$Fh%mQFE{J%XO*rCJXzEOQp5`@`B*NkDyf4GzGIGF4C4#THN@0) z1UpxB1dPRXDN|0PuxS+Bc!f9Im=D$X6`ClPJF$+CV~%1$9(}riwSdhZ&L4MF$C7kK zV?@a8AwbI;!&MZk@olF-%;zq#U)XJQ2e^Ykf_#_;9a?+E1t)BR-hxHj6INhrLu0#1 zVxJE~bxwo{!{h70P4*}n@>J@g@#<}v()&TKQtv_L-X=o1jx6BBMl?AtlH}}jtv-l* zdgi9Gy+!ru*7ciF=@2zhz$zec32oQ)^6M{Mx8zNu6Snk-I@og%5c@(Y6*udtAbE1e zV{grDt5vl?@#m=p*^*vwYRgBLW8cNhydjSWa;+?q%~90w3VOxvyr*+fAHp;SUMD&J zjKB1d^0-atJziBIX%+p$jzbMvWDjNJzAU}U3}yH>uD(URdTE|k#zQVigRX7 z3o)mwbiC=(OJ*9Mz5KAB`d0AF!fNiVkKbhJg>=NC3uDRB7J{&h`h$whGkbVQfXy9a z>%ogUiCO)QIsm>al(@jOoO`)#_xPns>e7}4Pq zQ|0Gx&1v$^YDqJA`2w87q!dHzPuq%Ps~JWHP=b%hmC=%n*v?fD3lb06Q8Oq-yH%IX z*|IQ8Pvmi|u6G6ffRrQ&bv6u$H=BKsiaGXuGV=ww&z)H+v{dHo_zadLWjUV{34-c# zsC8uf6I;G4g@`moz;rfms18NF z!_YcbOo-Q$%#}LBiOcuiNwCKDbp3tz%L-#K{qoa?udHTcl(HYZ`I5uY5ZKs;styoe z340;zV?CnJcNEu6O~WK2(yTCzpYd|b%;KPlJjypLye09rgZuofG)`Y-5Z$Gd^&CI$ ziY%HIs;>ZbW{2kx!~%}hk5nF#_BaS~nESz+&iWR&dgTQg`#6a0iVS2!A*pfbPuD?% zur#;C8(p~P9^5~+;M`6~lFNzN$N?vQtvbm@>ydMSoeXwa_W=X3(g}OOE;r_$Qy9y- zguL7vw(W=P+CsGAf{hn%7gov3nVl=Vl1R)5x9U^k33#jd-eQQx1Amr8NjZj zi)K)rM=3Hn`@3VKERQYM9aGP}S63()!u)&~bQOj|P{uC@u6Wd4-f^*?*1b9)hKvq3 zsO{qvB^%VEz;Y8SLy+qx9W*H*?{pjLs{jrTf_xT^Pz& zT>2{jekb;p@#UOfph*FOV@C@ifKgjAH?J593&+WOFN6$dYeL16LVx%axne5W9$$W$ z@Uq*YYnVoa0xP=22gldrE?VC7zs+3pxi5hR5I#CjI=o<8)Yup_S-$Ng3>E&cObUAp zrbq%$X9pXJwsqBs9qUtB8Jj$7u^jd*<4KaEjAPzmGZ1Kcb#&HT5 z{BWzIpMf5s+v`u-0-ZeIGpI_xcGBFb>DcL_old8)rO%`AL(z&(tLI8*FIQkGdrHD{ zp5xWMa*Kqg4DGOYG2{xL@EqwQKs>5qSsPdo$>+ps{x> zU%@8&)M4e=WgH_lZ}a}=@nZLZ$)``3rt%FVmHb$7N(}O<^>E|bR{Q$~3~T!0)noiK zExrps{NHTr1@34IvnMk(iR^sY#gPt(htDgJ_HU}in;xz{0>xSGj!?b5bq?Jeh>#{2 zsoWRfV6pM*-z^-P6LU_wutbKRB_K~rc8ytj=yfh?p)3**tcj7>T_kSqbtKuyj4qoe zq1RZ9ldjslm31pXB=hz8zVb4USmmv{QUU#r3MwjcUMYR$qivf38Fz%5|27C~a;;EeO6hYa1x6AU)um4TSoGpW)f0u!rRiMj+0XzHy&H?l zJ#3nB=f8?#W;>2OFR+dgiy-@}oMq|JULpFQ;;i8gVy>Km{I#Qb>$&TK$2J?yA{>x|4dYMNI$3?Jtxn9|8Cx*w*ZM1tBHZ>!o z4NC{Nkhq6Mp@CJh7C!3bf}%n?pYD)zQ0(d|AAX)Hc_+L2DmDL?uhFIn?e{6C(21w& zFI3$Lf_&$Og05j{_a}u zR`z=ByjVP)9>1C6+~XCfg_9e9Ja_Um^;}xVl|CebJiptQ=;>9*jm6>v*6}$CMRj2I zgx2lLHL%+xkJ=092n`Vh!BPAqXV^8nX|`jnCTHf{Tdw5K-YlKjr=pFUn@0+hRwgq! z`Ic;mN`Sj9Mmi84>aibg6hb8l16F9;q$oOqQ-wG@!frG^WdpZ+ta%WDd+w$El&}{R#C6>IpA!ms! z!nk<>r*u8mW35J(Vsso_iv)@~whA%^#{~SG*iVGz{g`7CZ|;(%T7;!ZO*u z2nwutaY%Lh7!j@xO$aImGI`rRGSsLLjL>S%80YAXhM1Hl`E!T&`4V#j-EOtW9Y{o| z$x26`A2hB6`Fwibk_g37pat}FpK9ESAie(a;@iFnWVy4>SQA!QvhKLM^Z=ZFxU*Ns z9Mi@}Y;JZ>7ff{^y59^rQj^}9l1EkdyRXSlKGOEYT5v0|$5*YAn{_vChQlGTa3nbyu>(?+k~aKnzg}w-J$8y{7aoo7ZoXTq zGPdEKLl;8^Sc2!}C5-gUE(uok^bm}iyKKeR!1KoLmSTqItcxpqIDRl~z_684aB@rywPRmj&fhg6#W7Msg1t_g-0Qn8+w#PS%3 z-aeZXBhMqOx4jqLjWbfYqMADx?vaJ#sZ>-`PPNZRdDdot0yu7xYe&RIPrZFuLGxxE zi_EN)P#zX=T&TVBBx`3ce8~PR;~7nhVw_CRlDt(9WlKQBrG#e*4P*enlQ7>kl~M?N zsqtxBoeTA2J~@Og^6d}+M+#{7!?pUYjz9hE`0>YnqTO-XhX7%f_ob# zkJE(O?~%T^;-#mHx&2BqyYTUpsY|TzM{b9`Hu7R3K>!*P$q>8nvH0E$82t^-M^^o# zCE?4vc}^-g$k59!2+ta0kv_!-y*MxQwc_1Otx#Fb@G&a24lHKV_-s1s&X`z1)17*T zsNiP;=bO)Evy=ON3ZOV`0}tN6{Ej|HAv{d_n$G*}II|OtHwq9(Mv`w8uKt6@ee{#W zfpb%xyW!lG%T-)&l}3Hp!bbr;nY@r-s!4}oZEGfuRr@e2?ia9 zT*MB&mzp1B`PKJv%BeT+9Pc&?ZqM`0D6^n*?YK!%h(G#`y%?*IaKb5kSPG63y{d!8 z`2$?X{5GU*CZu{4m3^Pwzo1? z61DsCrt+Nm(kY15W!)D#il1dVNb!AAf4)ND%D|-3eH=i2#~4$fA|hMcP%Ls@Xa>4r{M$-;JezFmnC-`z`4q$RN#T zm=aw+{7Aa?rCwo&UiAUVm2>_3$Dm{WU4C%;e%ErkdpG%$_8-UZl~^Q7k(ZL|rM)?C zaOss%q4brL*QnuY88(d#6H>F3&u1{~XW7AcZrnW^>(ZQ&rSHFhVq&OxR( zw~Z^7EKV>fSWN&GlEZ^99C6PVwt-oMibEfVjj-aVzp^GKPvB@b?aDht?zT#o#`SN9 zv%sCPj4x`8j6#*Ia#B;@)kJLYQBF!nWI!l2kBA#rV`nDoEi;FEKmkyZ^yMlm*c5vB z%%)3a%~x8-Mo7?!a;}D<})5XYonR5!Ho}Y^uaFwqm=g zZtCK<3LsLP+#1YoQaHWwm1vOo9=4=94OXT2s~T*`)0e7?2`D3l_35ho zw;|D+y4c!iPDfuCbtIlv^@j(oET{O2UpwoGmUx!3@j2TLb`ne}Xu z2{ma!tU>ML@Zv zreYCK7zXG;IJm#_86=IY^&pI&j#S-#V*ZWH5sA}9XIeFDjl5_@wspR>`P!}^aNNQj zfsQ|X6?%!P>_sOd$bZ~$iAj>5gPMLKJbXeK*R(GJn$b}H0Mz@Ct0pKXx5Ujn#t>g= z@W3>xQ7AQ&W}3bZ-lIUxNmOA9q`0q>IP>Zb&DjTq#B?`^7!!m$w?aeZy!Cz9TP}4= zrL4XML=(k#hQu*$-05DH(^>j8kft~;gYwLUP)ag{bME+;^MlNW#Bh{l{!WM}J?dF&nLy)MD1k;c}BQ@v25{568 z&&lvf279a-M+KuspVu*R)GtJV-AI3E%Fd?tzSCZZ%Ca<&A?H1?mJ?&8}M77ulRjb=GO>D06;E)>{6?xuP;T~Y42l-pai#?01<^9F0nfpRW9_~5YrqWs(8f2FA;e5|> z6KEH~mH^(x=0dj(I@~6kUfs`c6p*UU>3#xw%5lcJiCyK`m(|(OVJSOl?Td&auB?6? z)L-CR&AbzrXG55LF^AIg4W1@^Nn2XLKUA&j0j2r6Eyed`CH+FJtP z0u@t8)IG;qcx9GTUM%e~e0Km7U$m3XKkKJ0HN$kzV~pgliV`<(0k zi$|tzHw1weiRxwsLICWxi&;H=my5%(OB-a^8 zw^KAHHFAf^c(ndvQ^mzS4?JJf>(`@;5xX4n(}oDd*QAp$pfl=rLXgwcOS#sgntr-6 zR3ATx@)(_+1UPA9;yx%H5A-RWtnaU#nwrj#tQ2(7NPMzLWs|~<5Bh4O>5!8DP>IVe zG3Lhkxrf!g_%r2f?sk)O(M>1FC6gBG6lZQ&=G&pz~TTuK)}DC z>S+CD$}f9?bu0nd6-0-*c#X69(wmTt1wgkZuRf6yWfA`E-fB50y|=OZ(7XyKRe@VT z41`%Hb`wI{M4359WtI4t2m+-9C)ABsyYyEZ=#g)^;>~}6ZEEfo&<$Wj#PSGaED6(L zb}(c%L#Qf3+P0;u^6-U)+|dQ~k&77-&8r+{dZeFmx|f{o?89z5YUzdvdJOftFPT!( zqa0g)rHhKKah7!ah`6bnx9#}8ew0uo#`>-%0GiuJ`B?5(Kn70fo&-96FzaF^rrk+5 z>UBd8a}}^~X7B9FRnq(XF!5=mX&S#kMb~Xh3tz74;iU_K#L8-tH<|L%qos#AFX&to z9i9or_Az6>1gLyBpVkP-420JtdQ=Ac6mZ2l8@5}Nb+=6Fo!<>p(KFE{O^%40E}6$R zVly=A5A^xpz1%^5o)1A=#JBafYZbtLbMv_vl?AJz*nhJUpQ$GT7R9t?qIl#iu zi^JJPKz-RXe2BsL^+LujZ1>HFS$N0z?fY*9sGMLK!Z))m z9|zda2STKPK#pH7vRu#u?X797&-}P{(a>mWe4%&aR{-!hN(BC;{|0*IUgEd?!i2cY zDUFqQnbCbTmK%K8F z8_-8}cj?evRVT%0QYcdi?L-d2*tD+rzst{g9*V9@kkTJ|?X96*(OdnZ#KX6GO0W7M zMyVm1!s!pFJlsPF|MpPFGsTo(;BwAR!-Bg5hvV}uY;HVaNBVQ z6h!1pAno$msE>~57d+_Wf?E@~&`Bg`nJqN~(dT(8!|pJz=NTbLF0yPny)*lR0@(`^ znbsf2!5zY92H~R$`-l0DG_|`c&%e(yU}JEF2O((q465A)W~{5Gqp1CPA9CkbvYFlx zeRRKjD_gw8gdy!!68u8S$Kdo2Lqx8OBI)MjV8p-H=A*E5Fm zOOnPn@vJ8o_%)(Kwlt$Y(=>aP;;D=sP;U8|lx1ZORl04d3EWE9hvMrS;B~9jrt85m zmV1tNlvpoyz?%b+O>MRQ6rLR(Q&_e%Nsh>}-B`vJw-xB5M&DoU3OAeIB3oc`82g}YPEHqa_C50G z(tscwA}Er*sz6Yk6}1s!X%3(ls9HAL)7^r3y6{i!HgOd`u)3Qi&V8{t-xvS6-%d~ zBDKoh?`$TAFwb^83o3Ry>&8ey6-j?D=Pj`*Yx5GEz+h5Qt@k>b(dXR$9L*u>)?yE$zSsd^@ z5=So?u-=>b#Q}_9;#}oXSlusn(HHjtGlx{XjqPIm2zf_5_vlK+r)Jbh4}1lSsKK}_ zCF2xVCmPf)NFfYnHz-EWew$}^8)Sw~YzHdGl?Lm!S!E+zkib02nE8VzIIc63Jhccj{=RYDE$ zqeeG-Y@TV53?qp&pj34u^Ie6(;9$4>nEj@*N@(MyLaH2Jod}3#O@ULAHF1|<=kl`u zon=GfplP~mBSQ&k3F_0bb zQiPL&m+@ltQd_X*lz;wIK}Q=;ItRu68)6ahvo;&RVXFLn#9V-6S@{KMJ%EedQXPoI zqwzmZ#-{F;_B|g^%c;_If>|0Njz8n`Tqnxe%+_e{#y8g3hGFINbs?MAMg*kA{Nd-A@%(m zQw2%0+DcvdvrDelWFi!zpo?m9OojfdY^H`O$f=$Darypet&&wVIbqH;e4mpq6~)>* z8gN8)i{=c&qv!R;RNKC@e9LuqBdPO4*EdvEif1x`I&pq}gObhEh*&@L>m=a63#1gJ zT@)blFd2xHtPB_ob9974WxxQiv=k{5SWZ$}nv`EgT2>AKlmz?-zz2^p^ly~!{6c+ zf#BcbJl)|iDC&2O|1qPJHwp!F!stT1yr6%;xj>y^#y*%oBptm`&M?#;>XQ7k7IjD& zwcJS)0qz7dCrt-Z5%51CYr{#LktPuxeY}45T=DmtsAFL}18t~h47Ty}3 z2sh~Ou`oCc1;xN__&CD6{?Lrm?-Dmi-ShVJ!H~HAkMQOg7)c61g}+PG_D6WbVep@9 zk&ykZETLYWFf{rv+QR%+AitkXia>GjPw7Jae=jFBql%+DEpIuMxfj=u-{eqr?j>|2Icb;1^!bO7~0Ju0P%YqsR~!P z7l}E4UdqJX*PDb0@+XN_Rty;M^A`L^s^)Je;_t|kBjiR*gT*6K&yb z33tbk#!XsAf7>8Q=K5$06cmm|Kv6KbQ@~#cfYh}=u*A{F-P73uigJZv{>W?Kox6Xm z-`oub!zhxHe?a^t*#zozpH#*I>Z%ANA$>?HtOdnDf1CL2V?omg?)*C?|7)BTl%(x& z3<(YRKm0d?)W3TEBcK>JI7z~Qe;@wE^ZzH2^!%5Rl_mX2OUjY*%aD@)fByd`K;x&* zqObp4rGKt#KogYrb!~sB7lO3D1BHPJuS1NL*llkh;e0{##G z+wiaT9|iMuhxth$;QzL;|GEB?)Lvftuk~LJEc<``|4%@iiIMJky32H=kLUIEw9H8N zu%G`l=SbIEc8A#j0LjpxrD5Su<~4hQ2KD)f9ELpSI=^s^<@ycVtePEzu_UuH5X#A~ z16RdUefI0GRKI>Yk94<{&VKv+gK=p4s>Q^DeMzBkVrpteYQS8;?uXI&(>-si&5wuf zE%V#j!pS|TYCCbOBBFbxEk zao1_DWeA>;&_SGiZZ-#>m>wF+HQ)0rmh&k&?pwY7!>XQ%iD~YYeS2%!#3qjZh#;fi zvGVxXUCKCS7T#hn;@f6bx)gf68_;Zt9* zgQJ=(qoSfc_r`g$i{Fd~U59h~SBv%*A1E3Xj$Tz@O*!NP*xH^)kGq)rK z$sK&xak7YN?j8m{wJ)3ke7_)_Rmhv3Li{Q!l{L`$7FsU~pr&itJ66bDW-c)%5Fg;b zy?BJ*Ys$VWJUY3*awvSTh12wFZ_4C5dX%kv*yvlSR6eym@7uEaz^~o9Jc2)9iTX3~ z>jS?_GS@Gm%hwKNIv3Ri5Au}+C{F4&xRu4z=r8!)c;nHY^zF-Rq&Ls?^sHqMsjSmQ z2eqN$GgM?C)mjHM*jAb{Rm&6h85W0U9xT7E6Aatj}h+>aN;V>GWSQTGwq+ z%6_G-`{hv!db|C?iQ1|WhaZ$4WFM}7*glk-Z_5i*Mo$kgf^)8mSEdB2;THj{GxJ`V z-e#XEC@W}bmp+??k{bqELk(EC!%kd$MxE1jAJo&GtLlE;u6#rHDImQ+U9mQBI(Vuq z_b{`@uFzf8#E>oH`t2wMgv{B8lFqw5O$Uza9~Ymd9G`AY?;Xq#=I9t}^PBcUjv9h) zh|!>Go@RGrXUS;tK)V6HRRp$QMq3H z(x%Uv?Cscn1n}(rJmbUk4qm6%JP{EG)g1c)`9|5#cwxbQ<=-6J?wDL|flS(}6fN1~ zY0dJpzul>D6~XQy8m&xkK9Ho`8N0)r+Y;LJ+2{qQ)^H6->s4jTh;Zpmtx$AWH}MCn zP1dD_!^eCfi%jkz$~!J1@19Z=feZ?*aDB%VAKiwdB{c$T-=&%l-w|IioVtw3u#?Mr zB8)fMW!2C<8lAoCj5L*Req42fQacNy-X5f=JpgbseJDIPH{(k++rde2N^Yb$jb2jye_z= ztKXl#cZ>;DsFbG{N;~PGr)8j)UKu#h{I>BuYx-7sNa)yhnAJNH}k1Al$$p&**^8)WP6u*a_3$?!-ILTYk1FOc382) zJ;P_CAMXwk5*TT==9#8j#PykEuh1}u{*eEb_e#)H@C9rCKA~MT9!AjEGA1VSeWv5n z55QfTORyj|Lu0sizO)J1B9Yv>h4%P3wXN>k>1n?QhE-^U*FOx?UBW~DGnZ=S}84Zeuf2G-e;CS}=?1w|HaC*Cq4cRBG6@wWZe$m`e zjgJq`w`Q{u>*HG(CX&96^?%A!SbOxTn26auYk1upT`{B;3}{*%Ht?tE~CZCc0g!w26FeCpe?@P&KpNp56GlS`;yUYqBiq|4WIJn@fD zA5BS=)K-(1zu8-_=Z>25{Cq@cTt9VDR55l*&*Bm$rZ6<$ogI{@oo<=#+pl>l#x~6G zPRlaIP_)sSb7vkuug4Dzc{nlYsF?Bkv&lf``H%Zl5!0T}eJ?1z{|x{iEa1}y=+pD` zbUBgF@DX84d_fh-vwx$Uq0PvEe1=`JA$IV5emKo;mh|%lVb2b`x0g?!goPDqE!^;v z>(fhQ!qaw3@*J-6q4VrtUVMtAqH6(NA|fTq`koUa>rL}`i`tl*+pX+!>I`0XH}hV( zn3WQttZ4HSjosETn7g~I3=Ef+f#NRpc0@Rvr5B2~R2SG5^-u|(6P<$6I_g~~2dCS90r8iP+eD<^fg$CR_xiaDb? z$$D|QoZPq@^h1&`K}lXFw5WK|bvQsh>zg%kx48+41e7%-jw!rA`-Z>^gFMyNjmBx? z2pK9tJ&~Wg9jX_n4^qSNfXLL`0MxGxFsoCtfxc>8^51Q5nGAQg>py(@I{*IX-#5i+ z(MB6ro4YlIjFIxM#H*}#ia|y!A9goC1g_s~r;MM|dAV6bfPP~FgHl|^E|7n**+}2L zK0`p`01!30#{p{B)+QDR0A}Q&}oXtGn-Rbspb9Wo7keYjaBY$}&(uKev9*a3p6*$0!2*OeP z43sG>7zXjoyieXK6%v^vLxWsIGlMzwGSzcc8*49ws0B46E8KHosLvu*N>AS1tT;uc z?2Vh{obih$X6#fJB=w*j({clFrrfNX`o4eq-iOrl_Vz|0=_dK}wtw>$yk6<9*B$CA z({^^lm^KzerRU40glWcv$K&nY{U6_V@28U+Z6hUoD)PR6RXOMd=)wC6V0dBBSEe*`*q7R{jkpY0 z!;(^zblq+5z=#Nt4N$^?ObWEq@Oxy2`PCyS*i9ucY-rmyBC9)RrQ#Hx&h~3kX{1s++5!yci!2S9bC#k;>peB-Ib7t00jmyFf zLiEgUwAlbLMb^SLT)SA`gqJ~IxLVC#UI;4|J?EE%3>}3e9CJ!Ll2qbP*v6SiYe=9R zFTFxH<6}pd?W~=SCo)6_XC%P2l|5uw%^x4Yo#XX7wz!-E{u(raduM~Ij$9v8iMZN? z%IZv~cw~2>{dGqE1A0VUS5Hi;;?m$*x-ZbzOJXg$Vfz?w@#A{?vLD*b@{s`!GAt!j zt{*j!7bgr)th@CVR?@ZSB!VhOneYMg9rjeQ#QFFC?k||WY(y3?XL2Y8VMpS>3kS71 zo9tirErk(2Y@>*vq(ob*8am7)(7SK{?9V8jXhlt2-;(KWoWeRwN~56+ahc(jjVOJf zi|K5=o}tdPqTQPja_5`%jXZQoh?gsNHtX>!72wk;9w`{P+|a+dx%mkFwu5DhHGI87 z+66n26Cp=1i}^F-KsGd?gpZ4xct9oNay5$~f1@1Y<$k>>Su1ngr~&kGPkB;pWd*D- zfll>JBArge6OTP;UsyrDB%J^KuYbh_>?UsMVHM$W^^&N}FHAk1k*z9UAOSoZG#Koy zma%Y`ODeIgLn-9@%`IE|YyhG!`X&TC&~@LgZw{BJxC?3RR(wWe(_cqJbMWJ_Td0xk z0OA+lHKYk*(0$Z`)Juf8rm%AL-+jS{m!p9_x3h++v(W$(3c&jXSZ8y+(9UGYmuD1% zoNZIJf$)BK=Q1JNZtrNp!-2}5&q*i)tea{^FP$uP|1w&=ZMQjOtMO-z-yj-;)nKJC!#udDY=JE0xrwarUXTH4Pk~ONI-CD+o}5yIjTMNA z4#Ofn8QDb`%*+k$rdjmz=T&C#5iCYPo}KEK{6WMw2CedYrFF$L?EzAS+|oJ zNTfp4f4T6Y=t<1J3)+sY%3Y-m5D<{Zc$iY}xJt;f3hgQg4buzgqX63YW^tn`QVYn6 zts=Fmbi|MRT7I{_Z8ygKX2XdBLp?mw>{L?59t4OZK3AhbwdxrMo~nWXkANn;zq^-H zBc=07=0gVbgc1%2Z8I)8bNHj{iWQWePtju%@IJ>tU`P1$PZOQbdU;bwh}z$uP@*$mgK4ZeGAfOd9(WT z`top-InTZ__+CtQEQ({Spq^2J=fF;HSBn#SROG-ic>sTTOdQQ8t9{L^g8c5dd)z!q z-}&e5-I@=sSR}506rnbx$~x5O^E5NJtl-_(9r#A_T!#q!LHIxon`LZPcgRf+|LXb{ zS(!JEER~;DK25IXQ05Xs4Q-*LF}K-jRi@Zf;k73o&j0R8eC6B^RmRuKURIMBh)Db#x5 z;VmpB;;m5kgg)94@qoTA5z0J7=fibLZu+V*Kqig4!DCq;m0?UA`qI_41yylUE`)Nu zR(H{MxEqyZQn!7`n{)^0oBR{MTa!q75i+XT<7)-^tNRTBanKj?MH{;2U708Ovn`fq zEF5+(ZkR~wWb*aur0W$70ZmVCTt5Q>a3Ckuy?;Ns8wVC8NMv-6-xdK5SC$B9N`ndt zSp(OLK)*)wS7sr=iGVeTdyI>%ENJmTQi)Y&Rl?D=;-PrG9MIFK?G$x(h5a~WD}TMX zmSk@3`5U2hgZF&6hfL_pGm?LUHKkZFdpOSOd)e1)j z{q*Tmzl8%FkWz?@2r8BZ>%KeB$OM^WWfv9DJ8VqIrgE2vltxvPe~0t``d|MuZ9whZ zZZ@W5m~hNh-gHhZsw7VTG7_j>Z{K72PPzOS^b$`TLn3A~J-lSmVuJUV9hV;EzPd^n ziioctl&M6vGE&e`tqD<3Q@j$OPzqB-dU_IXRR*XTP9BZ*7exPMk!kwaEwT6Ld#X3C zX($1mhLJ|&JSs7&f4X1>)%4&jMpLE4nm=+SC}P`5F@aBF03mcAsi5xA6|lH4DL*#e_-iDsRIt`O@cU7S^O{s6jNED{>Psa> zo{Hduk6-Vy%^3rO7M~frxoDk3FL9R$ zbpVLv>98x*VUZCrs3W9wy_$1{$Q#L>H$C~@QjrCSbvHCYl1E#(|eR(myY1bqiFq~pLq2tw{jq!1#ft1WuzJu-> z95ez39Q^RNzhoB~2AdziYhjF#HujzKWa9wb9?MXo5}7E8-2C+VYQBm~+FLq6h|P81 z3{1p>u3j$umLjfhC?SvvYJlcLbbyD4?L(4k1khk2JYYy7WPm2<^iW`b&I+QgFotHS zr976gC?}gwhR7cvHd$s6kj93>d`g|&02QK2;2z*RpEC;5@$1EFq($oKs<@vcJoiVT zAs_NLX3>u`pT>M9Cj{JW?v&yQZlOe)wU`AcmFTtMF>OIQHHBr6IGd?cXo__5c(?T? ze1LpPZs?UMA~=<<1FDF^1`*zcvQ6<*5IZ>m3EGw?gk`S07B{p}i=S{3d%R6RIWh@M z0^~!ULNeBFAW>F0+C1$-o}?{k=JjIzY4<5WUrzRyfi1wjMNkh8WGhoUHudZ@Q-4y_ z=-Lkae!HM`hz56*lpj?-z$24G{Tu@l@3nq^fGQdgG{j&xb-W z9FoiVZui0~PW}ijDIPx1Y}JuW~wl8nK(`x z`XrJ^2w*t9m`UEfJ={eUnmj@jCQ5o0pOk2+(kMcsGjgWcJgL>mmOSF{xXl`ky>7Un zp*a_nfowFo8tC7s-gu`5u4Y$M(nS(BH}rai!eaD6S-D`BcmN@cq~&-r4E*#ZHV-8% zbPWx=Wc^2{2!WoGclVfF3R>=*-DdIwN{D3<*}I@NYZ7}jgHTrK}p!JV$v5C<4ha|B$a!w>}$;bX0M@J3~4Rqhh# zJvBFoH0>vY>6cm{-f`?K0s;NltD`C&T7#8V>HT)3`hFyQTGf-u%`qVdBa{;E>ELxN zf|MHi!o#A)UDq*rdU_&!430c24p^j6!&+QoOS6za=~`1LL&<8MIN3dh{R*>2NGf}E zb~Xn@z6E!ar=LBMLgWeSi0{OA(VKL%iwSzfs?F&L@x{(r#LkwX4a);T!V^;|Mh5d= z{^}o?tGH)#dt3gHsj11}mb+e8vi3Gs?DqZ^y`RjWtvID0>0C~*>CD2cVbvQTp+TCE zPtBqRe>sax+8O}78=I9InS4dReVb4z`Hj9aIM7_YQUW-$F-FIH@3Z9%|JQbND*>+% zIGVy8OY(*oIk{#L8W}*~#F_)hy#K-MZiyr210TO;WPO*(&YR>ZE$xws8D0V9OV(cE z0Ew0p>KElmZD-`-lhCY*v zkq4VwJ4x;H$&3R2p3ypHp;hQ}Wn?n)uKpuQM#*UiA-;_zBGM~Kt!1oaeQtf#S~SQ9 zd|}f#;jn#rba&Txnn==QclQX7$uZZ(GTxO84*n1zi6zqkB!I|3FB`VlA{f&QQ5Ood15 z?S`E{9{;DG{T%eaSQvR-lGQ~T+@Js7Z1Qo9$mq67xwiaA!xWU!9p^&FyU>ZBM#MBR zDH{YBX<1ez>ITT;YYmKD*kbz-$jl-M96~UyPVGKe1-^7g! z%=RY##${(~Ui9|A{~9Y#a}@)uygi;4<{} z^yg2l44MNvQOhG?{_(f}xI4W6?7N5E?#)_;@1Gts9i9PM7F>{1+WNjX;YT)Rv_hP} zW?hYEa&BU-JW@O>(H|b}Z%zkO!ddS`*3v#kK%7FLtmC)q+xS-qY_`qJ)D_ixNutT& z#qE3+^WtFYGkXYla?(f>E*2lLC#e?M;*iM*k-IAEbkymQKBO4j=5@IZTDg(PWU+XZ za8`C+7%DMzveYN5YoB*nE~cOKpDxG@&J1B3%{DVa;*!if0%uN%3%HN#sXU!vEjp5R?BoM~+@L?wnSD`rP1}AX$;|Vh=(25ETu^jU z`ZBWNf@A*n<0yqaV&NX*w}=oI>0wl7K4p3-R{(JdAewADu|uq8{MCz7I%QlL-c3h{OO(Fa_WCwPntuw3%0@>)4P)=*9aG0Qz2)a*d|Bf68NQ%DM*Vcl>HlLZ}4h zjnIRDH5w@pxSKNgaGXUcegPYsYUw3L~u~hPm!zE6i++P z6QCD&&Hws8{L&wzDi!e#hx9C@wayDAmRwd~X`w?lflO8S^Y0#-JPE-z-0&0`pVb)* z-t1y!L9=5cYO*}020?f&U*mOHF7GXdJ>tQXR=HP8i*M!`A}Lc^X_5ug#RU3B6~mjRvLowvcQgFh5>C1hV|qtv`f>hLqm9NFMs80k$HbuZ9{L zp4Yd-l8%V4xUb^$2aWYI>y-FIg=d2@VyFZWu_nc3UfQCrj+fn-M(XdI9b9Gdq62N7 z|Hps&HCSYgaf;RitQqF%jWwMbr!|b|_aMz`d}`-lErhhq?F|u2Mk07OV44Vv@v9kG zx34joURMKA2&O7Y|KrdzR70UBMZDhpdp7 zTRUrPphp%<8b^T?9|7{j@}plO1BP*&d5597MsO-M08u*fmMyDby)_*YgC9P z=9khIgELM=+0jt~{BVq<8&9x#H~;`307*naR0dr>V6mmYbN*QoT%yQtUpLwld=ycSb0(l#cRmVF5++&J#kNvj8 zFenS^x+yMH9|}E@VETqHl8yVaBt%9_WH;|$O`v*XSEbPCzj0s~3!w7q`^>#hXRFGF) zSb4+$QJl%#SI|%nWRIhn00$mTIrLz!8#)y5ZOAJPj1Pd`e%7I?8rFIxy;GnNj)@d% zt$~hq++$T^#L^P?;I1jJwH|)NQ=~`D_hG}_)4*=jO#B)z&qQTvW_^vJZ^c8-kS)d) z28b3u)o4Jr${QSryL4?FTXjl|$s#qcludCctRY^^XfS`+o_IU|?jQaEhmsctw3*|T ziF3((B5g+ouWp#gq}=P<*V>bXfDDQ45}m%i5+pO z@FDW&V&QzGkhM?|3(>$4dgQ(u*xUgw_dPKj<&8lJ31o2-snQOY524mKUyGP4Ci*V3 zv-MZJjs%K&g;_sKhG>TQTaH@`0<&<@)OYq%kkNon#2((Y4wN&2<3oHs`J zW++i3nHw3Ot+&GMWvET|(YHZLw8_=tF|fW~9Y_A|7DV2NzkRCdhnlw-2N{t|XeBcN zKe`x{c9(Kz(GX?}dWO7nFh*({TC9@!55M}m8c$En0qjr66a63u+eHanDp#{uH5!?- z05)rTm7%9E3fV^vbxh zXD;hgS!DzC9cPO|ODt0JS3QA=5IGUr=Gf5Vq*$g2k=IHpZ<>;34VW3mV&a)=wY+_f z_8C7x41x{S=Xe*>vH4PFj9D@*LZX z3&$r^xV8pARpwi^aHf{VhBzHHslo6C--NkfOzT!x^^Tu|m~wQ723gov9ylw&u;A)g zOcj{J#dOTt+)Pu`GjPx?X_R;$)9(GCh1e+B<8w|yHoj1+3?cJ3>;5zSARaydD@wi$ zu!R|%kuV*kBnN|xY7}viJ-sxj>%|b3o)Wb`S$oo%TkfY+`2&zo$NQ~NPdW~WB1{4; z7S8VizcHK00Q8SZRqZt)coNqt#>zEOj=@qQJ-#KR-s&>~D5k8OR%QBmt_x@Mq9(%<|@WqSE8BI~~BV|z(Ee}|NEkXOVXt-WdLe516!p@^L+C;myG)Sr1bsj>y zUSy8Myt>->*Ehr8vB5H^t!obLLvzRr$RCPgnUxex z{&Jt~62#y<{@bm&&6hVzy(DXHWJqG-G3f%YZp}#A-B8AiNZOZ$dBX%nCsygq;u_Pc zq;b%o&nUO@>r9Wodh5FONY6((y=%^Pd0mu{RFe=yO*Ur*4S?%LLx2x6D{Rb_KhBvd~BD<){=pb+3bX*22;}8o|TH zw{OW}1`DLP)L7g$acBgGIBVIS2|`w;7*jc10mPY1@_=t_XH&uR>AO=a;+L1lgt!A3 zVv<0mhRJ3Mf#BxHkiRG(wVBv(J4C@CnwHjb3fa2I8{cHzi+XGwc5x?fvvP9KvTI zW52fH+ajWuufxz+qLz&zb);isMa=gGkU8v{vNSRkBY=wFD6p~VI*)$X#e&?4&#__1Ng-< zI>3TH=E-&0eUER5*^V?0xI@f& zmCh!7s!0No|M}-Xf4JQ~{rMn^rPSa&E6c^h3MF2}+YE;Tkp_J-@Bo*^+-UIFIPj`L zFVb`aK>oRV4z!m#=yP&jr#HmMs|ik775W@wajd!X1O(T+p)WLN5E)4Fat<@wY7(?p z!+}0nrTu2muBMj^4gIb&<4{v zjWvt(kVga)T$h^+?|Z3ITkGJiv%2h78|ZT!jh|DX7Yq(1ivvcLJ0^-WC_j=m5rhL8 z<^7ha*=Ufz5#v#0MyJP%Z1UE!$n2b&Jgm8i9HoehYfiCdIlk!}IWsY^UM_3{pTE#- z*x#^#0M4S<>~5q8-%fi28Ow+m>b=mzhYc7q>NX}TCv0fEuNoA_tY-$W`dI*ufGD8^ zx82p#Z($lP97NEB%SkPAe`4KO z98gtlc?qcqi()xEIFNyfBnl2PP>vgm>(@dn4z3JsS#iwy>d4eMX?1e0YDXN(LC2lT zMw--iAY=YAOnUYd+2|99(bcuavSljQT#5BS7@?ts6XPcSYq+?ph zk0C}O*42LW-bm?3p-XKe`R7|s4JuwHlpv*x8}5~C@278JOB)b(OJytfVCADl|1Gx# znjeP+^#X9sHlP`*# zYd1mE&FI~L9d9(Wb5v+UVTNk$ixwFLW#*Bu&M&0JQq(3OGrQJzSI49aEkqU%vI`n| zRRSBKjK!T=8`{9uqU!aOE3WdwW$%$VVIK6nI6(^^eom$#POI1|j zVZM2M3IdR;%~I_`sJBA^YBlooNak>~vqW)#$B+3zALwy_8>w|!Eg6A6)TTWKJ#X>T zNNL1#?4iwi97w)#K;qff(0tG-%^8t&s=#O?>RVwLnNR(x40>R@LtC))I+NYW{AO$FR6H;I2uM-fgP}eICV* z#|Ax}kJbolS9st4-WWfbO_s%S1m~xT9o~0XfJMND#tskxp-AmKKg2?fUw1gha9{%J zDw6~e;7&5~X|gEakiy7rjyu-SsYH#YwzDg}&e;@$#cb`~x*WgI1|%S|)j0Q&eyjRci=#75YQ%GH5`VhE0Ig22Rs&(wqlZW*%B0 zwrAbD#f{&4DPOCH))rlD%(nO{zBRi+PZp(MwL~Z`O6<5%db2486=|4sZK$NhY4d9* ze*XMB5une4qPpVg%Hg<~)sWD-*G7tQFGUcbYL^Hm=3mfxaibF7YiC|Li&7&@j1zCo z2ll0=U`A5BwJ)ug2=X>ez3K}cU8DKiJ<;1{&wiy#eQ7`}no_W1saPx}LkvN3M9=kN zcU_}2*$|IeR0Q@TlRC@g?a^dtrnqnbeQ^MMGr)wc1G-M#=txxK!1u#y_--D!Y4g|s zkt`(&4hA#>eUD~B)J1kM(blUf;@x(Z+zYQ`jjGV7CGRc*AYvJH?%q{KHBAJaG}6L zR_VQ-uJ>ESRxSWa?+Y5P(fl=3GO@Ek=Gj~a#C5`~DtH8~40Rp}GQoXOgTptB{T$c) z^zzJ!NP|T2wJDJ!?)Y+9@zxgA6-OzdIY05FXO>bOIfnV#rr72=aY0I0;iHnT(;c9^ zw}u%!pdN>XAc*$F**I*Ll)AE*l5907jaaWm+OQH|JgvJn*tW1U-_3m;LiOU0y46r7ndt0^HB5EDhs%aN7JgJyEdEv%576e zParC#sc1h2%N2%Q73gi-_;&-1G_}7JV`0DVp8&DM+SUP^kG9!2d0nTUtXHH}_r6UAjC|0-P6sSjNYO7Z z_}~K|1`w#K)x$Upk&?vS!5MfR?+}82g5w{({UA4y)yG%j-CDFF-n9QwMR#V<7qOGY zK(MK&!*)SJ3{3ckCPMz@hAKP4VhhjtA};Kz!U1sG{)RH3J6*^xpfOD%O=L|;_`nVB zeai{-3Ey^~|G&@k|KtDs-`?L}Hyit>&QOhIILO_6?#3hzdgBu2Tg0NI9b3}EQa(ej zCJ}jxQa1OgF+0EP@+X{cZ*N{--{bh_cjqTruCvKI zOC};gn56M0ftdYYMb1%obq**BFnM4J!eXUW3dR#@$*ehn0A(^Y0Tm@_8+2;Q>6Vru zWw`@G(`L7$Z4G9gXSYj-W=*ra(NSsUL~CvKd(Eb0MXFQ_By4C{f`BvWa+)wis8QJ* zLt({;MJBayWP5|_rw+R{_ZG>{EY{^ZW=%)lUKs)u|H5(MeCt_igi;+Bv9iU?YO96g zvg^EyLT@9viLvRC(S~JIFp_)#MAsFnb)H4o)?rNS>uB3*Ei7z>gv>cHqNbi}%*0@a zKxZ;%8-%xgk;u)nsCy)Ejp_EZO4R?6|E}foH`l@RH)2}B=t9)J@O_Hey<^e5t_ zd9*{#Xv?Rapc*UEm2`zsmRJAJOZk8N^pCp_#2hwUn&kZaiSFfh866Kj@>fZ7MmvJ~ zG3!G{IScOk*_OU@Qvl4JQ+FoJ5`|;iwr$(CZQHgnv2EvzCbn(sjcq$;e#Ys`zU{8n zy>``pHmo1+@Pxhv#t36Q>v|o6_ET!?IpYx%#=$n3dZ{1xcPdhKFTY>ZzMkqMieHZ~ zfH9aLmAO~KR#z1QdOm*Hg_7ArA<>3SH0bj>#w4l=phYcQJCic*IjV?TNSIxynx#EG zPYGGS`H{5r#|}5O!o6yMLg65+^rH6v2svZ+9&bY0|ozdP7w`!m196 zH(j&Z+sN@tO_jh(HNw1El407RqYrp|>!HsM1v*>U=1M*RX@MB&zbyKRe4GwZ%RI5o zP~}RzXgE3r4}4#GR4<+exK6LG@5^0y`gkUmUWb zapL%!L2>Su30vq-<2U0$7Zx%vs>sL}Zut1IFH704&i6<4qZW^7MyZk(lwu7$magN^ z>wG&2i&hX^T}6d2FYxiPCwVy9LXN~WSplk4jmiQF1$V?`1NcKmq=A_AY)SNhZ8 z()=B+uXL65bB=TZ|2()uAQ;LM^mm|pZ#q}{k`M7ORnEaN#$kwnbXeovODstymQkW zh>?RMe8;FHyCd-jcH+<|VS%1Ev`qKj{ z>91LGft%7V@pD>@Pw;H&*QOkvpHL4SstQ?{6A`c(1W`Hu7Ik)tzE znc!f$>wF;@IQ1&BN_=joc~$!cWoRu`B?{u!(`6Uu8>NwistXKI&&SaUR^F2NBk4u! zPGVX$p9^dFWn9Ma>w;CPAcSK0usWsTW4g&Ugmxa1v!evA)^xIS$k2V?!t;&Q>LzfJ zT=$Y{F36|drMYO|`eSAY9TDLZxBmc>JTefa2C^Y3w)#YP=+(Gxu>NocX2)GsWw=GN`AXY-qKkck6$-bRY8El?K%%n0~X_7 z#Y*{+B4h6m4=4{-l(O`*?@FbKA7QmCoH^etPRsjBYhoO}y*zDv4OfgL)K$)igpoph z|43m!U3$WS*Z5mN)a2ylxw-3$(fv2rgbxCNRKvKX8|)%vfUFKx5!Ey7g~w}g&nn|w zsL^}2CZ5rgbblC!&iC#~s9uznD9(VDi-AAgZx@lhs-daeZbg916G5tn7R4O7VxHx& z#Jt&!2p}|Xp`s?+jrQi-0+?2P9_10@UD#=WKdkK7(g$GFDa1H)AKqY%w@)sP1L*RE zyLY;lg}wT4JZ2(?*#p<1wzWM>=5H}uek3MlQ=fnQksIkSnDbm6HSGN4%eIwPkL`X~ zX?T>VRMrKuuE@E|D%7)s9S8xbhngLJBC6=mXf?sfS=z+8U zXWZPCp=w;-c}&2QA+|*NZ^;#!B_2kyyaMp_QqH2*BI*64ogROKK$fPJTM#+u-N@`u zD-YIo(?QDfo$)>LP#pFRhr>UeLv_sKFBV4;dYrqcb@}AZoKq0v-fhX*!U}7eay_3Eum_`{7+VI+{VbyX5s?C?Y9|GpS8k&_Z5u17R%r?;hpZ)TW7y{9oN18Yk-9Y4j zygxcc7CX$UV3cdW4dd+Yp%$T&jOMqhfF%YJ#zK=^V+&KfIns5tfuo z>>d4h<>2*45buOG8I{DL08vLIN18NVC+x)bpOt$$#gIYP|N7K_%UJe}E+4;osbA3f zcTg8B{`G5hcj%ADows6Y3{<-V?hAzG=v1W*C2}#4>c9|Z;_}8#-J;(2c<%r*r6dhY zD|0A*KOeCT1$>aEA#&i3HPS-=ac`OA58m;4imObOwEO-|B528f>;6KHm!CLUZJxa@ z0nmKf?)FUbn0zYfuTwaXRh4~$FttmTmq#Y88IwuixcBFFs`PP75+|*ty0IV~ws7{P zv5hjE2v|UKzE(2hdb2NzZD$`WNSg&6Ah;=Rnvr4`r zZwFKLNr==qlIFZQWhKUUIZ6dh4g4PE@eF;*_+-||x%T-dDlcc0LWZ^yNE0PabTr$Q zaOyTMp~dY#3SM@u6cw{?_Th3eOxf%^zE|hJFB-XDkzGykInmu;iV?V;-1lvkRXZ$*=!!aWI7>O?4{sQeiI!DT z$KSzTnk7ZMrdg^?BxBi3Pp(X>0L6JnvBa-j@+xYVlgF|6EC-g=cktW_O4WFukI18f z+c7+?s{)m+;LjBQsHiM!BFxs1;k_)h)3vA5Xe_pVP9rk7cbK1%%vQO9Edt>JQ$#}< za|9zGl6DaX%v3E_V)u3cGA_g|B z&{tiC@u6%)nx1+eWz21hlx+VH!}-PMjOQX-d6qnB`-*8=01w}Etb-mxBT53PP*OLk zPvkys464Og+lMSgQnJOvUTp zSNzbVJ_e5)cuBqh)DN!HzUQ4pWWXepi6uOXpGD96nY1WFvGnhpo^yQOlRexr>O;v#wRC+Vp2&zawn5_;;O==&wyA=tYbqdl^T zAQ0^~>?q`E3N@?EN78xi=80y&r>j8(4Jpp**tLoAVUU))VLZef2 zZds2rSA#cRe%R)c_XVbLu{fp2;H`+$TobQkzKOU+zcl9T3EvzSHsQ+cf28j>{FoT| z(P|tHP6pEz7CLTQTMB1flbVabn1uTZ*W9g%Vr)lT$+tX?e0AhS(3(}$qXfZq`7kyjba4BhIuZQs~&@D}*Im5f4){>&8C8CQC@t2@g|I3O)cv4YW?#;7c5$iw>m`0r#=!U?XO<0hM*fke({B{JQ zl*k$9^l`$zi_eTrZh)~bd-Zejc$MEsvJQkkmgXUevv9WBRISPP$N1@IWB4f01U)g~dJH(8yx-b%4k8MXVg(E*OQQoBMw zc`!HXcGgepE!Y;ifM=#fhJ&IP96^{2A_Le8@6Ap>n*y0qbfWAkyxMhQHy&p>Bf%aw zq9EF2Oc9xwU^X1}O^yh}ok!X4FAyyvD&XgsK;I;96BQ_#hA`3`Hq4~4XeqnzDTaGQ zHD5CE%>F*t<>H|#{!p+Huye?Y5%qVe>o7Y_s7b@!WHl}WMNH4LsM|;{XGdmR{!b;yyUrK9!tEr7i_Ely86LwF!jS?m)&+aA zK-7rDhz9rfaiI-A&HAUSd!n{_n%Yu#y6GvNLSqTrr}yzw$}Od6-~UbOQr?Vy{^wTI zLa%c>Heey<%7Ar7_g^)T=DE;RZKR6 zIl;j)hhYas35(%0&YdOp2;Ed5k(sqkR(Qq%r3g2&8Kp~CZ))+thWxXhIEg^l7v3h8 zbWHrW{>duwUm8osf>riS*TH*ht8*B9KR63AGAA6C<0t1&SQ%DPC(ncf=<0E6bu?>s zc$t?>@_9c;*@9>Ai}VT^iL~hEzMl9;;`a?usu`ZNxXDTH5nWNT>FDx=6ysOB)qaCS ze+G?g{P=&7V`Cwx1*fkdyb(f!qJy`J3o9YoJ}J@h_^;_zh_8hH6TgoSA{b0@v4B|r{3lsQFK z4CA^|MEucS^pXKTD|C)JXL(x^+-yS0QMg|4|Ba0BEm|h}dI`>hpOGc6FSA*_fp$N* zSrC{U{CR8)8-|GLa}BONKR`+Lq}H5}<9B+_8@@!OL#fM^(CHrXDZa*BWl7BrRo~bl z$E*d~xUv`bElZbgK6L~1HUTZ6h}pa3@EtnD{oJn&werSXDNcSX$V1cgu9EC9)jZEy zqg6&myD~WQRUVU~vWqgR&*~VOW*%?aLI0H8&~#j0`Zd_Onmk?fhKHPaAgsu7Vfe93K%)bs&rhX*xY zR6uQad2q&d99_-xI)R=u-}2RaK`?^ksfKXl5s<2KgY6K*xrfVZWbhO=0k1AcS5h^y z*P_Z@=9;nW%mJ|)38AE^T$^Z;_^)1=zD8}6hi$wjEI0(oO=izp!GU8T6MZi*656D7 z4BrpIvBGd8v#sF#vhGR3bL7#Y3ab{2=|SVU^yk*Z`lvX%Np2Z zj>nUAQJaW0MZBwYi!o6AxAR!}z{V4BV|2P_M0vry^Br>84HwPW*9vr4;^5U=t)qQO z38{mvwA9RO&(IKpa&3onevxcrXX4%I?q3`BU2wj(W$%r%Fj^`PYtT2&o=iJ_AGmrB zQ!Ax6mwnf5(maKm?6(!dpC%#CslDxhMr6wul8mAT!;^*&r}1a4M$wZ;$K*RcJ%dJrz7?h9 zF($aV;2(+AV6gag3qv8Rty0lPQVSz?Ez#9O3acvQ=Nebm_t0&({n=*t#uWNIi3f1* zT<{K-qamlA#gw54FTrZ&1k1zVBEpog5pz+ot}{^T1U*nF%rXUO*Gm^Hr=Yf;6DdDJ zt>P-n(jt^6S{r6Hw=^y89$GAOKl;sD_~>Rl_BSp%#VSpuZ>g~ZVich-dUhQJk*QDL zfZ`e1vu>>I|K65#sYgl9&^VPo0 z%%b!v?o68Z=eys^Pk$pV9ryc3at}$o2GQM=%-!q8FQ&$fz>8Ck?}2SP`Lv*-GMee- z1$$-8t*K_|Ba(I9O$bz09@2AVs!J=87wsDU*fh*w%16h0R6fFdCyG@pX|Y#-PAv;n z>|-_Xc(&isLGG+lR@aNPvc)y@i#AiB2kEzAw|>l2pKWIR0huf*R=t-_%i=O_O;t&F zr9~Wfo-k>cY`iiRS*TYw(e6oQ%n1l=r}}XcvSPJh%&?)!a*z?OVRSsGx||-nG26$! z>~4C-ER7D}n$}k3#|Co;p`^m%vYAvgjg;&Gp}vp$l_Xf_P5ay%1Pn1Eo^?iJwS zyE!zjNhJfl-&ItuwhiLxT0p*x8(%X%?<~<(cI#_~?UH6|HPYZ7iDVN7J)<);cv!Ei(HTtu?;=iL6ga)wxpb#foWkBq z>I4iCnA&a?F68@{;D0cQR#1fKkK;qWf5YVE(apV#Z`o&uCyejej50PQ#Yh>bS5Y8S zwT?4{Am3-k4rH1$mF+~y^)Q6nUk@1EBK`M~`X2iNka7ml&9w4l@sS2F)4+Ew0ZlM+M3T39Ld{?(g=NsY=iF*S#h2t z17>#t`FH8dtWb)c^PgzC3#<{cXoY}fdsXMQ(e zn}fMY(jiC_QFV&14aC3~02LUM!zMWD6oZz-OX~F?zt|Nvv=eU*)fDTr6l2cj9q9B% zD>i$$ShJKv2VIvNr{zD5rRK>w7m(rTixDI<2fUfKk%Kh5iM^rQX?ci^x)!5~)i$Ti z>uZRkpc~@yg2^5Ym`MdkPwVmajAZUKezy7A8o&;YcxbMUFOB_<<$G_*yLi!t6ZW(FiR@JNGH+<`eiszbMBu82cU6eU1g@kFDv?z zvLql~+(q2?h~M@wU+jjwEpThyK-reV{0v0yv&&R`jU;@bET`8uiU4tCw{M>GSa1(m z?Zt&llt8aL=IR<}^RN}|^33`%03j(;Flkt|k3#)1JaEVlRirMBKy*OOl}@xfOFft0 ze}!l_wSwdMr##K3sK4jhQWzLMBRY?n&B!hGXzRQw(V#`KHp4~5v9V=1CLPkW_Nqgw z69c-{-dk__Jg)HjMRm^ZBzqR5-tulZ<@=XH#W?xQp@q}D!B5ALGyV>G-?sww0S_cG z*0NH{O~m}!A$IHYic&bEe|*|KsXc^&H)oM`pQGTp@!5`x?iwfJ!q4iyyNOZg4IXKd+2Mfur)|vAmI8>PRQNzt`PB(( z9>nGOp;fGa2hr)Ngd|xQwRK+8)z|b@?{R|4y}3kvsJp5n)=#m}cZ5o)p9k@>tTsW? z#qg3+-;)P1+HBlOeMDwDQp3;fW^-!F`12x6YF#T#Z3$fBXqn=Nq3eUC+TM>hd-VEp zUUTp|z#qio2>*C!*v!$t<5V9-_hNJHJ@GXb9@a84forGz``__q!xi~*&dJGL@3E%* z;gQGKED0ky4MEB4`+G*Mxqof~1|TRZ_t*h+=ln#BtiG3pweg`iP7q-*yASA67$P|P zz&V=%0a`I!zh10cR7JmLQB-_Vh$(>kr$Sb&w61MC%|5({G5HTKzZx6G?|ECk)*~k_ z$Kdpt#{t>!oep*SlC0G;;MdpJJ{w+>)M=? zIMSb8C#Q0kGcQS8Gp+3vq43hKYD??Cf^x-0?lA1{5OS8};7Fgdm~(PwXYt!EmZExO zDS!T9Qk=MWuR(9m>B=RS3(Bykee_O~F31}G(@#+j(D~GBjFnL~IG?F`92;Q*vxBPH zR6qVa?S!|~Zf)FcEcJXvEh62H!yogc0`{M(Qd3;M;WCsYk02syY9zC6&f4+i!5%)E zjK=V6tlh0#L3r4jB{6z!jx=x_3Kd^J*__ta=eldiE!aWx^+;I@VvmhmZdeqRmEHJ7 z1B&4?PikuM32wi=P9WFrUlzR4%l^v(g(G@wIXncj3#Y68 zTRIlZth_zl@=U3RtWC^ zcb>{#dFRyGLFQ&nK5(k@eJpi5?6S$)#_-ui$L&eHM%KtW{z`yA$xjtrCUu_H!JxX@pcC znO>0Td|(f%tVWY9Pi&X+EGs4!?c`Ya*+AK7#++vtauj~4v?2|)WU$nLkCuAoq=UpSDC+r8QY1ZQMDuB)(`Md z3}P}Vd(kp}VXbE_KA&C2Wd=`6i>pmSv)7?5z5p4LtAkYk{J z2Li$Q#3oVrJWWq~#fYn?#Ss-+Z^d7UHmt!+tF#zbC)BE^&V~YDAek>}LRz$FW@@O# z6YO^!CJu=q0;GFk@FmTlENILtFu1#ImHS# zbZvMLYW8FDX=FqLifFj3D1SHieXPX1v*8q>v}SGXz-IF&WteIs%yqs9@4@3 za0mW4-FpH4a*N*G#gxMC$;0G)DqC%3YKm`_S}mB_qg1qZ3yHnBc31kYSNoe~6Go@^ zfef<86S}12;u9ojIN;fja$`h8s#5B_?U4rNNQMBFC?m+X0V9hnRtz64-Dnyb8cUd3NUR-e#n|q^ z=i*)}pzz>ZYo^d37(_e1!0q@hJl_v^bR~?eMx&5ZeUMhupa6O(uK0|Og__%%JXB+! z9nwtjWnKfHEg$|vO4uO2q~*pZkRBJqiu%ccT>Z=3D@=#sZSWJ1=QJ9|IM@g3XyG2_ zF1$2^I*$Une`uAloLcjmMv%Q76-UPqs*l=6(-~me;2%PD_gu|TwFa!V%E7NQ>*3qC zadMV5?cAFdDZ#vjj6c>S=7##Yyg)3c`ll)OZ>>k!_paPvl?*I4AToU!-6SU;aV(-q zYYTevmSg^MGdxqEAorjk>-I1&UcUl+VcZq)**aw`pntKRWQ6KYf2%z9uyCTsgwEe@ zw;=?zGhME*gr{7Ni@sx2?~Le%~sG-&cb ztu9&Bc6fNXNDQN;R@p>`%x0^@{&-+^XL)6!O`%V49LDAjc4^oxIw8eO2{+a;u^UW? zyeA%U-Hn4Q*kJ7*H9hw<$!S5F5};4@hdShGnlPopT7Cf%1qoBJ{qPA#+oD2$M{zfq zE5+cHNGLyI>}fYD3oxHbGg7S90ElKTNsG`+EO`!r zX9Mvf1$^LWn9UO@3Hp}4D(&|YaBs|YUdp}!`m*F*)lr@$9a^x;CyHF{62olqYKRIr zz7K#5$dJYLwrAfrum_2p;nZy=R-~0XqIhodw!;>1s?9x+vQeL(54Tdf#6EX&wE^!+ z&K&vq-=85(Yku=O&3BuX>T1G?hkW<^YscGlUY~UBXeyo_6PpR%fVX+kQqt`}!)q%< zHY+)1X1#a$Wenr68H}{L(RP`!Nqys&9Qq`12zkYdIM-Ps@oJpGEhtaN-uo zlLLaI17hIC#(hsn0xUF8g3i@#D&*$kFO0yi=qAVXjm;UT7!%QL?Rgn;jJh_`JdJQU zWiB!Kg-)*UGO8fiw{#kW+5bwVmV{2w;>bwE?1ucbx;PutGfR=|#cySPL^!#iM*^ms z0B*%>5N)d|O=%uv^+Y8ft7s^|ibNQed=$GreuLeIsqH($MeSI(3aqVlb>iDKfMqcG z^{W}^St?eBJVA!E08Rb_ow(TSfD3KVD3uYggSaYK(uax+mxY_aD9*9CA9JEMOQTyMt69eYM_Q@6_$YlXJ zCQ_H#f~9|rt*!YskQrt#cB**$ttv=EQ-6W&4zy)*nWut6oBXim`b)asZv2nX(r)+d zE@f<|2d!FyPKmkp*-sW|c(rB!6MC4ATfll#;H>jnBm2mIpbZ6cAn6z}vcVYxu4)IG z&f13?z#g-xJrC0&j)kaVqhe#{mBaro8R*GUukeAL$~L*o?}v|wY(o4Gwv6=rHM0B5 z>*pGelxBnM{BgHD*rs07s0Ry^0}oJ|IEn$3AvX{`V+}f zrS93)S1d*wFqx_OpxoL8R@Up5E^P8`dx$#)x&2*1H1t?_euL}Cp*0&Zf`~*s|58cp zVEi^%9EUyc+Xo5h2Qfk=0)k@RKiuCBhY2bi9aVB@XawR!qM;g}iGG?h)YIb&{P@1r zTw}Zq?CTE%c>sP-tn^O$fnWQ5`vm;jeD#HP5`C+#83z0cCPqfao`U?s_QURhxZFP! zOu0VZ1ONQ~{05GV6w($I%fasf8L?W)j4Lm#FDa1~rtBOwe92s#V~bMjvIf0hV=7zk`6h+27;FZB8Xr{O~YW#;>e zv*ZB*sUbsqt*4;*zfSr@QvC1tTW@2I^BvYVg5iwJHSK{MWknhurwd()M<9NbG=Y+G zyq4cUoQEI&7v$v|h*RWr@iT=QQ1Gy)fF=#xP;`r~S(y0Se z1aDOk5@6`X7DDggSeU6DVi3dT8O->DpDjZ;DA=w@)2tu;9z;fA2nVLe>Ft*1Ex7)1 ztjAVs2wBCcJ$&OozJBjNAnTQkOdmg7Sw(^K79|o~x}t$=MQqDpW{9GdqVh&cci>H1 zi0#dSGis5W-w5moKxl6aZX;=Yh&Wg_p0gjIql6>kle-AOZQUqus1cjL(8VF>!_zNc ze_R8DuZ;@=1=&fEy6=#D+kzbC zz!?z})Mx$n^m0Z{W3qxjr9YeJ1$BOy#Tf!$;D2v4yVS3dS6`w8jb!@cijdmL@EjuB zNo+(IiLiv3sN1QZ_|5~Wf;3rJG!QIW?{1~s0rrAxw~}{(Fn*Cb-Bg2#1+(wS+qCsO zXken5+9H9JcdVWPC}u=-e+lng=K->fge|b>0cDRrXz4=zLLQnzA%a!anjBJ< z)j_!dBJ2jwRN!qb=}J8!%ts$7Zs)fKeFxRSM2W7n0TP#!QtXNJ<0vs)oF}izFNmdA z3|DVSn1Wh@6rIcHVEZdpO%@tNnRrmn1OtN7-C|*1^@w{39T!BFRgZciU$d-zg5-hN z_mg<&tdvwo32EJhQu+Utp3-hI_RedpwF7~7;r+&Voj2doogsp^2WwsdOz&L27q@P! z#~2qgC=B*6e;CjLW4r|fe^7Kqo)wwuo4#XQds}{6P7}(Gg7Fw2H_Z&b4SXgta= zZVfTIm5|;j#mJCOFAMWdZ1a`9hyo>nd z=U@h<2mbBU%SP~V5vZ6$Jy02dV9E(Vn`ff@`n-9X=IY zx$(&ZukxLG4rsrp_cuws_sy5#2y&k-s5j%WkWs@oI9V+Y99V?TkIFldlIbTU=1o`J z=WWNEWa`gX#H-&k*aPf?lQXQ*R4`ppMiR=0tg>ozcy>_Sicsq*jb6-Gz?>!vj7El4 zN8j9Uitx$EkMcku+Vdj?FZ-M4Obr6V-{XCcUt5&^KAM5&HL`Z_9Y#vnacrBKl!seXshzG44rz(9cOm(R`V1U7#CMvGz#-F@-m2mt>OMp8I1 z1Q8Lg&4r>O3L-LQ?0LhwEqu%#VD9a|Cv`jNP7#{s2;;BpwL(3+_Wa5Kdwyuw=LQBi zv4!g8SJVTwFzRALYTGbPPiJr9Ks1E}tli|=JwU4UAK&i|!@-0q4arwB2GNICzB5>z z(qs)5tcTRf&-DMJV@egZel}iyd8;%@Wd4M;b9^->C~+G;{d`3H@+Pt(DkVxLCJ<72 zX%92>@p0XXz(2{hWwg%(KG=DU2pAgF_AxH%^&y$(7WMHO$khBEN%u3%QsbbY^qJrC z0AsYu_o}!{kAd) zMWC|mxIW&HmATHBM3J#eq`1U3{GNK9IOqu0x+h?mlk9*+#}ipRiBzkatVs*@6|&bq zYY+Fi-W4;sOyA`oI71jm!+)k@JE>u;lN46`b$oHOiSaFF_M@q^NMK~hOpi0h_nVAX z=5^ce75cA(6|0d3PGg7eGNMwBr$JTP?TQc?gQqa!Pws|y#_QT+Rk!u@s1)iQ%wB*0 z`0G(HhV#89EOGe@<4j_fI{$>QwIIIu#T=9qP6)psN`HtPC%k^&^D&bW2hV(9-h8OF z#7^oepwf2*-pi#VbP4*`f7@E(lv%RE>za5^i}f;vk*2H!M^rc$`XkL{zIWZ*X|$=2 zrVyn83TDt*OWny28|x8f7X=PVA4UoqG8nM_oxLK*`JUu;Ga?lk$N|d$hXXCgwl&hBX!l7%G ziU~7_QNSCG?75YKkz@`90@-Q{d6Wy`*4YudCKG5$v8?4Hq~aX6nqVS~KWVd%?fS$Z z7=bnPEv8DuRmmjMsY0jFC+NBOqDEN=BrF&Wg72Zmq4&t0yzC-QI3N^M&yM}p&iB2tVTN^`v))~QX1LwR%2@=?Z)nZ_EHir=K|@+lEr z#;VCI=FmLrB1p3;&H0wrrGD>B4s8#mB;zi^m;VhL45Kv_Y0*_aMx#oTLUtq_9`1}A zG`%j9Ml;bA`-a25H+_LNK5!L7mEuXbh(BqP+b^nS*JH0h`VuPy1;AUMMd?7Z8Cri*YrF+!V z-MEG-5PVt_*m3bF{|bqsQw%c;EGph#8M0(=tc!)?8AA>Nj~+nfiN>q3NGq?p)sq?`lb@rf8Cfh<#bovxsp+4AVT%REkq7mRe?iP zB#QigmPWlZahLD=jU#VCQacbX&hMVeq%93wW0i0HwR>~ohUWXai;;0no4sK$0b(S_ z=HwfGzz>10KnR7V6fO-KP)jt0FdYAg3e&lGB%{iWi=o4s#!9WYp`pdeDr2fcw8bHr z$|1qQz=CImMvE)MhG~H+eT-td?64IZUm&wSbPgkN&SV=@)M)-kDCbAzM0ZX~S*L5^ zn0!7{gdmn=Ywa?NdH55&)uN`x&1^)Ww^gPEm7kk6Zb2bUjeK=Zjn}TU&-^wyB`0Ps z#L$$E+W0*z;*fDif)-AR@Hu`pTBY)-(t1C22F=%-7|*8F5-YvrhxMLh4C78YOUG4- zwT-mA_pof$?UY%NsH$R&+BkG@*r+Y%(QkhS#vzzRk5MlE5N?vGW#KvDYY8Gb930}Y z@?UHo6uhH#t)TAk@Rgr;7g0#@!GyA(>c@S-29Pf-5@rMr_h=AJ2#%Hj!D1Q2_EJG&lc|Tu zyM@ARpsC>(eeTilUn8ULs3ao%e*%5A3EuHgGw-yRBLIfA?4TFYqYgY~EJ36wxz7lSDJNZp(w>G4e1Tt8D4$)mN*G!){&1d+3L ziLp#7QyPCj$k!E!Zr{DD3D-`T6*Ky0^N3fMXPHQ!D-x^MfwJ&JwUZJ3k>IHj*_6Bp z#{~xmY#ZP%UxfXZ2OoaFU!8;;JB?i3`_3P$is_J&>L(RwW13LHcvbL<-E)TV(;5g3 zGKK+{3hN!UI+p@qjdoI*a)9SPdO{WAA;>FQ^}CB5b99cuQmRq~6SBnijn%Cd0d<@3 z3${P-+xXc8_~q$mo&ox;{QSBNbUwX``~JbCC~i;8%Qf<`eB1f_1O!HkJ`y9|O7J?1+eT!4WMkaflPJ@UmRf<{`udzRl%#gocjLV9{ zGr)UFMj;1iUtkTM;^D-SmP4VOj*lvcG|otYiY`qHeL@cv3*x@V_$PnS$c& z0B8iUu?1=VVmbXmIUJiTzZGkdf){3zz@oWOT~Y8q&aaY>1tQ;XKZur;lxw^1zqd}A z>ZC5IGxBV(_+?IMQD&lpae+ys9PeU(%wqVX(I$km5uvpw$wurD*7-pT*S!bx0ILBk{uDuYg~1(bvEQJ*t1UwQt^S!k6E^j~_-DY?}Zy zp`uQeDm0ug*MXbg;-}r;XGdp;-uq zX{za{!-^>Wx>`1A7s?vVrotMc{BhtK($1b)XA03hDQ6;HkBsP%t4UHRWEbWIEjdXJ z%unwBpiWA-0?Hc_69J42+#OrFB+f$BZ?CQ~^9x0$V7g&>$tF?vg*RHzDDNh{R7t;C zK2ybIe_xYbv7kp@?@*f--tEx}=AH*X`SsF+k4__>StmHMheR#?MJ0IxQp;m8J zL%8*?CfIzdZP7+XKoS0p4EQ$HKxW0UCRKc8N%;RdD(63mVvC6Ig?PO!Xe9Pwl5sf| zjz~HuSdMfw>RsutA9?wDrn`3YhvJ+%C^~z_mhf~8EAQmxO7H~aeygtj_*uZ<6fhwa zOwtLY3?(N(BBnRncBgdt=JKy(VK^!lHRxaMSSvWZIMaFJWQ`b&@h(w$3ACsGyN>;$F`V+BdYC^wOC)iSuiqJsBv^hYXGGT$25Gj7<6yvkaIR zeXr#0Yljw?{oysAmNI(`aQqlo{YF4V7Bt`sB{usk#HHyqv+zv0UV8Bu#{Dv!M<$WD z5L|ZuF3=T~oO}hldZjswL^NoS?;`drpdFuM)Ek$K%rq#D zQtmA+1QNuI>57fzUje=$+9_X3h5ZNyi6lWn*F-F`xL7aC9;^%uy`(RdtZz#s=-3tU zIr4!$Px`;y`1ufFJN|bqz5kUzwuT$ym4Ol>5dHvEpQf6RVO6@&_`Wp20z8x^3WEVf za`gUPj}F|&4KXJpneMT~QLr8<{JEh!DL0EMoKZ6FVcfeZ{A>VU8JJl)(F~zjn5Y4= zJ_w>R2u_L!r6Cx}X-^%@PMGQoBNRIb(OTMw3P|N;op$i;KFQ8GhKSAq2Q~SxFqhnL zWZ=CDhe;v`m==b-u%?YRynlyDzFNR_I~s!K^u95ju@Hg^B6n7k>zd4`P^o-sI{%#W1y5(fM29eG_HZuwWFSF!%j~KFa_BTBHq!BRh== z2e6&=9LWWj!?wd;nl?GHzOgkQhE?Y3KM%Y`R(jOR%$W`?>v8+KRoNU54H0D4wA61l2Qp^+qd7`Zbw)^3z5c<*y=+Z#Z z?=+P#z4KN|$FBq`;$pBDNHlc_O*nwSJ+OSnM8y02qnUU~iOA?=x~e<&d+0DuwBJ76 z)0w%p?D>8gAw6ly>OW<5M`U6_)uT&V060ldz8*cY?^&bB8U7Bgx1^J#!9H%zl=Q`< z7sw%-q}61|+QnEjKxAc<@a-E~Up6Y;P`t?wV&mX_-l=>Ilv^K>G(n=E5s#n%Dl(8| zn|Gluk{OjUX&GkkZY`)8!GkT78YN5&LSp~FxL49>qhdtLrL8Wnq1{G8doACzqzdjBIkBKJ_ItRJ&>5%X57@RKo^0r6Pf|hJw5hOQ zvUb0W1@SNVnPF~r2t@Cq)|p|{Kd;KS_`G0dPV#i{k0+HQOAc{Ji7xKKh@Az=Q;M=F zbP35IIHLm#!7jk|_mC1Ou8M zGIJo*7uCR0FZAPRS5fRcd7RO$($U%QkgIkMs+<$)`tkg2YcI+=!oFEXA$AIEZ@f)O z)t{;Yei!Bx{OVuIH2Q^U%xLVOs5F;dIVdagh@W)`qZ7USeQDh$8|%%<*hwp)+!PV z>wf@dK$*XPMK-e!i<2+d;karVNf@l2&O=7ED| z55baPO|T0LI7bbA%ZZGFqM!%;1N;?a|quMmJ-$wHWIQ3*@S(BV}x^rtAyKx z2ZT~W72yrxJyD6MO*AIoKBoY%pk5HZXj+W{z^PdJV(4v zEG9l9Ruh|*fRdJysnS3tdnGp|Kcz6GNlNibLZx|1OO)0tZBzP9>A2Emr8`Q`lxmb( zl~t9Elu63=$|ICVE00%ZDo9XRmxS~s;a7*st!?gRUNH5QFWT?Y}I9|TU2vZ&#K;5eXiQ9 zrl!_M%}&izEliD}CRSUhmZ|ou+8MP%wQ{w0>RRfS>QwbW^-1bH^#$td)pOKOs~4(Q zsJCh8YglV|XoP97G}1IyYV6QBu5nYNT%%3XKy!$ur)HGqG|hC)4Vu4cUetW7*{G$Z zWu@h=HBO78HD7Ck)?TeETBTa8+J@T0wEeUvYo}JB%(Gl^d%X4>1lho@Tt%c#m;`alMJ5iL=QBlbI%)Oir0RGgUIRF%2^1nyxh6 zZ+h4Cy;*-VA2YVucV@qt6`Hk}_cix6XPYlE&owVLf8U4HC!kMKpVfVi^m$^TY%$DY zoW%@_A1y9g)bus(JEAYM?~=az`#$VP>^H1mM8Dbnw)eZyuetw#{-gQ}`e*jf>t8d# zbb$AOX#>^{I6a`s(#X=wl4H5n@{Hvxk_pLgMYT_DvD>^E@qz?6Ym0}BSWSq-ro zZ?(WG*Xqe2%|UL1;s>oAbbe6%V9UWFgXaw1J@}!uhP9h@qV*5fm#tfDhS)^gEV4Ob zQ#r(ZNYId3Lv{~&Y^!5Sx1Dag&9-Q$>QJ|#Nkg{`y)}$Dj5aKB*rs7O?TB_Rb{xAc zcDIMC40j*S8@_G$J$r3?ANy4M-S(vprVe8r7C0PncYnlOzI|Tk&}*7pwrh*N1Ym+?VQ=pKRVy18PP&$i)iO*9WJgeLYLoM zs$2)VPIcYvde6<+E!=IH+ZA^ecVG9f-A}r=dboIqJ@$Lljj$h)G$Ln2<;Wo;*&}z1 zeC}!G$?(kbeC9>+n(DRH>lu9@ok8D5FY_Mc&GP=myTWIv&orN3eO~*LeTBY7m_L#^q8^@H59X3`t_IL;}Bsk>zkjJ6cp}f!|VIV9h?EA1M;X}fwho2ay zIxc+Nrg1MLC=qiaE=L+geifM$`8LWoYGu@;@wVer#-E>{H(~OG>HJF#chtOXZkUJU{m zF@4?idf^!1FCu~{R&-QsEEb4wq}Zl>n^KzUmAWbQ-HZt{4$L%|$(wm2ZCKiOX%({q zXZ<`|c{X$Q`8fmUq|Ygx>oYfN9${YGyz^fV`a0w5^7*6Y?@HH9PfE{UKwhwBLDM(U z-yF~ApD{n<`M0CK-MvtEp>W~7MI#pdv{-pDXK}%IPTysICt1Q;a&0Mj>H4MZ%b3fq zEvGEsu)K3c{EC8=E-QarrMil@>h5a#>RoFL*34S-{QHpa53ePyU9z@m-B;_bu6JJl z(+`?Ir2Oz~!`KZ+GY4m`%52}5xUqPX@21?%{WgEMxn&D$OW}{+KmPVp|DTrr^nNR6 z>;0@zS%bEi2bFcj;cRH)ZdueN*?{-9Kjk`2%hTemiJ=aPuLfLrV@5 z4yPTiKazOl+0ltdZyyUjcK-N?&>IL+;1JfJ@WSHLVDr3JN|br6$KStFAgofeRurb`}Zc_dv>37zw!b1 zLBqq;hi#AMKUR6X1^(FmEwmlvCH20ayvs0!1r8mkV%N{*vKCgZudeL5<@lxmI z`U=a6>`H3o$*RDrTd)51s=QiI-Bz=()}VItYuncc>%8l3)W_79HwYU#-z;nF)3~$A zx#@g!cyr0y1(4PaRH`J$Sv`+0FV(q9+(3{=l#xFpp8BIanspTLSLcU~aSp_D2F%mLgf0RmB3MO95*LsN_JaU=l{ zm1L3nfS^oJA}SMA)Kt|~l(d~-q=Az1Ktqa(&p3vW)%0|#s`2WqeZGSRn?#(0Z%_~} zxb3HAy(Y50w1Fw2nQq(vjg9~JQLKRT+r=(sh2zWEZw_SS-AQ@g7&v6@j&BdHyHNC^ z>E}Zii_4oQ#HTJ?|I6V^cVE7B9TlB0W6=*gk6gZ2(P99IL@2E?CXj;4l$ zfML+14%7&SKnaT`z>5V?k36|T z5zuUhvt)?A?E4R&p#)&i#e+=qpt_P|&uoGNb}K~fImgMCzx-#`^>SxuM{U5V)0DS>5Z zqIT!;g~^@395wk~)MB6Tz)v1+(dp)we6-N?t&v zM3SCs8Gr~pExdB!n2d%#0XA;OffOu8mOD_P>_E(v6Nw{b&M^N(@sUN-eVRW^-3RW|KE zRW_a4e~g=q(-(|pv{t4ji;{3%4`&5;i_bZA@Oh_!)0b!N z$UT;Kqv%mtW$l}{@7g*fQ0b9KI@(&_Hr7>_KfQnZ>X{>Zw*Ro~Yf=295MP>|r77Z| zYdUbaTfn#}Ni!F&`7!6<=_|J$JbPJF-;5aGY7@@lb=C97#RZp6?%%m-RmRMu*l~WY z!$~*?b1MgrQRA7@=PvnSd+xCd`NdCOysB?{_r6^MGea3VF)5lGYAeeg-noA6=$@?g z-_7C2MUD1wurkwC1!{Wc){dTIViHmotlE-&=*-nSkIJfEH@3V-5_G~ns{?28uDJm= z#e-XyPeCD8ED*=X1bdPP_0dxUs`?f-RPT_G*G1-)E%6j}LSm+Rs1@s2lbl?h!O8Y4(zhyAGc( zxL;cNy6IgT&Y-2a0f4$jSS4xrP3_C4#W&6!+?ly#R?@^E54!OkFy*|*PJg=x}Xp%8~TmP!;!OgrwJ2xy!Wk>o@ ztc)QC(?QMwG1KNO|0(y>^}D524R7D$4BozZT~+=RfJbHJ)pboR7>oAS=DNyf#n(>d zZe1}qDLT-3u&D;*VB;DzS@6xeokuPfKB=f{Zp9e1zHO+fEPHYv+DQ*eUR1q?{fo0` zdj0Zo;iaRy)@Mwg66|VYrU5j~Y&}AlGnQ`2J(K^Sytb*e9ZQJDPwB(rTL4_Ub@x%} z%bEtrx)Zj=yT+R55Ax6E{+n8qZ)vP9yL;u>&b9NCqP&M&XaTLh4*nCTFWj7a_STcihIj1} ziKHF&T4mXz;+t2`p9J90iF20=iXW9$);6|47BIGZVweaEdS8v`y7Vn#0J-T{u<2;5RG=}wu2F7P(oh*D_ z52HHXy{RsHaQn*HBYSsk-MD7i!gK&qXU$)@?E8(|bM_t2yHWh4qQ0davS@sH_uS4U zNx^o8z}O)~uqyZJlUl@}rM~iM@%8h^_hxU+T)i~o>omA%Cvt@|=6EiZ5EoEkV4XPi)!0C+v=YeUq1e8*1BcsY1600#l}R02KoDXLUoVkI>O60 zFgQGVGIN?}_P47xXCJ+M?`4xj()8@~ikLybdh)u974JJ+YoFww{w-_m;(1~&Gj_tb zF@e5b9&XNX^S80Jv!^(_jPUXw9XkGROm52jWgD}P=a1?Si zKEH44>WnlVJ9d0nkRN@7ixb&lm@RyrN8kRI0|#5%+Br~Y9(4cUh)K-kv_%_oP8U_Z zm%P4|;R-yK<~MaVmtH%#b>-K>gxILD0p1=i6bHK@)>b6T{(S*3GBP$Z>jU{%S=$bC zbaL|w42fY1=C94kD`}Cu+!YK$a%(#qijQS2OXI{w1o?P4lkIG+2U_;)Yhh+$Vq^$) z8!c@eU0rS$|eK|KySH8nML4Gm2#ZCyRc$*iBHwVg9PlsP}=iDW0p?JVA!7CYL5 zY-`o8kBN~1%&4WQsiCf}s;Ua}qEjsbkwAn_2{~m*Q&rQ@)YdaJv$UhLawI^qHP&ND zKT`u8Z4GslM;WCf5>Y0U7yJp103FVeh-6TPGN`I+Xld&kTUfisWI`EsGrjCA%?)+6 zwKUYELJ;vB@E^*6KhuH_a#}|yZFb5HWo;7K>5C!G~Wceb;(>}PIb zXn-{!YzQ@UehJMCO-hIeo@XI|!sQpr;$h{>1K=kH#g${HU; zccBckv9j!MVQy+{sIRY!cmV)&8kv}y^|9zr8e~1xp5o#e00)HV+syq1uO#)m>A*F! zOwv-4m$NQ?Ix8kLknT=%gag6~4v0SHW+p}em|OJiKLBO6b98bY=@S$d!{DYZ&ipm+ zLA|8qM!Fra7M`eb5i*n=2sKPj{^W^pFA~zD@>cecy;FXUytM!JSc~& zTxZM6{N3r}?R0>qb+9P&#NBGR^0hTql@vimYd2gd7pKn>Cv%un0GP~RPZOlfS@7MO z%x$|5p1xXCQrXZ7%d5V3B6E7sU@f3Q@@6g0zVxIPv1qPEi}k4kIomd_S(-6#rYIQz zPO@<3+;5kxL96|V3kCPk2H(;7zP{v2&SDnbQUj=4xJIXC9xf=WZ$(=>+A#7j9N!Ol ztX;k+eKveI)9kO|j+41{*Iu-1J$_MxHpjNc^1@>qXH9hJ3pG+RawvDnt~15u4KSu1 zZd%VD6<#}keE;qpo7b&e0zmpAnE$7pxra|*Du6rZ>t>X!sp`Rn-OG5P6f?-d#Lk~F zH*^2xhm~*MccP86_GQVvo0rcX-M4$kmLC9E{{6z>%#t4`Fe6paV8p#J61L|v!it;a>IkGQj2LPEr{k(hsv9p&8?mmA0 z3TN=H{zcKboYkq5=r)EbKt+F`YZxbe8&$4>*lb=I1kWM21+`8?R}z?Gcxy_E_hslq{LJ? zq{lzFbK^1q$Ie{5e*4~&=T%T!Zbur-+t+2q7Y}Y-BAN`_W_yU);(;qkLqZaa9P zu%xO1Q&@i^5 zLbZ6_s%`tvr7X_OK6>f)C5WZjZy|}Z|kd`7F|BRd*k9% zRyf_k(oh|7(C-V4oET2p61eujsaslw>%XW=-ZcUMo1jr9K?_vW?&qJ|w|&h5e(V?z zyZ-u!gPL9+8zhi~TuAJJp zW8I<|oQc6B9R`}}U@~YK^&jHw6FPZX+QRRD+I<9?oR6PZ;VcjbxvdBdy}SA6kL=#O zGF`}w3UsrxG}cBOlr;@4tjW-BW{c*-rF`#+3veMRuSS+PX8X&H%}Qi!p4|KM58usB zo)Yd$vmIchr2<=0Mbp4ykb_5H{G&@cq?k4RHW&K~|1K{CSlNg+P8VV0)4kb$n*z~OHG2$K1B z&5zlK&Ro9z;2Aor#`HSKp`%@f$K)eCX7j3y8A(&d`McVY%usecDIO!3yX1!*xyR*r z46c%Pj=+$Vn#$5gh1bs=*^{+?$s7SAYLtilAaj^qO}7uGR3@Y@ShXbw17n_7)nQ-^ z(&|A+M<=ZvV^HzzK7wL)ZCa5o!l0PJee_^{eG6-04Kc$Z4Wt@hJibQ(hfxP=&`k0OMmS7n_90{( zRMjENQi8I;iqq>b69=+DHcm|!3^O}vQt$}70fuTo-N@3xD|E{A^wn9pr>+*2NMRTW zrj6Iv&|lR-dj)F<426M4&gGN8ZC#x%m>T9OMPaNcK9Q`{MH_Yf!3>@b+|a74 zK$hCB^%;UGL2fo?nn26k)+3ZTW9g5%X9^y^sBLP+^EaWH^QibH{dyMy(~faytaM!ts|GD|Z~d_OQIZ z1ZKX;(uDMc4{u#Oc_4f1hSlGFgCQ^UiBp(~$s#Dm${)5O;N?z9RU^V~ zUO&FLGb7g34493;fS2Zu&bH?2(k|fT>oj3xL;n^+KF(N zW9yO-?&2@leD+C0TW4Ei<>Q-qM|NlZusmb7n4bu9M}`H{y?g?K5$wX8CYUjQ$=WU1 zhx2ZgR6}`NDsJqWgq*H0GBfb0r$AnLa zRYYAHJ0#7|POXR@1Z*a+yHwGNp)RL#5$Yo1GGn80)Wy}AN*^*516@4m{y`y8e`9h} z=P%97Iew$0zFpE-yfeuTI0$l|yhET%-rg?IWwgJyhpQ9C-foBuz25+Ix@|kmfkJcl z@(+%fh+{6NFwEs5hPf0V%;oyQtd;YH@v%`M0dx-p>$Amz}Viniv^&YI$nw=;&dHiy1;(h76-9 zATD>4z;q08$>7C?`FS`w*bcJnXJKY)Y-pf|fDCVFj59n)# zAtX3dBvF&7NHj;H`eH3-+NW=SE1O}CuHL~hoVgoMmP$%kAi6+OpP#dQ26KE6-IZd8 zp(AD{u;KJ|^>nngJM}#cVBeX;td@hUhdNMPz5GLBSfY%L`wOZi^*LSO$nJIN)0qey zaiclHZXambAAuvrMs#xvi~g2q^w>F4T}S$k4vS$VtA`XBiRa0Xk(bSqj;agGLd}3lz})>08zqvam-j9o%h|GO z;cQV7nm{-*;zD=z@bn1?3PE!?Ni;iS#m1lapDn|^7fRR97I-I<41(+O{D8)tgp1538`nsh9;Ua69I4+X0C%@vYr1M=p z-0037%K2&ivW&T@d=BIh6;2O}jE-d_a7Ah9i&tfC+jAr@|DhBXxv@Jv%1#@>B0>a< zv`FCcT2)f40E_TAtSR)#Q*l%Tp&Gjno`K6?WdqFLT66EjhUr1pT0q0no4Gjq(&N{V z+TL9IT#AZhu33hmB6PTjrp@aDMe^^LRyV>WzpcLH@@^?8($_Tx2SwgVFcckXZx>GN z&)L3d-Et@fU5<$yJ9oA45!~}p{>B%#k8PSY(WRdnP&Ic%n8?|p@&>UL_RLl16(g;czfC^ViP_ElB78Uc^D0T;S@MrD?c1iL5|NO-$Fn8k2nKNf*&YW}S+^OCgCXqsD5-I)i9bgJf zBI{;ILg^L&K=Td(&?Iu=`r~)d7y;k>xI>sk*5&*$-+M+z){<2lw*!kv(Y3pk7LhxJ zl@<{lQ^zjRis>u&p1u7Pw}{{h-kZ=O0zj6AkuL4c zfH}j&mJ=E`CMy>=hph;Y-=cYTA2)}1?>SHatRc67%udLh@O_TU$DlO?yj0TG7}_!{oI3Z` zu!ax@hYxRF;MNfD!za&Px^@TZkw3%sD~%yzp)te~H--S&usdN4IYk&len8oTFos<7 zK2vn%=3TWd1isaBv0&Ts8A;FsGMw=~2}AvVAi!b_N(wQkR`BK$Qc*o*SF%)DG$?eEZUgymf>j#Dy?~ zz*CBA5N-$|-qm^nAXFSHO1&RHe+A4KuzkoNPk|le;Fg^9G19?3JUg~E)dK+FIg8mf zBBtC9Qgj2_K`J18@_s>>LGY8(yB7~`)Mf^0W#`f*WRPg&w1sQ79Xx#*o|7ugAl`2( zjToPSaDM0VDPRSe2dyAoaVrP}VBE4D)iXF+0IeV!cONMvPHJC>x9vR3kDH)AVFW4I zwH_EjB!hc-)9t}I6Pgb+j38N6j3D33yaDqOtpf|l{hJq0?%$F#e^L@*0ciy-AS7r3 zabo!Z3rNyLV20Us`1D2G0s^cz;C$!(6`V8)@&UW&mBK?i*Z(nVten>e8bDeY;Q*ik zgznWH7(hl(hX#pw8SPvQqk{pRk6ZQYgm!UA@n4ql4HSQnN+UC%|p=vLjMKjslYl zxguc-##dtmlEp%qm@8Ajy7)r~R~91WgGw|!1(R@NL|6!(UXdmeN-(axyzz=eo>VT! zc*-EISj??R6L9%hs7hJ!7$cSQF}WI+y2U_H&|e5RM#94)0N;Qr^g6NwB!DPPkQt*A zL(DzOTbDquNRiTBkme$d1^||rT*4LA$cV$BL!1a6R|NY&Ww7y7Nky?hp$JqY3JVqC z7?%$TK|IIGxyg9NNU5(#7RN15Eq7(*r;5SE747hd2S0$HRHTBQQ|d~OP-0*hP}f>B z1CnG?2_}Jbp|bJ8TYzEa7CIs7&@i*)W4E5`hb$I58t+ARQt`R8h#}LL~-U(tHj`Qp#00s_G(`A`VUsB8>}B zkca`rG;4(k6Qm$vL=qfub|*9$|C?Hw-xX)j@&Yg${!YPvCxYLp8i0~8ks?ysM&~dJSEqb`S1{_!lhsQ`|G4(4WR~|2-Zq<2pAH?kGrG(x_ROICElKM~ ze}1r_33Yez;U+HM-U&uudp@`DN8UC;-iSAXR)dstTC`+X{@8x)uFUP#zISK6%SM*$ zS=4s=qin^@css=`>*0Y5B8PX|+L5Of~*NWcLoo7NO|TyV54eUi{z~@KS@Uh zp3LgUOE(vCEv-(Ed>wjCvC3K^cyr#IH#+mhoa-Cc_Mc&xArAF+=ovNO{;1?+&RaXB zRd>&mr={8Vr_o|^E}6_|{n_T;!0uj)&abq*c4LfiZZX~RQ-ocLdtv4)s$>2Zqhnk4 zTci(~|1I*NTQlGGb}29VP4;qoA)J?YqY=kSM@9J_`0;t3qnIc_D7AI;_p3NmCW zEWRxNBh5te{o4ztr8f*^mrAlPd7avkwxikOehwcOg~hi&na?*UoIJ((OQ7`3*5M0> zXQjz|t+QCQjMlU*<~qJ<%Dm|(GqJb*bAkh#WM%c--~GyFezcR{gF>VInNh(lQgcow zpmPFyblMfQPPFjPgO`_ zF=hLy(1~sG2asu#m)w3a%Q$Y8@~qkHtz%!$I6CN2pheIM-RM4si^4vi*s$C1ev6Y%Q>I&6H%XZ_^Y(*7F5N8yES4Sdn6tTyEZiceXfBK8GPhrx z-qRR{&*qKejx*D4ue9&JyTy8kQA#Uj`mK<(Jfo8_cWx&wTYvNeV?J^}Oe*CJY{R?bCuKc0&zh z;w_z)hd87yDTy-4S$6u#Y=;Y3lDK^q`NArWI#&vmHFj zR>wT8i(Af_Wv_zL%{OcB-q|IE!3cJLF=d@k)^oR=6Boyx6pf|n>}!_)_2pje-8W`( zyKl2}_hps}i%n>Ux{y!4v*# zE@hU^@%3XopJLI{ax%wvSnhb~f$uHX^w~NC3HNj#?Me5THvC{|fFK~t==_X9GpAdz zO504lzgx?Yzm7a?dU#gCk;!KmM?HE8H*Zdr_3$#*HRx+*=-JhFBYX5UY(Wd3w64v^ z#x2`%n|J>BQ`Di2;|8Ajkzuhx-M;#=)}0DXBTq-7%1${DyBx^Y%{MEu^AlbEF*=6 z?EN%jX+}W&lja7e&+dL-=z1rP8GQalnrP(XzJrq=^yxb&z-L#+0>d<3_8aqvDa%5A z1}(bnT-bDl`BKYMth|ASXD<|6I2rY|++fneX-AJ;C(x7Ak0Wb>gY}md?#qhL-9KM< z(j;1&?q%N#0@H#^`6uiSY~GS*y{i}f-0d%BC1>x47{#V<*8SlTeB)~V#%{WfAsb`Q z>OR{u-s#b!C8K9%3dqyHwU+E2gYsRexW;m5;q zrMi;2Gd*9TKAq1u^ZxcaXI7Ul_tQh;&XdEJT}?W! z`$cx7t+MIOr5{TUS+SQ(ZQhzQ=k^-E;rO`RInKh4otw>^t$Rm)nzHLw!i^VTx4Wgf zdMoixs>^|ITeGRJ_J15q>i^@)0O@`(4QxifCZ(MF!m`$tJmUACDPKA%n!^a6d%)V! z`n;uL;g)6!_n7P1-=ADRd+DgvtLC>xzAOBAQ*mxwvo1*=ZzTfMj)Z!>zhpP7bJxpY zOg;cI<^xJ3987TMw9Q;x^n`WAi)!O@eg;i`hPmK$Pt}%?O*)Q?u6;G%M)9!joMPc+ zZRS~0;OU+SaOBPM`T(}#1>dq_7bm|t+Uid7qqdW7FH`kOVL9X$X4Ct88ez8Jt^KO; z$H+fk1$Cc4BW9HGiMz9y`B{$a#oNRO-*|6K337iKdp0|{v?ypv(mjJ_)6aTAbiK>I z-H;x5@j8hgtG9i0)1F4mnK=c;AqQdw`#*i;n{TmjeI^;TVdVPgS){mED@S!ox|?L` z?!9=7o^?|3wb&&)z5zL5)Z3Ho3-`S})iL+LkCf2Ou?H6&AHFblY2wKC>x!=5A8rym z^2+dg8^-M|%Z03S)iJ3j1zKpg@uAQPWDgeB{nraUo>NL4ia&3(Aj}+?{YqnUj(yvm?;6#FBGKYx2qS+p_E^-K22akm!_eL%Cio?Z|pmm#uQPj-Dc*Y4z$ z80irz6RKmR<5WN18g2qPu_ff*v2N($kJ*yuP(Vdy;>O?)8$%gSQP@s9f_r zZBFh29TVqq6F%I$KJ|l1(_q!`^^z6d#&2KGIOAw>wQ1V?mHttAZIn&V(WF*kS3GUXvCZy%SAs*E*$O_qNAt$L?)~-k$!Mv&@0B zEHAyK((0)xDQ8ScOUt<;`Fv|eFPmkupwM1VH@Zk!27hWDx-dv*`<+|Yb939=2tX7) zd{)mCELu8#yCvz~=hmM`fA=02jL`4f^HQgjOjE^|j<$X-&FwnCx#)bTT}d~j z)5sk*^wy+p=g)5E81J{f6u#x+^6uxU7dJ0)UL{#RS8QN$?=F>Bn%+v=aZvV=2+xZL zV~aB_IHhUPRvT2ZfK7wkwxq0XGi|`gxo(0p>4);-`P!S`$45E=VeVzZ@TkBcWwtc3 zkB#whqj9%O_O|j#o^RiU9Lo>>phUR$vxZ8bP4_b(o>yHxIw^1v7r)G4*ZrF7^ zMRqbGt)Jkt-m66SKz^t7pKlDYp1-D0KK-E%?NI!IgurnfRs8}6w3a+(Uc?Nq4B;>J zJ7o!v6VQY=fe-}e-K4ePmfLrmW0JD+*dUAHfHq2>5<#w+$D zpkH=}7Pa?C;r9v1UDx|=M&_%QZimKL4OooKUFb5aTaW%T#}qB~=z$c>kAGGyH#>6j z%924>GF!y*w~bQ$SkYmF@mqbX?^p6miUT(u)!V+qE{!+$q@9obHimJpG2>Z7-CAqK zC8y~W3XeVTC|!DS^PAklrytHQ85F*s)2_Yvuth;csUmCQVYBRsmfT|c)+fC4vGJ3) z6}K4ls(s!%u*N!>Dl)RyExUBd-CJuAx5WPbnJyXIM2sBQz;M^q&&KF@zo$3`ZWM_((Rm)WJau=r*R)pYj z{5NN%ldbCycDK1{`;EHvSe*GdHv3yPOSV~Xx4UOk!L@~Oq$W~Nno+eGpi z*~6$gf&4Os-dy`v7ZPJOc0V#oZ&=xtKY5Ci2d_V-4w+Z5p~kV7wTf8`GW3WxF8%e4x=-wd;S> zK|}w;L1=Uai%vsOHu4+7|GEC>r{j+sQ;>fu)UW?za5!u*{tOP7Q8W(tgU}!|H0u9< zO8}mv?`mxdND>MVq|)=Q5eX^xL~86D7{`AWlXNva?`nGLZBZWAs^YbGg@)JO z4Rv_!-LB!a_lkzs-sj+tJ)#f)HOzM}tE%r_wg-*n!Ei$vOb@oJ2aAJ%pgkKw^x$6_ zgF&yulds8AEp_}So_yu%{*hAZ@Z>v|TnU?OU(=KCf0tix6U3yNUvE;QU+;gZU+;^n zvidjgeQZkau0_iy9DI1D)cxIovTJ28nk-fGJCjNyyk~18Ff?mJ>W^r(b_i+%IS)aI zJO@0_r10FA)HTQR4RmA)n{suI^lJQKXX6(;8^753ANIx0w*;$D@EwQhZ5DL8LIH+)=y};s>5Zc%E|uzNd+|@SpKLO_OThlQj81 z`<`Zv{x^P4^WXP9P4%~L$Qs|i@lng%_z#WP$;kHqZQs6Wl#%~EGV<^Eat%xUSe&q1iX4kb=@rRKiRZcVZN0moos&G0#4>mj15FZ(BnpotFIybA2Z+OD7h4oB zqKx;lCC@=VDiPDxJ-7b$9KApOal^ZY~TOh34+TW_r*VXnC*& zt;zWUk8uCM^0vT}m#xMZM-!P;sXW$&?(XjHLSwiv7!*)~qDYn~xk(g>!ma{Bg>!%S zDNgvz1uMDI%hr|v3$cY@>!y`P!H|πBgSr4`D61ZDlD6>#};3C9#tm7IqKBw!My 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 _qd6Ls??vg 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

    05pzbhg)wvZ!Eh;t`)gl*j2&AB5|v@w4cU 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�eLQ#rZL*RRi`_mQ2JFi} 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

    g>tw0cFz%TCf2#}@`& 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

    l&1J9CKHeGp{y%(oHN5u;$9gObB?mfgv;|dM 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

    ILOlMiVqSb^HbpSb)?is4~_n& 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

    >(BkiumX1J$2O_Y$VA%aQ|VV*;1nwuxG^h; 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%0A6S7R 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

    7% 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

    h}E%AOylpO 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

    (32F$9*LVa0_s4E_VW!PE<8AQJRJl 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%0DE5wMWF!Kb?_VkP>l~-5yadt_vZU+;US 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

    ;JCFkD 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ⅇ}P`)?{Gxg zwhsCM+5PrFw;F)W%YoR7MN`dSkcEu+$;>?vPr^0^T*>!OkZ9$^EB(HGQ0|-~oKU7Z zK1Sh*(WduHAp3?HqIoLKpu2FYVp*Q! zD`#*yuFr6`5W|`PQeEflfp2 z0wwpAITLHRxx7M=oP4~U>{olD>Mg3$;C*X)Lqj&q6-eBcKAKK!>9EM<%x%P_au$NR;o@L8}s8clG|9_$Y@R z57N@Fo(EY%2LATA5EfSGl^%#Tp&$s5|UTYAUCaT$j8>58;7?#fMB3G?M+rHu*9 z1XP4#{0D0Q^hIpYJN-G*h@78w0tS&j$1!!h0xmzk<0v`jXfC5-l`u&o`MnqF8YjTG zDEEW#md<0--EuoyG4guzyDz3f8#%$V$d7JP4Bt#E^3VO|7j_G}@6=#<&vuFA;@1I3 z`SmiVBN56Zp!{|mGLu^Yn@z)xgw>{gv*#&~U$E$+*Bv}9H@($LARD6aWiA>fU zYY)W+JJbS#5W-to+(E6Rpu-qnb%Z1#v^45Ev)e)75ZhSX13z^$Da`HAM*vQO3awuJ z>yskXF1fiLrB1C}utyb1%%*Y`KW&@Ahw{VyB!O=;;xkdjT~h8}W#)Efhwn~5>_aN% zf(>$g#kE?o_#+Ck`6%}&^E!Dk)|u9Cm)hTPcAjo+NL6O8iPs3%hs(BO0s>=Lncu~U z!HY$%k3y3Z2Yi^lD*YM~Hg${}iDxpBho~WsOuX|HU_kotiFA2utLD|y$7mO??7bXT z+>50`7?69XZtwH?N4^}(9u&+i*-4bv%zpR%6IM!osxE{bo%r;p)_+| zAa(;KIE}joCW*= zv=vR?WHg$3daso5v)6H0xxae?y+7aRJqsHWiwjxmzbL-^Uig6DlNJ$hi<5L5^|S+R zQ*I12ATsFkp76v;TA+k3pve$JlyR~{Qwqg_NxKzie5CL!u=oLc3n9HY?e(M~_nzFZ zhQy1Wh#&3#Wswxp!TwhtkLJugEL>Z?yBm46`XG3JKw|(aiCbNlb^yo0rr6M{aOws& zHTQIX-V`J9Bfs|YPPLH1*E{X77S`r%P27%$x4C{&s|uL<)-+#Wt`#>fW6JZcD~MyJ zQ@@b_$egbkgMEk|hh&k0*-!iv=>8aN1BjOB!*|{vG zuaQW<0^emI!cDR>e#j zFMEk%=y%+(Qsszo^({j{XA@R$U-kS9&mP(IhJE|2rW&q`bDprXY|lemQnoD&-MimU z{4%`G8^1Gnc(NH+o5x9yL_1!{U44rVFLq|J)Hh{I5I)bO74zElSCz;2sUx)-asKh0 zv$l2Nu<`)S-9q1u@A7Q4pYG?{F%AqV|4D7;so1!H1}{dB-ucJpG%ego7qO8hnuY9O zZvA`kp}mBsUcnB-LNr35J?YB~y}Y5DOsymvU19obJ?wQwktadz*K?joqNI<^R|0J$ zxqCv}%dsW?@9bw9RUUJ#*r%^f2H;zRg-UzThkw1zTm{1acqj7{Dw2^^B_UX)>hrcc zY8(XhVifw2%v)B32YR@gJ_nn^9m`$K#})^2ME?Dgz6nQt*Z}aB7e(vIvo>k2<1Nk> zsf{1(F}Yommit_#$2Eoh(cphikvT+>JVPNsV1$d2QU(X3VTg);hQEs1g(LlewHY0E z)t0m<1!c4SsbSdH?qDMGDl?t?4w%;GH}pgJx~*zY?)9MFlS5^TYPuvMREFwHb9xR7 zTM%kZAuQ^><|b|f73!|}suZA+XhHfReiKJ=h*>6h3|M}h>YSLjcNb0``*XPBEkCrO z*R;c+IrIQIjWLWLbp>xJ*_rQ5RWgj54oe_>838)-PO(`mk)4O%*+qseZ`yQLhhHn# zjiE|=ugw(1)w!MBW@Gwu>vKqDo10(6F=`@*l@6 z{OS2&pZPB6qqIHIk6gDg6hMG-plQKr_54$STMs0QD(ZX0Xun)17K3fDBz*nOiy3R~ zeg}6!M~B_J6h#wE7d~9mkGA8Lb(D?9K$Y~v@$<}YB_^f7k}hbGY|RjI@yCeN+H<$m zpvcD^S0dsPMF%FYd3&7*@PVhN2*bYdKL(<}h6EqPP38(2nNeWhcpuUSvG|5GSt(!T z70BG(b%tgo)!wd({n~k(;ksq#*|^PfEv!%l99JH1opm^Oe{w1#7tc#cmo{DE)|~aA z0gO5_BZKc+Xo%BtE+r;kG+<$UsJx(L7m{Y+gxeKre?0(AAa7Ep?@@1w*g%h>JPUEY z7l0r^Jd;45jgKi^1q1p0-8Fk3(#S5bk};lebJUWLTIJy?Nbk;^P#0-ZOVa6z0*NQG zG{b$L7&AUGwCShW6%L>My2rCcS2@R-b>pqE!E)ikxy6H%{JcY9UATDezyd*%S9BPJ z-fRV{2lK;Ro80jo%a`7iiBZg^)PBJ zE*-7K5$F55Z$Ct;F}j?}r(!I!y2~q8lHqO!jOdt~kvTrlnmI)jbbvD`45e@>weX&4 z=^d$h%6cV9*oY{4!BPh+RjtEz2}FrwU)gVYCj6%QT}b8{x50Dzg^ukCifRKGr|F^l zNGVC?FZ5Q=C5_8j-R7d`SJ+?&mnoen-%{? z+5QZc**a4cH*>q~{hEZJ-8UFZEC(&<9(lZ0F=ex*0A>8PGeOjvfZ={?P1x!Yi>AC2otkg4;Q~M0Y1}WEwCAw=uWt%C9$x965Bpl+6m{@ zTl?U7tRW)<6i-?ztj;v5fc@f|3k!G}7Wr^h@malN4Is^3Y+V63ci$D~p;+_YamRI@ z_k50$QzFB>7m{xCAjr+;>DPrEr#5;<90d$~6hKk+;S3y{q@d%RDTGab7IwG+dUZxP4aS*XlSSnKo46CxzU*5joryAHqaP6J!MxU%eAXwxJWMVp z+h-l41Ucm&1WvPyOVQ5eGT1g)GyJA~$1=d*ZYM2Lxiwbm17SyV?$;0#Ghadx+VMC< zwF`5*zsW-eo42$pE+)@ z^uPyr&Y&$B@TN~Y9+3(ePHL<>;tt|*4*>JbFKy!!DJVUE2^4}_65}zNW@V^Fkt?Cu z!_`7HFson;Y&hu4^RAeSNz&a%BN7p=EUx&Ym<|nbZC`23wq*Uf5RP!yZ z_pD}dC|HMc`e;QQm*&qL#zYo<_Lz}1ECk`mDSohkb6tZC<_PBwE83bX7z{!h~-eQ#N&+e?^#{He@OL~_oeQQA0F8q z8yrIzb19`)9y=Su8&lhd-0#P{^5PtCrxr|749oZZBaL} z7CFP5sHOl@vP-H)M5o#9cpj5gaak)1>u;F=j!#|@5q7)yDSTt6&;?UuAD=))_5t(Brc|%#_++msg{E&8geo`jY9ZULdtP=~Ts!?s zhlHh(DT5PzrS_dGUsr~hQV~Xv$E8Q;4RoYr0j<$p1Ue-J7X{-29y4)iURPb-mySz{ z6!#+Y{;n{$eY9j+T=r8j1?Q9ff))MN$!wM%K0cyvL>x6_V`|DMQk{#KJVWv=I4&># zwr2ExAoxK5Ls4lNqA)XF1);qZ=}Vl*iwOAo^_4VTK)5DxlrlHI=`-#E65-xffWt#F zF3Y=L{p4)52sxjRiU+h}l`btH98rAq-pjz?`^-z~e#M5CfMV&4>B0^V*+=3%*+0nB zSK>&#gF8@a-H)L)xm%KL|1LJtP#d8FBV?lC@Ll`kh9;3CWXn21#OV|v1c@>65S=6* zWMq4TccRMcw}z3|bXn!=SN-bjQNb`Q0~JPy1zUQY+RO^IyaG+p#dK?dr>-1aBFp8c zTG*p{pUtL^gU;Q*Ss~N%=)7j8Za4PN)M}(NWwyBZk2ngaq6Ik~fqx?Fbr$*Hl#`e( z^PddvobirFppQ?zNrKmA)e4s1SADqd5}T;%dvtjFIXSzd*;xNRWd0Vw!@IF%m``O2 zpp3Z2)*s8e3cRk2ax^gkJt3D`mY5JSIL8nD+i2;fKa;3~=|&QCVaVpnND@4_aM)41 zVl0ug=&>@X+LT17y*>4fzSU% zPcI!D6#nn{{vGz;u@kSGM0ZAOQzN-R zqo>3991KMT3p&j;Oq)sM;`x}~q|f|~9LOGXyphCv%vO?v2%G5CZeo0y3$oYin)F5h z$5@u>ODBBW31P?H+ zQoI7t(rE%h$k?Yc7?Be^?1S7X4g&w62nK@btTXXA^4|m)*Z7yb-CKRPu74|oTfop@ zCI8X?_Nj@u8XWeiRM{&czf;lwpv4{U zK@T3evj_&C7@Y{uarN(IkQmp|W@*uKdrZz!G%(2mH@$RLxAJ8fnq3|i+&@y#jk<5j zNkLZ~<-&fXI)TK2g%#G{A}t-{f1CaPK_q_Ar#sX(-e%J97aA}q5i)=A+70D`{fpYV zJM*uOaohxtX*1id&tTDHLi#@d{Y7dsSrGIFkxtV{&pwr(Y4}OsRTBA3T$jZ-2Z-1V zw7RW(9|lZfqW&IbQ2@)0!9KN30GUqnl&3L=6uFnCb*<>)s}032PYd-2Auy4(+Hv6j zkQ$d9R5c0~Dmd-BI1 zaPc$(AQ{*WfjH#nDcGI@6P<*ZS?(kBWcsEmZqEBF0lC`Tj-|Are()#oh}%!#a_yXt zWHKVLr}XgY5_bQ9q-hRD96b9!;5Bse9`+;t_i3;1jdMc8M*#9-=AyqtT6c_Um;P(3 z>v6El%MXkIkYve0H>B+H7{)mRIQXIm?G3-)mouyDE8wJ?#epU0Pgzt{z<=2e%!q!C zZrs(f&<=#dNjp&P*VKYssy{`Nh{aiRJQ>LaRRpYA1U`s5(TURG1D1n+`_rHX!lCAL z(S=9)zyz9+e8(ZBcTeyPe*;=`b$*pLbqzbWy%qqZTt9)y_t%MyeM_!y zZU2my#7=Eu-Q4^q;))3SCw1zZs-rwK0+PNkkeDqi_ACq0)LE`6xgVi44T}`ept2)gwd1*^d8fFO!Wx zF)-;HR5~2k4Vz)Zrw<#3k%5d?zm5Q)f9SR#v7>@r+|o~7SF2A4B7dF3s?Z0$T|IX) z5b0m1ajIjSlftNtlx`Mil4E+b`mxyw^On7UDNFpP0{c`K;H~PpiIiz^{PP!~$VX0( z9^w^veWvaV+1r`$EQjeZhKdSx^&9IeJqhfaLf=|76_EqF5+H@2i}V;Es8=S_CwM_? z@RaT&DA6M}Wyk5+DlFdPk8>3{kn+Cx&Inpha}`~U)62#j1K`YOo>xn&5|w%m1KH&_ zR1Y4eQI>jcs@7i4NkQ`o9*o90PETtk&DPzI3!LMC!(RL)$NjTd_9IZ+wu|Kr+|IYE>o zfZGK2sVgP#LY8lG<}}(bZ`xMnNfRj!X&xsBod9Qb`44gj2+ZeOgV6~<4qf06m2?}*hc^}gd>1IPOwpU1c1$toK7=`B6dJVdfuS>4;i{%&l|KE{^A5iYVI}v z692v*=`WyQNDU9cvTMAeH3Gn71_8s^rvg82+)HZB?!0JGf~=1Y2fgqtjwKaYrj{tK zaxtbV@XazV#sNdBD!U9sIuPvg?Z(6pZrtf+&8cZXWrpFy-*E~5A-)By8vB%!g;22% zl1UEKiR`^?aYd|hw~=Xj={7y+W6&D;by2(r{s@4JeM*u${ctvyV5nI~ps^6xxReH* z6F#`|#`|Y%|LgxDt5;@JG8>(d(vX_=-$z~xQ*(j$;G*E2f)K_XASbkVwTJk@R z*<=EMz%Fl81msYTw7X#v!kd)~>@v;?ePBl2SV#&<@<{#pexr{q*+ULX^g#19t830C z30PRNmg+0e4dnQLCIkH@ITO>(9<;LeF9~U2I{*57;8Cla<<3IE^g??wxQHOh)vx}g z)>PT&Be|K(O=bdcZl>}5lLS>QKK^*G2f$+>fGec}%Ra)bemz}ABW!IF~4 z3|q~<<5_tnuyHEwPr>d3`#+rXzy2SEbH|1Ahs;IM)h*b6B658Oe^MJ$iB@B{>0ucw zFNtO8%2S^vWd7@(bF(?(V#s25em^m_oLK5EkdtFbW>e)?!@E$z?+CtLO1@#c6p1T; z+6^bQU4WO3C=^Fip+#^!Dx?J$6OD{UGwvh0;AJIyf!y`oX7uTKx7WUYaUCp_;k`7y1pF$!u#IY zOIVTQ!F7EoS=W;7CNwHgYCIl~^BdG~nE1@~g*PL)K{971eiIMjWsOo2l(yce+v2U1 ziyi<}mLCOt*89)lHvHPxR zph1t$)%Kp?>lD|2VOpUE{V2067Q7#pIjRT0s-V(o;Mu3jP`@x9ic&qKI;Ed^+VZA( z3|LWuKBD5J(|`>aR(;t2aNEB?{bkHDc8L^+zu9okB?6N!ici`^NkOuq@@n7?sTqwpArdWrB^7X%oBIP#i4`~l<7bU zZNc&>S}5b3BXW?jv1_a3f#$jZSQR86{U-9G`-grYk`Vx2x=4Ztiq|NB1uQ|PwSUaw z4X$(=rzmuL1;u^7BPjcTBAXTn<0S z&hH||M%k{ro~lmlb4gU?^rei~dCDUR@bt?A#b*;RR0*XjNcB9qp2ihbz0+T^eG~1^ z1&bm#*o2O8A{NskRUNuFSSl!Iu0#^(bDXP+=rJ5n?<;o{b+FohgVOHHcN*pfZRlxL z%D;bF&|%TZo6WLxOgd81%Zt3Ov9+B$-k{HRO$x(_K2x!%lC(;3s04~d-{Q6F7AN#J zFM8N!zsb@^1fQH)CY?b0#JnU{R~SWX((kIJA5c2j+P3d5BU9Td4vMETXx12dWbHeo z-fL_cJ%sLSr(!Yo)^A%YAq>B{u2)6UUrfC1`QX+@hk@?D?vIAikd$1x@5V@;o551= z8YIz~B+1zLa8^$8t4;FHW?$h_3!+U{oFsH;6U+BF+ENN@EU zgMDlA!BV}}B*Agu&sTDa=TeVc$zK*(b}+oF+x<|t`aZMXHc@nwgf%E+Df5l<{aowns{HB&4Xxzj}6g~;x5 z7pb4mXmhv)A8l-IHaxA+>#J2`oDw;>xOOx62$ss>x{xBVwh@m`O;}AR4NgMG-7;kqy*AeDe*L2`Tgj4HIus0S1&f-o+u6v z+*77Zyl?x!^h1>))@d#?i&8S__^<*C#rc^;alJ8Ed}_xsBq+P&!rUpD7k`# z>kiqbyI|}KB_Ry)qMudw=u>#&2I3m${cMM5feZ1XN_8!X)yuM}#%@nHjCcrfE>~1@ zdWOU*4Sz%G_r$lhT6^vph*YI{7 zM@vWVR&ljxHkhkz)K(jts|kD!et(uso%J(4dELFx_R{2d%3h(Fcs;q8@LJ9+u9XKp zcIZn45Bb z%bkmREjFZG$-6C5nHfG4O>ged!~v4i=BMC5EXOoX zRAlj@I83}h+jbLn>CROjG>TjVfWI2FW1?-Xv1m`)uY4IhTkSOO!E?KtTsL&hyts~E zd|{mg8Cow!0iwj-{N>Ci-Z!3%RH+Q~Y$fNsJM_b+L7j9*UcZ5;^OF-B zsq_lnK_c$Dbld$VL|4gb}BsCVaT8TNg6uu-dXxBkiv0JVAp+5;bZ(_IW+uezO?}@UcTlfp8E*h9zUc$ z`b-#&Ufph}(N0l`RHOf%_CP00SD?hFjJHP+98qK3E z(U6LU%$sI5;-xmQNMl1SvrDVT<=||LQorJuYDQRb^&51)K0Dcei!A8!h zMYak*ofg?2#OF8@Eom0yB0qFfDxJ;aofVZJbDEUV8I>z@nlMf#vuO)&CU=#zo*q(H z&&8BZGxcn0`P+8kuTo3PPoOBe8@eVCX9_qzpDZIUs~?V>in*GjgeO8NC+zM&9fW70 z35wAG&oYKjf3?`;C`^5+WOC|bcE~gp7Z9Q&!H0@#_f^{Dj@5s*rTu+2D7ZQimvJb0g&*W3MG zukxN}mh*l6H=NqHsHL|-1}(axx2Ox?+m0%KxvSDyk$Fh`pJ6V2{yTJ~o5at}%4SVT z8SL}P`6bcCatq1zJjz3oH|Iiut{aJjx$htSH^n;GT1i{dhSu`jt}H|?N8xVdN9Shv z-~W6)FJWHoc{m-s4PV^w%{q8k?o!-$0oEwriPNLVvcz>6@lntK-O%3A1*?@&xTcUv zo)+vu4Da$CqB|lXEOQ#VFDdX9u?_ru#{xn3gk>&{DU*?_I6L&~nm+g(k(x_lHjWTx zRN@%1XV`_5fXAZR@fW;qH@)P1jULdtVG2EgXGa}Sca=&=kHW(`8*Y7CBbd+`x1}Xk z0Qm{?BjO?)K>$-c5pKmL(ldk*CR^KcmOqsAp*;#A6vYd-giTz#Pu~kK;ncQaXjrg* zfSMKI#5UwNTz&BAbi77Ntm!6g`V97LXK;HC;q>CHpktO`+T9wmRdU1`f$~pOXpaVK zk6wzL#Y8nI-yjRlW8cTNXd{6TNQ==zF@bK^0b^{1StdsKTZi@5Kg!nY1Iq7;)1MPj z+Q5JJD`fO-k*u0#jlm?lPUB&nC#><77Iw(JqkUg2e}vn+xd@TWH-ncw;&yoV;PNo; zBV3LtX0*!pjn7|+h9{q+Jc)P?v!-#}2J%bsD|+^tbh2u+W6!CoGg(T37``+WG6(74 z-6MqVs`NKuZ~-6>{bYF@3jd24xic;)mGB_5Y!QbKsWu$<_auS6$~EH?dOxIrkN$`;^%m%;=PR9`BhGL7|$eX&n>8hOEH zhb0ppCEfVy*S`85SYIQFz6UW`eM%MFtNSZRQt&rq6%w(YiT6(a?wCdRelejN9(-od z`#wYbdn>MY1mj;L941U{xZZk~54^bHCj z=A|Ze7+D~~=vdrB43vjZd1_4i^fcqq!)$QGqF%z98inqvaX-M>QDo={tw~H>PQYPx z7SELY&YhufU_pxa$`bmJJJ5Dq9Nb=ll)#-8?Yp>h{gxf2rE?jmGrMDWtwpFQSK{>3 z(c@(eDvTsJv>1+&Vw<24?#SGX5u$|)S2eom!!V# zFollHTEjZ5bdfdrjjpwhy@;5Qp*roNN0VW0T44Wp4^}bpa6v)t;>>HoY8!Xt=HY*I zybJEUZp(Q?XW9v~mqVvDr)T-hml(Z2Dt@MtLxSc1M#Ve)5>hz(K{MZV*`q%9lzMsc zq*F02<_S)WY#ffjg{pUoRFPamp|QJ$hB zMW|ga#PXTU{tyO>+mQ{ER5IX{yiU0mmrR%(CO1E-md&O0py#aiKrR*2WkdCN&LU09 z>rFNB?zNKAWqhu?>f8j3ke;i9mnJ7uxrLPMmp=$ulyj6&{of#Tb-*FD^U!>Z`53?1 z8nt(}*f6mF(_?J>NhkdcZP+fzc9%lVw;`O<0hVdhqOx{jU1JL`JijNz(dZ_ z@qQ~q)#(^&6!d8ygV%03Qmyra&gxFiqS)Ey7yQ_^>WnDM8Z6XWa}DCC3`rG{hm#0O=OM>8H3W8r4SC>jrJDSFTV3Xu& zcgzpZdIfs1Gl+(}w=^FUm)*bB6l#*nGM4%u6A2TbuvDC{{){o18$Wj<975t7physa zM9H0|3#1vMqPD~qETPZ>6;@SHvTq`s?eZcO@DLqvC-NY#4@^GIvH5VF@g37LLjAeQ zbF*#bT%1pQg{S(r{r9KR4~^Iyu( zGfA8}kD2u3g=9H)#8lIR3jyhpU^8yVKj&;+Eeg2{Td_ zh1)08#%1+{#;1TP^K#yon#;tnlXyi-Hri*pQ&r;~XA>lSl=!I zx=;r1iHSd^Ol4SDLXlIjdLbdAB(}D&E58 zNX|T8$+7Md_JeIysYDjwln$O}1uOb`^82@|7OBHn$y9FDmWkr9kAf#EK)Qr)oq}{X z{2vARL<@%6k$QG&9;AkWBp94Rl9hvNof9~Yl`$^kz3dUcS0&L^{V)sWUgG&-el&jG ziG~6|oE_zic+G}vX%{nnyPE0CUs4#kXV;qxLNOo|kEl2UR{Je%W5cT9 zrHLw6DC%ihd>3_;(fT|7JU0f#(!`g&gO1V4OJw2n8gET@5H<*u@@qRyfjDMt$(p%r z47}(vD|Z5>_qV(T(kpjW(JRB9Wec}yrq?w~t}`=_)hBbI?z7VSbr9GC`gpFTuy$gY zs`oQK>XUV1aG9y~pPm|<(eU$Y-Ux}hx;8Y<0i6E?NuRJ|!cR{>nwipcCV&0Ic|%oq zXG%jrCKJY+G+Q=B+tUFiOTrJbvs6YU?MRe8dC)1*Mp@C?w0#`jR0Z}qPbZD+3qo*@ z$z|wa`N6q;Z_#DZb+L7!b%Avu(;~|cgh7FVG-xv#BYBVtX4CJ=Sm7ZE{im9$XK@T* z=V!}cRhG&SR2IvilF1$uX@f-hcBAQqnPN_aU1CJ@*eSS}32ExovR>UJIOS>;ljf}E zw{Lpq)VIcY{e$fexg}gCAt=3n;k)n-+ud;TIHAN;WbLYxPPCUR5|rIB_)uhx3$JRN z;shIFAW(W|3ir3(A^9+PkK?O;B^de|GzW#SL|rJ~JZfg0q5(S#Ya-;ZyfZJ{-#B`w zxo7VQZjAV|cI?Z@*UUMN{%qJE3hrv06;O0BTDcNJq#vxffY$wu`HCUnUTxh7uNItn z1?LT19Mf#COqUInb6PrB#u!Y7w&HE$K_X1S#$Q%hesJ`Z$QA!N%QCA(22NYeLsyv3 zLpb&n>ledy{CpQ7^^@Ca^YXO#s{PdZ*IVXf%WLm(6{ zJdW1ndUCtRq0E`l6a|81_!_&)_F`)OqKPf$EVfXMY{Ys!4$#nZT33!_NFwrWrxI=Al31F_b`wQz-nvN}c29 z94cx5{j`yb%`as?ZLUJGL*rFD@{Wq;gp(d(#T3=)Z*xBHXAq^sle+q!-RTNK z)kODk$Q^ynK0tE%rM*8!`jh&E|TvMa2(-S>9@Sk0^#%%Ww#s#D2@F zio(_KiZ^;}llQUcnT!=dDD4zPv1m~F@RWi2uQJhe3NB(PZ?LMe3i|=c)^%o8~M77R(0%DooWQ0JM?wMi3anT$TtsX+Ghct33 zBIN78(;FA{2iqKcO+sZ^Pw53PELqs+p@aok_>&=8*2+R}em8c<+Cp&R3KX`|5bpY% zVIOggr5p^;Xh_^Ci@p9#IKiA{>S}K`k3iJ>hRT!c!{U6{7pT zNpyMg8CLI|Nq4DkS3vgMqxg_JX7?(&gh^fnp$~sOr%7>4#pt^QxXq02)3O2@tU>xu z5(f<3P<9Me5htE^3R)tnH>U~Zy-fVeBDuU1_r`FY7v_RttsBWir#&SPV=k2ehnqj}x z#_I}Xa#WiARZ!X4jE^K_{QN5`7Q}pif>H7)32|4~435Sm-7zp%yV4n{J%PQ0RQ9HQ zvULmuZ4sS_Ap5lEFARO+$;sVKd&@TCf#TlNnjH+EdSYvhEodb-Zyc91Lzh zjVnJcN~-u|pGEtkLve<#j#XW=5B!W~(?(K2MzPYmSINbRBCqEu7~=U9o>j;Fgxfk0 zcYEh-l>9)cRi{lgHZSzaho|Ja9JgL^VEH*>C7)tZ!4LyGH--T5rO`S_B0^a#NyP)B z__6#4UGe^h!}Lit%ioPUr3EKqingEaf0M)SwF7GI7O?ma_Qei_Lw z<<5$Hf(#3SugXcSqu$miA;>+^-oJFSe|pFHJDJV4MJU>NP^*_MKxC2jR{&IGwbq)z zZdW~iu;Htz#8K|D`5D7}4VN4S2x{W+Bi~Oe#Rq}dT`0}UTm6BD6V<~sp7RYdu`%z+ z87}c$s`AME3U=yJyz!UhB*6QOp|TY>S7!p}<_qg%3G3!Hj7nYJrxvJbV00sMd^Q#O z(r=zf(G%}}!!>@Ar38?}r=ftc`YoraE(5tyQ>>Zf!bbgrf#jzqsovNKRa8#jg4`V= z2mXDMq>9KC4F)yCf-SA8t<|cno+6l;Pt|oG4o0#8iSDe2*;TAbdNVI0F5WeQ#!yBn=@>7__DI3Nf-CG9B7Hs8QaS#$T?+U zlF$w{bCwUC_j?jNxWtlFYYVJ8y=llccIOol(XT3aiktPcPtH1}7Al4QuAkfimTerw zAj)8`8O6^DV%gWBoEn}bo_;}{Pq{* z62m21jRK*0(J^z1y&SVww~~im?{bzeWoIPIe~-Z9100Qx@M+6o9$}?*p$}*bSRs%w z4dXMFkX`2%1fE;{H4-l9?|kkbMva2O|7enWZ9R6 z{S#@I?hdhy@^dA(O0R{N6NuY9&(8w+o9ZNGar0>>UbjJysxKwJ>bo-KUso+(3JV2kf`m=o%HqH|Sm82oGTRoU3r;oIJdc6NWB z+LKOqGsfSj+tFojxz==vb-i<^=6FsaH80cu~VEp$=LkS({MEnf{I+A zNNF2RI5e5B@FE*to`GI$Pc)Da?qyZfImFEQ6XS*ZSpcfXSJl2AMJ(TVEF1JvWKt1$ z_YcNV4miRx4=a)3Ur^L&6OHv9vW7#b79tE)$*F{s%-L&wM)pUCv%e`&eTtAiLA5YF zLMvxc36JOxGQU+cSjcxECCuahXz?*|hGb4=RXZO_u5kCV`B))@#$IRGyjNm)QasFF z_q9{tT3*J^)G*UhRBT>|Eq7m$LxAJusWF817bFIX+FaGH^S9)0`6e(##i8nsgAme_ zoDPCQpIUyrVYGdOc2yB@ja*_SN79@pm4nL)nKyk$X>S8@HG zRBVpo2X7t8VIW+vXZM-ez_H1qE1!~!te28>CG?x?;BG$IOO_b)P!2NnCD+?ocpXK5 zYKh$<(+lM7Em}4O>iOL zUkrsZ374KU2kACNtQXg~u1!mlcp<0~WYi;hIR-tQx)s(8uP~Rg zQ%rAy!zh@|DN5&Cq4fI9IMgP)YPZ_pSUxr@|ItzNLB+&okju}W6*@E3iWMk-5j9g!(A zsWDFtA7;Tn620uE&6+t#9{ail12*A3o^N)66EO;MzQKS#co%}NAKEC8q1=KUw#siD zx7sQ8t|UfwGXY|)1ZuUVqm5%*fQOsFGnnJ2d4jKm1}WY50I@jkT5gnNyh6(uUzkeI z`!v@3w9{UpGQT%zi#XE5o?Ks<-|aU>>m(wRF9yLKSQ2I04#AEkNlvRxX<=L!xnz>@ zpe%k-UWyTqN%@~b;O(T-CyMdmo|#wea=M_h`_vYnb0#mEvS8^92XN~tQ_3LpB@kH> zp@4=-<&+^Fqn!HU{T~#ERBYh|Ey>d{8Y#RHBi}3XRT6r$!d84kmSCUi<6Hqqp3)?l zhDKaW?iJGfJWBGbFBI~U)uq?Y)(cCK9 z4s;J7YqSvCb&2w$^ni0J(<5`0nrs|3u8mOLC23e~qBmU{t*_)v8^QA>olF8gtVbE z7>|N5I}OgUb-3^2kUGr%R!)^Ffqe1XX1*h!OjZ@yIqekKs>U4P=Ln zcXp6cA|zS3RwT42Ebrdh@}AVD57YCWj-fYN0|k`>W6PVu?=PJL&&{BI4*X1gk(%!A zQNIVTqrh=y(RPONrlWxoNZ`3TiFGcX6=FW(WjF%KOgkMz3xInO3QeS3el1O(op<f z@YGAW*3%MU!NR(G_??t@h#AP7g&CN`P>=+R&_OAO$QRtJ;{4_y!t%G8-e;O4n7?FN z29Vc2lYXW;YJV4VcBQpyEQ0!|w}I5({-*ARi<@>m%8S2`EElc6arG$|_4R>dH}Wr` zaKNz4AU+}^bf^nU73Y1Eo@OiT4Cs%uloBzsjlk38p)qwdKeS9=BQA?<@&}LU(8a2hiJ4^2Lq~_z0IozQf(~|Jdpm zkaHkKGvE8J59%YD5M*WMDT&M9J<@R4@&jbcrsesnlLN5Mb$DvFKZSRrT(!=gIb&|X zJ<@lG=-*H8maUnTJ?!QYhjhNb8lEK&$|doZFNr#)-{V07^pU(iT>f&V&W3vvo&Frx zRK`%Vdo13@Q6@n%gAgtd>oyt6k5E5Maq!K3?l!~K%>UPlJtufiGzr0LVF&+qP}nwr$%sZ*1GV`NU2(@4H*y+S-3$tEPIo zx~HparsjvI&pFR|y3XcR1-ui`8fGT?Qoi}txSH0&OBrH!S9;0@TqziWFi4B4Kp3zfahN*8AyT3g~;u4}&C`ZkMBpSV_Y zGFnND1v_@#dUrcc|DAe&JAL(ieGm10*M0w=>mNP$_wB6h0N=+ZYF{sy)>ENh(rMtX z?Dv`-dJUe>fE^#F5Wp@Qd*FuRLl)AvY{BKBZS~vF<$LH7|Jxe%W2lezR*H755$-dK z8~vm8Wz4tyI#7@5#m34eXt(v{TAa_8{Oy+U5x8mM+%+m1g{`tNviWZcAMNV57D9IkomZ{}od87{1Usjwd&JQ*$Ww zz4y~KoV+RjMZ@D}_nE)k^tj#hS;hNldw9C8_p=OQ<5mZwR_~kIszti@jQwA9U*=_U z)N6FqvBZuCrg}=QVxZJM3my%}(^S@8vUR zi1YHEl8_I7I*A}5E}`_ShD_xn)>@9W#nug_nOJo$OL?hV^47}Ljh~0NwMI$aN9I7} z=Oh=!&4~HbkD$rPM^7DE#p||M`pO?B3hC9#k9Lg35g>4IUrRRfkJW|w{M z%~C#**ZLmAOpN-!BVQVEvvOv=s~B3xKYDlVbY!pS?THG2swWlNv}C&;w<|LGuJku| zUxXSFLnc9jQ>WLmzn9t?jXFKx*``nRcMD84FqNmlJRyF{x0}Uwoi!Bbd4JPGj9o}@ zDdkJK!ppzljQLI-`D3}~-R+3*R72y~mag361p5!smLG3@_K3Oo61|<@zRe{MRCR1VVRd5 z`!v#aQSiFiVrH2hC0@HnJA*&Vdik{C^#V|`^?m2?mEnM&?aYDdG8c8Hd#DxSh9Qw%u9BCLEU5;m#RXnV@GL* z>GQyZ=pdkDYpzfQ`Lb%$@t$SBL-?xF1wCY!gV13%?4Cnyso)9^>_qUE1LZOSZugS3 zj_w(~pHA7UQWnk27J}_c#%M43+jZJ*B-nbRLZP<<%ktEOOq{Er4dn_*?|9)=9gw)T ze}BpoZtMbYHR5euiP+i=*oXyFOD}M+7-<}(isiTlZf<+wc$`PYWO%e;<(_hEIw??Y zR~NSL<|}4cK!<^wN7@#lu@H!7Nc2LS@zM{OF$Gg8xgbV7)keQrgV%+*@x6SEZS9`+ zT)6YM2bITIH!CVZ-f~%r_+=HM=hT$TVi7>(FA>$D@3pLmuh9S|4((u;HDGk*9&qhX zdh|ZHZ@>(nsFy~Kg=qiu6hL zg$Y-P@d&Q=oSRMf~(;VQ5Z$D%*e-`hm^ zC)d79$8|Cn-Dj$&*zQ4LerzsQ$*0WBU87AxJBVq$e+q7wR1?ao8M%9$$DP92R@*KR z)4HpF26LXVZPlffT{FtBL=S$drf+hNbY~wVu;jYEAORwA?=*4mwr1S%7Q087xB3I) z8ao4Cxwy|ZuA|Ri6%PEDvnEooOf?CCYO<4`Fnu7Svkd-$+FCMFe8@yP+D|ejeC>%o zfU5cqHrx?b#V0>f+N$SfsAT@mJc|MRodYk@H{9YFzJ5p)xbJ$`1CAz64nc7O$JQa?g^Bcjx?< z8}f$@=b3q$f&pJyRL|MP?b%QV%pjNZh5R98xFOu8SSNI>7=tVp02%i|RsLzw+B4vCsor&P-BYQYKTPDxM>e_B=^C34_ zc}v$R4s;%@k0z#BcN&HP-n^-yg>i5f5+z!`Yy>{MSZ9^H*`Xa0<_+^K8lOf zzk4WM5jXd{qL|v*T{}0|^5&az>E_J=Y=LdERcku-IMTx}6Cb=5Zj&$BaTRHA6AyvW zeNw*)in2ccoRH%9O>Q&v?iFccg`2T&Gk~9&dpU#A(37%Xb+wDHou%sPTH3@ zEKEYZMk09aH<=j2-WiCsy)_C}8_sF|jAs6fF2-UQONb8yh^c)TN*bI~2(jM@1VN=& zhguZri2}og<$;dGZ9;Hd2hd>SJQumg;to-g@3(&x#77*Cw|Q4_?}BB zp3bd{uM`(U`$cx)3%9P;#3v2yX7~R!@}jzGpCKhw8A>7~F2wQGl)OO+mjArVFfQNQ zE(7=`4+|kqE$nnQfBCJA(pss&B5*IRmIZ)6PHRK+;4s@O2(KpmksAN=NLy&_5UhhH(cPJ^SGvsb(5@B>tNv;O#hG{*v=qp`1@?+db%8p^}?%zDHm zs8P9DAneCEEKF*$-rn5BH8~h|^_AV%xd$uw&lnO16cu|DNWiIb>^x5|-x@8^(*(Z0DJoaiV}`l8Z>iYO_xs{5YQ5{NzX zZ?OdL@haKPQModVMKWIP1|IvS>a%<7fk#*vWPX0{Z1%IM$(=y69<%tI;ppgS4$scL z%*k-K5U`}93*tHF+_UaLt*<-yKH=?R=yT8UdJY@%9RsTfq&~hK+oEdXbzQ~BJ*s^bxUz1t+# z^YuEKtn*sVJ#qwKvMCTg{Ysv3LD1H9K{B9R6^s0VO z-!EeyzByVpt;fCgi@1Hyb-rWk5LeBwomIUSHN6*|SvSu8>uW1c*8xX;&jn`M&w~s| zP2VnGeN#2O_et-D`*&V==Qkan?HU-*JO^7@x;S4JCvC@nzPQ^?tgD_ja?o?!E}MQ2 zaeFN`H2GLv_pSA0U-B~SDr!Pj)OnE6?BKhLR@pqbHaosfbZ}z#S?H%tO$N7j7eaF0yO)xMW z_3_o$wrG8~7n6=pwf*P{Igb0q-{*P9>3MtiDr?gxi066d**_?b`}Rr-IxZ!wF973A zZ~uLJOZ01sUTNs&ao26Ap8Sc9OtnP z@M&u6<9D)pa{+SG{j%26rtLPJlGfw#_bpAwW7?%{>wPWi26n0M9W}ARuiwhhR>$w{ z^akr6I)2aniB(;%qOZrcny%0Fv>Wf+ppEzQeKTK+Al`Hb%V)-}-`8!IT`Adawz`w! zMb?e)$LllZu9o3s$^MOB!O^$iUy{Kw*S0o#FYDd8h_eP{srSaQCpf63I8l(^Ljo6? zeJ=P;aSB|i5pC>)2@e~itW2>p>IAh*pUK@>DAXj$5O!mYb40B2KjkRofwHrdK`lrR zl*}D+0lh^t52C3e`&HRx1~ zrix{75Q+tn$(&+1^R%5)GmaCC3~)2SZHO!5YX|70u(QxYr@iHxm)nWwsK!MaSbnh? z8xXgH9bl9@d#s+#1NEK zF~p5m4mbF3CC4zUhW|70nld)MD;JoDbPkvY7bpyzG`-0BP9`;K465`On0+DD%%PHJ zf<_9k8z1G2@$i+jpa&1rgshu%6t#SYZW0k7YBC{?`G{9s&{s9qm=vF$G1iDGpChw+ zBHp+z9T1o|p(JkMn6E0tYQU=>lV&{?QiKj)u?)vWbctTtpi>Y5D=d_}5SHC^-f~#j zj-Z34l|--Tz@)W+L)Ba%Ol2_Dl+-}uOk{*yM%hNuRi<3X3As(Ij-Mgf6Tt>BYiko3 z5FuPi>PFH@B0(rT8kA023YkUL%0)Z;dyS4c%wal+fSP1S>8&J-0goUz; zR^$9#kZ`|ynXdvXUrs@57Usm8EJbGJ`DR4oHsst6P zxJJgX zQV#mxmZBa*0zpqlaNJaa9kl=2m}fMk;G52+5%oR#7ev>nM5rVVFNpstz~@i^S4z_w zV`}t_pzvr*Jr0xDYtD0O>h9)!2)Qq79Oot7p4z=NkDnH$w7;$=! z!tjFTQp7H+Bn8#ZZQqLcjMwuX-mZdkHHe}+iLL7Ji z!%3Yl$&V^i&S_ijk4mxzk(|lh2`OC130(R}3^0XF{Bz!eGp(GcegmUfk8t)W5&vh| z{+A!X%t-!l-^)Edie`VOh^Cw(mj1NSzlhBFz<+OTQJ}FZ-~^JnGcyXfMg(F?TIt@b zm@;A&+5HBZEgj*^5lvW&cqx7Di>+HRUmz@R92sRFzwq_vo4YS%)?~Qr-nzZ)+wJsI zLveRj_7qUWZ8l~5s}=Vl)d@IVFgs8|&FTM3Eijk2T@nN~9{|NgAfF3}7wrevm;i1C zwI%~X^E08*VO-1}iL2fc*+R<^0!Fuqe!Yv<&W4Gf2-`}W8rfn3=hzhEmXM^Hz&$pl z%WAI+*@Wv}!uOUv1=Y=+DXA;sw%zq6=k7Eea_Xc2oaxFVxzhp`aPM9Y#g6u2bmFOE z6}%RDOd>q+?|TTS0p&bWIsoWDaaTd}id&hlbmlMA^XNiKmd!Q(X9A4GCcHPVb^PKjKDN2Ts}lWn=EL2R$( zjN-@S_=>q17hE2OT&@nNk;03sgRcWL}@o$OMr0Pr_G_6 z|D&1Fo$KqC=H{AkYOkuQm+mg?hY41o9uKSveCOsYwVC_+=faLE z_8#4K%C#49^HHQq6C-7^QM~RaMLo`ZLG(pLXk~0r<~AU#CDU< z@*I9j1s4$Cokr2*K zxe`;BL(|g*gS3uTk+vZ0j^1Aql4>f*3Qdwe%=m!p>cEtxW@DRhRr^VAR!K><5mc5c z7VRN?#jqUnV?^JF;hz}?ZC>={+DNJkRV(IkS>(RfB1@H5Xm0+ej%trj2GCX5iDg92 zEZ!3yG~7XL_%4I`MQuFq-oFcKDnLR0sGCj$53`5h5VFP!PDU_z<$=@WnbiR*Dh!Ys z6=Ugl&W6FY9J#OBtwA>cD6`*#z9_2t!xY9fjqxo@%${>GcTAZFlV^VFUWYPRSF+S)dZi)9mud3&S2q%_O(X* z6@I@AUl9z4VVTm=@1UP5I@I>d91R(AV(X=htG_=}tsJ-3Ewl`} zP;w_ysHrWGNBFv!aDVA`bSCmjELVOf>vdHw`DOW?YOc=2_)#0^0EG!RE~C0ys-?Wy z-OCkf>qz9eqEvo^@BZ)BICDAW`OWL|V#3|I(EWONAx0AI%dg5dM6Nm#^$DYgs@kuL z@{^0p(7BvIayyFdYJx(-nI))W?Gryf-3wVM;R33 zy@HwWDogS!QetLM|6<6E9iXZoOSW{2BRnUQp(A>)dija#xnM})NzTCu?quwW+x_M@|R7p zj$|V@ylFL4xu7U6E!A56~K?;&8h{?{Hm5D=o@F)h({0;}< z66_|*JeyFei0|>q0|xNJt?U54xCRSb6a|X`_W<$7PKpsqt+z;)Pv#1 zWbO)P#XI|o#>zX(1%14JaWC74pQ8W#*o65m}{&n`M)m7(f_e|=PK*4J@r zcvCE)sZ}y34cSu{RpVs~`81Ued(3F2K;9R@QGwvV$C6!^4$GU{No=ETvZ6Y()k#Z2 z5|gL3|8V#4Q0<}=`xq5B$5QJYpj3&NC>V?j1zncXpr~H*kB{h3#j-hY0WA7H7-DGU z_JY(S|4i~*s6sa7dt(iv&@IXs$93%{`FV`qW+9{gxI<7x)yf z@lKpt~Z9W>BX4gOxgV0dtd-l@TJBCD~B(g{Q-bAXdOVH*~=NOAou z$Y$Bem~ebWyu6Vjc3}kUzgt=dH=mo@_7Xc4R=>%z@QQ!!p&)Ci8-(b6a-^kxT||__ z^lc6$QKOdzp&dOcz6426!x~*yl;Fr6yBrXs@~AOg&>*g|?;EM-s-8xkl(_jc4_-|% z?{FS%N&B)4NIBHwLDl)zy`J|ll_0b$Nlz^a2N}vn=^t+v=GIlXp$q8RXd49U61I0q zG+k_~;LTndOBOhn4@tF&zE3&gkI)P^>T=Rgwyy4EslPsqH4|&xK-m

    l$;8%f7Lm{iz8)H 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" + prop_id.intValue + ""), TMP_UIStyleManager.label); + EditorGUI.LabelField(new Rect(rect.x + 90f, rect.y, 80f, 18), new GUIContent("Hex: " + prop_id.intValue.ToString("X") + ""), TMP_UIStyleManager.label); + EditorGUI.LabelField(new Rect(rect.x + 170f, rect.y, 80, 18), "Char: [ " + (char)prop_id.intValue + " ]", TMP_UIStyleManager.label); + GUI.enabled = prevGuiState; + + EditorGUIUtility.labelWidth = 35f; + EditorGUIUtility.fieldWidth = 10f; + + float width = (rect.width - 5f) / 4; + EditorGUI.PropertyField(new Rect(rect.x + 5f + width * 0, rect.y + 22, width - 5f, 18), prop_x, new GUIContent("X:")); + EditorGUI.PropertyField(new Rect(rect.x + 5f + width * 1, rect.y + 22, width - 5f, 18), prop_y, new GUIContent("Y:")); + EditorGUI.PropertyField(new Rect(rect.x + 5f + width * 2, rect.y + 22, width - 5f, 18), prop_width, new GUIContent("W:")); + EditorGUI.PropertyField(new Rect(rect.x + 5f + width * 3, rect.y + 22, width - 5f, 18), prop_height, new GUIContent("H:")); + + //GUI.enabled = true; + EditorGUI.PropertyField(new Rect(rect.x + 5f + width * 0, rect.y + 44, width - 5f, 18), prop_xOffset, new GUIContent("OX:")); + EditorGUI.PropertyField(new Rect(rect.x + 5f + width * 1, rect.y + 44, width - 5f, 18), prop_yOffset, new GUIContent("OY:")); + //GUI.enabled = true; + EditorGUI.PropertyField(new Rect(rect.x + 5f + width * 2, rect.y + 44, width - 5f, 18), prop_xAdvance, new GUIContent("ADV:")); + EditorGUI.PropertyField(new Rect(rect.x + 5f + width * 3, rect.y + 44, width - 5f, 18), prop_scale, new GUIContent("SF:")); + } + + } +} +*/ \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/GlyphInfoDrawer.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/GlyphInfoDrawer.cs.meta new file mode 100644 index 0000000..d840c53 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/GlyphInfoDrawer.cs.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 900f1a451c764dc3bdcc0de815a15935 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/GlyphMetricsPropertyDrawer.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/GlyphMetricsPropertyDrawer.cs new file mode 100644 index 0000000..ee8459f --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/GlyphMetricsPropertyDrawer.cs @@ -0,0 +1,53 @@ +using UnityEngine; +using UnityEngine.TextCore; +using UnityEditor; +using System.Collections; + + +namespace TMPro.EditorUtilities +{ + + [CustomPropertyDrawer(typeof(GlyphMetrics))] + public class GlyphMetricsPropertyDrawer : PropertyDrawer + { + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + SerializedProperty prop_Width = property.FindPropertyRelative("m_Width"); + SerializedProperty prop_Height = property.FindPropertyRelative("m_Height"); + SerializedProperty prop_HoriBearingX = property.FindPropertyRelative("m_HorizontalBearingX"); + SerializedProperty prop_HoriBearingY = property.FindPropertyRelative("m_HorizontalBearingY"); + SerializedProperty prop_HoriAdvance = property.FindPropertyRelative("m_HorizontalAdvance"); + + // We get Rect since a valid position may not be provided by the caller. + Rect rect = new Rect(position.x, position.y, position.width, 49); + + EditorGUI.LabelField(rect, new GUIContent("Glyph Metrics")); + + EditorGUIUtility.labelWidth = 30f; + EditorGUIUtility.fieldWidth = 10f; + + //GUI.enabled = false; + float width = (rect.width - 75f) / 2; + EditorGUI.PropertyField(new Rect(rect.x + width * 0, rect.y + 20, width - 5f, 18), prop_Width, new GUIContent("W:")); + EditorGUI.PropertyField(new Rect(rect.x + width * 1, rect.y + 20, width - 5f, 18), prop_Height, new GUIContent("H:")); + + //GUI.enabled = true; + + width = (rect.width - 75f) / 3; + EditorGUI.BeginChangeCheck(); + EditorGUI.PropertyField(new Rect(rect.x + width * 0, rect.y + 40, width - 5f, 18), prop_HoriBearingX, new GUIContent("BX:")); + EditorGUI.PropertyField(new Rect(rect.x + width * 1, rect.y + 40, width - 5f, 18), prop_HoriBearingY, new GUIContent("BY:")); + EditorGUI.PropertyField(new Rect(rect.x + width * 2, rect.y + 40, width - 5f, 18), prop_HoriAdvance, new GUIContent("AD:")); + if (EditorGUI.EndChangeCheck()) + { + + } + } + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + return 65f; + } + + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/GlyphMetricsPropertyDrawer.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/GlyphMetricsPropertyDrawer.cs.meta new file mode 100644 index 0000000..484aab6 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/GlyphMetricsPropertyDrawer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e3882522a08b6f5459b4dea6f8791278 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/GlyphRectPropertyDrawer.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/GlyphRectPropertyDrawer.cs new file mode 100644 index 0000000..eaf8dd4 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/GlyphRectPropertyDrawer.cs @@ -0,0 +1,44 @@ +using UnityEngine; +using UnityEngine.TextCore; +using UnityEditor; +using System.Collections; + + +namespace TMPro.EditorUtilities +{ + + [CustomPropertyDrawer(typeof(GlyphRect))] + public class GlyphRectPropertyDrawer : PropertyDrawer + { + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + //EditorGUI.BeginProperty(position, label, property); + + SerializedProperty prop_X = property.FindPropertyRelative("m_X"); + SerializedProperty prop_Y = property.FindPropertyRelative("m_Y"); + SerializedProperty prop_Width = property.FindPropertyRelative("m_Width"); + SerializedProperty prop_Height = property.FindPropertyRelative("m_Height"); + + // We get Rect since a valid position may not be provided by the caller. + Rect rect = new Rect(position.x, position.y, position.width, 49); + EditorGUI.LabelField(rect, new GUIContent("Glyph Rect")); + + EditorGUIUtility.labelWidth = 30f; + EditorGUIUtility.fieldWidth = 10f; + + //GUI.enabled = false; + float width = (rect.width - 75f) / 4; + EditorGUI.PropertyField(new Rect(rect.x + width * 0, rect.y + 20, width - 5f, 18), prop_X, new GUIContent("X:")); + EditorGUI.PropertyField(new Rect(rect.x + width * 1, rect.y + 20, width - 5f, 18), prop_Y, new GUIContent("Y:")); + EditorGUI.PropertyField(new Rect(rect.x + width * 2, rect.y + 20, width - 5f, 18), prop_Width, new GUIContent("W:")); + EditorGUI.PropertyField(new Rect(rect.x + width * 3, rect.y + 20, width - 5f, 18), prop_Height, new GUIContent("H:")); + + //EditorGUI.EndProperty(); + } + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + return 45f; + } + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/GlyphRectPropertyDrawer.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/GlyphRectPropertyDrawer.cs.meta new file mode 100644 index 0000000..137f460 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/GlyphRectPropertyDrawer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8bc2b083b068f3546a9509c805e0541c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BaseEditorPanel.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BaseEditorPanel.cs new file mode 100644 index 0000000..07651bf --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BaseEditorPanel.cs @@ -0,0 +1,1116 @@ +using UnityEngine; +using UnityEditor; + +namespace TMPro.EditorUtilities +{ + public abstract class TMP_BaseEditorPanel : Editor + { + //Labels and Tooltips + static readonly GUIContent k_RtlToggleLabel = new GUIContent("Enable RTL Editor", "Reverses text direction and allows right to left editing."); + static readonly GUIContent k_MainSettingsLabel = new GUIContent("Main Settings"); + static readonly GUIContent k_FontAssetLabel = new GUIContent("Font Asset", "The Font Asset containing the glyphs that can be rendered for this text."); + static readonly GUIContent k_MaterialPresetLabel = new GUIContent("Material Preset", "The material used for rendering. Only materials created from the Font Asset can be used."); + static readonly GUIContent k_AutoSizeLabel = new GUIContent("Auto Size", "Auto sizes the text to fit the available space."); + static readonly GUIContent k_FontSizeLabel = new GUIContent("Font Size", "The size the text will be rendered at in points."); + static readonly GUIContent k_AutoSizeOptionsLabel = new GUIContent("Auto Size Options"); + static readonly GUIContent k_MinLabel = new GUIContent("Min", "The minimum font size."); + static readonly GUIContent k_MaxLabel = new GUIContent("Max", "The maximum font size."); + static readonly GUIContent k_WdLabel = new GUIContent("WD%", "Compresses character width up to this value before reducing font size."); + static readonly GUIContent k_LineLabel = new GUIContent("Line", "Negative value only. Compresses line height down to this value before reducing font size."); + static readonly GUIContent k_FontStyleLabel = new GUIContent("Font Style", "Styles to apply to the text such as Bold or Italic."); + + static readonly GUIContent k_BoldLabel = new GUIContent("B", "Bold"); + static readonly GUIContent k_ItalicLabel = new GUIContent("I", "Italic"); + static readonly GUIContent k_UnderlineLabel = new GUIContent("U", "Underline"); + static readonly GUIContent k_StrikethroughLabel = new GUIContent("S", "Strikethrough"); + static readonly GUIContent k_LowercaseLabel = new GUIContent("ab", "Lowercase"); + static readonly GUIContent k_UppercaseLabel = new GUIContent("AB", "Uppercase"); + static readonly GUIContent k_SmallcapsLabel = new GUIContent("SC", "Smallcaps"); + + static readonly GUIContent k_ColorModeLabel = new GUIContent("Color Mode", "The type of gradient to use."); + static readonly GUIContent k_BaseColorLabel = new GUIContent("Vertex Color", "The base color of the text vertices."); + static readonly GUIContent k_ColorPresetLabel = new GUIContent("Color Preset", "A Color Preset which override the local color settings."); + static readonly GUIContent k_ColorGradientLabel = new GUIContent("Color Gradient", "The gradient color applied over the Vertex Color. Can be locally set or driven by a Gradient Asset."); + static readonly GUIContent k_CorenerColorsLabel = new GUIContent("Colors", "The color composition of the gradient."); + static readonly GUIContent k_OverrideTagsLabel = new GUIContent("Override Tags", "Whether the color settings override the tag."); + + static readonly GUIContent k_SpacingOptionsLabel = new GUIContent("Spacing Options", "Spacing adjustments between different elements of the text."); + static readonly GUIContent k_CharacterSpacingLabel = new GUIContent("Character"); + static readonly GUIContent k_WordSpacingLabel = new GUIContent("Word"); + static readonly GUIContent k_LineSpacingLabel = new GUIContent("Line"); + static readonly GUIContent k_ParagraphSpacingLabel = new GUIContent("Paragraph"); + + static readonly GUIContent k_AlignmentLabel = new GUIContent("Alignment", "Horizontal and vertical aligment of the text within its container."); + static readonly GUIContent k_WrapMixLabel = new GUIContent("Wrap Mix (W <-> C)", "How much to favor words versus characters when distributing the text."); + + static readonly GUIContent k_WrappingLabel = new GUIContent("Wrapping", "Wraps text to the next line when reaching the edge of the container."); + static readonly GUIContent[] k_WrappingOptions = { new GUIContent("Disabled"), new GUIContent("Enabled") }; + static readonly GUIContent k_OverflowLabel = new GUIContent("Overflow", "How to display text which goes past the edge of the container."); + + static readonly GUIContent k_MarginsLabel = new GUIContent("Margins", "The space between the text and the edge of its container."); + static readonly GUIContent k_GeometrySortingLabel = new GUIContent("Geometry Sorting", "The order in which text geometry is sorted. Used to adjust the way overlapping characters are displayed."); + static readonly GUIContent k_RichTextLabel = new GUIContent("Rich Text", "Enables the use of rich text tags such as and ."); + static readonly GUIContent k_EscapeCharactersLabel = new GUIContent("Parse Escape Characters", "Whether to display strings such as \"\\n\" as is or replace them by the character they represent."); + static readonly GUIContent k_VisibleDescenderLabel = new GUIContent("Visible Descender", "Compute descender values from visible characters only. Used to adjust layout behavior when hiding and revealing characters dynamically."); + static readonly GUIContent k_SpriteAssetLabel = new GUIContent("Sprite Asset", "The Sprite Asset used when NOT specifically referencing one using ."); + + static readonly GUIContent k_HorizontalMappingLabel = new GUIContent("Horizontal Mapping", "Horizontal UV mapping when using a shader with a texture face option."); + static readonly GUIContent k_VerticalMappingLabel = new GUIContent("Vertical Mapping", "Vertical UV mapping when using a shader with a texture face option."); + static readonly GUIContent k_LineOffsetLabel = new GUIContent("Line Offset", "Adds an horizontal offset to each successive line. Used for slanted texturing."); + + static readonly GUIContent k_KerningLabel = new GUIContent("Kerning", "Enables character specific spacing between pairs of characters."); + static readonly GUIContent k_PaddingLabel = new GUIContent("Extra Padding", "Adds some padding between the characters and the edge of the text mesh. Can reduce graphical errors when displaying small text."); + + static readonly GUIContent k_LeftLabel = new GUIContent("Left"); + static readonly GUIContent k_TopLabel = new GUIContent("Top"); + static readonly GUIContent k_RightLabel = new GUIContent("Right"); + static readonly GUIContent k_BottomLabel = new GUIContent("Bottom"); + + protected static readonly GUIContent k_ExtraSettingsLabel = new GUIContent("Extra Settings"); + + protected struct Foldout + { + // Track Inspector foldout panel states, globally. + public static bool extraSettings = false; + public static bool materialInspector = true; + } + + protected static int s_EventId; + + public int selAlignGridA; + public int selAlignGridB; + + protected SerializedProperty m_TextProp; + + protected SerializedProperty m_IsRightToLeftProp; + protected string m_RtlText; + + protected SerializedProperty m_FontAssetProp; + + protected SerializedProperty m_FontSharedMaterialProp; + protected Material[] m_MaterialPresets; + protected GUIContent[] m_MaterialPresetNames; + protected int m_MaterialPresetSelectionIndex; + protected bool m_IsPresetListDirty; + + protected SerializedProperty m_FontStyleProp; + + protected SerializedProperty m_FontColorProp; + protected SerializedProperty m_EnableVertexGradientProp; + protected SerializedProperty m_FontColorGradientProp; + protected SerializedProperty m_FontColorGradientPresetProp; + protected SerializedProperty m_OverrideHtmlColorProp; + + protected SerializedProperty m_FontSizeProp; + protected SerializedProperty m_FontSizeBaseProp; + + protected SerializedProperty m_AutoSizingProp; + protected SerializedProperty m_FontSizeMinProp; + protected SerializedProperty m_FontSizeMaxProp; + + protected SerializedProperty m_LineSpacingMaxProp; + protected SerializedProperty m_CharWidthMaxAdjProp; + + protected SerializedProperty m_CharacterSpacingProp; + protected SerializedProperty m_WordSpacingProp; + protected SerializedProperty m_LineSpacingProp; + protected SerializedProperty m_ParagraphSpacingProp; + + protected SerializedProperty m_TextAlignmentProp; + + protected SerializedProperty m_HorizontalMappingProp; + protected SerializedProperty m_VerticalMappingProp; + protected SerializedProperty m_UvLineOffsetProp; + + protected SerializedProperty m_EnableWordWrappingProp; + protected SerializedProperty m_WordWrappingRatiosProp; + protected SerializedProperty m_TextOverflowModeProp; + protected SerializedProperty m_PageToDisplayProp; + protected SerializedProperty m_LinkedTextComponentProp; + protected SerializedProperty m_IsLinkedTextComponentProp; + + protected SerializedProperty m_EnableKerningProp; + + protected SerializedProperty m_IsRichTextProp; + + protected SerializedProperty m_HasFontAssetChangedProp; + + protected SerializedProperty m_EnableExtraPaddingProp; + protected SerializedProperty m_CheckPaddingRequiredProp; + protected SerializedProperty m_EnableEscapeCharacterParsingProp; + protected SerializedProperty m_UseMaxVisibleDescenderProp; + protected SerializedProperty m_GeometrySortingOrderProp; + + protected SerializedProperty m_SpriteAssetProp; + + protected SerializedProperty m_MarginProp; + + protected SerializedProperty m_ColorModeProp; + + protected bool m_HavePropertiesChanged; + + protected TMP_Text m_TextComponent; + protected RectTransform m_RectTransform; + + protected Material m_TargetMaterial; + + protected Vector3[] m_RectCorners = new Vector3[4]; + protected Vector3[] m_HandlePoints = new Vector3[4]; + + protected virtual void OnEnable() + { + m_TextProp = serializedObject.FindProperty("m_text"); + m_IsRightToLeftProp = serializedObject.FindProperty("m_isRightToLeft"); + m_FontAssetProp = serializedObject.FindProperty("m_fontAsset"); + m_FontSharedMaterialProp = serializedObject.FindProperty("m_sharedMaterial"); + + m_FontStyleProp = serializedObject.FindProperty("m_fontStyle"); + + m_FontSizeProp = serializedObject.FindProperty("m_fontSize"); + m_FontSizeBaseProp = serializedObject.FindProperty("m_fontSizeBase"); + + m_AutoSizingProp = serializedObject.FindProperty("m_enableAutoSizing"); + m_FontSizeMinProp = serializedObject.FindProperty("m_fontSizeMin"); + m_FontSizeMaxProp = serializedObject.FindProperty("m_fontSizeMax"); + + m_LineSpacingMaxProp = serializedObject.FindProperty("m_lineSpacingMax"); + m_CharWidthMaxAdjProp = serializedObject.FindProperty("m_charWidthMaxAdj"); + + // Colors & Gradient + m_FontColorProp = serializedObject.FindProperty("m_fontColor"); + m_EnableVertexGradientProp = serializedObject.FindProperty("m_enableVertexGradient"); + m_FontColorGradientProp = serializedObject.FindProperty("m_fontColorGradient"); + m_FontColorGradientPresetProp = serializedObject.FindProperty("m_fontColorGradientPreset"); + m_OverrideHtmlColorProp = serializedObject.FindProperty("m_overrideHtmlColors"); + + m_CharacterSpacingProp = serializedObject.FindProperty("m_characterSpacing"); + m_WordSpacingProp = serializedObject.FindProperty("m_wordSpacing"); + m_LineSpacingProp = serializedObject.FindProperty("m_lineSpacing"); + m_ParagraphSpacingProp = serializedObject.FindProperty("m_paragraphSpacing"); + + m_TextAlignmentProp = serializedObject.FindProperty("m_textAlignment"); + + m_HorizontalMappingProp = serializedObject.FindProperty("m_horizontalMapping"); + m_VerticalMappingProp = serializedObject.FindProperty("m_verticalMapping"); + m_UvLineOffsetProp = serializedObject.FindProperty("m_uvLineOffset"); + + m_EnableWordWrappingProp = serializedObject.FindProperty("m_enableWordWrapping"); + m_WordWrappingRatiosProp = serializedObject.FindProperty("m_wordWrappingRatios"); + m_TextOverflowModeProp = serializedObject.FindProperty("m_overflowMode"); + m_PageToDisplayProp = serializedObject.FindProperty("m_pageToDisplay"); + m_LinkedTextComponentProp = serializedObject.FindProperty("m_linkedTextComponent"); + m_IsLinkedTextComponentProp = serializedObject.FindProperty("m_isLinkedTextComponent"); + + m_EnableKerningProp = serializedObject.FindProperty("m_enableKerning"); + + m_EnableExtraPaddingProp = serializedObject.FindProperty("m_enableExtraPadding"); + m_IsRichTextProp = serializedObject.FindProperty("m_isRichText"); + m_CheckPaddingRequiredProp = serializedObject.FindProperty("checkPaddingRequired"); + m_EnableEscapeCharacterParsingProp = serializedObject.FindProperty("m_parseCtrlCharacters"); + m_UseMaxVisibleDescenderProp = serializedObject.FindProperty("m_useMaxVisibleDescender"); + + m_GeometrySortingOrderProp = serializedObject.FindProperty("m_geometrySortingOrder"); + + m_SpriteAssetProp = serializedObject.FindProperty("m_spriteAsset"); + + m_MarginProp = serializedObject.FindProperty("m_margin"); + + m_HasFontAssetChangedProp = serializedObject.FindProperty("m_hasFontAssetChanged"); + + m_ColorModeProp = serializedObject.FindProperty("m_colorMode"); + + m_TextComponent = (TMP_Text)target; + m_RectTransform = m_TextComponent.rectTransform; + + // Create new Material Editor if one does not exists + m_TargetMaterial = m_TextComponent.fontSharedMaterial; + + // Set material inspector visibility + if (m_TargetMaterial != null) + UnityEditorInternal.InternalEditorUtility.SetIsInspectorExpanded(m_TargetMaterial, Foldout.materialInspector); + + // Find all Material Presets matching the current Font Asset Material + m_MaterialPresetNames = GetMaterialPresets(); + + // Initialize the Event Listener for Undo Events. + Undo.undoRedoPerformed += OnUndoRedo; + } + + protected virtual void OnDisable() + { + // Set material inspector visibility + if (m_TargetMaterial != null) + Foldout.materialInspector = UnityEditorInternal.InternalEditorUtility.GetIsInspectorExpanded(m_TargetMaterial); + + if (Undo.undoRedoPerformed != null) + Undo.undoRedoPerformed -= OnUndoRedo; + } + + public override void OnInspectorGUI() + { + // Make sure Multi selection only includes TMP Text objects. + if (IsMixSelectionTypes()) return; + + serializedObject.Update(); + + DrawTextInput(); + + DrawMainSettings(); + + DrawExtraSettings(); + + EditorGUILayout.Space(); + + if (m_HavePropertiesChanged) + { + m_HavePropertiesChanged = false; + m_TextComponent.havePropertiesChanged = true; + m_TextComponent.ComputeMarginSize(); + EditorUtility.SetDirty(target); + } + + serializedObject.ApplyModifiedProperties(); + } + + public void OnSceneGUI() + { + if (IsMixSelectionTypes()) return; + + // Margin Frame & Handles + m_RectTransform.GetWorldCorners(m_RectCorners); + Vector4 marginOffset = m_TextComponent.margin; + Vector3 lossyScale = m_RectTransform.lossyScale; + + m_HandlePoints[0] = m_RectCorners[0] + m_RectTransform.TransformDirection(new Vector3(marginOffset.x * lossyScale.x, marginOffset.w * lossyScale.y, 0)); + m_HandlePoints[1] = m_RectCorners[1] + m_RectTransform.TransformDirection(new Vector3(marginOffset.x * lossyScale.x, -marginOffset.y * lossyScale.y, 0)); + m_HandlePoints[2] = m_RectCorners[2] + m_RectTransform.TransformDirection(new Vector3(-marginOffset.z * lossyScale.x, -marginOffset.y * lossyScale.y, 0)); + m_HandlePoints[3] = m_RectCorners[3] + m_RectTransform.TransformDirection(new Vector3(-marginOffset.z * lossyScale.x, marginOffset.w * lossyScale.y, 0)); + + Handles.DrawSolidRectangleWithOutline(m_HandlePoints, new Color32(255, 255, 255, 0), new Color32(255, 255, 0, 255)); + + // Draw & process FreeMoveHandles + + // LEFT HANDLE + Vector3 oldLeft = (m_HandlePoints[0] + m_HandlePoints[1]) * 0.5f; + Vector3 newLeft = Handles.FreeMoveHandle(oldLeft, Quaternion.identity, HandleUtility.GetHandleSize(m_RectTransform.position) * 0.05f, Vector3.zero, Handles.DotHandleCap); + bool hasChanged = false; + if (oldLeft != newLeft) + { + float delta = oldLeft.x - newLeft.x; + marginOffset.x += -delta / lossyScale.x; + //Debug.Log("Left Margin H0:" + handlePoints[0] + " H1:" + handlePoints[1]); + hasChanged = true; + } + + // TOP HANDLE + Vector3 oldTop = (m_HandlePoints[1] + m_HandlePoints[2]) * 0.5f; + Vector3 newTop = Handles.FreeMoveHandle(oldTop, Quaternion.identity, HandleUtility.GetHandleSize(m_RectTransform.position) * 0.05f, Vector3.zero, Handles.DotHandleCap); + if (oldTop != newTop) + { + float delta = oldTop.y - newTop.y; + marginOffset.y += delta / lossyScale.y; + //Debug.Log("Top Margin H1:" + handlePoints[1] + " H2:" + handlePoints[2]); + hasChanged = true; + } + + // RIGHT HANDLE + Vector3 oldRight = (m_HandlePoints[2] + m_HandlePoints[3]) * 0.5f; + Vector3 newRight = Handles.FreeMoveHandle(oldRight, Quaternion.identity, HandleUtility.GetHandleSize(m_RectTransform.position) * 0.05f, Vector3.zero, Handles.DotHandleCap); + if (oldRight != newRight) + { + float delta = oldRight.x - newRight.x; + marginOffset.z += delta / lossyScale.x; + hasChanged = true; + //Debug.Log("Right Margin H2:" + handlePoints[2] + " H3:" + handlePoints[3]); + } + + // BOTTOM HANDLE + Vector3 oldBottom = (m_HandlePoints[3] + m_HandlePoints[0]) * 0.5f; + Vector3 newBottom = Handles.FreeMoveHandle(oldBottom, Quaternion.identity, HandleUtility.GetHandleSize(m_RectTransform.position) * 0.05f, Vector3.zero, Handles.DotHandleCap); + if (oldBottom != newBottom) + { + float delta = oldBottom.y - newBottom.y; + marginOffset.w += -delta / lossyScale.y; + hasChanged = true; + //Debug.Log("Bottom Margin H0:" + handlePoints[0] + " H3:" + handlePoints[3]); + } + + if (hasChanged) + { + Undo.RecordObjects(new Object[] {m_RectTransform, m_TextComponent }, "Margin Changes"); + m_TextComponent.margin = marginOffset; + EditorUtility.SetDirty(target); + } + } + + protected void DrawTextInput() + { + EditorGUILayout.Space(); + + // If the text component is linked, disable the text input box. + if (m_IsLinkedTextComponentProp.boolValue) + { + EditorGUILayout.HelpBox("The Text Input Box is disabled due to this text component being linked to another.", MessageType.Info); + } + else + { + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(m_TextProp); + + if (EditorGUI.EndChangeCheck() || (m_IsRightToLeftProp.boolValue && string.IsNullOrEmpty(m_RtlText))) + { + m_TextComponent.m_inputSource = TMP_Text.TextInputSources.Text; + m_TextComponent.m_isInputParsingRequired = true; + m_HavePropertiesChanged = true; + + // Handle Left to Right or Right to Left Editor + if (m_IsRightToLeftProp.boolValue) + { + m_RtlText = string.Empty; + string sourceText = m_TextProp.stringValue; + + // Reverse Text displayed in Text Input Box + for (int i = 0; i < sourceText.Length; i++) + { + m_RtlText += sourceText[sourceText.Length - i - 1]; + } + } + } + + // Toggle showing Rich Tags + m_IsRightToLeftProp.boolValue = EditorGUILayout.Toggle(k_RtlToggleLabel, m_IsRightToLeftProp.boolValue); + + if (m_IsRightToLeftProp.boolValue) + { + EditorGUI.BeginChangeCheck(); + m_RtlText = EditorGUILayout.TextArea(m_RtlText, TMP_UIStyleManager.wrappingTextArea, GUILayout.Height(EditorGUI.GetPropertyHeight(m_TextProp) - EditorGUIUtility.singleLineHeight), GUILayout.ExpandWidth(true)); + if (EditorGUI.EndChangeCheck()) + { + // Convert RTL input + string sourceText = string.Empty; + + // Reverse Text displayed in Text Input Box + for (int i = 0; i < m_RtlText.Length; i++) + { + sourceText += m_RtlText[m_RtlText.Length - i - 1]; + } + + m_TextProp.stringValue = sourceText; + } + } + } + } + + protected void DrawMainSettings() + { + // MAIN SETTINGS SECTION + GUILayout.Label(k_MainSettingsLabel, EditorStyles.boldLabel); + + EditorGUI.indentLevel += 1; + + DrawFont(); + + DrawColor(); + + DrawSpacing(); + + DrawAlignment(); + + DrawWrappingOverflow(); + + DrawTextureMapping(); + + EditorGUI.indentLevel -= 1; + } + + void DrawFont() + { + // Update list of material presets if needed. + if (m_IsPresetListDirty) + m_MaterialPresetNames = GetMaterialPresets(); + + // FONT ASSET + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(m_FontAssetProp, k_FontAssetLabel); + if (EditorGUI.EndChangeCheck()) + { + m_HavePropertiesChanged = true; + m_HasFontAssetChangedProp.boolValue = true; + + m_IsPresetListDirty = true; + m_MaterialPresetSelectionIndex = 0; + } + + Rect rect; + + // MATERIAL PRESET + if (m_MaterialPresetNames != null) + { + EditorGUI.BeginChangeCheck(); + rect = EditorGUILayout.GetControlRect(false, 17); + + float oldHeight = EditorStyles.popup.fixedHeight; + EditorStyles.popup.fixedHeight = rect.height; + + int oldSize = EditorStyles.popup.fontSize; + EditorStyles.popup.fontSize = 11; + + m_MaterialPresetSelectionIndex = EditorGUI.Popup(rect, k_MaterialPresetLabel, m_MaterialPresetSelectionIndex, m_MaterialPresetNames); + if (EditorGUI.EndChangeCheck()) + { + m_FontSharedMaterialProp.objectReferenceValue = m_MaterialPresets[m_MaterialPresetSelectionIndex]; + m_HavePropertiesChanged = true; + } + + //Make sure material preset selection index matches the selection + if (m_MaterialPresetSelectionIndex < m_MaterialPresetNames.Length && m_TargetMaterial != m_MaterialPresets[m_MaterialPresetSelectionIndex] && !m_HavePropertiesChanged) + m_IsPresetListDirty = true; + + EditorStyles.popup.fixedHeight = oldHeight; + EditorStyles.popup.fontSize = oldSize; + } + + // FONT STYLE + EditorGUI.BeginChangeCheck(); + + int v1, v2, v3, v4, v5, v6, v7; + + if (EditorGUIUtility.wideMode) + { + rect = EditorGUILayout.GetControlRect(true, EditorGUIUtility.singleLineHeight + 2f); + + EditorGUI.PrefixLabel(rect, k_FontStyleLabel); + + int styleValue = m_FontStyleProp.intValue; + + rect.x += EditorGUIUtility.labelWidth; + rect.width -= EditorGUIUtility.labelWidth; + + rect.width = Mathf.Max(25f, rect.width / 7f); + + v1 = TMP_EditorUtility.EditorToggle(rect, (styleValue & 1) == 1, k_BoldLabel, TMP_UIStyleManager.alignmentButtonLeft) ? 1 : 0; // Bold + rect.x += rect.width; + v2 = TMP_EditorUtility.EditorToggle(rect, (styleValue & 2) == 2, k_ItalicLabel, TMP_UIStyleManager.alignmentButtonMid) ? 2 : 0; // Italics + rect.x += rect.width; + v3 = TMP_EditorUtility.EditorToggle(rect, (styleValue & 4) == 4, k_UnderlineLabel, TMP_UIStyleManager.alignmentButtonMid) ? 4 : 0; // Underline + rect.x += rect.width; + v7 = TMP_EditorUtility.EditorToggle(rect, (styleValue & 64) == 64, k_StrikethroughLabel, TMP_UIStyleManager.alignmentButtonRight) ? 64 : 0; // Strikethrough + rect.x += rect.width; + + int selected = 0; + + EditorGUI.BeginChangeCheck(); + v4 = TMP_EditorUtility.EditorToggle(rect, (styleValue & 8) == 8, k_LowercaseLabel, TMP_UIStyleManager.alignmentButtonLeft) ? 8 : 0; // Lowercase + if (EditorGUI.EndChangeCheck() && v4 > 0) + { + selected = v4; + } + rect.x += rect.width; + EditorGUI.BeginChangeCheck(); + v5 = TMP_EditorUtility.EditorToggle(rect, (styleValue & 16) == 16, k_UppercaseLabel, TMP_UIStyleManager.alignmentButtonMid) ? 16 : 0; // Uppercase + if (EditorGUI.EndChangeCheck() && v5 > 0) + { + selected = v5; + } + rect.x += rect.width; + EditorGUI.BeginChangeCheck(); + v6 = TMP_EditorUtility.EditorToggle(rect, (styleValue & 32) == 32, k_SmallcapsLabel, TMP_UIStyleManager.alignmentButtonRight) ? 32 : 0; // Smallcaps + if (EditorGUI.EndChangeCheck() && v6 > 0) + { + selected = v6; + } + + if (selected > 0) + { + v4 = selected == 8 ? 8 : 0; + v5 = selected == 16 ? 16 : 0; + v6 = selected == 32 ? 32 : 0; + } + } + else + { + rect = EditorGUILayout.GetControlRect(true, EditorGUIUtility.singleLineHeight + 2f); + + EditorGUI.PrefixLabel(rect, k_FontStyleLabel); + + int styleValue = m_FontStyleProp.intValue; + + rect.x += EditorGUIUtility.labelWidth; + rect.width -= EditorGUIUtility.labelWidth; + rect.width = Mathf.Max(25f, rect.width / 4f); + + v1 = TMP_EditorUtility.EditorToggle(rect, (styleValue & 1) == 1, k_BoldLabel, TMP_UIStyleManager.alignmentButtonLeft) ? 1 : 0; // Bold + rect.x += rect.width; + v2 = TMP_EditorUtility.EditorToggle(rect, (styleValue & 2) == 2, k_ItalicLabel, TMP_UIStyleManager.alignmentButtonMid) ? 2 : 0; // Italics + rect.x += rect.width; + v3 = TMP_EditorUtility.EditorToggle(rect, (styleValue & 4) == 4, k_UnderlineLabel, TMP_UIStyleManager.alignmentButtonMid) ? 4 : 0; // Underline + rect.x += rect.width; + v7 = TMP_EditorUtility.EditorToggle(rect, (styleValue & 64) == 64, k_StrikethroughLabel, TMP_UIStyleManager.alignmentButtonRight) ? 64 : 0; // Strikethrough + + rect = EditorGUILayout.GetControlRect(true, EditorGUIUtility.singleLineHeight + 2f); + + rect.x += EditorGUIUtility.labelWidth; + rect.width -= EditorGUIUtility.labelWidth; + + rect.width = Mathf.Max(25f, rect.width / 4f); + + int selected = 0; + + EditorGUI.BeginChangeCheck(); + v4 = TMP_EditorUtility.EditorToggle(rect, (styleValue & 8) == 8, k_LowercaseLabel, TMP_UIStyleManager.alignmentButtonLeft) ? 8 : 0; // Lowercase + if (EditorGUI.EndChangeCheck() && v4 > 0) + { + selected = v4; + } + rect.x += rect.width; + EditorGUI.BeginChangeCheck(); + v5 = TMP_EditorUtility.EditorToggle(rect, (styleValue & 16) == 16, k_UppercaseLabel, TMP_UIStyleManager.alignmentButtonMid) ? 16 : 0; // Uppercase + if (EditorGUI.EndChangeCheck() && v5 > 0) + { + selected = v5; + } + rect.x += rect.width; + EditorGUI.BeginChangeCheck(); + v6 = TMP_EditorUtility.EditorToggle(rect, (styleValue & 32) == 32, k_SmallcapsLabel, TMP_UIStyleManager.alignmentButtonRight) ? 32 : 0; // Smallcaps + if (EditorGUI.EndChangeCheck() && v6 > 0) + { + selected = v6; + } + + if (selected > 0) + { + v4 = selected == 8 ? 8 : 0; + v5 = selected == 16 ? 16 : 0; + v6 = selected == 32 ? 32 : 0; + } + } + + if (EditorGUI.EndChangeCheck()) + { + m_FontStyleProp.intValue = v1 + v2 + v3 + v4 + v5 + v6 + v7; + m_HavePropertiesChanged = true; + } + + // FONT SIZE + EditorGUI.BeginChangeCheck(); + + EditorGUI.BeginDisabledGroup(m_AutoSizingProp.boolValue); + EditorGUILayout.PropertyField(m_FontSizeProp, k_FontSizeLabel, GUILayout.MaxWidth(EditorGUIUtility.labelWidth + 50f)); + EditorGUI.EndDisabledGroup(); + + if (EditorGUI.EndChangeCheck()) + { + m_FontSizeBaseProp.floatValue = m_FontSizeProp.floatValue; + m_HavePropertiesChanged = true; + } + + EditorGUI.indentLevel += 1; + + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(m_AutoSizingProp, k_AutoSizeLabel); + if (EditorGUI.EndChangeCheck()) + { + if (m_AutoSizingProp.boolValue == false) + m_FontSizeProp.floatValue = m_FontSizeBaseProp.floatValue; + + m_HavePropertiesChanged = true; + } + + // Show auto sizing options + if (m_AutoSizingProp.boolValue) + { + rect = EditorGUILayout.GetControlRect(true, EditorGUIUtility.singleLineHeight); + + EditorGUI.PrefixLabel(rect, k_AutoSizeOptionsLabel); + + int previousIndent = EditorGUI.indentLevel; + + EditorGUI.indentLevel = 0; + + rect.width = (rect.width - EditorGUIUtility.labelWidth) / 4f; + rect.x += EditorGUIUtility.labelWidth; + + EditorGUIUtility.labelWidth = 24; + EditorGUI.BeginChangeCheck(); + EditorGUI.PropertyField(rect, m_FontSizeMinProp, k_MinLabel); + if (EditorGUI.EndChangeCheck()) + { + m_FontSizeMinProp.floatValue = Mathf.Min(m_FontSizeMinProp.floatValue, m_FontSizeMaxProp.floatValue); + m_HavePropertiesChanged = true; + } + rect.x += rect.width; + + EditorGUIUtility.labelWidth = 27; + EditorGUI.BeginChangeCheck(); + EditorGUI.PropertyField(rect, m_FontSizeMaxProp, k_MaxLabel); + if (EditorGUI.EndChangeCheck()) + { + m_FontSizeMaxProp.floatValue = Mathf.Max(m_FontSizeMinProp.floatValue, m_FontSizeMaxProp.floatValue); + m_HavePropertiesChanged = true; + } + rect.x += rect.width; + + EditorGUI.BeginChangeCheck(); + EditorGUIUtility.labelWidth = 36; + EditorGUI.PropertyField(rect, m_CharWidthMaxAdjProp, k_WdLabel); + rect.x += rect.width; + EditorGUIUtility.labelWidth = 28; + EditorGUI.PropertyField(rect, m_LineSpacingMaxProp, k_LineLabel); + + EditorGUIUtility.labelWidth = 0; + + if (EditorGUI.EndChangeCheck()) + { + m_CharWidthMaxAdjProp.floatValue = Mathf.Clamp(m_CharWidthMaxAdjProp.floatValue, 0, 50); + m_LineSpacingMaxProp.floatValue = Mathf.Min(0, m_LineSpacingMaxProp.floatValue); + m_HavePropertiesChanged = true; + } + + EditorGUI.indentLevel = previousIndent; + } + + EditorGUI.indentLevel -= 1; + + + + EditorGUILayout.Space(); + } + + void DrawColor() + { + // FACE VERTEX COLOR + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(m_FontColorProp, k_BaseColorLabel); + + EditorGUILayout.PropertyField(m_EnableVertexGradientProp, k_ColorGradientLabel); + if (EditorGUI.EndChangeCheck()) + { + m_HavePropertiesChanged = true; + } + + EditorGUIUtility.fieldWidth = 0; + + if (m_EnableVertexGradientProp.boolValue) + { + EditorGUI.indentLevel += 1; + + EditorGUI.BeginChangeCheck(); + + EditorGUILayout.PropertyField(m_FontColorGradientPresetProp, k_ColorPresetLabel); + + SerializedObject obj = null; + + SerializedProperty colorMode; + + SerializedProperty topLeft; + SerializedProperty topRight; + SerializedProperty bottomLeft; + SerializedProperty bottomRight; + + if (m_FontColorGradientPresetProp.objectReferenceValue == null) + { + colorMode = m_ColorModeProp; + topLeft = m_FontColorGradientProp.FindPropertyRelative("topLeft"); + topRight = m_FontColorGradientProp.FindPropertyRelative("topRight"); + bottomLeft = m_FontColorGradientProp.FindPropertyRelative("bottomLeft"); + bottomRight = m_FontColorGradientProp.FindPropertyRelative("bottomRight"); + } + else + { + obj = new SerializedObject(m_FontColorGradientPresetProp.objectReferenceValue); + colorMode = obj.FindProperty("colorMode"); + topLeft = obj.FindProperty("topLeft"); + topRight = obj.FindProperty("topRight"); + bottomLeft = obj.FindProperty("bottomLeft"); + bottomRight = obj.FindProperty("bottomRight"); + } + + EditorGUILayout.PropertyField(colorMode, k_ColorModeLabel); + + var rect = EditorGUILayout.GetControlRect(true, EditorGUIUtility.singleLineHeight * (EditorGUIUtility.wideMode ? 1 : 2)); + + EditorGUI.PrefixLabel(rect, k_CorenerColorsLabel); + + rect.x += EditorGUIUtility.labelWidth; + rect.width = rect.width - EditorGUIUtility.labelWidth; + + switch ((ColorMode)colorMode.enumValueIndex) + { + case ColorMode.Single: + TMP_EditorUtility.DrawColorProperty(rect, topLeft); + + topRight.colorValue = topLeft.colorValue; + bottomLeft.colorValue = topLeft.colorValue; + bottomRight.colorValue = topLeft.colorValue; + break; + case ColorMode.HorizontalGradient: + rect.width /= 2f; + + TMP_EditorUtility.DrawColorProperty(rect, topLeft); + + rect.x += rect.width; + + TMP_EditorUtility.DrawColorProperty(rect, topRight); + + bottomLeft.colorValue = topLeft.colorValue; + bottomRight.colorValue = topRight.colorValue; + break; + case ColorMode.VerticalGradient: + TMP_EditorUtility.DrawColorProperty(rect, topLeft); + + rect = EditorGUILayout.GetControlRect(false, EditorGUIUtility.singleLineHeight * (EditorGUIUtility.wideMode ? 1 : 2)); + rect.x += EditorGUIUtility.labelWidth; + + TMP_EditorUtility.DrawColorProperty(rect, bottomLeft); + + topRight.colorValue = topLeft.colorValue; + bottomRight.colorValue = bottomLeft.colorValue; + break; + case ColorMode.FourCornersGradient: + rect.width /= 2f; + + TMP_EditorUtility.DrawColorProperty(rect, topLeft); + + rect.x += rect.width; + + TMP_EditorUtility.DrawColorProperty(rect, topRight); + + rect = EditorGUILayout.GetControlRect(false, EditorGUIUtility.singleLineHeight * (EditorGUIUtility.wideMode ? 1 : 2)); + rect.x += EditorGUIUtility.labelWidth; + rect.width = (rect.width - EditorGUIUtility.labelWidth) / 2f; + + TMP_EditorUtility.DrawColorProperty(rect, bottomLeft); + + rect.x += rect.width; + + TMP_EditorUtility.DrawColorProperty(rect, bottomRight); + break; + } + + if (EditorGUI.EndChangeCheck()) + { + m_HavePropertiesChanged = true; + if (obj != null) + { + obj.ApplyModifiedProperties(); + TMPro_EventManager.ON_COLOR_GRAIDENT_PROPERTY_CHANGED(m_FontColorGradientPresetProp.objectReferenceValue as TMP_ColorGradient); + } + } + + EditorGUI.indentLevel -= 1; + } + + EditorGUILayout.PropertyField(m_OverrideHtmlColorProp, k_OverrideTagsLabel); + + EditorGUILayout.Space(); + } + + void DrawSpacing() + { + // CHARACTER, LINE & PARAGRAPH SPACING + EditorGUI.BeginChangeCheck(); + + Rect rect = EditorGUILayout.GetControlRect(true, EditorGUIUtility.singleLineHeight); + + EditorGUI.PrefixLabel(rect, k_SpacingOptionsLabel); + + int oldIndent = EditorGUI.indentLevel; + EditorGUI.indentLevel = 0; + + rect.x += EditorGUIUtility.labelWidth; + rect.width = (rect.width - EditorGUIUtility.labelWidth - 3f) / 2f; + + EditorGUIUtility.labelWidth = Mathf.Min(rect.width * 0.55f, 80f); + + EditorGUI.PropertyField(rect, m_CharacterSpacingProp, k_CharacterSpacingLabel); + rect.x += rect.width + 3f; + EditorGUI.PropertyField(rect, m_WordSpacingProp, k_WordSpacingLabel); + + rect = EditorGUILayout.GetControlRect(false, EditorGUIUtility.singleLineHeight); + EditorGUIUtility.labelWidth = 0; + rect.x += EditorGUIUtility.labelWidth; + rect.width = (rect.width - EditorGUIUtility.labelWidth -3f) / 2f; + EditorGUIUtility.labelWidth = Mathf.Min(rect.width * 0.55f, 80f); + + EditorGUI.PropertyField(rect, m_LineSpacingProp, k_LineSpacingLabel); + rect.x += rect.width + 3f; + EditorGUI.PropertyField(rect, m_ParagraphSpacingProp, k_ParagraphSpacingLabel); + + EditorGUIUtility.labelWidth = 0; + EditorGUI.indentLevel = oldIndent; + + if (EditorGUI.EndChangeCheck()) + { + m_HavePropertiesChanged = true; + } + } + + void DrawAlignment() + { + // TEXT ALIGNMENT + EditorGUI.BeginChangeCheck(); + + EditorGUILayout.PropertyField(m_TextAlignmentProp, k_AlignmentLabel); + + // WRAPPING RATIOS shown if Justified mode is selected. + if (((_HorizontalAlignmentOptions)m_TextAlignmentProp.intValue & _HorizontalAlignmentOptions.Justified) == _HorizontalAlignmentOptions.Justified || ((_HorizontalAlignmentOptions)m_TextAlignmentProp.intValue & _HorizontalAlignmentOptions.Flush) == _HorizontalAlignmentOptions.Flush) + DrawPropertySlider(k_WrapMixLabel, m_WordWrappingRatiosProp); + + if (EditorGUI.EndChangeCheck()) + m_HavePropertiesChanged = true; + + EditorGUILayout.Space(); + } + + void DrawWrappingOverflow() + { + // TEXT WRAPPING + EditorGUI.BeginChangeCheck(); + int wrapSelection = EditorGUILayout.Popup(k_WrappingLabel, m_EnableWordWrappingProp.boolValue ? 1 : 0, k_WrappingOptions); + if (EditorGUI.EndChangeCheck()) + { + m_EnableWordWrappingProp.boolValue = wrapSelection == 1; + m_HavePropertiesChanged = true; + m_TextComponent.m_isInputParsingRequired = true; + } + + // TEXT OVERFLOW + EditorGUI.BeginChangeCheck(); + + // Cache Reference to Linked Text Component + TMP_Text oldLinkedComponent = m_LinkedTextComponentProp.objectReferenceValue as TMP_Text; + + if ((TextOverflowModes)m_TextOverflowModeProp.enumValueIndex == TextOverflowModes.Linked) + { + EditorGUILayout.BeginHorizontal(); + EditorGUILayout.PropertyField(m_TextOverflowModeProp, k_OverflowLabel); + + EditorGUILayout.PropertyField(m_LinkedTextComponentProp, GUIContent.none); + + EditorGUILayout.EndHorizontal(); + + if (GUI.changed) + { + TMP_Text linkedComponent = m_LinkedTextComponentProp.objectReferenceValue as TMP_Text; + + if (linkedComponent) + m_TextComponent.linkedTextComponent = linkedComponent; + + } + } + else if ((TextOverflowModes)m_TextOverflowModeProp.enumValueIndex == TextOverflowModes.Page) + { + EditorGUILayout.BeginHorizontal(); + EditorGUILayout.PropertyField(m_TextOverflowModeProp, k_OverflowLabel); + EditorGUILayout.PropertyField(m_PageToDisplayProp, GUIContent.none); + EditorGUILayout.EndHorizontal(); + + if (oldLinkedComponent) + m_TextComponent.linkedTextComponent = null; + } + else + { + EditorGUILayout.PropertyField(m_TextOverflowModeProp, k_OverflowLabel); + + if (oldLinkedComponent) + m_TextComponent.linkedTextComponent = null; + } + + if (EditorGUI.EndChangeCheck()) + { + m_HavePropertiesChanged = true; + m_TextComponent.m_isInputParsingRequired = true; + } + + EditorGUILayout.Space(); + } + + protected abstract void DrawExtraSettings(); + + protected void DrawMargins() + { + EditorGUI.BeginChangeCheck(); + DrawMarginProperty(m_MarginProp, k_MarginsLabel); + if (EditorGUI.EndChangeCheck()) + { + m_HavePropertiesChanged = true; + } + + EditorGUILayout.Space(); + } + + protected void DrawGeometrySorting() + { + EditorGUI.BeginChangeCheck(); + + EditorGUILayout.PropertyField(m_GeometrySortingOrderProp, k_GeometrySortingLabel); + + if (EditorGUI.EndChangeCheck()) + m_HavePropertiesChanged = true; + + EditorGUILayout.Space(); + } + + protected void DrawRichText() + { + EditorGUI.BeginChangeCheck(); + + EditorGUILayout.PropertyField(m_IsRichTextProp, k_RichTextLabel); + if (EditorGUI.EndChangeCheck()) + m_HavePropertiesChanged = true; + } + + protected void DrawParsing() + { + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(m_EnableEscapeCharacterParsingProp, k_EscapeCharactersLabel); + EditorGUILayout.PropertyField(m_UseMaxVisibleDescenderProp, k_VisibleDescenderLabel); + + EditorGUILayout.Space(); + + EditorGUILayout.PropertyField(m_SpriteAssetProp, k_SpriteAssetLabel, true); + + if (EditorGUI.EndChangeCheck()) + m_HavePropertiesChanged = true; + + EditorGUILayout.Space(); + } + + protected void DrawTextureMapping() + { + // TEXTURE MAPPING OPTIONS + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(m_HorizontalMappingProp, k_HorizontalMappingLabel); + EditorGUILayout.PropertyField(m_VerticalMappingProp, k_VerticalMappingLabel); + if (EditorGUI.EndChangeCheck()) + { + m_HavePropertiesChanged = true; + } + + // UV OPTIONS + if (m_HorizontalMappingProp.enumValueIndex > 0) + { + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(m_UvLineOffsetProp, k_LineOffsetLabel, GUILayout.MinWidth(70f)); + if (EditorGUI.EndChangeCheck()) + { + m_HavePropertiesChanged = true; + } + } + + EditorGUILayout.Space(); + } + + protected void DrawKerning() + { + // KERNING + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(m_EnableKerningProp, k_KerningLabel); + if (EditorGUI.EndChangeCheck()) + { + m_HavePropertiesChanged = true; + } + } + + protected void DrawPadding() + { + // EXTRA PADDING + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(m_EnableExtraPaddingProp, k_PaddingLabel); + if (EditorGUI.EndChangeCheck()) + { + m_HavePropertiesChanged = true; + m_CheckPaddingRequiredProp.boolValue = true; + } + } + + ///

    + /// Method to retrieve the material presets that match the currently selected font asset. + /// + protected GUIContent[] GetMaterialPresets() + { + TMP_FontAsset fontAsset = m_FontAssetProp.objectReferenceValue as TMP_FontAsset; + if (fontAsset == null) return null; + + m_MaterialPresets = TMP_EditorUtility.FindMaterialReferences(fontAsset); + m_MaterialPresetNames = new GUIContent[m_MaterialPresets.Length]; + + for (int i = 0; i < m_MaterialPresetNames.Length; i++) + { + m_MaterialPresetNames[i] = new GUIContent(m_MaterialPresets[i].name); + + if (m_TargetMaterial.GetInstanceID() == m_MaterialPresets[i].GetInstanceID()) + m_MaterialPresetSelectionIndex = i; + } + + m_IsPresetListDirty = false; + + return m_MaterialPresetNames; + } + + // DRAW MARGIN PROPERTY + protected void DrawMarginProperty(SerializedProperty property, GUIContent label) + { + Rect rect = EditorGUILayout.GetControlRect(false, 2 * 18); + + EditorGUI.BeginProperty(rect, label, property); + + Rect pos0 = new Rect(rect.x + 15, rect.y + 2, rect.width - 15, 18); + + float width = rect.width + 3; + pos0.width = EditorGUIUtility.labelWidth; + GUI.Label(pos0, label); + + var vec = property.vector4Value; + + float widthB = width - EditorGUIUtility.labelWidth; + float fieldWidth = widthB / 4; + pos0.width = Mathf.Max(fieldWidth - 5, 45f); + + // Labels + pos0.x = EditorGUIUtility.labelWidth + 15; + GUI.Label(pos0, k_LeftLabel); + + pos0.x += fieldWidth; + GUI.Label(pos0, k_TopLabel); + + pos0.x += fieldWidth; + GUI.Label(pos0, k_RightLabel); + + pos0.x += fieldWidth; + GUI.Label(pos0, k_BottomLabel); + + pos0.y += 18; + + pos0.x = EditorGUIUtility.labelWidth; + vec.x = EditorGUI.FloatField(pos0, GUIContent.none, vec.x); + + pos0.x += fieldWidth; + vec.y = EditorGUI.FloatField(pos0, GUIContent.none, vec.y); + + pos0.x += fieldWidth; + vec.z = EditorGUI.FloatField(pos0, GUIContent.none, vec.z); + + pos0.x += fieldWidth; + vec.w = EditorGUI.FloatField(pos0, GUIContent.none, vec.w); + + property.vector4Value = vec; + + EditorGUI.EndProperty(); + } + + protected void DrawPropertySlider(GUIContent label, SerializedProperty property) + { + Rect rect = EditorGUILayout.GetControlRect(false, 17); + + GUIContent content = label ?? GUIContent.none; + EditorGUI.Slider(new Rect(rect.x, rect.y, rect.width, rect.height), property, 0.0f, 1.0f, content); + } + + protected abstract bool IsMixSelectionTypes(); + + // Special Handling of Undo / Redo Events. + protected abstract void OnUndoRedo(); + + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BaseEditorPanel.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BaseEditorPanel.cs.meta new file mode 100644 index 0000000..d4a89aa --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BaseEditorPanel.cs.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 91950f78729ab144aa36e94690b28fad +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BaseShaderGUI.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BaseShaderGUI.cs new file mode 100644 index 0000000..c27e651 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BaseShaderGUI.cs @@ -0,0 +1,534 @@ +using UnityEngine; +using UnityEditor; + +namespace TMPro.EditorUtilities +{ + /// Base class for TextMesh Pro shader GUIs. + public abstract class TMP_BaseShaderGUI : ShaderGUI + { + /// Representation of a #pragma shader_feature. + /// It is assumed that the first feature option is for no keyword (underscores). + protected class ShaderFeature + { + public string undoLabel; + + public GUIContent label; + + /// The keyword labels, for display. Include the no-keyword as the first option. + public GUIContent[] keywordLabels; + + /// The shader keywords. Exclude the no-keyword option. + public string[] keywords; + + int m_State; + + public bool Active + { + get { return m_State >= 0; } + } + + public int State + { + get { return m_State; } + } + + public void ReadState(Material material) + { + for (int i = 0; i < keywords.Length; i++) + { + if (material.IsKeywordEnabled(keywords[i])) + { + m_State = i; + return; + } + } + + m_State = -1; + } + + public void SetActive(bool active, Material material) + { + m_State = active ? 0 : -1; + SetStateKeywords(material); + } + + public void DoPopup(MaterialEditor editor, Material material) + { + EditorGUI.BeginChangeCheck(); + int selection = EditorGUILayout.Popup(label, m_State + 1, keywordLabels); + if (EditorGUI.EndChangeCheck()) + { + m_State = selection - 1; + editor.RegisterPropertyChangeUndo(undoLabel); + SetStateKeywords(material); + } + } + + void SetStateKeywords(Material material) + { + for (int i = 0; i < keywords.Length; i++) + { + if (i == m_State) + { + material.EnableKeyword(keywords[i]); + } + else + { + material.DisableKeyword(keywords[i]); + } + } + } + } + + static GUIContent s_TempLabel = new GUIContent(); + + protected static bool s_DebugExtended; + + static int s_UndoRedoCount, s_LastSeenUndoRedoCount; + + static float[][] s_TempFloats = + { + null, new float[1], new float[2], new float[3], new float[4] + }; + + protected static GUIContent[] s_XywhVectorLabels = + { + new GUIContent("X"), + new GUIContent("Y"), + new GUIContent("W", "Width"), + new GUIContent("H", "Height") + }; + + protected static GUIContent[] s_LbrtVectorLabels = + { + new GUIContent("L", "Left"), + new GUIContent("B", "Bottom"), + new GUIContent("R", "Right"), + new GUIContent("T", "Top") + }; + + static TMP_BaseShaderGUI() + { + // Keep track of how many undo/redo events happened. + Undo.undoRedoPerformed += () => s_UndoRedoCount += 1; + } + + bool m_IsNewGUI = true; + + float m_DragAndDropMinY; + + protected MaterialEditor m_Editor; + + protected Material m_Material; + + protected MaterialProperty[] m_Properties; + + void PrepareGUI() + { + m_IsNewGUI = false; + ShaderUtilities.GetShaderPropertyIDs(); + + // New GUI just got constructed. This happens in response to a selection, + // but also after undo/redo events. + if (s_LastSeenUndoRedoCount != s_UndoRedoCount) + { + // There's been at least one undo/redo since the last time this GUI got constructed. + // Maybe the undo/redo was for this material? Assume that is was. + TMPro_EventManager.ON_MATERIAL_PROPERTY_CHANGED(true, m_Material as Material); + } + + s_LastSeenUndoRedoCount = s_UndoRedoCount; + } + + public override void OnGUI(MaterialEditor materialEditor, MaterialProperty[] properties) + { + m_Editor = materialEditor; + m_Material = materialEditor.target as Material; + this.m_Properties = properties; + + if (m_IsNewGUI) + { + PrepareGUI(); + } + + DoDragAndDropBegin(); + EditorGUI.BeginChangeCheck(); + DoGUI(); + if (EditorGUI.EndChangeCheck()) + { + TMPro_EventManager.ON_MATERIAL_PROPERTY_CHANGED(true, m_Material); + } + + DoDragAndDropEnd(); + } + + /// Override this method to create the specific shader GUI. + protected abstract void DoGUI(); + + static string[] s_PanelStateLabel = new string[] { "\t- Click to collapse -", "\t- Click to expand -" }; + + protected bool BeginPanel(string panel, bool expanded) + { + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + + Rect r = EditorGUI.IndentedRect(GUILayoutUtility.GetRect(20, 18)); + r.x += 20; + r.width += 6; + + bool enabled = GUI.enabled; + GUI.enabled = true; + expanded = TMP_EditorUtility.EditorToggle(r, expanded, new GUIContent(panel), TMP_UIStyleManager.panelTitle); + r.width -= 30; + EditorGUI.LabelField(r, new GUIContent(expanded ? s_PanelStateLabel[0] : s_PanelStateLabel[1]), TMP_UIStyleManager.rightLabel); + GUI.enabled = enabled; + + EditorGUI.indentLevel += 1; + EditorGUI.BeginDisabledGroup(false); + + return expanded; + } + + protected bool BeginPanel(string panel, ShaderFeature feature, bool expanded, bool readState = true) + { + if (readState) + { + feature.ReadState(m_Material); + } + + EditorGUI.BeginChangeCheck(); + + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + GUILayout.BeginHorizontal(); + + Rect r = EditorGUI.IndentedRect(GUILayoutUtility.GetRect(20, 20, GUILayout.Width(20f))); + bool active = EditorGUI.Toggle(r, feature.Active); + + if (EditorGUI.EndChangeCheck()) + { + m_Editor.RegisterPropertyChangeUndo(feature.undoLabel); + feature.SetActive(active, m_Material); + } + + r = EditorGUI.IndentedRect(GUILayoutUtility.GetRect(20, 18)); + r.width += 6; + + bool enabled = GUI.enabled; + GUI.enabled = true; + expanded = TMP_EditorUtility.EditorToggle(r, expanded, new GUIContent(panel), TMP_UIStyleManager.panelTitle); + r.width -= 10; + EditorGUI.LabelField(r, new GUIContent(expanded ? s_PanelStateLabel[0] : s_PanelStateLabel[1]), TMP_UIStyleManager.rightLabel); + GUI.enabled = enabled; + + GUILayout.EndHorizontal(); + + EditorGUI.indentLevel += 1; + EditorGUI.BeginDisabledGroup(!active); + + return expanded; + } + + public void EndPanel() + { + EditorGUI.EndDisabledGroup(); + EditorGUI.indentLevel -= 1; + EditorGUILayout.EndVertical(); + } + + MaterialProperty BeginProperty(string name) + { + MaterialProperty property = FindProperty(name, m_Properties); + EditorGUI.BeginChangeCheck(); + EditorGUI.showMixedValue = property.hasMixedValue; + m_Editor.BeginAnimatedCheck(Rect.zero, property); + + return property; + } + + bool EndProperty() + { + m_Editor.EndAnimatedCheck(); + EditorGUI.showMixedValue = false; + return EditorGUI.EndChangeCheck(); + } + + protected void DoPopup(string name, string label, GUIContent[] options) + { + MaterialProperty property = BeginProperty(name); + s_TempLabel.text = label; + int index = EditorGUILayout.Popup(s_TempLabel, (int)property.floatValue, options); + if (EndProperty()) + { + property.floatValue = index; + } + } + + protected void DoCubeMap(string name, string label) + { + DoTexture(name, label, typeof(Cubemap)); + } + + protected void DoTexture2D(string name, string label, bool withTilingOffset = false, string[] speedNames = null) + { + DoTexture(name, label, typeof(Texture2D), withTilingOffset, speedNames); + } + + void DoTexture(string name, string label, System.Type type, bool withTilingOffset = false, string[] speedNames = null) + { + MaterialProperty property = BeginProperty(name); + Rect rect = EditorGUILayout.GetControlRect(true, 60f); + float totalWidth = rect.width; + rect.width = EditorGUIUtility.labelWidth + 60f; + s_TempLabel.text = label; + Object tex = EditorGUI.ObjectField(rect, s_TempLabel, property.textureValue, type, false); + + if (EndProperty()) + { + property.textureValue = tex as Texture; + } + + rect.x += rect.width + 4f; + rect.width = totalWidth - rect.width - 4f; + rect.height = EditorGUIUtility.singleLineHeight; + + if (withTilingOffset) + { + DoTilingOffset(rect, property); + rect.y += (rect.height + 2f) * 2f; + } + + if (speedNames != null) + { + DoUVSpeed(rect, speedNames); + } + } + + void DoTilingOffset(Rect rect, MaterialProperty property) + { + float labelWidth = EditorGUIUtility.labelWidth; + int indentLevel = EditorGUI.indentLevel; + EditorGUI.indentLevel = 0; + EditorGUIUtility.labelWidth = Mathf.Min(40f, rect.width * 0.20f); + + Vector4 vector = property.textureScaleAndOffset; + + bool changed = false; + float[] values = s_TempFloats[2]; + + s_TempLabel.text = "Tiling"; + Rect vectorRect = EditorGUI.PrefixLabel(rect, s_TempLabel); + values[0] = vector.x; + values[1] = vector.y; + EditorGUI.BeginChangeCheck(); + EditorGUI.MultiFloatField(vectorRect, s_XywhVectorLabels, values); + if (EndProperty()) + { + vector.x = values[0]; + vector.y = values[1]; + changed = true; + } + + rect.y += rect.height + 2f; + s_TempLabel.text = "Offset"; + vectorRect = EditorGUI.PrefixLabel(rect, s_TempLabel); + values[0] = vector.z; + values[1] = vector.w; + EditorGUI.BeginChangeCheck(); + EditorGUI.MultiFloatField(vectorRect, s_XywhVectorLabels, values); + if (EndProperty()) + { + vector.z = values[0]; + vector.w = values[1]; + changed = true; + } + + if (changed) + { + property.textureScaleAndOffset = vector; + } + + EditorGUIUtility.labelWidth = labelWidth; + EditorGUI.indentLevel = indentLevel; + } + + protected void DoUVSpeed(Rect rect, string[] names) + { + float labelWidth = EditorGUIUtility.labelWidth; + int indentLevel = EditorGUI.indentLevel; + EditorGUI.indentLevel = 0; + EditorGUIUtility.labelWidth = Mathf.Min(40f, rect.width * 0.20f); + + s_TempLabel.text = "Speed"; + rect = EditorGUI.PrefixLabel(rect, s_TempLabel); + + EditorGUIUtility.labelWidth = 13f; + rect.width = rect.width * 0.5f - 1f; + DoFloat(rect, names[0], "X"); + rect.x += rect.width + 2f; + DoFloat(rect, names[1], "Y"); + EditorGUIUtility.labelWidth = labelWidth; + EditorGUI.indentLevel = indentLevel; + } + + protected void DoToggle(string name, string label) + { + MaterialProperty property = BeginProperty(name); + s_TempLabel.text = label; + bool value = EditorGUILayout.Toggle(s_TempLabel, property.floatValue == 1f); + if (EndProperty()) + { + property.floatValue = value ? 1f : 0f; + } + } + + protected void DoFloat(string name, string label) + { + MaterialProperty property = BeginProperty(name); + Rect rect = EditorGUILayout.GetControlRect(); + rect.width = EditorGUIUtility.labelWidth + 55f; + s_TempLabel.text = label; + float value = EditorGUI.FloatField(rect, s_TempLabel, property.floatValue); + if (EndProperty()) + { + property.floatValue = value; + } + } + + protected void DoColor(string name, string label) + { + MaterialProperty property = BeginProperty(name); + s_TempLabel.text = label; + Color value = EditorGUI.ColorField(EditorGUILayout.GetControlRect(), s_TempLabel, property.colorValue); + if (EndProperty()) + { + property.colorValue = value; + } + } + + void DoFloat(Rect rect, string name, string label) + { + MaterialProperty property = BeginProperty(name); + s_TempLabel.text = label; + float value = EditorGUI.FloatField(rect, s_TempLabel, property.floatValue); + if (EndProperty()) + { + property.floatValue = value; + } + } + + protected void DoSlider(string name, string label) + { + MaterialProperty property = BeginProperty(name); + Vector2 range = property.rangeLimits; + s_TempLabel.text = label; + float value = EditorGUI.Slider( + EditorGUILayout.GetControlRect(), s_TempLabel, property.floatValue, range.x, range.y + ); + if (EndProperty()) + { + property.floatValue = value; + } + } + + protected void DoVector3(string name, string label) + { + MaterialProperty property = BeginProperty(name); + s_TempLabel.text = label; + Vector4 value = EditorGUILayout.Vector3Field(s_TempLabel, property.vectorValue); + if (EndProperty()) + { + property.vectorValue = value; + } + } + + protected void DoVector(string name, string label, GUIContent[] subLabels) + { + MaterialProperty property = BeginProperty(name); + Rect rect = EditorGUILayout.GetControlRect(); + s_TempLabel.text = label; + rect = EditorGUI.PrefixLabel(rect, s_TempLabel); + Vector4 vector = property.vectorValue; + + float[] values = s_TempFloats[subLabels.Length]; + for (int i = 0; i < subLabels.Length; i++) + { + values[i] = vector[i]; + } + + EditorGUI.MultiFloatField(rect, subLabels, values); + if (EndProperty()) + { + for (int i = 0; i < subLabels.Length; i++) + { + vector[i] = values[i]; + } + + property.vectorValue = vector; + } + } + + void DoDragAndDropBegin() + { + m_DragAndDropMinY = GUILayoutUtility.GetRect(0f, 0f, GUILayout.ExpandWidth(true)).y; + } + + void DoDragAndDropEnd() + { + Rect rect = GUILayoutUtility.GetRect(0f, 0f, GUILayout.ExpandWidth(true)); + Event evt = Event.current; + if (evt.type == EventType.DragUpdated) + { + DragAndDrop.visualMode = DragAndDropVisualMode.Generic; + evt.Use(); + } + else if ( + evt.type == EventType.DragPerform && + Rect.MinMaxRect(rect.xMin, m_DragAndDropMinY, rect.xMax, rect.yMax).Contains(evt.mousePosition) + ) + { + DragAndDrop.AcceptDrag(); + evt.Use(); + Material droppedMaterial = DragAndDrop.objectReferences[0] as Material; + if (droppedMaterial && droppedMaterial != m_Material) + { + PerformDrop(droppedMaterial); + } + } + } + + void PerformDrop(Material droppedMaterial) + { + Texture droppedTex = droppedMaterial.GetTexture(ShaderUtilities.ID_MainTex); + if (!droppedTex) + { + return; + } + + Texture currentTex = m_Material.GetTexture(ShaderUtilities.ID_MainTex); + TMP_FontAsset requiredFontAsset = null; + if (droppedTex != currentTex) + { + requiredFontAsset = TMP_EditorUtility.FindMatchingFontAsset(droppedMaterial); + if (!requiredFontAsset) + { + return; + } + } + + foreach (GameObject o in Selection.gameObjects) + { + if (requiredFontAsset) + { + TMP_Text textComponent = o.GetComponent(); + if (textComponent) + { + Undo.RecordObject(textComponent, "Font Asset Change"); + textComponent.font = requiredFontAsset; + } + } + + TMPro_EventManager.ON_DRAG_AND_DROP_MATERIAL_CHANGED(o, m_Material, droppedMaterial); + EditorUtility.SetDirty(o); + } + } + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BaseShaderGUI.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BaseShaderGUI.cs.meta new file mode 100644 index 0000000..0f0cae4 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BaseShaderGUI.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 438efd46088d408d8a53f707fa68d976 +timeCreated: 1469844810 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BitmapShaderGUI.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BitmapShaderGUI.cs new file mode 100644 index 0000000..2380704 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BitmapShaderGUI.cs @@ -0,0 +1,85 @@ +using UnityEngine; +using UnityEditor; + +namespace TMPro.EditorUtilities +{ + public class TMP_BitmapShaderGUI : TMP_BaseShaderGUI + { + static bool s_Face = true; + + protected override void DoGUI() + { + s_Face = BeginPanel("Face", s_Face); + if (s_Face) + { + DoFacePanel(); + } + + EndPanel(); + + s_DebugExtended = BeginPanel("Debug Settings", s_DebugExtended); + if (s_DebugExtended) + { + DoDebugPanel(); + } + + EndPanel(); + } + + void DoFacePanel() + { + EditorGUI.indentLevel += 1; + if (m_Material.HasProperty(ShaderUtilities.ID_FaceTex)) + { + DoColor("_FaceColor", "Color"); + DoTexture2D("_FaceTex", "Texture", true); + } + else + { + DoColor("_Color", "Color"); + DoSlider("_DiffusePower", "Diffuse Power"); + } + + EditorGUI.indentLevel -= 1; + + EditorGUILayout.Space(); + } + + void DoDebugPanel() + { + EditorGUI.indentLevel += 1; + DoTexture2D("_MainTex", "Font Atlas"); + if (m_Material.HasProperty(ShaderUtilities.ID_VertexOffsetX)) + { + if (m_Material.HasProperty(ShaderUtilities.ID_Padding)) + { + EditorGUILayout.Space(); + DoFloat("_Padding", "Padding"); + } + + EditorGUILayout.Space(); + DoFloat("_VertexOffsetX", "Offset X"); + DoFloat("_VertexOffsetY", "Offset Y"); + } + + if (m_Material.HasProperty(ShaderUtilities.ID_MaskSoftnessX)) + { + EditorGUILayout.Space(); + DoFloat("_MaskSoftnessX", "Softness X"); + DoFloat("_MaskSoftnessY", "Softness Y"); + DoVector("_ClipRect", "Clip Rect", s_LbrtVectorLabels); + } + + if (m_Material.HasProperty(ShaderUtilities.ID_StencilID)) + { + EditorGUILayout.Space(); + DoFloat("_Stencil", "Stencil ID"); + DoFloat("_StencilComp", "Stencil Comp"); + } + + EditorGUI.indentLevel -= 1; + + EditorGUILayout.Space(); + } + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BitmapShaderGUI.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BitmapShaderGUI.cs.meta new file mode 100644 index 0000000..1af014d --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_BitmapShaderGUI.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 806de5a9211448c8b65c8435ebb48dd4 +timeCreated: 1469998850 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_CharacterPropertyDrawer.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_CharacterPropertyDrawer.cs new file mode 100644 index 0000000..8abf4a5 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_CharacterPropertyDrawer.cs @@ -0,0 +1,237 @@ +using UnityEngine; +using UnityEngine.TextCore; +using UnityEngine.TextCore.LowLevel; +using UnityEditor; +using System.Collections; + + +namespace TMPro.EditorUtilities +{ + [CustomPropertyDrawer(typeof(TMP_Character))] + public class TMP_CharacterPropertyDrawer : PropertyDrawer + { + //[SerializeField] + //static Material s_InternalSDFMaterial; + + //[SerializeField] + //static Material s_InternalBitmapMaterial; + + int m_GlyphSelectedForEditing = -1; + + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + SerializedProperty prop_Unicode = property.FindPropertyRelative("m_Unicode"); + SerializedProperty prop_GlyphIndex = property.FindPropertyRelative("m_GlyphIndex"); + SerializedProperty prop_Scale = property.FindPropertyRelative("m_Scale"); + + + GUIStyle style = new GUIStyle(EditorStyles.label); + style.richText = true; + + EditorGUIUtility.labelWidth = 40f; + EditorGUIUtility.fieldWidth = 50; + + Rect rect = new Rect(position.x + 50, position.y, position.width, 49); + + // Display non-editable fields + if (GUI.enabled == false) + { + int unicode = prop_Unicode.intValue; + EditorGUI.LabelField(new Rect(rect.x, rect.y, 120f, 18), new GUIContent("Unicode: 0x" + unicode.ToString("X") + ""), style); + EditorGUI.LabelField(new Rect(rect.x + 115, rect.y, 120f, 18), unicode <= 0xFFFF ? new GUIContent("UTF16: \\u" + unicode.ToString("X4") + "") : new GUIContent("UTF32: \\U" + unicode.ToString("X8") + ""), style); + EditorGUI.LabelField(new Rect(rect.x, rect.y + 18, 120, 18), new GUIContent("Glyph ID: " + prop_GlyphIndex.intValue + ""), style); + EditorGUI.LabelField(new Rect(rect.x, rect.y + 36, 80, 18), new GUIContent("Scale: " + prop_Scale.floatValue + ""), style); + + // Draw Glyph (if exists) + DrawGlyph(position, property); + } + else // Display editable fields + { + EditorGUIUtility.labelWidth = 55f; + GUI.SetNextControlName("Unicode Input"); + EditorGUI.BeginChangeCheck(); + string unicode = EditorGUI.TextField(new Rect(rect.x, rect.y, 120, 18), "Unicode:", prop_Unicode.intValue.ToString("X")); + + if (GUI.GetNameOfFocusedControl() == "Unicode Input") + { + //Filter out unwanted characters. + char chr = Event.current.character; + if ((chr < '0' || chr > '9') && (chr < 'a' || chr > 'f') && (chr < 'A' || chr > 'F')) + { + Event.current.character = '\0'; + } + } + + if (EditorGUI.EndChangeCheck()) + { + // Update Unicode value + prop_Unicode.intValue = TMP_TextUtilities.StringHexToInt(unicode); + } + + // Cache current glyph index in case it needs to be restored if the new glyph index is invalid. + int currentGlyphIndex = prop_GlyphIndex.intValue; + + EditorGUIUtility.labelWidth = 59f; + EditorGUI.BeginChangeCheck(); + EditorGUI.DelayedIntField(new Rect(rect.x, rect.y + 18, 100, 18), prop_GlyphIndex, new GUIContent("Glyph ID:")); + if (EditorGUI.EndChangeCheck()) + { + // Get a reference to the font asset + TMP_FontAsset fontAsset = property.serializedObject.targetObject as TMP_FontAsset; + + // Make sure new glyph index is valid. + int elementIndex = fontAsset.glyphTable.FindIndex(item => item.index == prop_GlyphIndex.intValue); + + if (elementIndex == -1) + prop_GlyphIndex.intValue = currentGlyphIndex; + else + fontAsset.m_IsFontAssetLookupTablesDirty = true; + } + + int glyphIndex = prop_GlyphIndex.intValue; + + // Reset glyph selection if new character has been selected. + if (GUI.enabled && m_GlyphSelectedForEditing != glyphIndex) + m_GlyphSelectedForEditing = -1; + + // Display button to edit the glyph data. + if (GUI.Button(new Rect(rect.x + 120, rect.y + 18, 75, 18), new GUIContent("Edit Glyph"))) + { + if (m_GlyphSelectedForEditing == -1) + m_GlyphSelectedForEditing = glyphIndex; + else + m_GlyphSelectedForEditing = -1; + + // Button clicks should not result in potential change. + GUI.changed = false; + } + + // Show the glyph property drawer if selected + if (glyphIndex == m_GlyphSelectedForEditing && GUI.enabled) + { + // Get a reference to the font asset + TMP_FontAsset fontAsset = property.serializedObject.targetObject as TMP_FontAsset; + + if (fontAsset != null) + { + // Get the index of the glyph in the font asset glyph table. + int elementIndex = fontAsset.glyphTable.FindIndex(item => item.index == glyphIndex); + + if (elementIndex != -1) + { + SerializedProperty prop_GlyphTable = property.serializedObject.FindProperty("m_GlyphTable"); + SerializedProperty prop_Glyph = prop_GlyphTable.GetArrayElementAtIndex(elementIndex); + + SerializedProperty prop_GlyphMetrics = prop_Glyph.FindPropertyRelative("m_Metrics"); + SerializedProperty prop_GlyphRect = prop_Glyph.FindPropertyRelative("m_GlyphRect"); + + Rect newRect = EditorGUILayout.GetControlRect(false, 115); + EditorGUI.DrawRect(new Rect(newRect.x + 52, newRect.y - 20, newRect.width - 52, newRect.height - 5), new Color(0.1f, 0.1f, 0.1f, 0.45f)); + EditorGUI.DrawRect(new Rect(newRect.x + 53, newRect.y - 19, newRect.width - 54, newRect.height - 7), new Color(0.3f, 0.3f, 0.3f, 0.8f)); + + // Display GlyphRect + newRect.x += 55; + newRect.y -= 18; + newRect.width += 5; + EditorGUI.PropertyField(newRect, prop_GlyphRect); + + // Display GlyphMetrics + newRect.y += 45; + EditorGUI.PropertyField(newRect, prop_GlyphMetrics); + + rect.y += 120; + } + } + } + + EditorGUIUtility.labelWidth = 39f; + EditorGUI.PropertyField(new Rect(rect.x, rect.y + 36, 80, 18), prop_Scale, new GUIContent("Scale:")); + + // Draw Glyph (if exists) + DrawGlyph(position, property); + } + } + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + return 58; + } + + void DrawGlyph(Rect position, SerializedProperty property) + { + // Get a reference to the atlas texture + TMP_FontAsset fontAsset = property.serializedObject.targetObject as TMP_FontAsset; + + if (fontAsset == null) + return; + + // Get a reference to the Glyph Table + SerializedProperty prop_GlyphTable = property.serializedObject.FindProperty("m_GlyphTable"); + int glyphIndex = property.FindPropertyRelative("m_GlyphIndex").intValue; + int elementIndex = fontAsset.glyphTable.FindIndex(item => item.index == glyphIndex); + + // Return if we can't find the glyph + if (elementIndex == -1) + return; + + SerializedProperty prop_Glyph = prop_GlyphTable.GetArrayElementAtIndex(elementIndex); + + // Get reference to atlas texture. + int atlasIndex = prop_Glyph.FindPropertyRelative("m_AtlasIndex").intValue; + Texture2D atlasTexture = fontAsset.atlasTextures.Length > atlasIndex ? fontAsset.atlasTextures[atlasIndex] : null; + + if (atlasTexture == null) + return; + + Material mat; + if (((GlyphRasterModes)fontAsset.atlasRenderMode & GlyphRasterModes.RASTER_MODE_BITMAP) == GlyphRasterModes.RASTER_MODE_BITMAP) + { + mat = TMP_FontAssetEditor.internalBitmapMaterial; + + if (mat == null) + return; + + mat.mainTexture = atlasTexture; + mat.SetColor("_Color", Color.white); + } + else + { + mat = TMP_FontAssetEditor.internalSDFMaterial; + + if (mat == null) + return; + + mat.mainTexture = atlasTexture; + mat.SetFloat(ShaderUtilities.ID_GradientScale, fontAsset.atlasPadding + 1); + } + + // Draw glyph + Rect glyphDrawPosition = new Rect(position.x, position.y, 48, 58); + + SerializedProperty prop_GlyphRect = prop_Glyph.FindPropertyRelative("m_GlyphRect"); + + int glyphOriginX = prop_GlyphRect.FindPropertyRelative("m_X").intValue; + int glyphOriginY = prop_GlyphRect.FindPropertyRelative("m_Y").intValue; + int glyphWidth = prop_GlyphRect.FindPropertyRelative("m_Width").intValue; + int glyphHeight = prop_GlyphRect.FindPropertyRelative("m_Height").intValue; + + float normalizedHeight = fontAsset.faceInfo.ascentLine - fontAsset.faceInfo.descentLine; + float scale = glyphDrawPosition.width / normalizedHeight; + + // Compute the normalized texture coordinates + Rect texCoords = new Rect((float)glyphOriginX / atlasTexture.width, (float)glyphOriginY / atlasTexture.height, (float)glyphWidth / atlasTexture.width, (float)glyphHeight / atlasTexture.height); + + if (Event.current.type == EventType.Repaint) + { + glyphDrawPosition.x += (glyphDrawPosition.width - glyphWidth * scale) / 2; + glyphDrawPosition.y += (glyphDrawPosition.height - glyphHeight * scale) / 2; + glyphDrawPosition.width = glyphWidth * scale; + glyphDrawPosition.height = glyphHeight * scale; + + // Could switch to using the default material of the font asset which would require passing scale to the shader. + Graphics.DrawTexture(glyphDrawPosition, atlasTexture, texCoords, 0, 0, 0, 0, new Color(1f, 1f, 1f), mat); + } + } + + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_CharacterPropertyDrawer.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_CharacterPropertyDrawer.cs.meta new file mode 100644 index 0000000..24f23b9 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_CharacterPropertyDrawer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 01ada73c4792aba4c937ff5d92cce866 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ColorGradientAssetMenu.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ColorGradientAssetMenu.cs new file mode 100644 index 0000000..80272ac --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ColorGradientAssetMenu.cs @@ -0,0 +1,51 @@ +using UnityEditor; +using UnityEngine; +using System.IO; +using System.Collections; + + + +namespace TMPro.EditorUtilities +{ + + public static class TMP_ColorGradientAssetMenu + { + [MenuItem("Assets/Create/TextMeshPro/Color Gradient", false, 115)] + public static void CreateColorGradient(MenuCommand context) + { + string filePath; + + if (Selection.assetGUIDs.Length == 0) + filePath = "Assets/New TMP Color Gradient.asset"; + else + filePath = AssetDatabase.GUIDToAssetPath(Selection.assetGUIDs[0]); + + if (Directory.Exists(filePath)) + { + filePath += "/New TMP Color Gradient.asset"; + } + else + { + filePath = Path.GetDirectoryName(filePath) + "/New TMP Color Gradient.asset"; + } + + filePath = AssetDatabase.GenerateUniqueAssetPath(filePath); + + // Create new Color Gradient Asset. + TMP_ColorGradient colorGradient = ScriptableObject.CreateInstance(); + + // Create Asset + AssetDatabase.CreateAsset(colorGradient, filePath); + + //EditorUtility.SetDirty(colorGradient); + + AssetDatabase.SaveAssets(); + + AssetDatabase.ImportAsset(AssetDatabase.GetAssetPath(colorGradient)); + + EditorUtility.FocusProjectWindow(); + Selection.activeObject = colorGradient; + + } + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ColorGradientAssetMenu.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ColorGradientAssetMenu.cs.meta new file mode 100644 index 0000000..35535ba --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ColorGradientAssetMenu.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: d9647b571c5e44729b71d756b3d55317 +timeCreated: 1468187791 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ColorGradientEditor.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ColorGradientEditor.cs new file mode 100644 index 0000000..a262d51 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ColorGradientEditor.cs @@ -0,0 +1,146 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + + +namespace TMPro.EditorUtilities +{ + [CustomEditor(typeof(TMP_ColorGradient))] + public class TMP_ColorGradientEditor : Editor + { + SerializedProperty m_ColorMode; + SerializedProperty m_TopLeftColor; + SerializedProperty m_TopRightColor; + SerializedProperty m_BottomLeftColor; + SerializedProperty m_BottomRightColor; + + void OnEnable() + { + m_ColorMode = serializedObject.FindProperty("colorMode"); + m_TopLeftColor = serializedObject.FindProperty("topLeft"); + m_TopRightColor = serializedObject.FindProperty("topRight"); + m_BottomLeftColor = serializedObject.FindProperty("bottomLeft"); + m_BottomRightColor = serializedObject.FindProperty("bottomRight"); + } + + public override void OnInspectorGUI() + { + serializedObject.Update(); + + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(m_ColorMode, new GUIContent("Color Mode")); + if (EditorGUI.EndChangeCheck()) + { + switch ((ColorMode)m_ColorMode.enumValueIndex) + { + case ColorMode.Single: + m_TopRightColor.colorValue = m_TopLeftColor.colorValue; + m_BottomLeftColor.colorValue = m_TopLeftColor.colorValue; + m_BottomRightColor.colorValue = m_TopLeftColor.colorValue; + break; + case ColorMode.HorizontalGradient: + m_BottomLeftColor.colorValue = m_TopLeftColor.colorValue; + m_BottomRightColor.colorValue = m_TopRightColor.colorValue; + break; + case ColorMode.VerticalGradient: + m_TopRightColor.colorValue = m_TopLeftColor.colorValue; + m_BottomRightColor.colorValue = m_BottomLeftColor.colorValue; + break; + } + } + Rect rect; + switch ((ColorMode)m_ColorMode.enumValueIndex) + { + case ColorMode.Single: + EditorGUI.BeginChangeCheck(); + rect = EditorGUILayout.GetControlRect(true, EditorGUIUtility.singleLineHeight * (EditorGUIUtility.wideMode ? 1 : 2)); + EditorGUI.PrefixLabel(rect, new GUIContent("Colors")); + rect.x += EditorGUIUtility.labelWidth; + rect.width = (rect.width - EditorGUIUtility.labelWidth) / (EditorGUIUtility.wideMode ? 1f : 2f); + TMP_EditorUtility.DrawColorProperty(rect, m_TopLeftColor); + if (EditorGUI.EndChangeCheck()) + { + m_TopRightColor.colorValue = m_TopLeftColor.colorValue; + m_BottomLeftColor.colorValue = m_TopLeftColor.colorValue; + m_BottomRightColor.colorValue = m_TopLeftColor.colorValue; + } + break; + + case ColorMode.HorizontalGradient: + rect = EditorGUILayout.GetControlRect(true, EditorGUIUtility.singleLineHeight * (EditorGUIUtility.wideMode ? 1 : 2)); + EditorGUI.PrefixLabel(rect, new GUIContent("Colors")); + rect.x += EditorGUIUtility.labelWidth; + rect.width = (rect.width - EditorGUIUtility.labelWidth) / 2f; + + EditorGUI.BeginChangeCheck(); + TMP_EditorUtility.DrawColorProperty(rect, m_TopLeftColor); + if (EditorGUI.EndChangeCheck()) + { + m_BottomLeftColor.colorValue = m_TopLeftColor.colorValue; + } + + rect.x += rect.width; + + EditorGUI.BeginChangeCheck(); + TMP_EditorUtility.DrawColorProperty(rect, m_TopRightColor); + if (EditorGUI.EndChangeCheck()) + { + m_BottomRightColor.colorValue = m_TopRightColor.colorValue; + } + break; + + case ColorMode.VerticalGradient: + rect = EditorGUILayout.GetControlRect(false, EditorGUIUtility.singleLineHeight * (EditorGUIUtility.wideMode ? 1 : 2)); + EditorGUI.PrefixLabel(rect, new GUIContent("Colors")); + rect.x += EditorGUIUtility.labelWidth; + rect.width = (rect.width - EditorGUIUtility.labelWidth) / (EditorGUIUtility.wideMode ? 1f : 2f); + rect.height = EditorGUIUtility.singleLineHeight * (EditorGUIUtility.wideMode ? 1 : 2); + + EditorGUI.BeginChangeCheck(); + TMP_EditorUtility.DrawColorProperty(rect, m_TopLeftColor); + if (EditorGUI.EndChangeCheck()) + { + m_TopRightColor.colorValue = m_TopLeftColor.colorValue; + } + + rect = EditorGUILayout.GetControlRect(false, EditorGUIUtility.singleLineHeight * (EditorGUIUtility.wideMode ? 1 : 2)); + rect.x += EditorGUIUtility.labelWidth; + rect.width = (rect.width - EditorGUIUtility.labelWidth) / (EditorGUIUtility.wideMode ? 1f : 2f); + rect.height = EditorGUIUtility.singleLineHeight * (EditorGUIUtility.wideMode ? 1 : 2); + + EditorGUI.BeginChangeCheck(); + TMP_EditorUtility.DrawColorProperty(rect, m_BottomLeftColor); + if (EditorGUI.EndChangeCheck()) + { + m_BottomRightColor.colorValue = m_BottomLeftColor.colorValue; + } + break; + + case ColorMode.FourCornersGradient: + rect = EditorGUILayout.GetControlRect(true, EditorGUIUtility.singleLineHeight * (EditorGUIUtility.wideMode ? 1 : 2)); + EditorGUI.PrefixLabel(rect, new GUIContent("Colors")); + rect.x += EditorGUIUtility.labelWidth; + rect.width = (rect.width - EditorGUIUtility.labelWidth) / 2f; + rect.height = EditorGUIUtility.singleLineHeight * (EditorGUIUtility.wideMode ? 1 : 2); + + TMP_EditorUtility.DrawColorProperty(rect, m_TopLeftColor); + rect.x += rect.width; + TMP_EditorUtility.DrawColorProperty(rect, m_TopRightColor); + + rect = EditorGUILayout.GetControlRect(false, EditorGUIUtility.singleLineHeight * (EditorGUIUtility.wideMode ? 1 : 2)); + rect.x += EditorGUIUtility.labelWidth; + rect.width = (rect.width - EditorGUIUtility.labelWidth) / 2f; + rect.height = EditorGUIUtility.singleLineHeight * (EditorGUIUtility.wideMode ? 1 : 2); + + TMP_EditorUtility.DrawColorProperty(rect, m_BottomLeftColor); + rect.x += rect.width; + TMP_EditorUtility.DrawColorProperty(rect, m_BottomRightColor); + break; + } + + if (serializedObject.ApplyModifiedProperties()) + TMPro_EventManager.ON_COLOR_GRAIDENT_PROPERTY_CHANGED(target as TMP_ColorGradient); + + } + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ColorGradientEditor.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ColorGradientEditor.cs.meta new file mode 100644 index 0000000..6d7849e --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ColorGradientEditor.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: fcc60c1d6bb544d9b712b652f418ff3a +timeCreated: 1468400050 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_DropdownEditor.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_DropdownEditor.cs new file mode 100644 index 0000000..60406aa --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_DropdownEditor.cs @@ -0,0 +1,51 @@ +using UnityEngine; +using UnityEditor; +using UnityEditor.UI; +using UnityEngine.UI; + +namespace TMPro.EditorUtilities +{ + [CustomEditor(typeof(TMP_Dropdown), true)] + [CanEditMultipleObjects] + public class DropdownEditor : SelectableEditor + { + SerializedProperty m_Template; + SerializedProperty m_CaptionText; + SerializedProperty m_CaptionImage; + SerializedProperty m_ItemText; + SerializedProperty m_ItemImage; + SerializedProperty m_OnSelectionChanged; + SerializedProperty m_Value; + SerializedProperty m_Options; + + protected override void OnEnable() + { + base.OnEnable(); + m_Template = serializedObject.FindProperty("m_Template"); + m_CaptionText = serializedObject.FindProperty("m_CaptionText"); + m_CaptionImage = serializedObject.FindProperty("m_CaptionImage"); + m_ItemText = serializedObject.FindProperty("m_ItemText"); + m_ItemImage = serializedObject.FindProperty("m_ItemImage"); + m_OnSelectionChanged = serializedObject.FindProperty("m_OnValueChanged"); + m_Value = serializedObject.FindProperty("m_Value"); + m_Options = serializedObject.FindProperty("m_Options"); + } + + public override void OnInspectorGUI() + { + base.OnInspectorGUI(); + EditorGUILayout.Space(); + + serializedObject.Update(); + EditorGUILayout.PropertyField(m_Template); + EditorGUILayout.PropertyField(m_CaptionText); + EditorGUILayout.PropertyField(m_CaptionImage); + EditorGUILayout.PropertyField(m_ItemText); + EditorGUILayout.PropertyField(m_ItemImage); + EditorGUILayout.PropertyField(m_Value); + EditorGUILayout.PropertyField(m_Options); + EditorGUILayout.PropertyField(m_OnSelectionChanged); + serializedObject.ApplyModifiedProperties(); + } + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_DropdownEditor.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_DropdownEditor.cs.meta new file mode 100644 index 0000000..fb4ac92 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_DropdownEditor.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 6dbcf248c987476181a37f01a1814975 +timeCreated: 1446377461 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorCoroutine.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorCoroutine.cs new file mode 100644 index 0000000..c40b271 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorCoroutine.cs @@ -0,0 +1,96 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using UnityEditor; +using UnityEngine; + + +namespace TMPro.EditorUtilities +{ + /// + /// Simple implementation of coroutine working in the Unity Editor. + /// + public class TMP_EditorCoroutine + { + //private static Dictionary s_ActiveCoroutines; + + readonly IEnumerator coroutine; + + /// + /// Constructor + /// + /// + TMP_EditorCoroutine(IEnumerator routine) + { + this.coroutine = routine; + } + + + /// + /// Starts a new EditorCoroutine. + /// + /// Coroutine + /// new EditorCoroutine + public static TMP_EditorCoroutine StartCoroutine(IEnumerator routine) + { + TMP_EditorCoroutine coroutine = new TMP_EditorCoroutine(routine); + coroutine.Start(); + + // Add coroutine to tracking list + //if (s_ActiveCoroutines == null) + // s_ActiveCoroutines = new Dictionary(); + + // Add new instance of editor coroutine to dictionary. + //s_ActiveCoroutines.Add(coroutine.GetHashCode(), coroutine); + + return coroutine; + } + + + /// + /// Clear delegate list + /// + //public static void StopAllEditorCoroutines() + //{ + // EditorApplication.update = null; + //} + + + /// + /// Register callback for editor updates + /// + void Start() + { + EditorApplication.update += EditorUpdate; + } + + + /// + /// Unregister callback for editor updates. + /// + public void Stop() + { + if (EditorApplication.update != null) + EditorApplication.update -= EditorUpdate; + + //s_ActiveCoroutines.Remove(this.GetHashCode()); + } + + + /// + /// Delegate function called on editor updates. + /// + void EditorUpdate() + { + // Stop editor coroutine if it does not continue. + if (coroutine.MoveNext() == false) + Stop(); + + // Process the different types of EditorCoroutines. + if (coroutine.Current != null) + { + + } + } + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorCoroutine.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorCoroutine.cs.meta new file mode 100644 index 0000000..d2d411a --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorCoroutine.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 27a0335dab59ec542aadd6636a5b4ebd +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorPanel.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorPanel.cs new file mode 100644 index 0000000..36eb2f8 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorPanel.cs @@ -0,0 +1,153 @@ +using UnityEngine; +using UnityEditor; + +namespace TMPro.EditorUtilities +{ + + [CustomEditor(typeof(TextMeshPro), true), CanEditMultipleObjects] + public class TMP_EditorPanel : TMP_BaseEditorPanel + { + static readonly GUIContent k_SortingLayerLabel = new GUIContent("Sorting Layer", "Name of the Renderer's sorting layer."); + static readonly GUIContent k_OrderInLayerLabel = new GUIContent("Order in Layer", "Renderer's order within a sorting layer."); + static readonly GUIContent k_OrthographicLabel = new GUIContent("Orthographic Mode", "Should be enabled when using an orthographic camera. Instructs the shader to not perform any perspective correction."); + static readonly GUIContent k_VolumetricLabel = new GUIContent("Volumetric Setup", "Use cubes rather than quads to render the text. Allows for volumetric rendering when combined with a compatible shader."); + + SerializedProperty m_IsVolumetricTextProp; + + SerializedProperty m_IsOrthographicProp; + + Renderer m_Renderer; + + protected override void OnEnable() + { + base.OnEnable(); + + m_IsOrthographicProp = serializedObject.FindProperty("m_isOrthographic"); + + m_IsVolumetricTextProp = serializedObject.FindProperty("m_isVolumetricText"); + + m_Renderer = m_TextComponent.GetComponent(); + } + + protected override void DrawExtraSettings() + { + Foldout.extraSettings = EditorGUILayout.Foldout(Foldout.extraSettings, k_ExtraSettingsLabel, true, TMP_UIStyleManager.boldFoldout); + if (Foldout.extraSettings) + { + EditorGUI.indentLevel += 1; + + DrawMargins(); + + DrawSortingLayer(); + + DrawGeometrySorting(); + + DrawOrthographicMode(); + + DrawRichText(); + + DrawParsing(); + + DrawVolumetricSetup(); + + DrawKerning(); + + DrawPadding(); + + EditorGUI.indentLevel -= 1; + } + } + + protected void DrawSortingLayer() + { + Undo.RecordObject(m_Renderer, "Sorting Layer Change"); + + EditorGUI.BeginChangeCheck(); + + // SORTING LAYERS + var sortingLayerNames = SortingLayerHelper.sortingLayerNames; + + var textComponent = (TextMeshPro)m_TextComponent; + + // Look up the layer name using the current layer ID + string oldName = SortingLayerHelper.GetSortingLayerNameFromID(textComponent.sortingLayerID); + + // Use the name to look up our array index into the names list + int oldLayerIndex = System.Array.IndexOf(sortingLayerNames, oldName); + + // Show the pop-up for the names + EditorGUIUtility.fieldWidth = 0f; + int newLayerIndex = EditorGUILayout.Popup(k_SortingLayerLabel, oldLayerIndex, sortingLayerNames); + + // If the index changes, look up the ID for the new index to store as the new ID + if (newLayerIndex != oldLayerIndex) + { + textComponent.sortingLayerID = SortingLayerHelper.GetSortingLayerIDForIndex(newLayerIndex); + } + + // Expose the manual sorting order + int newSortingLayerOrder = EditorGUILayout.IntField(k_OrderInLayerLabel, textComponent.sortingOrder); + if (newSortingLayerOrder != textComponent.sortingOrder) + { + textComponent.sortingOrder = newSortingLayerOrder; + } + + if (EditorGUI.EndChangeCheck()) + m_HavePropertiesChanged = true; + + EditorGUILayout.Space(); + } + + protected void DrawOrthographicMode() + { + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(m_IsOrthographicProp, k_OrthographicLabel); + if (EditorGUI.EndChangeCheck()) + m_HavePropertiesChanged = true; + } + + protected void DrawVolumetricSetup() + { + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(m_IsVolumetricTextProp, k_VolumetricLabel); + if (EditorGUI.EndChangeCheck()) + { + m_HavePropertiesChanged = true; + m_TextComponent.textInfo.ResetVertexLayout(m_IsVolumetricTextProp.boolValue); + } + + EditorGUILayout.Space(); + } + + // Method to handle multi object selection + protected override bool IsMixSelectionTypes() + { + GameObject[] objects = Selection.gameObjects; + if (objects.Length > 1) + { + for (int i = 0; i < objects.Length; i++) + { + if (objects[i].GetComponent() == null) + return true; + } + } + return false; + } + + protected override void OnUndoRedo() + { + int undoEventId = Undo.GetCurrentGroup(); + int lastUndoEventId = s_EventId; + + if (undoEventId != lastUndoEventId) + { + for (int i = 0; i < targets.Length; i++) + { + //Debug.Log("Undo & Redo Performed detected in Editor Panel. Event ID:" + Undo.GetCurrentGroup()); + TMPro_EventManager.ON_TEXTMESHPRO_PROPERTY_CHANGED(true, targets[i] as TextMeshPro); + s_EventId = undoEventId; + } + } + } + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorPanel.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorPanel.cs.meta new file mode 100644 index 0000000..aace189 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorPanel.cs.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 34f6695d37a94370a3697f6b068f5d5e +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorUtility.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorUtility.cs new file mode 100644 index 0000000..9c8e630 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorUtility.cs @@ -0,0 +1,450 @@ +using UnityEngine; +using UnityEditor; +using System.Text; +using System.IO; +using System.Collections; +using System.Collections.Generic; + + +namespace TMPro.EditorUtilities +{ + + public static class TMP_EditorUtility + { + /// + /// Returns the relative path of the package. + /// + public static string packageRelativePath + { + get + { + if (string.IsNullOrEmpty(m_PackagePath)) + m_PackagePath = GetPackageRelativePath(); + + return m_PackagePath; + } + } + [SerializeField] + private static string m_PackagePath; + + /// + /// Returns the fully qualified path of the package. + /// + public static string packageFullPath + { + get + { + if (string.IsNullOrEmpty(m_PackageFullPath)) + m_PackageFullPath = GetPackageFullPath(); + + return m_PackageFullPath; + } + } + [SerializeField] + private static string m_PackageFullPath; + + + // Static Fields Related to locating the TextMesh Pro Asset + private static string folderPath = "Not Found"; + + private static EditorWindow Gameview; + private static bool isInitialized = false; + + private static void GetGameview() + { + System.Reflection.Assembly assembly = typeof(UnityEditor.EditorWindow).Assembly; + System.Type type = assembly.GetType("UnityEditor.GameView"); + Gameview = EditorWindow.GetWindow(type); + } + + + public static void RepaintAll() + { + if (isInitialized == false) + { + GetGameview(); + isInitialized = true; + } + + SceneView.RepaintAll(); + Gameview.Repaint(); + } + + + /// + /// Create and return a new asset in a smart location based on the current selection and then select it. + /// + /// + /// Name of the new asset. Do not include the .asset extension. + /// + /// + /// The new asset. + /// + public static T CreateAsset(string name) where T : ScriptableObject + { + string path = AssetDatabase.GetAssetPath(Selection.activeObject); + if (path.Length == 0) + { + // no asset selected, place in asset root + path = "Assets/" + name + ".asset"; + } + else if (Directory.Exists(path)) + { + // place in currently selected directory + path += "/" + name + ".asset"; + } + else { + // place in current selection's containing directory + path = Path.GetDirectoryName(path) + "/" + name + ".asset"; + } + T asset = ScriptableObject.CreateInstance(); + AssetDatabase.CreateAsset(asset, AssetDatabase.GenerateUniqueAssetPath(path)); + EditorUtility.FocusProjectWindow(); + Selection.activeObject = asset; + return asset; + } + + + + // Function used to find all materials which reference a font atlas so we can update all their references. + public static Material[] FindMaterialReferences(TMP_FontAsset fontAsset) + { + List refs = new List(); + Material mat = fontAsset.material; + refs.Add(mat); + + // Get materials matching the search pattern. + string searchPattern = "t:Material" + " " + fontAsset.name.Split(new char[] { ' ' })[0]; + string[] materialAssetGUIDs = AssetDatabase.FindAssets(searchPattern); + + for (int i = 0; i < materialAssetGUIDs.Length; i++) + { + string materialPath = AssetDatabase.GUIDToAssetPath(materialAssetGUIDs[i]); + Material targetMaterial = AssetDatabase.LoadAssetAtPath(materialPath); + + if (targetMaterial.HasProperty(ShaderUtilities.ID_MainTex) && targetMaterial.GetTexture(ShaderUtilities.ID_MainTex) != null && mat.GetTexture(ShaderUtilities.ID_MainTex) != null && targetMaterial.GetTexture(ShaderUtilities.ID_MainTex).GetInstanceID() == mat.GetTexture(ShaderUtilities.ID_MainTex).GetInstanceID()) + { + if (!refs.Contains(targetMaterial)) + refs.Add(targetMaterial); + } + else + { + // TODO: Find a more efficient method to unload resources. + //Resources.UnloadAsset(targetMaterial.GetTexture(ShaderUtilities.ID_MainTex)); + } + } + + return refs.ToArray(); + } + + + // Function used to find the Font Asset which matches the given Material Preset and Font Atlas Texture. + public static TMP_FontAsset FindMatchingFontAsset(Material mat) + { + if (mat.GetTexture(ShaderUtilities.ID_MainTex) == null) return null; + + // Find the dependent assets of this material. + string[] dependentAssets = AssetDatabase.GetDependencies(AssetDatabase.GetAssetPath(mat), false); + + for (int i = 0; i < dependentAssets.Length; i++) + { + TMP_FontAsset fontAsset = AssetDatabase.LoadAssetAtPath(dependentAssets[i]); + if (fontAsset != null) + return fontAsset; + } + + return null; + } + + + private static string GetPackageRelativePath() + { + // Check for potential UPM package + string packagePath = Path.GetFullPath("Packages/com.unity.textmeshpro"); + if (Directory.Exists(packagePath)) + { + return "Packages/com.unity.textmeshpro"; + } + + packagePath = Path.GetFullPath("Assets/.."); + if (Directory.Exists(packagePath)) + { + // Search default location for development package + if (Directory.Exists(packagePath + "/Assets/Packages/com.unity.TextMeshPro/Editor Resources")) + { + return "Assets/Packages/com.unity.TextMeshPro"; + } + + // Search for default location of normal TextMesh Pro AssetStore package + if (Directory.Exists(packagePath + "/Assets/TextMesh Pro/Editor Resources")) + { + return "Assets/TextMesh Pro"; + } + + // Search for potential alternative locations in the user project + string[] matchingPaths = Directory.GetDirectories(packagePath, "TextMesh Pro", SearchOption.AllDirectories); + packagePath = ValidateLocation(matchingPaths, packagePath); + if (packagePath != null) return packagePath; + } + + return null; + } + + private static string GetPackageFullPath() + { + // Check for potential UPM package + string packagePath = Path.GetFullPath("Packages/com.unity.textmeshpro"); + if (Directory.Exists(packagePath)) + { + return packagePath; + } + + packagePath = Path.GetFullPath("Assets/.."); + if (Directory.Exists(packagePath)) + { + // Search default location for development package + if (Directory.Exists(packagePath + "/Assets/Packages/com.unity.TextMeshPro/Editor Resources")) + { + return packagePath + "/Assets/Packages/com.unity.TextMeshPro"; + } + + // Search for default location of normal TextMesh Pro AssetStore package + if (Directory.Exists(packagePath + "/Assets/TextMesh Pro/Editor Resources")) + { + return packagePath + "/Assets/TextMesh Pro"; + } + + // Search for potential alternative locations in the user project + string[] matchingPaths = Directory.GetDirectories(packagePath, "TextMesh Pro", SearchOption.AllDirectories); + string path = ValidateLocation(matchingPaths, packagePath); + if (path != null) return packagePath + path; + } + + return null; + } + + + /// + /// Method to validate the location of the asset folder by making sure the GUISkins folder exists. + /// + /// + /// + private static string ValidateLocation(string[] paths, string projectPath) + { + for (int i = 0; i < paths.Length; i++) + { + // Check if any of the matching directories contain a GUISkins directory. + if (Directory.Exists(paths[i] + "/Editor Resources")) + { + folderPath = paths[i].Replace(projectPath, ""); + folderPath = folderPath.TrimStart('\\', '/'); + return folderPath; + } + } + + return null; + } + + + /// + /// Function which returns a string containing a sequence of Decimal character ranges. + /// + /// + /// + public static string GetDecimalCharacterSequence(int[] characterSet) + { + if (characterSet == null || characterSet.Length == 0) + return string.Empty; + + string characterSequence = string.Empty; + int count = characterSet.Length; + int first = characterSet[0]; + int last = first; + + for (int i = 1; i < count; i++) + { + if (characterSet[i - 1] + 1 == characterSet[i]) + { + last = characterSet[i]; + } + else + { + if (first == last) + characterSequence += first + ","; + else + characterSequence += first + "-" + last + ","; + + first = last = characterSet[i]; + } + + } + + // handle the final group + if (first == last) + characterSequence += first; + else + characterSequence += first + "-" + last; + + return characterSequence; + } + + + /// + /// Function which returns a string containing a sequence of Unicode (Hex) character ranges. + /// + /// + /// + public static string GetUnicodeCharacterSequence(int[] characterSet) + { + if (characterSet == null || characterSet.Length == 0) + return string.Empty; + + string characterSequence = string.Empty; + int count = characterSet.Length; + int first = characterSet[0]; + int last = first; + + for (int i = 1; i < count; i++) + { + if (characterSet[i - 1] + 1 == characterSet[i]) + { + last = characterSet[i]; + } + else + { + if (first == last) + characterSequence += first.ToString("X2") + ","; + else + characterSequence += first.ToString("X2") + "-" + last.ToString("X2") + ","; + + first = last = characterSet[i]; + } + + } + + // handle the final group + if (first == last) + characterSequence += first.ToString("X2"); + else + characterSequence += first.ToString("X2") + "-" + last.ToString("X2"); + + return characterSequence; + } + + + /// + /// + /// + /// + /// + /// + public static void DrawBox(Rect rect, float thickness, Color color) + { + EditorGUI.DrawRect(new Rect(rect.x - thickness, rect.y + thickness, rect.width + thickness * 2, thickness), color); + EditorGUI.DrawRect(new Rect(rect.x - thickness, rect.y + thickness, thickness, rect.height - thickness * 2), color); + EditorGUI.DrawRect(new Rect(rect.x - thickness, rect.y + rect.height - thickness * 2, rect.width + thickness * 2, thickness), color); + EditorGUI.DrawRect(new Rect(rect.x + rect.width, rect.y + thickness, thickness, rect.height - thickness * 2), color); + } + + + /// + /// Function to return the horizontal alignment grid value. + /// + /// + /// + public static int GetHorizontalAlignmentGridValue(int value) + { + if ((value & 0x1) == 0x1) + return 0; + else if ((value & 0x2) == 0x2) + return 1; + else if ((value & 0x4) == 0x4) + return 2; + else if ((value & 0x8) == 0x8) + return 3; + else if ((value & 0x10) == 0x10) + return 4; + else if ((value & 0x20) == 0x20) + return 5; + + return 0; + } + + /// + /// Function to return the vertical alignment grid value. + /// + /// + /// + public static int GetVerticalAlignmentGridValue(int value) + { + if ((value & 0x100) == 0x100) + return 0; + if ((value & 0x200) == 0x200) + return 1; + if ((value & 0x400) == 0x400) + return 2; + if ((value & 0x800) == 0x800) + return 3; + if ((value & 0x1000) == 0x1000) + return 4; + if ((value & 0x2000) == 0x2000) + return 5; + + return 0; + } + + public static void DrawColorProperty(Rect rect, SerializedProperty property) + { + int oldIndent = EditorGUI.indentLevel; + EditorGUI.indentLevel = 0; + if (EditorGUIUtility.wideMode) + { + EditorGUI.PropertyField(new Rect(rect.x, rect.y, 50f, rect.height), property, GUIContent.none); + rect.x += 50f; + rect.width = Mathf.Min(100f, rect.width - 55f); + } + else + { + rect.height /= 2f; + rect.width = Mathf.Min(100f, rect.width - 5f); + EditorGUI.PropertyField(rect, property, GUIContent.none); + rect.y += rect.height; + } + + EditorGUI.BeginChangeCheck(); + string colorString = EditorGUI.TextField(rect, string.Format("#{0}", ColorUtility.ToHtmlStringRGBA(property.colorValue))); + if (EditorGUI.EndChangeCheck()) + { + if (ColorUtility.TryParseHtmlString(colorString, out Color color)) + { + property.colorValue = color; + } + } + EditorGUI.indentLevel = oldIndent; + } + + public static bool EditorToggle(Rect position, bool value, GUIContent content, GUIStyle style) + { + var id = GUIUtility.GetControlID(content, FocusType.Keyboard, position); + var evt = Event.current; + + // Toggle selected toggle on space or return key + if (GUIUtility.keyboardControl == id && evt.type == EventType.KeyDown && (evt.keyCode == KeyCode.Space || evt.keyCode == KeyCode.Return || evt.keyCode == KeyCode.KeypadEnter)) + { + value = !value; + evt.Use(); + GUI.changed = true; + } + + if (evt.type == EventType.MouseDown && position.Contains(Event.current.mousePosition)) + { + GUIUtility.keyboardControl = id; + EditorGUIUtility.editingTextField = false; + HandleUtility.Repaint(); + } + + return GUI.Toggle(position, id, value, content, style); + } + + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorUtility.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorUtility.cs.meta new file mode 100644 index 0000000..c462f87 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_EditorUtility.cs.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 2300e75732d74890b38a8ff257a3ae15 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_FontAssetEditor.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_FontAssetEditor.cs new file mode 100644 index 0000000..e352814 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_FontAssetEditor.cs @@ -0,0 +1,1711 @@ +using UnityEngine; +using UnityEditor; +using UnityEditorInternal; +using System.Collections; +using System.Collections.Generic; +using UnityEngine.TextCore; +using UnityEngine.TextCore.LowLevel; + + +namespace TMPro.EditorUtilities +{ + + [CustomPropertyDrawer(typeof(TMP_FontWeightPair))] + public class FontWeightDrawer : PropertyDrawer + { + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + SerializedProperty prop_regular = property.FindPropertyRelative("regularTypeface"); + SerializedProperty prop_italic = property.FindPropertyRelative("italicTypeface"); + + float width = position.width; + + position.width = EditorGUIUtility.labelWidth; + EditorGUI.LabelField(position, label); + + int oldIndent = EditorGUI.indentLevel; + EditorGUI.indentLevel = 0; + + // NORMAL TYPEFACE + if (label.text[0] == '4') GUI.enabled = false; + position.x += position.width; position.width = (width - position.width) / 2; + EditorGUI.PropertyField(position, prop_regular, GUIContent.none); + + // ITALIC TYPEFACE + GUI.enabled = true; + position.x += position.width; + EditorGUI.PropertyField(position, prop_italic, GUIContent.none); + + EditorGUI.indentLevel = oldIndent; + } + } + + [CustomEditor(typeof(TMP_FontAsset))] + public class TMP_FontAssetEditor : Editor + { + private struct UI_PanelState + { + public static bool faceInfoPanel = true; + public static bool generationSettingsPanel = true; + public static bool fontAtlasInfoPanel = true; + public static bool fontWeightPanel = true; + public static bool fallbackFontAssetPanel = true; + public static bool glyphTablePanel = false; + public static bool characterTablePanel = false; + public static bool fontFeatureTablePanel = false; + } + + private struct AtlasSettings + { + public GlyphRenderMode glyphRenderMode; + public int pointSize; + public int padding; + public int atlasWidth; + public int atlasHeight; + } + + /// + /// Material used to display SDF glyphs in the Character and Glyph tables. + /// + internal static Material internalSDFMaterial + { + get + { + if (s_InternalSDFMaterial == null) + { + Shader shader = Shader.Find("Hidden/TextMeshPro/Internal/Distance Field SSD"); + + if (shader != null) + s_InternalSDFMaterial = new Material(shader); + } + + return s_InternalSDFMaterial; + } + } + static Material s_InternalSDFMaterial; + + /// + /// Material used to display Bitmap glyphs in the Character and Glyph tables. + /// + internal static Material internalBitmapMaterial + { + get + { + if (s_InternalBitmapMaterial == null) + { + Shader shader = Shader.Find("Hidden/Internal-GUITextureClipText"); + + if (shader != null) + s_InternalBitmapMaterial = new Material(shader); + } + + return s_InternalBitmapMaterial; + } + } + static Material s_InternalBitmapMaterial; + + private static string[] s_UiStateLabel = new string[] { "(Click to collapse) ", "(Click to expand) " }; + private GUIContent[] m_AtlasResolutionLabels = { new GUIContent("8"), new GUIContent("16"), new GUIContent("32"), new GUIContent("64"), new GUIContent("128"), new GUIContent("256"), new GUIContent("512"), new GUIContent("1024"), new GUIContent("2048"), new GUIContent("4096"), new GUIContent("8192") }; + private int[] m_AtlasResolutions = { 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192 }; + + private struct Warning + { + public bool isEnabled; + public double expirationTime; + } + + private int m_CurrentGlyphPage = 0; + private int m_CurrentCharacterPage = 0; + private int m_CurrentKerningPage = 0; + + private int m_SelectedGlyphRecord = -1; + private int m_SelectedCharacterRecord = -1; + private int m_SelectedAdjustmentRecord = -1; + + private string m_dstGlyphID; + private string m_dstUnicode; + private const string k_placeholderUnicodeHex = "New Unicode (Hex)"; + private string m_unicodeHexLabel = k_placeholderUnicodeHex; + private const string k_placeholderGlyphID = "New Glyph ID"; + private string m_GlyphIDLabel = k_placeholderGlyphID; + + private Warning m_AddGlyphWarning; + private Warning m_AddCharacterWarning; + private bool m_DisplayDestructiveChangeWarning; + private AtlasSettings m_AtlasSettings; + private bool m_MaterialPresetsRequireUpdate; + + private string m_GlyphSearchPattern; + private List m_GlyphSearchList; + + private string m_CharacterSearchPattern; + private List m_CharacterSearchList; + + private string m_KerningTableSearchPattern; + private List m_KerningTableSearchList; + + private bool m_isSearchDirty; + + private const string k_UndoRedo = "UndoRedoPerformed"; + + private SerializedProperty m_AtlasPopulationMode_prop; + private SerializedProperty font_atlas_prop; + private SerializedProperty font_material_prop; + + private SerializedProperty m_AtlasRenderMode_prop; + private SerializedProperty m_SamplingPointSize_prop; + private SerializedProperty m_AtlasPadding_prop; + private SerializedProperty m_AtlasWidth_prop; + private SerializedProperty m_AtlasHeight_prop; + + private SerializedProperty fontWeights_prop; + + //private SerializedProperty fallbackFontAssets_prop; + private ReorderableList m_list; + + private SerializedProperty font_normalStyle_prop; + private SerializedProperty font_normalSpacing_prop; + + private SerializedProperty font_boldStyle_prop; + private SerializedProperty font_boldSpacing_prop; + + private SerializedProperty font_italicStyle_prop; + private SerializedProperty font_tabSize_prop; + + private SerializedProperty m_FaceInfo_prop; + private SerializedProperty m_GlyphTable_prop; + private SerializedProperty m_CharacterTable_prop; + + private TMP_FontFeatureTable m_FontFeatureTable; + private SerializedProperty m_FontFeatureTable_prop; + private SerializedProperty m_GlyphPairAdjustmentRecords_prop; + + private TMP_SerializedPropertyHolder m_SerializedPropertyHolder; + private SerializedProperty m_EmptyGlyphPairAdjustmentRecord_prop; + + private TMP_FontAsset m_fontAsset; + + private Material[] m_materialPresets; + + private bool isAssetDirty = false; + + private int errorCode; + + private System.DateTime timeStamp; + + + public void OnEnable() + { + m_FaceInfo_prop = serializedObject.FindProperty("m_FaceInfo"); + + font_atlas_prop = serializedObject.FindProperty("m_AtlasTextures").GetArrayElementAtIndex(0); + font_material_prop = serializedObject.FindProperty("material"); + + m_AtlasPopulationMode_prop = serializedObject.FindProperty("m_AtlasPopulationMode"); + m_AtlasRenderMode_prop = serializedObject.FindProperty("m_AtlasRenderMode"); + m_SamplingPointSize_prop = m_FaceInfo_prop.FindPropertyRelative("m_PointSize"); + m_AtlasPadding_prop = serializedObject.FindProperty("m_AtlasPadding"); + m_AtlasWidth_prop = serializedObject.FindProperty("m_AtlasWidth"); + m_AtlasHeight_prop = serializedObject.FindProperty("m_AtlasHeight"); + + fontWeights_prop = serializedObject.FindProperty("m_FontWeightTable"); + + m_list = new ReorderableList(serializedObject, serializedObject.FindProperty("m_FallbackFontAssetTable"), true, true, true, true); + + m_list.drawElementCallback = (Rect rect, int index, bool isActive, bool isFocused) => + { + var element = m_list.serializedProperty.GetArrayElementAtIndex(index); + rect.y += 2; + EditorGUI.PropertyField(new Rect(rect.x, rect.y, rect.width, EditorGUIUtility.singleLineHeight), element, GUIContent.none); + }; + + m_list.drawHeaderCallback = rect => + { + EditorGUI.LabelField(rect, "Fallback List"); + }; + + // Clean up fallback list in the event if contains null elements. + CleanFallbackFontAssetTable(); + + font_normalStyle_prop = serializedObject.FindProperty("normalStyle"); + font_normalSpacing_prop = serializedObject.FindProperty("normalSpacingOffset"); + + font_boldStyle_prop = serializedObject.FindProperty("boldStyle"); + font_boldSpacing_prop = serializedObject.FindProperty("boldSpacing"); + + font_italicStyle_prop = serializedObject.FindProperty("italicStyle"); + font_tabSize_prop = serializedObject.FindProperty("tabSize"); + + m_CharacterTable_prop = serializedObject.FindProperty("m_CharacterTable"); + m_GlyphTable_prop = serializedObject.FindProperty("m_GlyphTable"); + + m_FontFeatureTable_prop = serializedObject.FindProperty("m_FontFeatureTable"); + m_GlyphPairAdjustmentRecords_prop = m_FontFeatureTable_prop.FindPropertyRelative("m_GlyphPairAdjustmentRecords"); + + m_fontAsset = target as TMP_FontAsset; + m_FontFeatureTable = m_fontAsset.fontFeatureTable; + + // Upgrade Font Feature Table if necessary + if (m_fontAsset.m_KerningTable != null && m_fontAsset.m_KerningTable.kerningPairs != null && m_fontAsset.m_KerningTable.kerningPairs.Count > 0) + m_fontAsset.ReadFontAssetDefinition(); + + // Create serialized object to allow us to use a serialized property of an empty kerning pair. + m_SerializedPropertyHolder = CreateInstance(); + m_SerializedPropertyHolder.fontAsset = m_fontAsset; + SerializedObject internalSerializedObject = new SerializedObject(m_SerializedPropertyHolder); + m_EmptyGlyphPairAdjustmentRecord_prop = internalSerializedObject.FindProperty("glyphPairAdjustmentRecord"); + + m_materialPresets = TMP_EditorUtility.FindMaterialReferences(m_fontAsset); + + m_GlyphSearchList = new List(); + m_KerningTableSearchList = new List(); + } + + + public void OnDisable() + { + // Revert changes if user closes or changes selection without having made a choice. + if (m_DisplayDestructiveChangeWarning) + { + m_DisplayDestructiveChangeWarning = false; + RestoreAtlasGenerationSettings(); + GUIUtility.keyboardControl = 0; + + serializedObject.ApplyModifiedProperties(); + } + } + + + public override void OnInspectorGUI() + { + //Debug.Log("OnInspectorGUI Called."); + + Event currentEvent = Event.current; + + serializedObject.Update(); + + Rect rect = EditorGUILayout.GetControlRect(false, 24); + float labelWidth = EditorGUIUtility.labelWidth; + float fieldWidth = EditorGUIUtility.fieldWidth; + + // FACE INFO PANEL + #region Face info + GUI.Label(rect, new GUIContent("Face Info - v" + m_fontAsset.version), TMP_UIStyleManager.sectionHeader); + + rect.x += rect.width - 132f; + rect.y += 2; + rect.width = 130f; + rect.height = 18f; + if (GUI.Button(rect, new GUIContent("Update Atlas Texture"))) + { + TMPro_FontAssetCreatorWindow.ShowFontAtlasCreatorWindow(target as TMP_FontAsset); + } + + EditorGUI.indentLevel = 1; + GUI.enabled = false; // Lock UI + + // TODO : Consider creating a property drawer for these. + EditorGUILayout.PropertyField(m_FaceInfo_prop.FindPropertyRelative("m_FamilyName")); + EditorGUILayout.PropertyField(m_FaceInfo_prop.FindPropertyRelative("m_StyleName")); + EditorGUILayout.PropertyField(m_FaceInfo_prop.FindPropertyRelative("m_PointSize")); + + GUI.enabled = true; + + EditorGUILayout.PropertyField(m_FaceInfo_prop.FindPropertyRelative("m_Scale")); + EditorGUILayout.PropertyField(m_FaceInfo_prop.FindPropertyRelative("m_LineHeight")); + + EditorGUILayout.PropertyField(m_FaceInfo_prop.FindPropertyRelative("m_AscentLine")); + EditorGUILayout.PropertyField(m_FaceInfo_prop.FindPropertyRelative("m_CapLine")); + EditorGUILayout.PropertyField(m_FaceInfo_prop.FindPropertyRelative("m_MeanLine")); + EditorGUILayout.PropertyField(m_FaceInfo_prop.FindPropertyRelative("m_Baseline")); + EditorGUILayout.PropertyField(m_FaceInfo_prop.FindPropertyRelative("m_DescentLine")); + EditorGUILayout.PropertyField(m_FaceInfo_prop.FindPropertyRelative("m_UnderlineOffset")); + EditorGUILayout.PropertyField(m_FaceInfo_prop.FindPropertyRelative("m_UnderlineThickness")); + EditorGUILayout.PropertyField(m_FaceInfo_prop.FindPropertyRelative("m_StrikethroughOffset")); + //EditorGUILayout.PropertyField(m_FaceInfo_prop.FindPropertyRelative("strikethroughThickness")); + EditorGUILayout.PropertyField(m_FaceInfo_prop.FindPropertyRelative("m_SuperscriptOffset")); + EditorGUILayout.PropertyField(m_FaceInfo_prop.FindPropertyRelative("m_SuperscriptSize")); + EditorGUILayout.PropertyField(m_FaceInfo_prop.FindPropertyRelative("m_SubscriptOffset")); + EditorGUILayout.PropertyField(m_FaceInfo_prop.FindPropertyRelative("m_SubscriptSize")); + EditorGUILayout.PropertyField(m_FaceInfo_prop.FindPropertyRelative("m_TabWidth")); + // TODO : Add clamping for some of these values. + //subSize_prop.floatValue = Mathf.Clamp(subSize_prop.floatValue, 0.25f, 1f); + + EditorGUILayout.Space(); + #endregion + + // GENERATION SETTINGS + #region Generation Settings + rect = EditorGUILayout.GetControlRect(false, 24); + + if (GUI.Button(rect, new GUIContent("Generation Settings"), TMP_UIStyleManager.sectionHeader)) + UI_PanelState.generationSettingsPanel = !UI_PanelState.generationSettingsPanel; + + GUI.Label(rect, (UI_PanelState.generationSettingsPanel ? "" : s_UiStateLabel[1]), TMP_UIStyleManager.rightLabel); + + if (UI_PanelState.generationSettingsPanel) + { + EditorGUI.indentLevel = 1; + + EditorGUI.BeginChangeCheck(); + Font sourceFont = (Font)EditorGUILayout.ObjectField("Source Font File", m_fontAsset.m_SourceFontFile_EditorRef, typeof(Font), false); + if (EditorGUI.EndChangeCheck()) + { + string guid = AssetDatabase.AssetPathToGUID(AssetDatabase.GetAssetPath(sourceFont)); + m_fontAsset.m_SourceFontFileGUID = guid; + m_fontAsset.m_SourceFontFile_EditorRef = sourceFont; + } + + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(m_AtlasPopulationMode_prop, new GUIContent("Atlas Population Mode")); + if (EditorGUI.EndChangeCheck()) + { + serializedObject.ApplyModifiedProperties(); + + bool isDatabaseRefreshRequired = false; + + if (m_AtlasPopulationMode_prop.intValue == 0) + { + m_fontAsset.sourceFontFile = null; + + // Set atlas textures to non readable. + //for (int i = 0; i < m_fontAsset.atlasTextures.Length; i++) + //{ + // Texture2D tex = m_fontAsset.atlasTextures[i]; + + // if (tex != null && tex.isReadable) + // { + // string texPath = AssetDatabase.GetAssetPath(tex); + // var texImporter = AssetImporter.GetAtPath(texPath) as TextureImporter; + // if (texImporter != null) + // { + // texImporter.isReadable = false; + // AssetDatabase.ImportAsset(texPath); + // isDatabaseRefreshRequired = true; + // } + // } + //} + + Debug.Log("Atlas Population mode set to [Static]."); + } + else if (m_AtlasPopulationMode_prop.intValue == 1) + { + if (m_fontAsset.m_SourceFontFile_EditorRef.dynamic == false) + { + Debug.LogWarning("Please set the [" + m_fontAsset.name + "] font to dynamic mode as this is required for Dynamic SDF support.", m_fontAsset.m_SourceFontFile_EditorRef); + m_AtlasPopulationMode_prop.intValue = 0; + + serializedObject.ApplyModifiedProperties(); + } + else + { + m_fontAsset.sourceFontFile = m_fontAsset.m_SourceFontFile_EditorRef; + + /* + // Set atlas textures to non readable. + for (int i = 0; i < m_fontAsset.atlasTextures.Length; i++) + { + Texture2D tex = m_fontAsset.atlasTextures[i]; + + if (tex != null && tex.isReadable == false) + { + string texPath = AssetDatabase.GetAssetPath(tex.GetInstanceID()); + Object[] paths = AssetDatabase.LoadAllAssetsAtPath(texPath); + var texImporter = AssetImporter.GetAtPath(texPath) as TextureImporter; + if (texImporter != null) + { + texImporter.isReadable = true; + AssetDatabase.ImportAsset(texPath); + isDatabaseRefreshRequired = true; + } + } + } + */ + Debug.Log("Atlas Population mode set to [Dynamic]."); + } + } + + if (isDatabaseRefreshRequired) + AssetDatabase.Refresh(); + + serializedObject.Update(); + isAssetDirty = true; + } + + GUI.enabled = true; + // Save state of atlas settings + if (m_DisplayDestructiveChangeWarning == false) + { + SavedAtlasGenerationSettings(); + //Undo.RegisterCompleteObjectUndo(m_fontAsset, "Font Asset Changes"); + } + + EditorGUI.BeginChangeCheck(); + // TODO: Switch shaders depending on GlyphRenderMode. + EditorGUILayout.PropertyField(m_AtlasRenderMode_prop); + EditorGUILayout.PropertyField(m_SamplingPointSize_prop, new GUIContent("Sampling Point Size")); + if (EditorGUI.EndChangeCheck()) + { + m_DisplayDestructiveChangeWarning = true; + } + + // Changes to these properties require updating Material Presets for this font asset. + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(m_AtlasPadding_prop, new GUIContent("Padding")); + EditorGUILayout.IntPopup(m_AtlasWidth_prop, m_AtlasResolutionLabels, m_AtlasResolutions, new GUIContent("Atlas Width")); + EditorGUILayout.IntPopup(m_AtlasHeight_prop, m_AtlasResolutionLabels, m_AtlasResolutions, new GUIContent("Atlas Height")); + if (EditorGUI.EndChangeCheck()) + { + m_MaterialPresetsRequireUpdate = true; + m_DisplayDestructiveChangeWarning = true; + } + + if (m_DisplayDestructiveChangeWarning) + { + // These changes are destructive on the font asset + rect = EditorGUILayout.GetControlRect(false, 60); + rect.x += 15; + rect.width -= 15; + EditorGUI.HelpBox(rect, "Changing these settings will clear the font asset's character, glyph and texture data.", MessageType.Warning); + + if (GUI.Button(new Rect(rect.width - 140, rect.y + 36, 80, 18), new GUIContent("Apply"))) + { + m_DisplayDestructiveChangeWarning = false; + + // Update face info is sampling point size was changed. + if (m_AtlasSettings.pointSize != m_SamplingPointSize_prop.intValue) + { + FontEngine.LoadFontFace(m_fontAsset.sourceFontFile, m_SamplingPointSize_prop.intValue); + m_fontAsset.faceInfo = FontEngine.GetFaceInfo(); + } + + // Update material + m_fontAsset.material.SetFloat(ShaderUtilities.ID_TextureWidth, m_AtlasWidth_prop.intValue); + m_fontAsset.material.SetFloat(ShaderUtilities.ID_TextureHeight, m_AtlasHeight_prop.intValue); + m_fontAsset.material.SetFloat(ShaderUtilities.ID_GradientScale, m_AtlasPadding_prop.intValue + 1); + + // Update material presets if any of the relevant properties have been changed. + if (m_MaterialPresetsRequireUpdate) + { + m_MaterialPresetsRequireUpdate = false; + + Material[] materialPresets = TMP_EditorUtility.FindMaterialReferences(m_fontAsset); + for (int i = 0; i < materialPresets.Length; i++) + { + Material mat = materialPresets[i]; + + mat.SetFloat(ShaderUtilities.ID_TextureWidth, m_AtlasWidth_prop.intValue); + mat.SetFloat(ShaderUtilities.ID_TextureHeight, m_AtlasHeight_prop.intValue); + mat.SetFloat(ShaderUtilities.ID_GradientScale, m_AtlasPadding_prop.intValue + 1); + } + } + + m_fontAsset.ClearFontAssetData(); + GUIUtility.keyboardControl = 0; + isAssetDirty = true; + + // Update Font Asset Creation Settings to reflect new changes. + UpdateFontAssetCreationSettings(); + + // TODO: Clear undo buffers. + //Undo.ClearUndo(m_fontAsset); + } + + if (GUI.Button(new Rect(rect.width - 56, rect.y + 36, 80, 18), new GUIContent("Revert"))) + { + m_DisplayDestructiveChangeWarning = false; + RestoreAtlasGenerationSettings(); + GUIUtility.keyboardControl = 0; + + // TODO: Clear undo buffers. + //Undo.ClearUndo(m_fontAsset); + } + } + EditorGUILayout.Space(); + } + #endregion + + // ATLAS & MATERIAL PANEL + #region Atlas & Material + rect = EditorGUILayout.GetControlRect(false, 24); + + if (GUI.Button(rect, new GUIContent("Atlas & Material"), TMP_UIStyleManager.sectionHeader)) + UI_PanelState.fontAtlasInfoPanel = !UI_PanelState.fontAtlasInfoPanel; + + GUI.Label(rect, (UI_PanelState.fontAtlasInfoPanel ? "" : s_UiStateLabel[1]), TMP_UIStyleManager.rightLabel); + + if (UI_PanelState.fontAtlasInfoPanel) + { + EditorGUI.indentLevel = 1; + + GUI.enabled = false; + EditorGUILayout.PropertyField(font_atlas_prop, new GUIContent("Font Atlas")); + EditorGUILayout.PropertyField(font_material_prop, new GUIContent("Font Material")); + GUI.enabled = true; + EditorGUILayout.Space(); + } + #endregion + + string evt_cmd = Event.current.commandName; // Get Current Event CommandName to check for Undo Events + + // FONT WEIGHT PANEL + #region Font Weights + rect = EditorGUILayout.GetControlRect(false, 24); + + if (GUI.Button(rect, new GUIContent("Font Weights", "The Font Assets that will be used for different font weights and the settings used to simulate a typeface when no asset is available."), TMP_UIStyleManager.sectionHeader)) + UI_PanelState.fontWeightPanel = !UI_PanelState.fontWeightPanel; + + GUI.Label(rect, (UI_PanelState.fontWeightPanel ? "" : s_UiStateLabel[1]), TMP_UIStyleManager.rightLabel); + + if (UI_PanelState.fontWeightPanel) + { + EditorGUIUtility.labelWidth *= 0.75f; + EditorGUIUtility.fieldWidth *= 0.25f; + + EditorGUILayout.BeginVertical(); + EditorGUI.indentLevel = 1; + rect = EditorGUILayout.GetControlRect(true); + rect.x += EditorGUIUtility.labelWidth; + rect.width = (rect.width - EditorGUIUtility.labelWidth) / 2f; + GUI.Label(rect, "Regular Tyepface", EditorStyles.label); + rect.x += rect.width; + GUI.Label(rect, "Italic Typeface", EditorStyles.label); + + EditorGUI.indentLevel = 1; + + EditorGUILayout.PropertyField(fontWeights_prop.GetArrayElementAtIndex(1), new GUIContent("100 - Thin")); + EditorGUILayout.PropertyField(fontWeights_prop.GetArrayElementAtIndex(2), new GUIContent("200 - Extra-Light")); + EditorGUILayout.PropertyField(fontWeights_prop.GetArrayElementAtIndex(3), new GUIContent("300 - Light")); + EditorGUILayout.PropertyField(fontWeights_prop.GetArrayElementAtIndex(4), new GUIContent("400 - Regular")); + EditorGUILayout.PropertyField(fontWeights_prop.GetArrayElementAtIndex(5), new GUIContent("500 - Medium")); + EditorGUILayout.PropertyField(fontWeights_prop.GetArrayElementAtIndex(6), new GUIContent("600 - Semi-Bold")); + EditorGUILayout.PropertyField(fontWeights_prop.GetArrayElementAtIndex(7), new GUIContent("700 - Bold")); + EditorGUILayout.PropertyField(fontWeights_prop.GetArrayElementAtIndex(8), new GUIContent("800 - Heavy")); + EditorGUILayout.PropertyField(fontWeights_prop.GetArrayElementAtIndex(9), new GUIContent("900 - Black")); + + EditorGUILayout.EndVertical(); + + EditorGUILayout.Space(); + + EditorGUILayout.BeginVertical(); + + EditorGUILayout.BeginHorizontal(); + EditorGUILayout.PropertyField(font_normalStyle_prop, new GUIContent("Normal Weight")); + font_normalStyle_prop.floatValue = Mathf.Clamp(font_normalStyle_prop.floatValue, -3.0f, 3.0f); + if (GUI.changed || evt_cmd == k_UndoRedo) + { + GUI.changed = false; + + // Modify the material property on matching material presets. + for (int i = 0; i < m_materialPresets.Length; i++) + m_materialPresets[i].SetFloat("_WeightNormal", font_normalStyle_prop.floatValue); + } + + EditorGUILayout.PropertyField(font_boldStyle_prop, new GUIContent("Bold Weight")); + font_boldStyle_prop.floatValue = Mathf.Clamp(font_boldStyle_prop.floatValue, -3.0f, 3.0f); + if (GUI.changed || evt_cmd == k_UndoRedo) + { + GUI.changed = false; + + // Modify the material property on matching material presets. + for (int i = 0; i < m_materialPresets.Length; i++) + m_materialPresets[i].SetFloat("_WeightBold", font_boldStyle_prop.floatValue); + } + EditorGUILayout.EndHorizontal(); + + EditorGUILayout.BeginHorizontal(); + EditorGUILayout.PropertyField(font_normalSpacing_prop, new GUIContent("Spacing Offset")); + font_normalSpacing_prop.floatValue = Mathf.Clamp(font_normalSpacing_prop.floatValue, -100, 100); + if (GUI.changed || evt_cmd == k_UndoRedo) + { + GUI.changed = false; + } + + EditorGUILayout.PropertyField(font_boldSpacing_prop, new GUIContent("Bold Spacing")); + font_boldSpacing_prop.floatValue = Mathf.Clamp(font_boldSpacing_prop.floatValue, 0, 100); + if (GUI.changed || evt_cmd == k_UndoRedo) + { + GUI.changed = false; + } + EditorGUILayout.EndHorizontal(); + + EditorGUILayout.BeginHorizontal(); + EditorGUILayout.PropertyField(font_italicStyle_prop, new GUIContent("Italic Style")); + font_italicStyle_prop.intValue = Mathf.Clamp(font_italicStyle_prop.intValue, 15, 60); + + EditorGUILayout.PropertyField(font_tabSize_prop, new GUIContent("Tab Multiple")); + EditorGUILayout.EndHorizontal(); + EditorGUILayout.EndVertical(); + EditorGUILayout.Space(); + } + + EditorGUIUtility.labelWidth = 0; + EditorGUIUtility.fieldWidth = 0; + #endregion + + // FALLBACK FONT ASSETS + #region Fallback Font Asset + rect = EditorGUILayout.GetControlRect(false, 24); + EditorGUI.indentLevel = 0; + if (GUI.Button(rect, new GUIContent("Fallback Font Assets", "Select the Font Assets that will be searched and used as fallback when characters are missing from this font asset."), TMP_UIStyleManager.sectionHeader)) + UI_PanelState.fallbackFontAssetPanel = !UI_PanelState.fallbackFontAssetPanel; + + GUI.Label(rect, (UI_PanelState.fallbackFontAssetPanel ? "" : s_UiStateLabel[1]), TMP_UIStyleManager.rightLabel); + + if (UI_PanelState.fallbackFontAssetPanel) + { + EditorGUIUtility.labelWidth = 120; + EditorGUI.indentLevel = 0; + + m_list.DoLayoutList(); + EditorGUILayout.Space(); + } + #endregion + + // CHARACTER TABLE TABLE + #region Character Table + EditorGUIUtility.labelWidth = labelWidth; + EditorGUIUtility.fieldWidth = fieldWidth; + EditorGUI.indentLevel = 0; + rect = EditorGUILayout.GetControlRect(false, 24); + + if (GUI.Button(rect, new GUIContent("Character Table", "List of characters contained in this font asset."), TMP_UIStyleManager.sectionHeader)) + UI_PanelState.characterTablePanel = !UI_PanelState.characterTablePanel; + + GUI.Label(rect, (UI_PanelState.characterTablePanel ? "" : s_UiStateLabel[1]), TMP_UIStyleManager.rightLabel); + + if (UI_PanelState.characterTablePanel) + { + int arraySize = m_CharacterTable_prop.arraySize; + int itemsPerPage = 15; + + // Display Glyph Management Tools + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + { + // Search Bar implementation + #region DISPLAY SEARCH BAR + EditorGUILayout.BeginHorizontal(); + { + EditorGUIUtility.labelWidth = 130f; + EditorGUI.BeginChangeCheck(); + string searchPattern = EditorGUILayout.TextField("Character Search", m_CharacterSearchPattern, "SearchTextField"); + if (EditorGUI.EndChangeCheck() || m_isSearchDirty) + { + if (string.IsNullOrEmpty(searchPattern) == false) + { + m_CharacterSearchPattern = searchPattern; + + // Search Character Table for potential matches + SearchCharacterTable (m_CharacterSearchPattern, ref m_CharacterSearchList); + } + else + m_CharacterSearchPattern = null; + + m_isSearchDirty = false; + } + + string styleName = string.IsNullOrEmpty(m_CharacterSearchPattern) ? "SearchCancelButtonEmpty" : "SearchCancelButton"; + if (GUILayout.Button(GUIContent.none, styleName)) + { + GUIUtility.keyboardControl = 0; + m_CharacterSearchPattern = string.Empty; + } + } + EditorGUILayout.EndHorizontal(); + #endregion + + // Display Page Navigation + if (!string.IsNullOrEmpty(m_CharacterSearchPattern)) + arraySize = m_CharacterSearchList.Count; + + DisplayPageNavigation(ref m_CurrentCharacterPage, arraySize, itemsPerPage); + } + EditorGUILayout.EndVertical(); + + // Display Character Table Elements + if (arraySize > 0) + { + // Display each character entry using the CharacterPropertyDrawer. + for (int i = itemsPerPage * m_CurrentCharacterPage; i < arraySize && i < itemsPerPage * (m_CurrentCharacterPage + 1); i++) + { + // Define the start of the selection region of the element. + Rect elementStartRegion = GUILayoutUtility.GetRect(0f, 0f, GUILayout.ExpandWidth(true)); + + int elementIndex = i; + if (!string.IsNullOrEmpty(m_CharacterSearchPattern)) + elementIndex = m_CharacterSearchList[i]; + + SerializedProperty characterProperty = m_CharacterTable_prop.GetArrayElementAtIndex(elementIndex); + + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + + EditorGUI.BeginDisabledGroup(i != m_SelectedCharacterRecord); + { + EditorGUILayout.PropertyField(characterProperty); + } + EditorGUI.EndDisabledGroup(); + + EditorGUILayout.EndVertical(); + + // Define the end of the selection region of the element. + Rect elementEndRegion = GUILayoutUtility.GetRect(0f, 0f, GUILayout.ExpandWidth(true)); + + // Check for Item selection + Rect selectionArea = new Rect(elementStartRegion.x, elementStartRegion.y, elementEndRegion.width, elementEndRegion.y - elementStartRegion.y); + if (DoSelectionCheck(selectionArea)) + { + if (m_SelectedCharacterRecord == i) + m_SelectedCharacterRecord = -1; + else + { + m_SelectedCharacterRecord = i; + m_AddCharacterWarning.isEnabled = false; + m_unicodeHexLabel = k_placeholderUnicodeHex; + GUIUtility.keyboardControl = 0; + } + } + + // Draw Selection Highlight and Glyph Options + if (m_SelectedCharacterRecord == i) + { + TMP_EditorUtility.DrawBox(selectionArea, 2f, new Color32(40, 192, 255, 255)); + + // Draw Glyph management options + Rect controlRect = EditorGUILayout.GetControlRect(true, EditorGUIUtility.singleLineHeight * 1f); + float optionAreaWidth = controlRect.width * 0.6f; + float btnWidth = optionAreaWidth / 3; + + Rect position = new Rect(controlRect.x + controlRect.width * .4f, controlRect.y, btnWidth, controlRect.height); + + // Copy Selected Glyph to Target Glyph ID + GUI.enabled = !string.IsNullOrEmpty(m_dstUnicode); + if (GUI.Button(position, new GUIContent("Copy to"))) + { + GUIUtility.keyboardControl = 0; + + // Convert Hex Value to Decimal + int dstGlyphID = TMP_TextUtilities.StringHexToInt(m_dstUnicode); + + //Add new glyph at target Unicode hex id. + if (!AddNewCharacter(elementIndex, dstGlyphID)) + { + m_AddCharacterWarning.isEnabled = true; + m_AddCharacterWarning.expirationTime = EditorApplication.timeSinceStartup + 1; + } + + m_dstUnicode = string.Empty; + m_isSearchDirty = true; + + TMPro_EventManager.ON_FONT_PROPERTY_CHANGED(true, m_fontAsset); + } + + // Target Glyph ID + GUI.enabled = true; + position.x += btnWidth; + + GUI.SetNextControlName("CharacterID_Input"); + m_dstUnicode = EditorGUI.TextField(position, m_dstUnicode); + + // Placeholder text + EditorGUI.LabelField(position, new GUIContent(m_unicodeHexLabel, "The Unicode (Hex) ID of the duplicated Character"), TMP_UIStyleManager.label); + + // Only filter the input when the destination glyph ID text field has focus. + if (GUI.GetNameOfFocusedControl() == "CharacterID_Input") + { + m_unicodeHexLabel = string.Empty; + + //Filter out unwanted characters. + char chr = Event.current.character; + if ((chr < '0' || chr > '9') && (chr < 'a' || chr > 'f') && (chr < 'A' || chr > 'F')) + { + Event.current.character = '\0'; + } + } + else + { + m_unicodeHexLabel = k_placeholderUnicodeHex; + //m_dstUnicode = string.Empty; + } + + + // Remove Glyph + position.x += btnWidth; + if (GUI.Button(position, "Remove")) + { + GUIUtility.keyboardControl = 0; + + RemoveCharacterFromList(elementIndex); + + isAssetDirty = true; + m_SelectedCharacterRecord = -1; + m_isSearchDirty = true; + break; + } + + if (m_AddCharacterWarning.isEnabled && EditorApplication.timeSinceStartup < m_AddCharacterWarning.expirationTime) + { + EditorGUILayout.HelpBox("The Destination Character ID already exists", MessageType.Warning); + } + + } + } + } + + DisplayPageNavigation(ref m_CurrentCharacterPage, arraySize, itemsPerPage); + + EditorGUILayout.Space(); + } + #endregion + + // GLYPH TABLE + #region Glyph Table + EditorGUIUtility.labelWidth = labelWidth; + EditorGUIUtility.fieldWidth = fieldWidth; + EditorGUI.indentLevel = 0; + rect = EditorGUILayout.GetControlRect(false, 24); + + GUIStyle glyphPanelStyle = new GUIStyle(EditorStyles.helpBox); + + if (GUI.Button(rect, new GUIContent("Glyph Table", "List of glyphs contained in this font asset."), TMP_UIStyleManager.sectionHeader)) + UI_PanelState.glyphTablePanel = !UI_PanelState.glyphTablePanel; + + GUI.Label(rect, (UI_PanelState.glyphTablePanel ? "" : s_UiStateLabel[1]), TMP_UIStyleManager.rightLabel); + + if (UI_PanelState.glyphTablePanel) + { + int arraySize = m_GlyphTable_prop.arraySize; + int itemsPerPage = 15; + + // Display Glyph Management Tools + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + { + // Search Bar implementation + #region DISPLAY SEARCH BAR + EditorGUILayout.BeginHorizontal(); + { + EditorGUIUtility.labelWidth = 130f; + EditorGUI.BeginChangeCheck(); + string searchPattern = EditorGUILayout.TextField("Glyph Search", m_GlyphSearchPattern, "SearchTextField"); + if (EditorGUI.EndChangeCheck() || m_isSearchDirty) + { + if (string.IsNullOrEmpty(searchPattern) == false) + { + m_GlyphSearchPattern = searchPattern; + + // Search Glyph Table for potential matches + SearchGlyphTable(m_GlyphSearchPattern, ref m_GlyphSearchList); + } + else + m_GlyphSearchPattern = null; + + m_isSearchDirty = false; + } + + string styleName = string.IsNullOrEmpty(m_GlyphSearchPattern) ? "SearchCancelButtonEmpty" : "SearchCancelButton"; + if (GUILayout.Button(GUIContent.none, styleName)) + { + GUIUtility.keyboardControl = 0; + m_GlyphSearchPattern = string.Empty; + } + } + EditorGUILayout.EndHorizontal(); + #endregion + + // Display Page Navigation + if (!string.IsNullOrEmpty(m_GlyphSearchPattern)) + arraySize = m_GlyphSearchList.Count; + + DisplayPageNavigation(ref m_CurrentGlyphPage, arraySize, itemsPerPage); + } + EditorGUILayout.EndVertical(); + + // Display Glyph Table Elements + + if (arraySize > 0) + { + // Display each GlyphInfo entry using the GlyphInfo property drawer. + for (int i = itemsPerPage * m_CurrentGlyphPage; i < arraySize && i < itemsPerPage * (m_CurrentGlyphPage + 1); i++) + { + // Define the start of the selection region of the element. + Rect elementStartRegion = GUILayoutUtility.GetRect(0f, 0f, GUILayout.ExpandWidth(true)); + + int elementIndex = i; + if (!string.IsNullOrEmpty(m_GlyphSearchPattern)) + elementIndex = m_GlyphSearchList[i]; + + SerializedProperty glyphProperty = m_GlyphTable_prop.GetArrayElementAtIndex(elementIndex); + + EditorGUILayout.BeginVertical(glyphPanelStyle); + + using (new EditorGUI.DisabledScope(i != m_SelectedGlyphRecord)) + { + EditorGUILayout.PropertyField(glyphProperty); + } + + EditorGUILayout.EndVertical(); + + // Define the end of the selection region of the element. + Rect elementEndRegion = GUILayoutUtility.GetRect(0f, 0f, GUILayout.ExpandWidth(true)); + + // Check for Item selection + Rect selectionArea = new Rect(elementStartRegion.x, elementStartRegion.y, elementEndRegion.width, elementEndRegion.y - elementStartRegion.y); + if (DoSelectionCheck(selectionArea)) + { + if (m_SelectedGlyphRecord == i) + m_SelectedGlyphRecord = -1; + else + { + m_SelectedGlyphRecord = i; + m_AddGlyphWarning.isEnabled = false; + m_unicodeHexLabel = k_placeholderUnicodeHex; + GUIUtility.keyboardControl = 0; + } + } + + // Draw Selection Highlight and Glyph Options + if (m_SelectedGlyphRecord == i) + { + TMP_EditorUtility.DrawBox(selectionArea, 2f, new Color32(40, 192, 255, 255)); + + // Draw Glyph management options + Rect controlRect = EditorGUILayout.GetControlRect(true, EditorGUIUtility.singleLineHeight * 1f); + float optionAreaWidth = controlRect.width * 0.6f; + float btnWidth = optionAreaWidth / 3; + + Rect position = new Rect(controlRect.x + controlRect.width * .4f, controlRect.y, btnWidth, controlRect.height); + + // Copy Selected Glyph to Target Glyph ID + GUI.enabled = !string.IsNullOrEmpty(m_dstGlyphID); + if (GUI.Button(position, new GUIContent("Copy to"))) + { + GUIUtility.keyboardControl = 0; + + // Convert Hex Value to Decimal + int.TryParse(m_dstGlyphID, out int dstGlyphID); + + //Add new glyph at target Unicode hex id. + if (!AddNewGlyph(elementIndex, dstGlyphID)) + { + m_AddGlyphWarning.isEnabled = true; + m_AddGlyphWarning.expirationTime = EditorApplication.timeSinceStartup + 1; + } + + m_dstGlyphID = string.Empty; + m_isSearchDirty = true; + + TMPro_EventManager.ON_FONT_PROPERTY_CHANGED(true, m_fontAsset); + } + + // Target Glyph ID + GUI.enabled = true; + position.x += btnWidth; + + GUI.SetNextControlName("GlyphID_Input"); + m_dstGlyphID = EditorGUI.TextField(position, m_dstGlyphID); + + // Placeholder text + EditorGUI.LabelField(position, new GUIContent(m_GlyphIDLabel, "The Glyph ID of the duplicated Glyph"), TMP_UIStyleManager.label); + + // Only filter the input when the destination glyph ID text field has focus. + if (GUI.GetNameOfFocusedControl() == "GlyphID_Input") + { + m_GlyphIDLabel = string.Empty; + + //Filter out unwanted characters. + char chr = Event.current.character; + if ((chr < '0' || chr > '9')) + { + Event.current.character = '\0'; + } + } + else + { + m_GlyphIDLabel = k_placeholderGlyphID; + //m_dstGlyphID = string.Empty; + } + + // Remove Glyph + position.x += btnWidth; + if (GUI.Button(position, "Remove")) + { + GUIUtility.keyboardControl = 0; + + RemoveGlyphFromList(elementIndex); + + isAssetDirty = true; + m_SelectedGlyphRecord = -1; + m_isSearchDirty = true; + break; + } + + if (m_AddGlyphWarning.isEnabled && EditorApplication.timeSinceStartup < m_AddGlyphWarning.expirationTime) + { + EditorGUILayout.HelpBox("The Destination Glyph ID already exists", MessageType.Warning); + } + + } + } + } + + DisplayPageNavigation(ref m_CurrentGlyphPage, arraySize, itemsPerPage); + + EditorGUILayout.Space(); + } + #endregion + + // FONT FEATURE TABLE + #region Font Feature Table + EditorGUIUtility.labelWidth = labelWidth; + EditorGUIUtility.fieldWidth = fieldWidth; + EditorGUI.indentLevel = 0; + rect = EditorGUILayout.GetControlRect(false, 24); + + if (GUI.Button(rect, new GUIContent("Glyph Adjustment Table", "List of glyph adjustment / advanced kerning pairs."), TMP_UIStyleManager.sectionHeader)) + UI_PanelState.fontFeatureTablePanel = !UI_PanelState.fontFeatureTablePanel; + + GUI.Label(rect, (UI_PanelState.fontFeatureTablePanel ? "" : s_UiStateLabel[1]), TMP_UIStyleManager.rightLabel); + + if (UI_PanelState.fontFeatureTablePanel) + { + int arraySize = m_GlyphPairAdjustmentRecords_prop.arraySize; + int itemsPerPage = 20; + + // Display Kerning Pair Management Tools + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + { + // Search Bar implementation + #region DISPLAY SEARCH BAR + EditorGUILayout.BeginHorizontal(); + { + EditorGUIUtility.labelWidth = 150f; + EditorGUI.BeginChangeCheck(); + string searchPattern = EditorGUILayout.TextField("Adjustment Pair Search", m_KerningTableSearchPattern, "SearchTextField"); + if (EditorGUI.EndChangeCheck() || m_isSearchDirty) + { + if (string.IsNullOrEmpty(searchPattern) == false) + { + m_KerningTableSearchPattern = searchPattern; + + // Search Glyph Table for potential matches + SearchKerningTable(m_KerningTableSearchPattern, ref m_KerningTableSearchList); + } + else + m_KerningTableSearchPattern = null; + + m_isSearchDirty = false; + } + + string styleName = string.IsNullOrEmpty(m_KerningTableSearchPattern) ? "SearchCancelButtonEmpty" : "SearchCancelButton"; + if (GUILayout.Button(GUIContent.none, styleName)) + { + GUIUtility.keyboardControl = 0; + m_KerningTableSearchPattern = string.Empty; + } + } + EditorGUILayout.EndHorizontal(); + #endregion + + // Display Page Navigation + if (!string.IsNullOrEmpty(m_KerningTableSearchPattern)) + arraySize = m_KerningTableSearchList.Count; + + DisplayPageNavigation(ref m_CurrentKerningPage, arraySize, itemsPerPage); + } + EditorGUILayout.EndVertical(); + + if (arraySize > 0) + { + // Display each GlyphInfo entry using the GlyphInfo property drawer. + for (int i = itemsPerPage * m_CurrentKerningPage; i < arraySize && i < itemsPerPage * (m_CurrentKerningPage + 1); i++) + { + // Define the start of the selection region of the element. + Rect elementStartRegion = GUILayoutUtility.GetRect(0f, 0f, GUILayout.ExpandWidth(true)); + + int elementIndex = i; + if (!string.IsNullOrEmpty(m_KerningTableSearchPattern)) + elementIndex = m_KerningTableSearchList[i]; + + SerializedProperty pairAdjustmentRecordProperty = m_GlyphPairAdjustmentRecords_prop.GetArrayElementAtIndex(elementIndex); + + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + + using (new EditorGUI.DisabledScope(i != m_SelectedAdjustmentRecord)) + { + EditorGUILayout.PropertyField(pairAdjustmentRecordProperty, new GUIContent("Selectable")); + } + + EditorGUILayout.EndVertical(); + + // Define the end of the selection region of the element. + Rect elementEndRegion = GUILayoutUtility.GetRect(0f, 0f, GUILayout.ExpandWidth(true)); + + // Check for Item selection + Rect selectionArea = new Rect(elementStartRegion.x, elementStartRegion.y, elementEndRegion.width, elementEndRegion.y - elementStartRegion.y); + if (DoSelectionCheck(selectionArea)) + { + if (m_SelectedAdjustmentRecord == i) + { + m_SelectedAdjustmentRecord = -1; + } + else + { + m_SelectedAdjustmentRecord = i; + GUIUtility.keyboardControl = 0; + } + } + + // Draw Selection Highlight and Kerning Pair Options + if (m_SelectedAdjustmentRecord == i) + { + TMP_EditorUtility.DrawBox(selectionArea, 2f, new Color32(40, 192, 255, 255)); + + // Draw Glyph management options + Rect controlRect = EditorGUILayout.GetControlRect(true, EditorGUIUtility.singleLineHeight * 1f); + float optionAreaWidth = controlRect.width; + float btnWidth = optionAreaWidth / 4; + + Rect position = new Rect(controlRect.x + controlRect.width - btnWidth, controlRect.y, btnWidth, controlRect.height); + + // Remove Kerning pair + GUI.enabled = true; + if (GUI.Button(position, "Remove")) + { + GUIUtility.keyboardControl = 0; + + RemoveAdjustmentPairFromList(i); + + isAssetDirty = true; + m_SelectedAdjustmentRecord = -1; + m_isSearchDirty = true; + break; + } + } + } + } + + DisplayPageNavigation(ref m_CurrentKerningPage, arraySize, itemsPerPage); + + GUILayout.Space(5); + + // Add new kerning pair + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + { + EditorGUILayout.PropertyField(m_EmptyGlyphPairAdjustmentRecord_prop); + } + EditorGUILayout.EndVertical(); + + if (GUILayout.Button("Add New Glyph Adjustment Record")) + { + SerializedProperty firstAdjustmentRecordProperty = m_EmptyGlyphPairAdjustmentRecord_prop.FindPropertyRelative("m_FirstAdjustmentRecord"); + SerializedProperty secondAdjustmentRecordProperty = m_EmptyGlyphPairAdjustmentRecord_prop.FindPropertyRelative("m_SecondAdjustmentRecord"); + + uint firstGlyphIndex = (uint)firstAdjustmentRecordProperty.FindPropertyRelative("m_GlyphIndex").intValue; + uint secondGlyphIndex = (uint)secondAdjustmentRecordProperty.FindPropertyRelative("m_GlyphIndex").intValue; + + TMP_GlyphValueRecord firstValueRecord = GetValueRecord(firstAdjustmentRecordProperty.FindPropertyRelative("m_GlyphValueRecord")); + TMP_GlyphValueRecord secondValueRecord = GetValueRecord(secondAdjustmentRecordProperty.FindPropertyRelative("m_GlyphValueRecord")); + + errorCode = -1; + long pairKey = (long)secondGlyphIndex << 32 | firstGlyphIndex; + if (m_FontFeatureTable.m_GlyphPairAdjustmentRecordLookupDictionary.ContainsKey(pairKey) == false) + { + TMP_GlyphPairAdjustmentRecord adjustmentRecord = new TMP_GlyphPairAdjustmentRecord(new TMP_GlyphAdjustmentRecord(firstGlyphIndex, firstValueRecord), new TMP_GlyphAdjustmentRecord(secondGlyphIndex, secondValueRecord)); + m_FontFeatureTable.m_GlyphPairAdjustmentRecords.Add(adjustmentRecord); + m_FontFeatureTable.m_GlyphPairAdjustmentRecordLookupDictionary.Add(pairKey, adjustmentRecord); + errorCode = 0; + } + + // Add glyphs and characters + uint firstCharacter = m_SerializedPropertyHolder.firstCharacter; + if (!m_fontAsset.characterLookupTable.ContainsKey(firstCharacter)) + m_fontAsset.TryAddCharacterInternal(firstCharacter, out TMP_Character character); + + uint secondCharacter = m_SerializedPropertyHolder.secondCharacter; + if (!m_fontAsset.characterLookupTable.ContainsKey(secondCharacter)) + m_fontAsset.TryAddCharacterInternal(secondCharacter, out TMP_Character character); + + // Sort Kerning Pairs & Reload Font Asset if new kerning pair was added. + if (errorCode != -1) + { + m_FontFeatureTable.SortGlyphPairAdjustmentRecords(); + serializedObject.ApplyModifiedProperties(); + isAssetDirty = true; + m_isSearchDirty = true; + } + else + { + timeStamp = System.DateTime.Now.AddSeconds(5); + } + + // Clear Add Kerning Pair Panel + // TODO + } + + if (errorCode == -1) + { + GUILayout.BeginHorizontal(); + GUILayout.FlexibleSpace(); + GUILayout.Label("Kerning Pair already exists!", TMP_UIStyleManager.label); + GUILayout.FlexibleSpace(); + GUILayout.EndHorizontal(); + + if (System.DateTime.Now > timeStamp) + errorCode = 0; + } + } + #endregion + + if (serializedObject.ApplyModifiedProperties() || evt_cmd == k_UndoRedo || isAssetDirty) + { + // Delay callback until user has decided to Apply or Revert the changes. + if (m_DisplayDestructiveChangeWarning == false) + TMPro_EventManager.ON_FONT_PROPERTY_CHANGED(true, m_fontAsset); + + if (m_fontAsset.m_IsFontAssetLookupTablesDirty || evt_cmd == k_UndoRedo) + m_fontAsset.ReadFontAssetDefinition(); + + isAssetDirty = false; + EditorUtility.SetDirty(target); + } + + + // Clear selection if mouse event was not consumed. + GUI.enabled = true; + if (currentEvent.type == EventType.MouseDown && currentEvent.button == 0) + m_SelectedAdjustmentRecord = -1; + + } + + void CleanFallbackFontAssetTable() + { + SerializedProperty m_FallbackFontAsseTable = serializedObject.FindProperty("m_FallbackFontAssetTable"); + + bool isListDirty = false; + + int elementCount = m_FallbackFontAsseTable.arraySize; + + for (int i = 0; i < elementCount; i++) + { + SerializedProperty element = m_FallbackFontAsseTable.GetArrayElementAtIndex(i); + if (element.objectReferenceValue == null) + { + m_FallbackFontAsseTable.DeleteArrayElementAtIndex(i); + elementCount -= 1; + i -= 1; + + isListDirty = true; + } + } + + if (isListDirty) + { + serializedObject.ApplyModifiedProperties(); + serializedObject.Update(); + } + } + + void SavedAtlasGenerationSettings() + { + m_AtlasSettings.glyphRenderMode = (GlyphRenderMode)m_AtlasRenderMode_prop.intValue; + m_AtlasSettings.pointSize = m_SamplingPointSize_prop.intValue; + m_AtlasSettings.padding = m_AtlasPadding_prop.intValue; + m_AtlasSettings.atlasWidth = m_AtlasWidth_prop.intValue; + m_AtlasSettings.atlasHeight = m_AtlasHeight_prop.intValue; + } + + void RestoreAtlasGenerationSettings() + { + m_AtlasRenderMode_prop.intValue = (int)m_AtlasSettings.glyphRenderMode; + m_SamplingPointSize_prop.intValue = m_AtlasSettings.pointSize; + m_AtlasPadding_prop.intValue = m_AtlasSettings.padding; + m_AtlasWidth_prop.intValue = m_AtlasSettings.atlasWidth; + m_AtlasHeight_prop.intValue = m_AtlasSettings.atlasHeight; + } + + + void UpdateFontAssetCreationSettings() + { + m_fontAsset.m_CreationSettings.pointSize = m_SamplingPointSize_prop.intValue; + m_fontAsset.m_CreationSettings.renderMode = m_AtlasRenderMode_prop.intValue; + m_fontAsset.m_CreationSettings.padding = m_AtlasPadding_prop.intValue; + m_fontAsset.m_CreationSettings.atlasWidth = m_AtlasWidth_prop.intValue; + m_fontAsset.m_CreationSettings.atlasHeight = m_AtlasHeight_prop.intValue; + } + + + void UpdateCharacterData(SerializedProperty property, int index) + { + TMP_Character character = m_fontAsset.characterTable[index]; + + character.unicode = (uint)property.FindPropertyRelative("m_Unicode").intValue; + character.scale = property.FindPropertyRelative("m_Scale").floatValue; + + SerializedProperty glyphProperty = property.FindPropertyRelative("m_Glyph"); + character.glyph.index = (uint)glyphProperty.FindPropertyRelative("m_Index").intValue; + + SerializedProperty glyphRectProperty = glyphProperty.FindPropertyRelative("m_GlyphRect"); + character.glyph.glyphRect = new GlyphRect(glyphRectProperty.FindPropertyRelative("m_X").intValue, glyphRectProperty.FindPropertyRelative("m_Y").intValue, glyphRectProperty.FindPropertyRelative("m_Width").intValue, glyphRectProperty.FindPropertyRelative("m_Height").intValue); + + SerializedProperty glyphMetricsProperty = glyphProperty.FindPropertyRelative("m_Metrics"); + character.glyph.metrics = new GlyphMetrics(glyphMetricsProperty.FindPropertyRelative("m_Width").floatValue, glyphMetricsProperty.FindPropertyRelative("m_Height").floatValue, glyphMetricsProperty.FindPropertyRelative("m_HorizontalBearingX").floatValue, glyphMetricsProperty.FindPropertyRelative("m_HorizontalBearingY").floatValue, glyphMetricsProperty.FindPropertyRelative("m_HorizontalAdvance").floatValue); + + character.glyph.scale = glyphProperty.FindPropertyRelative("m_Scale").floatValue; + + character.glyph.atlasIndex = glyphProperty.FindPropertyRelative("m_AtlasIndex").intValue; + } + + + void UpdateGlyphData(SerializedProperty property, int index) + { + Glyph glyph = m_fontAsset.glyphTable[index]; + + glyph.index = (uint)property.FindPropertyRelative("m_Index").intValue; + + SerializedProperty glyphRect = property.FindPropertyRelative("m_GlyphRect"); + glyph.glyphRect = new GlyphRect(glyphRect.FindPropertyRelative("m_X").intValue, glyphRect.FindPropertyRelative("m_Y").intValue, glyphRect.FindPropertyRelative("m_Width").intValue, glyphRect.FindPropertyRelative("m_Height").intValue); + + SerializedProperty glyphMetrics = property.FindPropertyRelative("m_Metrics"); + glyph.metrics = new GlyphMetrics(glyphMetrics.FindPropertyRelative("m_Width").floatValue, glyphMetrics.FindPropertyRelative("m_Height").floatValue, glyphMetrics.FindPropertyRelative("m_HorizontalBearingX").floatValue, glyphMetrics.FindPropertyRelative("m_HorizontalBearingY").floatValue, glyphMetrics.FindPropertyRelative("m_HorizontalAdvance").floatValue); + + glyph.scale = property.FindPropertyRelative("m_Scale").floatValue; + } + + + void DisplayPageNavigation(ref int currentPage, int arraySize, int itemsPerPage) + { + Rect pagePos = EditorGUILayout.GetControlRect(false, 20); + pagePos.width /= 3; + + int shiftMultiplier = Event.current.shift ? 10 : 1; // Page + Shift goes 10 page forward + + // Previous Page + GUI.enabled = currentPage > 0; + + if (GUI.Button(pagePos, "Previous Page")) + currentPage -= 1 * shiftMultiplier; + + + // Page Counter + GUI.enabled = true; + pagePos.x += pagePos.width; + int totalPages = (int)(arraySize / (float)itemsPerPage + 0.999f); + GUI.Label(pagePos, "Page " + (currentPage + 1) + " / " + totalPages, TMP_UIStyleManager.centeredLabel); + + // Next Page + pagePos.x += pagePos.width; + GUI.enabled = itemsPerPage * (currentPage + 1) < arraySize; + + if (GUI.Button(pagePos, "Next Page")) + currentPage += 1 * shiftMultiplier; + + // Clamp page range + currentPage = Mathf.Clamp(currentPage, 0, arraySize / itemsPerPage); + + GUI.enabled = true; + } + + + /// + /// + /// + /// + /// + bool AddNewGlyph(int srcIndex, int dstGlyphID) + { + // Make sure Destination Glyph ID doesn't already contain a Glyph + if (m_fontAsset.glyphLookupTable.ContainsKey((uint)dstGlyphID)) + return false; + + // Add new element to glyph list. + m_GlyphTable_prop.arraySize += 1; + + // Get a reference to the source glyph. + SerializedProperty sourceGlyph = m_GlyphTable_prop.GetArrayElementAtIndex(srcIndex); + + int dstIndex = m_GlyphTable_prop.arraySize - 1; + + // Get a reference to the target / destination glyph. + SerializedProperty targetGlyph = m_GlyphTable_prop.GetArrayElementAtIndex(dstIndex); + + CopyGlyphSerializedProperty(sourceGlyph, ref targetGlyph); + + // Update the ID of the glyph + targetGlyph.FindPropertyRelative("m_Index").intValue = dstGlyphID; + + serializedObject.ApplyModifiedProperties(); + + m_fontAsset.SortGlyphTable(); + + m_fontAsset.ReadFontAssetDefinition(); + + return true; + } + + /// + /// + /// + /// + void RemoveGlyphFromList(int index) + { + if (index > m_GlyphTable_prop.arraySize) + return; + + int targetGlyphIndex = m_GlyphTable_prop.GetArrayElementAtIndex(index).FindPropertyRelative("m_Index").intValue; + + m_GlyphTable_prop.DeleteArrayElementAtIndex(index); + + // Remove all characters referencing this glyph. + for (int i = 0; i < m_CharacterTable_prop.arraySize; i++) + { + int glyphIndex = m_CharacterTable_prop.GetArrayElementAtIndex(i).FindPropertyRelative("m_GlyphIndex").intValue; + + if (glyphIndex == targetGlyphIndex) + { + // Remove character + m_CharacterTable_prop.DeleteArrayElementAtIndex(i); + } + } + + serializedObject.ApplyModifiedProperties(); + + m_fontAsset.ReadFontAssetDefinition(); + } + + bool AddNewCharacter(int srcIndex, int dstGlyphID) + { + // Make sure Destination Glyph ID doesn't already contain a Glyph + if (m_fontAsset.characterLookupTable.ContainsKey((uint)dstGlyphID)) + return false; + + // Add new element to glyph list. + m_CharacterTable_prop.arraySize += 1; + + // Get a reference to the source glyph. + SerializedProperty sourceCharacter = m_CharacterTable_prop.GetArrayElementAtIndex(srcIndex); + + int dstIndex = m_CharacterTable_prop.arraySize - 1; + + // Get a reference to the target / destination glyph. + SerializedProperty targetCharacter = m_CharacterTable_prop.GetArrayElementAtIndex(dstIndex); + + CopyCharacterSerializedProperty(sourceCharacter, ref targetCharacter); + + // Update the ID of the glyph + targetCharacter.FindPropertyRelative("m_Unicode").intValue = dstGlyphID; + + serializedObject.ApplyModifiedProperties(); + + m_fontAsset.SortCharacterTable(); + + m_fontAsset.ReadFontAssetDefinition(); + + return true; + } + + void RemoveCharacterFromList(int index) + { + if (index > m_CharacterTable_prop.arraySize) + return; + + m_CharacterTable_prop.DeleteArrayElementAtIndex(index); + + serializedObject.ApplyModifiedProperties(); + + m_fontAsset.ReadFontAssetDefinition(); + } + + + // Check if any of the Style elements were clicked on. + private bool DoSelectionCheck(Rect selectionArea) + { + Event currentEvent = Event.current; + + switch (currentEvent.type) + { + case EventType.MouseDown: + if (selectionArea.Contains(currentEvent.mousePosition) && currentEvent.button == 0) + { + currentEvent.Use(); + return true; + } + + break; + } + + return false; + } + + TMP_GlyphValueRecord GetValueRecord(SerializedProperty property) + { + TMP_GlyphValueRecord record = new TMP_GlyphValueRecord(); + record.xPlacement = property.FindPropertyRelative("m_XPlacement").floatValue; + record.yPlacement = property.FindPropertyRelative("m_YPlacement").floatValue; + record.xAdvance = property.FindPropertyRelative("m_XAdvance").floatValue; + record.yAdvance = property.FindPropertyRelative("m_YAdvance").floatValue; + + return record; + } + + void RemoveAdjustmentPairFromList(int index) + { + if (index > m_GlyphPairAdjustmentRecords_prop.arraySize) + return; + + m_GlyphPairAdjustmentRecords_prop.DeleteArrayElementAtIndex(index); + + serializedObject.ApplyModifiedProperties(); + + m_fontAsset.ReadFontAssetDefinition(); + } + + /// + /// + /// + /// + /// + void CopyGlyphSerializedProperty(SerializedProperty srcGlyph, ref SerializedProperty dstGlyph) + { + // TODO : Should make a generic function which copies each of the properties. + dstGlyph.FindPropertyRelative("m_Index").intValue = srcGlyph.FindPropertyRelative("m_Index").intValue; + + // Glyph -> GlyphMetrics + SerializedProperty srcGlyphMetrics = srcGlyph.FindPropertyRelative("m_Metrics"); + SerializedProperty dstGlyphMetrics = dstGlyph.FindPropertyRelative("m_Metrics"); + + dstGlyphMetrics.FindPropertyRelative("m_Width").floatValue = srcGlyphMetrics.FindPropertyRelative("m_Width").floatValue; + dstGlyphMetrics.FindPropertyRelative("m_Height").floatValue = srcGlyphMetrics.FindPropertyRelative("m_Height").floatValue; + dstGlyphMetrics.FindPropertyRelative("m_HorizontalBearingX").floatValue = srcGlyphMetrics.FindPropertyRelative("m_HorizontalBearingX").floatValue; + dstGlyphMetrics.FindPropertyRelative("m_HorizontalBearingY").floatValue = srcGlyphMetrics.FindPropertyRelative("m_HorizontalBearingY").floatValue; + dstGlyphMetrics.FindPropertyRelative("m_HorizontalAdvance").floatValue = srcGlyphMetrics.FindPropertyRelative("m_HorizontalAdvance").floatValue; + + // Glyph -> GlyphRect + SerializedProperty srcGlyphRect = srcGlyph.FindPropertyRelative("m_GlyphRect"); + SerializedProperty dstGlyphRect = dstGlyph.FindPropertyRelative("m_GlyphRect"); + + dstGlyphRect.FindPropertyRelative("m_X").intValue = srcGlyphRect.FindPropertyRelative("m_X").intValue; + dstGlyphRect.FindPropertyRelative("m_Y").intValue = srcGlyphRect.FindPropertyRelative("m_Y").intValue; + dstGlyphRect.FindPropertyRelative("m_Width").intValue = srcGlyphRect.FindPropertyRelative("m_Width").intValue; + dstGlyphRect.FindPropertyRelative("m_Height").intValue = srcGlyphRect.FindPropertyRelative("m_Height").intValue; + + dstGlyph.FindPropertyRelative("m_Scale").floatValue = srcGlyph.FindPropertyRelative("m_Scale").floatValue; + dstGlyph.FindPropertyRelative("m_AtlasIndex").intValue = srcGlyph.FindPropertyRelative("m_AtlasIndex").intValue; + } + + + void CopyCharacterSerializedProperty(SerializedProperty source, ref SerializedProperty target) + { + // TODO : Should make a generic function which copies each of the properties. + int unicode = source.FindPropertyRelative("m_Unicode").intValue; + target.FindPropertyRelative("m_Unicode").intValue = unicode; + + int srcGlyphIndex = source.FindPropertyRelative("m_GlyphIndex").intValue; + target.FindPropertyRelative("m_GlyphIndex").intValue = srcGlyphIndex; + + target.FindPropertyRelative("m_Scale").floatValue = source.FindPropertyRelative("m_Scale").floatValue; + } + + + /// + /// + /// + /// + /// + void SearchGlyphTable (string searchPattern, ref List searchResults) + { + if (searchResults == null) searchResults = new List(); + + searchResults.Clear(); + + int arraySize = m_GlyphTable_prop.arraySize; + + for (int i = 0; i < arraySize; i++) + { + SerializedProperty sourceGlyph = m_GlyphTable_prop.GetArrayElementAtIndex(i); + + int id = sourceGlyph.FindPropertyRelative("m_Index").intValue; + + // Check for potential match against a character. + //if (searchPattern.Length == 1 && id == searchPattern[0]) + // searchResults.Add(i); + + // Check for potential match against decimal id + if (id.ToString().Contains(searchPattern)) + searchResults.Add(i); + + //if (id.ToString("x").Contains(searchPattern)) + // searchResults.Add(i); + + //if (id.ToString("X").Contains(searchPattern)) + // searchResults.Add(i); + } + } + + + void SearchCharacterTable(string searchPattern, ref List searchResults) + { + if (searchResults == null) searchResults = new List(); + + searchResults.Clear(); + + int arraySize = m_CharacterTable_prop.arraySize; + + for (int i = 0; i < arraySize; i++) + { + SerializedProperty sourceCharacter = m_CharacterTable_prop.GetArrayElementAtIndex(i); + + int id = sourceCharacter.FindPropertyRelative("m_Unicode").intValue; + + // Check for potential match against a character. + if (searchPattern.Length == 1 && id == searchPattern[0]) + searchResults.Add(i); + else if (id.ToString("x").Contains(searchPattern)) + searchResults.Add(i); + else if (id.ToString("X").Contains(searchPattern)) + searchResults.Add(i); + + // Check for potential match against decimal id + //if (id.ToString().Contains(searchPattern)) + // searchResults.Add(i); + } + } + + + void SearchKerningTable(string searchPattern, ref List searchResults) + { + if (searchResults == null) searchResults = new List(); + + searchResults.Clear(); + + // Lookup glyph index of potential characters contained in the search pattern. + uint firstGlyphIndex = 0; + if (searchPattern.Length > 0 && m_fontAsset.characterLookupTable.TryGetValue(searchPattern[0], out TMP_Character firstCharacterSearch)) + firstGlyphIndex = firstCharacterSearch.glyphIndex; + + uint secondGlyphIndex = 0; + if (searchPattern.Length > 1 && m_fontAsset.characterLookupTable.TryGetValue(searchPattern[1], out TMP_Character secondCharacterSearch)) + secondGlyphIndex = secondCharacterSearch.glyphIndex; + + int arraySize = m_GlyphPairAdjustmentRecords_prop.arraySize; + + for (int i = 0; i < arraySize; i++) + { + SerializedProperty record = m_GlyphPairAdjustmentRecords_prop.GetArrayElementAtIndex(i); + + SerializedProperty firstAdjustmentRecord = record.FindPropertyRelative("m_FirstAdjustmentRecord"); + SerializedProperty secondAdjustmentRecord = record.FindPropertyRelative("m_SecondAdjustmentRecord"); + + int firstGlyph = firstAdjustmentRecord.FindPropertyRelative("m_GlyphIndex").intValue; + int secondGlyph = secondAdjustmentRecord.FindPropertyRelative("m_GlyphIndex").intValue; + + if (firstGlyphIndex == firstGlyph && secondGlyphIndex == secondGlyph) + searchResults.Add(i); + else if (searchPattern.Length == 1 && (firstGlyphIndex == firstGlyph || firstGlyphIndex == secondGlyph)) + searchResults.Add(i); + else if (firstGlyph.ToString().Contains(searchPattern)) + searchResults.Add(i); + else if (secondGlyph.ToString().Contains(searchPattern)) + searchResults.Add(i); + } + } + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_FontAssetEditor.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_FontAssetEditor.cs.meta new file mode 100644 index 0000000..b243777 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_FontAssetEditor.cs.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 96b44f7d98314b139324a8a87eb66067 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_FontAsset_CreationMenu.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_FontAsset_CreationMenu.cs new file mode 100644 index 0000000..dca6d14 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_FontAsset_CreationMenu.cs @@ -0,0 +1,190 @@ +using UnityEngine; +using UnityEditor; +using System.Linq; +using System.IO; +using System.Collections; +using System.Collections.Generic; +using UnityEngine.TextCore; +using UnityEngine.TextCore.LowLevel; +using TMPro; + + +namespace TMPro +{ + public static class TMP_FontAsset_CreationMenu + { + /* + [MenuItem("Assets/Create/TextMeshPro/Font Asset Fallback", false, 105)] + public static void CreateFallbackFontAsset() + { + Object target = Selection.activeObject; + + // Make sure the selection is a font file + if (target == null || target.GetType() != typeof(TMP_FontAsset)) + { + Debug.LogWarning("A Font file must first be selected in order to create a Font Asset."); + return; + } + + TMP_FontAsset sourceFontAsset = (TMP_FontAsset)target; + + string sourceFontFilePath = AssetDatabase.GetAssetPath(target); + + string folderPath = Path.GetDirectoryName(sourceFontFilePath); + string assetName = Path.GetFileNameWithoutExtension(sourceFontFilePath); + + string newAssetFilePathWithName = AssetDatabase.GenerateUniqueAssetPath(folderPath + "/" + assetName + " - Fallback.asset"); + + //// Create new TM Font Asset. + TMP_FontAsset fontAsset = ScriptableObject.CreateInstance(); + AssetDatabase.CreateAsset(fontAsset, newAssetFilePathWithName); + + fontAsset.version = "1.1.0"; + + fontAsset.faceInfo = sourceFontAsset.faceInfo; + + fontAsset.m_SourceFontFileGUID = sourceFontAsset.m_SourceFontFileGUID; + fontAsset.m_SourceFontFile_EditorRef = sourceFontAsset.m_SourceFontFile_EditorRef; + fontAsset.atlasPopulationMode = TMP_FontAsset.AtlasPopulationMode.Dynamic; + + int atlasWidth = fontAsset.atlasWidth = sourceFontAsset.atlasWidth; + int atlasHeight = fontAsset.atlasHeight = sourceFontAsset.atlasHeight; + int atlasPadding = fontAsset.atlasPadding = sourceFontAsset.atlasPadding; + fontAsset.atlasRenderMode = sourceFontAsset.atlasRenderMode; + + // Initialize array for the font atlas textures. + fontAsset.atlasTextures = new Texture2D[1]; + + // Create and add font atlas texture + Texture2D texture = new Texture2D(atlasWidth, atlasHeight, TextureFormat.Alpha8, false); + Color32[] colors = new Color32[atlasWidth * atlasHeight]; + texture.SetPixels32(colors); + + texture.name = assetName + " Atlas"; + fontAsset.atlasTextures[0] = texture; + AssetDatabase.AddObjectToAsset(texture, fontAsset); + + // Add free rectangle of the size of the texture. + int packingModifier = ((GlyphRasterModes)fontAsset.atlasRenderMode & GlyphRasterModes.RASTER_MODE_BITMAP) == GlyphRasterModes.RASTER_MODE_BITMAP ? 0 : 1; + fontAsset.m_FreeGlyphRects = new List() { new GlyphRect(0, 0, atlasWidth - packingModifier, atlasHeight - packingModifier) }; + fontAsset.m_UsedGlyphRects = new List(); + + // Create new Material and Add it as Sub-Asset + Material tmp_material = new Material(sourceFontAsset.material); + + tmp_material.name = texture.name + " Material"; + tmp_material.SetTexture(ShaderUtilities.ID_MainTex, texture); + tmp_material.SetFloat(ShaderUtilities.ID_TextureWidth, atlasWidth); + tmp_material.SetFloat(ShaderUtilities.ID_TextureHeight, atlasHeight); + + tmp_material.SetFloat(ShaderUtilities.ID_GradientScale, atlasPadding + packingModifier); + + tmp_material.SetFloat(ShaderUtilities.ID_WeightNormal, fontAsset.normalStyle); + tmp_material.SetFloat(ShaderUtilities.ID_WeightBold, fontAsset.boldStyle); + + fontAsset.material = tmp_material; + + AssetDatabase.AddObjectToAsset(tmp_material, fontAsset); + + // Add Font Asset Creation Settings + // TODO + + // Not sure if this is still necessary in newer versions of Unity. + EditorUtility.SetDirty(fontAsset); + + AssetDatabase.SaveAssets(); + } + */ + + //[MenuItem("Assets/Create/TextMeshPro/Font Asset #%F12", true)] + //public static bool CreateFontAssetMenuValidation() + //{ + // return false; + //} + + [MenuItem("Assets/Create/TextMeshPro/Font Asset #%F12", false, 100)] + public static void CreateFontAsset() + { + Object target = Selection.activeObject; + + // Make sure the selection is a font file + if (target == null || target.GetType() != typeof(Font)) + { + Debug.LogWarning("A Font file must first be selected in order to create a Font Asset."); + return; + } + + Font sourceFont = (Font)target; + + string sourceFontFilePath = AssetDatabase.GetAssetPath(target); + + string folderPath = Path.GetDirectoryName(sourceFontFilePath); + string assetName = Path.GetFileNameWithoutExtension(sourceFontFilePath); + + string newAssetFilePathWithName = AssetDatabase.GenerateUniqueAssetPath(folderPath + "/" + assetName + " SDF.asset"); + + //// Create new TM Font Asset. + TMP_FontAsset fontAsset = ScriptableObject.CreateInstance(); + AssetDatabase.CreateAsset(fontAsset, newAssetFilePathWithName); + + fontAsset.version = "1.1.0"; + + // Set face information + FontEngine.InitializeFontEngine(); + FontEngine.LoadFontFace(sourceFont, 90); + fontAsset.faceInfo = FontEngine.GetFaceInfo(); + + // Set font reference and GUID + fontAsset.m_SourceFontFileGUID = AssetDatabase.AssetPathToGUID(sourceFontFilePath); + fontAsset.m_SourceFontFile_EditorRef = sourceFont; + fontAsset.atlasPopulationMode = AtlasPopulationMode.Dynamic; + + // Default atlas resolution is 1024 x 1024. + int atlasWidth = fontAsset.atlasWidth = 1024; + int atlasHeight = fontAsset.atlasHeight = 1024; + int atlasPadding = fontAsset.atlasPadding = 9; + fontAsset.atlasRenderMode = GlyphRenderMode.SDFAA; + + // Initialize array for the font atlas textures. + fontAsset.atlasTextures = new Texture2D[1]; + + // Create atlas texture of size zero. + Texture2D texture = new Texture2D(0, 0, TextureFormat.Alpha8, false); + + texture.name = assetName + " Atlas"; + fontAsset.atlasTextures[0] = texture; + AssetDatabase.AddObjectToAsset(texture, fontAsset); + + // Add free rectangle of the size of the texture. + int packingModifier = ((GlyphRasterModes)fontAsset.atlasRenderMode & GlyphRasterModes.RASTER_MODE_BITMAP) == GlyphRasterModes.RASTER_MODE_BITMAP ? 0 : 1; + fontAsset.freeGlyphRects = new List() { new GlyphRect(0, 0, atlasWidth - packingModifier, atlasHeight - packingModifier) }; + fontAsset.usedGlyphRects = new List(); + + // Create new Material and Add it as Sub-Asset + Shader default_Shader = Shader.Find("TextMeshPro/Distance Field"); + Material tmp_material = new Material(default_Shader); + + tmp_material.name = texture.name + " Material"; + tmp_material.SetTexture(ShaderUtilities.ID_MainTex, texture); + tmp_material.SetFloat(ShaderUtilities.ID_TextureWidth, atlasWidth); + tmp_material.SetFloat(ShaderUtilities.ID_TextureHeight, atlasHeight); + + tmp_material.SetFloat(ShaderUtilities.ID_GradientScale, atlasPadding + packingModifier); + + tmp_material.SetFloat(ShaderUtilities.ID_WeightNormal, fontAsset.normalStyle); + tmp_material.SetFloat(ShaderUtilities.ID_WeightBold, fontAsset.boldStyle); + + fontAsset.material = tmp_material; + + AssetDatabase.AddObjectToAsset(tmp_material, fontAsset); + + // Add Font Asset Creation Settings + fontAsset.creationSettings = new FontAssetCreationSettings(fontAsset.m_SourceFontFileGUID, fontAsset.faceInfo.pointSize, 0, atlasPadding, 0, 1024, 1024, 7, string.Empty, (int)GlyphRenderMode.SDFAA); + + // Not sure if this is still necessary in newer versions of Unity. + EditorUtility.SetDirty(fontAsset); + + AssetDatabase.SaveAssets(); + } + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_FontAsset_CreationMenu.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_FontAsset_CreationMenu.cs.meta new file mode 100644 index 0000000..ade7a84 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_FontAsset_CreationMenu.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7496af95dfe67cf429ac65edaaf99106 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_GlyphPairAdjustmentRecordPropertyDrawer.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_GlyphPairAdjustmentRecordPropertyDrawer.cs new file mode 100644 index 0000000..1ea8e80 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_GlyphPairAdjustmentRecordPropertyDrawer.cs @@ -0,0 +1,382 @@ +using UnityEngine; +using UnityEngine.TextCore; +using UnityEngine.TextCore.LowLevel; +using UnityEditor; +using System.Collections; +using System.Text.RegularExpressions; + + +namespace TMPro.EditorUtilities +{ + + [CustomPropertyDrawer(typeof(TMP_GlyphPairAdjustmentRecord))] + public class TMP_GlyphPairAdjustmentRecordPropertyDrawer : PropertyDrawer + { + private bool isEditingEnabled = false; + private bool isSelectable = false; + + private string m_FirstCharacter = string.Empty; + private string m_SecondCharacter = string.Empty; + private string m_PreviousInput; + + static GUIContent s_CharacterTextFieldLabel = new GUIContent("Char:", "Enter the character or its UTF16 or UTF32 Unicode character escape sequence. For UTF16 use \"\\uFF00\" and for UTF32 use \"\\UFF00FF00\" representation."); + + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + SerializedProperty prop_FirstAdjustmentRecord = property.FindPropertyRelative("m_FirstAdjustmentRecord"); + SerializedProperty prop_SecondAdjustmentRecord = property.FindPropertyRelative("m_SecondAdjustmentRecord"); + + SerializedProperty prop_FirstGlyphIndex = prop_FirstAdjustmentRecord.FindPropertyRelative("m_GlyphIndex"); + SerializedProperty prop_FirstGlyphValueRecord = prop_FirstAdjustmentRecord.FindPropertyRelative("m_GlyphValueRecord"); + + SerializedProperty prop_SecondGlyphIndex = prop_SecondAdjustmentRecord.FindPropertyRelative("m_GlyphIndex"); + SerializedProperty prop_SecondGlyphValueRecord = prop_SecondAdjustmentRecord.FindPropertyRelative("m_GlyphValueRecord"); + + SerializedProperty prop_FontFeatureLookupFlags = property.FindPropertyRelative("m_FeatureLookupFlags"); + + position.yMin += 2; + + float width = position.width / 2; + float padding = 5.0f; + + Rect rect; + + isEditingEnabled = GUI.enabled; + isSelectable = label.text == "Selectable" ? true : false; + + if (isSelectable) + GUILayoutUtility.GetRect(position.width, 75); + else + GUILayoutUtility.GetRect(position.width, 55); + + GUIStyle style = new GUIStyle(EditorStyles.label); + style.richText = true; + + // First Glyph + GUI.enabled = isEditingEnabled; + if (isSelectable) + { + rect = new Rect(position.x + 70, position.y, position.width, 49); + + float labelWidth = GUI.skin.label.CalcSize(new GUIContent("ID: " + prop_FirstGlyphIndex.intValue)).x; + EditorGUI.LabelField(new Rect(position.x + (64 - labelWidth) / 2, position.y + 60, 64f, 18f), new GUIContent("ID: " + prop_FirstGlyphIndex.intValue + ""), style); + + GUI.enabled = isEditingEnabled; + EditorGUIUtility.labelWidth = 30f; + + rect = new Rect(position.x + 70, position.y + 10, (width - 70) - padding, 18); + EditorGUI.PropertyField(rect, prop_FirstGlyphValueRecord.FindPropertyRelative("m_XPlacement"), new GUIContent("OX:")); + + rect.y += 20; + EditorGUI.PropertyField(rect, prop_FirstGlyphValueRecord.FindPropertyRelative("m_YPlacement"), new GUIContent("OY:")); + + rect.y += 20; + EditorGUI.PropertyField(rect, prop_FirstGlyphValueRecord.FindPropertyRelative("m_XAdvance"), new GUIContent("AX:")); + + //rect.y += 20; + //EditorGUI.PropertyField(rect, prop_FirstGlyphValueRecord.FindPropertyRelative("m_YAdvance"), new GUIContent("AY:")); + + DrawGlyph((uint)prop_FirstGlyphIndex.intValue, new Rect(position.x, position.y, position.width, position.height), property); + } + else + { + rect = new Rect(position.x, position.y, width / 2 * 0.8f - padding, 18); + EditorGUIUtility.labelWidth = 40f; + + // First Character Lookup + GUI.SetNextControlName("FirstCharacterField"); + EditorGUI.BeginChangeCheck(); + string firstCharacter = EditorGUI.TextField(rect, s_CharacterTextFieldLabel, m_FirstCharacter); + + if (GUI.GetNameOfFocusedControl() == "FirstCharacterField") + { + if (ValidateInput(firstCharacter)) + { + //Debug.Log("1st Unicode value: [" + firstCharacter + "]"); + + uint unicode = GetUnicodeCharacter(firstCharacter); + + // Lookup glyph index + TMP_SerializedPropertyHolder propertyHolder = property.serializedObject.targetObject as TMP_SerializedPropertyHolder; + TMP_FontAsset fontAsset = propertyHolder.fontAsset; + if (fontAsset != null) + { + prop_FirstGlyphIndex.intValue = (int)fontAsset.GetGlyphIndex(unicode); + propertyHolder.firstCharacter = unicode; + } + } + } + + if (EditorGUI.EndChangeCheck()) + m_FirstCharacter = firstCharacter; + + // First Glyph Index + rect.x += width / 2 * 0.8f; + + EditorGUIUtility.labelWidth = 25f; + EditorGUI.BeginChangeCheck(); + EditorGUI.PropertyField(rect, prop_FirstGlyphIndex, new GUIContent("ID:")); + if (EditorGUI.EndChangeCheck()) + { + + } + + GUI.enabled = isEditingEnabled; + EditorGUIUtility.labelWidth = 25f; + + rect = new Rect(position.x, position.y + 20, width * 0.5f - padding, 18); + EditorGUI.PropertyField(rect, prop_FirstGlyphValueRecord.FindPropertyRelative("m_XPlacement"), new GUIContent("OX")); + + rect.x += width * 0.5f; + EditorGUI.PropertyField(rect, prop_FirstGlyphValueRecord.FindPropertyRelative("m_YPlacement"), new GUIContent("OY")); + + rect.x = position.x; + rect.y += 20; + EditorGUI.PropertyField(rect, prop_FirstGlyphValueRecord.FindPropertyRelative("m_XAdvance"), new GUIContent("AX")); + + //rect.x += width * 0.5f; + //EditorGUI.PropertyField(rect, prop_FirstGlyphAdjustment.FindPropertyRelative("m_YAdvance"), new GUIContent("AY")); + + } + + + // Second Glyph + GUI.enabled = isEditingEnabled; + if (isSelectable) + { + float labelWidth = GUI.skin.label.CalcSize(new GUIContent("ID: " + prop_SecondGlyphIndex.intValue)).x; + EditorGUI.LabelField(new Rect(position.width / 2 + 20 + (64 - labelWidth) / 2, position.y + 60, 64f, 18f), new GUIContent("ID: " + prop_SecondGlyphIndex.intValue + ""), style); + + GUI.enabled = isEditingEnabled; + EditorGUIUtility.labelWidth = 30f; + + rect = new Rect(position.width / 2 + 20 + 70, position.y + 10, (width - 70) - padding, 18); + EditorGUI.PropertyField(rect, prop_SecondGlyphValueRecord.FindPropertyRelative("m_XPlacement"), new GUIContent("OX:")); + + rect.y += 20; + EditorGUI.PropertyField(rect, prop_SecondGlyphValueRecord.FindPropertyRelative("m_YPlacement"), new GUIContent("OY:")); + + rect.y += 20; + EditorGUI.PropertyField(rect, prop_SecondGlyphValueRecord.FindPropertyRelative("m_XAdvance"), new GUIContent("AX:")); + + //rect.y += 20; + //EditorGUI.PropertyField(rect, prop_SecondGlyphAdjustment.FindPropertyRelative("m_YAdvance"), new GUIContent("AY")); + + DrawGlyph((uint)prop_SecondGlyphIndex.intValue, new Rect(position.width / 2 + 20, position.y, position.width, position.height), property); + } + else + { + rect = new Rect(position.width / 2 + 20, position.y, width / 2 * 0.8f - padding, 18); + EditorGUIUtility.labelWidth = 40f; + + // Second Character Lookup + GUI.SetNextControlName("SecondCharacterField"); + EditorGUI.BeginChangeCheck(); + string secondCharacter = EditorGUI.TextField(rect, s_CharacterTextFieldLabel, m_SecondCharacter); + + if (GUI.GetNameOfFocusedControl() == "SecondCharacterField") + { + if (ValidateInput(secondCharacter)) + { + //Debug.Log("2nd Unicode value: [" + secondCharacter + "]"); + + uint unicode = GetUnicodeCharacter(secondCharacter); + + // Lookup glyph index + TMP_SerializedPropertyHolder propertyHolder = property.serializedObject.targetObject as TMP_SerializedPropertyHolder; + TMP_FontAsset fontAsset = propertyHolder.fontAsset; + if (fontAsset != null) + { + prop_SecondGlyphIndex.intValue = (int)fontAsset.GetGlyphIndex(unicode); + propertyHolder.secondCharacter = unicode; + } + } + } + + if (EditorGUI.EndChangeCheck()) + m_SecondCharacter = secondCharacter; + + // Second Glyph Index + rect.x += width / 2 * 0.8f; + + EditorGUIUtility.labelWidth = 25f; + EditorGUI.BeginChangeCheck(); + EditorGUI.PropertyField(rect, prop_SecondGlyphIndex, new GUIContent("ID:")); + if (EditorGUI.EndChangeCheck()) + { + + } + + GUI.enabled = isEditingEnabled; + EditorGUIUtility.labelWidth = 25f; + + rect = new Rect(position.width / 2 + 20, position.y + 20, width * 0.5f - padding, 18); + EditorGUI.PropertyField(rect, prop_SecondGlyphValueRecord.FindPropertyRelative("m_XPlacement"), new GUIContent("OX")); + + rect.x += width * 0.5f; + EditorGUI.PropertyField(rect, prop_SecondGlyphValueRecord.FindPropertyRelative("m_YPlacement"), new GUIContent("OY")); + + rect.x = position.width / 2 + 20; + rect.y += 20; + EditorGUI.PropertyField(rect, prop_SecondGlyphValueRecord.FindPropertyRelative("m_XAdvance"), new GUIContent("AX")); + + //rect.x += width * 0.5f; + //EditorGUI.PropertyField(rect, prop_SecondGlyphAdjustment.FindPropertyRelative("m_YAdvance"), new GUIContent("AY")); + } + + // Font Feature Lookup Flags + if (isSelectable) + { + EditorGUIUtility.labelWidth = 55f; + + rect.x = position.width - 255; + rect.y += 23; + rect.width = 270; // width - 70 - padding; + + FontFeatureLookupFlags flags = (FontFeatureLookupFlags)prop_FontFeatureLookupFlags.intValue; + + EditorGUI.BeginChangeCheck(); + flags = (FontFeatureLookupFlags)EditorGUI.EnumFlagsField(rect, new GUIContent("Options:"), flags); + if (EditorGUI.EndChangeCheck()) + { + prop_FontFeatureLookupFlags.intValue = (int)flags; + } + } + + } + + bool ValidateInput(string source) + { + int length = string.IsNullOrEmpty(source) ? 0 : source.Length; + + ////Filter out unwanted characters. + Event evt = Event.current; + + char c = evt.character; + + if (c != '\0') + { + switch (length) + { + case 0: + break; + case 1: + if (source != m_PreviousInput) + return true; + + if ((source[0] == '\\' && (c == 'u' || c == 'U')) == false) + evt.character = '\0'; + + break; + case 2: + case 3: + case 4: + case 5: + if ((c < '0' || c > '9') && (c < 'a' || c > 'f') && (c < 'A' || c > 'F')) + evt.character = '\0'; + break; + case 6: + case 7: + case 8: + case 9: + if (source[1] == 'u' || (c < '0' || c > '9') && (c < 'a' || c > 'f') && (c < 'A' || c > 'F')) + evt.character = '\0'; + + // Validate input + if (length == 6 && source[1] == 'u' && source != m_PreviousInput) + return true; + break; + case 10: + if (source != m_PreviousInput) + return true; + + evt.character = '\0'; + break; + } + } + + m_PreviousInput = source; + + return false; + } + + uint GetUnicodeCharacter (string source) + { + uint unicode; + + if (source.Length == 1) + unicode = source[0]; + else if (source.Length == 6) + unicode = (uint)TMP_TextUtilities.StringHexToInt(source.Replace("\\u", "")); + else + unicode = (uint)TMP_TextUtilities.StringHexToInt(source.Replace("\\U", "")); + + return unicode; + } + + void DrawGlyph(uint glyphIndex, Rect position, SerializedProperty property) + { + // Get a reference to the sprite texture + TMP_FontAsset fontAsset = property.serializedObject.targetObject as TMP_FontAsset; + + if (fontAsset == null) + return; + + // Check if glyph currently exists in the atlas texture. + if (!fontAsset.glyphLookupTable.TryGetValue(glyphIndex, out Glyph glyph)) + return; + + // Get reference to atlas texture. + int atlasIndex = fontAsset.m_AtlasTextureIndex; + Texture2D atlasTexture = fontAsset.atlasTextures.Length > atlasIndex ? fontAsset.atlasTextures[atlasIndex] : null; + + if (atlasTexture == null) + return; + + Material mat; + if (((GlyphRasterModes)fontAsset.atlasRenderMode & GlyphRasterModes.RASTER_MODE_BITMAP) == GlyphRasterModes.RASTER_MODE_BITMAP) + { + mat = TMP_FontAssetEditor.internalBitmapMaterial; + + if (mat == null) + return; + + mat.mainTexture = atlasTexture; + } + else + { + mat = TMP_FontAssetEditor.internalSDFMaterial; + + if (mat == null) + return; + + mat.mainTexture = atlasTexture; + mat.SetFloat(ShaderUtilities.ID_GradientScale, fontAsset.atlasPadding + 1); + } + + // Draw glyph from atlas texture. + Rect glyphDrawPosition = new Rect(position.x, position.y + 2, 64, 60); + + GlyphRect glyphRect = glyph.glyphRect; + + float normalizedHeight = fontAsset.faceInfo.ascentLine - fontAsset.faceInfo.descentLine; + float scale = glyphDrawPosition.width / normalizedHeight; + + // Compute the normalized texture coordinates + Rect texCoords = new Rect((float)glyphRect.x / atlasTexture.width, (float)glyphRect.y / atlasTexture.height, (float)glyphRect.width / atlasTexture.width, (float)glyphRect.height / atlasTexture.height); + + if (Event.current.type == EventType.Repaint) + { + glyphDrawPosition.x += (glyphDrawPosition.width - glyphRect.width * scale) / 2; + glyphDrawPosition.y += (glyphDrawPosition.height - glyphRect.height * scale) / 2; + glyphDrawPosition.width = glyphRect.width * scale; + glyphDrawPosition.height = glyphRect.height * scale; + + // Could switch to using the default material of the font asset which would require passing scale to the shader. + Graphics.DrawTexture(glyphDrawPosition, atlasTexture, texCoords, 0, 0, 0, 0, new Color(1f, 1f, 1f), mat); + } + } + + + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_GlyphPairAdjustmentRecordPropertyDrawer.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_GlyphPairAdjustmentRecordPropertyDrawer.cs.meta new file mode 100644 index 0000000..d79c389 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_GlyphPairAdjustmentRecordPropertyDrawer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d256fa541faf5d4409992c631adb98a1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_GlyphPropertyDrawer.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_GlyphPropertyDrawer.cs new file mode 100644 index 0000000..c4d0dcf --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_GlyphPropertyDrawer.cs @@ -0,0 +1,118 @@ + using UnityEngine; +using UnityEngine.TextCore; +using UnityEngine.TextCore.LowLevel; +using UnityEditor; +using System.Collections; + + +namespace TMPro.EditorUtilities +{ + + [CustomPropertyDrawer(typeof(Glyph))] + public class TMP_GlyphPropertyDrawer : PropertyDrawer + { + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + SerializedProperty prop_GlyphIndex = property.FindPropertyRelative("m_Index"); + SerializedProperty prop_GlyphMetrics = property.FindPropertyRelative("m_Metrics"); + SerializedProperty prop_GlyphRect = property.FindPropertyRelative("m_GlyphRect"); + SerializedProperty prop_Scale = property.FindPropertyRelative("m_Scale"); + SerializedProperty prop_AtlasIndex = property.FindPropertyRelative("m_AtlasIndex"); + + GUIStyle style = new GUIStyle(EditorStyles.label); + style.richText = true; + + Rect rect = new Rect(position.x + 70, position.y, position.width, 49); + + float labelWidth = GUI.skin.label.CalcSize(new GUIContent("ID: " + prop_GlyphIndex.intValue)).x; + EditorGUI.LabelField(new Rect(position.x + (64 - labelWidth) / 2, position.y + 85, 64f, 18f), new GUIContent("ID: " + prop_GlyphIndex.intValue + ""), style); + //EditorGUIUtility.labelWidth = 22f; + //EditorGUI.DelayedIntField(new Rect(position.x + (64 - labelWidth) / 2, position.y + 89, 58f, 18f), prop_GlyphIndex, new GUIContent("ID:")); + + // We get Rect since a valid position may not be provided by the caller. + EditorGUI.PropertyField(new Rect(rect.x, rect.y, position.width, 49), prop_GlyphRect); + + rect.y += 45; + EditorGUI.PropertyField(rect, prop_GlyphMetrics); + + EditorGUIUtility.labelWidth = 40f; + EditorGUI.PropertyField(new Rect(rect.x, rect.y + 65, 75, 18), prop_Scale, new GUIContent("Scale:")); // new GUIContent("Scale: " + prop_Scale.floatValue + ""), style); + + EditorGUIUtility.labelWidth = 74f; + EditorGUI.PropertyField(new Rect(rect.x + 85, rect.y + 65, 95, 18), prop_AtlasIndex, new GUIContent("Atlas Index:")); // new GUIContent("Atlas Index: " + prop_AtlasIndex.intValue + ""), style); + + DrawGlyph(position, property); + } + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + return 130f; + } + + void DrawGlyph(Rect position, SerializedProperty property) + { + // Get a reference to the sprite texture + TMP_FontAsset fontAsset = property.serializedObject.targetObject as TMP_FontAsset; + + if (fontAsset == null) + return; + + // Get reference to atlas texture. + int atlasIndex = property.FindPropertyRelative("m_AtlasIndex").intValue; + Texture2D atlasTexture = fontAsset.atlasTextures.Length > atlasIndex ? fontAsset.atlasTextures[atlasIndex] : null; + + if (atlasTexture == null) + return; + + Material mat; + if (((GlyphRasterModes)fontAsset.atlasRenderMode & GlyphRasterModes.RASTER_MODE_BITMAP) == GlyphRasterModes.RASTER_MODE_BITMAP) + { + mat = TMP_FontAssetEditor.internalBitmapMaterial; + + if (mat == null) + return; + + mat.mainTexture = atlasTexture; + mat.SetColor("_Color", Color.white); + } + else + { + mat = TMP_FontAssetEditor.internalSDFMaterial; + + if (mat == null) + return; + + mat.mainTexture = atlasTexture; + mat.SetFloat(ShaderUtilities.ID_GradientScale, fontAsset.atlasPadding + 1); + } + + // Draw glyph from atlas texture. + Rect glyphDrawPosition = new Rect(position.x, position.y + 2, 64, 80); + + SerializedProperty prop_GlyphRect = property.FindPropertyRelative("m_GlyphRect"); + + int glyphOriginX = prop_GlyphRect.FindPropertyRelative("m_X").intValue; + int glyphOriginY = prop_GlyphRect.FindPropertyRelative("m_Y").intValue; + int glyphWidth = prop_GlyphRect.FindPropertyRelative("m_Width").intValue; + int glyphHeight = prop_GlyphRect.FindPropertyRelative("m_Height").intValue; + + float normalizedHeight = fontAsset.faceInfo.ascentLine - fontAsset.faceInfo.descentLine; + float scale = glyphDrawPosition.width / normalizedHeight; + + // Compute the normalized texture coordinates + Rect texCoords = new Rect((float)glyphOriginX / atlasTexture.width, (float)glyphOriginY / atlasTexture.height, (float)glyphWidth / atlasTexture.width, (float)glyphHeight / atlasTexture.height); + + if (Event.current.type == EventType.Repaint) + { + glyphDrawPosition.x += (glyphDrawPosition.width - glyphWidth * scale) / 2; + glyphDrawPosition.y += (glyphDrawPosition.height - glyphHeight * scale) / 2; + glyphDrawPosition.width = glyphWidth * scale; + glyphDrawPosition.height = glyphHeight * scale; + + // Could switch to using the default material of the font asset which would require passing scale to the shader. + Graphics.DrawTexture(glyphDrawPosition, atlasTexture, texCoords, 0, 0, 0, 0, new Color(1f, 1f, 1f), mat); + } + } + + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_GlyphPropertyDrawer.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_GlyphPropertyDrawer.cs.meta new file mode 100644 index 0000000..1b40b11 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_GlyphPropertyDrawer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c4777500b5da6094e956c3d4f04de4db +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_InputFieldEditor.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_InputFieldEditor.cs new file mode 100644 index 0000000..5a7749b --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_InputFieldEditor.cs @@ -0,0 +1,283 @@ +using UnityEngine; +using UnityEngine.UI; +using UnityEditor; +using UnityEditor.UI; +using UnityEditor.AnimatedValues; + + +namespace TMPro.EditorUtilities +{ + [CanEditMultipleObjects] + [CustomEditor(typeof(TMP_InputField), true)] + public class TMP_InputFieldEditor : SelectableEditor + { + private struct m_foldout + { // Track Inspector foldout panel states, globally. + public static bool textInput = true; + public static bool fontSettings = true; + public static bool extraSettings = true; + //public static bool shadowSetting = false; + //public static bool materialEditor = true; + } + + SerializedProperty m_TextViewport; + SerializedProperty m_TextComponent; + SerializedProperty m_Text; + SerializedProperty m_ContentType; + SerializedProperty m_LineType; + SerializedProperty m_LineLimit; + SerializedProperty m_InputType; + SerializedProperty m_CharacterValidation; + SerializedProperty m_InputValidator; + SerializedProperty m_RegexValue; + SerializedProperty m_KeyboardType; + SerializedProperty m_CharacterLimit; + SerializedProperty m_CaretBlinkRate; + SerializedProperty m_CaretWidth; + SerializedProperty m_CaretColor; + SerializedProperty m_CustomCaretColor; + SerializedProperty m_SelectionColor; + SerializedProperty m_HideMobileKeyboard; + SerializedProperty m_HideMobileInput; + SerializedProperty m_Placeholder; + SerializedProperty m_VerticalScrollbar; + SerializedProperty m_ScrollbarScrollSensitivity; + SerializedProperty m_OnValueChanged; + SerializedProperty m_OnEndEdit; + SerializedProperty m_OnSelect; + SerializedProperty m_OnDeselect; + SerializedProperty m_ReadOnly; + SerializedProperty m_RichText; + SerializedProperty m_RichTextEditingAllowed; + SerializedProperty m_ResetOnDeActivation; + SerializedProperty m_RestoreOriginalTextOnEscape; + + SerializedProperty m_OnFocusSelectAll; + SerializedProperty m_GlobalPointSize; + SerializedProperty m_GlobalFontAsset; + + AnimBool m_CustomColor; + + //TMP_InputValidator m_ValidationScript; + + protected override void OnEnable() + { + base.OnEnable(); + + m_TextViewport = serializedObject.FindProperty("m_TextViewport"); + m_TextComponent = serializedObject.FindProperty("m_TextComponent"); + m_Text = serializedObject.FindProperty("m_Text"); + m_ContentType = serializedObject.FindProperty("m_ContentType"); + m_LineType = serializedObject.FindProperty("m_LineType"); + m_LineLimit = serializedObject.FindProperty("m_LineLimit"); + m_InputType = serializedObject.FindProperty("m_InputType"); + m_CharacterValidation = serializedObject.FindProperty("m_CharacterValidation"); + m_InputValidator = serializedObject.FindProperty("m_InputValidator"); + m_RegexValue = serializedObject.FindProperty("m_RegexValue"); + m_KeyboardType = serializedObject.FindProperty("m_KeyboardType"); + m_CharacterLimit = serializedObject.FindProperty("m_CharacterLimit"); + m_CaretBlinkRate = serializedObject.FindProperty("m_CaretBlinkRate"); + m_CaretWidth = serializedObject.FindProperty("m_CaretWidth"); + m_CaretColor = serializedObject.FindProperty("m_CaretColor"); + m_CustomCaretColor = serializedObject.FindProperty("m_CustomCaretColor"); + m_SelectionColor = serializedObject.FindProperty("m_SelectionColor"); + + m_HideMobileKeyboard = serializedObject.FindProperty("m_HideSoftKeyboard"); + m_HideMobileInput = serializedObject.FindProperty("m_HideMobileInput"); + + m_Placeholder = serializedObject.FindProperty("m_Placeholder"); + m_VerticalScrollbar = serializedObject.FindProperty("m_VerticalScrollbar"); + m_ScrollbarScrollSensitivity = serializedObject.FindProperty("m_ScrollSensitivity"); + + m_OnValueChanged = serializedObject.FindProperty("m_OnValueChanged"); + m_OnEndEdit = serializedObject.FindProperty("m_OnEndEdit"); + m_OnSelect = serializedObject.FindProperty("m_OnSelect"); + m_OnDeselect = serializedObject.FindProperty("m_OnDeselect"); + m_ReadOnly = serializedObject.FindProperty("m_ReadOnly"); + m_RichText = serializedObject.FindProperty("m_RichText"); + m_RichTextEditingAllowed = serializedObject.FindProperty("m_isRichTextEditingAllowed"); + m_ResetOnDeActivation = serializedObject.FindProperty("m_ResetOnDeActivation"); + m_RestoreOriginalTextOnEscape = serializedObject.FindProperty("m_RestoreOriginalTextOnEscape"); + + m_OnFocusSelectAll = serializedObject.FindProperty("m_OnFocusSelectAll"); + m_GlobalPointSize = serializedObject.FindProperty("m_GlobalPointSize"); + m_GlobalFontAsset = serializedObject.FindProperty("m_GlobalFontAsset"); + + m_CustomColor = new AnimBool(m_CustomCaretColor.boolValue); + m_CustomColor.valueChanged.AddListener(Repaint); + } + + protected override void OnDisable() + { + base.OnDisable(); + m_CustomColor.valueChanged.RemoveListener(Repaint); + } + + public override void OnInspectorGUI() + { + serializedObject.Update(); + + base.OnInspectorGUI(); + + EditorGUILayout.Space(); + + EditorGUILayout.PropertyField(m_TextViewport); + + EditorGUILayout.PropertyField(m_TextComponent); + + TextMeshProUGUI text = null; + if (m_TextComponent != null && m_TextComponent.objectReferenceValue != null) + { + text = m_TextComponent.objectReferenceValue as TextMeshProUGUI; + //if (text.supportRichText) + //{ + // EditorGUILayout.HelpBox("Using Rich Text with input is unsupported.", MessageType.Warning); + //} + } + + EditorGUI.BeginDisabledGroup(m_TextComponent == null || m_TextComponent.objectReferenceValue == null); + + // TEXT INPUT BOX + EditorGUILayout.PropertyField(m_Text); + + // INPUT FIELD SETTINGS + #region INPUT FIELD SETTINGS + + m_foldout.fontSettings = EditorGUILayout.Foldout(m_foldout.fontSettings, "Input Field Settings", true, TMP_UIStyleManager.boldFoldout); + + if (m_foldout.fontSettings) + { + EditorGUI.indentLevel++; + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(m_GlobalFontAsset, new GUIContent("Font Asset", "Set the Font Asset for both Placeholder and Input Field text object.")); + if (EditorGUI.EndChangeCheck()) + { + TMP_InputField inputField = target as TMP_InputField; + inputField.SetGlobalFontAsset(m_GlobalFontAsset.objectReferenceValue as TMP_FontAsset); + } + + + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(m_GlobalPointSize, new GUIContent("Point Size", "Set the point size of both Placeholder and Input Field text object.")); + if (EditorGUI.EndChangeCheck()) + { + TMP_InputField inputField = target as TMP_InputField; + inputField.SetGlobalPointSize(m_GlobalPointSize.floatValue); + } + + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(m_CharacterLimit); + + EditorGUILayout.Space(); + + EditorGUILayout.PropertyField(m_ContentType); + if (!m_ContentType.hasMultipleDifferentValues) + { + EditorGUI.indentLevel++; + + if (m_ContentType.enumValueIndex == (int)TMP_InputField.ContentType.Standard || + m_ContentType.enumValueIndex == (int)TMP_InputField.ContentType.Autocorrected || + m_ContentType.enumValueIndex == (int)TMP_InputField.ContentType.Custom) + { + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(m_LineType); + if (EditorGUI.EndChangeCheck()) + { + if (text != null) + { + if (m_LineType.enumValueIndex == (int)TMP_InputField.LineType.SingleLine) + text.enableWordWrapping = false; + else + { + text.enableWordWrapping = true; + } + } + } + + if (m_LineType.enumValueIndex != (int)TMP_InputField.LineType.SingleLine) + { + EditorGUILayout.PropertyField(m_LineLimit); + } + } + + if (m_ContentType.enumValueIndex == (int)TMP_InputField.ContentType.Custom) + { + EditorGUILayout.PropertyField(m_InputType); + EditorGUILayout.PropertyField(m_KeyboardType); + EditorGUILayout.PropertyField(m_CharacterValidation); + if (m_CharacterValidation.enumValueIndex == (int)TMP_InputField.CharacterValidation.Regex) + { + EditorGUILayout.PropertyField(m_RegexValue); + } + else if (m_CharacterValidation.enumValueIndex == (int)TMP_InputField.CharacterValidation.CustomValidator) + { + EditorGUILayout.PropertyField(m_InputValidator); + } + } + + EditorGUI.indentLevel--; + } + + EditorGUILayout.Space(); + + EditorGUILayout.PropertyField(m_Placeholder); + EditorGUILayout.PropertyField(m_VerticalScrollbar); + + if (m_VerticalScrollbar.objectReferenceValue != null) + EditorGUILayout.PropertyField(m_ScrollbarScrollSensitivity); + + EditorGUILayout.PropertyField(m_CaretBlinkRate); + EditorGUILayout.PropertyField(m_CaretWidth); + + EditorGUILayout.PropertyField(m_CustomCaretColor); + + m_CustomColor.target = m_CustomCaretColor.boolValue; + + if (EditorGUILayout.BeginFadeGroup(m_CustomColor.faded)) + { + EditorGUILayout.PropertyField(m_CaretColor); + } + EditorGUILayout.EndFadeGroup(); + + EditorGUILayout.PropertyField(m_SelectionColor); + + EditorGUI.indentLevel--; + } + #endregion + + + // CONTROL SETTINGS + #region CONTROL SETTINGS + m_foldout.extraSettings = EditorGUILayout.Foldout(m_foldout.extraSettings, "Control Settings", true, TMP_UIStyleManager.boldFoldout); + + if (m_foldout.extraSettings) + { + EditorGUI.indentLevel++; + + EditorGUILayout.PropertyField(m_OnFocusSelectAll, new GUIContent("OnFocus - Select All", "Should all the text be selected when the Input Field is selected.")); + EditorGUILayout.PropertyField(m_ResetOnDeActivation, new GUIContent("Reset On DeActivation", "Should the Text and Caret position be reset when Input Field is DeActivated.")); + EditorGUILayout.PropertyField(m_RestoreOriginalTextOnEscape, new GUIContent("Restore On ESC Key", "Should the original text be restored when pressing ESC.")); + EditorGUILayout.PropertyField(m_HideMobileKeyboard, new GUIContent("Hide Soft Keyboard", "Controls the visibility of the mobile virtual keyboard.")); + EditorGUILayout.PropertyField(m_HideMobileInput, new GUIContent("Hide Mobile Input", "Controls the visibility of the editable text field above the mobile virtual keyboard. Not supported on all mobile platforms.")); + EditorGUILayout.PropertyField(m_ReadOnly); + EditorGUILayout.PropertyField(m_RichText); + EditorGUILayout.PropertyField(m_RichTextEditingAllowed, new GUIContent("Allow Rich Text Editing")); + + EditorGUI.indentLevel--; + } + #endregion + + + EditorGUILayout.Space(); + + EditorGUILayout.PropertyField(m_OnValueChanged); + EditorGUILayout.PropertyField(m_OnEndEdit); + EditorGUILayout.PropertyField(m_OnSelect); + EditorGUILayout.PropertyField(m_OnDeselect); + + EditorGUI.EndDisabledGroup(); + + serializedObject.ApplyModifiedProperties(); + } + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_InputFieldEditor.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_InputFieldEditor.cs.meta new file mode 100644 index 0000000..9adf20a --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_InputFieldEditor.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: aa160f27c3fe4052a5850e21108811b6 +timeCreated: 1457861621 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_MeshRendererEditor.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_MeshRendererEditor.cs new file mode 100644 index 0000000..984b8cc --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_MeshRendererEditor.cs @@ -0,0 +1,76 @@ +// When enabled, allows setting the material by dropping a material onto the MeshRenderer inspector component. +// The drawback is that the MeshRenderer inspector will not have properties for light probes, so if you need light probe support, do not enable this. +//#define ALLOW_MESHRENDERER_MATERIAL_DRAG_N_DROP + +using UnityEngine; +using UnityEditor; +using System.Collections; + + +namespace TMPro.EditorUtilities +{ + // Disabled for compatibility reason as lightprobe setup isn't supported due to inability to inherit from MeshRendererEditor class +#if ALLOW_MESHRENDERER_MATERIAL_DRAG_N_DROP + [CanEditMultipleObjects] + [CustomEditor(typeof(MeshRenderer))] + public class TMP_MeshRendererEditor : Editor + { + private SerializedProperty m_Materials; + + void OnEnable() + { + m_Materials = serializedObject.FindProperty("m_Materials"); + } + + + public override void OnInspectorGUI() + { + serializedObject.Update(); + + // Get a reference to the current material. + SerializedProperty material_prop = m_Materials.GetArrayElementAtIndex(0); + Material currentMaterial = material_prop.objectReferenceValue as Material; + + EditorGUI.BeginChangeCheck(); + base.OnInspectorGUI(); + if (EditorGUI.EndChangeCheck()) + { + material_prop = m_Materials.GetArrayElementAtIndex(0); + + TMP_FontAsset newFontAsset = null; + Material newMaterial = null; + + if (material_prop != null) + newMaterial = material_prop.objectReferenceValue as Material; + + // Check if the new material is referencing a different font atlas texture. + if (newMaterial != null && currentMaterial.GetInstanceID() != newMaterial.GetInstanceID()) + { + // Search for the Font Asset matching the new font atlas texture. + newFontAsset = TMP_EditorUtility.FindMatchingFontAsset(newMaterial); + } + + + GameObject[] objects = Selection.gameObjects; + + for (int i = 0; i < objects.Length; i++) + { + // Assign new font asset + if (newFontAsset != null) + { + TMP_Text textComponent = objects[i].GetComponent(); + + if (textComponent != null) + { + Undo.RecordObject(textComponent, "Font Asset Change"); + textComponent.font = newFontAsset; + } + } + + TMPro_EventManager.ON_DRAG_AND_DROP_MATERIAL_CHANGED(objects[i], currentMaterial, newMaterial); + } + } + } + } +#endif +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_MeshRendererEditor.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_MeshRendererEditor.cs.meta new file mode 100644 index 0000000..e9b5656 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_MeshRendererEditor.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 6d437b997e074079b4b2f6e395394f4b +timeCreated: 1462864011 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_PackageUtilities.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_PackageUtilities.cs new file mode 100644 index 0000000..dc1beba --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_PackageUtilities.cs @@ -0,0 +1,920 @@ +using UnityEngine; +using UnityEditor; +using System; +using System.IO; +using System.Linq; +using System.Collections; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using TMPro.EditorUtilities; + + +namespace TMPro +{ + /// + /// Data structure containing the target and replacement fileIDs and GUIDs which will require remapping from previous version of TextMesh Pro to the new TextMesh Pro UPM package. + /// + [System.Serializable] + struct AssetConversionRecord + { + public string referencedResource; + public string target; + public string replacement; + } + + + /// + /// Data structure containing a list of target and replacement fileID and GUID requiring remapping from previous versions of TextMesh Pro to the new TextMesh Pro UPM package. + /// This data structure is populated with the data contained in the PackageConversionData.json file included in the package. + /// + [System.Serializable] + class AssetConversionData + { + public List assetRecords; + } + + + public class TMP_ProjectConversionUtility : EditorWindow + { + // Create Sprite Asset Editor Window + [MenuItem("Window/TextMeshPro/Project Files GUID Remapping Tool", false, 2100)] + static void ShowConverterWindow() + { + var window = GetWindow(); + window.titleContent = new GUIContent("Conversion Tool"); + window.Focus(); + } + + private static HashSet m_IgnoreAssetTypes = new HashSet() + { + typeof(AnimatorOverrideController), + typeof(AudioClip), + typeof(AvatarMask), + typeof(ComputeShader), + typeof(Cubemap), + typeof(DefaultAsset), + typeof(Flare), + typeof(Font), + typeof(GUISkin), + typeof(HumanTemplate), + typeof(LightingDataAsset), + typeof(Mesh), + typeof(MonoScript), + typeof(PhysicMaterial), + typeof(PhysicsMaterial2D), + typeof(RenderTexture), + typeof(Shader), + typeof(TerrainData), + typeof(TextAsset), + typeof(Texture2D), + typeof(Texture2DArray), + typeof(Texture3D), + typeof(UnityEditor.Animations.AnimatorController), + typeof(UnityEditorInternal.AssemblyDefinitionAsset), + typeof(UnityEngine.AI.NavMeshData), + typeof(UnityEngine.Tilemaps.Tile), + typeof(UnityEngine.U2D.SpriteAtlas), + typeof(UnityEngine.Video.VideoClip), + }; + + /// + /// + /// + struct AssetModificationRecord + { + public string assetFilePath; + public string assetDataFile; + } + + struct AssetFileRecord + { + public string assetFilePath; + public string assetMetaFilePath; + + public AssetFileRecord(string filePath, string metaFilePath) + { + this.assetFilePath = filePath; + this.assetMetaFilePath = metaFilePath; + } + } + + private static string m_ProjectPath; + private static string m_ProjectFolderToScan; + private static bool m_IsAlreadyScanningProject; + private static bool m_CancelScanProcess; + private static string k_ProjectScanReportDefaultText = "Project Scan Results\n"; + private static string k_ProjectScanLabelPrefix = "Scanning: "; + private static string m_ProjectScanResults = string.Empty; + private static Vector2 m_ProjectScanResultScrollPosition; + private static float m_ProgressPercentage = 0; + + private static int m_ScanningTotalFiles; + private static int m_RemainingFilesToScan; + private static int m_ScanningCurrentFileIndex; + private static string m_ScanningCurrentFileName; + + private static AssetConversionData m_ConversionData; + + private static List m_ModifiedAssetList = new List(); + + + void OnEnable() + { + // Set Editor Window Size + SetEditorWindowSize(); + + m_ProjectScanResults = k_ProjectScanReportDefaultText; + } + + + void OnGUI() + { + GUILayout.BeginVertical(); + { + // Scan project files and resources + GUILayout.BeginVertical(EditorStyles.helpBox); + { + GUILayout.Label("Scan Project Files", EditorStyles.boldLabel); + GUILayout.Label("Press the Scan Project Files button to begin scanning your project for files & resources that were created with a previous version of TextMesh Pro.", TMP_UIStyleManager.label); + GUILayout.Space(10f); + GUILayout.Label("Project folder to be scanned. Example \"Assets/TextMesh Pro\""); + m_ProjectFolderToScan = EditorGUILayout.TextField("Folder Path: Assets/", m_ProjectFolderToScan); + GUILayout.Space(5f); + + GUI.enabled = m_IsAlreadyScanningProject == false ? true : false; + if (GUILayout.Button("Scan Project Files")) + { + m_CancelScanProcess = false; + + // Make sure Asset Serialization mode is set to ForceText and Version Control mode to Visible Meta Files. + if (CheckProjectSerializationAndSourceControlModes() == true) + { + m_ProjectPath = Path.GetFullPath("Assets/.."); + TMP_EditorCoroutine.StartCoroutine(ScanProjectFiles()); + } + else + { + EditorUtility.DisplayDialog("Project Settings Change Required", "In menu options \"Edit - Project Settings - Editor\", please change Asset Serialization Mode to ForceText and Source Control Mode to Visible Meta Files.", "OK", string.Empty); + } + } + GUI.enabled = true; + + // Display progress bar + Rect rect = GUILayoutUtility.GetRect(0f, 20f, GUILayout.ExpandWidth(true)); + EditorGUI.ProgressBar(rect, m_ProgressPercentage, "Scan Progress (" + m_ScanningCurrentFileIndex + "/" + m_ScanningTotalFiles + ")"); + + // Display cancel button and name of file currently being scanned. + if (m_IsAlreadyScanningProject) + { + Rect cancelRect = new Rect(rect.width - 20, rect.y + 2, 20, 16); + if (GUI.Button(cancelRect, "X")) + { + m_CancelScanProcess = true; + } + GUILayout.Label(k_ProjectScanLabelPrefix + m_ScanningCurrentFileName, TMP_UIStyleManager.label); + } + else + GUILayout.Label(string.Empty); + + GUILayout.Space(5); + + // Creation Feedback + GUILayout.BeginVertical(TMP_UIStyleManager.textAreaBoxWindow, GUILayout.ExpandHeight(true)); + { + m_ProjectScanResultScrollPosition = EditorGUILayout.BeginScrollView(m_ProjectScanResultScrollPosition, GUILayout.ExpandHeight(true)); + EditorGUILayout.LabelField(m_ProjectScanResults, TMP_UIStyleManager.label); + EditorGUILayout.EndScrollView(); + } + GUILayout.EndVertical(); + GUILayout.Space(5f); + } + GUILayout.EndVertical(); + + // Scan project files and resources + GUILayout.BeginVertical(EditorStyles.helpBox); + { + GUILayout.Label("Save Modified Project Files", EditorStyles.boldLabel); + GUILayout.Label("Pressing the Save Modified Project Files button will update the files in the Project Scan Results listed above. Please make sure that you have created a backup of your project first as these file modifications are permanent and cannot be undone.", TMP_UIStyleManager.label); + GUILayout.Space(5f); + + GUI.enabled = m_IsAlreadyScanningProject == false && m_ModifiedAssetList.Count > 0 ? true : false; + if (GUILayout.Button("Save Modified Project Files")) + { + UpdateProjectFiles(); + } + GUILayout.Space(10f); + } + GUILayout.EndVertical(); + + } + GUILayout.EndVertical(); + GUILayout.Space(5f); + } + + void OnInspectorUpdate() + { + Repaint(); + } + + + /// + /// Limits the minimum size of the editor window. + /// + void SetEditorWindowSize() + { + EditorWindow editorWindow = this; + + Vector2 currentWindowSize = editorWindow.minSize; + + editorWindow.minSize = new Vector2(Mathf.Max(640, currentWindowSize.x), Mathf.Max(420, currentWindowSize.y)); + } + + + /// + /// + /// + /// + /// + private static bool ShouldIgnoreFile(string filePath) + { + string fileExtension = Path.GetExtension(filePath); + Type fileType = AssetDatabase.GetMainAssetTypeAtPath(filePath); + + if (m_IgnoreAssetTypes.Contains(fileType)) + return true; + + // Exclude FBX + if (fileType == typeof(GameObject) && fileExtension.ToLower() == ".fbx") { return true; } + return false; + } + + + private IEnumerator ScanProjectFiles() + { + m_IsAlreadyScanningProject = true; + string packageFullPath = EditorUtilities.TMP_EditorUtility.packageFullPath; + + // List containing assets that have been modified. + m_ProjectScanResults = k_ProjectScanReportDefaultText; + m_ModifiedAssetList.Clear(); + m_ProgressPercentage = 0; + + // Read Conversion Data from Json file. + if (m_ConversionData == null) + m_ConversionData = JsonUtility.FromJson(File.ReadAllText(packageFullPath + "/PackageConversionData.json")); + + // Get list of GUIDs for assets that might contain references to previous GUIDs that require updating. + string searchFolder = string.IsNullOrEmpty(m_ProjectFolderToScan) ? "Assets" : ("Assets/" + m_ProjectFolderToScan); + string[] guids = AssetDatabase.FindAssets("t:Object", new string[] { searchFolder }).Distinct().ToArray(); + + k_ProjectScanLabelPrefix = "Phase 1 - Filtering: "; + m_ScanningTotalFiles = guids.Length; + m_ScanningCurrentFileIndex = 0; + + List projectFilesToScan = new List(); + + foreach (var guid in guids) + { + if (m_CancelScanProcess) + break; + + string assetFilePath = AssetDatabase.GUIDToAssetPath(guid); + + m_ScanningCurrentFileIndex += 1; + m_ScanningCurrentFileName = assetFilePath; + m_ProgressPercentage = (float)m_ScanningCurrentFileIndex / m_ScanningTotalFiles; + + // Filter out file types we have no interest in searching + if (ShouldIgnoreFile(assetFilePath)) + continue; + + string assetMetaFilePath = AssetDatabase.GetTextMetaFilePathFromAssetPath(assetFilePath); + + projectFilesToScan.Add(new AssetFileRecord(assetFilePath, assetMetaFilePath)); + + yield return null; + } + + m_RemainingFilesToScan = m_ScanningTotalFiles = projectFilesToScan.Count; + + k_ProjectScanLabelPrefix = "Phase 2 - Scanning: "; + + for (int i = 0; i < m_ScanningTotalFiles; i++) + { + if (m_CancelScanProcess) + break; + + AssetFileRecord fileRecord = projectFilesToScan[i]; + + Task.Run(() => + { + ScanProjectFileAsync(fileRecord); + + m_ScanningCurrentFileName = fileRecord.assetFilePath; + + int completedScans = m_ScanningTotalFiles - Interlocked.Decrement(ref m_RemainingFilesToScan); + + m_ScanningCurrentFileIndex = completedScans; + m_ProgressPercentage = (float)completedScans / m_ScanningTotalFiles; + }); + + if (i % 64 == 0) + yield return new WaitForSeconds(2.0f); + + } + + while (m_RemainingFilesToScan > 0 && !m_CancelScanProcess) + yield return null; + + m_IsAlreadyScanningProject = false; + m_ScanningCurrentFileName = string.Empty; + } + + + static void ScanProjectFileAsync(AssetFileRecord fileRecord) + { + if (m_CancelScanProcess) + return; + + // Read the asset data file + string assetDataFile = string.Empty; + bool hasFileChanged = false; + + try + { + assetDataFile = File.ReadAllText(m_ProjectPath + "/" + fileRecord.assetFilePath); + } + catch + { + // Continue to the next asset if we can't read the current one. + return; + } + + // Read the asset meta data file + string assetMetaFile = File.ReadAllText(m_ProjectPath + "/" + fileRecord.assetMetaFilePath); + bool hasMetaFileChanges = false; + + foreach (AssetConversionRecord record in m_ConversionData.assetRecords) + { + if (assetDataFile.Contains(record.target)) + { + hasFileChanged = true; + + assetDataFile = assetDataFile.Replace(record.target, record.replacement); + } + + //// Check meta file + if (assetMetaFile.Contains(record.target)) + { + hasMetaFileChanges = true; + + assetMetaFile = assetMetaFile.Replace(record.target, record.replacement); + } + } + + if (hasFileChanged) + { + AssetModificationRecord modifiedAsset; + modifiedAsset.assetFilePath = fileRecord.assetFilePath; + modifiedAsset.assetDataFile = assetDataFile; + + m_ModifiedAssetList.Add(modifiedAsset); + + m_ProjectScanResults += fileRecord.assetFilePath + "\n"; + } + + if (hasMetaFileChanges) + { + AssetModificationRecord modifiedAsset; + modifiedAsset.assetFilePath = fileRecord.assetMetaFilePath; + modifiedAsset.assetDataFile = assetMetaFile; + + m_ModifiedAssetList.Add(modifiedAsset); + + m_ProjectScanResults += fileRecord.assetMetaFilePath + "\n"; + } + } + + + /// + /// + /// + private static void ResetScanProcess() + { + m_IsAlreadyScanningProject = false; + m_ScanningCurrentFileName = string.Empty; + m_ProgressPercentage = 0; + m_ScanningCurrentFileIndex = 0; + m_ScanningTotalFiles = 0; + } + + + /// + /// + /// + private static void UpdateProjectFiles() + { + // Make sure Asset Serialization mode is set to ForceText with Visible Meta Files. + CheckProjectSerializationAndSourceControlModes(); + + string projectPath = Path.GetFullPath("Assets/.."); + + // Display dialogue to show user a list of project files that will be modified upon their consent. + if (EditorUtility.DisplayDialog("Save Modified Asset(s)?", "Are you sure you want to save all modified assets?", "YES", "NO")) + { + for (int i = 0; i < m_ModifiedAssetList.Count; i++) + { + // Make sure all file streams that might have been opened by Unity are closed. + //AssetDatabase.ReleaseCachedFileHandles(); + + //Debug.Log("Writing asset file [" + m_ModifiedAssetList[i].assetFilePath + "]."); + + File.WriteAllText(projectPath + "/" + m_ModifiedAssetList[i].assetFilePath, m_ModifiedAssetList[i].assetDataFile); + } + } + + AssetDatabase.Refresh(); + + m_ProgressPercentage = 0; + m_ProjectScanResults = k_ProjectScanReportDefaultText; + } + + + /// + /// Check project Asset Serialization and Source Control modes + /// + private static bool CheckProjectSerializationAndSourceControlModes() + { + // Check Project Asset Serialization and Visible Meta Files mode. + if (EditorSettings.serializationMode != SerializationMode.ForceText || EditorSettings.externalVersionControl != "Visible Meta Files") + { + return false; + } + + return true; + } + } + + + + public class TMP_PackageUtilities : Editor + { + + enum SaveAssetDialogueOptions { Unset = 0, Save = 1, SaveAll = 2, DoNotSave = 3 }; + + private static SerializationMode m_ProjectAssetSerializationMode; + private static string m_ProjectExternalVersionControl; + + struct AssetRemappingRecord + { + public string oldGuid; + public string newGuid; + public string assetPath; + } + + struct AssetModificationRecord + { + public string assetFilePath; + public string assetDataFile; + } + + // Create Sprite Asset Editor Window + //[MenuItem("Window/TextMeshPro/Generate New Package GUIDs", false, 1500)] + public static void GenerateNewPackageGUIDs_Menu() + { + GenerateNewPackageGUIDs(); + } + + + /// + /// + /// + [MenuItem("Window/TextMeshPro/Import TMP Essential Resources", false, 2050)] + public static void ImportProjectResourcesMenu() + { + ImportProjectResources(); + } + + + /// + /// + /// + [MenuItem("Window/TextMeshPro/Import TMP Examples and Extras", false, 2051)] + public static void ImportExamplesContentMenu() + { + ImportExtraContent(); + } + + + // Create Sprite Asset Editor Window + //[MenuItem("Window/TextMeshPro/Convert TMP Project Files to UPM", false, 1510)] + public static void ConvertProjectGUIDsMenu() + { + ConvertProjectGUIDsToUPM(); + + //GetVersionInfo(); + } + + + // Create Sprite Asset Editor Window + //[MenuItem("Window/TextMeshPro/Convert GUID (Source to DLL)", false, 2010)] + public static void ConvertGUIDFromSourceToDLLMenu() + { + //ConvertGUIDFromSourceToDLL(); + + //GetVersionInfo(); + } + + + // Create Sprite Asset Editor Window + //[MenuItem("Window/TextMeshPro/Convert GUID (DLL to Source)", false, 2020)] + public static void ConvertGUIDFromDllToSourceMenu() + { + //ConvertGUIDFromDLLToSource(); + + //GetVersionInfo(); + } + + + // Create Sprite Asset Editor Window + //[MenuItem("Window/TextMeshPro/Extract Package GUIDs", false, 1530)] + public static void ExtractPackageGUIDMenu() + { + ExtractPackageGUIDs(); + } + + + private static void GetVersionInfo() + { + string version = TMP_Settings.version; + Debug.Log("The version of this TextMesh Pro UPM package is (" + version + ")."); + } + + + /// + /// + /// + private static void ImportExtraContent() + { + string packageFullPath = EditorUtilities.TMP_EditorUtility.packageFullPath; + + AssetDatabase.ImportPackage(packageFullPath + "/Package Resources/TMP Examples & Extras.unitypackage", true); + } + + + /// + /// + /// + private static void ImportProjectResources() + { + string packageFullPath = EditorUtilities.TMP_EditorUtility.packageFullPath; + + AssetDatabase.ImportPackage(packageFullPath + "/Package Resources/TMP Essential Resources.unitypackage", true); + } + + + /// + /// + /// + private static void GenerateNewPackageGUIDs() + { + // Make sure Asset Serialization mode is set to ForceText with Visible Meta Files. + SetProjectSerializationAndSourceControlModes(); + + string projectPath = Path.GetFullPath("Assets/.."); + + // Clear existing dictionary of AssetRecords + List assetRecords = new List(); + + // Get full list of GUIDs used in the package which including folders. + string[] packageGUIDs = AssetDatabase.FindAssets("t:Object", new string[] { "Assets/Packages/com.unity.TextMeshPro" }); + + for (int i = 0; i < packageGUIDs.Length; i++) + { + // Could add a progress bar for this process (if needed) + + string guid = packageGUIDs[i]; + string assetFilePath = AssetDatabase.GUIDToAssetPath(guid); + string assetMetaFilePath = AssetDatabase.GetTextMetaFilePathFromAssetPath(assetFilePath); + //System.Type assetType = AssetDatabase.GetMainAssetTypeAtPath(assetFilePath); + + AssetRemappingRecord assetRecord; + assetRecord.oldGuid = guid; + assetRecord.assetPath = assetFilePath; + + string newGUID = GenerateUniqueGUID(); + + assetRecord.newGuid = newGUID; + + if (assetRecords.FindIndex(item => item.oldGuid == guid) != -1) + continue; + + assetRecords.Add(assetRecord); + + // Read the meta file for the given asset. + string assetMetaFile = File.ReadAllText(projectPath + "/" + assetMetaFilePath); + + assetMetaFile = assetMetaFile.Replace("guid: " + guid, "guid: " + newGUID); + + File.WriteAllText(projectPath + "/" + assetMetaFilePath, assetMetaFile); + + //Debug.Log("Asset: [" + assetFilePath + "] Type: " + assetType + " Current GUID: [" + guid + "] New GUID: [" + newGUID + "]"); + } + + AssetDatabase.Refresh(); + + // Get list of GUIDs for assets that might need references to previous GUIDs which need to be updated. + packageGUIDs = AssetDatabase.FindAssets("t:Object"); // ("t:Object", new string[] { "Assets/Asset Importer" }); + + for (int i = 0; i < packageGUIDs.Length; i++) + { + // Could add a progress bar for this process + + string guid = packageGUIDs[i]; + string assetFilePath = AssetDatabase.GUIDToAssetPath(guid); + System.Type assetType = AssetDatabase.GetMainAssetTypeAtPath(assetFilePath); + + // Filter out file types we are not interested in + if (assetType == typeof(DefaultAsset) || assetType == typeof(MonoScript) || assetType == typeof(Texture2D) || assetType == typeof(TextAsset) || assetType == typeof(Shader)) + continue; + + // Read the asset data file + string assetDataFile = File.ReadAllText(projectPath + "/" + assetFilePath); + + //Debug.Log("Searching Asset: [" + assetFilePath + "] of type: " + assetType); + + bool hasFileChanged = false; + + foreach (AssetRemappingRecord record in assetRecords) + { + if (assetDataFile.Contains(record.oldGuid)) + { + hasFileChanged = true; + + assetDataFile = assetDataFile.Replace(record.oldGuid, record.newGuid); + + Debug.Log("Replacing old GUID: [" + record.oldGuid + "] by new GUID: [" + record.newGuid + "] in asset file: [" + assetFilePath + "]."); + } + } + + if (hasFileChanged) + { + // Add file to list of changed files + File.WriteAllText(projectPath + "/" + assetFilePath, assetDataFile); + } + + } + + AssetDatabase.Refresh(); + + // Restore project Asset Serialization and Source Control modes. + RestoreProjectSerializationAndSourceControlModes(); + } + + + private static void ExtractPackageGUIDs() + { + // Make sure Asset Serialization mode is set to ForceText with Visible Meta Files. + SetProjectSerializationAndSourceControlModes(); + + string projectPath = Path.GetFullPath("Assets/.."); + + // Create new instance of AssetConversionData file + AssetConversionData data = new AssetConversionData(); + data.assetRecords = new List(); + + // Get full list of GUIDs used in the package which including folders. + string[] packageGUIDs = AssetDatabase.FindAssets("t:Object", new string[] { "Assets/Packages/com.unity.TextMeshPro" }); + + for (int i = 0; i < packageGUIDs.Length; i++) + { + // Could add a progress bar for this process (if needed) + + string guid = packageGUIDs[i]; + string assetFilePath = AssetDatabase.GUIDToAssetPath(guid); + //string assetMetaFilePath = AssetDatabase.GetTextMetaFilePathFromAssetPath(assetFilePath); + + //ObjectIdentifier[] localIdentifider = BundleBuildInterface.GetPlayerObjectIdentifiersInAsset(new GUID(guid), BuildTarget.NoTarget); + //System.Type[] types = BundleBuildInterface.GetTypeForObjects(localIdentifider); + + System.Type assetType = AssetDatabase.GetMainAssetTypeAtPath(assetFilePath); + + // Filter out file types we are not interested in + if (assetType == typeof(DefaultAsset)) + continue; + + string newGuid = GenerateUniqueGUID(); + + AssetConversionRecord record; + record.referencedResource = Path.GetFileName(assetFilePath); + record.target = "fileID: 2108210716, guid: " + newGuid; + + record.replacement = "fileID: 11500000, guid: " + guid; + + //if (m_AssetRecords.FindIndex(item => item.oldGuid == guid) != -1) + // continue; + + data.assetRecords.Add(record); + + // Read the meta file for the given asset. + //string assetMetaFile = File.ReadAllText(projectPath + "/" + assetMetaFilePath); + + //assetMetaFile = assetMetaFile.Replace("guid: " + guid, "guid: " + newGUID); + + //File.WriteAllText(projectPath + "/" + assetMetaFilePath, assetMetaFile); + + Debug.Log("Asset: [" + Path.GetFileName(assetFilePath) + "] Type: " + assetType + " Current GUID: [" + guid + "] New GUID: [" + newGuid + "]"); + } + + // Write new information into JSON file + string dataFile = JsonUtility.ToJson(data, true); + + File.WriteAllText(projectPath + "/Assets/Packages/com.unity.TextMeshPro/PackageConversionData.json", dataFile); + + // Restore project Asset Serialization and Source Control modes. + RestoreProjectSerializationAndSourceControlModes(); + } + + + /// + /// + /// + private static void ConvertProjectGUIDsToUPM() + { + // Make sure Asset Serialization mode is set to ForceText with Visible Meta Files. + SetProjectSerializationAndSourceControlModes(); + + string projectPath = Path.GetFullPath("Assets/.."); + string packageFullPath = EditorUtilities.TMP_EditorUtility.packageFullPath; + + // List containing assets that have been modified. + List modifiedAssetList = new List(); + + // Read Conversion Data from Json file. + AssetConversionData conversionData = JsonUtility.FromJson(File.ReadAllText(packageFullPath + "/PackageConversionData.json")); + + // Get list of GUIDs for assets that might contain references to previous GUIDs that require updating. + string[] projectGUIDs = AssetDatabase.FindAssets("t:Object"); + + for (int i = 0; i < projectGUIDs.Length; i++) + { + // Could add a progress bar for this process + + string guid = projectGUIDs[i]; + string assetFilePath = AssetDatabase.GUIDToAssetPath(guid); + System.Type assetType = AssetDatabase.GetMainAssetTypeAtPath(assetFilePath); + + // Filter out file types we are not interested in + if (assetType == typeof(DefaultAsset) || assetType == typeof(MonoScript) || assetType == typeof(Texture2D) || assetType == typeof(TextAsset) || assetType == typeof(Shader)) + continue; + + // Read the asset data file + string assetDataFile = File.ReadAllText(projectPath + "/" + assetFilePath); + + //Debug.Log("Searching Asset: [" + assetFilePath + "] of type: " + assetType); + + bool hasFileChanged = false; + + foreach (AssetConversionRecord record in conversionData.assetRecords) + { + if (assetDataFile.Contains(record.target)) + { + hasFileChanged = true; + + assetDataFile = assetDataFile.Replace(record.target, record.replacement); + + Debug.Log("Replacing Reference to [" + record.referencedResource + "] using [" + record.target + "] with [" + record.replacement + "] in asset file: [" + assetFilePath + "]."); + } + } + + if (hasFileChanged) + { + Debug.Log("Adding [" + assetFilePath + "] to list of assets to be modified."); + + AssetModificationRecord modifiedAsset; + modifiedAsset.assetFilePath = assetFilePath; + modifiedAsset.assetDataFile = assetDataFile; + + modifiedAssetList.Add(modifiedAsset); + } + + } + + // Scan project meta files to update GUIDs of assets whose GUID has changed. + projectGUIDs = AssetDatabase.FindAssets("t:Object"); + + for (int i = 0; i < projectGUIDs.Length; i++) + { + string guid = projectGUIDs[i]; + string assetFilePath = AssetDatabase.GUIDToAssetPath(guid); + string assetMetaFilePath = AssetDatabase.GetTextMetaFilePathFromAssetPath(assetFilePath); + + // Read the asset meta data file + string assetMetaFile = File.ReadAllText(projectPath + "/" + assetMetaFilePath); + + bool hasFileChanged = false; + + foreach (AssetConversionRecord record in conversionData.assetRecords) + { + if (assetMetaFile.Contains(record.target)) + { + hasFileChanged = true; + + assetMetaFile = assetMetaFile.Replace(record.target, record.replacement); + + Debug.Log("Replacing Reference to [" + record.referencedResource + "] using [" + record.target + "] with [" + record.replacement + "] in asset file: [" + assetMetaFilePath + "]."); + } + } + + if (hasFileChanged) + { + Debug.Log("Adding [" + assetMetaFilePath + "] to list of meta files to be modified."); + + AssetModificationRecord modifiedAsset; + modifiedAsset.assetFilePath = assetMetaFilePath; + modifiedAsset.assetDataFile = assetMetaFile; + + modifiedAssetList.Add(modifiedAsset); + } + } + + // Display dialogue to show user a list of project files that will be modified upon their consent. + if (EditorUtility.DisplayDialog("Save Modified Asset(s)?", "Are you sure you want to save all modified assets?", "YES", "NO")) + { + for (int i = 0; i < modifiedAssetList.Count; i++) + { + // Make sure all file streams that might have been opened by Unity are closed. + //AssetDatabase.ReleaseCachedFileHandles(); + + Debug.Log("Writing asset file [" + modifiedAssetList[i].assetFilePath + "]."); + + //File.WriteAllText(projectPath + "/" + modifiedAssetList[i].assetFilePath, modifiedAssetList[i].assetDataFile); + } + + } + + AssetDatabase.Refresh(); + + // Restore project Asset Serialization and Source Control modes. + RestoreProjectSerializationAndSourceControlModes(); + } + + + /// + /// + /// + /// + private static string GenerateUniqueGUID() + { + string monoGuid = System.Guid.NewGuid().ToString(); + + char[] charGuid = new char[32]; + int index = 0; + for (int i = 0; i < monoGuid.Length; i++) + { + if (monoGuid[i] != '-') + charGuid[index++] = monoGuid[i]; + } + + string guid = new string(charGuid); + + // Make sure new GUID is not already used by some other asset. + if (AssetDatabase.GUIDToAssetPath(guid) != string.Empty) + guid = GenerateUniqueGUID(); + + return guid; + } + + + /// + /// Change project asset serialization mode to ForceText (if necessary) + /// + private static void SetProjectSerializationAndSourceControlModes() + { + // Make sure Asset Serialization mode is set to ForceText with Visible Meta Files. + m_ProjectAssetSerializationMode = EditorSettings.serializationMode; + if (m_ProjectAssetSerializationMode != SerializationMode.ForceText) + UnityEditor.EditorSettings.serializationMode = SerializationMode.ForceText; + + m_ProjectExternalVersionControl = EditorSettings.externalVersionControl; + if (m_ProjectExternalVersionControl != "Visible Meta Files") + UnityEditor.EditorSettings.externalVersionControl = "Visible Meta Files"; + } + + + /// + /// Revert potential change to asset serialization mode (if necessary) + /// + private static void RestoreProjectSerializationAndSourceControlModes() + { + // Make sure Asset Serialization mode is set to ForceText with Visible Meta Files. + if (m_ProjectAssetSerializationMode != EditorSettings.serializationMode) + EditorSettings.serializationMode = m_ProjectAssetSerializationMode; + + if (m_ProjectExternalVersionControl != EditorSettings.externalVersionControl) + EditorSettings.externalVersionControl = m_ProjectExternalVersionControl; + } + + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_PackageUtilities.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_PackageUtilities.cs.meta new file mode 100644 index 0000000..916d326 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_PackageUtilities.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 68eedd4e5b33b37429c02c4add0036fe +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_PostBuildProcessHandler.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_PostBuildProcessHandler.cs new file mode 100644 index 0000000..aacab93 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_PostBuildProcessHandler.cs @@ -0,0 +1,63 @@ +using UnityEngine; +using UnityEditor; +using UnityEditor.Callbacks; +using System.IO; + + +namespace TMPro +{ + public class TMP_PostBuildProcessHandler + { + [PostProcessBuildAttribute(10000)] + public static void OnPostprocessBuild(BuildTarget target, string pathToBuiltProject) + { + // Check if TMP Essential Resource are present in user project. + if (target == BuildTarget.iOS && File.Exists(GetEssentialProjectResourcesPath() + "/Resources/TMP Settings.asset") && TMP_Settings.enableEmojiSupport) + { + string file = Path.Combine(pathToBuiltProject, "Classes/UI/Keyboard.mm"); + string content = File.ReadAllText(file); + content = content.Replace("FILTER_EMOJIS_IOS_KEYBOARD 1", "FILTER_EMOJIS_IOS_KEYBOARD 0"); + File.WriteAllText(file, content); + } + } + + + private static string GetEssentialProjectResourcesPath() + { + // Find the potential location of the TextMesh Pro folder in the user project. + string projectPath = Path.GetFullPath("Assets/.."); + if (Directory.Exists(projectPath)) + { + // Search for default location of TMP Essential Resources + if (Directory.Exists(projectPath + "/Assets/TextMesh Pro/Resources")) + { + return "Assets/TextMesh Pro"; + } + + // Search for potential alternative locations in the user project + string[] matchingPaths = Directory.GetDirectories(projectPath, "TextMesh Pro", SearchOption.AllDirectories); + projectPath = ValidateLocation(matchingPaths, projectPath); + if (projectPath != null) return projectPath; + } + + return null; + } + + + private static string ValidateLocation(string[] paths, string projectPath) + { + for (int i = 0; i < paths.Length; i++) + { + // Check if any of the matching directories contain a GUISkins directory. + if (Directory.Exists(paths[i] + "/Resources")) + { + string folderPath = paths[i].Replace(projectPath, ""); + folderPath = folderPath.TrimStart('\\', '/'); + return folderPath; + } + } + + return null; + } + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_PostBuildProcessHandler.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_PostBuildProcessHandler.cs.meta new file mode 100644 index 0000000..5da0161 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_PostBuildProcessHandler.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 6fdea2af3daa40fe8f88e5e9cfc17abb +timeCreated: 1479886230 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ProjectTextSettings.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ProjectTextSettings.cs new file mode 100644 index 0000000..8a3258b --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ProjectTextSettings.cs @@ -0,0 +1,43 @@ +#if !UNITY_2018_3_OR_NEWER +using UnityEditor; + +namespace TMPro +{ + + public static class TMP_ProjectTextSettings + { + // Open Project Text Settings + [MenuItem("Edit/Project Settings/TextMeshPro Settings", false, 309)] + public static void SelectProjectTextSettings() + { + TMP_Settings textSettings = TMP_Settings.instance; + + if (textSettings) + { + Selection.activeObject = textSettings; + + // TODO: Do we want to ping the Project Text Settings asset in the Project Inspector + EditorUtility.FocusProjectWindow(); + EditorGUIUtility.PingObject(textSettings); + } + else + TMPro_EventManager.RESOURCE_LOAD_EVENT.Add(ON_RESOURCES_LOADED); + } + + + // Event received when TMP resources have been loaded. + static void ON_RESOURCES_LOADED() + { + TMPro_EventManager.RESOURCE_LOAD_EVENT.Remove(ON_RESOURCES_LOADED); + + TMP_Settings textSettings = TMP_Settings.instance; + + Selection.activeObject = textSettings; + + // TODO: Do we want to ping the Project Text Settings asset in the Project Inspector + EditorUtility.FocusProjectWindow(); + EditorGUIUtility.PingObject(textSettings); + } + } +} +#endif \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ProjectTextSettings.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ProjectTextSettings.cs.meta new file mode 100644 index 0000000..403b287 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ProjectTextSettings.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0e751e877ed14d71a6b8e63ac54949cf +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ResourcesLoader.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ResourcesLoader.cs new file mode 100644 index 0000000..16cbd76 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ResourcesLoader.cs @@ -0,0 +1,68 @@ +using UnityEditor; +using UnityEngine; +using System.Collections; + +namespace TMPro.EditorUtilities +{ + + //[InitializeOnLoad] + class TMP_ResourcesLoader + { + + /// + /// Function to pre-load the TMP Resources + /// + public static void LoadTextMeshProResources() + { + //TMP_Settings.LoadDefaultSettings(); + //TMP_StyleSheet.LoadDefaultStyleSheet(); + } + + + static TMP_ResourcesLoader() + { + //Debug.Log("Loading TMP Resources..."); + + // Get current targetted platform + + + //string Settings = PlayerSettings.GetScriptingDefineSymbolsForGroup(BuildTargetGroup.Standalone); + //TMPro.TMP_Settings.LoadDefaultSettings(); + //TMPro.TMP_StyleSheet.LoadDefaultStyleSheet(); + } + + + + //[RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLoad)] + //static void OnBeforeSceneLoaded() + //{ + //Debug.Log("Before scene is loaded."); + + // //TMPro.TMP_Settings.LoadDefaultSettings(); + // //TMPro.TMP_StyleSheet.LoadDefaultStyleSheet(); + + // //ShaderVariantCollection collection = new ShaderVariantCollection(); + // //Shader s0 = Shader.Find("TextMeshPro/Mobile/Distance Field"); + // //ShaderVariantCollection.ShaderVariant tmp_Variant = new ShaderVariantCollection.ShaderVariant(s0, UnityEngine.Rendering.PassType.Normal, string.Empty); + + // //collection.Add(tmp_Variant); + // //collection.WarmUp(); + //} + + } + + //static class TMP_ProjectSettings + //{ + // [InitializeOnLoadMethod] + // static void SetProjectDefineSymbols() + // { + // string currentBuildSettings = PlayerSettings.GetScriptingDefineSymbolsForGroup(EditorUserBuildSettings.selectedBuildTargetGroup); + + // //Check for and inject TMP_INSTALLED + // if (!currentBuildSettings.Contains("TMP_PRESENT")) + // { + // PlayerSettings.SetScriptingDefineSymbolsForGroup(EditorUserBuildSettings.selectedBuildTargetGroup, currentBuildSettings + ";TMP_PRESENT"); + // } + // } + //} +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ResourcesLoader.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ResourcesLoader.cs.meta new file mode 100644 index 0000000..3fd11fb --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_ResourcesLoader.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 7241c7dc25374fc1a6ab3ef9da79c363 +timeCreated: 1465441092 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SDFShaderGUI.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SDFShaderGUI.cs new file mode 100644 index 0000000..22ba616 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SDFShaderGUI.cs @@ -0,0 +1,442 @@ +using UnityEngine; +using UnityEditor; + +namespace TMPro.EditorUtilities +{ + public class TMP_SDFShaderGUI : TMP_BaseShaderGUI + { + static ShaderFeature s_OutlineFeature, s_UnderlayFeature, s_BevelFeature, s_GlowFeature, s_MaskFeature; + + static bool s_Face = true, s_Outline = true, s_Underlay, s_Lighting, s_Glow, s_Bevel, s_Light, s_Bump, s_Env; + + static string[] + s_FaceUvSpeedNames = { "_FaceUVSpeedX", "_FaceUVSpeedY" }, + s_OutlineUvSpeedNames = { "_OutlineUVSpeedX", "_OutlineUVSpeedY" }; + + static TMP_SDFShaderGUI() + { + s_OutlineFeature = new ShaderFeature() + { + undoLabel = "Outline", + keywords = new[] { "OUTLINE_ON" } + }; + + s_UnderlayFeature = new ShaderFeature() + { + undoLabel = "Underlay", + keywords = new[] { "UNDERLAY_ON", "UNDERLAY_INNER" }, + label = new GUIContent("Underlay Type"), + keywordLabels = new[] + { + new GUIContent("None"), new GUIContent("Normal"), new GUIContent("Inner") + } + }; + + s_BevelFeature = new ShaderFeature() + { + undoLabel = "Bevel", + keywords = new[] { "BEVEL_ON" } + }; + + s_GlowFeature = new ShaderFeature() + { + undoLabel = "Glow", + keywords = new[] { "GLOW_ON" } + }; + + s_MaskFeature = new ShaderFeature() + { + undoLabel = "Mask", + keywords = new[] { "MASK_HARD", "MASK_SOFT" }, + label = new GUIContent("Mask"), + keywordLabels = new[] + { + new GUIContent("Mask Off"), new GUIContent("Mask Hard"), new GUIContent("Mask Soft") + } + }; + } + + protected override void DoGUI() + { + s_Face = BeginPanel("Face", s_Face); + if (s_Face) + { + DoFacePanel(); + } + + EndPanel(); + + s_Outline = m_Material.HasProperty(ShaderUtilities.ID_OutlineTex) ? BeginPanel("Outline", s_Outline) : BeginPanel("Outline", s_OutlineFeature, s_Outline); + if (s_Outline) + { + DoOutlinePanel(); + } + + EndPanel(); + + if (m_Material.HasProperty(ShaderUtilities.ID_UnderlayColor)) + { + s_Underlay = BeginPanel("Underlay", s_UnderlayFeature, s_Underlay); + if (s_Underlay) + { + DoUnderlayPanel(); + } + + EndPanel(); + } + + if (m_Material.HasProperty("_SpecularColor")) + { + s_Lighting = BeginPanel("Lighting", s_BevelFeature, s_Lighting); + if (s_Lighting) + { + s_Bevel = BeginPanel("Bevel", s_Bevel); + if (s_Bevel) + { + DoBevelPanel(); + } + + EndPanel(); + + s_Light = BeginPanel("Local Lighting", s_Light); + if (s_Light) + { + DoLocalLightingPanel(); + } + + EndPanel(); + + s_Bump = BeginPanel("Bump Map", s_Bump); + if (s_Bump) + { + DoBumpMapPanel(); + } + + EndPanel(); + + s_Env = BeginPanel("Environment Map", s_Env); + if (s_Env) + { + DoEnvMapPanel(); + } + + EndPanel(); + } + + EndPanel(); + } + else if (m_Material.HasProperty("_SpecColor")) + { + s_Bevel = BeginPanel("Bevel", s_Bevel); + if (s_Bevel) + { + DoBevelPanel(); + } + + EndPanel(); + + s_Light = BeginPanel("Surface Lighting", s_Light); + if (s_Light) + { + DoSurfaceLightingPanel(); + } + + EndPanel(); + + s_Bump = BeginPanel("Bump Map", s_Bump); + if (s_Bump) + { + DoBumpMapPanel(); + } + + EndPanel(); + + s_Env = BeginPanel("Environment Map", s_Env); + if (s_Env) + { + DoEnvMapPanel(); + } + + EndPanel(); + } + + if (m_Material.HasProperty(ShaderUtilities.ID_GlowColor)) + { + s_Glow = BeginPanel("Glow", s_GlowFeature, s_Glow); + if (s_Glow) + { + DoGlowPanel(); + } + + EndPanel(); + } + + s_DebugExtended = BeginPanel("Debug Settings", s_DebugExtended); + if (s_DebugExtended) + { + DoDebugPanel(); + } + + EndPanel(); + } + + void DoFacePanel() + { + EditorGUI.indentLevel += 1; + DoColor("_FaceColor", "Color"); + if (m_Material.HasProperty(ShaderUtilities.ID_FaceTex)) + { + if (m_Material.HasProperty("_FaceUVSpeedX")) + { + DoTexture2D("_FaceTex", "Texture", true, s_FaceUvSpeedNames); + } + else + { + DoTexture2D("_FaceTex", "Texture", true); + } + } + + DoSlider("_OutlineSoftness", "Softness"); + DoSlider("_FaceDilate", "Dilate"); + if (m_Material.HasProperty(ShaderUtilities.ID_Shininess)) + { + DoSlider("_FaceShininess", "Gloss"); + } + + EditorGUI.indentLevel -= 1; + EditorGUILayout.Space(); + } + + void DoOutlinePanel() + { + EditorGUI.indentLevel += 1; + DoColor("_OutlineColor", "Color"); + if (m_Material.HasProperty(ShaderUtilities.ID_OutlineTex)) + { + if (m_Material.HasProperty("_OutlineUVSpeedX")) + { + DoTexture2D("_OutlineTex", "Texture", true, s_OutlineUvSpeedNames); + } + else + { + DoTexture2D("_OutlineTex", "Texture", true); + } + } + + DoSlider("_OutlineWidth", "Thickness"); + if (m_Material.HasProperty("_OutlineShininess")) + { + DoSlider("_OutlineShininess", "Gloss"); + } + + EditorGUI.indentLevel -= 1; + EditorGUILayout.Space(); + } + + void DoUnderlayPanel() + { + EditorGUI.indentLevel += 1; + s_UnderlayFeature.DoPopup(m_Editor, m_Material); + DoColor("_UnderlayColor", "Color"); + DoSlider("_UnderlayOffsetX", "Offset X"); + DoSlider("_UnderlayOffsetY", "Offset Y"); + DoSlider("_UnderlayDilate", "Dilate"); + DoSlider("_UnderlaySoftness", "Softness"); + EditorGUI.indentLevel -= 1; + EditorGUILayout.Space(); + } + + static GUIContent[] s_BevelTypeLabels = + { + new GUIContent("Outer Bevel"), + new GUIContent("Inner Bevel") + }; + + void DoBevelPanel() + { + EditorGUI.indentLevel += 1; + DoPopup("_ShaderFlags", "Type", s_BevelTypeLabels); + DoSlider("_Bevel", "Amount"); + DoSlider("_BevelOffset", "Offset"); + DoSlider("_BevelWidth", "Width"); + DoSlider("_BevelRoundness", "Roundness"); + DoSlider("_BevelClamp", "Clamp"); + EditorGUI.indentLevel -= 1; + EditorGUILayout.Space(); + } + + void DoLocalLightingPanel() + { + EditorGUI.indentLevel += 1; + DoSlider("_LightAngle", "Light Angle"); + DoColor("_SpecularColor", "Specular Color"); + DoSlider("_SpecularPower", "Specular Power"); + DoSlider("_Reflectivity", "Reflectivity Power"); + DoSlider("_Diffuse", "Diffuse Shadow"); + DoSlider("_Ambient", "Ambient Shadow"); + EditorGUI.indentLevel -= 1; + EditorGUILayout.Space(); + } + + void DoSurfaceLightingPanel() + { + EditorGUI.indentLevel += 1; + DoColor("_SpecColor", "Specular Color"); + EditorGUI.indentLevel -= 1; + EditorGUILayout.Space(); + } + + void DoBumpMapPanel() + { + EditorGUI.indentLevel += 1; + DoTexture2D("_BumpMap", "Texture"); + DoSlider("_BumpFace", "Face"); + DoSlider("_BumpOutline", "Outline"); + EditorGUI.indentLevel -= 1; + EditorGUILayout.Space(); + } + + void DoEnvMapPanel() + { + EditorGUI.indentLevel += 1; + DoColor("_ReflectFaceColor", "Face Color"); + DoColor("_ReflectOutlineColor", "Outline Color"); + DoCubeMap("_Cube", "Texture"); + DoVector3("_EnvMatrixRotation", "Rotation"); + EditorGUI.indentLevel -= 1; + EditorGUILayout.Space(); + } + + void DoGlowPanel() + { + EditorGUI.indentLevel += 1; + DoColor("_GlowColor", "Color"); + DoSlider("_GlowOffset", "Offset"); + DoSlider("_GlowInner", "Inner"); + DoSlider("_GlowOuter", "Outer"); + DoSlider("_GlowPower", "Power"); + EditorGUI.indentLevel -= 1; + EditorGUILayout.Space(); + } + + void DoDebugPanel() + { + EditorGUI.indentLevel += 1; + DoTexture2D("_MainTex", "Font Atlas"); + DoFloat("_GradientScale", "Gradient Scale"); + DoFloat("_TextureWidth", "Texture Width"); + DoFloat("_TextureHeight", "Texture Height"); + EditorGUILayout.Space(); + DoFloat("_ScaleX", "Scale X"); + DoFloat("_ScaleY", "Scale Y"); + + if (m_Material.HasProperty(ShaderUtilities.ID_Sharpness)) + DoSlider("_Sharpness", "Sharpness"); + + DoSlider("_PerspectiveFilter", "Perspective Filter"); + EditorGUILayout.Space(); + DoFloat("_VertexOffsetX", "Offset X"); + DoFloat("_VertexOffsetY", "Offset Y"); + + if (m_Material.HasProperty(ShaderUtilities.ID_MaskCoord)) + { + EditorGUILayout.Space(); + s_MaskFeature.ReadState(m_Material); + s_MaskFeature.DoPopup(m_Editor, m_Material); + if (s_MaskFeature.Active) + { + DoMaskSubgroup(); + } + + EditorGUILayout.Space(); + DoVector("_ClipRect", "Clip Rect", s_LbrtVectorLabels); + } + else if (m_Material.HasProperty("_MaskTex")) + { + DoMaskTexSubgroup(); + } + else if (m_Material.HasProperty(ShaderUtilities.ID_MaskSoftnessX)) + { + EditorGUILayout.Space(); + DoFloat("_MaskSoftnessX", "Softness X"); + DoFloat("_MaskSoftnessY", "Softness Y"); + DoVector("_ClipRect", "Clip Rect", s_LbrtVectorLabels); + } + + if (m_Material.HasProperty(ShaderUtilities.ID_StencilID)) + { + EditorGUILayout.Space(); + DoFloat("_Stencil", "Stencil ID"); + DoFloat("_StencilComp", "Stencil Comp"); + } + + EditorGUILayout.Space(); + + EditorGUI.BeginChangeCheck(); + bool useRatios = EditorGUILayout.Toggle("Use Ratios", !m_Material.IsKeywordEnabled("RATIOS_OFF")); + if (EditorGUI.EndChangeCheck()) + { + m_Editor.RegisterPropertyChangeUndo("Use Ratios"); + if (useRatios) + { + m_Material.DisableKeyword("RATIOS_OFF"); + } + else + { + m_Material.EnableKeyword("RATIOS_OFF"); + } + } + + EditorGUI.BeginDisabledGroup(true); + DoFloat("_ScaleRatioA", "Scale Ratio A"); + DoFloat("_ScaleRatioB", "Scale Ratio B"); + DoFloat("_ScaleRatioC", "Scale Ratio C"); + EditorGUI.EndDisabledGroup(); + EditorGUI.indentLevel -= 1; + EditorGUILayout.Space(); + } + + void DoMaskSubgroup() + { + DoVector("_MaskCoord", "Mask Bounds", s_XywhVectorLabels); + if (Selection.activeGameObject != null) + { + Renderer renderer = Selection.activeGameObject.GetComponent(); + if (renderer != null) + { + Rect rect = EditorGUILayout.GetControlRect(); + rect.x += EditorGUIUtility.labelWidth; + rect.width -= EditorGUIUtility.labelWidth; + if (GUI.Button(rect, "Match Renderer Bounds")) + { + FindProperty("_MaskCoord", m_Properties).vectorValue = new Vector4( + 0, + 0, + Mathf.Round(renderer.bounds.extents.x * 1000) / 1000, + Mathf.Round(renderer.bounds.extents.y * 1000) / 1000 + ); + } + } + } + + if (s_MaskFeature.State == 1) + { + DoFloat("_MaskSoftnessX", "Softness X"); + DoFloat("_MaskSoftnessY", "Softness Y"); + } + } + + void DoMaskTexSubgroup() + { + EditorGUILayout.Space(); + DoTexture2D("_MaskTex", "Mask Texture"); + DoToggle("_MaskInverse", "Inverse Mask"); + DoColor("_MaskEdgeColor", "Edge Color"); + DoSlider("_MaskEdgeSoftness", "Edge Softness"); + DoSlider("_MaskWipeControl", "Wipe Position"); + DoFloat("_MaskSoftnessX", "Softness X"); + DoFloat("_MaskSoftnessY", "Softness Y"); + DoVector("_ClipRect", "Clip Rect", s_LbrtVectorLabels); + } + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SDFShaderGUI.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SDFShaderGUI.cs.meta new file mode 100644 index 0000000..bad1503 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SDFShaderGUI.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 8413ca0e506d42a1a4bd9769f204ad16 +timeCreated: 1469844718 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SerializedPropertyHolder.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SerializedPropertyHolder.cs new file mode 100644 index 0000000..227ea7c --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SerializedPropertyHolder.cs @@ -0,0 +1,14 @@ +using UnityEngine; +using UnityEditor; + +namespace TMPro +{ + class TMP_SerializedPropertyHolder : ScriptableObject + { + public TMP_FontAsset fontAsset; + public uint firstCharacter; + public uint secondCharacter; + + public TMP_GlyphPairAdjustmentRecord glyphPairAdjustmentRecord = new TMP_GlyphPairAdjustmentRecord(new TMP_GlyphAdjustmentRecord(), new TMP_GlyphAdjustmentRecord()); + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SerializedPropertyHolder.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SerializedPropertyHolder.cs.meta new file mode 100644 index 0000000..5419071 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SerializedPropertyHolder.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9c4a050f089abb04ebd4125e419f4548 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SettingsEditor.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SettingsEditor.cs new file mode 100644 index 0000000..78897f1 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SettingsEditor.cs @@ -0,0 +1,341 @@ +using System.Collections.Generic; +using UnityEngine; +using UnityEditor; +using UnityEditorInternal; + +#pragma warning disable 0414 // Disabled a few warnings for not yet implemented features. + +namespace TMPro.EditorUtilities +{ + [CustomEditor(typeof(TMP_Settings))] + public class TMP_SettingsEditor : Editor + { + internal class Styles + { + public static readonly GUIContent defaultFontAssetLabel = new GUIContent("Default Font Asset", "The Font Asset that will be assigned by default to newly created text objects when no Font Asset is specified."); + public static readonly GUIContent defaultFontAssetPathLabel = new GUIContent("Path: Resources/", "The relative path to a Resources folder where the Font Assets and Material Presets are located.\nExample \"Fonts & Materials/\""); + + public static readonly GUIContent fallbackFontAssetsLabel = new GUIContent("Fallback Font Assets", "The Font Assets that will be searched to locate and replace missing characters from a given Font Asset."); + public static readonly GUIContent fallbackFontAssetsListLabel = new GUIContent("Fallback Font Assets List", "The Font Assets that will be searched to locate and replace missing characters from a given Font Asset."); + + public static readonly GUIContent fallbackMaterialSettingsLabel = new GUIContent("Fallback Material Settings"); + public static readonly GUIContent matchMaterialPresetLabel = new GUIContent("Match Material Presets"); + + public static readonly GUIContent containerDefaultSettingsLabel = new GUIContent("Text Container Default Settings"); + + public static readonly GUIContent textMeshProLabel = new GUIContent("TextMeshPro"); + public static readonly GUIContent textMeshProUiLabel = new GUIContent("TextMeshPro UI"); + public static readonly GUIContent enableRaycastTarget = new GUIContent("Enable Raycast Target"); + public static readonly GUIContent autoSizeContainerLabel = new GUIContent("Auto Size Text Container", "Set the size of the text container to match the text."); + + public static readonly GUIContent textComponentDefaultSettingsLabel = new GUIContent("Text Component Default Settings"); + public static readonly GUIContent defaultFontSize = new GUIContent("Default Font Size"); + public static readonly GUIContent autoSizeRatioLabel = new GUIContent("Text Auto Size Ratios"); + public static readonly GUIContent minLabel = new GUIContent("Min"); + public static readonly GUIContent maxLabel = new GUIContent("Max"); + + public static readonly GUIContent wordWrappingLabel = new GUIContent("Word Wrapping"); + public static readonly GUIContent kerningLabel = new GUIContent("Kerning"); + public static readonly GUIContent extraPaddingLabel = new GUIContent("Extra Padding"); + public static readonly GUIContent tintAllSpritesLabel = new GUIContent("Tint All Sprites"); + public static readonly GUIContent parseEscapeCharactersLabel = new GUIContent("Parse Escape Sequence"); + + public static readonly GUIContent dynamicFontSystemSettingsLabel = new GUIContent("Dynamic Font System Settings"); + public static readonly GUIContent getFontFeaturesAtRuntime = new GUIContent("Get Font Features at Runtime", "Determines if Glyph Adjustment Data will be retrieved from font files at runtime when new characters and glyphs are added to font assets."); + + public static readonly GUIContent missingGlyphLabel = new GUIContent("Replacement Character", "The character to be displayed when the requested character is not found in any font asset or fallbacks."); + public static readonly GUIContent disableWarningsLabel = new GUIContent("Disable warnings", "Disable warning messages in the Console."); + + public static readonly GUIContent defaultSpriteAssetLabel = new GUIContent("Default Sprite Asset", "The Sprite Asset that will be assigned by default when using the tag when no Sprite Asset is specified."); + public static readonly GUIContent enableEmojiSupportLabel = new GUIContent("iOS Emoji Support", "Enables Emoji support for Touch Screen Keyboards on target devices."); + public static readonly GUIContent spriteAssetsPathLabel = new GUIContent("Path: Resources/", "The relative path to a Resources folder where the Sprite Assets are located.\nExample \"Sprite Assets/\""); + + public static readonly GUIContent defaultStyleSheetLabel = new GUIContent("Default Style Sheet", "The Style Sheet that will be used for all text objects in this project."); + + public static readonly GUIContent colorGradientPresetsLabel = new GUIContent("Color Gradient Presets", "The relative path to a Resources folder where the Color Gradient Presets are located.\nExample \"Color Gradient Presets/\""); + public static readonly GUIContent colorGradientsPathLabel = new GUIContent("Path: Resources/", "The relative path to a Resources folder where the Color Gradient Presets are located.\nExample \"Color Gradient Presets/\""); + + public static readonly GUIContent lineBreakingLabel = new GUIContent("Line Breaking for Asian languages", "The text assets that contain the Leading and Following characters which define the rules for line breaking with Asian languages."); + } + + SerializedProperty m_PropFontAsset; + SerializedProperty m_PropDefaultFontAssetPath; + SerializedProperty m_PropDefaultFontSize; + SerializedProperty m_PropDefaultAutoSizeMinRatio; + SerializedProperty m_PropDefaultAutoSizeMaxRatio; + SerializedProperty m_PropDefaultTextMeshProTextContainerSize; + SerializedProperty m_PropDefaultTextMeshProUITextContainerSize; + SerializedProperty m_PropAutoSizeTextContainer; + SerializedProperty m_PropEnableRaycastTarget; + + SerializedProperty m_PropSpriteAsset; + SerializedProperty m_PropSpriteAssetPath; + SerializedProperty m_PropEnableEmojiSupport; + SerializedProperty m_PropStyleSheet; + ReorderableList m_List; + + SerializedProperty m_PropColorGradientPresetsPath; + + SerializedProperty m_PropMatchMaterialPreset; + SerializedProperty m_PropWordWrapping; + SerializedProperty m_PropKerning; + SerializedProperty m_PropExtraPadding; + SerializedProperty m_PropTintAllSprites; + SerializedProperty m_PropParseEscapeCharacters; + SerializedProperty m_PropMissingGlyphCharacter; + + SerializedProperty m_GetFontFeaturesAtRuntime; + + SerializedProperty m_PropWarningsDisabled; + + SerializedProperty m_PropLeadingCharacters; + SerializedProperty m_PropFollowingCharacters; + + public void OnEnable() + { + if (target == null) + return; + + m_PropFontAsset = serializedObject.FindProperty("m_defaultFontAsset"); + m_PropDefaultFontAssetPath = serializedObject.FindProperty("m_defaultFontAssetPath"); + m_PropDefaultFontSize = serializedObject.FindProperty("m_defaultFontSize"); + m_PropDefaultAutoSizeMinRatio = serializedObject.FindProperty("m_defaultAutoSizeMinRatio"); + m_PropDefaultAutoSizeMaxRatio = serializedObject.FindProperty("m_defaultAutoSizeMaxRatio"); + m_PropDefaultTextMeshProTextContainerSize = serializedObject.FindProperty("m_defaultTextMeshProTextContainerSize"); + m_PropDefaultTextMeshProUITextContainerSize = serializedObject.FindProperty("m_defaultTextMeshProUITextContainerSize"); + m_PropAutoSizeTextContainer = serializedObject.FindProperty("m_autoSizeTextContainer"); + m_PropEnableRaycastTarget = serializedObject.FindProperty("m_EnableRaycastTarget"); + + m_PropSpriteAsset = serializedObject.FindProperty("m_defaultSpriteAsset"); + m_PropSpriteAssetPath = serializedObject.FindProperty("m_defaultSpriteAssetPath"); + m_PropEnableEmojiSupport = serializedObject.FindProperty("m_enableEmojiSupport"); + m_PropStyleSheet = serializedObject.FindProperty("m_defaultStyleSheet"); + m_PropColorGradientPresetsPath = serializedObject.FindProperty("m_defaultColorGradientPresetsPath"); + + m_List = new ReorderableList(serializedObject, serializedObject.FindProperty("m_fallbackFontAssets"), true, true, true, true); + + m_List.drawElementCallback = (rect, index, isActive, isFocused) => + { + var element = m_List.serializedProperty.GetArrayElementAtIndex(index); + rect.y += 2; + EditorGUI.PropertyField(new Rect(rect.x, rect.y, rect.width, EditorGUIUtility.singleLineHeight), element, GUIContent.none); + }; + + m_List.drawHeaderCallback = rect => + { + EditorGUI.LabelField(rect, Styles.fallbackFontAssetsListLabel); + }; + + m_PropMatchMaterialPreset = serializedObject.FindProperty("m_matchMaterialPreset"); + + m_PropWordWrapping = serializedObject.FindProperty("m_enableWordWrapping"); + m_PropKerning = serializedObject.FindProperty("m_enableKerning"); + m_PropExtraPadding = serializedObject.FindProperty("m_enableExtraPadding"); + m_PropTintAllSprites = serializedObject.FindProperty("m_enableTintAllSprites"); + m_PropParseEscapeCharacters = serializedObject.FindProperty("m_enableParseEscapeCharacters"); + m_PropMissingGlyphCharacter = serializedObject.FindProperty("m_missingGlyphCharacter"); + + m_PropWarningsDisabled = serializedObject.FindProperty("m_warningsDisabled"); + + m_GetFontFeaturesAtRuntime = serializedObject.FindProperty("m_GetFontFeaturesAtRuntime"); + + m_PropLeadingCharacters = serializedObject.FindProperty("m_leadingCharacters"); + m_PropFollowingCharacters = serializedObject.FindProperty("m_followingCharacters"); + } + + public override void OnInspectorGUI() + { + serializedObject.Update(); + + float labelWidth = EditorGUIUtility.labelWidth; + float fieldWidth = EditorGUIUtility.fieldWidth; + + // TextMeshPro Font Info Panel + EditorGUI.indentLevel = 0; + + // FONT ASSET + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + GUILayout.Label(Styles.defaultFontAssetLabel, EditorStyles.boldLabel); + EditorGUI.indentLevel = 1; + EditorGUILayout.PropertyField(m_PropFontAsset, Styles.defaultFontAssetLabel); + EditorGUILayout.PropertyField(m_PropDefaultFontAssetPath, Styles.defaultFontAssetPathLabel); + EditorGUI.indentLevel = 0; + + EditorGUILayout.Space(); + EditorGUILayout.EndVertical(); + + // FALLBACK FONT ASSETs + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + GUILayout.Label(Styles.fallbackFontAssetsLabel, EditorStyles.boldLabel); + m_List.DoLayoutList(); + + GUILayout.Label(Styles.fallbackMaterialSettingsLabel, EditorStyles.boldLabel); + EditorGUI.indentLevel = 1; + EditorGUILayout.PropertyField(m_PropMatchMaterialPreset, Styles.matchMaterialPresetLabel); + EditorGUI.indentLevel = 0; + + EditorGUILayout.Space(); + EditorGUILayout.EndVertical(); + + // MISSING GLYPHS + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + GUILayout.Label(Styles.dynamicFontSystemSettingsLabel, EditorStyles.boldLabel); + EditorGUI.indentLevel = 1; + EditorGUILayout.PropertyField(m_GetFontFeaturesAtRuntime, Styles.getFontFeaturesAtRuntime); + EditorGUILayout.PropertyField(m_PropMissingGlyphCharacter, Styles.missingGlyphLabel); + EditorGUILayout.PropertyField(m_PropWarningsDisabled, Styles.disableWarningsLabel); + EditorGUI.indentLevel = 0; + + EditorGUILayout.Space(); + EditorGUILayout.EndVertical(); + + // TEXT OBJECT DEFAULT PROPERTIES + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + GUILayout.Label(Styles.containerDefaultSettingsLabel, EditorStyles.boldLabel); + EditorGUI.indentLevel = 1; + + EditorGUILayout.PropertyField(m_PropDefaultTextMeshProTextContainerSize, Styles.textMeshProLabel); + EditorGUILayout.PropertyField(m_PropDefaultTextMeshProUITextContainerSize, Styles.textMeshProUiLabel); + EditorGUILayout.PropertyField(m_PropEnableRaycastTarget, Styles.enableRaycastTarget); + EditorGUILayout.PropertyField(m_PropAutoSizeTextContainer, Styles.autoSizeContainerLabel); + EditorGUI.indentLevel = 0; + + EditorGUILayout.Space(); + + GUILayout.Label(Styles.textComponentDefaultSettingsLabel, EditorStyles.boldLabel); + EditorGUI.indentLevel = 1; + EditorGUILayout.PropertyField(m_PropDefaultFontSize, Styles.defaultFontSize); + + EditorGUILayout.BeginHorizontal(); + { + EditorGUILayout.PrefixLabel(Styles.autoSizeRatioLabel); + EditorGUIUtility.labelWidth = 32; + EditorGUIUtility.fieldWidth = 10; + + EditorGUI.indentLevel = 0; + EditorGUILayout.PropertyField(m_PropDefaultAutoSizeMinRatio, Styles.minLabel); + EditorGUILayout.PropertyField(m_PropDefaultAutoSizeMaxRatio, Styles.maxLabel); + EditorGUI.indentLevel = 1; + } + EditorGUILayout.EndHorizontal(); + + EditorGUIUtility.labelWidth = labelWidth; + EditorGUIUtility.fieldWidth = fieldWidth; + + EditorGUILayout.PropertyField(m_PropWordWrapping, Styles.wordWrappingLabel); + EditorGUILayout.PropertyField(m_PropKerning, Styles.kerningLabel); + + EditorGUILayout.PropertyField(m_PropExtraPadding, Styles.extraPaddingLabel); + EditorGUILayout.PropertyField(m_PropTintAllSprites, Styles.tintAllSpritesLabel); + + EditorGUILayout.PropertyField(m_PropParseEscapeCharacters, Styles.parseEscapeCharactersLabel); + + EditorGUI.indentLevel = 0; + + EditorGUILayout.Space(); + EditorGUILayout.EndVertical(); + + // SPRITE ASSET + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + GUILayout.Label(Styles.defaultSpriteAssetLabel, EditorStyles.boldLabel); + EditorGUI.indentLevel = 1; + EditorGUILayout.PropertyField(m_PropSpriteAsset, Styles.defaultSpriteAssetLabel); + EditorGUILayout.PropertyField(m_PropEnableEmojiSupport, Styles.enableEmojiSupportLabel); + EditorGUILayout.PropertyField(m_PropSpriteAssetPath, Styles.spriteAssetsPathLabel); + EditorGUI.indentLevel = 0; + + EditorGUILayout.Space(); + EditorGUILayout.EndVertical(); + + // STYLE SHEET + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + GUILayout.Label(Styles.defaultStyleSheetLabel, EditorStyles.boldLabel); + EditorGUI.indentLevel = 1; + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(m_PropStyleSheet, Styles.defaultStyleSheetLabel); + if (EditorGUI.EndChangeCheck()) + { + serializedObject.ApplyModifiedProperties(); + TMP_StyleSheet.UpdateStyleSheet(); + } + EditorGUI.indentLevel = 0; + + EditorGUILayout.Space(); + EditorGUILayout.EndVertical(); + + // COLOR GRADIENT PRESETS + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + GUILayout.Label(Styles.colorGradientPresetsLabel, EditorStyles.boldLabel); + EditorGUI.indentLevel = 1; + EditorGUILayout.PropertyField(m_PropColorGradientPresetsPath, Styles.colorGradientsPathLabel); + EditorGUI.indentLevel = 0; + + EditorGUILayout.Space(); + EditorGUILayout.EndVertical(); + + // LINE BREAKING RULE + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + GUILayout.Label(Styles.lineBreakingLabel, EditorStyles.boldLabel); + EditorGUI.indentLevel = 1; + EditorGUILayout.PropertyField(m_PropLeadingCharacters); + EditorGUILayout.PropertyField(m_PropFollowingCharacters); + EditorGUI.indentLevel = 0; + + EditorGUILayout.Space(); + EditorGUILayout.EndVertical(); + + if (serializedObject.ApplyModifiedProperties()) + { + EditorUtility.SetDirty(target); + TMPro_EventManager.ON_TMP_SETTINGS_CHANGED(); + } + } + } + +#if UNITY_2018_3_OR_NEWER + class TMP_ResourceImporterProvider : SettingsProvider + { + TMP_PackageResourceImporter m_ResourceImporter; + + public TMP_ResourceImporterProvider() + : base("Project/TextMesh Pro", SettingsScope.Project) + { + } + + public override void OnGUI(string searchContext) + { + // Lazy creation that supports domain reload + if (m_ResourceImporter == null) + m_ResourceImporter = new TMP_PackageResourceImporter(); + + m_ResourceImporter.OnGUI(); + } + + public override void OnDeactivate() + { + if (m_ResourceImporter != null) + m_ResourceImporter.OnDestroy(); + } + + static UnityEngine.Object GetTMPSettings() + { + return Resources.Load("TMP Settings"); + } + + [SettingsProviderGroup] + static SettingsProvider[] CreateTMPSettingsProvider() + { + var providers = new List { new TMP_ResourceImporterProvider() }; + + if (GetTMPSettings() != null) + { + var provider = new AssetSettingsProvider("Project/TextMesh Pro/Settings", GetTMPSettings); + provider.PopulateSearchKeywordsFromGUIContentProperties(); + providers.Add(provider); + } + + return providers.ToArray(); + } + } +#endif +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SettingsEditor.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SettingsEditor.cs.meta new file mode 100644 index 0000000..18c399a --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SettingsEditor.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 0386b6eb838c47138cd51d1c1b879a35 +timeCreated: 1436658550 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetEditor.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetEditor.cs new file mode 100644 index 0000000..82d13d7 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetEditor.cs @@ -0,0 +1,896 @@ +using UnityEngine; +using UnityEngine.TextCore; +using UnityEditor; +using UnityEditorInternal; +using System.Collections.Generic; + + + + +namespace TMPro.EditorUtilities +{ + + [CustomEditor(typeof(TMP_SpriteAsset))] + public class TMP_SpriteAssetEditor : Editor + { + struct UI_PanelState + { + public static bool spriteAssetInfoPanel = true; + public static bool fallbackSpriteAssetPanel = true; + public static bool spriteCharacterTablePanel; + public static bool spriteGlyphTablePanel; + } + + private static string[] s_UiStateLabel = new string[] { "(Click to collapse) ", "(Click to expand) " }; + + int m_moveToIndex; + int m_selectedElement = -1; + int m_CurrentCharacterPage; + int m_CurrentGlyphPage; + + const string k_UndoRedo = "UndoRedoPerformed"; + + string m_CharacterSearchPattern; + List m_CharacterSearchList; + bool m_IsCharacterSearchDirty; + + string m_GlyphSearchPattern; + List m_GlyphSearchList; + bool m_IsGlyphSearchDirty; + + SerializedProperty m_spriteAtlas_prop; + SerializedProperty m_material_prop; + SerializedProperty m_SpriteCharacterTableProperty; + SerializedProperty m_SpriteGlyphTableProperty; + ReorderableList m_fallbackSpriteAssetList; + + TMP_SpriteAsset m_SpriteAsset; + + bool isAssetDirty; + + float m_xOffset; + float m_yOffset; + float m_xAdvance; + float m_scale; + + public void OnEnable() + { + m_SpriteAsset = target as TMP_SpriteAsset; + + m_spriteAtlas_prop = serializedObject.FindProperty("spriteSheet"); + m_material_prop = serializedObject.FindProperty("material"); + m_SpriteCharacterTableProperty = serializedObject.FindProperty("m_SpriteCharacterTable"); + m_SpriteGlyphTableProperty = serializedObject.FindProperty("m_SpriteGlyphTable"); + + // Fallback TMP Sprite Asset list + m_fallbackSpriteAssetList = new ReorderableList(serializedObject, serializedObject.FindProperty("fallbackSpriteAssets"), true, true, true, true); + + m_fallbackSpriteAssetList.drawElementCallback = (Rect rect, int index, bool isActive, bool isFocused) => + { + var element = m_fallbackSpriteAssetList.serializedProperty.GetArrayElementAtIndex(index); + rect.y += 2; + EditorGUI.PropertyField(new Rect(rect.x, rect.y, rect.width, EditorGUIUtility.singleLineHeight), element, GUIContent.none); + }; + + m_fallbackSpriteAssetList.drawHeaderCallback = rect => + { + EditorGUI.LabelField(rect, new GUIContent("Fallback Sprite Asset List", "Select the Sprite Assets that will be searched and used as fallback when a given sprite is missing from this sprite asset.")); + }; + } + + + public override void OnInspectorGUI() + { + + //Debug.Log("OnInspectorGUI Called."); + Event currentEvent = Event.current; + string evt_cmd = currentEvent.commandName; // Get Current Event CommandName to check for Undo Events + + serializedObject.Update(); + + Rect rect; + + // TEXTMESHPRO SPRITE INFO PANEL + GUILayout.Label("Sprite Info", EditorStyles.boldLabel); + EditorGUI.indentLevel = 1; + + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(m_spriteAtlas_prop , new GUIContent("Sprite Atlas")); + if (EditorGUI.EndChangeCheck()) + { + // Assign the new sprite atlas texture to the current material + Texture2D tex = m_spriteAtlas_prop.objectReferenceValue as Texture2D; + if (tex != null) + { + Material mat = m_material_prop.objectReferenceValue as Material; + if (mat != null) + mat.mainTexture = tex; + } + } + + EditorGUILayout.PropertyField(m_material_prop, new GUIContent("Default Material")); + + EditorGUILayout.Space(); + + // FALLBACK SPRITE ASSETS + EditorGUI.indentLevel = 0; + UI_PanelState.fallbackSpriteAssetPanel = EditorGUILayout.Foldout(UI_PanelState.fallbackSpriteAssetPanel, new GUIContent("Fallback Sprite Assets", "Select the Sprite Assets that will be searched and used as fallback when a given sprite is missing from this sprite asset."), true, TMP_UIStyleManager.boldFoldout); + + if (UI_PanelState.fallbackSpriteAssetPanel) + { + m_fallbackSpriteAssetList.DoLayoutList(); + } + + // SPRITE CHARACTER TABLE + #region Display Sprite Character Table + EditorGUI.indentLevel = 0; + rect = EditorGUILayout.GetControlRect(false, 24); + + if (GUI.Button(rect, new GUIContent("Sprite Character Table", "List of sprite characters contained in this sprite asset."), TMP_UIStyleManager.sectionHeader)) + UI_PanelState.spriteCharacterTablePanel = !UI_PanelState.spriteCharacterTablePanel; + + GUI.Label(rect, (UI_PanelState.spriteCharacterTablePanel ? "" : s_UiStateLabel[1]), TMP_UIStyleManager.rightLabel); + + if (UI_PanelState.spriteCharacterTablePanel) + { + int arraySize = m_SpriteCharacterTableProperty.arraySize; + int itemsPerPage = 10; + + // Display Glyph Management Tools + EditorGUILayout.BeginVertical(EditorStyles.helpBox, GUILayout.ExpandWidth(true)); + { + // Search Bar implementation + #region DISPLAY SEARCH BAR + EditorGUILayout.BeginHorizontal(); + { + EditorGUIUtility.labelWidth = 110f; + EditorGUI.BeginChangeCheck(); + string searchPattern = EditorGUILayout.TextField("Sprite Search", m_CharacterSearchPattern, "SearchTextField"); + if (EditorGUI.EndChangeCheck() || m_IsCharacterSearchDirty) + { + if (string.IsNullOrEmpty(searchPattern) == false) + { + //GUIUtility.keyboardControl = 0; + m_CharacterSearchPattern = searchPattern.ToLower(System.Globalization.CultureInfo.InvariantCulture).Trim(); + + // Search Glyph Table for potential matches + SearchCharacterTable(m_CharacterSearchPattern, ref m_CharacterSearchList); + } + else + m_CharacterSearchPattern = null; + + m_IsCharacterSearchDirty = false; + } + + string styleName = string.IsNullOrEmpty(m_CharacterSearchPattern) ? "SearchCancelButtonEmpty" : "SearchCancelButton"; + if (GUILayout.Button(GUIContent.none, styleName)) + { + GUIUtility.keyboardControl = 0; + m_CharacterSearchPattern = string.Empty; + } + } + EditorGUILayout.EndHorizontal(); + #endregion + + // Display Page Navigation + if (!string.IsNullOrEmpty(m_CharacterSearchPattern)) + arraySize = m_CharacterSearchList.Count; + + // Display Page Navigation + DisplayPageNavigation(ref m_CurrentCharacterPage, arraySize, itemsPerPage); + } + EditorGUILayout.EndVertical(); + + if (arraySize > 0) + { + // Display each SpriteInfo entry using the SpriteInfo property drawer. + for (int i = itemsPerPage * m_CurrentCharacterPage; i < arraySize && i < itemsPerPage * (m_CurrentCharacterPage + 1); i++) + { + // Define the start of the selection region of the element. + Rect elementStartRegion = GUILayoutUtility.GetRect(0f, 0f, GUILayout.ExpandWidth(true)); + + int elementIndex = i; + if (!string.IsNullOrEmpty(m_CharacterSearchPattern)) + elementIndex = m_CharacterSearchList[i]; + + SerializedProperty spriteCharacterProperty = m_SpriteCharacterTableProperty.GetArrayElementAtIndex(elementIndex); + + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + { + EditorGUI.BeginDisabledGroup(i != m_selectedElement); + { + EditorGUILayout.PropertyField(spriteCharacterProperty); + } + EditorGUI.EndDisabledGroup(); + } + EditorGUILayout.EndVertical(); + + // Define the end of the selection region of the element. + Rect elementEndRegion = GUILayoutUtility.GetRect(0f, 0f, GUILayout.ExpandWidth(true)); + + // Check for Item selection + Rect selectionArea = new Rect(elementStartRegion.x, elementStartRegion.y, elementEndRegion.width, elementEndRegion.y - elementStartRegion.y); + if (DoSelectionCheck(selectionArea)) + { + if (m_selectedElement == i) + { + m_selectedElement = -1; + } + else + { + m_selectedElement = i; + GUIUtility.keyboardControl = 0; + } + } + + // Draw & Handle Section Area + if (m_selectedElement == i) + { + // Draw selection highlight + TMP_EditorUtility.DrawBox(selectionArea, 2f, new Color32(40, 192, 255, 255)); + + // Draw options to MoveUp, MoveDown, Add or Remove Sprites + Rect controlRect = EditorGUILayout.GetControlRect(true, EditorGUIUtility.singleLineHeight * 1f); + controlRect.width /= 8; + + // Move sprite up. + bool guiEnabled = GUI.enabled; + if (i == 0) { GUI.enabled = false; } + if (GUI.Button(controlRect, "Up")) + { + SwapCharacterElements(i, i - 1); + } + GUI.enabled = guiEnabled; + + // Move sprite down. + controlRect.x += controlRect.width; + if (i == arraySize - 1) { GUI.enabled = false; } + if (GUI.Button(controlRect, "Down")) + { + SwapCharacterElements(i, i + 1); + } + GUI.enabled = guiEnabled; + + // Move sprite to new index + controlRect.x += controlRect.width * 2; + //if (i == arraySize - 1) { GUI.enabled = false; } + m_moveToIndex = EditorGUI.IntField(controlRect, m_moveToIndex); + controlRect.x -= controlRect.width; + if (GUI.Button(controlRect, "Goto")) + { + MoveCharacterToIndex(i, m_moveToIndex); + } + //controlRect.x += controlRect.width; + GUI.enabled = guiEnabled; + + // Add new Sprite + controlRect.x += controlRect.width * 4; + if (GUI.Button(controlRect, "+")) + { + m_SpriteCharacterTableProperty.arraySize += 1; + + int index = m_SpriteCharacterTableProperty.arraySize - 1; + + SerializedProperty spriteInfo_prop = m_SpriteCharacterTableProperty.GetArrayElementAtIndex(index); + + // Copy properties of the selected element + CopyCharacterSerializedProperty(m_SpriteCharacterTableProperty.GetArrayElementAtIndex(elementIndex), ref spriteInfo_prop); + + //spriteInfo_prop.FindPropertyRelative("m_Index").intValue = index; + serializedObject.ApplyModifiedProperties(); + + m_IsCharacterSearchDirty = true; + } + + // Delete selected Sprite + controlRect.x += controlRect.width; + if (m_selectedElement == -1) GUI.enabled = false; + if (GUI.Button(controlRect, "-")) + { + m_SpriteCharacterTableProperty.DeleteArrayElementAtIndex(elementIndex); + + m_selectedElement = -1; + serializedObject.ApplyModifiedProperties(); + + m_IsCharacterSearchDirty = true; + + return; + } + + + } + } + } + + DisplayPageNavigation(ref m_CurrentCharacterPage, arraySize, itemsPerPage); + + EditorGUIUtility.labelWidth = 40f; + EditorGUIUtility.fieldWidth = 20f; + + GUILayout.Space(5f); + + // GLOBAL TOOLS + #region Global Tools + /* + GUI.enabled = true; + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + rect = EditorGUILayout.GetControlRect(false, 40); + + float width = (rect.width - 75f) / 4; + EditorGUI.LabelField(rect, "Global Offsets & Scale", EditorStyles.boldLabel); + + + rect.x += 70; + bool old_ChangedState = GUI.changed; + + GUI.changed = false; + m_xOffset = EditorGUI.FloatField(new Rect(rect.x + 5f + width * 0, rect.y + 20, width - 5f, 18), new GUIContent("OX:"), m_xOffset); + if (GUI.changed) UpdateGlobalProperty("m_HorizontalBearingX", m_xOffset); + + m_yOffset = EditorGUI.FloatField(new Rect(rect.x + 5f + width * 1, rect.y + 20, width - 5f, 18), new GUIContent("OY:"), m_yOffset); + if (GUI.changed) UpdateGlobalProperty("m_HorizontalBearingY", m_yOffset); + + m_xAdvance = EditorGUI.FloatField(new Rect(rect.x + 5f + width * 2, rect.y + 20, width - 5f, 18), new GUIContent("ADV."), m_xAdvance); + if (GUI.changed) UpdateGlobalProperty("m_HorizontalAdvance", m_xAdvance); + + m_scale = EditorGUI.FloatField(new Rect(rect.x + 5f + width * 3, rect.y + 20, width - 5f, 18), new GUIContent("SF."), m_scale); + if (GUI.changed) UpdateGlobalProperty("m_Scale", m_scale); + + EditorGUILayout.EndVertical(); + + GUI.changed = old_ChangedState; + */ + #endregion + + } + #endregion + + + // SPRITE GLYPH TABLE + #region Display Sprite Glyph Table + EditorGUI.indentLevel = 0; + rect = EditorGUILayout.GetControlRect(false, 24); + + if (GUI.Button(rect, new GUIContent("Sprite Glyph Table", "A list of the SpriteGlyphs contained in this sprite asset."), TMP_UIStyleManager.sectionHeader)) + UI_PanelState.spriteGlyphTablePanel = !UI_PanelState.spriteGlyphTablePanel; + + GUI.Label(rect, (UI_PanelState.spriteGlyphTablePanel ? "" : s_UiStateLabel[1]), TMP_UIStyleManager.rightLabel); + + if (UI_PanelState.spriteGlyphTablePanel) + { + int arraySize = m_SpriteGlyphTableProperty.arraySize; + int itemsPerPage = 10; + + // Display Glyph Management Tools + EditorGUILayout.BeginVertical(EditorStyles.helpBox, GUILayout.ExpandWidth(true)); + { + // Search Bar implementation + #region DISPLAY SEARCH BAR + EditorGUILayout.BeginHorizontal(); + { + EditorGUIUtility.labelWidth = 110f; + EditorGUI.BeginChangeCheck(); + string searchPattern = EditorGUILayout.TextField("Sprite Search", m_GlyphSearchPattern, "SearchTextField"); + if (EditorGUI.EndChangeCheck() || m_IsGlyphSearchDirty) + { + if (string.IsNullOrEmpty(searchPattern) == false) + { + //GUIUtility.keyboardControl = 0; + m_GlyphSearchPattern = searchPattern.ToLower(System.Globalization.CultureInfo.InvariantCulture).Trim(); + + // Search Glyph Table for potential matches + SearchCharacterTable(m_GlyphSearchPattern, ref m_GlyphSearchList); + } + else + m_GlyphSearchPattern = null; + + m_IsGlyphSearchDirty = false; + } + + string styleName = string.IsNullOrEmpty(m_GlyphSearchPattern) ? "SearchCancelButtonEmpty" : "SearchCancelButton"; + if (GUILayout.Button(GUIContent.none, styleName)) + { + GUIUtility.keyboardControl = 0; + m_GlyphSearchPattern = string.Empty; + } + } + EditorGUILayout.EndHorizontal(); + #endregion + + // Display Page Navigation + if (!string.IsNullOrEmpty(m_GlyphSearchPattern)) + arraySize = m_GlyphSearchList.Count; + + // Display Page Navigation + DisplayPageNavigation(ref m_CurrentGlyphPage, arraySize, itemsPerPage); + } + EditorGUILayout.EndVertical(); + + if (arraySize > 0) + { + // Display each SpriteInfo entry using the SpriteInfo property drawer. + for (int i = itemsPerPage * m_CurrentGlyphPage; i < arraySize && i < itemsPerPage * (m_CurrentGlyphPage + 1); i++) + { + // Define the start of the selection region of the element. + Rect elementStartRegion = GUILayoutUtility.GetRect(0f, 0f, GUILayout.ExpandWidth(true)); + + int elementIndex = i; + if (!string.IsNullOrEmpty(m_GlyphSearchPattern)) + elementIndex = m_GlyphSearchList[i]; + + SerializedProperty spriteGlyphProperty = m_SpriteGlyphTableProperty.GetArrayElementAtIndex(elementIndex); + + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + { + EditorGUI.BeginDisabledGroup(i != m_selectedElement); + { + EditorGUILayout.PropertyField(spriteGlyphProperty); + } + EditorGUI.EndDisabledGroup(); + } + EditorGUILayout.EndVertical(); + + // Define the end of the selection region of the element. + Rect elementEndRegion = GUILayoutUtility.GetRect(0f, 0f, GUILayout.ExpandWidth(true)); + + // Check for Item selection + Rect selectionArea = new Rect(elementStartRegion.x, elementStartRegion.y, elementEndRegion.width, elementEndRegion.y - elementStartRegion.y); + if (DoSelectionCheck(selectionArea)) + { + if (m_selectedElement == i) + { + m_selectedElement = -1; + } + else + { + m_selectedElement = i; + GUIUtility.keyboardControl = 0; + } + } + + // Draw & Handle Section Area + if (m_selectedElement == i) + { + // Draw selection highlight + TMP_EditorUtility.DrawBox(selectionArea, 2f, new Color32(40, 192, 255, 255)); + + // Draw options to MoveUp, MoveDown, Add or Remove Sprites + Rect controlRect = EditorGUILayout.GetControlRect(true, EditorGUIUtility.singleLineHeight * 1f); + controlRect.width /= 8; + + // Move sprite up. + bool guiEnabled = GUI.enabled; + if (i == 0) { GUI.enabled = false; } + if (GUI.Button(controlRect, "Up")) + { + SwapGlyphElements(i, i - 1); + } + GUI.enabled = guiEnabled; + + // Move sprite down. + controlRect.x += controlRect.width; + if (i == arraySize - 1) { GUI.enabled = false; } + if (GUI.Button(controlRect, "Down")) + { + SwapGlyphElements(i, i + 1); + } + GUI.enabled = guiEnabled; + + // Move sprite to new index + controlRect.x += controlRect.width * 2; + //if (i == arraySize - 1) { GUI.enabled = false; } + m_moveToIndex = EditorGUI.IntField(controlRect, m_moveToIndex); + controlRect.x -= controlRect.width; + if (GUI.Button(controlRect, "Goto")) + { + MoveGlyphToIndex(i, m_moveToIndex); + } + //controlRect.x += controlRect.width; + GUI.enabled = guiEnabled; + + // Add new Sprite + controlRect.x += controlRect.width * 4; + if (GUI.Button(controlRect, "+")) + { + m_SpriteGlyphTableProperty.arraySize += 1; + + int index = m_SpriteGlyphTableProperty.arraySize - 1; + + SerializedProperty newSpriteGlyphProperty = m_SpriteGlyphTableProperty.GetArrayElementAtIndex(index); + + // Copy properties of the selected element + CopyGlyphSerializedProperty(m_SpriteGlyphTableProperty.GetArrayElementAtIndex(elementIndex), ref newSpriteGlyphProperty); + + newSpriteGlyphProperty.FindPropertyRelative("m_Index").intValue = index; + + serializedObject.ApplyModifiedProperties(); + + m_IsGlyphSearchDirty = true; + + //m_SpriteAsset.UpdateLookupTables(); + } + + // Delete selected Sprite + controlRect.x += controlRect.width; + if (m_selectedElement == -1) GUI.enabled = false; + if (GUI.Button(controlRect, "-")) + { + SerializedProperty selectedSpriteGlyphProperty = m_SpriteGlyphTableProperty.GetArrayElementAtIndex(elementIndex); + + int selectedGlyphIndex = selectedSpriteGlyphProperty.FindPropertyRelative("m_Index").intValue; + + m_SpriteGlyphTableProperty.DeleteArrayElementAtIndex(elementIndex); + + // Remove all Sprite Characters referencing this glyph. + for (int j = 0; j < m_SpriteCharacterTableProperty.arraySize; j++) + { + int glyphIndex = m_SpriteCharacterTableProperty.GetArrayElementAtIndex(j).FindPropertyRelative("m_GlyphIndex").intValue; + + if (glyphIndex == selectedGlyphIndex) + { + // Remove character + m_SpriteCharacterTableProperty.DeleteArrayElementAtIndex(j); + } + } + + m_selectedElement = -1; + serializedObject.ApplyModifiedProperties(); + + m_IsGlyphSearchDirty = true; + + //m_SpriteAsset.UpdateLookupTables(); + + return; + } + + + } + } + } + + DisplayPageNavigation(ref m_CurrentGlyphPage, arraySize, itemsPerPage); + + EditorGUIUtility.labelWidth = 40f; + EditorGUIUtility.fieldWidth = 20f; + + GUILayout.Space(5f); + + // GLOBAL TOOLS + #region Global Tools + GUI.enabled = true; + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + rect = EditorGUILayout.GetControlRect(false, 40); + + float width = (rect.width - 75f) / 4; + EditorGUI.LabelField(rect, "Global Offsets & Scale", EditorStyles.boldLabel); + + + rect.x += 70; + bool old_ChangedState = GUI.changed; + + GUI.changed = false; + m_xOffset = EditorGUI.FloatField(new Rect(rect.x + 5f + width * 0, rect.y + 20, width - 5f, 18), new GUIContent("OX:"), m_xOffset); + if (GUI.changed) UpdateGlobalProperty("m_HorizontalBearingX", m_xOffset); + + m_yOffset = EditorGUI.FloatField(new Rect(rect.x + 5f + width * 1, rect.y + 20, width - 5f, 18), new GUIContent("OY:"), m_yOffset); + if (GUI.changed) UpdateGlobalProperty("m_HorizontalBearingY", m_yOffset); + + m_xAdvance = EditorGUI.FloatField(new Rect(rect.x + 5f + width * 2, rect.y + 20, width - 5f, 18), new GUIContent("ADV."), m_xAdvance); + if (GUI.changed) UpdateGlobalProperty("m_HorizontalAdvance", m_xAdvance); + + m_scale = EditorGUI.FloatField(new Rect(rect.x + 5f + width * 3, rect.y + 20, width - 5f, 18), new GUIContent("SF."), m_scale); + if (GUI.changed) UpdateGlobalProperty("m_Scale", m_scale); + + EditorGUILayout.EndVertical(); + #endregion + + GUI.changed = old_ChangedState; + + } + #endregion + + + if (serializedObject.ApplyModifiedProperties() || evt_cmd == k_UndoRedo || isAssetDirty) + { + if (m_SpriteAsset.m_IsSpriteAssetLookupTablesDirty || evt_cmd == k_UndoRedo) + m_SpriteAsset.UpdateLookupTables(); + + TMPro_EventManager.ON_SPRITE_ASSET_PROPERTY_CHANGED(true, m_SpriteAsset); + + isAssetDirty = false; + EditorUtility.SetDirty(target); + } + + // Clear selection if mouse event was not consumed. + GUI.enabled = true; + if (currentEvent.type == EventType.MouseDown && currentEvent.button == 0) + m_selectedElement = -1; + + } + + + /// + /// + /// + /// + /// + void DisplayPageNavigation(ref int currentPage, int arraySize, int itemsPerPage) + { + Rect pagePos = EditorGUILayout.GetControlRect(false, 20); + pagePos.width /= 3; + + int shiftMultiplier = Event.current.shift ? 10 : 1; // Page + Shift goes 10 page forward + + // Previous Page + GUI.enabled = currentPage > 0; + + if (GUI.Button(pagePos, "Previous Page")) + { + currentPage -= 1 * shiftMultiplier; + //m_isNewPage = true; + } + + // Page Counter + GUI.enabled = true; + pagePos.x += pagePos.width; + int totalPages = (int)(arraySize / (float)itemsPerPage + 0.999f); + GUI.Label(pagePos, "Page " + (currentPage + 1) + " / " + totalPages, TMP_UIStyleManager.centeredLabel); + + // Next Page + pagePos.x += pagePos.width; + GUI.enabled = itemsPerPage * (currentPage + 1) < arraySize; + + if (GUI.Button(pagePos, "Next Page")) + { + currentPage += 1 * shiftMultiplier; + //m_isNewPage = true; + } + + // Clamp page range + currentPage = Mathf.Clamp(currentPage, 0, arraySize / itemsPerPage); + + GUI.enabled = true; + } + + + /// + /// Method to update the properties of all sprites + /// + /// + /// + void UpdateGlobalProperty(string property, float value) + { + int arraySize = m_SpriteGlyphTableProperty.arraySize; + + for (int i = 0; i < arraySize; i++) + { + // Get a reference to the sprite glyph. + SerializedProperty spriteGlyphProperty = m_SpriteGlyphTableProperty.GetArrayElementAtIndex(i); + + if (property == "m_Scale") + { + spriteGlyphProperty.FindPropertyRelative(property).floatValue = value; + } + else + { + SerializedProperty glyphMetricsProperty = spriteGlyphProperty.FindPropertyRelative("m_Metrics"); + glyphMetricsProperty.FindPropertyRelative(property).floatValue = value; + } + } + + GUI.changed = false; + } + + // Check if any of the Style elements were clicked on. + private bool DoSelectionCheck(Rect selectionArea) + { + Event currentEvent = Event.current; + + switch (currentEvent.type) + { + case EventType.MouseDown: + if (selectionArea.Contains(currentEvent.mousePosition) && currentEvent.button == 0) + { + currentEvent.Use(); + return true; + } + break; + } + + return false; + } + + + /// + /// Swap the sprite item at the currently selected array index to another index. + /// + /// Selected index. + /// New index. + void SwapCharacterElements(int selectedIndex, int newIndex) + { + m_SpriteCharacterTableProperty.MoveArrayElement(selectedIndex, newIndex); + m_selectedElement = newIndex; + m_IsCharacterSearchDirty = true; + m_SpriteAsset.m_IsSpriteAssetLookupTablesDirty = true; + } + + /// + /// Move Sprite Element at selected index to another index and reorder sprite list. + /// + /// + /// + void MoveCharacterToIndex(int selectedIndex, int newIndex) + { + int arraySize = m_SpriteCharacterTableProperty.arraySize; + + if (newIndex >= arraySize) + newIndex = arraySize - 1; + + m_SpriteCharacterTableProperty.MoveArrayElement(selectedIndex, newIndex); + + m_selectedElement = newIndex; + m_IsCharacterSearchDirty = true; + m_SpriteAsset.m_IsSpriteAssetLookupTablesDirty = true; + + // TODO: Need to handle switching pages if the character or glyph is moved to a different page. + } + + /// + /// + /// + /// + /// + void SwapGlyphElements(int selectedIndex, int newIndex) + { + m_SpriteGlyphTableProperty.MoveArrayElement(selectedIndex, newIndex); + m_selectedElement = newIndex; + m_IsGlyphSearchDirty = true; + m_SpriteAsset.m_IsSpriteAssetLookupTablesDirty = true; + } + + /// + /// Move Sprite Element at selected index to another index and reorder sprite list. + /// + /// + /// + void MoveGlyphToIndex(int selectedIndex, int newIndex) + { + int arraySize = m_SpriteGlyphTableProperty.arraySize; + + if (newIndex >= arraySize) + newIndex = arraySize - 1; + + m_SpriteGlyphTableProperty.MoveArrayElement(selectedIndex, newIndex); + + m_selectedElement = newIndex; + m_IsGlyphSearchDirty = true; + m_SpriteAsset.m_IsSpriteAssetLookupTablesDirty = true; + + // TODO: Need to handle switching pages if the character or glyph is moved to a different page. + } + + + /// + /// + /// + /// + /// + void CopyCharacterSerializedProperty(SerializedProperty source, ref SerializedProperty target) + { + target.FindPropertyRelative("m_Name").stringValue = source.FindPropertyRelative("m_Name").stringValue; + target.FindPropertyRelative("m_HashCode").intValue = source.FindPropertyRelative("m_HashCode").intValue; + target.FindPropertyRelative("m_Unicode").intValue = source.FindPropertyRelative("m_Unicode").intValue; + target.FindPropertyRelative("m_GlyphIndex").intValue = source.FindPropertyRelative("m_GlyphIndex").intValue; + target.FindPropertyRelative("m_Scale").floatValue = source.FindPropertyRelative("m_Scale").floatValue; + } + + void CopyGlyphSerializedProperty(SerializedProperty srcGlyph, ref SerializedProperty dstGlyph) + { + // TODO : Should make a generic function which copies each of the properties. + + // Index + dstGlyph.FindPropertyRelative("m_Index").intValue = srcGlyph.FindPropertyRelative("m_Index").intValue; + + // GlyphMetrics + SerializedProperty srcGlyphMetrics = srcGlyph.FindPropertyRelative("m_Metrics"); + SerializedProperty dstGlyphMetrics = dstGlyph.FindPropertyRelative("m_Metrics"); + + dstGlyphMetrics.FindPropertyRelative("m_Width").floatValue = srcGlyphMetrics.FindPropertyRelative("m_Width").floatValue; + dstGlyphMetrics.FindPropertyRelative("m_Height").floatValue = srcGlyphMetrics.FindPropertyRelative("m_Height").floatValue; + dstGlyphMetrics.FindPropertyRelative("m_HorizontalBearingX").floatValue = srcGlyphMetrics.FindPropertyRelative("m_HorizontalBearingX").floatValue; + dstGlyphMetrics.FindPropertyRelative("m_HorizontalBearingY").floatValue = srcGlyphMetrics.FindPropertyRelative("m_HorizontalBearingY").floatValue; + dstGlyphMetrics.FindPropertyRelative("m_HorizontalAdvance").floatValue = srcGlyphMetrics.FindPropertyRelative("m_HorizontalAdvance").floatValue; + + // GlyphRect + SerializedProperty srcGlyphRect = srcGlyph.FindPropertyRelative("m_GlyphRect"); + SerializedProperty dstGlyphRect = dstGlyph.FindPropertyRelative("m_GlyphRect"); + + dstGlyphRect.FindPropertyRelative("m_X").intValue = srcGlyphRect.FindPropertyRelative("m_X").intValue; + dstGlyphRect.FindPropertyRelative("m_Y").intValue = srcGlyphRect.FindPropertyRelative("m_Y").intValue; + dstGlyphRect.FindPropertyRelative("m_Width").intValue = srcGlyphRect.FindPropertyRelative("m_Width").intValue; + dstGlyphRect.FindPropertyRelative("m_Height").intValue = srcGlyphRect.FindPropertyRelative("m_Height").intValue; + + dstGlyph.FindPropertyRelative("m_Scale").floatValue = srcGlyph.FindPropertyRelative("m_Scale").floatValue; + dstGlyph.FindPropertyRelative("m_AtlasIndex").intValue = srcGlyph.FindPropertyRelative("m_AtlasIndex").intValue; + } + + + /// + /// + /// + /// + /// + void SearchCharacterTable(string searchPattern, ref List searchResults) + { + if (searchResults == null) searchResults = new List(); + searchResults.Clear(); + + int arraySize = m_SpriteCharacterTableProperty.arraySize; + + for (int i = 0; i < arraySize; i++) + { + SerializedProperty sourceSprite = m_SpriteCharacterTableProperty.GetArrayElementAtIndex(i); + + // Check for potential match against array index + if (i.ToString().Contains(searchPattern)) + { + searchResults.Add(i); + continue; + } + + // Check for potential match against decimal id + int id = sourceSprite.FindPropertyRelative("m_GlyphIndex").intValue; + if (id.ToString().Contains(searchPattern)) + { + searchResults.Add(i); + continue; + } + + // Check for potential match against name + string name = sourceSprite.FindPropertyRelative("m_Name").stringValue.ToLower(System.Globalization.CultureInfo.InvariantCulture).Trim(); + if (name.Contains(searchPattern)) + { + searchResults.Add(i); + continue; + } + } + } + + void SearchGlyphTable(string searchPattern, ref List searchResults) + { + if (searchResults == null) searchResults = new List(); + searchResults.Clear(); + + int arraySize = m_SpriteGlyphTableProperty.arraySize; + + for (int i = 0; i < arraySize; i++) + { + SerializedProperty sourceSprite = m_SpriteGlyphTableProperty.GetArrayElementAtIndex(i); + + // Check for potential match against array index + if (i.ToString().Contains(searchPattern)) + { + searchResults.Add(i); + continue; + } + + // Check for potential match against decimal id + int id = sourceSprite.FindPropertyRelative("m_GlyphIndex").intValue; + if (id.ToString().Contains(searchPattern)) + { + searchResults.Add(i); + continue; + } + + // Check for potential match against name + string name = sourceSprite.FindPropertyRelative("m_Name").stringValue.ToLower(System.Globalization.CultureInfo.InvariantCulture).Trim(); + if (name.Contains(searchPattern)) + { + searchResults.Add(i); + continue; + } + } + } + + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetEditor.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetEditor.cs.meta new file mode 100644 index 0000000..20605ad --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetEditor.cs.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: b09be1f217d34247af54863a2f5587e1 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetImporter.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetImporter.cs new file mode 100644 index 0000000..a4b0739 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetImporter.cs @@ -0,0 +1,232 @@ +using UnityEngine; +using UnityEditor; +using System.IO; +using System.Collections.Generic; +using TMPro.EditorUtilities; +using TMPro.SpriteAssetUtilities; + +namespace TMPro +{ + public class TMP_SpriteAssetImporter : EditorWindow + { + // Create Sprite Asset Editor Window + [MenuItem("Window/TextMeshPro/Sprite Importer", false, 2026)] + public static void ShowFontAtlasCreatorWindow() + { + var window = GetWindow(); + window.titleContent = new GUIContent("Sprite Importer"); + window.Focus(); + } + + Texture2D m_SpriteAtlas; + SpriteAssetImportFormats m_SpriteDataFormat = SpriteAssetImportFormats.TexturePacker; + TextAsset m_JsonFile; + + string m_CreationFeedback; + + TMP_SpriteAsset m_SpriteAsset; + List m_SpriteInfoList = new List(); + + + void OnEnable() + { + // Set Editor Window Size + SetEditorWindowSize(); + } + + public void OnGUI() + { + DrawEditorPanel(); + } + + + void DrawEditorPanel() + { + // label + GUILayout.Label("Import Settings", EditorStyles.boldLabel); + + EditorGUI.BeginChangeCheck(); + + // Sprite Texture Selection + m_JsonFile = EditorGUILayout.ObjectField("Sprite Data Source", m_JsonFile, typeof(TextAsset), false) as TextAsset; + + m_SpriteDataFormat = (SpriteAssetImportFormats)EditorGUILayout.EnumPopup("Import Format", m_SpriteDataFormat); + + // Sprite Texture Selection + m_SpriteAtlas = EditorGUILayout.ObjectField("Sprite Texture Atlas", m_SpriteAtlas, typeof(Texture2D), false) as Texture2D; + + if (EditorGUI.EndChangeCheck()) + { + m_CreationFeedback = string.Empty; + } + + GUILayout.Space(10); + + GUI.enabled = m_JsonFile != null && m_SpriteAtlas != null && m_SpriteDataFormat == SpriteAssetImportFormats.TexturePacker; + + // Create Sprite Asset + if (GUILayout.Button("Create Sprite Asset")) + { + m_CreationFeedback = string.Empty; + + // Read json data file + if (m_JsonFile != null && m_SpriteDataFormat == SpriteAssetImportFormats.TexturePacker) + { + TexturePacker.SpriteDataObject sprites = JsonUtility.FromJson(m_JsonFile.text); + + if (sprites != null && sprites.frames != null && sprites.frames.Count > 0) + { + int spriteCount = sprites.frames.Count; + + // Update import results + m_CreationFeedback = "Import Results\n--------------------\n"; + m_CreationFeedback += "" + spriteCount + " Sprites were imported from file."; + + // Create sprite info list + m_SpriteInfoList = CreateSpriteInfoList(sprites); + } + } + + } + + GUI.enabled = true; + + // Creation Feedback + GUILayout.Space(5); + GUILayout.BeginVertical(EditorStyles.helpBox, GUILayout.Height(60)); + { + EditorGUILayout.LabelField(m_CreationFeedback, TMP_UIStyleManager.label); + } + GUILayout.EndVertical(); + + GUILayout.Space(5); + GUI.enabled = m_JsonFile != null && m_SpriteAtlas && m_SpriteInfoList != null && m_SpriteInfoList.Count > 0; // Enable Save Button if font_Atlas is not Null. + if (GUILayout.Button("Save Sprite Asset") && m_JsonFile != null) + { + string filePath = EditorUtility.SaveFilePanel("Save Sprite Asset File", new FileInfo(AssetDatabase.GetAssetPath(m_JsonFile)).DirectoryName, m_JsonFile.name, "asset"); + + if (filePath.Length == 0) + return; + + SaveSpriteAsset(filePath); + } + GUI.enabled = true; + } + + + /// + /// + /// + List CreateSpriteInfoList(TexturePacker.SpriteDataObject spriteDataObject) + { + List importedSprites = spriteDataObject.frames; + + List spriteInfoList = new List(); + + for (int i = 0; i < importedSprites.Count; i++) + { + TMP_Sprite sprite = new TMP_Sprite(); + + sprite.id = i; + sprite.name = Path.GetFileNameWithoutExtension(importedSprites[i].filename) ?? ""; + sprite.hashCode = TMP_TextUtilities.GetSimpleHashCode(sprite.name); + + // Attempt to extract Unicode value from name + int unicode; + int indexOfSeperator = sprite.name.IndexOf('-'); + if (indexOfSeperator != -1) + unicode = TMP_TextUtilities.StringHexToInt(sprite.name.Substring(indexOfSeperator + 1)); + else + unicode = TMP_TextUtilities.StringHexToInt(sprite.name); + + sprite.unicode = unicode; + + sprite.x = importedSprites[i].frame.x; + sprite.y = m_SpriteAtlas.height - (importedSprites[i].frame.y + importedSprites[i].frame.h); + sprite.width = importedSprites[i].frame.w; + sprite.height = importedSprites[i].frame.h; + + //Calculate sprite pivot position + sprite.pivot = importedSprites[i].pivot; + + // Properties the can be modified + sprite.xAdvance = sprite.width; + sprite.scale = 1.0f; + sprite.xOffset = 0 - (sprite.width * sprite.pivot.x); + sprite.yOffset = sprite.height - (sprite.height * sprite.pivot.y); + + spriteInfoList.Add(sprite); + } + + return spriteInfoList; + } + + + /// + /// + /// + /// + void SaveSpriteAsset(string filePath) + { + filePath = filePath.Substring(0, filePath.Length - 6); // Trim file extension from filePath. + + string dataPath = Application.dataPath; + + if (filePath.IndexOf(dataPath, System.StringComparison.InvariantCultureIgnoreCase) == -1) + { + Debug.LogError("You're saving the font asset in a directory outside of this project folder. This is not supported. Please select a directory under \"" + dataPath + "\""); + return; + } + + string relativeAssetPath = filePath.Substring(dataPath.Length - 6); + string dirName = Path.GetDirectoryName(relativeAssetPath); + string fileName = Path.GetFileNameWithoutExtension(relativeAssetPath); + string pathNoExt = dirName + "/" + fileName; + + + // Create new Sprite Asset using this texture + m_SpriteAsset = CreateInstance(); + AssetDatabase.CreateAsset(m_SpriteAsset, pathNoExt + ".asset"); + + // Compute the hash code for the sprite asset. + m_SpriteAsset.hashCode = TMP_TextUtilities.GetSimpleHashCode(m_SpriteAsset.name); + + // Assign new Sprite Sheet texture to the Sprite Asset. + m_SpriteAsset.spriteSheet = m_SpriteAtlas; + m_SpriteAsset.spriteInfoList = m_SpriteInfoList; + + // Add new default material for sprite asset. + AddDefaultMaterial(m_SpriteAsset); + } + + + /// + /// Create and add new default material to sprite asset. + /// + /// + static void AddDefaultMaterial(TMP_SpriteAsset spriteAsset) + { + Shader shader = Shader.Find("TextMeshPro/Sprite"); + Material material = new Material(shader); + material.SetTexture(ShaderUtilities.ID_MainTex, spriteAsset.spriteSheet); + + spriteAsset.material = material; + material.hideFlags = HideFlags.HideInHierarchy; + AssetDatabase.AddObjectToAsset(material, spriteAsset); + } + + + /// + /// Limits the minimum size of the editor window. + /// + void SetEditorWindowSize() + { + EditorWindow editorWindow = this; + + Vector2 currentWindowSize = editorWindow.minSize; + + editorWindow.minSize = new Vector2(Mathf.Max(230, currentWindowSize.x), Mathf.Max(300, currentWindowSize.y)); + } + + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetImporter.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetImporter.cs.meta new file mode 100644 index 0000000..6aa809c --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetImporter.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: f1ea944dcf8849ebab391e461b99ccb7 +timeCreated: 1480023525 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetMenu.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetMenu.cs new file mode 100644 index 0000000..34dff5d --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetMenu.cs @@ -0,0 +1,329 @@ +using UnityEngine; +using UnityEngine.TextCore; +using UnityEditor; +using System.Linq; +using System.IO; +using System.Collections; +using System.Collections.Generic; + + +namespace TMPro.EditorUtilities +{ + + public static class TMP_SpriteAssetMenu + { + // Add a Context Menu to the Sprite Asset Editor Panel to Create and Add a Default Material. + [MenuItem("CONTEXT/TMP_SpriteAsset/Add Default Material", false, 2200)] + static void CopyTexture(MenuCommand command) + { + TMP_SpriteAsset spriteAsset = (TMP_SpriteAsset)command.context; + + // Make sure the sprite asset already contains a default material + if (spriteAsset != null && spriteAsset.material == null) + { + // Add new default material for sprite asset. + AddDefaultMaterial(spriteAsset); + } + } + + // Add a Context Menu to the Sprite Asset Editor Panel to update existing sprite assets. + [MenuItem("CONTEXT/TMP_SpriteAsset/Update Sprite Asset", false, 2100)] + static void UpdateSpriteAsset(MenuCommand command) + { + TMP_SpriteAsset spriteAsset = (TMP_SpriteAsset)command.context; + + if (spriteAsset == null) + return; + + // Get a list of all the sprites contained in the texture referenced by the sprite asset. + // This only works if the texture is set to sprite mode. + string filePath = AssetDatabase.GetAssetPath(spriteAsset.spriteSheet); + + if (string.IsNullOrEmpty(filePath)) + return; + + // Get all the Sprites sorted Left to Right / Top to Bottom + Sprite[] sprites = AssetDatabase.LoadAllAssetsAtPath(filePath).Select(x => x as Sprite).Where(x => x != null).OrderByDescending(x => x.rect.y).ThenBy(x => x.rect.x).ToArray(); + + List spriteGlyphTable = spriteAsset.spriteGlyphTable; + + // Finding available glyph indexes to insert new glyphs into. + var tempGlyphTable = spriteGlyphTable.OrderBy(glyph => glyph.index).ToList(); + List availableGlyphIndexes = new List(); + + int elementIndex = 0; + for (uint i = 0; i < tempGlyphTable[tempGlyphTable.Count - 1].index; i++) + { + uint currentElementIndex = tempGlyphTable[elementIndex].index; + + if (i == currentElementIndex) + elementIndex += 1; + else + availableGlyphIndexes.Add(i); + } + + // Iterate over each of the sprites in the texture to try to match them to existing sprites in the sprite asset. + for (int i = 0; i < sprites.Length; i++) + { + int id = sprites[i].GetInstanceID(); + + int glyphIndex = spriteGlyphTable.FindIndex(item => item.sprite.GetInstanceID() == id); + + if (glyphIndex == -1) + { + // Add new Sprite Glyph to the table + Sprite sprite = sprites[i]; + + TMP_SpriteGlyph spriteGlyph = new TMP_SpriteGlyph(); + + // Get available glyph index + if (availableGlyphIndexes.Count > 0) + { + spriteGlyph.index = availableGlyphIndexes[0]; + availableGlyphIndexes.RemoveAt(0); + } + else + spriteGlyph.index = (uint)spriteGlyphTable.Count; + + spriteGlyph.metrics = new GlyphMetrics(sprite.rect.width, sprite.rect.height, -sprite.pivot.x, sprite.rect.height - sprite.pivot.y, sprite.rect.width); + spriteGlyph.glyphRect = new GlyphRect(sprite.rect); + spriteGlyph.scale = 1.0f; + spriteGlyph.sprite = sprite; + + spriteGlyphTable.Add(spriteGlyph); + + TMP_SpriteCharacter spriteCharacter = new TMP_SpriteCharacter(0, spriteGlyph); + spriteCharacter.name = sprite.name; + spriteCharacter.scale = 1.0f; + + spriteAsset.spriteCharacterTable.Add(spriteCharacter); + } + else + { + // Look for changes in existing Sprite Glyph + Sprite sprite = sprites[i]; + + TMP_SpriteGlyph spriteGlyph = spriteGlyphTable[glyphIndex]; + + // We only update changes to the sprite position / glyph rect. + if (spriteGlyph.glyphRect.x != sprite.rect.x || spriteGlyph.glyphRect.y != sprite.rect.y || spriteGlyph.glyphRect.width != sprite.rect.width || spriteGlyph.glyphRect.height != sprite.rect.height) + spriteGlyph.glyphRect = new GlyphRect(sprite.rect); + } + } + + // Sort glyph table by glyph index + spriteAsset.SortGlyphTable(); + spriteAsset.UpdateLookupTables(); + TMPro_EventManager.ON_SPRITE_ASSET_PROPERTY_CHANGED(true, spriteAsset); + } + + + [MenuItem("Assets/Create/TextMeshPro/Sprite Asset", false, 110)] + public static void CreateSpriteAsset() + { + Object target = Selection.activeObject; + + // Make sure the selection is a texture. + if (target == null || target.GetType() != typeof(Texture2D)) + { + Debug.LogWarning("A texture which contains sprites must first be selected in order to create a TextMesh Pro Sprite Asset."); + return; + } + + Texture2D sourceTex = target as Texture2D; + + // Get the path to the selected texture. + string filePathWithName = AssetDatabase.GetAssetPath(sourceTex); + string fileNameWithExtension = Path.GetFileName(filePathWithName); + string fileNameWithoutExtension = Path.GetFileNameWithoutExtension(filePathWithName); + string filePath = filePathWithName.Replace(fileNameWithExtension, ""); + + // Check if Sprite Asset already exists + TMP_SpriteAsset spriteAsset = AssetDatabase.LoadAssetAtPath(filePath + fileNameWithoutExtension + ".asset", typeof(TMP_SpriteAsset)) as TMP_SpriteAsset; + bool isNewAsset = spriteAsset == null ? true : false; + + if (isNewAsset) + { + // Create new Sprite Asset using this texture + spriteAsset = ScriptableObject.CreateInstance(); + AssetDatabase.CreateAsset(spriteAsset, filePath + fileNameWithoutExtension + ".asset"); + + spriteAsset.version = "1.1.0"; + + // Compute the hash code for the sprite asset. + spriteAsset.hashCode = TMP_TextUtilities.GetSimpleHashCode(spriteAsset.name); + + // Assign new Sprite Sheet texture to the Sprite Asset. + spriteAsset.spriteSheet = sourceTex; + + List spriteGlyphTable = new List(); + List spriteCharacterTable = new List(); + + PopulateSpriteTables(sourceTex, ref spriteCharacterTable, ref spriteGlyphTable); + + spriteAsset.spriteCharacterTable = spriteCharacterTable; + spriteAsset.spriteGlyphTable = spriteGlyphTable; + + // Add new default material for sprite asset. + AddDefaultMaterial(spriteAsset); + } + //else + //{ + // spriteAsset.spriteInfoList = UpdateSpriteInfo(spriteAsset); + + // // Make sure the sprite asset already contains a default material + // if (spriteAsset.material == null) + // { + // // Add new default material for sprite asset. + // AddDefaultMaterial(spriteAsset); + // } + + //} + + // Update Lookup tables. + spriteAsset.UpdateLookupTables(); + + // Get the Sprites contained in the Sprite Sheet + EditorUtility.SetDirty(spriteAsset); + + //spriteAsset.sprites = sprites; + + // Set source texture back to Not Readable. + //texImporter.isReadable = false; + + + AssetDatabase.SaveAssets(); + + AssetDatabase.ImportAsset(AssetDatabase.GetAssetPath(spriteAsset)); // Re-import font asset to get the new updated version. + + //AssetDatabase.Refresh(); + } + + + private static void PopulateSpriteTables(Texture source, ref List spriteCharacterTable, ref List spriteGlyphTable) + { + //Debug.Log("Creating new Sprite Asset."); + + string filePath = AssetDatabase.GetAssetPath(source); + + // Get all the Sprites sorted by Index + Sprite[] sprites = AssetDatabase.LoadAllAssetsAtPath(filePath).Select(x => x as Sprite).Where(x => x != null).OrderByDescending(x => x.rect.y).ThenBy(x => x.rect.x).ToArray(); + + for (int i = 0; i < sprites.Length; i++) + { + Sprite sprite = sprites[i]; + + TMP_SpriteGlyph spriteGlyph = new TMP_SpriteGlyph(); + spriteGlyph.index = (uint)i; + spriteGlyph.metrics = new GlyphMetrics(sprite.rect.width, sprite.rect.height, -sprite.pivot.x, sprite.rect.height - sprite.pivot.y, sprite.rect.width); + spriteGlyph.glyphRect = new GlyphRect(sprite.rect); + spriteGlyph.scale = 1.0f; + spriteGlyph.sprite = sprite; + + spriteGlyphTable.Add(spriteGlyph); + + TMP_SpriteCharacter spriteCharacter = new TMP_SpriteCharacter(0, spriteGlyph); + spriteCharacter.name = sprite.name; + spriteCharacter.scale = 1.0f; + + spriteCharacterTable.Add(spriteCharacter); + } + } + + + /// + /// Create and add new default material to sprite asset. + /// + /// + private static void AddDefaultMaterial(TMP_SpriteAsset spriteAsset) + { + Shader shader = Shader.Find("TextMeshPro/Sprite"); + Material material = new Material(shader); + material.SetTexture(ShaderUtilities.ID_MainTex, spriteAsset.spriteSheet); + + spriteAsset.material = material; + material.hideFlags = HideFlags.HideInHierarchy; + AssetDatabase.AddObjectToAsset(material, spriteAsset); + } + + + // Update existing SpriteInfo + private static List UpdateSpriteInfo(TMP_SpriteAsset spriteAsset) + { + //Debug.Log("Updating Sprite Asset."); + + string filePath = AssetDatabase.GetAssetPath(spriteAsset.spriteSheet); + + // Get all the Sprites sorted Left to Right / Top to Bottom + Sprite[] sprites = AssetDatabase.LoadAllAssetsAtPath(filePath).Select(x => x as Sprite).Where(x => x != null).OrderByDescending(x => x.rect.y).ThenBy(x => x.rect.x).ToArray(); + + for (int i = 0; i < sprites.Length; i++) + { + Sprite sprite = sprites[i]; + + // Check if the sprite is already contained in the SpriteInfoList + int index = -1; + if (spriteAsset.spriteInfoList.Count > i && spriteAsset.spriteInfoList[i].sprite != null) + index = spriteAsset.spriteInfoList.FindIndex(item => item.sprite.GetInstanceID() == sprite.GetInstanceID()); + + // Use existing SpriteInfo if it already exists + TMP_Sprite spriteInfo = index == -1 ? new TMP_Sprite() : spriteAsset.spriteInfoList[index]; + + Rect spriteRect = sprite.rect; + spriteInfo.x = spriteRect.x; + spriteInfo.y = spriteRect.y; + spriteInfo.width = spriteRect.width; + spriteInfo.height = spriteRect.height; + + // Get Sprite Pivot + Vector2 pivot = new Vector2(0 - (sprite.bounds.min.x) / (sprite.bounds.extents.x * 2), 0 - (sprite.bounds.min.y) / (sprite.bounds.extents.y * 2)); + + // The position of the pivot influences the Offset position. + spriteInfo.pivot = new Vector2(0 - pivot.x * spriteRect.width, spriteRect.height - pivot.y * spriteRect.height); + + if (index == -1) + { + // Find the next available index for this Sprite + int[] ids = spriteAsset.spriteInfoList.Select(item => item.id).ToArray(); + + int id = 0; + for (int j = 0; j < ids.Length; j++ ) + { + if (ids[0] != 0) break; + + if (j > 0 && (ids[j] - ids[j - 1]) > 1) + { + id = ids[j - 1] + 1; + break; + } + + id = j + 1; + } + + spriteInfo.sprite = sprite; + spriteInfo.name = sprite.name; + spriteInfo.hashCode = TMP_TextUtilities.GetSimpleHashCode(spriteInfo.name); + spriteInfo.id = id; + spriteInfo.xAdvance = spriteRect.width; + spriteInfo.scale = 1.0f; + + spriteInfo.xOffset = spriteInfo.pivot.x; + spriteInfo.yOffset = spriteInfo.pivot.y; + + spriteAsset.spriteInfoList.Add(spriteInfo); + + // Sort the Sprites by ID + spriteAsset.spriteInfoList = spriteAsset.spriteInfoList.OrderBy(s => s.id).ToList(); + } + else + { + spriteAsset.spriteInfoList[index] = spriteInfo; + } + } + + return spriteAsset.spriteInfoList; + } + + + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetMenu.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetMenu.cs.meta new file mode 100644 index 0000000..87ee603 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteAssetMenu.cs.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 1048a87135154606808bf2030da32d18 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteCharacterPropertyDrawer.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteCharacterPropertyDrawer.cs new file mode 100644 index 0000000..506b49b --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteCharacterPropertyDrawer.cs @@ -0,0 +1,225 @@ +using UnityEngine; +using UnityEngine.TextCore; +using UnityEditor; +using System.Collections; + + +namespace TMPro.EditorUtilities +{ + + [CustomPropertyDrawer(typeof(TMP_SpriteCharacter))] + public class TMP_SpriteCharacterPropertyDrawer : PropertyDrawer + { + int m_GlyphSelectedForEditing = -1; + + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + SerializedProperty prop_SpriteName = property.FindPropertyRelative("m_Name"); + SerializedProperty prop_SpriteNameHashCode = property.FindPropertyRelative("m_HashCode"); + SerializedProperty prop_SpriteUnicode = property.FindPropertyRelative("m_Unicode"); + SerializedProperty prop_SpriteGlyphIndex = property.FindPropertyRelative("m_GlyphIndex"); + SerializedProperty prop_SpriteScale = property.FindPropertyRelative("m_Scale"); + + + GUIStyle style = new GUIStyle(EditorStyles.label); + style.richText = true; + + EditorGUIUtility.labelWidth = 40f; + EditorGUIUtility.fieldWidth = 50; + + Rect rect = new Rect(position.x + 60, position.y, position.width, 49); + + // Display non-editable fields + if (GUI.enabled == false) + { + // Sprite Character Index + int.TryParse(property.displayName.Split(' ')[1], out int spriteCharacterIndex); + EditorGUI.LabelField(new Rect(rect.x, rect.y, 75f, 18), new GUIContent("Index: " + spriteCharacterIndex + ""), style); + + EditorGUI.LabelField(new Rect(rect.x + 75f, rect.y, 120f, 18), new GUIContent("Unicode: 0x" + prop_SpriteUnicode.intValue.ToString("X") + ""), style); + EditorGUI.LabelField(new Rect(rect.x + 195f, rect.y, rect.width - 255, 18), new GUIContent("Name: " + prop_SpriteName.stringValue + ""), style); + + EditorGUI.LabelField(new Rect(rect.x, rect.y + 18, 120, 18), new GUIContent("Glyph ID: " + prop_SpriteGlyphIndex.intValue + ""), style); + + // Draw Sprite Glyph (if exists) + DrawSpriteGlyph(position, property); + + EditorGUI.LabelField(new Rect(rect.x, rect.y + 36, 80, 18), new GUIContent("Scale: " + prop_SpriteScale.floatValue + ""), style); + } + else // Display editable fields + { + // Get a reference to the underlying Sprite Asset + TMP_SpriteAsset spriteAsset = property.serializedObject.targetObject as TMP_SpriteAsset; + + // Sprite Character Index + int.TryParse(property.displayName.Split(' ')[1], out int spriteCharacterIndex); + + EditorGUI.LabelField(new Rect(rect.x, rect.y, 75f, 18), new GUIContent("Index: " + spriteCharacterIndex + ""), style); + + EditorGUIUtility.labelWidth = 55f; + GUI.SetNextControlName("Unicode Input"); + EditorGUI.BeginChangeCheck(); + string unicode = EditorGUI.DelayedTextField(new Rect(rect.x + 75f, rect.y, 120, 18), "Unicode:", prop_SpriteUnicode.intValue.ToString("X")); + + if (GUI.GetNameOfFocusedControl() == "Unicode Input") + { + //Filter out unwanted characters. + char chr = Event.current.character; + if ((chr < '0' || chr > '9') && (chr < 'a' || chr > 'f') && (chr < 'A' || chr > 'F')) + { + Event.current.character = '\0'; + } + } + + if (EditorGUI.EndChangeCheck()) + { + // Update Unicode value + prop_SpriteUnicode.intValue = TMP_TextUtilities.StringHexToInt(unicode); + spriteAsset.m_IsSpriteAssetLookupTablesDirty = true; + } + + EditorGUIUtility.labelWidth = 41f; + EditorGUI.BeginChangeCheck(); + EditorGUI.DelayedTextField(new Rect(rect.x + 195f, rect.y, rect.width - 255, 18), prop_SpriteName, new GUIContent("Name:")); + if (EditorGUI.EndChangeCheck()) + { + // Recompute hashCode for new name + prop_SpriteNameHashCode.intValue = TMP_TextUtilities.GetSimpleHashCode(prop_SpriteName.stringValue); + spriteAsset.m_IsSpriteAssetLookupTablesDirty = true; + } + + EditorGUIUtility.labelWidth = 59f; + EditorGUI.BeginChangeCheck(); + EditorGUI.DelayedIntField(new Rect(rect.x, rect.y + 18, 100, 18), prop_SpriteGlyphIndex, new GUIContent("Glyph ID:")); + if (EditorGUI.EndChangeCheck()) + { + spriteAsset.m_IsSpriteAssetLookupTablesDirty = true; + } + + // Draw Sprite Glyph (if exists) + DrawSpriteGlyph(position, property); + + int glyphIndex = prop_SpriteGlyphIndex.intValue; + + // Reset glyph selection if new character has been selected. + if (GUI.enabled && m_GlyphSelectedForEditing != glyphIndex) + m_GlyphSelectedForEditing = -1; + + // Display button to edit the glyph data. + if (GUI.Button(new Rect(rect.x + 120, rect.y + 18, 75, 18), new GUIContent("Edit Glyph"))) + { + if (m_GlyphSelectedForEditing == -1) + m_GlyphSelectedForEditing = glyphIndex; + else + m_GlyphSelectedForEditing = -1; + + // Button clicks should not result in potential change. + GUI.changed = false; + } + + // Show the glyph property drawer if selected + if (glyphIndex == m_GlyphSelectedForEditing && GUI.enabled) + { + if (spriteAsset != null) + { + // Lookup glyph and draw glyph (if available) + int elementIndex = spriteAsset.spriteGlyphTable.FindIndex(item => item.index == glyphIndex); + + if (elementIndex != -1) + { + // Get a reference to the Sprite Glyph Table + SerializedProperty prop_SpriteGlyphTable = property.serializedObject.FindProperty("m_SpriteGlyphTable"); + + SerializedProperty prop_SpriteGlyph = prop_SpriteGlyphTable.GetArrayElementAtIndex(elementIndex); + SerializedProperty prop_GlyphMetrics = prop_SpriteGlyph.FindPropertyRelative("m_Metrics"); + SerializedProperty prop_GlyphRect = prop_SpriteGlyph.FindPropertyRelative("m_GlyphRect"); + + Rect newRect = EditorGUILayout.GetControlRect(false, 115); + EditorGUI.DrawRect(new Rect(newRect.x + 62, newRect.y - 20, newRect.width - 62, newRect.height - 5), new Color(0.1f, 0.1f, 0.1f, 0.45f)); + EditorGUI.DrawRect(new Rect(newRect.x + 63, newRect.y - 19, newRect.width - 64, newRect.height - 7), new Color(0.3f, 0.3f, 0.3f, 0.8f)); + + // Display GlyphRect + newRect.x += 65; + newRect.y -= 18; + newRect.width += 5; + EditorGUI.PropertyField(newRect, prop_GlyphRect); + + // Display GlyphMetrics + newRect.y += 45; + EditorGUI.PropertyField(newRect, prop_GlyphMetrics); + + rect.y += 120; + } + } + } + + EditorGUIUtility.labelWidth = 39f; + EditorGUI.PropertyField(new Rect(rect.x, rect.y + 36, 80, 18), prop_SpriteScale, new GUIContent("Scale:")); + } + } + + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + return 58; + } + + + void DrawSpriteGlyph(Rect position, SerializedProperty property) + { + // Get a reference to the sprite glyph table + TMP_SpriteAsset spriteAsset = property.serializedObject.targetObject as TMP_SpriteAsset; + + if (spriteAsset == null) + return; + + int glyphIndex = property.FindPropertyRelative("m_GlyphIndex").intValue; + + // Lookup glyph and draw glyph (if available) + int elementIndex = spriteAsset.spriteGlyphTable.FindIndex(item => item.index == glyphIndex); + + if (elementIndex != -1) + { + // Get a reference to the Sprite Glyph Table + SerializedProperty prop_SpriteGlyphTable = property.serializedObject.FindProperty("m_SpriteGlyphTable"); + SerializedProperty prop_SpriteGlyph = prop_SpriteGlyphTable.GetArrayElementAtIndex(elementIndex); + SerializedProperty prop_GlyphRect = prop_SpriteGlyph.FindPropertyRelative("m_GlyphRect"); + + // Get a reference to the sprite texture + Texture tex = spriteAsset.spriteSheet; + + // Return if we don't have a texture assigned to the sprite asset. + if (tex == null) + { + Debug.LogWarning("Please assign a valid Sprite Atlas texture to the [" + spriteAsset.name + "] Sprite Asset.", spriteAsset); + return; + } + + Vector2 spriteTexPosition = new Vector2(position.x, position.y); + Vector2 spriteSize = new Vector2(48, 48); + Vector2 alignmentOffset = new Vector2((58 - spriteSize.x) / 2, (58 - spriteSize.y) / 2); + + float x = prop_GlyphRect.FindPropertyRelative("m_X").intValue; + float y = prop_GlyphRect.FindPropertyRelative("m_Y").intValue; + float spriteWidth = prop_GlyphRect.FindPropertyRelative("m_Width").intValue; + float spriteHeight = prop_GlyphRect.FindPropertyRelative("m_Height").intValue; + + if (spriteWidth >= spriteHeight) + { + spriteSize.y = spriteHeight * spriteSize.x / spriteWidth; + spriteTexPosition.y += (spriteSize.x - spriteSize.y) / 2; + } + else + { + spriteSize.x = spriteWidth * spriteSize.y / spriteHeight; + spriteTexPosition.x += (spriteSize.y - spriteSize.x) / 2; + } + + // Compute the normalized texture coordinates + Rect texCoords = new Rect(x / tex.width, y / tex.height, spriteWidth / tex.width, spriteHeight / tex.height); + GUI.DrawTextureWithTexCoords(new Rect(spriteTexPosition.x + alignmentOffset.x, spriteTexPosition.y + alignmentOffset.y, spriteSize.x, spriteSize.y), tex, texCoords, true); + } + } + + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteCharacterPropertyDrawer.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteCharacterPropertyDrawer.cs.meta new file mode 100644 index 0000000..636acc8 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteCharacterPropertyDrawer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 37cff9f5a86ae494c8cb04423580480d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteGlyphPropertyDrawer.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteGlyphPropertyDrawer.cs new file mode 100644 index 0000000..d218701 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteGlyphPropertyDrawer.cs @@ -0,0 +1,93 @@ +using UnityEngine; +using UnityEngine.TextCore; +using UnityEditor; +using System.Collections; + + +namespace TMPro.EditorUtilities +{ + + [CustomPropertyDrawer(typeof(TMP_SpriteGlyph))] + public class TMP_SpriteGlyphPropertyDrawer : PropertyDrawer + { + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + SerializedProperty prop_GlyphIndex = property.FindPropertyRelative("m_Index"); + SerializedProperty prop_GlyphMetrics = property.FindPropertyRelative("m_Metrics"); + SerializedProperty prop_GlyphRect = property.FindPropertyRelative("m_GlyphRect"); + SerializedProperty prop_Scale = property.FindPropertyRelative("m_Scale"); + SerializedProperty prop_AtlasIndex = property.FindPropertyRelative("m_AtlasIndex"); + + GUIStyle style = new GUIStyle(EditorStyles.label); + style.richText = true; + + Rect rect = new Rect(position.x + 70, position.y, position.width, 49); + + // Draw GlyphRect + EditorGUI.PropertyField(rect, prop_GlyphRect); + + // Draw GlyphMetrics + rect.y += 45; + EditorGUI.PropertyField(rect, prop_GlyphMetrics); + + EditorGUIUtility.labelWidth = 40f; + EditorGUI.PropertyField(new Rect(rect.x, rect.y + 65, 75, 18), prop_Scale, new GUIContent("Scale:")); + + EditorGUIUtility.labelWidth = 74f; + EditorGUI.PropertyField(new Rect(rect.x + 85, rect.y + 65, 95, 18), prop_AtlasIndex, new GUIContent("Atlas Index:")); + + DrawGlyph(position, property); + + int.TryParse(property.displayName.Split(' ')[1], out int spriteCharacterIndex); + float labelWidthIndex = GUI.skin.label.CalcSize(new GUIContent("#" + spriteCharacterIndex)).x; + EditorGUI.LabelField(new Rect(position.x, position.y + 5, 64f, 18f), new GUIContent("#" + spriteCharacterIndex), style); + + float labelWidthID = GUI.skin.label.CalcSize(new GUIContent("ID: " + prop_GlyphIndex.intValue)).x; + EditorGUI.LabelField(new Rect(position.x + (64 - labelWidthID) / 2, position.y + 110, 64f, 18f), new GUIContent("ID: " + prop_GlyphIndex.intValue + ""), style); + } + + void DrawGlyph(Rect position, SerializedProperty property) + { + // Get a reference to the sprite texture + Texture tex = (property.serializedObject.targetObject as TMP_SpriteAsset).spriteSheet; + + // Return if we don't have a texture assigned to the sprite asset. + if (tex == null) + { + Debug.LogWarning("Please assign a valid Sprite Atlas texture to the [" + property.serializedObject.targetObject.name + "] Sprite Asset.", property.serializedObject.targetObject); + return; + } + + Vector2 spriteTexPosition = new Vector2(position.x, position.y); + Vector2 spriteSize = new Vector2(65, 65); + + SerializedProperty prop_GlyphRect = property.FindPropertyRelative("m_GlyphRect"); + + int spriteImageX = prop_GlyphRect.FindPropertyRelative("m_X").intValue; + int spriteImageY = prop_GlyphRect.FindPropertyRelative("m_Y").intValue; + int spriteImageWidth = prop_GlyphRect.FindPropertyRelative("m_Width").intValue; + int spriteImageHeight = prop_GlyphRect.FindPropertyRelative("m_Height").intValue; + + if (spriteImageWidth >= spriteImageHeight) + { + spriteSize.y = spriteImageHeight * spriteSize.x / spriteImageWidth; + spriteTexPosition.y += (spriteSize.x - spriteSize.y) / 2; + } + else + { + spriteSize.x = spriteImageWidth * spriteSize.y / spriteImageHeight; + spriteTexPosition.x += (spriteSize.y - spriteSize.x) / 2; + } + + // Compute the normalized texture coordinates + Rect texCoords = new Rect((float)spriteImageX / tex.width, (float)spriteImageY / tex.height, (float)spriteImageWidth / tex.width, (float)spriteImageHeight / tex.height); + GUI.DrawTextureWithTexCoords(new Rect(spriteTexPosition.x + 5, spriteTexPosition.y + 32f, spriteSize.x, spriteSize.y), tex, texCoords, true); + } + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + return 130f; + } + + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteGlyphPropertyDrawer.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteGlyphPropertyDrawer.cs.meta new file mode 100644 index 0000000..eb0a221 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SpriteGlyphPropertyDrawer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 056819c66570ca54cadb72330a354050 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_StyleAssetMenu.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_StyleAssetMenu.cs new file mode 100644 index 0000000..db42bb4 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_StyleAssetMenu.cs @@ -0,0 +1,49 @@ +using UnityEngine; +using UnityEditor; +using System.IO; +using System.Collections; + + +namespace TMPro.EditorUtilities +{ + + public static class TMP_StyleAssetMenu + { + + [MenuItem("Assets/Create/TextMeshPro/Style Sheet", false, 120)] + public static void CreateTextMeshProObjectPerform() + { + string filePath; + if (Selection.assetGUIDs.Length == 0) + { + // No asset selected. + filePath = "Assets"; + } + else + { + // Get the path of the selected folder or asset. + filePath = AssetDatabase.GUIDToAssetPath(Selection.assetGUIDs[0]); + + // Get the file extension of the selected asset as it might need to be removed. + string fileExtension = Path.GetExtension(filePath); + if (fileExtension != "") + { + filePath = Path.GetDirectoryName(filePath); + } + } + + + string filePathWithName = AssetDatabase.GenerateUniqueAssetPath(filePath + "/TMP StyleSheet.asset"); + + //// Create new Style Sheet Asset. + TMP_StyleSheet styleSheet = ScriptableObject.CreateInstance(); + + AssetDatabase.CreateAsset(styleSheet, filePathWithName); + + EditorUtility.SetDirty(styleSheet); + + AssetDatabase.SaveAssets(); + } + } + +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_StyleAssetMenu.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_StyleAssetMenu.cs.meta new file mode 100644 index 0000000..94e5b17 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_StyleAssetMenu.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 23a562f2cac6401f9f91251c68a1a794 +timeCreated: 1432690168 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_StyleSheetEditor.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_StyleSheetEditor.cs new file mode 100644 index 0000000..e28df06 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_StyleSheetEditor.cs @@ -0,0 +1,278 @@ +using UnityEngine; +using UnityEditor; + + +namespace TMPro.EditorUtilities +{ + + [CustomPropertyDrawer(typeof(TMP_Style))] + public class StyleDrawer : PropertyDrawer + { + public static readonly float height = 95f; + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + return height; + } + + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + SerializedProperty nameProperty = property.FindPropertyRelative("m_Name"); + SerializedProperty hashCodeProperty = property.FindPropertyRelative("m_HashCode"); + SerializedProperty openingDefinitionProperty = property.FindPropertyRelative("m_OpeningDefinition"); + SerializedProperty closingDefinitionProperty = property.FindPropertyRelative("m_ClosingDefinition"); + SerializedProperty openingDefinitionArray = property.FindPropertyRelative("m_OpeningTagArray"); + SerializedProperty closingDefinitionArray = property.FindPropertyRelative("m_ClosingTagArray"); + + + EditorGUIUtility.labelWidth = 90; + position.height = EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing; + float labelHeight = position.height + 2f; + + EditorGUI.BeginChangeCheck(); + Rect rect0 = new Rect(position.x, position.y, (position.width) / 2 + 5, position.height); + EditorGUI.PropertyField(rect0, nameProperty); + if (EditorGUI.EndChangeCheck()) + { + // Recompute HashCode if name has changed. + hashCodeProperty.intValue = TMP_TextUtilities.GetSimpleHashCode(nameProperty.stringValue); + + property.serializedObject.ApplyModifiedProperties(); + // Dictionary needs to be updated since HashCode has changed. + TMP_StyleSheet.RefreshStyles(); + } + + // HashCode + Rect rect1 = new Rect(rect0.x + rect0.width + 5, position.y, 65, position.height); + GUI.Label(rect1, "HashCode"); + GUI.enabled = false; + rect1.x += 65; + rect1.width = position.width / 2 - 75; + EditorGUI.PropertyField(rect1, hashCodeProperty, GUIContent.none); + + GUI.enabled = true; + + // Text Tags + EditorGUI.BeginChangeCheck(); + + // Opening Tags + position.y += labelHeight; + GUI.Label(position, "Opening Tags"); + Rect textRect1 = new Rect(108, position.y, position.width - 86, 35); + openingDefinitionProperty.stringValue = EditorGUI.TextArea(textRect1, openingDefinitionProperty.stringValue); + if (EditorGUI.EndChangeCheck()) + { + // If any properties have changed, we need to update the Opening and Closing Arrays. + int size = openingDefinitionProperty.stringValue.Length; + + // Adjust array size to match new string length. + if (openingDefinitionArray.arraySize != size) openingDefinitionArray.arraySize = size; + + for (int i = 0; i < size; i++) + { + SerializedProperty element = openingDefinitionArray.GetArrayElementAtIndex(i); + element.intValue = openingDefinitionProperty.stringValue[i]; + } + } + + EditorGUI.BeginChangeCheck(); + + // Closing Tags + position.y += 38; + GUI.Label(position, "Closing Tags"); + Rect textRect2 = new Rect(108, position.y, position.width - 86, 35); + closingDefinitionProperty.stringValue = EditorGUI.TextArea(textRect2, closingDefinitionProperty.stringValue); + + if (EditorGUI.EndChangeCheck()) + { + // If any properties have changed, we need to update the Opening and Closing Arrays. + int size = closingDefinitionProperty.stringValue.Length; + + // Adjust array size to match new string length. + if (closingDefinitionArray.arraySize != size) closingDefinitionArray.arraySize = size; + + for (int i = 0; i < size; i++) + { + SerializedProperty element = closingDefinitionArray.GetArrayElementAtIndex(i); + element.intValue = closingDefinitionProperty.stringValue[i]; + } + } + + } + } + + + + [CustomEditor(typeof(TMP_StyleSheet)), CanEditMultipleObjects] + public class TMP_StyleEditor : Editor + { + + SerializedProperty m_StyleListProp; + + int m_SelectedElement = -1; + + //private Event m_CurrentEvent; + int m_Page; + + + + void OnEnable() + { + m_StyleListProp = serializedObject.FindProperty("m_StyleList"); + } + + + public override void OnInspectorGUI() + { + Event currentEvent = Event.current; + + serializedObject.Update(); + + int arraySize = m_StyleListProp.arraySize; + int itemsPerPage = (Screen.height - 178) / 111; + + if (arraySize > 0) + { + // Display each Style entry using the StyleDrawer PropertyDrawer. + for (int i = itemsPerPage * m_Page; i < arraySize && i < itemsPerPage * (m_Page + 1); i++) + { + + // Define the start of the selection region of the element. + Rect elementStartRegion = GUILayoutUtility.GetRect(0f, 0f, GUILayout.ExpandWidth(true)); + + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + + SerializedProperty spriteInfo = m_StyleListProp.GetArrayElementAtIndex(i); + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(spriteInfo); + EditorGUILayout.EndVertical(); + if (EditorGUI.EndChangeCheck()) + { + // + } + + // Define the end of the selection region of the element. + Rect elementEndRegion = GUILayoutUtility.GetRect(0f, 0f, GUILayout.ExpandWidth(true)); + + // Check for Item selection + Rect selectionArea = new Rect(elementStartRegion.x, elementStartRegion.y, elementEndRegion.width, elementEndRegion.y - elementStartRegion.y); + if (DoSelectionCheck(selectionArea)) + { + if (m_SelectedElement == i) + { + m_SelectedElement = -1; + } + else + { + m_SelectedElement = i; + GUIUtility.keyboardControl = 0; + } + } + + // Handle Selection Highlighting + if (m_SelectedElement == i) + { + TMP_EditorUtility.DrawBox(selectionArea, 2f, new Color32(40, 192, 255, 255)); + } + } + } + + int shiftMultiplier = currentEvent.shift ? 10 : 1; // Page + Shift goes 10 page forward + + GUILayout.Space(-3f); + + Rect pagePos = EditorGUILayout.GetControlRect(false, 20); + pagePos.width /= 6; + + // Return if we can't display any items. + if (itemsPerPage == 0) return; + + + // Add new style. + pagePos.x += pagePos.width * 4; + if (GUI.Button(pagePos, "+")) + { + m_StyleListProp.arraySize += 1; + serializedObject.ApplyModifiedProperties(); + TMP_StyleSheet.RefreshStyles(); + } + + + // Delete selected style. + pagePos.x += pagePos.width; + if (m_SelectedElement == -1) GUI.enabled = false; + if (GUI.Button(pagePos, "-")) + { + if (m_SelectedElement != -1) + m_StyleListProp.DeleteArrayElementAtIndex(m_SelectedElement); + + m_SelectedElement = -1; + serializedObject.ApplyModifiedProperties(); + TMP_StyleSheet.RefreshStyles(); + } + + GUILayout.Space(5f); + + pagePos = EditorGUILayout.GetControlRect(false, 20); + pagePos.width /= 3; + + + // Previous Page + if (m_Page > 0) GUI.enabled = true; + else GUI.enabled = false; + + if (GUI.Button(pagePos, "Previous")) + m_Page -= 1 * shiftMultiplier; + + // PAGE COUNTER + GUI.enabled = true; + pagePos.x += pagePos.width; + int totalPages = (int)(arraySize / (float)itemsPerPage + 0.999f); + GUI.Label(pagePos, "Page " + (m_Page + 1) + " / " + totalPages, TMP_UIStyleManager.centeredLabel); + + // Next Page + pagePos.x += pagePos.width; + if (itemsPerPage * (m_Page + 1) < arraySize) GUI.enabled = true; + else GUI.enabled = false; + + if (GUI.Button(pagePos, "Next")) + m_Page += 1 * shiftMultiplier; + + // Clamp page range + m_Page = Mathf.Clamp(m_Page, 0, arraySize / itemsPerPage); + + + if (serializedObject.ApplyModifiedProperties()) + TMPro_EventManager.ON_TEXT_STYLE_PROPERTY_CHANGED(true); + + // Clear selection if mouse event was not consumed. + GUI.enabled = true; + if (currentEvent.type == EventType.MouseDown && currentEvent.button == 0) + m_SelectedElement = -1; + + + } + + + // Check if any of the Style elements were clicked on. + static bool DoSelectionCheck(Rect selectionArea) + { + Event currentEvent = Event.current; + + switch (currentEvent.type) + { + case EventType.MouseDown: + if (selectionArea.Contains(currentEvent.mousePosition) && currentEvent.button == 0) + { + currentEvent.Use(); + return true; + } + break; + } + + return false; + } + + } + +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_StyleSheetEditor.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_StyleSheetEditor.cs.meta new file mode 100644 index 0000000..0da7754 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_StyleSheetEditor.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 34e2c9b9d9e44953933afe37461f44e6 +timeCreated: 1432683777 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SubMeshUI_Editor.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SubMeshUI_Editor.cs new file mode 100644 index 0000000..74bcccc --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SubMeshUI_Editor.cs @@ -0,0 +1,98 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace TMPro.EditorUtilities +{ + [CustomEditor(typeof(TMP_SubMeshUI)), CanEditMultipleObjects] + public class TMP_SubMeshUI_Editor : Editor + { + private struct m_foldout + { // Track Inspector foldout panel states, globally. + //public static bool textInput = true; + public static bool fontSettings = true; + //public static bool extraSettings = false; + //public static bool shadowSetting = false; + //public static bool materialEditor = true; + } + + private SerializedProperty fontAsset_prop; + private SerializedProperty spriteAsset_prop; + + private TMP_SubMeshUI m_SubMeshComponent; + + private CanvasRenderer m_canvasRenderer; + private Editor m_materialEditor; + private Material m_targetMaterial; + + + public void OnEnable() + { + fontAsset_prop = serializedObject.FindProperty("m_fontAsset"); + spriteAsset_prop = serializedObject.FindProperty("m_spriteAsset"); + + m_SubMeshComponent = target as TMP_SubMeshUI; + //m_rectTransform = m_SubMeshComponent.rectTransform; + m_canvasRenderer = m_SubMeshComponent.canvasRenderer; + + + // Create new Material Editor if one does not exists + if (m_canvasRenderer != null && m_canvasRenderer.GetMaterial() != null) + { + m_materialEditor = Editor.CreateEditor(m_canvasRenderer.GetMaterial()); + m_targetMaterial = m_canvasRenderer.GetMaterial(); + } + } + + + public void OnDisable() + { + // Destroy material editor if one exists + if (m_materialEditor != null) + { + //Debug.Log("Destroying Inline Material Editor."); + DestroyImmediate(m_materialEditor); + } + } + + + + public override void OnInspectorGUI() + { + GUI.enabled = false; + EditorGUILayout.PropertyField(fontAsset_prop); + EditorGUILayout.PropertyField(spriteAsset_prop); + GUI.enabled = true; + + EditorGUILayout.Space(); + + // If a Custom Material Editor exists, we use it. + if (m_canvasRenderer != null && m_canvasRenderer.GetMaterial() != null) + { + Material mat = m_canvasRenderer.GetMaterial(); + + //Debug.Log(mat + " " + m_targetMaterial); + + if (mat != m_targetMaterial) + { + // Destroy previous Material Instance + //Debug.Log("New Material has been assigned."); + m_targetMaterial = mat; + DestroyImmediate(m_materialEditor); + } + + + if (m_materialEditor == null) + { + m_materialEditor = Editor.CreateEditor(mat); + } + + m_materialEditor.DrawHeader(); + + + m_materialEditor.OnInspectorGUI(); + } + } + + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SubMeshUI_Editor.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SubMeshUI_Editor.cs.meta new file mode 100644 index 0000000..963ea3c --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SubMeshUI_Editor.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 6b01141ed8f74d198965c86f25eb7040 +timeCreated: 1452757501 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SubMesh_Editor.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SubMesh_Editor.cs new file mode 100644 index 0000000..7597311 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SubMesh_Editor.cs @@ -0,0 +1,76 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + +namespace TMPro.EditorUtilities +{ + [CustomEditor(typeof(TMP_SubMesh)), CanEditMultipleObjects] + public class TMP_SubMesh_Editor : Editor + { + private struct m_foldout + { // Track Inspector foldout panel states, globally. + //public static bool textInput = true; + public static bool fontSettings = true; + //public static bool extraSettings = false; + //public static bool shadowSetting = false; + //public static bool materialEditor = true; + } + + private SerializedProperty fontAsset_prop; + private SerializedProperty spriteAsset_prop; + + private TMP_SubMesh m_SubMeshComponent; + private Renderer m_Renderer; + + public void OnEnable() + { + fontAsset_prop = serializedObject.FindProperty("m_fontAsset"); + spriteAsset_prop = serializedObject.FindProperty("m_spriteAsset"); + + m_SubMeshComponent = target as TMP_SubMesh; + + m_Renderer = m_SubMeshComponent.renderer; + } + + + public override void OnInspectorGUI() + { + EditorGUI.indentLevel = 0; + + GUI.enabled = false; + EditorGUILayout.PropertyField(fontAsset_prop); + EditorGUILayout.PropertyField(spriteAsset_prop); + GUI.enabled = true; + + EditorGUI.BeginChangeCheck(); + + // SORTING LAYERS + var sortingLayerNames = SortingLayerHelper.sortingLayerNames; + + // Look up the layer name using the current layer ID + string oldName = SortingLayerHelper.GetSortingLayerNameFromID(m_Renderer.sortingLayerID); + + // Use the name to look up our array index into the names list + int oldLayerIndex = System.Array.IndexOf(sortingLayerNames, oldName); + + // Show the pop-up for the names + int newLayerIndex = EditorGUILayout.Popup("Sorting Layer", oldLayerIndex, sortingLayerNames); + + // If the index changes, look up the ID for the new index to store as the new ID + if (newLayerIndex != oldLayerIndex) + { + //Undo.RecordObject(renderer, "Edit Sorting Layer"); + m_Renderer.sortingLayerID = SortingLayerHelper.GetSortingLayerIDForIndex(newLayerIndex); + //EditorUtility.SetDirty(renderer); + } + + // Expose the manual sorting order + int newSortingLayerOrder = EditorGUILayout.IntField("Order in Layer", m_Renderer.sortingOrder); + if (newSortingLayerOrder != m_Renderer.sortingOrder) + { + //Undo.RecordObject(renderer, "Edit Sorting Order"); + m_Renderer.sortingOrder = newSortingLayerOrder; + } + } + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SubMesh_Editor.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SubMesh_Editor.cs.meta new file mode 100644 index 0000000..6ab0a94 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_SubMesh_Editor.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: dd2fe74169b54bf58fca17288513ef38 +timeCreated: 1456189048 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_TextAlignmentDrawer.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_TextAlignmentDrawer.cs new file mode 100644 index 0000000..cd96573 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_TextAlignmentDrawer.cs @@ -0,0 +1,119 @@ +using UnityEngine; +using UnityEditor; + +namespace TMPro.EditorUtilities +{ + + [CustomPropertyDrawer(typeof(TextAlignmentOptions))] + public class TMP_TextAlignmentDrawer : PropertyDrawer + { + const int k_AlignmentButtonWidth = 24; + const int k_AlignmentButtonHeight = 20; + const int k_WideViewWidth = 504; + const int k_ControlsSpacing = 6; + const int k_GroupWidth = k_AlignmentButtonWidth * 6; + static readonly int k_TextAlignmentHash = "DoTextAligmentControl".GetHashCode(); + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + return EditorGUIUtility.currentViewWidth > k_WideViewWidth ? k_AlignmentButtonHeight : k_AlignmentButtonHeight * 2 + 3; + } + + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + var id = GUIUtility.GetControlID(k_TextAlignmentHash, FocusType.Keyboard, position); + + EditorGUI.BeginProperty(position, label, property); + { + var controlArea = EditorGUI.PrefixLabel(position, id, label); + + var horizontalAligment = new Rect(controlArea.x, controlArea.y, k_GroupWidth, k_AlignmentButtonHeight); + var verticalAligment = new Rect(!(EditorGUIUtility.currentViewWidth > k_WideViewWidth) ? controlArea.x : horizontalAligment.xMax + k_ControlsSpacing, !(EditorGUIUtility.currentViewWidth > k_WideViewWidth) ? controlArea.y + k_AlignmentButtonHeight + 3 : controlArea.y, k_GroupWidth, k_AlignmentButtonHeight); + + EditorGUI.BeginChangeCheck(); + + var selectedHorizontal = DoHorizontalAligmentControl(horizontalAligment, property); + var selectedVertical = DoVerticalAligmentControl(verticalAligment, property); + + if (EditorGUI.EndChangeCheck()) + { + var value = (0x1 << selectedHorizontal) | (0x100 << selectedVertical); + property.intValue = value; + } + } + EditorGUI.EndProperty(); + } + + static int DoHorizontalAligmentControl(Rect position, SerializedProperty alignment) + { + var selected = TMP_EditorUtility.GetHorizontalAlignmentGridValue(alignment.intValue); + + var values = new bool[6]; + + values[selected] = true; + + if (alignment.hasMultipleDifferentValues) + { + foreach (var obj in alignment.serializedObject.targetObjects) + { + var text = obj as TMP_Text; + if (text != null) + { + values[TMP_EditorUtility.GetHorizontalAlignmentGridValue((int)text.alignment)] = true; + } + } + } + + position.width = k_AlignmentButtonWidth; + + for (var i = 0; i < values.Length; i++) + { + var oldValue = values[i]; + var newValue = TMP_EditorUtility.EditorToggle(position, oldValue, TMP_UIStyleManager.alignContentA[i], i == 0 ? TMP_UIStyleManager.alignmentButtonLeft : (i == 5 ? TMP_UIStyleManager.alignmentButtonRight : TMP_UIStyleManager.alignmentButtonMid)); + if (newValue != oldValue) + { + selected = i; + } + position.x += position.width; + } + + return selected; + } + + static int DoVerticalAligmentControl(Rect position, SerializedProperty alignment) + { + var selected = TMP_EditorUtility.GetVerticalAlignmentGridValue(alignment.intValue); + + var values = new bool[6]; + + values[selected] = true; + + if (alignment.hasMultipleDifferentValues) + { + foreach (var obj in alignment.serializedObject.targetObjects) + { + var text = obj as TMP_Text; + if (text != null) + { + values[TMP_EditorUtility.GetVerticalAlignmentGridValue((int)text.alignment)] = true; + } + } + } + + position.width = k_AlignmentButtonWidth; + + for (var i = 0; i < values.Length; i++) + { + var oldValue = values[i]; + var newValue = TMP_EditorUtility.EditorToggle(position, oldValue, TMP_UIStyleManager.alignContentB[i], i == 0 ? TMP_UIStyleManager.alignmentButtonLeft : (i == 5 ? TMP_UIStyleManager.alignmentButtonRight : TMP_UIStyleManager.alignmentButtonMid)); + if (newValue != oldValue) + { + selected = i; + } + position.x += position.width; + } + + return selected; + } + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_TextAlignmentDrawer.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_TextAlignmentDrawer.cs.meta new file mode 100644 index 0000000..eda4bd8 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_TextAlignmentDrawer.cs.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: c55a64c7570474f47a94abe39ebfef04 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_UIStyleManager.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_UIStyleManager.cs new file mode 100644 index 0000000..ae8bb44 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_UIStyleManager.cs @@ -0,0 +1,134 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + + +namespace TMPro.EditorUtilities +{ + + public static class TMP_UIStyleManager + { + public static GUIStyle label; + public static GUIStyle textAreaBoxWindow; + public static GUIStyle boldFoldout; + public static GUIStyle panelTitle; + public static GUIStyle sectionHeader; + public static GUIStyle centeredLabel; + public static GUIStyle rightLabel; + public static GUIStyle wrappingTextArea; + + public static GUIStyle alignmentButtonLeft; + public static GUIStyle alignmentButtonMid; + public static GUIStyle alignmentButtonRight; + + // Alignment Button Textures + public static Texture2D alignLeft; + public static Texture2D alignCenter; + public static Texture2D alignRight; + public static Texture2D alignJustified; + public static Texture2D alignFlush; + public static Texture2D alignGeoCenter; + public static Texture2D alignTop; + public static Texture2D alignMiddle; + public static Texture2D alignBottom; + public static Texture2D alignBaseline; + public static Texture2D alignMidline; + public static Texture2D alignCapline; + public static Texture2D sectionHeaderTexture; + + public static GUIContent[] alignContentA; + public static GUIContent[] alignContentB; + + static TMP_UIStyleManager() + { + // Find to location of the TextMesh Pro Asset Folder (as users may have moved it) + var tmproAssetFolderPath = TMP_EditorUtility.packageRelativePath; + + if (EditorGUIUtility.isProSkin) + { + alignLeft = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignLeft.psd", typeof(Texture2D)) as Texture2D; + alignCenter = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignCenter.psd", typeof(Texture2D)) as Texture2D; + alignRight = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignRight.psd", typeof(Texture2D)) as Texture2D; + alignJustified = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignJustified.psd", typeof(Texture2D)) as Texture2D; + alignFlush = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignFlush.psd", typeof(Texture2D)) as Texture2D; + alignGeoCenter = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignCenterGeo.psd", typeof(Texture2D)) as Texture2D; + alignTop = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignTop.psd", typeof(Texture2D)) as Texture2D; + alignMiddle = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignMiddle.psd", typeof(Texture2D)) as Texture2D; + alignBottom = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignBottom.psd", typeof(Texture2D)) as Texture2D; + alignBaseline = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignBaseLine.psd", typeof(Texture2D)) as Texture2D; + alignMidline = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignMidLine.psd", typeof(Texture2D)) as Texture2D; + alignCapline = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignCapLine.psd", typeof(Texture2D)) as Texture2D; + sectionHeaderTexture = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/SectionHeader_Dark.psd", typeof(Texture2D)) as Texture2D; + } + else + { + alignLeft = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignLeft_Light.psd", typeof(Texture2D)) as Texture2D; + alignCenter = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignCenter_Light.psd", typeof(Texture2D)) as Texture2D; + alignRight = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignRight_Light.psd", typeof(Texture2D)) as Texture2D; + alignJustified = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignJustified_Light.psd", typeof(Texture2D)) as Texture2D; + alignFlush = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignFlush_Light.psd", typeof(Texture2D)) as Texture2D; + alignGeoCenter = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignCenterGeo_Light.psd", typeof(Texture2D)) as Texture2D; + alignTop = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignTop_Light.psd", typeof(Texture2D)) as Texture2D; + alignMiddle = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignMiddle_Light.psd", typeof(Texture2D)) as Texture2D; + alignBottom = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignBottom_Light.psd", typeof(Texture2D)) as Texture2D; + alignBaseline = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignBaseLine_Light.psd", typeof(Texture2D)) as Texture2D; + alignMidline = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignMidLine_Light.psd", typeof(Texture2D)) as Texture2D; + alignCapline = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/btn_AlignCapLine_Light.psd", typeof(Texture2D)) as Texture2D; + sectionHeaderTexture = AssetDatabase.LoadAssetAtPath(tmproAssetFolderPath + "/Editor Resources/Textures/SectionHeader_Light.psd", typeof(Texture2D)) as Texture2D; + } + + label = new GUIStyle(EditorStyles.label) { richText = true, wordWrap = true, stretchWidth = true }; + textAreaBoxWindow = new GUIStyle(EditorStyles.textArea) { richText = true }; + boldFoldout = new GUIStyle(EditorStyles.foldout) { fontStyle = FontStyle.Bold }; + panelTitle = new GUIStyle(EditorStyles.label) { fontStyle = FontStyle.Bold }; + + sectionHeader = new GUIStyle(EditorStyles.label) { fixedHeight = 22, richText = true, border = new RectOffset(9, 9, 0, 0), overflow = new RectOffset(9, 0, 0, 0), padding = new RectOffset(0, 0, 4, 0) }; + sectionHeader.normal.background = sectionHeaderTexture; + + centeredLabel = new GUIStyle(EditorStyles.label) { alignment = TextAnchor.MiddleCenter}; + rightLabel = new GUIStyle(EditorStyles.label) { alignment = TextAnchor.MiddleRight, richText = true }; + + + alignmentButtonLeft = new GUIStyle(EditorStyles.miniButtonLeft); + alignmentButtonLeft.padding.left = 4; + alignmentButtonLeft.padding.right = 4; + alignmentButtonLeft.padding.top = 2; + alignmentButtonLeft.padding.bottom = 2; + + alignmentButtonMid = new GUIStyle(EditorStyles.miniButtonMid); + alignmentButtonMid.padding.left = 4; + alignmentButtonMid.padding.right = 4; + alignmentButtonLeft.padding.top = 2; + alignmentButtonLeft.padding.bottom = 2; + + alignmentButtonRight = new GUIStyle(EditorStyles.miniButtonRight); + alignmentButtonRight.padding.left = 4; + alignmentButtonRight.padding.right = 4; + alignmentButtonLeft.padding.top = 2; + alignmentButtonLeft.padding.bottom = 2; + + wrappingTextArea = new GUIStyle(EditorStyles.textArea); + wrappingTextArea.wordWrap = true; + + alignContentA = new [] + { + new GUIContent(alignLeft, "Left"), + new GUIContent(alignCenter, "Center"), + new GUIContent(alignRight, "Right"), + new GUIContent(alignJustified, "Justified"), + new GUIContent(alignFlush, "Flush"), + new GUIContent(alignGeoCenter, "Geometry Center") + }; + + alignContentB = new [] + { + new GUIContent(alignTop, "Top"), + new GUIContent(alignMiddle, "Middle"), + new GUIContent(alignBottom, "Bottom"), + new GUIContent(alignBaseline, "Baseline"), + new GUIContent(alignMidline, "Midline"), + new GUIContent(alignCapline, "Capline") + }; + } + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_UIStyleManager.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_UIStyleManager.cs.meta new file mode 100644 index 0000000..f2178f4 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_UIStyleManager.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 30a939dce2fd4073955f2f20e659d506 +timeCreated: 1426454127 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_UiEditorPanel.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_UiEditorPanel.cs new file mode 100644 index 0000000..d44999e --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_UiEditorPanel.cs @@ -0,0 +1,91 @@ +using UnityEngine; +using UnityEngine.UI; +using UnityEditor; + +namespace TMPro.EditorUtilities +{ + + [CustomEditor(typeof(TextMeshProUGUI), true), CanEditMultipleObjects] + public class TMP_UiEditorPanel : TMP_BaseEditorPanel + { + static readonly GUIContent k_RaycastTargetLabel = new GUIContent("Raycast Target", "Whether the text blocks raycasts from the Graphic Raycaster."); + + SerializedProperty m_RaycastTargetProp; + + protected override void OnEnable() + { + base.OnEnable(); + m_RaycastTargetProp = serializedObject.FindProperty("m_RaycastTarget"); + } + + protected override void DrawExtraSettings() + { + Foldout.extraSettings = EditorGUILayout.Foldout(Foldout.extraSettings, k_ExtraSettingsLabel, true, TMP_UIStyleManager.boldFoldout); + if (Foldout.extraSettings) + { + EditorGUI.indentLevel += 1; + + DrawMargins(); + + DrawGeometrySorting(); + + DrawRichText(); + + DrawRaycastTarget(); + + DrawParsing(); + + DrawKerning(); + + DrawPadding(); + + EditorGUI.indentLevel -= 1; + } + } + + protected void DrawRaycastTarget() + { + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(m_RaycastTargetProp, k_RaycastTargetLabel); + if (EditorGUI.EndChangeCheck()) + { + // Change needs to propagate to the child sub objects. + Graphic[] graphicComponents = m_TextComponent.GetComponentsInChildren(); + for (int i = 1; i < graphicComponents.Length; i++) + graphicComponents[i].raycastTarget = m_RaycastTargetProp.boolValue; + + m_HavePropertiesChanged = true; + } + } + + // Method to handle multi object selection + protected override bool IsMixSelectionTypes() + { + GameObject[] objects = Selection.gameObjects; + if (objects.Length > 1) + { + for (int i = 0; i < objects.Length; i++) + { + if (objects[i].GetComponent() == null) + return true; + } + } + return false; + } + protected override void OnUndoRedo() + { + int undoEventId = Undo.GetCurrentGroup(); + int lastUndoEventId = s_EventId; + + if (undoEventId != lastUndoEventId) + { + for (int i = 0; i < targets.Length; i++) + { + //Debug.Log("Undo & Redo Performed detected in Editor Panel. Event ID:" + Undo.GetCurrentGroup()); + TMPro_EventManager.ON_TEXTMESHPRO_UGUI_PROPERTY_CHANGED(true, targets[i] as TextMeshProUGUI); + s_EventId = undoEventId; + } + } + } + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_UiEditorPanel.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_UiEditorPanel.cs.meta new file mode 100644 index 0000000..fa7958a --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_UiEditorPanel.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 21c0044a7f964773be90d197a78e4703 +timeCreated: 1443571501 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_ContextMenus.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_ContextMenus.cs new file mode 100644 index 0000000..b1e9533 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_ContextMenus.cs @@ -0,0 +1,341 @@ +using UnityEngine; +using UnityEditor; +using System.IO; +using System.Collections; + + +namespace TMPro.EditorUtilities +{ + + public class TMP_ContextMenus : Editor + { + + private static Texture m_copiedTexture; + + private static Material m_copiedProperties; + private static Material m_copiedAtlasProperties; + + + // Add a Context Menu to the Texture Editor Panel to allow Copy / Paste of Texture. + [MenuItem("CONTEXT/Texture/Copy", false, 2000)] + static void CopyTexture(MenuCommand command) + { + m_copiedTexture = command.context as Texture; + } + + + // Select the currently assigned material or material preset. + [MenuItem("CONTEXT/Material/Select Material", false, 500)] + static void SelectMaterial(MenuCommand command) + { + Material mat = command.context as Material; + + // Select current material + EditorUtility.FocusProjectWindow(); + EditorGUIUtility.PingObject(mat); + } + + + // Add a Context Menu to allow easy duplication of the Material. + [MenuItem("CONTEXT/Material/Create Material Preset", false)] + static void DuplicateMaterial(MenuCommand command) + { + // Get the type of text object + // If material is not a base material, we get material leaks... + + Material source_Mat = (Material)command.context; + if (!EditorUtility.IsPersistent(source_Mat)) + { + Debug.LogWarning("Material is an instance and cannot be converted into a permanent asset."); + return; + } + + + string assetPath = AssetDatabase.GetAssetPath(source_Mat).Split('.')[0]; + + Material duplicate = new Material(source_Mat); + + // Need to manually copy the shader keywords + duplicate.shaderKeywords = source_Mat.shaderKeywords; + + AssetDatabase.CreateAsset(duplicate, AssetDatabase.GenerateUniqueAssetPath(assetPath + ".mat")); + + // Assign duplicate Material to selected object (if one is) + if (Selection.activeGameObject != null) + { + TMP_Text textObject = Selection.activeGameObject.GetComponent(); + if (textObject != null) + { + textObject.fontSharedMaterial = duplicate; + } + else + { + TMP_SubMesh subMeshObject = Selection.activeGameObject.GetComponent(); + + if (subMeshObject != null) + subMeshObject.sharedMaterial = duplicate; + else + { + TMP_SubMeshUI subMeshUIObject = Selection.activeGameObject.GetComponent(); + + if (subMeshUIObject != null) + subMeshUIObject.sharedMaterial = duplicate; + } + } + } + + // Ping newly created Material Preset. + EditorUtility.FocusProjectWindow(); + EditorGUIUtility.PingObject(duplicate); + } + + + //[MenuItem("CONTEXT/MaterialComponent/Copy Material Properties", false)] + [MenuItem("CONTEXT/Material/Copy Material Properties", false)] + static void CopyMaterialProperties(MenuCommand command) + { + Material mat = null; + if (command.context.GetType() == typeof(Material)) + mat = (Material)command.context; + else + { + mat = Selection.activeGameObject.GetComponent().GetMaterial(); + } + + m_copiedProperties = new Material(mat); + + m_copiedProperties.shaderKeywords = mat.shaderKeywords; + + m_copiedProperties.hideFlags = HideFlags.DontSave; + } + + + // PASTE MATERIAL + //[MenuItem("CONTEXT/MaterialComponent/Paste Material Properties", false)] + [MenuItem("CONTEXT/Material/Paste Material Properties", false)] + static void PasteMaterialProperties(MenuCommand command) + { + + if (m_copiedProperties == null) + { + Debug.LogWarning("No Material Properties to Paste. Use Copy Material Properties first."); + return; + } + + Material mat = null; + if (command.context.GetType() == typeof(Material)) + mat = (Material)command.context; + else + { + mat = Selection.activeGameObject.GetComponent().GetMaterial(); + } + + Undo.RecordObject(mat, "Paste Material"); + + ShaderUtilities.GetShaderPropertyIDs(); // Make sure we have valid Property IDs + if (mat.HasProperty(ShaderUtilities.ID_GradientScale)) + { + // Preserve unique SDF properties from destination material. + m_copiedProperties.SetTexture(ShaderUtilities.ID_MainTex, mat.GetTexture(ShaderUtilities.ID_MainTex)); + m_copiedProperties.SetFloat(ShaderUtilities.ID_GradientScale, mat.GetFloat(ShaderUtilities.ID_GradientScale)); + m_copiedProperties.SetFloat(ShaderUtilities.ID_TextureWidth, mat.GetFloat(ShaderUtilities.ID_TextureWidth)); + m_copiedProperties.SetFloat(ShaderUtilities.ID_TextureHeight, mat.GetFloat(ShaderUtilities.ID_TextureHeight)); + } + + EditorShaderUtilities.CopyMaterialProperties(m_copiedProperties, mat); + + // Copy ShaderKeywords from one material to the other. + mat.shaderKeywords = m_copiedProperties.shaderKeywords; + + // Let TextMeshPro Objects that this mat has changed. + TMPro_EventManager.ON_MATERIAL_PROPERTY_CHANGED(true, mat); + } + + + // Enable Resetting of Material properties without losing unique properties of the font atlas. + [MenuItem("CONTEXT/Material/Reset", false, 2100)] + static void ResetSettings(MenuCommand command) + { + + Material mat = null; + if (command.context.GetType() == typeof(Material)) + mat = (Material)command.context; + else + { + mat = Selection.activeGameObject.GetComponent().GetMaterial(); + } + + Undo.RecordObject(mat, "Reset Material"); + + ShaderUtilities.GetShaderPropertyIDs(); // Make sure we have valid Property IDs + if (mat.HasProperty(ShaderUtilities.ID_GradientScale)) + { + // Copy unique properties of the SDF Material + var texture = mat.GetTexture(ShaderUtilities.ID_MainTex); + var gradientScale = mat.GetFloat(ShaderUtilities.ID_GradientScale); + var texWidth = mat.GetFloat(ShaderUtilities.ID_TextureWidth); + var texHeight = mat.GetFloat(ShaderUtilities.ID_TextureHeight); + + var stencilId = 0.0f; + var stencilComp = 0.0f; + + if (mat.HasProperty(ShaderUtilities.ID_StencilID)) + { + stencilId = mat.GetFloat(ShaderUtilities.ID_StencilID); + stencilComp = mat.GetFloat(ShaderUtilities.ID_StencilComp); + } + + var normalWeight = mat.GetFloat(ShaderUtilities.ID_WeightNormal); + var boldWeight = mat.GetFloat(ShaderUtilities.ID_WeightBold); + + // Reset the material + Unsupported.SmartReset(mat); + + // Reset ShaderKeywords + mat.shaderKeywords = new string[0]; // { "BEVEL_OFF", "GLOW_OFF", "UNDERLAY_OFF" }; + + // Copy unique material properties back to the material. + mat.SetTexture(ShaderUtilities.ID_MainTex, texture); + mat.SetFloat(ShaderUtilities.ID_GradientScale, gradientScale); + mat.SetFloat(ShaderUtilities.ID_TextureWidth, texWidth); + mat.SetFloat(ShaderUtilities.ID_TextureHeight, texHeight); + + if (mat.HasProperty(ShaderUtilities.ID_StencilID)) + { + mat.SetFloat(ShaderUtilities.ID_StencilID, stencilId); + mat.SetFloat(ShaderUtilities.ID_StencilComp, stencilComp); + } + + mat.SetFloat(ShaderUtilities.ID_WeightNormal, normalWeight); + mat.SetFloat(ShaderUtilities.ID_WeightBold, boldWeight); + } + else + { + Unsupported.SmartReset(mat); + } + + TMPro_EventManager.ON_MATERIAL_PROPERTY_CHANGED(true, mat); + } + + + + //This function is used for debugging and fixing potentially broken font atlas links. + [MenuItem("CONTEXT/Material/Copy Atlas", false, 2000)] + static void CopyAtlas(MenuCommand command) + { + Material mat = command.context as Material; + + m_copiedAtlasProperties = new Material(mat); + m_copiedAtlasProperties.hideFlags = HideFlags.DontSave; + } + + + // This function is used for debugging and fixing potentially broken font atlas links + [MenuItem("CONTEXT/Material/Paste Atlas", false, 2001)] + static void PasteAtlas(MenuCommand command) + { + Material mat = command.context as Material; + + if (m_copiedAtlasProperties != null) + { + Undo.RecordObject(mat, "Paste Texture"); + + ShaderUtilities.GetShaderPropertyIDs(); // Make sure we have valid Property IDs + mat.SetTexture(ShaderUtilities.ID_MainTex, m_copiedAtlasProperties.GetTexture(ShaderUtilities.ID_MainTex)); + mat.SetFloat(ShaderUtilities.ID_GradientScale, m_copiedAtlasProperties.GetFloat(ShaderUtilities.ID_GradientScale)); + mat.SetFloat(ShaderUtilities.ID_TextureWidth, m_copiedAtlasProperties.GetFloat(ShaderUtilities.ID_TextureWidth)); + mat.SetFloat(ShaderUtilities.ID_TextureHeight, m_copiedAtlasProperties.GetFloat(ShaderUtilities.ID_TextureHeight)); + } + else if (m_copiedTexture != null) + { + Undo.RecordObject(mat, "Paste Texture"); + + mat.SetTexture(ShaderUtilities.ID_MainTex, m_copiedTexture); + } + + //DestroyImmediate(m_copiedAtlasProperties); + } + + + // Context Menus for TMPro Font Assets + //This function is used for debugging and fixing potentially broken font atlas links. + [MenuItem("CONTEXT/TMP_FontAsset/Extract Atlas", false, 2100)] + static void ExtractAtlas(MenuCommand command) + { + TMP_FontAsset font = command.context as TMP_FontAsset; + + string fontPath = AssetDatabase.GetAssetPath(font); + string texPath = Path.GetDirectoryName(fontPath) + "/" + Path.GetFileNameWithoutExtension(fontPath) + " Atlas.png"; + + // Create a Serialized Object of the texture to allow us to make it readable. + SerializedObject texprop = new SerializedObject(font.material.GetTexture(ShaderUtilities.ID_MainTex)); + texprop.FindProperty("m_IsReadable").boolValue = true; + texprop.ApplyModifiedProperties(); + + // Create a copy of the texture. + Texture2D tex = Instantiate(font.material.GetTexture(ShaderUtilities.ID_MainTex)) as Texture2D; + + // Set the texture to not readable again. + texprop.FindProperty("m_IsReadable").boolValue = false; + texprop.ApplyModifiedProperties(); + + Debug.Log(texPath); + // Saving File for Debug + var pngData = tex.EncodeToPNG(); + File.WriteAllBytes(texPath, pngData); + + AssetDatabase.Refresh(); + DestroyImmediate(tex); + } + + /// + /// + /// + /// + [MenuItem("CONTEXT/TMP_FontAsset/Update Atlas Texture...", false, 2000)] + static void RegenerateFontAsset(MenuCommand command) + { + TMP_FontAsset fontAsset = command.context as TMP_FontAsset; + + if (fontAsset != null) + { + TMPro_FontAssetCreatorWindow.ShowFontAtlasCreatorWindow(fontAsset); + } + } + + + /// + /// Clear Font Asset Data + /// + /// + [MenuItem("CONTEXT/TMP_FontAsset/Reset", false, 100)] + static void ClearFontAssetData(MenuCommand command) + { + TMP_FontAsset fontAsset = command.context as TMP_FontAsset; + + if (fontAsset != null && Selection.activeObject != fontAsset) + { + Selection.activeObject = fontAsset; + } + + fontAsset.ClearFontAssetData(true); + + TMPro_EventManager.ON_FONT_PROPERTY_CHANGED(true, fontAsset); + } + + + [MenuItem("CONTEXT/TrueTypeFontImporter/Create TMP Font Asset...", false, 200)] + static void CreateFontAsset(MenuCommand command) + { + TrueTypeFontImporter importer = command.context as TrueTypeFontImporter; + + if (importer != null) + { + Font sourceFontFile = AssetDatabase.LoadAssetAtPath(importer.assetPath); + + if (sourceFontFile) + TMPro_FontAssetCreatorWindow.ShowFontAtlasCreatorWindow(sourceFontFile); + } + } + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_ContextMenus.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_ContextMenus.cs.meta new file mode 100644 index 0000000..594965a --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_ContextMenus.cs.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 44e1d646473a40178712cb2150f54cec +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_CreateObjectMenu.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_CreateObjectMenu.cs new file mode 100644 index 0000000..19810ab --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_CreateObjectMenu.cs @@ -0,0 +1,311 @@ +using UnityEngine; +using UnityEditor; +using UnityEditor.SceneManagement; +using UnityEditor.Experimental.SceneManagement; +using UnityEngine.SceneManagement; +using UnityEngine.UI; +using UnityEngine.EventSystems; + + +namespace TMPro.EditorUtilities +{ + public static class TMPro_CreateObjectMenu + { + + /// + /// Create a TextMeshPro object that works with the Mesh Renderer + /// + /// + [MenuItem("GameObject/3D Object/Text - TextMeshPro", false, 30)] + static void CreateTextMeshProObjectPerform(MenuCommand command) + { + GameObject go = new GameObject("Text (TMP)"); + + // Add support for new prefab mode + StageUtility.PlaceGameObjectInCurrentStage(go); + + TextMeshPro textMeshPro = go.AddComponent(); + textMeshPro.text = "Sample text"; + textMeshPro.alignment = TextAlignmentOptions.TopLeft; + + Undo.RegisterCreatedObjectUndo((Object)go, "Create " + go.name); + + GameObject contextObject = command.context as GameObject; + if (contextObject != null) + { + GameObjectUtility.SetParentAndAlign(go, contextObject); + Undo.SetTransformParent(go.transform, contextObject.transform, "Parent " + go.name); + } + + Selection.activeGameObject = go; + } + + + /// + /// Create a TextMeshPro object that works with the CanvasRenderer + /// + /// + [MenuItem("GameObject/UI/Text - TextMeshPro", false, 2001)] + static void CreateTextMeshProGuiObjectPerform(MenuCommand menuCommand) + { + GameObject go = TMP_DefaultControls.CreateText(GetStandardResources()); + + // Override text color and font size + TMP_Text textComponent = go.GetComponent(); + textComponent.color = Color.white; + if (textComponent.m_isWaitingOnResourceLoad == false) + textComponent.fontSize = TMP_Settings.defaultFontSize; + + PlaceUIElementRoot(go, menuCommand); + } + + [MenuItem("GameObject/UI/Button - TextMeshPro", false, 2031)] + static public void AddButton(MenuCommand menuCommand) + { + GameObject go = TMP_DefaultControls.CreateButton(GetStandardResources()); + + // Override font size + TMP_Text textComponent = go.GetComponentInChildren(); + textComponent.fontSize = 24; + + PlaceUIElementRoot(go, menuCommand); + } + + + + [MenuItem("GameObject/UI/Input Field - TextMeshPro", false, 2037)] + static void AddTextMeshProInputField(MenuCommand menuCommand) + { + GameObject go = TMP_DefaultControls.CreateInputField(GetStandardResources()); + PlaceUIElementRoot(go, menuCommand); + } + + + [MenuItem("GameObject/UI/Dropdown - TextMeshPro", false, 2036)] + static public void AddDropdown(MenuCommand menuCommand) + { + GameObject go = TMP_DefaultControls.CreateDropdown(GetStandardResources()); + PlaceUIElementRoot(go, menuCommand); + } + + + private const string kUILayerName = "UI"; + + private const string kStandardSpritePath = "UI/Skin/UISprite.psd"; + private const string kBackgroundSpritePath = "UI/Skin/Background.psd"; + private const string kInputFieldBackgroundPath = "UI/Skin/InputFieldBackground.psd"; + private const string kKnobPath = "UI/Skin/Knob.psd"; + private const string kCheckmarkPath = "UI/Skin/Checkmark.psd"; + private const string kDropdownArrowPath = "UI/Skin/DropdownArrow.psd"; + private const string kMaskPath = "UI/Skin/UIMask.psd"; + + static private TMP_DefaultControls.Resources s_StandardResources; + + + static private TMP_DefaultControls.Resources GetStandardResources() + { + if (s_StandardResources.standard == null) + { + s_StandardResources.standard = AssetDatabase.GetBuiltinExtraResource(kStandardSpritePath); + s_StandardResources.background = AssetDatabase.GetBuiltinExtraResource(kBackgroundSpritePath); + s_StandardResources.inputField = AssetDatabase.GetBuiltinExtraResource(kInputFieldBackgroundPath); + s_StandardResources.knob = AssetDatabase.GetBuiltinExtraResource(kKnobPath); + s_StandardResources.checkmark = AssetDatabase.GetBuiltinExtraResource(kCheckmarkPath); + s_StandardResources.dropdown = AssetDatabase.GetBuiltinExtraResource(kDropdownArrowPath); + s_StandardResources.mask = AssetDatabase.GetBuiltinExtraResource(kMaskPath); + } + return s_StandardResources; + } + + + private static void SetPositionVisibleinSceneView(RectTransform canvasRTransform, RectTransform itemTransform) + { + // Find the best scene view + SceneView sceneView = SceneView.lastActiveSceneView; + if (sceneView == null && SceneView.sceneViews.Count > 0) + sceneView = SceneView.sceneViews[0] as SceneView; + + // Couldn't find a SceneView. Don't set position. + if (sceneView == null || sceneView.camera == null) + return; + + // Create world space Plane from canvas position. + Camera camera = sceneView.camera; + Vector3 position = Vector3.zero; + if (RectTransformUtility.ScreenPointToLocalPointInRectangle(canvasRTransform, new Vector2(camera.pixelWidth / 2, camera.pixelHeight / 2), camera, out Vector2 localPlanePosition)) + { + // Adjust for canvas pivot + localPlanePosition.x = localPlanePosition.x + canvasRTransform.sizeDelta.x * canvasRTransform.pivot.x; + localPlanePosition.y = localPlanePosition.y + canvasRTransform.sizeDelta.y * canvasRTransform.pivot.y; + + localPlanePosition.x = Mathf.Clamp(localPlanePosition.x, 0, canvasRTransform.sizeDelta.x); + localPlanePosition.y = Mathf.Clamp(localPlanePosition.y, 0, canvasRTransform.sizeDelta.y); + + // Adjust for anchoring + position.x = localPlanePosition.x - canvasRTransform.sizeDelta.x * itemTransform.anchorMin.x; + position.y = localPlanePosition.y - canvasRTransform.sizeDelta.y * itemTransform.anchorMin.y; + + Vector3 minLocalPosition; + minLocalPosition.x = canvasRTransform.sizeDelta.x * (0 - canvasRTransform.pivot.x) + itemTransform.sizeDelta.x * itemTransform.pivot.x; + minLocalPosition.y = canvasRTransform.sizeDelta.y * (0 - canvasRTransform.pivot.y) + itemTransform.sizeDelta.y * itemTransform.pivot.y; + + Vector3 maxLocalPosition; + maxLocalPosition.x = canvasRTransform.sizeDelta.x * (1 - canvasRTransform.pivot.x) - itemTransform.sizeDelta.x * itemTransform.pivot.x; + maxLocalPosition.y = canvasRTransform.sizeDelta.y * (1 - canvasRTransform.pivot.y) - itemTransform.sizeDelta.y * itemTransform.pivot.y; + + position.x = Mathf.Clamp(position.x, minLocalPosition.x, maxLocalPosition.x); + position.y = Mathf.Clamp(position.y, minLocalPosition.y, maxLocalPosition.y); + } + + itemTransform.anchoredPosition = position; + itemTransform.localRotation = Quaternion.identity; + itemTransform.localScale = Vector3.one; + } + + + private static void PlaceUIElementRoot(GameObject element, MenuCommand menuCommand) + { + GameObject parent = menuCommand.context as GameObject; + bool explicitParentChoice = true; + if (parent == null) + { + parent = GetOrCreateCanvasGameObject(); + explicitParentChoice = false; + + // If in Prefab Mode, Canvas has to be part of Prefab contents, + // otherwise use Prefab root instead. + PrefabStage prefabStage = PrefabStageUtility.GetCurrentPrefabStage(); + if (prefabStage != null && !prefabStage.IsPartOfPrefabContents(parent)) + parent = prefabStage.prefabContentsRoot; + } + if (parent.GetComponentInParent() == null) + { + // Create canvas under context GameObject, + // and make that be the parent which UI element is added under. + GameObject canvas = CreateNewUI(); + canvas.transform.SetParent(parent.transform, false); + parent = canvas; + } + + // Setting the element to be a child of an element already in the scene should + // be sufficient to also move the element to that scene. + // However, it seems the element needs to be already in its destination scene when the + // RegisterCreatedObjectUndo is performed; otherwise the scene it was created in is dirtied. + SceneManager.MoveGameObjectToScene(element, parent.scene); + + if (element.transform.parent == null) + { + Undo.SetTransformParent(element.transform, parent.transform, "Parent " + element.name); + } + + GameObjectUtility.EnsureUniqueNameForSibling(element); + + // We have to fix up the undo name since the name of the object was only known after reparenting it. + Undo.SetCurrentGroupName("Create " + element.name); + + GameObjectUtility.SetParentAndAlign(element, parent); + if (!explicitParentChoice) // not a context click, so center in sceneview + SetPositionVisibleinSceneView(parent.GetComponent(), element.GetComponent()); + + Undo.RegisterCreatedObjectUndo(element, "Create " + element.name); + + Selection.activeGameObject = element; + } + + + static public GameObject CreateNewUI() + { + // Root for the UI + var root = new GameObject("Canvas"); + root.layer = LayerMask.NameToLayer(kUILayerName); + Canvas canvas = root.AddComponent(); + canvas.renderMode = RenderMode.ScreenSpaceOverlay; + root.AddComponent(); + root.AddComponent(); + + // Works for all stages. + StageUtility.PlaceGameObjectInCurrentStage(root); + bool customScene = false; + PrefabStage prefabStage = PrefabStageUtility.GetCurrentPrefabStage(); + if (prefabStage != null) + { + root.transform.SetParent(prefabStage.prefabContentsRoot.transform, false); + customScene = true; + } + + Undo.RegisterCreatedObjectUndo(root, "Create " + root.name); + + // If there is no event system add one... + // No need to place event system in custom scene as these are temporary anyway. + // It can be argued for or against placing it in the user scenes, + // but let's not modify scene user is not currently looking at. + if (!customScene) + CreateEventSystem(false); + return root; + } + + + private static void CreateEventSystem(bool select) + { + CreateEventSystem(select, null); + } + + + private static void CreateEventSystem(bool select, GameObject parent) + { + var esys = Object.FindObjectOfType(); + if (esys == null) + { + var eventSystem = new GameObject("EventSystem"); + GameObjectUtility.SetParentAndAlign(eventSystem, parent); + esys = eventSystem.AddComponent(); + eventSystem.AddComponent(); + + Undo.RegisterCreatedObjectUndo(eventSystem, "Create " + eventSystem.name); + } + + if (select && esys != null) + { + Selection.activeGameObject = esys.gameObject; + } + } + + + // Helper function that returns a Canvas GameObject; preferably a parent of the selection, or other existing Canvas. + static public GameObject GetOrCreateCanvasGameObject() + { + GameObject selectedGo = Selection.activeGameObject; + + // Try to find a gameobject that is the selected GO or one if its parents. + Canvas canvas = (selectedGo != null) ? selectedGo.GetComponentInParent() : null; + if (IsValidCanvas(canvas)) + return canvas.gameObject; + + // No canvas in selection or its parents? Then use any valid canvas. + // We have to find all loaded Canvases, not just the ones in main scenes. + Canvas[] canvasArray = StageUtility.GetCurrentStageHandle().FindComponentsOfType(); + for (int i = 0; i < canvasArray.Length; i++) + if (IsValidCanvas(canvasArray[i])) + return canvasArray[i].gameObject; + + // No canvas in the scene at all? Then create a new one. + return CreateNewUI(); + } + + static bool IsValidCanvas(Canvas canvas) + { + if (canvas == null || !canvas.gameObject.activeInHierarchy) + return false; + + // It's important that the non-editable canvas from a prefab scene won't be rejected, + // but canvases not visible in the Hierarchy at all do. Don't check for HideAndDontSave. + if (EditorUtility.IsPersistent(canvas) || (canvas.hideFlags & HideFlags.HideInHierarchy) != 0) + return false; + + if (StageUtility.GetStageHandle(canvas.gameObject) != StageUtility.GetCurrentStageHandle()) + return false; + + return true; + } + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_CreateObjectMenu.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_CreateObjectMenu.cs.meta new file mode 100644 index 0000000..6ea901d --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_CreateObjectMenu.cs.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 7065397ff8184621aa3ca4f854491259 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_EditorShaderUtilities.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_EditorShaderUtilities.cs new file mode 100644 index 0000000..1633a68 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_EditorShaderUtilities.cs @@ -0,0 +1,53 @@ +using UnityEngine; +using UnityEditor; +using System.Linq; +using System.Collections; + + +namespace TMPro.EditorUtilities +{ + + public static class EditorShaderUtilities + { + + /// + /// Copy Shader properties from source to destination material. + /// + /// + /// + public static void CopyMaterialProperties(Material source, Material destination) + { + MaterialProperty[] source_prop = MaterialEditor.GetMaterialProperties(new Material[] { source }); + + for (int i = 0; i < source_prop.Length; i++) + { + int property_ID = Shader.PropertyToID(source_prop[i].name); + if (destination.HasProperty(property_ID)) + { + //Debug.Log(source_prop[i].name + " Type:" + ShaderUtil.GetPropertyType(source.shader, i)); + switch (ShaderUtil.GetPropertyType(source.shader, i)) + { + case ShaderUtil.ShaderPropertyType.Color: + destination.SetColor(property_ID, source.GetColor(property_ID)); + break; + case ShaderUtil.ShaderPropertyType.Float: + destination.SetFloat(property_ID, source.GetFloat(property_ID)); + break; + case ShaderUtil.ShaderPropertyType.Range: + destination.SetFloat(property_ID, source.GetFloat(property_ID)); + break; + case ShaderUtil.ShaderPropertyType.TexEnv: + destination.SetTexture(property_ID, source.GetTexture(property_ID)); + break; + case ShaderUtil.ShaderPropertyType.Vector: + destination.SetVector(property_ID, source.GetVector(property_ID)); + break; + } + } + } + + } + + } + +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_EditorShaderUtilities.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_EditorShaderUtilities.cs.meta new file mode 100644 index 0000000..9a24d61 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_EditorShaderUtilities.cs.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: aa76955fe5bb44f7915d91db8c7043c4 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_FontAssetCreatorWindow.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_FontAssetCreatorWindow.cs new file mode 100644 index 0000000..21b17d6 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_FontAssetCreatorWindow.cs @@ -0,0 +1,1736 @@ +using System; +using UnityEngine; +using UnityEditor; +using System.Collections.Generic; +using System.Globalization; +using System.Threading; +using System.IO; +using System.Text.RegularExpressions; +using UnityEngine.TextCore; +using UnityEngine.TextCore.LowLevel; +using Object = UnityEngine.Object; + +namespace TMPro.EditorUtilities +{ + public class TMPro_FontAssetCreatorWindow : EditorWindow + { + [MenuItem("Window/TextMeshPro/Font Asset Creator", false, 2025)] + public static void ShowFontAtlasCreatorWindow() + { + var window = GetWindow(); + window.titleContent = new GUIContent("Font Asset Creator"); + window.Focus(); + + // Make sure TMP Essential Resources have been imported. + window.CheckEssentialResources(); + } + + + public static void ShowFontAtlasCreatorWindow(Font sourceFontFile) + { + var window = GetWindow(); + + window.titleContent = new GUIContent("Font Asset Creator"); + window.Focus(); + + window.ClearGeneratedData(); + window.m_LegacyFontAsset = null; + window.m_SelectedFontAsset = null; + + // Override selected font asset + window.m_SourceFontFile = sourceFontFile; + + // Make sure TMP Essential Resources have been imported. + window.CheckEssentialResources(); + } + + + public static void ShowFontAtlasCreatorWindow(TMP_FontAsset fontAsset) + { + var window = GetWindow(); + + window.titleContent = new GUIContent("Font Asset Creator"); + window.Focus(); + + // Clear any previously generated data + window.ClearGeneratedData(); + window.m_LegacyFontAsset = null; + + // Load font asset creation settings if we have valid settings + if (string.IsNullOrEmpty(fontAsset.creationSettings.sourceFontFileGUID) == false) + { + window.LoadFontCreationSettings(fontAsset.creationSettings); + + // Override settings to inject character list from font asset + window.m_CharacterSetSelectionMode = 6; + window.m_CharacterSequence = TMP_EditorUtility.GetUnicodeCharacterSequence(TMP_FontAsset.GetCharactersArray(fontAsset)); + + + window.m_ReferencedFontAsset = fontAsset; + window.m_SavedFontAtlas = fontAsset.atlasTexture; + } + else + { + window.m_WarningMessage = "Font Asset [" + fontAsset.name + "] does not contain any previous \"Font Asset Creation Settings\". This usually means [" + fontAsset.name + "] was created before this new functionality was added."; + window.m_SourceFontFile = null; + window.m_LegacyFontAsset = fontAsset; + } + + // Even if we don't have any saved generation settings, we still want to pre-select the source font file. + window.m_SelectedFontAsset = fontAsset; + + // Make sure TMP Essential Resources have been imported. + window.CheckEssentialResources(); + } + + [System.Serializable] + class FontAssetCreationSettingsContainer + { + public List fontAssetCreationSettings; + } + + FontAssetCreationSettingsContainer m_FontAssetCreationSettingsContainer; + + //static readonly string[] m_FontCreationPresets = new string[] { "Recent 1", "Recent 2", "Recent 3", "Recent 4" }; + int m_FontAssetCreationSettingsCurrentIndex = 0; + + const string k_FontAssetCreationSettingsContainerKey = "TextMeshPro.FontAssetCreator.RecentFontAssetCreationSettings.Container"; + const string k_FontAssetCreationSettingsCurrentIndexKey = "TextMeshPro.FontAssetCreator.RecentFontAssetCreationSettings.CurrentIndex"; + const float k_TwoColumnControlsWidth = 335f; + + // Diagnostics + System.Diagnostics.Stopwatch m_StopWatch; + double m_GlyphPackingGenerationTime; + double m_GlyphRenderingGenerationTime; + + string[] m_FontSizingOptions = { "Auto Sizing", "Custom Size" }; + int m_PointSizeSamplingMode; + string[] m_FontResolutionLabels = { "8", "16","32", "64", "128", "256", "512", "1024", "2048", "4096", "8192" }; + int[] m_FontAtlasResolutions = { 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192 }; + string[] m_FontCharacterSets = { "ASCII", "Extended ASCII", "ASCII Lowercase", "ASCII Uppercase", "Numbers + Symbols", "Custom Range", "Unicode Range (Hex)", "Custom Characters", "Characters from File" }; + enum FontPackingModes { Fast = 0, Optimum = 4 }; + FontPackingModes m_PackingMode = FontPackingModes.Fast; + + int m_CharacterSetSelectionMode; + + string m_CharacterSequence = ""; + string m_OutputFeedback = ""; + string m_WarningMessage; + int m_CharacterCount; + Vector2 m_ScrollPosition; + Vector2 m_OutputScrollPosition; + + bool m_IsRepaintNeeded; + + float m_AtlasGenerationProgress; + string m_AtlasGenerationProgressLabel = string.Empty; + float m_RenderingProgress; + bool m_IsRenderingDone; + bool m_IsProcessing; + bool m_IsGenerationDisabled; + bool m_IsGenerationCancelled; + + bool m_IsFontAtlasInvalid; + Object m_SourceFontFile; + TMP_FontAsset m_SelectedFontAsset; + TMP_FontAsset m_LegacyFontAsset; + TMP_FontAsset m_ReferencedFontAsset; + + TextAsset m_CharactersFromFile; + int m_PointSize; + int m_Padding = 5; + //FaceStyles m_FontStyle = FaceStyles.Normal; + //float m_FontStyleValue = 2; + + GlyphRenderMode m_GlyphRenderMode = GlyphRenderMode.SDFAA; + int m_AtlasWidth = 512; + int m_AtlasHeight = 512; + byte[] m_AtlasTextureBuffer; + Texture2D m_FontAtlasTexture; + Texture2D m_SavedFontAtlas; + + // + List m_FontGlyphTable = new List(); + List m_FontCharacterTable = new List(); + + Dictionary m_CharacterLookupMap = new Dictionary(); + Dictionary> m_GlyphLookupMap = new Dictionary>(); + + List m_GlyphsToPack = new List(); + List m_GlyphsPacked = new List(); + List m_FreeGlyphRects = new List(); + List m_UsedGlyphRects = new List(); + List m_GlyphsToRender = new List(); + List m_AvailableGlyphsToAdd = new List(); + List m_MissingCharacters = new List(); + List m_ExcludedCharacters = new List(); + + private FaceInfo m_FaceInfo; + + bool m_IncludeFontFeatures; + + + public void OnEnable() + { + // Used for Diagnostics + m_StopWatch = new System.Diagnostics.Stopwatch(); + + // Set Editor window size. + minSize = new Vector2(315, minSize.y); + + // Initialize & Get shader property IDs. + ShaderUtilities.GetShaderPropertyIDs(); + + // Load last selected preset if we are not already in the process of regenerating an existing font asset (via the Context menu) + if (EditorPrefs.HasKey(k_FontAssetCreationSettingsContainerKey)) + { + if (m_FontAssetCreationSettingsContainer == null) + m_FontAssetCreationSettingsContainer = JsonUtility.FromJson(EditorPrefs.GetString(k_FontAssetCreationSettingsContainerKey)); + + if (m_FontAssetCreationSettingsContainer.fontAssetCreationSettings != null && m_FontAssetCreationSettingsContainer.fontAssetCreationSettings.Count > 0) + { + // Load Font Asset Creation Settings preset. + if (EditorPrefs.HasKey(k_FontAssetCreationSettingsCurrentIndexKey)) + m_FontAssetCreationSettingsCurrentIndex = EditorPrefs.GetInt(k_FontAssetCreationSettingsCurrentIndexKey); + + LoadFontCreationSettings(m_FontAssetCreationSettingsContainer.fontAssetCreationSettings[m_FontAssetCreationSettingsCurrentIndex]); + } + } + + ClearGeneratedData(); + } + + + public void OnDisable() + { + //Debug.Log("TextMeshPro Editor Window has been disabled."); + + // Destroy Engine only if it has been initialized already + FontEngine.DestroyFontEngine(); + + ClearGeneratedData(); + + // Remove Glyph Report if one was created. + if (File.Exists("Assets/TextMesh Pro/Glyph Report.txt")) + { + File.Delete("Assets/TextMesh Pro/Glyph Report.txt"); + File.Delete("Assets/TextMesh Pro/Glyph Report.txt.meta"); + + AssetDatabase.Refresh(); + } + + // Save Font Asset Creation Settings Index + SaveCreationSettingsToEditorPrefs(SaveFontCreationSettings()); + EditorPrefs.SetInt(k_FontAssetCreationSettingsCurrentIndexKey, m_FontAssetCreationSettingsCurrentIndex); + + // Unregister to event + TMPro_EventManager.RESOURCE_LOAD_EVENT.Remove(ON_RESOURCES_LOADED); + + Resources.UnloadUnusedAssets(); + } + + + // Event received when TMP resources have been loaded. + void ON_RESOURCES_LOADED() + { + TMPro_EventManager.RESOURCE_LOAD_EVENT.Remove(ON_RESOURCES_LOADED); + + m_IsGenerationDisabled = false; + } + + // Make sure TMP Essential Resources have been imported. + void CheckEssentialResources() + { + if (TMP_Settings.instance == null) + { + if (m_IsGenerationDisabled == false) + TMPro_EventManager.RESOURCE_LOAD_EVENT.Add(ON_RESOURCES_LOADED); + + m_IsGenerationDisabled = true; + } + } + + + public void OnGUI() + { + GUILayout.BeginHorizontal(); + DrawControls(); + if (position.width > position.height && position.width > k_TwoColumnControlsWidth) + { + DrawPreview(); + } + GUILayout.EndHorizontal(); + } + + + public void Update() + { + if (m_IsRepaintNeeded) + { + //Debug.Log("Repainting..."); + m_IsRepaintNeeded = false; + Repaint(); + } + + // Update Progress bar is we are Rendering a Font. + if (m_IsProcessing) + { + m_AtlasGenerationProgress = FontEngine.generationProgress; + + m_IsRepaintNeeded = true; + } + + // Update Feedback Window & Create Font Texture once Rendering is done. + if (m_IsRenderingDone) + { + m_IsProcessing = false; + m_IsRenderingDone = false; + + if (m_IsGenerationCancelled == false) + { + m_AtlasGenerationProgressLabel = "Generation completed in: " + (m_GlyphPackingGenerationTime + m_GlyphRenderingGenerationTime).ToString("0.00 ms."); + + UpdateRenderFeedbackWindow(); + CreateFontAtlasTexture(); + + // If dynamic make readable ... + m_FontAtlasTexture.Apply(false, false); + } + Repaint(); + } + } + + + /// + /// Method which returns the character corresponding to a decimal value. + /// + /// + /// + static uint[] ParseNumberSequence(string sequence) + { + List unicodeList = new List(); + string[] sequences = sequence.Split(','); + + foreach (string seq in sequences) + { + string[] s1 = seq.Split('-'); + + if (s1.Length == 1) + try + { + unicodeList.Add(uint.Parse(s1[0])); + } + catch + { + Debug.Log("No characters selected or invalid format."); + } + else + { + for (uint j = uint.Parse(s1[0]); j < uint.Parse(s1[1]) + 1; j++) + { + unicodeList.Add(j); + } + } + } + + return unicodeList.ToArray(); + } + + + /// + /// Method which returns the character (decimal value) from a hex sequence. + /// + /// + /// + static uint[] ParseHexNumberSequence(string sequence) + { + List unicodeList = new List(); + string[] sequences = sequence.Split(','); + + foreach (string seq in sequences) + { + string[] s1 = seq.Split('-'); + + if (s1.Length == 1) + try + { + unicodeList.Add(uint.Parse(s1[0], NumberStyles.AllowHexSpecifier)); + } + catch + { + Debug.Log("No characters selected or invalid format."); + } + else + { + for (uint j = uint.Parse(s1[0], NumberStyles.AllowHexSpecifier); j < uint.Parse(s1[1], NumberStyles.AllowHexSpecifier) + 1; j++) + { + unicodeList.Add(j); + } + } + } + + return unicodeList.ToArray(); + } + + + void DrawControls() + { + GUILayout.Space(5f); + + if (position.width > position.height && position.width > k_TwoColumnControlsWidth) + { + m_ScrollPosition = EditorGUILayout.BeginScrollView(m_ScrollPosition, GUILayout.Width(315)); + } + else + { + m_ScrollPosition = EditorGUILayout.BeginScrollView(m_ScrollPosition); + } + + GUILayout.Space(5f); + + GUILayout.Label(m_SelectedFontAsset != null ? string.Format("Font Settings [{0}]", m_SelectedFontAsset.name) : "Font Settings", EditorStyles.boldLabel); + + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + + EditorGUIUtility.labelWidth = 125f; + EditorGUIUtility.fieldWidth = 5f; + + // Disable Options if already generating a font atlas texture. + EditorGUI.BeginDisabledGroup(m_IsProcessing); + { + // FONT TTF SELECTION + EditorGUI.BeginChangeCheck(); + m_SourceFontFile = EditorGUILayout.ObjectField("Source Font File", m_SourceFontFile, typeof(Font), false) as Font; + if (EditorGUI.EndChangeCheck()) + { + m_SelectedFontAsset = null; + m_IsFontAtlasInvalid = true; + } + + // FONT SIZING + EditorGUI.BeginChangeCheck(); + if (m_PointSizeSamplingMode == 0) + { + m_PointSizeSamplingMode = EditorGUILayout.Popup("Sampling Point Size", m_PointSizeSamplingMode, m_FontSizingOptions); + } + else + { + GUILayout.BeginHorizontal(); + m_PointSizeSamplingMode = EditorGUILayout.Popup("Sampling Point Size", m_PointSizeSamplingMode, m_FontSizingOptions, GUILayout.Width(225)); + m_PointSize = EditorGUILayout.IntField(m_PointSize); + GUILayout.EndHorizontal(); + } + if (EditorGUI.EndChangeCheck()) + { + m_IsFontAtlasInvalid = true; + } + + // FONT PADDING + EditorGUI.BeginChangeCheck(); + m_Padding = EditorGUILayout.IntField("Padding", m_Padding); + m_Padding = (int)Mathf.Clamp(m_Padding, 0f, 64f); + if (EditorGUI.EndChangeCheck()) + { + m_IsFontAtlasInvalid = true; + } + + // FONT PACKING METHOD SELECTION + EditorGUI.BeginChangeCheck(); + m_PackingMode = (FontPackingModes)EditorGUILayout.EnumPopup("Packing Method", m_PackingMode); + if (EditorGUI.EndChangeCheck()) + { + m_IsFontAtlasInvalid = true; + } + + // FONT ATLAS RESOLUTION SELECTION + GUILayout.BeginHorizontal(); + GUI.changed = false; + + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PrefixLabel("Atlas Resolution"); + m_AtlasWidth = EditorGUILayout.IntPopup(m_AtlasWidth, m_FontResolutionLabels, m_FontAtlasResolutions); + m_AtlasHeight = EditorGUILayout.IntPopup(m_AtlasHeight, m_FontResolutionLabels, m_FontAtlasResolutions); + if (EditorGUI.EndChangeCheck()) + { + m_IsFontAtlasInvalid = true; + } + + GUILayout.EndHorizontal(); + + + // FONT CHARACTER SET SELECTION + EditorGUI.BeginChangeCheck(); + bool hasSelectionChanged = false; + m_CharacterSetSelectionMode = EditorGUILayout.Popup("Character Set", m_CharacterSetSelectionMode, m_FontCharacterSets); + if (EditorGUI.EndChangeCheck()) + { + m_CharacterSequence = ""; + hasSelectionChanged = true; + m_IsFontAtlasInvalid = true; + } + + switch (m_CharacterSetSelectionMode) + { + case 0: // ASCII + //characterSequence = "32 - 126, 130, 132 - 135, 139, 145 - 151, 153, 155, 161, 166 - 167, 169 - 174, 176, 181 - 183, 186 - 187, 191, 8210 - 8226, 8230, 8240, 8242 - 8244, 8249 - 8250, 8252 - 8254, 8260, 8286"; + m_CharacterSequence = "32 - 126, 160, 8203, 8230, 9633"; + break; + + case 1: // EXTENDED ASCII + m_CharacterSequence = "32 - 126, 160 - 255, 8192 - 8303, 8364, 8482, 9633"; + // Could add 9632 for missing glyph + break; + + case 2: // Lowercase + m_CharacterSequence = "32 - 64, 91 - 126, 160"; + break; + + case 3: // Uppercase + m_CharacterSequence = "32 - 96, 123 - 126, 160"; + break; + + case 4: // Numbers & Symbols + m_CharacterSequence = "32 - 64, 91 - 96, 123 - 126, 160"; + break; + + case 5: // Custom Range + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + GUILayout.Label("Enter a sequence of decimal values to define the characters to be included in the font asset or retrieve one from another font asset.", TMP_UIStyleManager.label); + GUILayout.Space(10f); + + EditorGUI.BeginChangeCheck(); + m_ReferencedFontAsset = EditorGUILayout.ObjectField("Select Font Asset", m_ReferencedFontAsset, typeof(TMP_FontAsset), false) as TMP_FontAsset; + if (EditorGUI.EndChangeCheck() || hasSelectionChanged) + { + if (m_ReferencedFontAsset != null) + m_CharacterSequence = TMP_EditorUtility.GetDecimalCharacterSequence(TMP_FontAsset.GetCharactersArray(m_ReferencedFontAsset)); + + m_IsFontAtlasInvalid = true; + } + + // Filter out unwanted characters. + char chr = Event.current.character; + if ((chr < '0' || chr > '9') && (chr < ',' || chr > '-')) + { + Event.current.character = '\0'; + } + GUILayout.Label("Character Sequence (Decimal)", EditorStyles.boldLabel); + EditorGUI.BeginChangeCheck(); + m_CharacterSequence = EditorGUILayout.TextArea(m_CharacterSequence, TMP_UIStyleManager.textAreaBoxWindow, GUILayout.Height(120), GUILayout.ExpandWidth(true)); + if (EditorGUI.EndChangeCheck()) + { + m_IsFontAtlasInvalid = true; + } + + EditorGUILayout.EndVertical(); + break; + + case 6: // Unicode HEX Range + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + GUILayout.Label("Enter a sequence of Unicode (hex) values to define the characters to be included in the font asset or retrieve one from another font asset.", TMP_UIStyleManager.label); + GUILayout.Space(10f); + + EditorGUI.BeginChangeCheck(); + m_ReferencedFontAsset = EditorGUILayout.ObjectField("Select Font Asset", m_ReferencedFontAsset, typeof(TMP_FontAsset), false) as TMP_FontAsset; + if (EditorGUI.EndChangeCheck() || hasSelectionChanged) + { + if (m_ReferencedFontAsset != null) + m_CharacterSequence = TMP_EditorUtility.GetUnicodeCharacterSequence(TMP_FontAsset.GetCharactersArray(m_ReferencedFontAsset)); + + m_IsFontAtlasInvalid = true; + } + + // Filter out unwanted characters. + chr = Event.current.character; + if ((chr < '0' || chr > '9') && (chr < 'a' || chr > 'f') && (chr < 'A' || chr > 'F') && (chr < ',' || chr > '-')) + { + Event.current.character = '\0'; + } + GUILayout.Label("Character Sequence (Hex)", EditorStyles.boldLabel); + EditorGUI.BeginChangeCheck(); + m_CharacterSequence = EditorGUILayout.TextArea(m_CharacterSequence, TMP_UIStyleManager.textAreaBoxWindow, GUILayout.Height(120), GUILayout.ExpandWidth(true)); + if (EditorGUI.EndChangeCheck()) + { + m_IsFontAtlasInvalid = true; + } + + EditorGUILayout.EndVertical(); + break; + + case 7: // Characters from Font Asset + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + GUILayout.Label("Type the characters to be included in the font asset or retrieve them from another font asset.", TMP_UIStyleManager.label); + GUILayout.Space(10f); + + EditorGUI.BeginChangeCheck(); + m_ReferencedFontAsset = EditorGUILayout.ObjectField("Select Font Asset", m_ReferencedFontAsset, typeof(TMP_FontAsset), false) as TMP_FontAsset; + if (EditorGUI.EndChangeCheck() || hasSelectionChanged) + { + if (m_ReferencedFontAsset != null) + m_CharacterSequence = TMP_FontAsset.GetCharacters(m_ReferencedFontAsset); + + m_IsFontAtlasInvalid = true; + } + + EditorGUI.indentLevel = 0; + + GUILayout.Label("Custom Character List", EditorStyles.boldLabel); + EditorGUI.BeginChangeCheck(); + m_CharacterSequence = EditorGUILayout.TextArea(m_CharacterSequence, TMP_UIStyleManager.textAreaBoxWindow, GUILayout.Height(120), GUILayout.ExpandWidth(true)); + if (EditorGUI.EndChangeCheck()) + { + m_IsFontAtlasInvalid = true; + } + EditorGUILayout.EndVertical(); + break; + + case 8: // Character List from File + EditorGUI.BeginChangeCheck(); + m_CharactersFromFile = EditorGUILayout.ObjectField("Character File", m_CharactersFromFile, typeof(TextAsset), false) as TextAsset; + if (EditorGUI.EndChangeCheck()) + { + m_IsFontAtlasInvalid = true; + } + + if (m_CharactersFromFile != null) + { + Regex rx = new Regex(@"(? + { + if (match.Value.StartsWith("\\U")) + return char.ConvertFromUtf32(int.Parse(match.Value.Replace("\\U", ""), NumberStyles.HexNumber)); + + return char.ConvertFromUtf32(int.Parse(match.Value.Replace("\\u", ""), NumberStyles.HexNumber)); + }); + } + break; + } + + // FONT STYLE SELECTION + //GUILayout.BeginHorizontal(); + //EditorGUI.BeginChangeCheck(); + ////m_FontStyle = (FaceStyles)EditorGUILayout.EnumPopup("Font Style", m_FontStyle, GUILayout.Width(225)); + ////m_FontStyleValue = EditorGUILayout.IntField((int)m_FontStyleValue); + //if (EditorGUI.EndChangeCheck()) + //{ + // m_IsFontAtlasInvalid = true; + //} + //GUILayout.EndHorizontal(); + + // Render Mode Selection + CheckForLegacyGlyphRenderMode(); + + EditorGUI.BeginChangeCheck(); + m_GlyphRenderMode = (GlyphRenderMode)EditorGUILayout.EnumPopup("Render Mode", m_GlyphRenderMode); + if (EditorGUI.EndChangeCheck()) + { + m_IsFontAtlasInvalid = true; + } + + m_IncludeFontFeatures = EditorGUILayout.Toggle("Get Kerning Pairs", m_IncludeFontFeatures); + + EditorGUILayout.Space(); + } + + EditorGUI.EndDisabledGroup(); + + if (!string.IsNullOrEmpty(m_WarningMessage)) + { + EditorGUILayout.HelpBox(m_WarningMessage, MessageType.Warning); + } + + GUI.enabled = m_SourceFontFile != null && !m_IsProcessing && !m_IsGenerationDisabled; // Enable Preview if we are not already rendering a font. + if (GUILayout.Button("Generate Font Atlas") && GUI.enabled) + { + if (!m_IsProcessing && m_SourceFontFile != null) + { + DestroyImmediate(m_FontAtlasTexture); + m_FontAtlasTexture = null; + m_SavedFontAtlas = null; + + // Initialize font engine + FontEngineError errorCode = FontEngine.InitializeFontEngine(); + if (errorCode != FontEngineError.Success) + { + Debug.Log("Font Asset Creator - Error [" + errorCode + "] has occurred while Initializing the FreeType Library."); + } + + // Get file path of the source font file. + string fontPath = AssetDatabase.GetAssetPath(m_SourceFontFile); + + if (errorCode == FontEngineError.Success) + { + errorCode = FontEngine.LoadFontFace(fontPath); + + if (errorCode != FontEngineError.Success) + { + Debug.Log("Font Asset Creator - Error Code [" + errorCode + "] has occurred trying to load the [" + m_SourceFontFile.name + "] font file. This typically results from the use of an incompatible or corrupted font file."); + } + } + + + // Define an array containing the characters we will render. + if (errorCode == FontEngineError.Success) + { + uint[] characterSet = null; + + // Get list of characters that need to be packed and rendered to the atlas texture. + if (m_CharacterSetSelectionMode == 7 || m_CharacterSetSelectionMode == 8) + { + List char_List = new List(); + + for (int i = 0; i < m_CharacterSequence.Length; i++) + { + uint unicode = m_CharacterSequence[i]; + + // Handle surrogate pairs + if (i < m_CharacterSequence.Length - 1 && char.IsHighSurrogate((char)unicode) && char.IsLowSurrogate(m_CharacterSequence[i + 1])) + { + unicode = (uint)char.ConvertToUtf32(m_CharacterSequence[i], m_CharacterSequence[i + 1]); + i += 1; + } + + // Check to make sure we don't include duplicates + if (char_List.FindIndex(item => item == unicode) == -1) + char_List.Add(unicode); + } + + characterSet = char_List.ToArray(); + } + else if (m_CharacterSetSelectionMode == 6) + { + characterSet = ParseHexNumberSequence(m_CharacterSequence); + } + else + { + characterSet = ParseNumberSequence(m_CharacterSequence); + } + + m_CharacterCount = characterSet.Length; + + m_AtlasGenerationProgress = 0; + m_IsProcessing = true; + m_IsGenerationCancelled = false; + + GlyphLoadFlags glyphLoadFlags = ((GlyphRasterModes)m_GlyphRenderMode & GlyphRasterModes.RASTER_MODE_HINTED) == GlyphRasterModes.RASTER_MODE_HINTED ? GlyphLoadFlags.LOAD_RENDER : GlyphLoadFlags.LOAD_RENDER | GlyphLoadFlags.LOAD_NO_HINTING; + + // + AutoResetEvent autoEvent = new AutoResetEvent(false); + + // Worker thread to pack glyphs in the given texture space. + ThreadPool.QueueUserWorkItem(PackGlyphs => + { + // Start Stop Watch + m_StopWatch = System.Diagnostics.Stopwatch.StartNew(); + + // Clear the various lists used in the generation process. + m_AvailableGlyphsToAdd.Clear(); + m_MissingCharacters.Clear(); + m_ExcludedCharacters.Clear(); + m_CharacterLookupMap.Clear(); + m_GlyphLookupMap.Clear(); + m_GlyphsToPack.Clear(); + m_GlyphsPacked.Clear(); + + // Check if requested characters are available in the source font file. + for (int i = 0; i < characterSet.Length; i++) + { + uint unicode = characterSet[i]; + + if (FontEngine.TryGetGlyphIndex(unicode, out uint glyphIndex)) + { + // Skip over potential duplicate characters. + if (m_CharacterLookupMap.ContainsKey(unicode)) + continue; + + // Add character to character lookup map. + m_CharacterLookupMap.Add(unicode, glyphIndex); + + // Skip over potential duplicate glyph references. + if (m_GlyphLookupMap.ContainsKey(glyphIndex)) + { + // Add additional glyph reference for this character. + m_GlyphLookupMap[glyphIndex].Add(unicode); + continue; + } + + // Add glyph reference to glyph lookup map. + m_GlyphLookupMap.Add(glyphIndex, new List() { unicode }); + + // Add glyph index to list of glyphs to add to texture. + m_AvailableGlyphsToAdd.Add(glyphIndex); + } + else + { + // Add Unicode to list of missing characters. + m_MissingCharacters.Add(unicode); + } + } + + // Pack available glyphs in the provided texture space. + if (m_AvailableGlyphsToAdd.Count > 0) + { + int packingModifier = ((GlyphRasterModes)m_GlyphRenderMode & GlyphRasterModes.RASTER_MODE_BITMAP) == GlyphRasterModes.RASTER_MODE_BITMAP ? 0 : 1; + + if (m_PointSizeSamplingMode == 0) // Auto-Sizing Point Size Mode + { + // Estimate min / max range for auto sizing of point size. + int minPointSize = 0; + int maxPointSize = (int)Mathf.Sqrt((m_AtlasWidth * m_AtlasHeight) / m_AvailableGlyphsToAdd.Count) * 3; + + m_PointSize = (maxPointSize + minPointSize) / 2; + + bool optimumPointSizeFound = false; + for (int iteration = 0; iteration < 15 && optimumPointSizeFound == false; iteration++) + { + m_AtlasGenerationProgressLabel = "Packing glyphs - Pass (" + iteration + ")"; + + FontEngine.SetFaceSize(m_PointSize); + + m_GlyphsToPack.Clear(); + m_GlyphsPacked.Clear(); + + m_FreeGlyphRects.Clear(); + m_FreeGlyphRects.Add(new GlyphRect(0, 0, m_AtlasWidth - packingModifier, m_AtlasHeight - packingModifier)); + m_UsedGlyphRects.Clear(); + + for (int i = 0; i < m_AvailableGlyphsToAdd.Count; i++) + { + uint glyphIndex = m_AvailableGlyphsToAdd[i]; + + if (FontEngine.TryGetGlyphWithIndexValue(glyphIndex, glyphLoadFlags, out Glyph glyph)) + { + if (glyph.glyphRect.width > 0 && glyph.glyphRect.height > 0) + { + m_GlyphsToPack.Add(glyph); + } + else + { + m_GlyphsPacked.Add(glyph); + } + } + } + + FontEngine.TryPackGlyphsInAtlas(m_GlyphsToPack, m_GlyphsPacked, m_Padding, (GlyphPackingMode)m_PackingMode, m_GlyphRenderMode, m_AtlasWidth, m_AtlasHeight, m_FreeGlyphRects, m_UsedGlyphRects); + + if (m_IsGenerationCancelled) + { + DestroyImmediate(m_FontAtlasTexture); + m_FontAtlasTexture = null; + return; + } + + //Debug.Log("Glyphs remaining to add [" + m_GlyphsToAdd.Count + "]. Glyphs added [" + m_GlyphsAdded.Count + "]."); + + if (m_GlyphsToPack.Count > 0) + { + if (m_PointSize > minPointSize) + { + maxPointSize = m_PointSize; + m_PointSize = (m_PointSize + minPointSize) / 2; + + //Debug.Log("Decreasing point size from [" + maxPointSize + "] to [" + m_PointSize + "]."); + } + } + else + { + if (maxPointSize - minPointSize > 1 && m_PointSize < maxPointSize) + { + minPointSize = m_PointSize; + m_PointSize = (m_PointSize + maxPointSize) / 2; + + //Debug.Log("Increasing point size from [" + minPointSize + "] to [" + m_PointSize + "]."); + } + else + { + //Debug.Log("[" + iteration + "] iterations to find the optimum point size of : [" + m_PointSize + "]."); + optimumPointSizeFound = true; + } + } + } + } + else // Custom Point Size Mode + { + m_AtlasGenerationProgressLabel = "Packing glyphs..."; + + // Set point size + FontEngine.SetFaceSize(m_PointSize); + + m_GlyphsToPack.Clear(); + m_GlyphsPacked.Clear(); + + m_FreeGlyphRects.Clear(); + m_FreeGlyphRects.Add(new GlyphRect(0, 0, m_AtlasWidth - packingModifier, m_AtlasHeight - packingModifier)); + m_UsedGlyphRects.Clear(); + + for (int i = 0; i < m_AvailableGlyphsToAdd.Count; i++) + { + uint glyphIndex = m_AvailableGlyphsToAdd[i]; + + if (FontEngine.TryGetGlyphWithIndexValue(glyphIndex, glyphLoadFlags, out Glyph glyph)) + { + if (glyph.glyphRect.width > 0 && glyph.glyphRect.height > 0) + { + m_GlyphsToPack.Add(glyph); + } + else + { + m_GlyphsPacked.Add(glyph); + } + } + } + + FontEngine.TryPackGlyphsInAtlas(m_GlyphsToPack, m_GlyphsPacked, m_Padding, (GlyphPackingMode)m_PackingMode, m_GlyphRenderMode, m_AtlasWidth, m_AtlasHeight, m_FreeGlyphRects, m_UsedGlyphRects); + + if (m_IsGenerationCancelled) + { + DestroyImmediate(m_FontAtlasTexture); + m_FontAtlasTexture = null; + return; + } + //Debug.Log("Glyphs remaining to add [" + m_GlyphsToAdd.Count + "]. Glyphs added [" + m_GlyphsAdded.Count + "]."); + } + + } + else + { + int packingModifier = ((GlyphRasterModes)m_GlyphRenderMode & GlyphRasterModes.RASTER_MODE_BITMAP) == GlyphRasterModes.RASTER_MODE_BITMAP ? 0 : 1; + + FontEngine.SetFaceSize(m_PointSize); + + m_GlyphsToPack.Clear(); + m_GlyphsPacked.Clear(); + + m_FreeGlyphRects.Clear(); + m_FreeGlyphRects.Add(new GlyphRect(0, 0, m_AtlasWidth - packingModifier, m_AtlasHeight - packingModifier)); + m_UsedGlyphRects.Clear(); + } + + //Stop StopWatch + m_StopWatch.Stop(); + m_GlyphPackingGenerationTime = m_StopWatch.Elapsed.TotalMilliseconds; + Debug.Log("Glyph packing completed in: " + m_GlyphPackingGenerationTime.ToString("0.000 ms.")); + m_StopWatch.Reset(); + + m_FontCharacterTable.Clear(); + m_FontGlyphTable.Clear(); + m_GlyphsToRender.Clear(); + + // Add glyphs and characters successfully added to texture to their respective font tables. + foreach (Glyph glyph in m_GlyphsPacked) + { + uint glyphIndex = glyph.index; + + m_FontGlyphTable.Add(glyph); + + // Add glyphs to list of glyphs that need to be rendered. + if (glyph.glyphRect.width > 0 && glyph.glyphRect.height > 0) + m_GlyphsToRender.Add(glyph); + + foreach (uint unicode in m_GlyphLookupMap[glyphIndex]) + { + // Create new Character + m_FontCharacterTable.Add(new TMP_Character(unicode, glyph)); + } + } + + // + foreach (Glyph glyph in m_GlyphsToPack) + { + foreach (uint unicode in m_GlyphLookupMap[glyph.index]) + { + m_ExcludedCharacters.Add(unicode); + } + } + + // Get the face info for the current sampling point size. + m_FaceInfo = FontEngine.GetFaceInfo(); + + autoEvent.Set(); + }); + + // Worker thread to render glyphs in texture buffer. + ThreadPool.QueueUserWorkItem(RenderGlyphs => + { + autoEvent.WaitOne(); + + // Start Stop Watch + m_StopWatch = System.Diagnostics.Stopwatch.StartNew(); + + m_IsRenderingDone = false; + + // Allocate texture data + m_AtlasTextureBuffer = new byte[m_AtlasWidth * m_AtlasHeight]; + + m_AtlasGenerationProgressLabel = "Rendering glyphs..."; + + // Render and add glyphs to the given atlas texture. + if (m_GlyphsToRender.Count > 0) + { + FontEngine.RenderGlyphsToTexture(m_GlyphsToRender, m_Padding, m_GlyphRenderMode, m_AtlasTextureBuffer, m_AtlasWidth, m_AtlasHeight); + } + + m_IsRenderingDone = true; + + // Stop StopWatch + m_StopWatch.Stop(); + m_GlyphRenderingGenerationTime = m_StopWatch.Elapsed.TotalMilliseconds; + Debug.Log("Font Atlas generation completed in: " + m_GlyphRenderingGenerationTime.ToString("0.000 ms.")); + m_StopWatch.Reset(); + }); + } + + SaveCreationSettingsToEditorPrefs(SaveFontCreationSettings()); + } + } + + // FONT RENDERING PROGRESS BAR + GUILayout.Space(1); + Rect progressRect = EditorGUILayout.GetControlRect(false, 20); + + GUI.enabled = true; + progressRect.width -= 22; + EditorGUI.ProgressBar(progressRect, Mathf.Max(0.01f, m_AtlasGenerationProgress), m_AtlasGenerationProgressLabel); + progressRect.x = progressRect.x + progressRect.width + 2; + progressRect.y -= 1; + progressRect.width = 20; + progressRect.height = 20; + + GUI.enabled = m_IsProcessing; + if (GUI.Button(progressRect, "X")) + { + FontEngine.SendCancellationRequest(); + m_AtlasGenerationProgress = 0; + m_IsProcessing = false; + m_IsGenerationCancelled = true; + } + GUILayout.Space(5); + + // FONT STATUS & INFORMATION + GUI.enabled = true; + + GUILayout.BeginVertical(EditorStyles.helpBox, GUILayout.Height(200)); + m_OutputScrollPosition = EditorGUILayout.BeginScrollView(m_OutputScrollPosition); + EditorGUILayout.LabelField(m_OutputFeedback, TMP_UIStyleManager.label); + EditorGUILayout.EndScrollView(); + GUILayout.EndVertical(); + + // SAVE TEXTURE & CREATE and SAVE FONT XML FILE + GUI.enabled = m_FontAtlasTexture != null && !m_IsProcessing; // Enable Save Button if font_Atlas is not Null. + + EditorGUILayout.BeginHorizontal(); + + if (GUILayout.Button("Save") && GUI.enabled) + { + if (m_SelectedFontAsset == null) + { + if (m_LegacyFontAsset != null) + SaveNewFontAssetWithSameName(m_LegacyFontAsset); + else + SaveNewFontAsset(m_SourceFontFile); + } + else + { + // Save over exiting Font Asset + string filePath = Path.GetFullPath(AssetDatabase.GetAssetPath(m_SelectedFontAsset)).Replace('\\', '/'); + + if (((GlyphRasterModes)m_GlyphRenderMode & GlyphRasterModes.RASTER_MODE_BITMAP) == GlyphRasterModes.RASTER_MODE_BITMAP) + Save_Bitmap_FontAsset(filePath); + else + Save_SDF_FontAsset(filePath); + } + } + if (GUILayout.Button("Save as...") && GUI.enabled) + { + if (m_SelectedFontAsset == null) + { + SaveNewFontAsset(m_SourceFontFile); + } + else + { + SaveNewFontAssetWithSameName(m_SelectedFontAsset); + } + } + + EditorGUILayout.EndHorizontal(); + + EditorGUILayout.Space(); + + EditorGUILayout.EndVertical(); + + GUI.enabled = true; // Re-enable GUI + + if (position.height > position.width || position.width < k_TwoColumnControlsWidth) + { + DrawPreview(); + GUILayout.Space(5); + } + + EditorGUILayout.EndScrollView(); + + if (m_IsFontAtlasInvalid) + ClearGeneratedData(); + } + + + /// + /// Clear the previously generated data. + /// + void ClearGeneratedData() + { + m_IsFontAtlasInvalid = false; + + if (m_FontAtlasTexture != null && !EditorUtility.IsPersistent(m_FontAtlasTexture)) + { + DestroyImmediate(m_FontAtlasTexture); + m_FontAtlasTexture = null; + } + + m_AtlasGenerationProgressLabel = string.Empty; + m_AtlasGenerationProgress = 0; + m_SavedFontAtlas = null; + + m_OutputFeedback = string.Empty; + m_WarningMessage = string.Empty; + } + + + /// + /// Function to update the feedback window showing the results of the latest generation. + /// + void UpdateRenderFeedbackWindow() + { + m_PointSize = m_FaceInfo.pointSize; + + string missingGlyphReport = string.Empty; + + //string colorTag = m_FontCharacterTable.Count == m_CharacterCount ? "" : ""; + string colorTag2 = ""; + + missingGlyphReport = "Font: " + colorTag2 + m_FaceInfo.familyName + " Style: " + colorTag2 + m_FaceInfo.styleName + ""; + + missingGlyphReport += "\nPoint Size: " + colorTag2 + m_FaceInfo.pointSize + " SP/PD Ratio: " + colorTag2 + ((float)m_Padding / m_FaceInfo.pointSize).ToString("0.0%" + ""); + + missingGlyphReport += "\n\nCharacters included: " + m_FontCharacterTable.Count + "/" + m_CharacterCount + ""; + missingGlyphReport += "\nMissing characters: " + m_MissingCharacters.Count + ""; + missingGlyphReport += "\nExcluded characters: " + m_ExcludedCharacters.Count + ""; + + // Report characters missing from font file + missingGlyphReport += "\n\nCharacters missing from font file:"; + missingGlyphReport += "\n----------------------------------------"; + + m_OutputFeedback = missingGlyphReport; + + for (int i = 0; i < m_MissingCharacters.Count; i++) + { + missingGlyphReport += "\nID: " + m_MissingCharacters[i] + "\tHex: " + m_MissingCharacters[i].ToString("X") + "\tChar [" + (char)m_MissingCharacters[i] + "]"; + + if (missingGlyphReport.Length < 16300) + m_OutputFeedback = missingGlyphReport; + } + + // Report characters that did not fit in the atlas texture + missingGlyphReport += "\n\nCharacters excluded from packing:"; + missingGlyphReport += "\n----------------------------------------"; + + for (int i = 0; i < m_ExcludedCharacters.Count; i++) + { + missingGlyphReport += "\nID: " + m_ExcludedCharacters[i] + "\tHex: " + m_ExcludedCharacters[i].ToString("X") + "\tChar [" + (char)m_ExcludedCharacters[i] + "]"; + + if (missingGlyphReport.Length < 16300) + m_OutputFeedback = missingGlyphReport; + } + + if (missingGlyphReport.Length > 16300) + m_OutputFeedback += "\n\nReport truncated.\nSee \"TextMesh Pro\\Glyph Report.txt\""; + + // Save Missing Glyph Report file + if (Directory.Exists("Assets/TextMesh Pro")) + { + missingGlyphReport = System.Text.RegularExpressions.Regex.Replace(missingGlyphReport, @"<[^>]*>", string.Empty); + File.WriteAllText("Assets/TextMesh Pro/Glyph Report.txt", missingGlyphReport); + AssetDatabase.Refresh(); + } + } + + + void CreateFontAtlasTexture() + { + if (m_FontAtlasTexture != null) + DestroyImmediate(m_FontAtlasTexture); + + m_FontAtlasTexture = new Texture2D(m_AtlasWidth, m_AtlasHeight, TextureFormat.Alpha8, false, true); + + Color32[] colors = new Color32[m_AtlasWidth * m_AtlasHeight]; + + for (int i = 0; i < colors.Length; i++) + { + byte c = m_AtlasTextureBuffer[i]; + colors[i] = new Color32(c, c, c, c); + } + + // Clear allocation of + m_AtlasTextureBuffer = null; + + if ((m_GlyphRenderMode & GlyphRenderMode.RASTER) == GlyphRenderMode.RASTER || (m_GlyphRenderMode & GlyphRenderMode.RASTER_HINTED) == GlyphRenderMode.RASTER_HINTED) + m_FontAtlasTexture.filterMode = FilterMode.Point; + + m_FontAtlasTexture.SetPixels32(colors, 0); + m_FontAtlasTexture.Apply(false, false); + + // Saving File for Debug + //var pngData = m_FontAtlasTexture.EncodeToPNG(); + //File.WriteAllBytes("Assets/Textures/Debug Font Texture.png", pngData); + } + + + /// + /// Open Save Dialog to provide the option save the font asset using the name of the source font file. This also appends SDF to the name if using any of the SDF Font Asset creation modes. + /// + /// + void SaveNewFontAsset(Object sourceObject) + { + string filePath; + + // Save new Font Asset and open save file requester at Source Font File location. + string saveDirectory = new FileInfo(AssetDatabase.GetAssetPath(sourceObject)).DirectoryName; + + if (((GlyphRasterModes)m_GlyphRenderMode & GlyphRasterModes.RASTER_MODE_BITMAP) == GlyphRasterModes.RASTER_MODE_BITMAP) + { + filePath = EditorUtility.SaveFilePanel("Save TextMesh Pro! Font Asset File", saveDirectory, sourceObject.name, "asset"); + + if (filePath.Length == 0) + return; + + Save_Bitmap_FontAsset(filePath); + } + else + { + filePath = EditorUtility.SaveFilePanel("Save TextMesh Pro! Font Asset File", saveDirectory, sourceObject.name + " SDF", "asset"); + + if (filePath.Length == 0) + return; + + Save_SDF_FontAsset(filePath); + } + } + + + /// + /// Open Save Dialog to provide the option to save the font asset under the same name. + /// + /// + void SaveNewFontAssetWithSameName(Object sourceObject) + { + string filePath; + + // Save new Font Asset and open save file requester at Source Font File location. + string saveDirectory = new FileInfo(AssetDatabase.GetAssetPath(sourceObject)).DirectoryName; + + filePath = EditorUtility.SaveFilePanel("Save TextMesh Pro! Font Asset File", saveDirectory, sourceObject.name, "asset"); + + if (filePath.Length == 0) + return; + + if (((GlyphRasterModes)m_GlyphRenderMode & GlyphRasterModes.RASTER_MODE_BITMAP) == GlyphRasterModes.RASTER_MODE_BITMAP) + { + Save_Bitmap_FontAsset(filePath); + } + else + { + Save_SDF_FontAsset(filePath); + } + } + + + void Save_Bitmap_FontAsset(string filePath) + { + filePath = filePath.Substring(0, filePath.Length - 6); // Trim file extension from filePath. + + string dataPath = Application.dataPath; + + if (filePath.IndexOf(dataPath, System.StringComparison.InvariantCultureIgnoreCase) == -1) + { + Debug.LogError("You're saving the font asset in a directory outside of this project folder. This is not supported. Please select a directory under \"" + dataPath + "\""); + return; + } + + string relativeAssetPath = filePath.Substring(dataPath.Length - 6); + string tex_DirName = Path.GetDirectoryName(relativeAssetPath); + string tex_FileName = Path.GetFileNameWithoutExtension(relativeAssetPath); + string tex_Path_NoExt = tex_DirName + "/" + tex_FileName; + + // Check if TextMeshPro font asset already exists. If not, create a new one. Otherwise update the existing one. + TMP_FontAsset fontAsset = AssetDatabase.LoadAssetAtPath(tex_Path_NoExt + ".asset", typeof(TMP_FontAsset)) as TMP_FontAsset; + if (fontAsset == null) + { + //Debug.Log("Creating TextMeshPro font asset!"); + fontAsset = ScriptableObject.CreateInstance(); // Create new TextMeshPro Font Asset. + AssetDatabase.CreateAsset(fontAsset, tex_Path_NoExt + ".asset"); + + // Set version number of font asset + fontAsset.version = "1.1.0"; + + //Set Font Asset Type + fontAsset.atlasRenderMode = m_GlyphRenderMode; + + // Reference to the source font file GUID. + fontAsset.m_SourceFontFileGUID = AssetDatabase.AssetPathToGUID(AssetDatabase.GetAssetPath(m_SourceFontFile)); + + // Add FaceInfo to Font Asset + fontAsset.faceInfo = m_FaceInfo; + + // Add GlyphInfo[] to Font Asset + fontAsset.glyphTable = m_FontGlyphTable; + + // Add CharacterTable[] to font asset. + fontAsset.characterTable = m_FontCharacterTable; + + // Sort glyph and character tables. + fontAsset.SortGlyphAndCharacterTables(); + + // Get and Add Kerning Pairs to Font Asset + if (m_IncludeFontFeatures) + fontAsset.fontFeatureTable = GetKerningTable(); + + + // Add Font Atlas as Sub-Asset + fontAsset.atlasTextures = new Texture2D[] { m_FontAtlasTexture }; + m_FontAtlasTexture.name = tex_FileName + " Atlas"; + fontAsset.atlasWidth = m_AtlasWidth; + fontAsset.atlasHeight = m_AtlasHeight; + fontAsset.atlasPadding = m_Padding; + + AssetDatabase.AddObjectToAsset(m_FontAtlasTexture, fontAsset); + + // Create new Material and Add it as Sub-Asset + Shader default_Shader = Shader.Find("TextMeshPro/Bitmap"); // m_shaderSelection; + Material tmp_material = new Material(default_Shader); + tmp_material.name = tex_FileName + " Material"; + tmp_material.SetTexture(ShaderUtilities.ID_MainTex, m_FontAtlasTexture); + fontAsset.material = tmp_material; + + AssetDatabase.AddObjectToAsset(tmp_material, fontAsset); + + } + else + { + // Find all Materials referencing this font atlas. + Material[] material_references = TMP_EditorUtility.FindMaterialReferences(fontAsset); + + // Set version number of font asset + fontAsset.version = "1.1.0"; + + // Special handling to remove legacy font asset data + if (fontAsset.m_glyphInfoList != null && fontAsset.m_glyphInfoList.Count > 0) + fontAsset.m_glyphInfoList = null; + + // Destroy Assets that will be replaced. + if (fontAsset.atlasTextures != null && fontAsset.atlasTextures.Length > 0) + DestroyImmediate(fontAsset.atlasTextures[0], true); + + //Set Font Asset Type + fontAsset.atlasRenderMode = m_GlyphRenderMode; + + // Add FaceInfo to Font Asset + fontAsset.faceInfo = m_FaceInfo; + + // Add GlyphInfo[] to Font Asset + fontAsset.glyphTable = m_FontGlyphTable; + + // Add CharacterTable[] to font asset. + fontAsset.characterTable = m_FontCharacterTable; + + // Sort glyph and character tables. + fontAsset.SortGlyphAndCharacterTables(); + + // Get and Add Kerning Pairs to Font Asset + if (m_IncludeFontFeatures) + fontAsset.fontFeatureTable = GetKerningTable(); + + // Add Font Atlas as Sub-Asset + fontAsset.atlasTextures = new Texture2D[] { m_FontAtlasTexture }; + m_FontAtlasTexture.name = tex_FileName + " Atlas"; + fontAsset.atlasWidth = m_AtlasWidth; + fontAsset.atlasHeight = m_AtlasHeight; + fontAsset.atlasPadding = m_Padding; + + // Special handling due to a bug in earlier versions of Unity. + m_FontAtlasTexture.hideFlags = HideFlags.None; + fontAsset.material.hideFlags = HideFlags.None; + + AssetDatabase.AddObjectToAsset(m_FontAtlasTexture, fontAsset); + + // Assign new font atlas texture to the existing material. + fontAsset.material.SetTexture(ShaderUtilities.ID_MainTex, fontAsset.atlasTextures[0]); + + // Update the Texture reference on the Material + for (int i = 0; i < material_references.Length; i++) + { + material_references[i].SetTexture(ShaderUtilities.ID_MainTex, m_FontAtlasTexture); + } + } + + // Add list of GlyphRects to font asset. + fontAsset.freeGlyphRects = m_FreeGlyphRects; + fontAsset.usedGlyphRects = m_UsedGlyphRects; + + // Save Font Asset creation settings + m_SelectedFontAsset = fontAsset; + m_LegacyFontAsset = null; + fontAsset.creationSettings = SaveFontCreationSettings(); + + AssetDatabase.SaveAssets(); + + AssetDatabase.ImportAsset(AssetDatabase.GetAssetPath(fontAsset)); // Re-import font asset to get the new updated version. + + //EditorUtility.SetDirty(font_asset); + fontAsset.ReadFontAssetDefinition(); + + AssetDatabase.Refresh(); + + m_FontAtlasTexture = null; + + // NEED TO GENERATE AN EVENT TO FORCE A REDRAW OF ANY TEXTMESHPRO INSTANCES THAT MIGHT BE USING THIS FONT ASSET + TMPro_EventManager.ON_FONT_PROPERTY_CHANGED(true, fontAsset); + } + + + void Save_SDF_FontAsset(string filePath) + { + filePath = filePath.Substring(0, filePath.Length - 6); // Trim file extension from filePath. + + string dataPath = Application.dataPath; + + if (filePath.IndexOf(dataPath, System.StringComparison.InvariantCultureIgnoreCase) == -1) + { + Debug.LogError("You're saving the font asset in a directory outside of this project folder. This is not supported. Please select a directory under \"" + dataPath + "\""); + return; + } + + string relativeAssetPath = filePath.Substring(dataPath.Length - 6); + string tex_DirName = Path.GetDirectoryName(relativeAssetPath); + string tex_FileName = Path.GetFileNameWithoutExtension(relativeAssetPath); + string tex_Path_NoExt = tex_DirName + "/" + tex_FileName; + + + // Check if TextMeshPro font asset already exists. If not, create a new one. Otherwise update the existing one. + TMP_FontAsset fontAsset = AssetDatabase.LoadAssetAtPath(tex_Path_NoExt + ".asset"); + if (fontAsset == null) + { + //Debug.Log("Creating TextMeshPro font asset!"); + fontAsset = ScriptableObject.CreateInstance(); // Create new TextMeshPro Font Asset. + AssetDatabase.CreateAsset(fontAsset, tex_Path_NoExt + ".asset"); + + // Set version number of font asset + fontAsset.version = "1.1.0"; + + // Reference to source font file GUID. + fontAsset.m_SourceFontFileGUID = AssetDatabase.AssetPathToGUID(AssetDatabase.GetAssetPath(m_SourceFontFile)); + + //Set Font Asset Type + fontAsset.atlasRenderMode = m_GlyphRenderMode; + + // Add FaceInfo to Font Asset + fontAsset.faceInfo = m_FaceInfo; + + // Add GlyphInfo[] to Font Asset + fontAsset.glyphTable = m_FontGlyphTable; + + // Add CharacterTable[] to font asset. + fontAsset.characterTable = m_FontCharacterTable; + + // Sort glyph and character tables. + fontAsset.SortGlyphAndCharacterTables(); + + // Get and Add Kerning Pairs to Font Asset + if (m_IncludeFontFeatures) + fontAsset.fontFeatureTable = GetKerningTable(); + + // Add Font Atlas as Sub-Asset + fontAsset.atlasTextures = new Texture2D[] { m_FontAtlasTexture }; + m_FontAtlasTexture.name = tex_FileName + " Atlas"; + fontAsset.atlasWidth = m_AtlasWidth; + fontAsset.atlasHeight = m_AtlasHeight; + fontAsset.atlasPadding = m_Padding; + + AssetDatabase.AddObjectToAsset(m_FontAtlasTexture, fontAsset); + + // Create new Material and Add it as Sub-Asset + Shader default_Shader = Shader.Find("TextMeshPro/Distance Field"); + Material tmp_material = new Material(default_Shader); + + tmp_material.name = tex_FileName + " Material"; + tmp_material.SetTexture(ShaderUtilities.ID_MainTex, m_FontAtlasTexture); + tmp_material.SetFloat(ShaderUtilities.ID_TextureWidth, m_FontAtlasTexture.width); + tmp_material.SetFloat(ShaderUtilities.ID_TextureHeight, m_FontAtlasTexture.height); + + int spread = m_Padding + 1; + tmp_material.SetFloat(ShaderUtilities.ID_GradientScale, spread); // Spread = Padding for Brute Force SDF. + + tmp_material.SetFloat(ShaderUtilities.ID_WeightNormal, fontAsset.normalStyle); + tmp_material.SetFloat(ShaderUtilities.ID_WeightBold, fontAsset.boldStyle); + + fontAsset.material = tmp_material; + + AssetDatabase.AddObjectToAsset(tmp_material, fontAsset); + + } + else + { + // Find all Materials referencing this font atlas. + Material[] material_references = TMP_EditorUtility.FindMaterialReferences(fontAsset); + + // Destroy Assets that will be replaced. + if (fontAsset.atlasTextures != null && fontAsset.atlasTextures.Length > 0) + DestroyImmediate(fontAsset.atlasTextures[0], true); + + // Set version number of font asset + fontAsset.version = "1.1.0"; + + // Special handling to remove legacy font asset data + if (fontAsset.m_glyphInfoList != null && fontAsset.m_glyphInfoList.Count > 0) + fontAsset.m_glyphInfoList = null; + + //Set Font Asset Type + fontAsset.atlasRenderMode = m_GlyphRenderMode; + + // Add FaceInfo to Font Asset + fontAsset.faceInfo = m_FaceInfo; + + // Add GlyphInfo[] to Font Asset + fontAsset.glyphTable = m_FontGlyphTable; + + // Add CharacterTable[] to font asset. + fontAsset.characterTable = m_FontCharacterTable; + + // Sort glyph and character tables. + fontAsset.SortGlyphAndCharacterTables(); + + // Get and Add Kerning Pairs to Font Asset + // TODO: Check and preserve existing adjustment pairs. + if (m_IncludeFontFeatures) + fontAsset.fontFeatureTable = GetKerningTable(); + + // Add Font Atlas as Sub-Asset + fontAsset.atlasTextures = new Texture2D[] { m_FontAtlasTexture }; + m_FontAtlasTexture.name = tex_FileName + " Atlas"; + fontAsset.atlasWidth = m_AtlasWidth; + fontAsset.atlasHeight = m_AtlasHeight; + fontAsset.atlasPadding = m_Padding; + + // Special handling due to a bug in earlier versions of Unity. + m_FontAtlasTexture.hideFlags = HideFlags.None; + fontAsset.material.hideFlags = HideFlags.None; + + AssetDatabase.AddObjectToAsset(m_FontAtlasTexture, fontAsset); + + // Assign new font atlas texture to the existing material. + fontAsset.material.SetTexture(ShaderUtilities.ID_MainTex, fontAsset.atlasTextures[0]); + + // Update the Texture reference on the Material + for (int i = 0; i < material_references.Length; i++) + { + material_references[i].SetTexture(ShaderUtilities.ID_MainTex, m_FontAtlasTexture); + material_references[i].SetFloat(ShaderUtilities.ID_TextureWidth, m_FontAtlasTexture.width); + material_references[i].SetFloat(ShaderUtilities.ID_TextureHeight, m_FontAtlasTexture.height); + + int spread = m_Padding + 1; + material_references[i].SetFloat(ShaderUtilities.ID_GradientScale, spread); // Spread = Padding for Brute Force SDF. + + material_references[i].SetFloat(ShaderUtilities.ID_WeightNormal, fontAsset.normalStyle); + material_references[i].SetFloat(ShaderUtilities.ID_WeightBold, fontAsset.boldStyle); + } + } + + // Saving File for Debug + //var pngData = destination_Atlas.EncodeToPNG(); + //File.WriteAllBytes("Assets/Textures/Debug Distance Field.png", pngData); + + // Add list of GlyphRects to font asset. + fontAsset.freeGlyphRects = m_FreeGlyphRects; + fontAsset.usedGlyphRects = m_UsedGlyphRects; + + // Save Font Asset creation settings + m_SelectedFontAsset = fontAsset; + m_LegacyFontAsset = null; + fontAsset.creationSettings = SaveFontCreationSettings(); + + AssetDatabase.SaveAssets(); + + AssetDatabase.ImportAsset(AssetDatabase.GetAssetPath(fontAsset)); // Re-import font asset to get the new updated version. + + fontAsset.ReadFontAssetDefinition(); + + AssetDatabase.Refresh(); + + m_FontAtlasTexture = null; + + // NEED TO GENERATE AN EVENT TO FORCE A REDRAW OF ANY TEXTMESHPRO INSTANCES THAT MIGHT BE USING THIS FONT ASSET + TMPro_EventManager.ON_FONT_PROPERTY_CHANGED(true, fontAsset); + } + + + /// + /// Internal method to save the Font Asset Creation Settings + /// + /// + FontAssetCreationSettings SaveFontCreationSettings() + { + FontAssetCreationSettings settings = new FontAssetCreationSettings(); + + //settings.sourceFontFileName = m_SourceFontFile.name; + settings.sourceFontFileGUID = AssetDatabase.AssetPathToGUID(AssetDatabase.GetAssetPath(m_SourceFontFile)); + settings.pointSizeSamplingMode = m_PointSizeSamplingMode; + settings.pointSize = m_PointSize; + settings.padding = m_Padding; + settings.packingMode = (int)m_PackingMode; + settings.atlasWidth = m_AtlasWidth; + settings.atlasHeight = m_AtlasHeight; + settings.characterSetSelectionMode = m_CharacterSetSelectionMode; + settings.characterSequence = m_CharacterSequence; + settings.referencedFontAssetGUID = AssetDatabase.AssetPathToGUID(AssetDatabase.GetAssetPath(m_ReferencedFontAsset)); + settings.referencedTextAssetGUID = AssetDatabase.AssetPathToGUID(AssetDatabase.GetAssetPath(m_CharactersFromFile)); + //settings.fontStyle = (int)m_FontStyle; + //settings.fontStyleModifier = m_FontStyleValue; + settings.renderMode = (int)m_GlyphRenderMode; + settings.includeFontFeatures = m_IncludeFontFeatures; + + return settings; + } + + + /// + /// Internal method to load the Font Asset Creation Settings + /// + /// + void LoadFontCreationSettings(FontAssetCreationSettings settings) + { + m_SourceFontFile = AssetDatabase.LoadAssetAtPath(AssetDatabase.GUIDToAssetPath(settings.sourceFontFileGUID)); + m_PointSizeSamplingMode = settings.pointSizeSamplingMode; + m_PointSize = settings.pointSize; + m_Padding = settings.padding; + m_PackingMode = (FontPackingModes)settings.packingMode; + m_AtlasWidth = settings.atlasWidth; + m_AtlasHeight = settings.atlasHeight; + m_CharacterSetSelectionMode = settings.characterSetSelectionMode; + m_CharacterSequence = settings.characterSequence; + m_ReferencedFontAsset = AssetDatabase.LoadAssetAtPath(AssetDatabase.GUIDToAssetPath(settings.referencedFontAssetGUID)); + m_CharactersFromFile = AssetDatabase.LoadAssetAtPath(AssetDatabase.GUIDToAssetPath(settings.referencedTextAssetGUID)); + //m_FontStyle = (FaceStyles)settings.fontStyle; + //m_FontStyleValue = settings.fontStyleModifier; + m_GlyphRenderMode = (GlyphRenderMode)settings.renderMode; + m_IncludeFontFeatures = settings.includeFontFeatures; + } + + + /// + /// Save the latest font asset creation settings to EditorPrefs. + /// + /// + void SaveCreationSettingsToEditorPrefs(FontAssetCreationSettings settings) + { + // Create new list if one does not already exist + if (m_FontAssetCreationSettingsContainer == null) + { + m_FontAssetCreationSettingsContainer = new FontAssetCreationSettingsContainer(); + m_FontAssetCreationSettingsContainer.fontAssetCreationSettings = new List(); + } + + // Add new creation settings to the list + m_FontAssetCreationSettingsContainer.fontAssetCreationSettings.Add(settings); + + // Since list should only contain the most 4 recent settings, we remove the first element if list exceeds 4 elements. + if (m_FontAssetCreationSettingsContainer.fontAssetCreationSettings.Count > 4) + m_FontAssetCreationSettingsContainer.fontAssetCreationSettings.RemoveAt(0); + + m_FontAssetCreationSettingsCurrentIndex = m_FontAssetCreationSettingsContainer.fontAssetCreationSettings.Count - 1; + + // Serialize list to JSON + string serializedSettings = JsonUtility.ToJson(m_FontAssetCreationSettingsContainer, true); + + EditorPrefs.SetString(k_FontAssetCreationSettingsContainerKey, serializedSettings); + } + + void DrawPreview() + { + Rect pixelRect; + if (position.width > position.height && position.width > k_TwoColumnControlsWidth) + { + float minSide = Mathf.Min(position.height - 15f, position.width - k_TwoColumnControlsWidth); + + EditorGUILayout.BeginVertical(EditorStyles.helpBox, GUILayout.MaxWidth(minSide)); + + pixelRect = GUILayoutUtility.GetRect(minSide, minSide, GUILayout.ExpandHeight(false), GUILayout.ExpandWidth(false)); + } + else + { + EditorGUILayout.BeginVertical(EditorStyles.helpBox); + + pixelRect = GUILayoutUtility.GetAspectRect(1f); + } + + if (m_FontAtlasTexture != null) + { + EditorGUI.DrawTextureAlpha(pixelRect, m_FontAtlasTexture, ScaleMode.StretchToFill); + } + else if (m_SavedFontAtlas != null) + { + EditorGUI.DrawTextureAlpha(pixelRect, m_SavedFontAtlas, ScaleMode.StretchToFill); + } + + EditorGUILayout.EndVertical(); + } + + + void CheckForLegacyGlyphRenderMode() + { + // Special handling for legacy glyph render mode + if ((int)m_GlyphRenderMode < 0x100) + { + switch ((int)m_GlyphRenderMode) + { + case 0: + m_GlyphRenderMode = GlyphRenderMode.SMOOTH_HINTED; + break; + case 1: + m_GlyphRenderMode = GlyphRenderMode.SMOOTH; + break; + case 2: + m_GlyphRenderMode = GlyphRenderMode.RASTER_HINTED; + break; + case 3: + m_GlyphRenderMode = GlyphRenderMode.RASTER; + break; + case 6: + case 7: + m_GlyphRenderMode = GlyphRenderMode.SDFAA; + break; + } + } + } + + + // Get Kerning Pairs + public TMP_FontFeatureTable GetKerningTable() + { + GlyphPairAdjustmentRecord[] adjustmentRecords = FontEngine.GetGlyphPairAdjustmentTable(m_AvailableGlyphsToAdd.ToArray()); + + if (adjustmentRecords == null) + return null; + + TMP_FontFeatureTable fontFeatureTable = new TMP_FontFeatureTable(); + + for (int i = 0; i < adjustmentRecords.Length; i++) + { + fontFeatureTable.glyphPairAdjustmentRecords.Add(new TMP_GlyphPairAdjustmentRecord(adjustmentRecords[i])); + } + + fontFeatureTable.SortGlyphPairAdjustmentRecords(); + + return fontFeatureTable; + } + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_FontAssetCreatorWindow.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_FontAssetCreatorWindow.cs.meta new file mode 100644 index 0000000..aa7176f --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_FontAssetCreatorWindow.cs.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 383966e89d344865a36addd5d378ffd3 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_FontPlugin.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_FontPlugin.cs new file mode 100644 index 0000000..4ff58ad --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_FontPlugin.cs @@ -0,0 +1,115 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; +using System; +using System.Runtime.InteropServices; + + +namespace TMPro.EditorUtilities +{ + /* + public class TMPro_FontPlugin + { + [UnmanagedFunctionPointer(CallingConvention.StdCall)] + private delegate void DebugLog(string log); + private static readonly DebugLog debugLog = DebugWrapper; + private static readonly IntPtr functionPointer = Marshal.GetFunctionPointerForDelegate(debugLog); + + private static void DebugWrapper(string log) + { + Debug.Log(log); + } + + public static void LinkDebugLog() + { + LinkDebug(functionPointer); + } + + [DllImport("TMPro_Plugin")] + private static extern void LinkDebug([MarshalAs(UnmanagedType.FunctionPtr)]IntPtr debugCall); + + [DllImport("TMPro_Plugin")] + public static extern + int Initialize_FontEngine(); + + [DllImport("TMPro_Plugin")] + public static extern + int Destroy_FontEngine(); + + [DllImport("TMPro_Plugin")] + public static extern + int Load_TrueType_Font(string fontPath); + + [DllImport("TMPro_Plugin")] + public static extern + int FT_Size_Font(int fontSize); + + [DllImport("TMPro_Plugin")] + public static extern + int Render_Character(byte[] buffer_fill, byte[] buffer_edge, int buffer_width, int buffer_height, int offset, int asc, FaceStyles style, float thickness, RenderModes rasterMode, ref FT_GlyphInfo glyphInfo); + + [DllImport("TMPro_Plugin")] + public static extern + int Render_Characters(byte[] buffer, int buffer_width, int buffer_height, int character_padding, int[] asc_set, int char_count, FaceStyles style, float style_mod, bool autoSize, RenderModes renderMode, int method, ref FT_FaceInfo fontData, FT_GlyphInfo[] Output); + + [DllImport("TMPro_Plugin")] + public static extern + int FT_GetKerningPairs(string fontPath, int[] characterSet, int setCount, FT_KerningPair[] kerningPairs); + + [DllImport("TMPro_Plugin")] + public static extern + float Check_RenderProgress(); + + [DllImport("TMPro_Plugin")] + internal static extern + void SendCancellationRequest(CancellationRequestType request); + } + + public enum FaceStyles { Normal, Bold, Italic, Bold_Italic, Outline, Bold_Sim }; + public enum RenderModes { HintedSmooth = 0, Smooth = 1, RasterHinted = 2, Raster = 3, DistanceField16 = 6, DistanceField32 = 7 }; // SignedDistanceField64 = 8 + + internal enum CancellationRequestType : byte { None = 0x0, CancelInProgess = 0x1, WindowClosed = 0x2 }; + + [StructLayout(LayoutKind.Sequential)] + public struct FT_KerningPair + { + public int ascII_Left; + public int ascII_Right; + public float xAdvanceOffset; + } + + + [StructLayout(LayoutKind.Sequential)] + public struct FT_GlyphInfo + { + public int id; + public float x; + public float y; + public float width; + public float height; + public float xOffset; + public float yOffset; + public float xAdvance; + } + + + [StructLayout(LayoutKind.Sequential)] + public struct FT_FaceInfo + { + [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)] + public string name; + public int pointSize; + public int padding; + public float lineHeight; + public float baseline; + public float ascender; + public float descender; + public float centerLine; + public float underline; + public float underlineThickness; + public int characterCount; + public int atlasWidth; + public int atlasHeight; + } + */ +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_FontPlugin.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_FontPlugin.cs.meta new file mode 100644 index 0000000..a6afabd --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_FontPlugin.cs.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 9edc9283e7d6409fab242fe8fb6a822c +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_SortingLayerHelper.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_SortingLayerHelper.cs new file mode 100644 index 0000000..ca0ba18 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_SortingLayerHelper.cs @@ -0,0 +1,105 @@ +/* + * Copyright (c) 2014, Nick Gravelyn. + * + * This software is provided 'as-is', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * + * 3. This notice may not be removed or altered from any source + * distribution. + */ + +using UnityEngine; +using UnityEditor; +using System; +using System.Reflection; + +namespace TMPro +{ + // Helpers used by the different sorting layer classes. + public static class SortingLayerHelper + { + private static Type _utilityType; + private static PropertyInfo _sortingLayerNamesProperty; + private static MethodInfo _getSortingLayerUserIdMethod; + + static SortingLayerHelper() + { + _utilityType = Type.GetType("UnityEditorInternal.InternalEditorUtility, UnityEditor"); + _sortingLayerNamesProperty = _utilityType.GetProperty("sortingLayerNames", BindingFlags.Static | BindingFlags.NonPublic); + _getSortingLayerUserIdMethod = _utilityType.GetMethod("GetSortingLayerUniqueID", BindingFlags.Static | BindingFlags.NonPublic); + } + + // Gets an array of sorting layer names. + // Since this uses reflection, callers should check for 'null' which will be returned if the reflection fails. + public static string[] sortingLayerNames + { + get + { + if (_sortingLayerNamesProperty == null) + { + return null; + } + + return _sortingLayerNamesProperty.GetValue(null, null) as string[]; + } + } + + // Given the ID of a sorting layer, returns the sorting layer's name + public static string GetSortingLayerNameFromID(int id) + { + string[] names = sortingLayerNames; + if (names == null) + { + return null; + } + + for (int i = 0; i < names.Length; i++) + { + if (GetSortingLayerIDForIndex(i) == id) + { + return names[i]; + } + } + + return null; + } + + // Given the name of a sorting layer, returns the ID. + public static int GetSortingLayerIDForName(string name) + { + string[] names = sortingLayerNames; + if (names == null) + { + return 0; + } + + return GetSortingLayerIDForIndex(Array.IndexOf(names, name)); + } + + // Helper to convert from a sorting layer INDEX to a sorting layer ID. These are not the same thing. + // IDs are based on the order in which layers were created and do not change when reordering the layers. + // Thankfully there is a private helper we can call to get the ID for a layer given its index. + public static int GetSortingLayerIDForIndex(int index) + { + if (_getSortingLayerUserIdMethod == null) + { + return 0; + } + + return (int)_getSortingLayerUserIdMethod.Invoke(null, new object[] { index }); + } + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_SortingLayerHelper.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_SortingLayerHelper.cs.meta new file mode 100644 index 0000000..e959de6 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_SortingLayerHelper.cs.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 88ed537c17c34f339121fe9a7d6d7a0e +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_TextContainerEditor.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_TextContainerEditor.cs new file mode 100644 index 0000000..cdeb623 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_TextContainerEditor.cs @@ -0,0 +1,235 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + + +namespace TMPro.EditorUtilities +{ + [CustomEditor(typeof(TextContainer)), CanEditMultipleObjects] + public class TMPro_TextContainerEditor : Editor + { + + // Serialized Properties + private SerializedProperty anchorPosition_prop; + private SerializedProperty pivot_prop; + private SerializedProperty rectangle_prop; + private SerializedProperty margins_prop; + + + private TextContainer m_textContainer; + //private Transform m_transform; + //private Vector3[] m_Rect_handlePoints = new Vector3[4]; + //private Vector3[] m_Margin_handlePoints = new Vector3[4]; + + //private Vector2 m_anchorPosition; + + //private Vector3 m_mousePreviousPOS; + //private Vector2 m_previousStartPOS; + //private int m_mouseDragFlag = 0; + + //private static Transform m_visualHelper; + + + void OnEnable() + { + + // Serialized Properties + anchorPosition_prop = serializedObject.FindProperty("m_anchorPosition"); + pivot_prop = serializedObject.FindProperty("m_pivot"); + rectangle_prop = serializedObject.FindProperty("m_rect"); + margins_prop = serializedObject.FindProperty("m_margins"); + + m_textContainer = (TextContainer)target; + //m_transform = m_textContainer.transform; + + + /* + if (m_visualHelper == null) + { + m_visualHelper = GameObject.CreatePrimitive(PrimitiveType.Sphere).transform; + m_visualHelper.localScale = new Vector3(0.25f, 0.25f, 0.25f); + } + */ + } + + void OnDisable() + { + /* + if (m_visualHelper != null) + DestroyImmediate (m_visualHelper.gameObject); + */ + } + + + + + public override void OnInspectorGUI() + { + serializedObject.Update(); + + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(anchorPosition_prop); + if (anchorPosition_prop.enumValueIndex == 9) + { + EditorGUI.indentLevel += 1; + EditorGUILayout.PropertyField(pivot_prop, new GUIContent("Pivot Position")); + EditorGUI.indentLevel -= 1; + } + + + DrawDimensionProperty(rectangle_prop, "Dimensions"); + DrawMaginProperty(margins_prop, "Margins"); + if (EditorGUI.EndChangeCheck()) + { + // Re-compute pivot position when changes are made. + if (anchorPosition_prop.enumValueIndex != 9) + pivot_prop.vector2Value = GetAnchorPosition(anchorPosition_prop.enumValueIndex); + + m_textContainer.hasChanged = true; + } + + serializedObject.ApplyModifiedProperties(); + + EditorGUILayout.Space(); + } + + + private void DrawDimensionProperty(SerializedProperty property, string label) + { + float old_LabelWidth = EditorGUIUtility.labelWidth; + float old_FieldWidth = EditorGUIUtility.fieldWidth; + + Rect rect = EditorGUILayout.GetControlRect(false, 18); + Rect pos0 = new Rect(rect.x, rect.y + 2, rect.width, 18); + + float width = rect.width + 3; + pos0.width = old_LabelWidth; + GUI.Label(pos0, label); + + Rect rectangle = property.rectValue; + + float width_B = width - old_LabelWidth; + float fieldWidth = width_B / 4; + pos0.width = fieldWidth - 5; + + pos0.x = old_LabelWidth + 15; + GUI.Label(pos0, "Width"); + + pos0.x += fieldWidth; + rectangle.width = EditorGUI.FloatField(pos0, GUIContent.none, rectangle.width); + + pos0.x += fieldWidth; + GUI.Label(pos0, "Height"); + + pos0.x += fieldWidth; + rectangle.height = EditorGUI.FloatField(pos0, GUIContent.none, rectangle.height); + + property.rectValue = rectangle; + EditorGUIUtility.labelWidth = old_LabelWidth; + EditorGUIUtility.fieldWidth = old_FieldWidth; + } + + + private void DrawMaginProperty(SerializedProperty property, string label) + { + float old_LabelWidth = EditorGUIUtility.labelWidth; + float old_FieldWidth = EditorGUIUtility.fieldWidth; + + Rect rect = EditorGUILayout.GetControlRect(false, 2 * 18); + Rect pos0 = new Rect(rect.x, rect.y + 2, rect.width, 18); + + float width = rect.width + 3; + pos0.width = old_LabelWidth; + GUI.Label(pos0, label); + + //Vector4 vec = property.vector4Value; + Vector4 vec = Vector4.zero; + vec.x = property.FindPropertyRelative("x").floatValue; + vec.y = property.FindPropertyRelative("y").floatValue; + vec.z = property.FindPropertyRelative("z").floatValue; + vec.w = property.FindPropertyRelative("w").floatValue; + + + float widthB = width - old_LabelWidth; + float fieldWidth = widthB / 4; + pos0.width = fieldWidth - 5; + + // Labels + pos0.x = old_LabelWidth + 15; + GUI.Label(pos0, "Left"); + + pos0.x += fieldWidth; + GUI.Label(pos0, "Top"); + + pos0.x += fieldWidth; + GUI.Label(pos0, "Right"); + + pos0.x += fieldWidth; + GUI.Label(pos0, "Bottom"); + + pos0.y += 18; + + pos0.x = old_LabelWidth + 15; + vec.x = EditorGUI.FloatField(pos0, GUIContent.none, vec.x); + + pos0.x += fieldWidth; + vec.y = EditorGUI.FloatField(pos0, GUIContent.none, vec.y); + + pos0.x += fieldWidth; + vec.z = EditorGUI.FloatField(pos0, GUIContent.none, vec.z); + + pos0.x += fieldWidth; + vec.w = EditorGUI.FloatField(pos0, GUIContent.none, vec.w); + + //property.vector4Value = vec; + property.FindPropertyRelative("x").floatValue = vec.x; + property.FindPropertyRelative("y").floatValue = vec.y; + property.FindPropertyRelative("z").floatValue = vec.z; + property.FindPropertyRelative("w").floatValue = vec.w; + + EditorGUIUtility.labelWidth = old_LabelWidth; + EditorGUIUtility.fieldWidth = old_FieldWidth; + } + + + Vector2 GetAnchorPosition(int index) + { + Vector2 anchorPosition = Vector2.zero; + + switch (index) + { + case 0: // TOP LEFT + anchorPosition = new Vector2(0, 1); + break; + case 1: // TOP + anchorPosition = new Vector2(0.5f, 1); + break; + case 2: // TOP RIGHT + anchorPosition = new Vector2(1, 1); + break; + case 3: // LEFT + anchorPosition = new Vector2(0, 0.5f); + break; + case 4: // MIDDLE + anchorPosition = new Vector2(0.5f, 0.5f); + break; + case 5: // RIGHT + anchorPosition = new Vector2(1, 0.5f); + break; + case 6: // BOTTOM LEFT + anchorPosition = new Vector2(0, 0); + break; + case 7: // BOTTOM + anchorPosition = new Vector2(0.5f, 0); + break; + case 8: // BOTTOM RIGHT + anchorPosition = new Vector2(1, 0); + break; + } + + return anchorPosition; + } + + + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_TextContainerEditor.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_TextContainerEditor.cs.meta new file mode 100644 index 0000000..03c0dee --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_TextContainerEditor.cs.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 02893ffb522b490a9fa28eedd2584309 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_TexturePostProcessor.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_TexturePostProcessor.cs new file mode 100644 index 0000000..adbaecf --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_TexturePostProcessor.cs @@ -0,0 +1,75 @@ +using UnityEngine; +using UnityEditor; +using System.Collections; + + +namespace TMPro.EditorUtilities +{ + + public class TMPro_TexturePostProcessor : AssetPostprocessor + { + + void OnPostprocessTexture(Texture2D texture) + { + //var importer = assetImporter as TextureImporter; + + Texture2D tex = AssetDatabase.LoadAssetAtPath(assetPath, typeof(Texture2D)) as Texture2D; + + // Send Event Sub Objects + if (tex != null) + TMPro_EventManager.ON_SPRITE_ASSET_PROPERTY_CHANGED(true, tex); + } + + } + + + //public class TMPro_PackageImportPostProcessor : AssetPostprocessor + //{ + // static void OnPostprocessAllAssets(string[] importedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromAssetPaths) + // { + // for (int i = 0; i < importedAssets.Length; i++) + // { + // if (importedAssets[i].Contains("TextMesh Pro/Resources/TMP Settings.asset")) + // { + // Debug.Log("New TMP Settings file was just imported."); + + // // TMP Settings file was just re-imported. + // // Check if project already contains + // } + + + // if (importedAssets[i].Contains("com.unity.TextMeshPro/Examples")) + // { + // //Debug.Log("New TMP Examples folder was just imported."); + // } + + // //Debug.Log("[" + importedAssets[i] + "] was just imported."); + // } + + + + // //for (int i = 0; i < deletedAssets.Length; i++) + // //{ + // // if (deletedAssets[i] == "Assets/TextMesh Pro") + // // { + // // //Debug.Log("Asset [" + deletedAssets[i] + "] has been deleted."); + // // string currentBuildSettings = PlayerSettings.GetScriptingDefineSymbolsForGroup(EditorUserBuildSettings.selectedBuildTargetGroup); + + // // //Check for and inject TMP_PRESENT + // // if (currentBuildSettings.Contains("TMP_PRESENT;")) + // // { + // // currentBuildSettings = currentBuildSettings.Replace("TMP_PRESENT;", ""); + + // // PlayerSettings.SetScriptingDefineSymbolsForGroup(EditorUserBuildSettings.selectedBuildTargetGroup, currentBuildSettings); + // // } + // // else if (currentBuildSettings.Contains("TMP_PRESENT")) + // // { + // // currentBuildSettings = currentBuildSettings.Replace("TMP_PRESENT", ""); + + // // PlayerSettings.SetScriptingDefineSymbolsForGroup(EditorUserBuildSettings.selectedBuildTargetGroup, currentBuildSettings); + // // } + // // } + // //} + // } + //} +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_TexturePostProcessor.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_TexturePostProcessor.cs.meta new file mode 100644 index 0000000..c10f584 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMPro_TexturePostProcessor.cs.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: f4935fb862d54980b1bcbca942962642 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/Unity.TextMeshPro.Editor.asmdef b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/Unity.TextMeshPro.Editor.asmdef new file mode 100644 index 0000000..d0af0f6 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/Unity.TextMeshPro.Editor.asmdef @@ -0,0 +1,13 @@ +{ + "name": "Unity.TextMeshPro.Editor", + "references": [ + "Unity.TextMeshPro", + "Unity.ugui", + "Unity.ugui.Editor" + ], + "optionalUnityReferences": [], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [] +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/Unity.TextMeshPro.Editor.asmdef.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/Unity.TextMeshPro.Editor.asmdef.meta new file mode 100644 index 0000000..3ff293e --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/Unity.TextMeshPro.Editor.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 6546d7765b4165b40850b3667f981c26 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime.meta new file mode 100644 index 0000000..9e5e207 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5fc988a1d5b04aee9a5222502b201a45 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/AssemblyInfo.cs.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/AssemblyInfo.cs.cs new file mode 100644 index 0000000..472129d --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/AssemblyInfo.cs.cs @@ -0,0 +1,11 @@ +using System.Runtime.CompilerServices; + +// Allow internal visibility for testing purposes. +[assembly: InternalsVisibleTo("Unity.TextCore")] + +[assembly: InternalsVisibleTo("Unity.FontEngine.Tests")] + +#if UNITY_EDITOR +[assembly: InternalsVisibleTo("Unity.TextCore.Editor")] +[assembly: InternalsVisibleTo("Unity.TextMeshPro.Editor")] +#endif diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/AssemblyInfo.cs.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/AssemblyInfo.cs.cs.meta new file mode 100644 index 0000000..b8b0156 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/AssemblyInfo.cs.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1c147d10db452eb4b854a35f84472017 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/FastAction.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/FastAction.cs new file mode 100644 index 0000000..15012e3 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/FastAction.cs @@ -0,0 +1,146 @@ +using UnityEngine; +using System.Collections; +using System.Collections.Generic; + + +namespace TMPro +{ + public class FastAction + { + + LinkedList delegates = new LinkedList(); + + Dictionary> lookup = new Dictionary>(); + + public void Add(System.Action rhs) + { + if (lookup.ContainsKey(rhs)) return; + + lookup[rhs] = delegates.AddLast(rhs); + } + + public void Remove(System.Action rhs) + { + if (lookup.TryGetValue(rhs, out LinkedListNode node)) + { + lookup.Remove(rhs); + delegates.Remove(node); + } + } + + public void Call() + { + var node = delegates.First; + while (node != null) + { + node.Value(); + node = node.Next; + } + } + } + + + public class FastAction + { + + LinkedList> delegates = new LinkedList>(); + + Dictionary, LinkedListNode>> lookup = new Dictionary, LinkedListNode>>(); + + public void Add(System.Action rhs) + { + if (lookup.ContainsKey(rhs)) return; + + lookup[rhs] = delegates.AddLast(rhs); + } + + public void Remove(System.Action rhs) + { + if (lookup.TryGetValue(rhs, out LinkedListNode> node)) + { + lookup.Remove(rhs); + delegates.Remove(node); + } + } + + public void Call(A a) + { + var node = delegates.First; + while (node != null) + { + node.Value(a); + node = node.Next; + } + } + } + + + public class FastAction + { + + LinkedList> delegates = new LinkedList>(); + + Dictionary, LinkedListNode>> lookup = new Dictionary, LinkedListNode>>(); + + public void Add(System.Action rhs) + { + if (lookup.ContainsKey(rhs)) return; + + lookup[rhs] = delegates.AddLast(rhs); + } + + public void Remove(System.Action rhs) + { + if (lookup.TryGetValue(rhs, out LinkedListNode> node)) + { + lookup.Remove(rhs); + delegates.Remove(node); + } + } + + public void Call(A a, B b) + { + var node = delegates.First; + while (node != null) + { + node.Value(a, b); + node = node.Next; + } + } + } + + + public class FastAction + { + + LinkedList> delegates = new LinkedList>(); + + Dictionary, LinkedListNode>> lookup = new Dictionary, LinkedListNode>>(); + + public void Add(System.Action rhs) + { + if (lookup.ContainsKey(rhs)) return; + + lookup[rhs] = delegates.AddLast(rhs); + } + + public void Remove(System.Action rhs) + { + if (lookup.TryGetValue(rhs, out LinkedListNode> node)) + { + lookup.Remove(rhs); + delegates.Remove(node); + } + } + + public void Call(A a, B b, C c) + { + var node = delegates.First; + while (node != null) + { + node.Value(a, b, c); + node = node.Next; + } + } + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/FastAction.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/FastAction.cs.meta new file mode 100644 index 0000000..cfbd1a6 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/FastAction.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 871f8edd56e84b8fb295b10cc3c78f36 +timeCreated: 1435956061 +licenseType: Store +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/MaterialReferenceManager.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/MaterialReferenceManager.cs new file mode 100644 index 0000000..dc1ec2f --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/MaterialReferenceManager.cs @@ -0,0 +1,644 @@ +using UnityEngine; +using System.Collections; +using System.Collections.Generic; + + +namespace TMPro +{ + + public class MaterialReferenceManager + { + private static MaterialReferenceManager s_Instance; + + // Dictionaries used to track Asset references. + private Dictionary m_FontMaterialReferenceLookup = new Dictionary(); + private Dictionary m_FontAssetReferenceLookup = new Dictionary(); + private Dictionary m_SpriteAssetReferenceLookup = new Dictionary(); + private Dictionary m_ColorGradientReferenceLookup = new Dictionary(); + + + /// + /// Get a singleton instance of the registry + /// + public static MaterialReferenceManager instance + { + get + { + if (MaterialReferenceManager.s_Instance == null) + MaterialReferenceManager.s_Instance = new MaterialReferenceManager(); + return MaterialReferenceManager.s_Instance; + } + } + + + + /// + /// Add new font asset reference to dictionary. + /// + /// + public static void AddFontAsset(TMP_FontAsset fontAsset) + { + MaterialReferenceManager.instance.AddFontAssetInternal(fontAsset); + } + + /// + /// Add new Font Asset reference to dictionary. + /// + /// + private void AddFontAssetInternal(TMP_FontAsset fontAsset) + { + if (m_FontAssetReferenceLookup.ContainsKey(fontAsset.hashCode)) return; + + // Add reference to the font asset. + m_FontAssetReferenceLookup.Add(fontAsset.hashCode, fontAsset); + + // Add reference to the font material. + m_FontMaterialReferenceLookup.Add(fontAsset.materialHashCode, fontAsset.material); + } + + + + /// + /// Add new Sprite Asset to dictionary. + /// + /// + /// + public static void AddSpriteAsset(TMP_SpriteAsset spriteAsset) + { + MaterialReferenceManager.instance.AddSpriteAssetInternal(spriteAsset); + } + + /// + /// Internal method to add a new sprite asset to the dictionary. + /// + /// + /// + private void AddSpriteAssetInternal(TMP_SpriteAsset spriteAsset) + { + if (m_SpriteAssetReferenceLookup.ContainsKey(spriteAsset.hashCode)) return; + + // Add reference to sprite asset. + m_SpriteAssetReferenceLookup.Add(spriteAsset.hashCode, spriteAsset); + + // Adding reference to the sprite asset material as well + m_FontMaterialReferenceLookup.Add(spriteAsset.hashCode, spriteAsset.material); + } + + /// + /// Add new Sprite Asset to dictionary. + /// + /// + /// + public static void AddSpriteAsset(int hashCode, TMP_SpriteAsset spriteAsset) + { + MaterialReferenceManager.instance.AddSpriteAssetInternal(hashCode, spriteAsset); + } + + /// + /// Internal method to add a new sprite asset to the dictionary. + /// + /// + /// + private void AddSpriteAssetInternal(int hashCode, TMP_SpriteAsset spriteAsset) + { + if (m_SpriteAssetReferenceLookup.ContainsKey(hashCode)) return; + + // Add reference to Sprite Asset. + m_SpriteAssetReferenceLookup.Add(hashCode, spriteAsset); + + // Add reference to Sprite Asset using the asset hashcode. + m_FontMaterialReferenceLookup.Add(hashCode, spriteAsset.material); + + // Compatibility check + if (spriteAsset.hashCode == 0) spriteAsset.hashCode = hashCode; + } + + + /// + /// Add new Material reference to dictionary. + /// + /// + /// + public static void AddFontMaterial(int hashCode, Material material) + { + MaterialReferenceManager.instance.AddFontMaterialInternal(hashCode, material); + } + + /// + /// Add new material reference to dictionary. + /// + /// + /// + private void AddFontMaterialInternal(int hashCode, Material material) + { + // Since this function is called after checking if the material is + // contained in the dictionary, there is no need to check again. + m_FontMaterialReferenceLookup.Add(hashCode, material); + } + + + /// + /// Add new Color Gradient Preset to dictionary. + /// + /// + /// + public static void AddColorGradientPreset(int hashCode, TMP_ColorGradient spriteAsset) + { + MaterialReferenceManager.instance.AddColorGradientPreset_Internal(hashCode, spriteAsset); + } + + /// + /// Internal method to add a new Color Gradient Preset to the dictionary. + /// + /// + /// + private void AddColorGradientPreset_Internal(int hashCode, TMP_ColorGradient spriteAsset) + { + if (m_ColorGradientReferenceLookup.ContainsKey(hashCode)) return; + + // Add reference to Color Gradient Preset Asset. + m_ColorGradientReferenceLookup.Add(hashCode, spriteAsset); + } + + + + /// + /// Add new material reference and return the index of this new reference in the materialReferences array. + /// + /// + /// + /// + //public int AddMaterial(Material material, int materialHashCode, TMP_FontAsset fontAsset) + //{ + // if (!m_MaterialReferenceLookup.ContainsKey(materialHashCode)) + // { + // int index = m_MaterialReferenceLookup.Count; + + // materialReferences[index].fontAsset = fontAsset; + // materialReferences[index].material = material; + // materialReferences[index].isDefaultMaterial = material.GetInstanceID() == fontAsset.material.GetInstanceID() ? true : false; + // materialReferences[index].index = index; + // materialReferences[index].referenceCount = 0; + + // m_MaterialReferenceLookup[materialHashCode] = index; + + // // Compute Padding value and store it + // // TODO + + // int fontAssetHashCode = fontAsset.hashCode; + + // if (!m_FontAssetReferenceLookup.ContainsKey(fontAssetHashCode)) + // m_FontAssetReferenceLookup.Add(fontAssetHashCode, fontAsset); + + // m_countInternal += 1; + + // return index; + // } + // else + // { + // return m_MaterialReferenceLookup[materialHashCode]; + // } + //} + + + /// + /// Add new material reference and return the index of this new reference in the materialReferences array. + /// + /// + /// + /// + /// + //public int AddMaterial(Material material, int materialHashCode, TMP_SpriteAsset spriteAsset) + //{ + // if (!m_MaterialReferenceLookup.ContainsKey(materialHashCode)) + // { + // int index = m_MaterialReferenceLookup.Count; + + // materialReferences[index].fontAsset = materialReferences[0].fontAsset; + // materialReferences[index].spriteAsset = spriteAsset; + // materialReferences[index].material = material; + // materialReferences[index].isDefaultMaterial = true; + // materialReferences[index].index = index; + // materialReferences[index].referenceCount = 0; + + // m_MaterialReferenceLookup[materialHashCode] = index; + + // int spriteAssetHashCode = spriteAsset.hashCode; + + // if (!m_SpriteAssetReferenceLookup.ContainsKey(spriteAssetHashCode)) + // m_SpriteAssetReferenceLookup.Add(spriteAssetHashCode, spriteAsset); + + // m_countInternal += 1; + + // return index; + // } + // else + // { + // return m_MaterialReferenceLookup[materialHashCode]; + // } + //} + + + /// + /// Function to check if the font asset is already referenced. + /// + /// + /// + public bool Contains(TMP_FontAsset font) + { + if (m_FontAssetReferenceLookup.ContainsKey(font.hashCode)) + return true; + + return false; + } + + + /// + /// Function to check if the sprite asset is already referenced. + /// + /// + /// + public bool Contains(TMP_SpriteAsset sprite) + { + if (m_FontAssetReferenceLookup.ContainsKey(sprite.hashCode)) + return true; + + return false; + } + + + + /// + /// Function returning the Font Asset corresponding to the provided hash code. + /// + /// + /// + /// + public static bool TryGetFontAsset(int hashCode, out TMP_FontAsset fontAsset) + { + return MaterialReferenceManager.instance.TryGetFontAssetInternal(hashCode, out fontAsset); + } + + /// + /// Internal Function returning the Font Asset corresponding to the provided hash code. + /// + /// + /// + /// + private bool TryGetFontAssetInternal(int hashCode, out TMP_FontAsset fontAsset) + { + fontAsset = null; + + if (m_FontAssetReferenceLookup.TryGetValue(hashCode, out fontAsset)) + { + return true; + } + + return false; + } + + + + /// + /// Function returning the Sprite Asset corresponding to the provided hash code. + /// + /// + /// + /// + public static bool TryGetSpriteAsset(int hashCode, out TMP_SpriteAsset spriteAsset) + { + return MaterialReferenceManager.instance.TryGetSpriteAssetInternal(hashCode, out spriteAsset); + } + + /// + /// Internal function returning the Sprite Asset corresponding to the provided hash code. + /// + /// + /// + /// + private bool TryGetSpriteAssetInternal(int hashCode, out TMP_SpriteAsset spriteAsset) + { + spriteAsset = null; + + if (m_SpriteAssetReferenceLookup.TryGetValue(hashCode, out spriteAsset)) + { + return true; + } + + return false; + } + + + /// + /// Function returning the Color Gradient Preset corresponding to the provided hash code. + /// + /// + /// + /// + public static bool TryGetColorGradientPreset(int hashCode, out TMP_ColorGradient gradientPreset) + { + return MaterialReferenceManager.instance.TryGetColorGradientPresetInternal(hashCode, out gradientPreset); + } + + /// + /// Internal function returning the Color Gradient Preset corresponding to the provided hash code. + /// + /// + /// + /// + private bool TryGetColorGradientPresetInternal(int hashCode, out TMP_ColorGradient gradientPreset) + { + gradientPreset = null; + + if (m_ColorGradientReferenceLookup.TryGetValue(hashCode, out gradientPreset)) + { + return true; + } + + return false; + } + + + /// + /// Function returning the Font Material corresponding to the provided hash code. + /// + /// + /// + /// + public static bool TryGetMaterial(int hashCode, out Material material) + { + return MaterialReferenceManager.instance.TryGetMaterialInternal(hashCode, out material); + } + + /// + /// Internal function returning the Font Material corresponding to the provided hash code. + /// + /// + /// + /// + private bool TryGetMaterialInternal(int hashCode, out Material material) + { + material = null; + + if (m_FontMaterialReferenceLookup.TryGetValue(hashCode, out material)) + { + return true; + } + + return false; + } + + + /// + /// Function to lookup a material based on hash code and returning the MaterialReference containing this material. + /// + /// + /// + /// + //public bool TryGetMaterial(int hashCode, out MaterialReference materialReference) + //{ + // int materialIndex = -1; + + // if (m_MaterialReferenceLookup.TryGetValue(hashCode, out materialIndex)) + // { + // materialReference = materialReferences[materialIndex]; + + // return true; + // } + + // materialReference = new MaterialReference(); + + // return false; + //} + + + + /// + /// + /// + /// + /// + //public int GetMaterialIndex(TMP_FontAsset fontAsset) + //{ + // if (m_MaterialReferenceLookup.ContainsKey(fontAsset.materialHashCode)) + // return m_MaterialReferenceLookup[fontAsset.materialHashCode]; + + // return -1; + //} + + + /// + /// + /// + /// + /// + //public TMP_FontAsset GetFontAsset(int index) + //{ + // if (index >= 0 && index < materialReferences.Length) + // return materialReferences[index].fontAsset; + + // return null; + //} + + + /// + /// + /// + /// + /// + /// + //public void SetDefaultMaterial(Material material, int materialHashCode, TMP_FontAsset fontAsset) + //{ + // if (!m_MaterialReferenceLookup.ContainsKey(materialHashCode)) + // { + // materialReferences[0].fontAsset = fontAsset; + // materialReferences[0].material = material; + // materialReferences[0].index = 0; + // materialReferences[0].isDefaultMaterial = material.GetInstanceID() == fontAsset.material.GetInstanceID() ? true : false; + // materialReferences[0].referenceCount = 0; + // m_MaterialReferenceLookup[materialHashCode] = 0; + + // // Compute Padding value and store it + // // TODO + + // int fontHashCode = fontAsset.hashCode; + + // if (!m_FontAssetReferenceLookup.ContainsKey(fontHashCode)) + // m_FontAssetReferenceLookup.Add(fontHashCode, fontAsset); + // } + // else + // { + // materialReferences[0].fontAsset = fontAsset; + // materialReferences[0].material = material; + // materialReferences[0].index = 0; + // materialReferences[0].referenceCount = 0; + // m_MaterialReferenceLookup[materialHashCode] = 0; + // } + // // Compute padding + // // TODO + + // m_countInternal = 1; + //} + + + + /// + /// + /// + //public void Clear() + //{ + // //m_currentIndex = 0; + // m_MaterialReferenceLookup.Clear(); + // m_SpriteAssetReferenceLookup.Clear(); + // m_FontAssetReferenceLookup.Clear(); + //} + + + /// + /// Function to clear the reference count for each of the material references. + /// + //public void ClearReferenceCount() + //{ + // m_countInternal = 0; + + // for (int i = 0; i < materialReferences.Length; i++) + // { + // if (materialReferences[i].fontAsset == null) + // return; + + // materialReferences[i].referenceCount = 0; + // } + //} + + } + + + + public struct MaterialReference + { + + public int index; + public TMP_FontAsset fontAsset; + public TMP_SpriteAsset spriteAsset; + public Material material; + public bool isDefaultMaterial; + public bool isFallbackMaterial; + public Material fallbackMaterial; + public float padding; + public int referenceCount; + + + /// + /// Constructor for new Material Reference. + /// + /// + /// + /// + /// + /// + public MaterialReference(int index, TMP_FontAsset fontAsset, TMP_SpriteAsset spriteAsset, Material material, float padding) + { + this.index = index; + this.fontAsset = fontAsset; + this.spriteAsset = spriteAsset; + this.material = material; + this.isDefaultMaterial = material.GetInstanceID() == fontAsset.material.GetInstanceID() ? true : false; + this.isFallbackMaterial = false; + this.fallbackMaterial = null; + this.padding = padding; + this.referenceCount = 0; + } + + + /// + /// Function to check if a certain font asset is contained in the material reference array. + /// + /// + /// + /// + public static bool Contains(MaterialReference[] materialReferences, TMP_FontAsset fontAsset) + { + int id = fontAsset.GetInstanceID(); + + for (int i = 0; i < materialReferences.Length && materialReferences[i].fontAsset != null; i++) + { + if (materialReferences[i].fontAsset.GetInstanceID() == id) + return true; + } + + return false; + } + + + /// + /// Function to add a new material reference and returning its index in the material reference array. + /// + /// + /// + /// + /// + /// + public static int AddMaterialReference(Material material, TMP_FontAsset fontAsset, MaterialReference[] materialReferences, Dictionary materialReferenceIndexLookup) + { + int materialID = material.GetInstanceID(); + + if (materialReferenceIndexLookup.TryGetValue(materialID, out int index)) + { + return index; + } + else + { + index = materialReferenceIndexLookup.Count; + + // Add new reference index + materialReferenceIndexLookup[materialID] = index; + + materialReferences[index].index = index; + materialReferences[index].fontAsset = fontAsset; + materialReferences[index].spriteAsset = null; + materialReferences[index].material = material; + materialReferences[index].isDefaultMaterial = materialID == fontAsset.material.GetInstanceID() ? true : false; + //materialReferences[index].padding = 0; + materialReferences[index].referenceCount = 0; + + return index; + } + } + + + /// + /// + /// + /// + /// + /// + /// + /// + public static int AddMaterialReference(Material material, TMP_SpriteAsset spriteAsset, MaterialReference[] materialReferences, Dictionary materialReferenceIndexLookup) + { + int materialID = material.GetInstanceID(); + + if (materialReferenceIndexLookup.TryGetValue(materialID, out int index)) + { + return index; + } + else + { + index = materialReferenceIndexLookup.Count; + + // Add new reference index + materialReferenceIndexLookup[materialID] = index; + + materialReferences[index].index = index; + materialReferences[index].fontAsset = materialReferences[0].fontAsset; + materialReferences[index].spriteAsset = spriteAsset; + materialReferences[index].material = material; + materialReferences[index].isDefaultMaterial = true; + //materialReferences[index].padding = 0; + materialReferences[index].referenceCount = 0; + + return index; + } + } + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/MaterialReferenceManager.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/MaterialReferenceManager.cs.meta new file mode 100644 index 0000000..31dbeee --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/MaterialReferenceManager.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 11a6a034ab84493cbed6af5ae7aae78b +timeCreated: 1449743129 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Asset.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Asset.cs new file mode 100644 index 0000000..d84ee7f --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Asset.cs @@ -0,0 +1,26 @@ +using UnityEngine; + +namespace TMPro +{ + + // Base class inherited by the various TextMeshPro Assets. + [System.Serializable] + public class TMP_Asset : ScriptableObject + { + /// + /// HashCode based on the name of the asset. + /// + public int hashCode; + + /// + /// The material used by this asset. + /// + public Material material; + + /// + /// HashCode based on the name of the material assigned to this asset. + /// + public int materialHashCode; + + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Asset.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Asset.cs.meta new file mode 100644 index 0000000..44fe8a4 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Asset.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 3bda1886f58f4e0ab1139400b160c3ee +timeCreated: 1459318952 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Character.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Character.cs new file mode 100644 index 0000000..0c29264 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Character.cs @@ -0,0 +1,51 @@ +using System; +using UnityEngine.TextCore; + +namespace TMPro +{ + /// + /// A basic element of text. + /// + [Serializable] + public class TMP_Character : TMP_TextElement + { + /// + /// Default constructor. + /// + public TMP_Character() + { + m_ElementType = TextElementType.Character; + this.scale = 1.0f; + } + + /// + /// Constructor for new character + /// + /// Unicode value. + /// Glyph + public TMP_Character(uint unicode, Glyph glyph) + { + m_ElementType = TextElementType.Character; + + this.unicode = unicode; + this.glyph = glyph; + this.glyphIndex = glyph.index; + this.scale = 1.0f; + } + + /// + /// Constructor for new character + /// + /// Unicode value. + /// Glyph index. + internal TMP_Character(uint unicode, uint glyphIndex) + { + m_ElementType = TextElementType.Character; + + this.unicode = unicode; + this.glyph = null; + this.glyphIndex = glyphIndex; + this.scale = 1.0f; + } + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Character.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Character.cs.meta new file mode 100644 index 0000000..11a7d3a --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_Character.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4ac5b6a65aaeb59478e3b78660e9f134 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_CharacterInfo.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_CharacterInfo.cs new file mode 100644 index 0000000..14e2361 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_CharacterInfo.cs @@ -0,0 +1,73 @@ +using UnityEngine; +using UnityEngine.TextCore; + +namespace TMPro +{ + public struct TMP_Vertex + { + public Vector3 position; + public Vector2 uv; + public Vector2 uv2; + public Vector2 uv4; + public Color32 color; + + //public Vector3 normal; + //public Vector4 tangent; + } + + /// + /// Structure containing information about individual text elements (character or sprites). + /// + public struct TMP_CharacterInfo + { + public char character; // Should be changed to an int to handle UTF 32 + /// + /// Index of the character in the raw string. + /// + public int index; // Index of the character in the input string. + public int stringLength; + public TMP_TextElementType elementType; + + public TMP_TextElement textElement; + public TMP_FontAsset fontAsset; + public TMP_SpriteAsset spriteAsset; + public int spriteIndex; + public Material material; + public int materialReferenceIndex; + public bool isUsingAlternateTypeface; + + public float pointSize; + + //public short wordNumber; + public int lineNumber; + //public short charNumber; + public int pageNumber; + + + public int vertexIndex; + public TMP_Vertex vertex_BL; + public TMP_Vertex vertex_TL; + public TMP_Vertex vertex_TR; + public TMP_Vertex vertex_BR; + + public Vector3 topLeft; + public Vector3 bottomLeft; + public Vector3 topRight; + public Vector3 bottomRight; + public float origin; + public float ascender; + public float baseLine; + public float descender; + + public float xAdvance; + public float aspectRatio; + public float scale; + public Color32 color; + public Color32 underlineColor; + public Color32 strikethroughColor; + public Color32 highlightColor; + public FontStyles style; + public bool isVisible; + //public bool isIgnoringAlignment; + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_CharacterInfo.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_CharacterInfo.cs.meta new file mode 100644 index 0000000..8280ad9 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_CharacterInfo.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 90fe1c65e6bb3bc4e90862df7297719e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_ColorGradient.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_ColorGradient.cs new file mode 100644 index 0000000..e1d0907 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_ColorGradient.cs @@ -0,0 +1,68 @@ +using UnityEngine; +using System.Collections; + +namespace TMPro +{ + public enum ColorMode + { + Single, + HorizontalGradient, + VerticalGradient, + FourCornersGradient + } + + [System.Serializable] + public class TMP_ColorGradient : ScriptableObject + { + public ColorMode colorMode = ColorMode.FourCornersGradient; + + public Color topLeft; + public Color topRight; + public Color bottomLeft; + public Color bottomRight; + + const ColorMode k_DefaultColorMode = ColorMode.FourCornersGradient; + static readonly Color k_DefaultColor = Color.white; + + /// + /// Default Constructor which sets each of the colors as white. + /// + public TMP_ColorGradient() + { + colorMode = k_DefaultColorMode; + topLeft = k_DefaultColor; + topRight = k_DefaultColor; + bottomLeft = k_DefaultColor; + bottomRight = k_DefaultColor; + } + + /// + /// Constructor allowing to set the default color of the Color Gradient. + /// + /// + public TMP_ColorGradient(Color color) + { + colorMode = k_DefaultColorMode; + topLeft = color; + topRight = color; + bottomLeft = color; + bottomRight = color; + } + + /// + /// The vertex colors at the corners of the characters. + /// + /// Top left color. + /// Top right color. + /// Bottom left color. + /// Bottom right color. + public TMP_ColorGradient(Color color0, Color color1, Color color2, Color color3) + { + colorMode = k_DefaultColorMode; + this.topLeft = color0; + this.topRight = color1; + this.bottomLeft = color2; + this.bottomRight = color3; + } + } +} diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_ColorGradient.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_ColorGradient.cs.meta new file mode 100644 index 0000000..28414b6 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_ColorGradient.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 54d21f6ece3b46479f0c328f8c6007e0 +timeCreated: 1468187202 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_CoroutineTween.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_CoroutineTween.cs new file mode 100644 index 0000000..6d72340 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_CoroutineTween.cs @@ -0,0 +1,246 @@ +using UnityEngine; +using UnityEngine.Events; +using System.Collections; + + +namespace TMPro +{ + // Base interface for tweeners, + // using an interface instead of + // an abstract class as we want the + // tweens to be structs. + internal interface ITweenValue + { + void TweenValue(float floatPercentage); + bool ignoreTimeScale { get; } + float duration { get; } + bool ValidTarget(); + } + + // Color tween class, receives the + // TweenValue callback and then sets + // the value on the target. + internal struct ColorTween : ITweenValue + { + public enum ColorTweenMode + { + All, + RGB, + Alpha + } + + public class ColorTweenCallback : UnityEvent { } + + private ColorTweenCallback m_Target; + private Color m_StartColor; + private Color m_TargetColor; + private ColorTweenMode m_TweenMode; + + private float m_Duration; + private bool m_IgnoreTimeScale; + + public Color startColor + { + get { return m_StartColor; } + set { m_StartColor = value; } + } + + public Color targetColor + { + get { return m_TargetColor; } + set { m_TargetColor = value; } + } + + public ColorTweenMode tweenMode + { + get { return m_TweenMode; } + set { m_TweenMode = value; } + } + + public float duration + { + get { return m_Duration; } + set { m_Duration = value; } + } + + public bool ignoreTimeScale + { + get { return m_IgnoreTimeScale; } + set { m_IgnoreTimeScale = value; } + } + + public void TweenValue(float floatPercentage) + { + if (!ValidTarget()) + return; + + var newColor = Color.Lerp(m_StartColor, m_TargetColor, floatPercentage); + + if (m_TweenMode == ColorTweenMode.Alpha) + { + newColor.r = m_StartColor.r; + newColor.g = m_StartColor.g; + newColor.b = m_StartColor.b; + } + else if (m_TweenMode == ColorTweenMode.RGB) + { + newColor.a = m_StartColor.a; + } + m_Target.Invoke(newColor); + } + + public void AddOnChangedCallback(UnityAction callback) + { + if (m_Target == null) + m_Target = new ColorTweenCallback(); + + m_Target.AddListener(callback); + } + + public bool GetIgnoreTimescale() + { + return m_IgnoreTimeScale; + } + + public float GetDuration() + { + return m_Duration; + } + + public bool ValidTarget() + { + return m_Target != null; + } + } + + // Float tween class, receives the + // TweenValue callback and then sets + // the value on the target. + internal struct FloatTween : ITweenValue + { + public class FloatTweenCallback : UnityEvent { } + + private FloatTweenCallback m_Target; + private float m_StartValue; + private float m_TargetValue; + + private float m_Duration; + private bool m_IgnoreTimeScale; + + public float startValue + { + get { return m_StartValue; } + set { m_StartValue = value; } + } + + public float targetValue + { + get { return m_TargetValue; } + set { m_TargetValue = value; } + } + + public float duration + { + get { return m_Duration; } + set { m_Duration = value; } + } + + public bool ignoreTimeScale + { + get { return m_IgnoreTimeScale; } + set { m_IgnoreTimeScale = value; } + } + + public void TweenValue(float floatPercentage) + { + if (!ValidTarget()) + return; + + var newValue = Mathf.Lerp(m_StartValue, m_TargetValue, floatPercentage); + m_Target.Invoke(newValue); + } + + public void AddOnChangedCallback(UnityAction callback) + { + if (m_Target == null) + m_Target = new FloatTweenCallback(); + + m_Target.AddListener(callback); + } + + public bool GetIgnoreTimescale() + { + return m_IgnoreTimeScale; + } + + public float GetDuration() + { + return m_Duration; + } + + public bool ValidTarget() + { + return m_Target != null; + } + } + + // Tween runner, executes the given tween. + // The coroutine will live within the given + // behaviour container. + internal class TweenRunner where T : struct, ITweenValue + { + protected MonoBehaviour m_CoroutineContainer; + protected IEnumerator m_Tween; + + // utility function for starting the tween + private static IEnumerator Start(T tweenInfo) + { + if (!tweenInfo.ValidTarget()) + yield break; + + var elapsedTime = 0.0f; + while (elapsedTime < tweenInfo.duration) + { + elapsedTime += tweenInfo.ignoreTimeScale ? Time.unscaledDeltaTime : Time.deltaTime; + var percentage = Mathf.Clamp01(elapsedTime / tweenInfo.duration); + tweenInfo.TweenValue(percentage); + yield return null; + } + tweenInfo.TweenValue(1.0f); + } + + public void Init(MonoBehaviour coroutineContainer) + { + m_CoroutineContainer = coroutineContainer; + } + + public void StartTween(T info) + { + if (m_CoroutineContainer == null) + { + Debug.LogWarning("Coroutine container not configured... did you forget to call Init?"); + return; + } + + StopTween(); + + if (!m_CoroutineContainer.gameObject.activeInHierarchy) + { + info.TweenValue(1.0f); + return; + } + + m_Tween = Start(info); + m_CoroutineContainer.StartCoroutine(m_Tween); + } + + public void StopTween() + { + if (m_Tween != null) + { + m_CoroutineContainer.StopCoroutine(m_Tween); + m_Tween = null; + } + } + } +} \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_CoroutineTween.cs.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_CoroutineTween.cs.meta new file mode 100644 index 0000000..6c35b49 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_CoroutineTween.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 658c1fb149e7498aa072b0c0f3bf13f0 +timeCreated: 1464850953 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_DefaultControls.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_DefaultControls.cs new file mode 100644 index 0000000..abf3d9a --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Runtime/TMP_DefaultControls.cs @@ -0,0 +1,385 @@ +using UnityEngine; +using System.Collections; +using UnityEngine.UI; + + +namespace TMPro +{ + + public static class TMP_DefaultControls + { + public struct Resources + { + public Sprite standard; + public Sprite background; + public Sprite inputField; + public Sprite knob; + public Sprite checkmark; + public Sprite dropdown; + public Sprite mask; + } + + private const float kWidth = 160f; + private const float kThickHeight = 30f; + private const float kThinHeight = 20f; + private static Vector2 s_ThickElementSize = new Vector2(kWidth, kThickHeight); + private static Vector2 s_ThinElementSize = new Vector2(kWidth, kThinHeight); + //private static Vector2 s_ImageElementSize = new Vector2(100f, 100f); + private static Color s_DefaultSelectableColor = new Color(1f, 1f, 1f, 1f); + //private static Color s_PanelColor = new Color(1f, 1f, 1f, 0.392f); + private static Color s_TextColor = new Color(50f / 255f, 50f / 255f, 50f / 255f, 1f); + + + private static GameObject CreateUIElementRoot(string name, Vector2 size) + { + GameObject child = new GameObject(name); + RectTransform rectTransform = child.AddComponent(); + rectTransform.sizeDelta = size; + return child; + } + + static GameObject CreateUIObject(string name, GameObject parent) + { + GameObject go = new GameObject(name); + go.AddComponent(); + SetParentAndAlign(go, parent); + return go; + } + + private static void SetDefaultTextValues(TMP_Text lbl) + { + // Set text values we want across UI elements in default controls. + // Don't set values which are the same as the default values for the Text component, + // since there's no point in that, and it's good to keep them as consistent as possible. + lbl.color = s_TextColor; + lbl.fontSize = 14; + } + + private static void SetDefaultColorTransitionValues(Selectable slider) + { + ColorBlock colors = slider.colors; + colors.highlightedColor = new Color(0.882f, 0.882f, 0.882f); + colors.pressedColor = new Color(0.698f, 0.698f, 0.698f); + colors.disabledColor = new Color(0.521f, 0.521f, 0.521f); + } + + private static void SetParentAndAlign(GameObject child, GameObject parent) + { + if (parent == null) + return; + + child.transform.SetParent(parent.transform, false); + SetLayerRecursively(child, parent.layer); + } + + private static void SetLayerRecursively(GameObject go, int layer) + { + go.layer = layer; + Transform t = go.transform; + for (int i = 0; i < t.childCount; i++) + SetLayerRecursively(t.GetChild(i).gameObject, layer); + } + + // Actual controls + + public static GameObject CreateScrollbar(Resources resources) + { + // Create GOs Hierarchy + GameObject scrollbarRoot = CreateUIElementRoot("Scrollbar", s_ThinElementSize); + + GameObject sliderArea = CreateUIObject("Sliding Area", scrollbarRoot); + GameObject handle = CreateUIObject("Handle", sliderArea); + + Image bgImage = scrollbarRoot.AddComponent(); + bgImage.sprite = resources.background; + bgImage.type = Image.Type.Sliced; + bgImage.color = s_DefaultSelectableColor; + + Image handleImage = handle.AddComponent(); + handleImage.sprite = resources.standard; + handleImage.type = Image.Type.Sliced; + handleImage.color = s_DefaultSelectableColor; + + RectTransform sliderAreaRect = sliderArea.GetComponent(); + sliderAreaRect.sizeDelta = new Vector2(-20, -20); + sliderAreaRect.anchorMin = Vector2.zero; + sliderAreaRect.anchorMax = Vector2.one; + + RectTransform handleRect = handle.GetComponent(); + handleRect.sizeDelta = new Vector2(20, 20); + + Scrollbar scrollbar = scrollbarRoot.AddComponent(); + scrollbar.handleRect = handleRect; + scrollbar.targetGraphic = handleImage; + SetDefaultColorTransitionValues(scrollbar); + + return scrollbarRoot; + } + + public static GameObject CreateButton(Resources resources) + { + GameObject buttonRoot = CreateUIElementRoot("Button", s_ThickElementSize); + + GameObject childText = new GameObject("Text (TMP)"); + childText.AddComponent(); + SetParentAndAlign(childText, buttonRoot); + + Image image = buttonRoot.AddComponent(); + image.sprite = resources.standard; + image.type = Image.Type.Sliced; + image.color = s_DefaultSelectableColor; + + Button bt = buttonRoot.AddComponent

    ST)wGsLC|oD%na+^z7c9WwnABWfDS# zo+TlbSbR}4tyFWZHriW_I{rInx|;Avzoa0CiL_g1bWttL-m35dca3Q4z#0(~CRlY5N0T7zi)I33+-Tgah)<6|G z5m_TEMF6!;MK|hCT%PEf29c=f8vd!MUQKUtq1{0Rqg%*?`Vzx-^GxX6gDtDXjtcP% z9g?K7@s4OZbaHAl%dObSd8gXjJB4J8OoX2_|S#u)shiVi=mJ+EeBeGM~-@K>Ta3ZD=ryB)~*t0A}Yjm$8|dnM1KVS8C@oLnnh1m{k2tYDrM z2CSqGTxj1G!CEM+bt%_Si50yxg67P|!g&A+EcMeCVBDo%Vj)mAuO+Qi_audy_SzsM z(=K%b08dTUc3C3$ej~(1#04$LDXAoHP{a%m9gOQ**T`Q_(_M-0J#sOd*I{U&_w} z*2C6{JxtmnJ$6VPk0%;M@aM0Mt{VAdr+RBd?}I8Uhb0@S!qtC_(SNM@_0a zV5s7GL~6r`1ULo5iU3pu9}ufodTrkinNu#}0WtAlOIY=GLbmPE{mYePm%K$Bv<=w%x7V=!ouEa+SPb8#M_l?AS zL?}{s>C~S1Fln+)e-@u;R%ty}NFkK)RdtZ@59$A9|o))ySjzoeBn{@pn zb;nNi-_uJX5Jec7IESct0A&Mip@ZN{+n=oK^J;fcS$$ekW;XDUwz7OQ;s|a>ohv|j zax?)=G4!;OCU|Y+NlJ2zM1Tnum<~+EoQ^zL9hZ7qLgIjr_gd6c9l0N$Lyo)CZYK_;*xOBI7`eHRpB_n6 z4L}wCDlpo=7m01Kv-E6??;P~ASPPjYmFQ!NCjIyBnlN0JrpQZn9I3Hd(qF zfGCD1CHN_&Srn2!DprH8=77@`hFRkgNj0a|5oA|s7AX}OoR(x@z}2WX;s7VP*pc@0 zM{#!xJ*(QrP#2qmun4WhFh>CWt&MB)!Eg0K@WhvKM{uMSiQ{FCLq(#-s-Tis6cimr zNuj70ZXx~pUD{l^h>7DNX%c{=XIT76E3$P^AatE0OheLoP zmRO`;O<_}PqG)B3isU=55S)r5H!)rzTcIYjViMGK3)|6QJ>$nR+uI9UD54-LM;T`U z)eQj-?0zbp`kjC%Seoi+(O^iUyKs;M9;q_`Km(UEQ&HG%YeCq>bhoj(`mdU;Zmg}z ziaU#h6yqF$kHqaC+A29H1o0?C#?&edyuIc5FZC$Ri)$A*v1$?Vy|#{TufimDSlk!% zf*POzdcf~dS`vm6`DzPYE6g5X)2E4a{UNQ^4L4AgM1kXwCDaDpGnE&(rNI)%IJE*8b~8vazz|S?gKmW_!p7jk@VTeK5LO*JoyH>^+J&Hb4WfwFW|x}RkMBqXIc9cY@a$_)cO;yaXu7l(X@6-xkTnfT zLaT3J!I(tBK zm7r9LYLz4-Y^RU!+lh8Lyp5%oOSRB-aD2I`NRjBiUtLmb=`E4llyLB}M!`WZ z%_p?GowXLSiGHti@xeSov0H&Wp_M>W!4aM{1D_Qe8Ug?Y-bm3KSiFUwOS#o$j^tVD z7M6zLudJ7xDwBF?9GryBDUA_1NbIFJrp)sVC&`f6`J-5}(d;j8bVX^GQJ!h-Y-0Tr zcO0hl~qcu6N1>i%pS?A48#%n!p{mf5k70{7|!B44+h+Up13mIpsmPS@3pOqL? z?r;*@BkJ01mCUVaZ*?WKFLOLAdPeF&KWa?|rs-ck;7>|f4Vms7z0Pj`WZ%W=Nruw{T$|i_> zAqjGLCn3ZZEPDf9wW&VQwR_zw*MfaVRnX>3NzBoQZWj$D1Y_#_;$>C<@?lDf?0zby zE_55i3^%&dK|FFGn^AcZ=1Pzm)YXMN$Ael1Vr(Pt`QhC#R@FXVaM}>0C3k zEabD0Vi3xDJd_Hm!JIuotx7dJtrA$;-on!E-rC&+Z!OA1vQ&W4vNTF7T5drCn}B)( ztv=EnM*7~(wFR-XnnJ=?1CJ(8gq91yeUVVx0bbzb!&LJIl?RtCv<*HBOTBIz$!{B4 z5PC0V8*`1LNo|2y3oud`><09y1VU!BxP(jffU*PdB*D3{V838Uq13Vm1;;N9``|+Z z1c*d#BQ^E8LaoWcJY;1YxA;NbO+NB*jb|hbBAAhL9XQ7&6gV7-Y8p2aKo?_O_viuc zm8UNlu1xTWZ7!|e3wDkjgki;SsqhTAlv@l&b1(?^bD~Pgd!gX^jFRnFwMO zzXbxd*lpr^j8gF;mQGSJYpB(hYsPmb=7x(YEx4}L@f4uya0?{PWK^pN;u1=%20jg709W*3D<>v)9|%EG zM;(tG0e2*q4H23tCS;B{)=3YD=aM_Lbn8SR|Q2#G$5U+u_Y+Jxv1S*!eLvR z>D42Lf>bhyM4XraK|DoIBi5`=4JkFm)0-PWC5?F89z~DC$C*$m@R}O@Bo5yV4h7Zh zZS20MEO%bJh&kO`5=n`{Dat6zsVoW>ZopQ%3?l-084^uGK`O))Jo0ozV#=hJB!Ij? zRjCAhp5;L`+$xsR2~rsZa*8b$V9Uq%jTu17c^%D2I}ibE#tWaT+DeRoT;2K+>G4M| z);W~pMsSRTa$txHGn4x}oRI3a+HRj~XQtaByShjsyVSL3asYxreZLw*Isza?cS5BJ zDnlS*L6hv^bXO4iFK;qCnBxzp$fwgWwMwt88>E1eq=2J(9ouc!w7Yv{nGAEz@^O;V z={PX~sDLRuk?{pJ0C;X_fB)C=v=4hawEqBBo=75vf=J29m?(1W{J;`$1d4&M8xgU= z7IurMUJG;e!FF9BwT&WOoq|vhNM;0{gK^+RP9X+|<_$*T$u#{pRlYav@d#s)qA?_5 zX(TSI#3HLJu{2dv$k22PZ*z4Rj?zbp6|jP5CD;pN!5LkGpl)u=LIM<$KWH!64$#Fs zUZ9$DAaNALM&>qY5y>2x161%kvWg1+%`iQ}$tuA!Gd+t*=(KS<8DyFupn|1=LUt@# zfNl=NRJhs6b9Wq5&boGxUML$=y@l2&c^VdBZjwBK5SBa?v0Z|(;xn?zs@i^E&E;KR z%3gD{^PCzL)H;khLfhOey{*jACBr&Q(L%nZV`!g}qw!Q?q`SozDP2p6ycTj?XmyGx zAt8v0I7kGw%cOpz(5ntUogA?|sJvZEeM?W&B2>PKq_DS@ZsoSMbh3M^lOLt=NL{(C zbv~F;@GCbM=*|dPG^uT*wy|kk8;ggMBFjmHQWI=Y1>{Lahm8l^rm6%Jd2J4*VFbbm zb@)D~G_xd9BS93k05C@Mc@`%LNZpxHhv;bDC=wk~SXS!MB)N((sheghCH+8X1?*Ee7FQ`F^O_D#EYYwLl3|iy-@L1X zBB)L?b91O_GES1;#_p{p+uKVc{a>8Uva&NGk4w~UDhT6J!mYO;wY7$)ex}0S2DciF z&{}$OJW)mKaCV3Wq7CX=qi{YDK|9I3mnqYA+nX!hZ%y*HpXOLawxi}KEuqv}0~$$j z9ML3;HNx^{RU#!vKV)%qIG^~>TJrw@o~73`y;9!eQ2NB{CH9t*S-{c@&PHo^Q4qoz zBULLTHQ~q=J5aY!^A4k_YFg~yqHXVQJj6xjsWaN8%<S*^)O4LD$4gtSAI#c?-m_&pNV;Kx?ai>YMw01nW02KYQCKu>PlSU~M-nUBHYR44 z{#)BUCM2=)+bX<%t(lrxB7PDf;wnoNEUn4=kwW{M3%husl3C-vj^-qTi7L+;$1|QF zZqe~jC_WZYMOT9%a~(Xby3He6+uxyEh#J;YC#4@XWfH3-ig`uIG9G7jTJl<}8(L4K zM;-ON_ZpRfO(t)sOJ_7lUihhuEX*Pd@sYDFdTq-JZEeKv5=mr^&U>gNytuYcP)4#* z49*V{c!oSf9^?WIK^ZIhKE1aqTZ?`-R+32?LgG~7&^rkTEjNkQG)%hCX}f$ zywvp1Gx<(NxVfD?>!ZrTJznl}8M?Db){v=E%_NA+Mdo<{`&>Xo=TKkWDUBzX-0*sd zCThG+q*bWxzaFX!Q1v6F1vU1ebIg~A(Ro#PMyL#@l}6jtHxPS@?!&$dHwz`Y+sxdW zGg+mQV&SE$4g`q#4}@<=Aoe?oK22uDG}eYo1bgJTPpEovfMfKPJ~u4ehFzFYhBQA7 z6yYts#lu`r>aW*sE)#)bYEe)Is;~x}Ks(g!{!KwOhEl@jH@Ge6I5EZnVB3`qvE0@A zl@;!40KtIC5cvY)KMTU`#%p>BvbGquWe1d_jdC} zkX=J0wzsiR(y)}PBk!{^k>Ce?>xIx zxu>~~^_pIGmnWJuPJ|SFfefVX0oaOe1qj0_^vR%!?sXf_O6aMso><3ntjZ*gUM{Q7 zH;#o*AV?#Aiq2b2F71?ZoLl`-B8uwiql<*9c||WLN+2=(Ap>sP@)RcwFCR?P?3&yg znRQi~1(I0Yr@=+_Jy_+7l~q9u1My(=*aKQp+FaI}g|&oDcQ{*{NT-QzV51&z#zeBt zYRC`5QAz1iL2L;op{r{;&#MiS-|Cvg>W5ETcbnCcNfA*J084CW01QhWtZGR@ST1aJ z8Q_w@2^Qt!NT;{w3vqD0D$4%=5|Pz`>$xC@T$_oYN0NAnR-(WZq{|5cM3IA4j|mDzx52!H`Y0?evDBe=E8mbSHcG@H15xneD?b+~j!n$=`W zSe;T%amOTSB+&_jOT*$7X85@?#B~T`wTeit?r$TK;?^Z-u5H9}G*Qqxw37i|20kH@ ztO^iRR)v2j>6%^ksJ0sJr6rw}#l7F8Z5BCA#OVZ$Z3+_G2aqIuodTgh9}pRoKCh!T znPxRPHG6AmF8w2<>5$&r-d-Cy5s$8oY`kI$V_@L$b*N8^jFe8xUTX(S>xgaaH7HHH z`Fd#~b#=M=>PRjmHxq6nSeZj8JdVvnz6;ZQu?DXXm~|a%SDQuEZ8W)c)wF9l9sp`2 zgxtR*SVhM;(k1|k%^2gsy+w=ujn!qfnV!a1jw$0?%eL6d9MQU=kW|qZ(kGb&FDmjR zj0tYCGRdUIs;M-RM|U_Lq)|sBtO4aI_5!&aN~k{ zL{dRlAUSjDQbj-1Z>>e9p$v}=+Rbd7+Ttcvc4Flia%E=U?6K|emj zJv&WP8{E8iO6<}=A{C91#VswxOR`!3OJ_YeoO@fmrwIPrKkONOW5ua zyvJ!IvfRluQ6=nXU(mRoCsN_PMI^LtzNY+xRf|TEWcsDI)=J((Xi^Jkq%XjQPfQvn z-wJ{88dZSmDx@{7y{*mS$!%uW9N}~5dSLt!QP>qx)s)bVoR4GF()s1I(&38k%J$k> zFNlWXA4usxR(NSDMq^q$yGD5{aZsD`W~z}*Wnm_!k->8nwwFlE*K!~Q1xKjq3~teu zs+9^D7Bs2dfGyO;#j!{wxVD{bt)sgQYVF6Ah_W7Rs-;{jd_Z(@NBD&dg4T`(Ah-QK- zn~4|qd_E%^I@5@H7GJV9AW9FK;??w-v|U3=wwY5*iYr;I?cubV((2ma0V=SstgmiW zUW$a!)Kq$mZK`Qn<9S0vmfA~QM?&@D({6QmVUju8`Z!uuisE@9NhVmMKqAZS|rEv=pnH4?GQ42-eMD-eW%5{j`ULpKy%*=kj#SY6Mn z8))GVsKs^-h1)VkAJ%Q<9|F%S#}dZG*O95HN-zZSk?J}QxvA1C+jyH+(bm@f?%L5U zo))ya^omC;w!a^#SynKQ(P{f2vcR?d7gEz8(=Li#TScfw?QWL>c=lgTK_oIdBvT}! zK;XvBL?}xsdIDV?ku{w=^rSFcY4;MM+(l4|BbP-keN>f92W!7zrBzIawGf6e0OB+gKwPX_%9H}W#OHoTzLofsbNV2*0WooND zZpaESP`q~>RIODgY6%1I!>c`--pwE}B+gB_2+Jch{8aI3cM2|di)#IS;oTwC}wuxI30sxrL`>WfkGhg-e+^P%{qA#f5wB zDNcwVSwcs}qYxqnQoLy%)dY7eO=`fC+!~RLo*;%H81&e!SkBx%GP^4smyJaV?m^mw zoq=?LOkg$9Zb;?1$`}%Xh+V5tX+T8*I||`^GF;mRo*0{p$WW*)#KfSpN3q|Kru3}_ z-SFxPFp-?3s}rj=xRFtvLN!T^s#ttfDh9)?0K*6_WnL*Hk2Sj@rP7uy9}Yuc6vl)O zTL60Z=x{_w>hZPsB3qkFt~Rkss97C3N*nERQmnfwkBDx1P$_k6^G_YX^%_=zW@MPv z#HwnmC{WC3h(R<{%XXz|No0gcLg83L33Dl7vEf2my}lAaq44NyfFoIBcbR$t@;#iAMQy<)B4W2DCz%fJDr;J!gG?iXSiZGOXy6gtMQXtr zT_tp0Kyp=JQbi?!V%1Y!fZ{lnU16Oh)MlFPps4g_;FmKVV90;K&9`;^cj{5srit*ONOuPEVjT{nj)UIQV*g-WBE#VGQ zE#>2}ZKIKj)$MQQdGrV@EpIJ6!R7w|FlyFutRnVQBJ#@9f?C37SduOl)4;67Xiuhq z)G$!mZmkxBa4mIBE=^X}(&9L!(-P#`qKN+hc*YB>cK9V&*~LG*Spu3{`_$tRL zGBjLC4pEn&V z31T65I8_m;-2TN#-9TEX0aRe1hFHWJfnyH`ge-ijwd3ikw;DLFAOSr=+N3xL%M}_m zq-h$0AyR^83&)hK&PtF7p$aQT+yFTdG3#3FT7T8zyS&rv(V#Kg^OYiQ4{LmruJa}&dHs#v7fmolV`ti|N4 zQopA{Le_-PF?AeFN!#kJ1IUj(3Mcs_*ISzyVs_(I$o7Fn{RiaK*=+Yt4D2h zb*IfN7Yzl&a&VyfBZx!r@?so=opZ?6UQqLPh2~2wTTP1E%R-0NkIXWcCf?5B#kZp@ zNiuq}2Y8wq+O;!X(AVJ#daU}F|Z)U zLdYp683k5~V)yzj?w@fq^4ra1Cz|yZ8@G?wjqRBXi7Emck_iB%0WDPkl{mhgs?Tc- z`gBvg+EmP!4W!((uWd8@L)DTrbyC|92;6o%R3UkJ4c*Gzv`()_DJUhqKT_bz@bY(d z;I%vtTJo)HTwK~i0JXZezV)7TS+y7#{{A;vy*5@u#7WAi%2b+yY80u#dS%7FpFNEF zm66o+^_&ZvM`9L8!VYn>qg5CL1D3=AUu@cK<<^|lwz#)2sg>h~S2ZheB37@a@i9DO zP~3VCYU2L@rsoUk#}L!xkj*0A>1cRWjxMdK0$ zVpT{XS%q4sYVSZ`*IJjD630i5-R5gqQLSRJjyS6dy~OgXapO`R=2lPz6uAS4r6ab| z>6X_wL2cT5ORG~2wD(A=@H~pOkgBwwW0Zi?kR##>94`}}F~eb~PkpJ|+RbI6Os^M} z4a+RIFAc4{kw*ur?aiVg3bO)eR0N|TQx5u-y_^tnXL9mGCDqEpuCNIsB`Wp!nYa=L z#(>lVuma})0PALYT`VLB;<}ki$QDFZjMeHRJa~{fQkw?uMcH59TTdff>OURnFls)l zgX^QeCr6WV%2)zP+o2@TVXdJTZn2|BNXRA`M-*KqdcZQ68^VTv$_ zuE)~`f{e(6?T~0#?@w*8I?N{)?(rm|-PepV(3eD|IhuSzgQEff_P{q>3$nue;8Hja ztfjhq1a1gB5n9*pQr6Espbx3L0e*iG-r$ z&Rn#Sl`4^q%^Y@O)dOzCbiwHAhA{I)Aw^jhbyk&scs6i&sjqOS=<&gj+{Y3X1tpe5 z4oLLDG@~eByNdOxAk%uD<^hr=xqE2b%`9Rv^Pt^SD+&;5rCDiSRU(C{T4OI1n{}Sv zDWdd1g5`)+W^-0UMF5I`KpX5Tv=ss_^pbm612vjXDlR)#>}lHs>2Jq2U69MnIu=_1bp)Sgq~rYbf%72+V)#rD)mue6Mp&r ztnQ#9hLSz#LejJ$Xhsg!ZFL)~9UAKD)amiPz_gO$@W`&p0?N!)xT3`~%g8+lsrZ_p zmXhkL_I4BVEcwf>c0cP|S=gBNSqKd?N@fHLY$5=hTx~^d=(j z*R$fE=Ti)BpZ8Aj)q+C=h zw?A8w##oRC#KZtpiVB*>Hq&BVI_}Ei+gpmO0;G=iw@bhXpVNzyJGZFNlq~WD6b7VZ zTGC{+)HP`@^rh}z3ffFY2^L784c zUDx5_3F05(-GZ8O8zugeX$^zwo>^!^1-PkaxN+_Y& zisJHnyT7U%b7^lN6U79aRl<}EqDc`UVH(gBRun}e#fcGRb8>EFv-IJ-mrdh5GDH<# zNmGji<;po5<7xuE_nuv2`~V2 z<3l2qHitphZar;AK(@A8WGXIiu4j$_%SYuLVnPhATE7Yc$KoYO29J+Z)K&sf<(4U` z7B;M&oP5C~lR!rzR1$vBCY92+cfA}XuI5IJ!y zxPxB2kopgDeOqW>(~37vXrPu=AZ~y+#0O4aEPPVm#*xi)C+;V9`q!xnNH?l5G$;Th zC=3`92(I)PX=!19sLM1q+>8x0c5+QCDl2;ar=>{Cd>q;{Mkk1B26PlSE%ZHAw99*o zxnQ=nsB1=->jmbwjI4&?51{M85>my3CCk zlZ|M@VmG1tSS{dyrM%Y$<||1rE#vyasg_8Di~Gf7P#1_QSPH8UC>o-q!uG^E#2ZVx zxr!bIE*OS;rFja)DU6t8qpK*c=aHad3aCd$hRPQD*oJ1)Qs3(L_mEQNMYt32j^+qi zqy6k+WKe(KW!Y%pV!HN`tJ|qrZmzDh)q*9S?%H^!NgC`Mi)azUq*6LbD;6INiXD#+ zg|MGRlK%k9_isI&`lPp3lH1K1##m0XkPLIjGAfjAHQX=;l>w-7L8r+sw`HhlGT+!+ zT|0e#(mU}SGEaRZ@ucDl$Dn|+f=?$3+)A&+!Ae}U=h;IBJLUPZ0=%$kjWj@wbd1kySm58XpAHa%{LTa+p6qaE=?a* zoLg!(nr+MJe^%r!?ckHq;cXwOGel8OFG&Su+K5AJDU__1;r$sFcl5&*Ql%J|0c*ro zlqIM)AE;zD>>kao7IM%T*u?z{R zuTA=#b?v9<>xfzlqb;1`LvL`r%7~o4#mYnR@ElDSb5Yb`Vk=K0ySSut8_A@&23O+r zV)D2S&HFW}sV&o~5*;x#?Mn9FOVs9T3p<_*6~K)n^yg_k6;vghs<)_KKnn7p6;K5T z_1!x0E_H(fNS4N5(o#D~#hM12(&g#I5*8k;!;h!iek024>oBSCg*ho)kx$pT}5?xE~MjbZY60PS|C`Xc0U&dsrW~S zEyqKLf(t0@#ILEt6ss4gVWTwi%FQWL#Gp{16;=i6yn&-s@h7;scdGqpsp7SXfu{gT z3I^#)fwxNgZ-MRzP|~Xqc0UzBVk@u$loS9DEb!AC?YY}3H-rM*RT4XYQebulPJ4A$ zro})fYVXwGJIkiHk#3ehsY2{NuWYVbA;j)DttxsGPN#jVL4<*BzOyf-BD%@ws+445 zN`@hiYJ;!@^{6<#yrSu1KU^z#3PT;6M$#)JbN~Va6$-T!>p*%MRLTjBqfAobIlVYR zci~gQRTN-oRPq9V78N_t(42VGo>-fWppoa9VI^W5I1qS%qCd9I19Bp!oe4NH(^#4W zGD5r>G$whXmFVi+0>{Z2If81eyqM6j1L3GFi9GQ_cPA_${U3vLkp&?bN^^XVcO zjJH-XMC}Fjho&;!pMb#0_rTFG;3<`Q)W^%ff#Vt1Z2idPhpa~x<4(e4@+U{;}q z{{RqeCeKg3hUVsJ*-_z;X|h1FOTu{GKlFLoz~Wjjj1(MOUjKP^hZ9*OxCNv71%CiswuE#p_#W*QIVQ zMANCaYo)l7X+E}-bh~Kn^xbw%Za6Njt|5Zuq=rj~FFhZvdNa#y z>p=0p)(;?Dk^_7tL$av1UF(EqR%uxxo#}T-)Xp( zeng~ku`3oj_exy@NVt);TPXDQy@nfmD<)RC)S#F%O?>92Ng^`Z#)T@eB&)%K%#2Au z^CgmL6I$NsEiKp9AzLXeH4|rMjc+7k8D_R#Nb;mblt{;kAsp2D#&~X{JYitE)4;Q9 z+ezcLc@jCK7Sl~T5$f$;q!(DwgH__FD$D5FOjAbJ*H`f(TbD7pW-Miiey~-C1~lXq zc@P(oKM+vN4zz6!+Rs;>EonbT2rXr}y|!4rR9l8&^=nf)UBMzGfRQQW<}|5gkfQ}6 zhs;*mUDd?eZil9QXe8GDwe7lI#$r4fS~a;2vCR`G{pyu02LAwQxsY4x_m6bfH@9(> zLJ~H)R&&Vm00b@tD^@&>E6{WqHM-R-ucWt~Z3(jr!M>)+9Hup?0R+6cx_~*3Ba?2b z8H*4Q-PjrK%1CN9t9g4^vHF$fg?FXLc62F3 zw)UYUf^9a|)Zg7|*D|*hKW~R45e)GOBRrKzky~oorQeeD&o1j4eXZ}8?sThoG>uu7 z+-mw|uBAJxCA2XoKS`Ey+)~|wJyc3SEIGEJX7G(ROX#GF%h9~LZJNT|WNUj?B4=Ad z@_k*Ta#{JW+IDfsY_GiY3{VSeKPDG20rl)Ny#J;Yqw(i!^!l7Ch<#H8PH!N96sokm5eCwu6&x2 zDE2x#8+am76jKBN<%5y+9aUpRVd=X)Io_k?T@GliExfP#ZtqZ<;KH`oQpROsh};pN zOGpmqkuDsv#tCRqYsZ?Ht_U}?`T-ht^zI=3?n7>gQ5jMZjU_^OoMX~cd zdT?o^fffNJ#q54wk=@?lxt11?M{#e-eIkNK;;1-~-`;0B*ZjMvd23p}(6tF-i&E3> zVDci3@Q@#vMMp6+axt4AX#@$)#=_;0Lrzat3 z#i$DbURCRjisrGi)>uj4Vg;iGLa-r=@aal`Jbof-Hy`E&yM#1$`klq~gI(J&R}2-I zt=>eKpga~tRVm0YC#WSFq>&(Es@|!17lZ~&hTe`#u~n-tABdiy8tq=WCDt@c3w;;M z6I)!#Cbz9w8RW1F#wa0^j213rkho&&3)ED8$z!n@4tWew`VAAy32rxW2ic~9+MG=& zIIDal)|{G~5;59h-N__rW5O1WA}1jwX=LN^uwsCoASi9k7J!OXsw#Umf(X(}Xzi~r z3P~!o2DBl4FGSPSQsIepCvu>HU9#qi<~=sX{ca+iwIY7J^8%B9qsi&4BH~9<=+Uy4 z;(Ab;ai}2G52-4vK=38(=KghK$}d()C1zM2tQs(mwW#G?t3kVLbo37$%nl^Ei37(J zfqgyXWk|r{-k~ZKF)9UE@*5M2Nu~&-iW_wg9MMH2OzabZl+chIYz;vSK&MbjfW&Mt zG*ih4c-T!D^(1AJfDS__mw^C~6Muw{8jvZZvh-q!xwAsVa*P!;VyVtvA!wkMJbVbH zY6Vhjd6i>v9EBNUGD^uJs-CoNKn}G|L=o4GaS0}kk{BnvFC0!}LMIIho+7j$(xfL) zdw@Dq3FMJpZ$w;9wkXHy^&!t1j*0M%&ikLnxDJ0oAq@=Dyv;_QGZGM_GYSU|%s>Dg z!j9C~5^<WmN?_LVIn+I z$PjTRhmj|$(|T?`oRU4f%&~gjyn1cK5J_dJd{1m4RA|_{GEjU)R+|N5LUyh*OPcQT z;_BAU@;g}V?c9l+D@GC*O3GCuJhmj(n+n%qyCZv-kw_I)a`J@q`Lh#VOc-pn00nw) z&~9+m{N?rduW!waP?=+r{=tjIJdqU)>jSqRu@F$IK=?;>6$4>!e`S9iwwbI!52Ewf zeRlC#Y$2rFWD+|eMTS7k%2-sAK~*@MI;;6^T}m6fNHv)COId}Kmyxx~!e#+hc&fk& z5kU+EDB`B2MIpYY=-cbdY2p$(`p~?QN(Zc*3@ov_hE@;okZ3^yqLr>obpHS^-s%?` z0c6u-y3}E_c`mOJnQf$DB+nxTEyZB;U(~8_P(UW9mK-xd4c-3$)~CI?8YF&|t=uzN z$#WUDkOZvKTN1InFTh6CaN$+i6-Xcd)bp*qrK~rHRF6T^uIw$YnhVQYu_GZ;vZU|o zL>G*Fk^L~J#1H`tXt;ByBApvX)lBhg3}=ws=(0l+{aNBmi6f0|*4FBGhH?@~S>#bN zw+0kOnlvu;dHsDqM7WN|%TCkm9^wA9l3ZBdY9CdUCCq{dOBq<7g%~(lN5?|axCXcP zGFsl*UQQr`P(blIg@qDDj7t;ls6gb^04Ec-8tsVLT1`vMI#sn;p;PNzPbxxLki3f; zlOQvbMQ#Oa$Z`8hrv+X?DTOApYo$kYGS70$D3V|Tvu;v1Xu~$-><-0wG03R`@J}?l zbH;7pSz0Su3~;$<&jS9ak%KwpS*ucZqM97PF6p|Z{py*e7Mg5AZAVViXL)0`c>>%r zEHRKnzceu+8*?EGuPu(Q^lSU=8Wom1+xcznmh$G}EkXykw$lin7;bJYxU`_hEUc*J zfGOet=B{4^kDw8!Y658VyOx&5EoJ~NWBQ0zMMzY%P98R6GJ;Z}{YFE~EQK>@cXk(0 z`Eu=SbnD4rit;Ozk!NOt>0*&Lh`1{yWAusRQro(rX9W7Zmv=Mjme%*?_R`+AmKvm- z;WJytCv<;IGcr4*g-Cu}Lr{@gkgKBEXnHi7j-e|?lZqg5loYfVWEOcI9 zXt7Xz7Mn8pe0hrM^NpSD@>p7;N}P{4%%#WN|tonB;R(^3SrdEKs^tsuDi zx2+YsGX+D;zacyIfyFT?0!LlL+L3RRp3d zaw^~!a*CoYsaYuUca=3;jWR21m5F}0Bw>iVj!@o&lAv&-oKP_S>y<%vcjv}2P-v0q zRvIR&0$j}gWqC!WgLfVErvX%)q!#yDY}(TNOI%5f>VJiR#_w_aZ|S$Ut!iD5iY z!*Oq`d1CF>IU+(;W11UOW#GqT5z*70<>=c<_3I5D_se>2ub^u;mwtG%xDbn5doN2- zK`Y8k$@K`ocj**)NNJj&dO;I#u*r0-Q&WNn?(gk1Pd4dRRyO86Qq`?yf)u$|itgU+ z737JR)e^`_=FD6uBjE+wO{}*5XoFAlV$W+^c#_)obZG3Ox@L|vxt(RTk=3P0Sq&9r z^-ri-ST$q%{e)uPIc@FNNuN%*mrc}k2Gk^W4QEw*kpzoH4EiXAnu*(#Zw8D32;E$O*Hzz*}InI6P#EEfldo9MDeFeJxU1Z{`>hn&h>>U(F z2?m{a9vBs)x<*@dtP>hWVs?>wB@@Bkk!PU?QVHV2dd)UPfa6mrD%2lvivozY0{&$GTGh4bEC=5VzJE>{M{O> z9T+GSKM-mTpaF(3tVqNqOCj{0=%3w}6dZwC)|DjEq-;8aQH?8HS=(sJ5#CGmk`p0b zKD>$}iK3K_NUpRDyttATx{L)la*}bjvuIM~u0-4$XM!?*uF{|^j6`OFqmf{G(1Ph4 ziSFbk&fHu{EW^-@D*SF$5d=yVDY;SbfB-v+3{jb+m`KFR3^bA2qC#j*1Jbkr0aH+E zzr&4=JEVCME1M<|*yOD8o#kMQgZFced;+yX${41GEoK{2%_h>LWMK&TGfi6Lk<9kWD&cbG{W)+kYqo?c4QDOB){pW@^X!lAi*KeSHd42t&b zTSsScB04kFKUPVN45ba(_ zID`Y@W;{V9awPm`kRX~xioUA3De5~g;HT3h7a$sSBnr?{xB^JlP7iN1cJYYU)aKjO zRB|k|G&D7(PW7Se0!H)Im=$7?v%<5t0Q~Dv8~1EWa_9|fze?lhhIRC-LmJ%6ZUk}Itm!P0SBj8~DMt8( z3W5P7)vL8ddIp1K<$KRB-`r~V(od{9Lu+Gi6iQ`^DIiH2WFH5p{-9X+a|J_}USKf+ zpwl%)nhRSi*lg^zzgYl{(#(2FkIY%T>4MY2pS}{t~ zP>#^STWe8s6piX$C^CmfK!em@Q`6#zU0dPkTViN%-&ACZ%Getlxb*~)ZSQYyExi%- zG>xN)#B0TXVBm3LSd|Ci=imI^XPESF^ zJ&lway|8Pdp`sEA)8dV$4HE^dqB+k$-P97CS-r!M_K#J0n@+xt&h|Y+gz0#ZaU!V0 z(}R>K1z3RN2Kw|bP)#~!UE{iOEHvOSW(__)& zzw~T12revED~KRskX?q1ku;Gp-<1F~qXWdHK?TxDHSOZfc>!KQVYIjPBe*`j%(70X zkdahU&h1Ju4Yt97S#*{f59nT^T8ddMeGOVPRI-ZM?nU0OCB%W!_TglfXt*qCB7+*C4mj^o>5)fqZ>lKM zBtDhx_0^rUFp1|d#BN;r(>hMaWLROU?^PU^>@EW{>DCu_7qPT@v;x{ChA2oMShy5e zjQ*Qfl?iZUv zh!i|Sv4@r~w5#ZF5hF2a3i4Mfr->o? zr zi)}+vnI@0-)1%205&QlUg-pR%gFRBk}urr0-6(jl0v^WBt% zRmqtEBr>n4r-@`MxC(mGwH&fXZJ@Qbn{}x^nSC=w5R4c@2w^WImgw>~qb*BLjGQd^t7O6K6r1=CzSVoODIcTqHxNWqp>R`?2v zP`KEd;;*P&*~4K35vLS{Tx$0**{aJDTp)^2C1D-I4^2y--h`Ds8&C7C6)iKS?el@dxv))iiYK~NqyT9)DhbvHJ;q#EwKaiU(?uA^@c zm)03WB#q8rtF^iG!Aazjs@|u<6qZ9&Lv6}V{CDo_?k$f6Rp z1k-SKB9+6LCzDQSpF_LUZG>E=iV<-tA~H8 zG;!UD9Lwn6PkdxXA-6KDoPwv>U`qj)O}W$Lw$=1)V#`?7;JHhgt+e;Jxt>duG0w#d z5ihCf$hBfPQk;~qq0Jq=>)mP>qFXy#%RM%GtwICYL+mWtjk&@wxH9fc;4RirXt>2k41z%7rM#u}*&eA6jg-OVa zf9aATk~&CIFz;-th-fHTf~!#R6=D>UYDgxh4(xQBy+-vkxFL*QT+Yy!xRN-Z){Rf@ zGy||lESgq`DZy7i(lyTeJ#D#dVjyR1K+t~D};zx7omSliqYw~Gz<>JgN!zsGcEKlE#Qjjk zJc5B}O)I+Ws-~Q`GFitGPNqW~FDtJPMVt{U{81<*aR?NBo}ijBOVW(TGV?a?Bc4ko zRwkKQ7>Lmd5x}(tRe_~;Bn3ewxF+`8x;eO=&D@2--ac&Xj7=1kULb%*{v~KSF=6S+ zB=NKt1=(JC7^yT~YQ(R^WMZvC0RpRDJFt8_F1bds&LI*+u?YzEJuqC>A~`CBEIAdZ z71$aRjc9G*yik&~wuM2qbsR&0lpAs#H`sMOD_Wg2aLXDprOmrkm|?gsi1DvBQUxU> zv08ye0G|DFJv`E_-M!Qi2vXJJk_J@ds<3b|o-JN{cmiu$o!YfH$%dV5(B02uFJyS0 zNtV!mqM9I5dE)1n%k$d*ZOTG4I4NKCV&D$e0!CcIF{%*K=gtj%7P ztw{j432`%ha(8b+6CJE)iqXW1K%-M)3!jI6Ti2<>dk?PJ>ZyD6A5Cno5_xUY)OcgJ zxo=4i$IptR(Rj5>R*VP)WT(wKHm3e$*Jn2oS>4##t<~ggk=q$PR0#BrIb~2yRBY81 zQotN9T}>rV(XFT3$@MrFh2IolN36u8Vjo3-aVRxsW>Tckaw>-jZ8$-8n%hJ!t;0Qp zR}VOHl`M}UMvKUfKvt%qi8KV_$)r!H2xM#MWVU;TYkMOk;$;cM+;>wTf?ITHLkRduB!~(iepEDa+fWx^zY(|9^m(o>F4perOt`hQ zj%cooe^-v=2!inuN9r_AQ<3BxM#@D3k?|2~ce=VnQd_B>(^HKa*fhWB@}NTsAVp=2 z&>9A0U^*#Mq-0LvN?6-K5huJ$rIi{V-WH@_`g1Q$Wv=A4_DRhu5_&@>i+=gX$|q3@;Kr^0by#1J=9}?LgqE0RWxSh z!CCT6WvN8ApQ7xgg8q3Sl`U+3r3|6tdh=Q`Tr|w;3}CB~A1{JWjHw~Ic(1KtwYk=4 zmWq(r>30az7%ikzB&{=|0G^wGoC+U^iZwY9T^64hCR-;+E*dtCq$+uFE{pNHb3lYJ zW@&vjQl&|)S0wT1H%N6zui>-4zqheV*7}0M>7P;D$g@1H8#KXWT1OB(l*Z{*D(p)P zbFI8rGgzOhUC$FssVq#^tLcdzG!sf&kR=Uc3R#U+mbDl|=0>!=o>^f?;?rY_OPe(; zk1BdWM;RtO9!l{ffEK54ptB5#ohEtYTeM}G8I@V&PLWZSII-wHCjcJ(dT)n%ly*=+ zw!-7CckvParyg z0W_sp?cZtEk)UYy7L)2aoyMJaadQZc+e?uy+fU@P{N15!Xgt;Uf&%_Abp9@SzV# z(rr;AhzTV!%j=d$CPt3qg$t{<9^@wjF7of_cU^Qf&7^u={MU^wlR7=qS+%T@(%EWg z%Mp?_so1|CiHu>))64fdQ)!nzb-J|u3N8}cU9q;lD|b39q_dcx;E~YC81eXm{7eNH zh&;DZ$s)Wl+rb-g4Dd@Uq9Q*AEDV!K6qgLc;x!v61dL=!C5)E#*H99_4B$DUx)2sO z4k^tU1y_pz+mJ}1GaVnyH@bD20INV$zuH?x1cTLUr1h0ufpPILqbWbTUNr`xg+T|Z z@-&l5@<6desNJ!iIIX3UoTP6+!5Ae-;V&UijMK4DNs(LIKboL|^5W}8v5v|+c(3%> z?rikWSlhz#Jj)nEB&!f!GDxU+gUX}_U`-q9Itprb*6n9=qf2)rQblno6SBmMbsUbd zNo#UdQKOfVg+j_Uj$3LkT4kP98yCPO1=a_}oM_YddW&NaC`;OR}ocNi!k~X?Y-4 zFt8*^NfuNLwNe7IkzIm37SHvUca|uUQr6IdqNv7+7$F;z4)v$PIa7U_lRArt#f&Q4 zr7t)~G7ni40akKIP?cJOK`eUi1*0U4vI|297V#_*KpDM9C3#ftKnza%)a|+7EoEXo z0FCKUU(zR;1vUf%M&B6%ovJ)B@Z88GVFW{%V30(>o>e3VD^pWbQ9^0nqhe(hykDb) zj7;~X)m_VcaT2ogW>7$(AW$~tjcLbhZLD_c(LLC?NxfB+PIrZr5Zf}<%N40!ETA2> zKNdNR?tkmMXIuez7;DbhEjVS9Jie;-P~E z2wP!N+fWVtuu{e@Eg51`@IyB#Em}4dArC2u4@4%VekMDLj{r?@kwgS@x^qWZ5(75|*s;cLS058SGLvASF2->KnoMPJI@$Mep{?ba?ng!)FFUf^E&?#Svq=VER zK!>gT7ODQ4BCV4<#b$}ZSDHEshCo0Yvh2ZXi|~_7kI5A2>YIxxEv)V(_qYRW;N=~Gj^I!mof%J=qm zx{MC1$lmN;=GAmssWW9$Y*5ol65 zKX@W=s?F*UBn5dSg@~hV_JbsoUD9&ObuBwlzl%kM;nD@jF$8bj$cpah!T7W)oEb<|*bsn>4|%O!=~vfc z-saJ*t|9uoQ2I-E=_05IsmY{x0|ii|JwW>;0l8+KEs*majMk{jWv5!Cx2+-x9i+4M z9i7LiMM(&w2ByU9Kvrp1sioOlK$Z_OKDe+Mts=L8wDZn5%x$h>oN*qU@vLQNl_!zp zg*{fsZyeV8iPoe`{Xw93W_#GBGQ!Zak5VZ;Mj*)}N6B3S0#KjXFAvhLwCQz05xtJr zQoWMO-%q-EN?OBm(<0qwz@9YYVdi;EpO8jDEAA#jmV!LoTyxCX~_XaPeI< ztnr~pNltfsYN%b1IYRGHNTv~APYw2(Ep6tG-s;8POS!GXN9)8}l!#*lqX^AeLeL%R zy9`b{V=PckuClzyV7Aewr0oHAo>t(m&(j=;A!$}-tpN&4wFXy;eEF+X$X|@tCp$X-}8D&6ZSlNwIg(yWxJVgso z95vI`ZlRS$gmI%3EA@70g}i1@OctqiBjFV$j8DeQ)L_v|r1ftW7Ff^KD3Hmw3C}Wl zH8)_~iQJRnhw;LN;mD!7ihqYZ6#CnP%3Xreq+s{KE2V+TEi4X3tWy`rxqCA=P16#1pioh3BOrsACfa3%f-{Aq*YDYD;~2rdwTl z7P2V0wz+7`Q2@_ZFAFCIWmQ5LKQ=8!Uj$B0I=^uHXkoEw!=`lp3*2ZNkzNQvaHsz%&6Bk+=2SqM&)V;CL>_gP%xI=t{`N2 zrspUNIcNBY5|30hR28KFH0k0xj5@HqfVI_Q60$<(890PiWpHaS1pEbRC=CYG8!*FL zskN;$^flGdHnvyNjYCeI(PUSW+0{K}Knt>|TJdl}+<j z!^#@;ItH@^?bNn6bK7cSd$_eJey@9P3;Js<<*cu5aA_NbaAGC+7X8eM&&1trZ9L0h znw0)yipJW`^4mqyC$<+#QctVRbS;?3lX{GktRx>%_$-1$Fce&e>bDbqTWUADUY7ce zuCaG$=4%`1%zB28cuJ~G6p@HP5<*g1`e^DxqYs049-jrmnNs#ZmhjsBWi6T6VPMNp z;Za+Yv}{SI9rraL@io&mE4x44JFCXi!#(28ONk|hSmblYLeP?FRtz`T9kyfivV-)p z+1% zRpzZIVn+u`k_xXX5sb<5BW5J2lnZb$^Sc#_8NQGuE(dxf@@Qb<@-OF)em z!~(DtWMZ|c6%2O5YiJVUc5Ln5*O3@r20mv)pSr;@3l+Jj?42NEg) zWjr75LhT}DmPJLJxKOAItBGpNsKn5%Od6p9PO6e3bB5?^K8U&H!i<#mAQ0zbi0-L*d6_G9FD?r|~Qt(*>iU&1v4H;`v zq*9}(9Z3By_fobn+e0qvdkxL1a8?UEPtG}%s)l4rxhiU)GkhTOsn)EmZr0wHsc$)v z?#sa`0#|QLD|Ok20oaq;ploNRU0mu0=hSf}^DW>A((pj55tsmZ@L;XY%9ahxfkJv0 zUTasnz2vK@Ix1YAIe-*LD`>TZ=6TC%CwX zpG^7*EJ-wovP8b9j!6@j!^~Hg4l2YL7xNdEt{{#pD4lf1TZlne=Ss*q!&Qj1Y~V(s zP)Q|}qy3f`BG+2CxRNNf3x{ilf=Hpexc%9-x0H#2CRT{^1TYdv>{S^Rc2y+%UW-)n z%o5!brO3K0kj-?EOr_>oCX9$=Di5d^mmYDE!+N;*5R^|eH#&y7b9sGpE%XNJICbl3 zVlO?@Je-)i`m)a)k-+}|5`h?U36VY~fB(?)oO-^O4uv{Jq~Cph+3oLcHF+hD>fvsY zAL~*`Dut3pkPyJG>O_jvjHqAI7n+6DwxMtJJwDr0y!xf=c4j+ri7EvVP#D3Bh*I9A zYQvdeS*mTSL8LW~pC*|v)-J3f0^&4f^;Sz@66Ff224D$3n>jQ<2~{irEz-rT7R!Bo zeRf`3g>6Sojs%ew7f;;W5pY|d7Is1ebwEP`{EA^*heNo#yythR^0!VJY*&!S>diQr zc`Suw3aTHOB=!`bV}=&D5hT~MPO_O*X10x>T1G*0BZlL|g)31`{TpmJjst9#@W^Am zR!6vig3^H-F=h`%cL)L#%7Bx&uG9$jA_rTz!pQ~9fuRiNuDK~Gmti5sHB!8 z(v__?q;mGvZZ&(RhT#KF#$s8)Us8p*7DCEudQi~UuJ~o7$2FbI$u#EP4@yZOy&*(X zf$$<8byiY&Y-%gFd^Nm@B-7)*3h!lcanI`w9~mOCk}fn-fmNP|kwfs64M1pfpZSK> zCA!lM%&^9y&|BP36SVB96FVtoJshd00mW-URRr-j)pXx4%Vl$}rN~P^TtRK2>1fFl zT1OdnBJOL8(;Sn?9a1TSNx&HyQ2@xkkL709^zbyhl^VC!Vv5=s?xD9<3mlRvCxzN|L!e)7p~;At2~ z=t&%se)eZpN|jm9-d5{$j9gR@w^-KQCF^ zUQ0f%jj1igxsni)N%1T)nWVW=7MvHjVi>f;%~pDsp6>0nE3H3J((LrDIss#AW##x1 zC$|!`H;n|A&mk!l%<+KFG|gEV&k7Yh(e&+mP1LWN*2?Qsw$Zf)j@k>DOn^PJtFS8+ zjFoz?spzu+N#2w=I)5|h7m{0DYL=Sbr>I=cklal+qc0bA8 zP0bs>!^rNx3{@# z+|ju8{;Pef-(KEow-Vpp-d#_qPje))lFv643;V)qffN8gmV&l zBiwrOlj}@f7=qk~CgoZWj;6KZYlbn}wY-yB5H39{dfmKhvaoQjp~z69nGv%CL%$N$ zu60X^G~53GE_r6~M|RWsZ%U1|o7?FSL`-s|(2F*mCQ7t!{CJ}kXrGe&e8)D|5?N9U z1(KF_7qg0%VH|f4AW1}SOBO{OL1L;&`#`n@gGptvyVgwd9X`T%p@&i+h{ff~85Y^2 ze~1)F*_^K-R8To`Mq&C)k?KZU32dVmP(8%9S1D=gIg)3N8)zA$LQw>ho!T?R@K6`D zX7<|F9Zu`&I*+eliT>lJU4x+?3h-qu%f)vpc4j1UDoGHW!XURM)quB4$x+oE`0!HG zl6ZisIEFL^pbAt0jL6ooLvKYA#$&pO*V0i6$j$%)uvp**?28rEA+ari9Ks@-05L8gq8VXXh#2lbrU%8SMX+L&r z>hWL+YVrG201EW2XgcGC!g0AN6GIy@k^>(mRRipOq7Ql#*1fx8&2ckEsWsq`EPvgs z;LF0Gl_=ye6+40}y+Eb_Gtp#~cxtNx}Gc$6kvA@Ngxfo zt!ugl@&h8laI!=qRfccx?=^!*x*TO2r#hNKy}~ zKs*4bY7o@`1GXsIN28}%YfS@-E1CE~DfLjiT;wlBWZ|)jMXK@u{?Q<)NGm3xX(Ozf zo|_bq&3gs3j}e~U23BxMSrtbLsAf_J+odXS-89Lk)8)9Zx0>rt)2CaB*x=CzIw)ap#>*?xuGxG~2->D+XeR |2pgpM^*wgsCMh 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%0AS{RC@kkCaIR_TBp2%(7Km%X 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

a`U{^WPza$9k6ff8PJfxBvhE literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignLeft_Light.psd.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignLeft_Light.psd.meta new file mode 100644 index 0000000..8bcb86d --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignLeft_Light.psd.meta @@ -0,0 +1,53 @@ +fileFormatVersion: 2 +guid: 12736c98af174f91827a26b66d2b01b9 +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + linearTexture: 1 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 2 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMidLine.psd b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMidLine.psd new file mode 100644 index 0000000000000000000000000000000000000000..14d28a2d0c17a8776abd98e4515c12b4bc135fce GIT binary patch literal 43949 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 literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMidLine.psd.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMidLine.psd.meta new file mode 100644 index 0000000..416a44c --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMidLine.psd.meta @@ -0,0 +1,58 @@ +fileFormatVersion: 2 +guid: c2f7f6a88b4c4f20a53deb72f3d9144c +timeCreated: 1426240649 +licenseType: Store +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + linearTexture: 1 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + allowsAlphaSplitting: 0 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 2 + buildTargetSettings: [] + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMiddle.psd b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMiddle.psd new file mode 100644 index 0000000000000000000000000000000000000000..c4483dbd6e6375d5d966095afd5375c5b8089967 GIT binary patch literal 42140 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 z zxD^=J8LN#L#|Ff>!Bo>E&}qEhRFCrqrsw(DEH!R%oe}vv$1w7+)iq!lqv58zRyv0b z^^X^7$knfX@uS3`11(@t06(L)nX^_J8aUi#&E5B5uNc2_mX_OSv%}a>z^bSue}K(y zHP>?$_GTka%*Z%gf^zSo*x`eCYN1J6ZFDI<0KST6l;I*Jd|>68n`F@2>-YvW*(JTV zt1MlC)>c_lZ0JIWXLJi02LOq0=|okBi*sU@6-xAJRQ;@uT*-P4?dr3&|}+4 zORLanjodi1u3p?^mP%Pcn><%P6FQYhm$F5bVI#nA8ia`vxVy2>Gr})1@cW74o_U_p zRDy}dTN`jJNEKNM>$nDcGvAhOJL1w*u;>c4x4X?eAvQCNZ@LjP4tq5)#x9OO*SG+a ziz&rRG`V6Np=fd?IBDm?@8udDxC~4?S2>@Ij!jci8N_fr)3I68WW{b0x(x>pT-$_^ zjA@O{jdbn+^gOV(^nx(%X9o$s4$nD@RxOMAI$6}$DaZU0UkArO`a14B__79`&&Ltz zN}Pm&5%RvQ{*AHUC;2OZFcFAN?Bz&T*IG-@wZq-z{k2t_Qfo{3VB= z!G*0Tn4y$a6ysa+5-L3D8p# zFP01zYAS~;i4tU!L!R}MBZMj_c%?X%!}&?WmU>U{K!t^Yed3(V`(wn-pZ zf5}YmHuLk8{eqQ{Lf&Tq4CN+)&?=YRXQ5?mlle!~XOWjq@WH-i}DCWY=2xce+KfeX}ydMHxJdozfc3%3;VlpMg$g9wU$5mTFZaj zZ^=o3E(F(=S!?m153DcQZ&A?|_y3)>7PJZSoA+C&wE&yt26?|F2Qo?R8^(FR1wu5v z1Om;Y-$K*xm-#z%MTJtfwed~>L+zm)@@p+GFPaf9C}(&!7}iY!;V*O+$C`LTdIT_$|3bZ zE%Vw|q1&=R9$o(;d&0$AG8QpkHWhygB? zDnRr_guO-(k9Jh_Unu(v+iO(2Ep>}~jo6_sVuR~4@^U}fa%pn0mr*XoW#py2jJ#CT z-xKy0u@9(VFVR41;pZ%{&@S^~hyOWz*e0(J>-Aw>`@;Vl`-T5;ANC6G7hV=0)^7~# z5gTd@covJ=yvzBUD9Qfdg)DaRilOjca3*M^B_=`>e?&Sd&An+cp z6uSE_g4aM(dh%BH%RE~#elh!u?h?5Bu}fuMsu-s}DHXOw=IQd@Dpmj}v>qblJzPWq z7fKPKy9Dlj>`Z~b9Cp0_*Ri+S@jj!w1nz!pj^ND6A@xbA4yt6HF7K^k6@h}l33(3} zF**2vD~CSuA$^~5_hX}EUaAlyDX7Omt<%>sKgR37 zpg#s)$>sB3u&+wq`_&|m9%aG9EDeW&lj? z;_rl$=tLhwZDtI$nK9I64tCj0bm5&gQz7v1r#ybI%`7qK^>88pd0!pB6TX5ra~stx z|9cJ$ig8bGwH;d$$W3jG9J;^j(Iik7ULC(9dwQ##E0iOL9q%@|OW^*_4{zEiN;|ti z^0!$r?&(b!xX}vAA?;6YHdAsgP-Zjf*T}AZo4LSFv#uFksK%bY)8b=KWpimS15cv)9xg|%1L znGOYfo6C&f8I{?}Y>Z$1w(FSf6*x(KtZB$u-Nx%rY(NhCz;)4p_V+v6&&jkCX?&GDpfs485zVgO(7!;itx za8Zd3z7B=o{iLgCh)!zTciOYWmx4RlD*PP;DBdCtp@>5${gdO#N&c@Dpm+o3{{h+{ BnDGDr literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMiddle.psd.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMiddle.psd.meta new file mode 100644 index 0000000..c8b350d --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMiddle.psd.meta @@ -0,0 +1,53 @@ +fileFormatVersion: 2 +guid: 41b96614b2e6494ba995ddcd252d11ae +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + linearTexture: 1 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 2 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMiddle_Light.psd b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMiddle_Light.psd new file mode 100644 index 0000000000000000000000000000000000000000..4263bf9b3cf5c760ddfffdefc453ffbaac1848fe GIT binary patch literal 42446 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 AlmGw# literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMiddle_Light.psd.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMiddle_Light.psd.meta new file mode 100644 index 0000000..fae8d92 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMiddle_Light.psd.meta @@ -0,0 +1,53 @@ +fileFormatVersion: 2 +guid: 066619c9c9c84f89acb1b48c11a7efe2 +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + linearTexture: 1 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 2 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMidline_Light.psd b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMidline_Light.psd new file mode 100644 index 0000000000000000000000000000000000000000..a5bed37158b92f2d109d4625bbe21e4088fa5ab5 GIT binary patch literal 44041 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 literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMidline_Light.psd.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMidline_Light.psd.meta new file mode 100644 index 0000000..2b8e9d3 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignMidline_Light.psd.meta @@ -0,0 +1,58 @@ +fileFormatVersion: 2 +guid: bb42b2d967d6427983c901a4ffc8ecd9 +timeCreated: 1426240650 +licenseType: Store +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + linearTexture: 1 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + allowsAlphaSplitting: 0 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 2 + buildTargetSettings: [] + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignRight.psd b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignRight.psd new file mode 100644 index 0000000000000000000000000000000000000000..4ef1998b6ed24472f2dcaaaa747ef6f32de292d8 GIT binary patch literal 36444 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 literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignRight.psd.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignRight.psd.meta new file mode 100644 index 0000000..0d7c53c --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignRight.psd.meta @@ -0,0 +1,53 @@ +fileFormatVersion: 2 +guid: 342a0f8aca7f4f0691338912faec0494 +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + linearTexture: 1 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 2 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignRight_Light.psd b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignRight_Light.psd new file mode 100644 index 0000000000000000000000000000000000000000..bdeff41364cfc18e989fb22c200fb614d8c4b803 GIT binary patch literal 42386 zcmeHv2YeL8_xS9!^j_$21d`CwdmxbHl8`_`LJG|Sm%B}J?wfgU=FOWo<-MJ` z+4S793Pd61k^t}}wmwtPWo{V^@$hhZa{j7n8KZIM^gwHkd^#IOH)KSHiiXGM%pDTyyJ zD(E^*;dB#SF?~#>YI?mYLme?tM_ZKgCY@Gq&TPtxP^t~pbS8u`Ixa#^ zl341qB62W6KB1&ct}vKrc}i?bj4D1cL7tWon~;*6k&rM%o*18y6qgVmmzWWgkdT?2 zmYI+$XRnCi-VhpQQrBdb=M}KUK`bkx&SEiU#>F)@HpVt4#TrbtaS0h28FBH6afyjB zkRrz1thXqeV)W*I3=@t|9&J{cG)9ZYpqFF5%4&nvk`)nw3$kBqy>v!6dLNldCtNXmr% zk(3$}pOzUP&tt-*6!0j4j;K~zlpL4jnE2$F#EiHCfhb z%sNAzmXfSYjiEEt@iB?2y{iGkup+5CXJR(gSQ?ck zI;R%;#1)1y!_Ya0kn^xOJj-e|H=zy8%7*J}fed9*vWl)rib+h1kB>>Elhb3;Gtyu% zWvG<#>V#xEAtjw_;cISz5qP?VVrH5x5F++02~ zS6-B_NKME{O^r#6P2jWPrDORpg7VxmGGj1UaQ?vWjI%qQ?IsiZbbBKMjtbsLt^!`} zLIetN9d)bAwSELtx4HxhaUFH5%e8(4RJXbW3UM8EtIM^11XQ=W1PXB-b*sy@egssv zx&#Vw9d)bAwSELtx4HxhaUFH5%e8(4RJXbW3UM8EtIM^11XQ=W1PXB-b*sy@egssv zx&#Vw9d)bAwSELtx4HxhaUFH5%e8(4RJXbW3UM8EtIM^11XQ=W1PXB-b*sy@egssv zx&#Vw9d)bAwSELtx4HxhaUFH5%e8(4RJXbW3UM8EtIM^11XQ=W1PXB-b*sy@egssv zx&#Vw9d)bAwSELtx4HxhaUFH5%e8(4RJXbW3UM8EtIM^11XQ=W1PXB-b*V0I$5BpN z59c=<;h-it>6uARfgXZqAl%FeR3D>Bqqme=Ek>&akW!qa%xtNshJ$+~MUmb@(|W58 z6L1(qh1P`Q0VHpQrU|FW)mU&IOlEk}rZGw#U70_j5>QNGOa?d;V5q5}EmmV`^;8uQ zeNh=QAp`tskQ`MY8d;DP88Iv5ZM3I`7-5sEwdh%ie5EIrNU^@bCrNfR-5dR@>+9=J)$t_6^@AB;)oPiYt44b zm|9DNJ(91}=Gh~lM+fU%Rede12u4c?&Ppgi8gd-CTrHQY4c6*x!+tCwxkj4w?Qpr; z_UUp>>dGp;rJ!HA7Pqba%GIjn9pTH(S_{FKHEFZU?a93xXce5NgJX|yK9=njWwm8y zu2jf&|ShK-=uN`tY(Vk=Zy247}UWlzK$$Q7tE8I0rM7+V?cpÐr#^p7 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 literal 0 HcmV?d00001 diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignTop_Light.psd.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignTop_Light.psd.meta new file mode 100644 index 0000000..1779f7f --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Editor Resources/Textures/btn_AlignTop_Light.psd.meta @@ -0,0 +1,53 @@ +fileFormatVersion: 2 +guid: ed041e68439749a69d0efa0e3d896c2e +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + linearTexture: 1 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 8 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 32 + textureSettings: + filterMode: 0 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 2 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/LICENSE.md b/Library/PackageCache/com.unity.textmeshpro@2.0.1/LICENSE.md new file mode 100644 index 0000000..dfecfad --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/LICENSE.md @@ -0,0 +1,5 @@ +TextMesh Pro copyright © 2014-2019 Unity Technologies ApS + +Licensed under the Unity Companion License for Unity-dependent projects--see [Unity Companion License](http://www.unity3d.com/legal/licenses/Unity_Companion_License). + +Unless expressly provided otherwise, the Software under this license is made available strictly on an “AS IS†BASIS WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. Please review the license for details on these and other terms and conditions. \ No newline at end of file diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/LICENSE.md.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/LICENSE.md.meta new file mode 100644 index 0000000..b0676a7 --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/LICENSE.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 0d2d0f36e67d4518a07df76235e91f9a +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Package Resources.meta b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Package Resources.meta new file mode 100644 index 0000000..71db47e --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Package Resources.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5ec95f4d5b2d1f14e9ff8682562553f9 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Package Resources/TMP Essential Resources.unitypackage b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Package Resources/TMP Essential Resources.unitypackage new file mode 100644 index 0000000000000000000000000000000000000000..6c1904f46bf8f48929d3a9c827d884c9a2fed5ac GIT binary patch literal 1277840 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