Merge branch 'main' into cpack_installer
commit
78d6909bda
@ -0,0 +1,147 @@
|
||||
"""
|
||||
All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
|
||||
its licensors.
|
||||
|
||||
For complete copyright and license terms please see the LICENSE at the root of this
|
||||
distribution (the "License"). All use of this software is governed by the License,
|
||||
or, if provided, by the license below or the license accompanying this file. Do not
|
||||
remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
|
||||
|
||||
Test Case Title: Create Test for UI apps- Editor
|
||||
"""
|
||||
|
||||
|
||||
class Tests():
|
||||
level_created = ("Level created", "Failed to create level")
|
||||
entity_found = ("New Entity created in level", "Failed to create New Entity in level")
|
||||
mesh_added = ("Mesh Component added", "Failed to add Mesh Component")
|
||||
enter_game_mode = ("Game Mode successfully entered", "Failed to enter in Game Mode")
|
||||
exit_game_mode = ("Game Mode successfully exited", "Failed to exit in Game Mode")
|
||||
level_opened = ("Level opened successfully", "Failed to open level")
|
||||
level_exported = ("Level exported successfully", "Failed to export level")
|
||||
mesh_removed = ("Mesh Component removed", "Failed to remove Mesh Component")
|
||||
entity_deleted = ("Entity deleted", "Failed to delete Entity")
|
||||
level_edits_present = ("Level edits persist after saving", "Failed to save level edits after saving")
|
||||
|
||||
|
||||
def Editor_NewExistingLevels_Works():
|
||||
"""
|
||||
Summary: Perform the below operations on Editor
|
||||
|
||||
1) Launch & Close editor
|
||||
2) Create new level
|
||||
3) Saving and loading levels
|
||||
4) Level edits persist after saving
|
||||
5) Export Level
|
||||
6) Can switch to play mode (ctrl+g) and exit that
|
||||
7) Run editor python bindings test
|
||||
8) Create an Entity
|
||||
9) Delete an Entity
|
||||
10) Add a component to an Entity
|
||||
|
||||
Expected Behavior:
|
||||
All operations succeed and do not cause a crash
|
||||
|
||||
Test Steps:
|
||||
1) Launch editor and Create a new level
|
||||
2) Create a new entity
|
||||
3) Add Mesh component
|
||||
4) Verify enter/exit game mode
|
||||
5) Save, Load and Export level
|
||||
6) Remove Mesh component
|
||||
7) Delete entity
|
||||
8) Open an existing level
|
||||
9) Create a new entity in an existing level
|
||||
10) Save, Load and Export an existing level and close editor
|
||||
|
||||
Note:
|
||||
- This test file must be called from the Lumberyard Editor command terminal
|
||||
- Any passed and failed tests are written to the Editor.log file.
|
||||
Parsing the file or running a log_monitor are required to observe the test results.
|
||||
|
||||
:return: None
|
||||
"""
|
||||
|
||||
import os
|
||||
import editor_python_test_tools.hydra_editor_utils as hydra
|
||||
from editor_python_test_tools.utils import TestHelper as helper
|
||||
from editor_python_test_tools.utils import Report
|
||||
import azlmbr.bus as bus
|
||||
import azlmbr.editor as editor
|
||||
import azlmbr.legacy.general as general
|
||||
import azlmbr.math as math
|
||||
|
||||
# 1) Launch editor and Create a new level
|
||||
helper.init_idle()
|
||||
test_level_name = "temp_level"
|
||||
general.create_level_no_prompt(test_level_name, 128, 1, 128, False)
|
||||
helper.wait_for_condition(lambda: general.get_current_level_name() == test_level_name, 2.0)
|
||||
Report.result(Tests.level_created, general.get_current_level_name() == test_level_name)
|
||||
|
||||
# 2) Create a new entity
|
||||
entity_position = math.Vector3(200.0, 200.0, 38.0)
|
||||
new_entity = hydra.Entity("Entity1")
|
||||
new_entity.create_entity(entity_position, [])
|
||||
test_entity = hydra.find_entity_by_name("Entity1")
|
||||
Report.result(Tests.entity_found, test_entity.IsValid())
|
||||
|
||||
# 3) Add Mesh component
|
||||
new_entity.add_component("Mesh")
|
||||
Report.result(Tests.mesh_added, hydra.has_components(new_entity.id, ["Mesh"]))
|
||||
|
||||
# 4) Verify enter/exit game mode
|
||||
helper.enter_game_mode(Tests.enter_game_mode)
|
||||
helper.exit_game_mode(Tests.exit_game_mode)
|
||||
|
||||
# 5) Save, Load and Export level
|
||||
# Save Level
|
||||
general.save_level()
|
||||
# Open Level
|
||||
general.open_level(test_level_name)
|
||||
Report.result(Tests.level_opened, general.get_current_level_name() == test_level_name)
|
||||
# Export Level
|
||||
general.export_to_engine()
|
||||
level_pak_file = os.path.join("AutomatedTesting", "Levels", test_level_name, "level.pak")
|
||||
Report.result(Tests.level_exported, os.path.exists(level_pak_file))
|
||||
|
||||
# 6) Remove Mesh component
|
||||
new_entity.remove_component("Mesh")
|
||||
Report.result(Tests.mesh_removed, not hydra.has_components(new_entity.id, ["Mesh"]))
|
||||
|
||||
# 7) Delete entity
|
||||
editor.ToolsApplicationRequestBus(bus.Broadcast, "DeleteEntityById", new_entity.id)
|
||||
test_entity = hydra.find_entity_by_name("Entity1")
|
||||
Report.result(Tests.entity_deleted, len(test_entity) == 0)
|
||||
|
||||
# 8) Open an existing level
|
||||
general.open_level(test_level_name)
|
||||
Report.result(Tests.level_opened, general.get_current_level_name() == test_level_name)
|
||||
|
||||
# 9) Create a new entity in an existing level
|
||||
entity_position = math.Vector3(200.0, 200.0, 38.0)
|
||||
new_entity_2 = hydra.Entity("Entity2")
|
||||
new_entity_2.create_entity(entity_position, [])
|
||||
test_entity = hydra.find_entity_by_name("Entity2")
|
||||
Report.result(Tests.entity_found, test_entity.IsValid())
|
||||
|
||||
# 10) Save, Load and Export an existing level
|
||||
# Save Level
|
||||
general.save_level()
|
||||
# Open Level
|
||||
general.open_level(test_level_name)
|
||||
Report.result(Tests.level_opened, general.get_current_level_name() == test_level_name)
|
||||
entity_id = hydra.find_entity_by_name(new_entity_2.name)
|
||||
Report.result(Tests.level_edits_present, entity_id == new_entity_2.id)
|
||||
# Export Level
|
||||
general.export_to_engine()
|
||||
level_pak_file = os.path.join("AutomatedTesting", "Levels", test_level_name, "level.pak")
|
||||
Report.result(Tests.level_exported, os.path.exists(level_pak_file))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
||||
from editor_python_test_tools.utils import Report
|
||||
|
||||
Report.start_test(Editor_NewExistingLevels_Works)
|
||||
@ -0,0 +1,10 @@
|
||||
"""
|
||||
All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
|
||||
its licensors.
|
||||
|
||||
For complete copyright and license terms please see the LICENSE at the root of this
|
||||
distribution (the "License"). All use of this software is governed by the License,
|
||||
or, if provided, by the license below or the license accompanying this file. Do not
|
||||
remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
"""
|
||||
@ -0,0 +1,32 @@
|
||||
"""
|
||||
All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
|
||||
its licensors.
|
||||
|
||||
For complete copyright and license terms please see the LICENSE at the root of this
|
||||
distribution (the "License"). All use of this software is governed by the License,
|
||||
or, if provided, by the license below or the license accompanying this file. Do not
|
||||
remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
|
||||
|
||||
CLI tool - AssetBuilder
|
||||
Launch AssetBuilder and Verify the help message
|
||||
"""
|
||||
|
||||
import os
|
||||
import pytest
|
||||
import subprocess
|
||||
|
||||
|
||||
@pytest.mark.SUITE_smoke
|
||||
class TestCLIToolAssetBuilderWorks(object):
|
||||
def test_CLITool_AssetBuilder_Works(self, build_directory):
|
||||
file_path = os.path.join(build_directory, "AssetBuilder")
|
||||
help_message = "AssetBuilder is part of the Asset Processor"
|
||||
# Launch AssetBuilder
|
||||
output = subprocess.run([file_path, "-help"], capture_output=True, timeout=10)
|
||||
assert (
|
||||
len(output.stderr) == 0 and output.returncode == 0
|
||||
), f"Error occurred while launching {file_path}: {output.stderr}"
|
||||
# Verify help message
|
||||
assert help_message in str(output.stdout), f"Help Message: {help_message} is not present"
|
||||
@ -0,0 +1,32 @@
|
||||
"""
|
||||
All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
|
||||
its licensors.
|
||||
|
||||
For complete copyright and license terms please see the LICENSE at the root of this
|
||||
distribution (the "License"). All use of this software is governed by the License,
|
||||
or, if provided, by the license below or the license accompanying this file. Do not
|
||||
remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
|
||||
|
||||
CLI tool - AssetBundlerBatch
|
||||
Launch AssetBundlerBatch and Verify the help message
|
||||
"""
|
||||
|
||||
import os
|
||||
import pytest
|
||||
import subprocess
|
||||
|
||||
|
||||
@pytest.mark.SUITE_smoke
|
||||
class TestCLIToolAssetBundlerBatchWorks(object):
|
||||
def test_CLITool_AssetBundlerBatch_Works(self, build_directory):
|
||||
file_path = os.path.join(build_directory, "AssetBundlerBatch")
|
||||
help_message = "Specifies the Seed List file to operate on by path"
|
||||
# Launch AssetBundlerBatch
|
||||
output = subprocess.run([file_path, "--help"], capture_output=True, timeout=10)
|
||||
assert (
|
||||
len(output.stderr) == 0 and output.returncode == 0
|
||||
), f"Error occurred while launching {file_path}: {output.stderr}"
|
||||
# Verify help message
|
||||
assert help_message in str(output.stdout), f"Help Message: {help_message} is not present"
|
||||
@ -0,0 +1,26 @@
|
||||
"""
|
||||
All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
|
||||
its licensors.
|
||||
|
||||
For complete copyright and license terms please see the LICENSE at the root of this
|
||||
distribution (the "License"). All use of this software is governed by the License,
|
||||
or, if provided, by the license below or the license accompanying this file. Do not
|
||||
remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
|
||||
|
||||
CLI tool - AssetProcessorBatch
|
||||
Launch AssetProcessorBatch and Shutdown AssetProcessorBatch without any crash
|
||||
"""
|
||||
|
||||
import pytest
|
||||
|
||||
|
||||
@pytest.mark.parametrize("project", ["AutomatedTesting"])
|
||||
@pytest.mark.SUITE_smoke
|
||||
class TestsCLIToolAssetProcessorBatchWorks(object):
|
||||
def test_CLITool_AssetProcessorBatch_Works(self, workspace):
|
||||
"""
|
||||
Test Launching AssetProcessorBatch and verifies that is shuts down without issue
|
||||
"""
|
||||
workspace.asset_processor.batch_process()
|
||||
@ -0,0 +1,34 @@
|
||||
"""
|
||||
All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
|
||||
its licensors.
|
||||
|
||||
For complete copyright and license terms please see the LICENSE at the root of this
|
||||
distribution (the "License"). All use of this software is governed by the License,
|
||||
or, if provided, by the license below or the license accompanying this file. Do not
|
||||
remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
|
||||
|
||||
CLI tool - AzTestRunner
|
||||
Launch AzTestRunner and Verify the help message
|
||||
"""
|
||||
|
||||
import os
|
||||
import pytest
|
||||
import subprocess
|
||||
|
||||
|
||||
@pytest.mark.SUITE_smoke
|
||||
class TestCLIToolAzTestRunnerWorks(object):
|
||||
def test_CLITool_AzTestRunner_Works(self, build_directory):
|
||||
file_path = os.path.join(build_directory, "AzTestRunner")
|
||||
help_message = "OKAY Symbol found: AzRunUnitTests"
|
||||
# Launch AzTestRunner
|
||||
output = subprocess.run(
|
||||
[file_path, "AzTestRunner.Tests", "AzRunUnitTests", "--gtest_list_tests"], capture_output=True, timeout=10
|
||||
)
|
||||
assert (
|
||||
len(output.stderr) == 0 and output.returncode == 0
|
||||
), f"Error occurred while launching {file_path}: {output.stderr}"
|
||||
# Verify help message
|
||||
assert help_message in str(output.stdout), f"Help Message: {help_message} is not present"
|
||||
@ -0,0 +1,32 @@
|
||||
"""
|
||||
All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
|
||||
its licensors.
|
||||
|
||||
For complete copyright and license terms please see the LICENSE at the root of this
|
||||
distribution (the "License"). All use of this software is governed by the License,
|
||||
or, if provided, by the license below or the license accompanying this file. Do not
|
||||
remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
|
||||
|
||||
CLI tool - PythonBindingsExample
|
||||
Launch PythonBindingsExample and Verify the help message
|
||||
"""
|
||||
|
||||
import os
|
||||
import pytest
|
||||
import subprocess
|
||||
|
||||
|
||||
@pytest.mark.SUITE_smoke
|
||||
class TestCLIToolPythonBindingsExampleWorks(object):
|
||||
def test_CLITool_PythonBindingsExample_Works(self, build_directory):
|
||||
file_path = os.path.join(build_directory, "PythonBindingsExample")
|
||||
help_message = "--help Prints the help text"
|
||||
# Launch PythonBindingsExample
|
||||
output = subprocess.run([file_path, "-help"], capture_output=True, timeout=10)
|
||||
assert (
|
||||
len(output.stderr) == 0 and output.returncode == 1
|
||||
), f"Error occurred while launching {file_path}: {output.stderr}"
|
||||
# Verify help message
|
||||
assert help_message in str(output.stdout), f"Help Message: {help_message} is not present"
|
||||
@ -0,0 +1,32 @@
|
||||
"""
|
||||
All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
|
||||
its licensors.
|
||||
|
||||
For complete copyright and license terms please see the LICENSE at the root of this
|
||||
distribution (the "License"). All use of this software is governed by the License,
|
||||
or, if provided, by the license below or the license accompanying this file. Do not
|
||||
remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
|
||||
|
||||
CLI tool - SerializeContextTools
|
||||
Launch SerializeContextTools and Verify the help message
|
||||
"""
|
||||
|
||||
import os
|
||||
import pytest
|
||||
import subprocess
|
||||
|
||||
|
||||
@pytest.mark.SUITE_smoke
|
||||
class TestCLIToolSerializeContextToolsWorks(object):
|
||||
def test_CLITool_SerializeContextTools_Works(self, build_directory):
|
||||
file_path = os.path.join(build_directory, "SerializeContextTools")
|
||||
help_message = "Converts a file with an ObjectStream to the new JSON"
|
||||
# Launch SerializeContextTools
|
||||
output = subprocess.run([file_path, "-help"], capture_output=True, timeout=10)
|
||||
assert (
|
||||
len(output.stderr) == 0 and output.returncode == 0
|
||||
), f"Error occurred while launching {file_path}: {output.stderr}"
|
||||
# Verify help message
|
||||
assert help_message in str(output.stdout), f"Help Message: {help_message} is not present"
|
||||
@ -0,0 +1,32 @@
|
||||
"""
|
||||
All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
|
||||
its licensors.
|
||||
|
||||
For complete copyright and license terms please see the LICENSE at the root of this
|
||||
distribution (the "License"). All use of this software is governed by the License,
|
||||
or, if provided, by the license below or the license accompanying this file. Do not
|
||||
remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
"""
|
||||
|
||||
import pytest
|
||||
import os
|
||||
from automatedtesting_shared.base import TestAutomationBase
|
||||
import ly_test_tools.environment.file_system as file_system
|
||||
|
||||
|
||||
@pytest.mark.SUITE_smoke
|
||||
@pytest.mark.parametrize("launcher_platform", ["windows_editor"])
|
||||
@pytest.mark.parametrize("project", ["AutomatedTesting"])
|
||||
@pytest.mark.parametrize("level", ["temp_level"])
|
||||
class TestAutomation(TestAutomationBase):
|
||||
def test_Editor_NewExistingLevels_Works(self, request, workspace, editor, level, project, launcher_platform):
|
||||
def teardown():
|
||||
file_system.delete([os.path.join(workspace.paths.engine_root(), project, "Levels", level)], True, True)
|
||||
|
||||
request.addfinalizer(teardown)
|
||||
file_system.delete([os.path.join(workspace.paths.engine_root(), project, "Levels", level)], True, True)
|
||||
|
||||
from . import Editor_NewExistingLevels_Works as test_module
|
||||
|
||||
self._run_test(request, workspace, editor, test_module)
|
||||
@ -0,0 +1,44 @@
|
||||
"""
|
||||
All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
|
||||
its licensors.
|
||||
|
||||
For complete copyright and license terms please see the LICENSE at the root of this
|
||||
distribution (the "License"). All use of this software is governed by the License,
|
||||
or, if provided, by the license below or the license accompanying this file. Do not
|
||||
remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
|
||||
|
||||
Static tool scripts
|
||||
Launch Static tool and Verify the help message
|
||||
"""
|
||||
|
||||
import os
|
||||
import pytest
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
|
||||
def verify_help_message(static_tool):
|
||||
help_message = ["--help", "show this help message and exit"]
|
||||
output = subprocess.run([sys.executable, static_tool, "-h"], capture_output=True)
|
||||
assert (
|
||||
len(output.stderr) == 0 and output.returncode == 0
|
||||
), f"Error occurred while launching {static_tool}: {output.stderr}"
|
||||
# verify help message
|
||||
for message in help_message:
|
||||
assert message in str(output.stdout), f"Help Message: {message} is not present"
|
||||
|
||||
|
||||
@pytest.mark.parametrize("project", ["AutomatedTesting"])
|
||||
@pytest.mark.SUITE_smoke
|
||||
class TestStaticToolsGenPakShadersWorks(object):
|
||||
def test_StaticTools_GenPakShaders_Works(self, editor):
|
||||
static_tools = [
|
||||
os.path.join(editor.workspace.paths.engine_root(), "scripts", "bundler", "gen_shaders.py"),
|
||||
os.path.join(editor.workspace.paths.engine_root(), "scripts", "bundler", "get_shader_list.py"),
|
||||
os.path.join(editor.workspace.paths.engine_root(), "scripts", "bundler", "pak_shaders.py"),
|
||||
]
|
||||
|
||||
for tool in static_tools:
|
||||
verify_help_message(tool)
|
||||
@ -0,0 +1,39 @@
|
||||
"""
|
||||
All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
|
||||
its licensors.
|
||||
|
||||
For complete copyright and license terms please see the LICENSE at the root of this
|
||||
distribution (the "License"). All use of this software is governed by the License,
|
||||
or, if provided, by the license below or the license accompanying this file. Do not
|
||||
remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
|
||||
|
||||
UI Apps: AssetProcessor
|
||||
Open AssetProcessor, Wait until AssetProcessor is Idle
|
||||
Close AssetProcessor.
|
||||
"""
|
||||
|
||||
|
||||
import pytest
|
||||
from ly_test_tools.o3de.asset_processor import AssetProcessor
|
||||
|
||||
|
||||
@pytest.mark.parametrize("project", ["AutomatedTesting"])
|
||||
@pytest.mark.SUITE_smoke
|
||||
class TestsUIAppsAssetProcessorCheckIdle(object):
|
||||
@pytest.fixture(autouse=True)
|
||||
def setup_teardown(self, request):
|
||||
self.asset_processor = None
|
||||
|
||||
def teardown():
|
||||
self.asset_processor.stop()
|
||||
|
||||
request.addfinalizer(teardown)
|
||||
|
||||
def test_UIApps_AssetProcessor_CheckIdle(self, workspace):
|
||||
"""
|
||||
Test Launching AssetProcessorBatch and verifies that is shuts down without issue
|
||||
"""
|
||||
self.asset_processor = AssetProcessor(workspace)
|
||||
self.asset_processor.gui_process()
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:e1218e785966cba2973af5fcc2adeea81399ef4b9ceee9713e430d14090317bd
|
||||
size 272849
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:259892d63259cdc7b0cbee64c979d917820ea2bb402397ef63a3383ea5146b0a
|
||||
size 132288
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be
|
||||
size 262184
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:259892d63259cdc7b0cbee64c979d917820ea2bb402397ef63a3383ea5146b0a
|
||||
size 132288
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be
|
||||
size 262184
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:6f5b950e0dcd47ada8f34dc9f64976ebe156aeedb92d7e6d3467efbeddb3baa2
|
||||
size 17407674
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:ae30a71535b7283f4b19a0dee09ad98afc2d23e127d3da53c4da76650c0d9698
|
||||
size 17407642
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:5080ffd65c2c76fbd5db96f75496dae7d4992dfc2f6a5e9514345e1d74422143
|
||||
size 17407562
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:e9018429c312bced4975ab9e4d5cd6420a2fc8605b7d0929334dfd7dff50a79b
|
||||
size 272967
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be
|
||||
size 262184
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:2a53b3ffe745f824431028cc36d1990f55e9303bff99542f8ee3b85cd4417636
|
||||
size 272903
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be
|
||||
size 262184
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:35fa1fc96e3092de7200533183d875fe19585ca292e01af24dcc82497c8d400a
|
||||
size 17407562
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:93c2de86abea5c70845480f09dd86e9aebf2084c8e26444eee846ad9a3b18fe0
|
||||
size 17407562
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:65464a758912e1dc2cdd39606fe86d05315336635a42a659734b3755f6e4ad4c
|
||||
size 17407562
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:5517e2cd05060859a9e010f9df1f410a7fc9739a8ec6adbc0e214b894a7eef21
|
||||
size 272903
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be
|
||||
size 262184
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:55f771fb360a8b7a6d12e9b0e5f8824f9567d1869cb2757b7a3263539d03db1f
|
||||
size 17407561
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:b7718b09645345926ac1f59513114f64c6e146a49fac69f2835ce20c831953d7
|
||||
size 17407562
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:3b10f68c7f64dd775e6abc3250c019c1efdf498822b77bd98efb8f8c19513c0e
|
||||
size 17407562
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:646140ed507ea073e2472196661b204694d686142536e1912b173376324b302a
|
||||
size 274291
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be
|
||||
size 262184
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:965f0dd885e93c25183390a87675b5aef1d24d374ededc5e073a98e15318858e
|
||||
size 272903
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be
|
||||
size 262184
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:e9487342e768620c77288e3b8019ade03cd12eb1c19067b5d6408a185a62203e
|
||||
size 272967
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be
|
||||
size 262184
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:54b2dc4c443ea1e9b9aaed9d2aef1227ddeeac7db728b699cacd08811c81db8f
|
||||
size 17407562
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:ae84e1cb4cc4d54cb4cccb361663f8a4bb214e95ad0023cdd068657ef4705e43
|
||||
size 17407562
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:a5c76ddb855bd123944e9582f289298091e6dc9089d877e1175079df72a251d9
|
||||
size 17407562
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:2913bdf321ee6cbe2bf148444554ce0135b41ac5ddac42d62a32d8af4cf7ae1c
|
||||
size 17407562
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:eee27982bfd7ad92814e2287d5fae32f943a470120550e2ac93d2299a4969876
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:52834b00e1392b055902d9bc93c52c145e75f758250049e71dc2d6b40a377279
|
||||
size 272903
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be
|
||||
size 262184
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fb391ba2b3a7631e00b067610f1fa541bfd74d1d64e11aee72741cca5c2b7d90
|
||||
size 17407562
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:1802389900e2a041717f05ea9f05ae344edd8ce49b5332204a87d2124459561f
|
||||
size 17407722
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:3461c62fd0a988d4f3369116f9447d392cac1f4b1f259dc65aabe2fabbfafb37
|
||||
size 17407722
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d7d878cdef5de9038df845b5ef5709cc3afe2a5a3a606f3f5ac4575a733ffc5e
|
||||
size 273095
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be
|
||||
size 262184
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:6931308387c56833dcfa8887cc91cdf3ec2c8dcf47803118892b9734751f86c9
|
||||
size 274584
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be
|
||||
size 262184
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:75c123551336f3ff33d1e7b7a35609e1e5dc70cc360b59a23c11c8650ccf19a6
|
||||
size 17409393
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:5b3d4971af97025075197da8cb357d488ca899e3da8fb1e6f56082d6aace7101
|
||||
size 17407562
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:b79f9dec3428d224041ff2404c503c9df1a7fc8fb0e84bfec30374a918710b2a
|
||||
size 17407562
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:4adb1fccd94b0bcf444b4a6dc6f387b20bf22f0d83fefe1d938ffa6672e83a13
|
||||
size 17408454
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fd1588965564e750d4d5d56771d983dbd27cf36a072ad2a4bc00478d3cb4629b
|
||||
size 272903
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d4bb4e2ab7876994431f3e6e78a004ea5718e057077b37db14ea8a52637338be
|
||||
size 262184
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:179f70d479b1090b16dfbfc92e5354d69751ee0288b831b51840a936e279b2d1
|
||||
size 17407562
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:179f70d479b1090b16dfbfc92e5354d69751ee0288b831b51840a936e279b2d1
|
||||
size 17407562
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:709cb703dd55024d7863d8b64ffe74e9e02560e2faefb18e28f23e18a7186f52
|
||||
size 17409642
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:2ac95dd40dd51f41fdbf06528e47f2675d888da0c09fe516a5d78c90ed025f5d
|
||||
size 17407561
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:336249a60fe83032f9cad84b9e5cfe53e4fbc95d8bbeb27e7376629a6899622e
|
||||
size 17407562
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d831766ab559a54fa77535c1debb710cda545ae2c34e37cf4456b90769abe33a
|
||||
size 8389548
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:44607f0af9f20238fe5405800542230cb9cf374a9f7b94abee43910e177c9195
|
||||
size 17407508
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:44607f0af9f20238fe5405800542230cb9cf374a9f7b94abee43910e177c9195
|
||||
size 17407508
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:44607f0af9f20238fe5405800542230cb9cf374a9f7b94abee43910e177c9195
|
||||
size 17407508
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fdab340ad6c6dc6c1167e31afa061684be083360fc4108fa9f1fa4b15fe95d8c
|
||||
size 1310792
|
||||
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:44607f0af9f20238fe5405800542230cb9cf374a9f7b94abee43910e177c9195
|
||||
size 17407508
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue