Merge branch 'development' into memory/benchmarks

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
This commit is contained in:
Esteban Papp
2021-12-08 10:45:48 -08:00
279 changed files with 7879 additions and 3700 deletions
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ac841c02e81c9ae23476522b7e517889d746d4ff32b3251ac4360168f39b30a3
size 450708
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3653ca7fb42c7e5991815c17fc9ebeab14a1aa861bfb1d37e233ada66a835f00
size 7188
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a30b85428202c548e77cdcc0a595f9f26e82d29622be26891d569f4779a75830
size 1802388
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a3d76b7c93f8873ca7c4013dcc4eff887c25552c9c5847290481306656b22069
size 3668
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:219f57137c5bd44093762ea9d0fc24308679956b980f26bf194edd3a1798fcda
size 3668
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:96ed61c66d1d1f71e940ab75899ee253007e704004e1157c900c6308151a8bf1
size 1802388
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:70a7dc4e2455624067e842b059954f6c4bb9b0debc3cb1ffa783b14bffc61786
size 7188
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:7f5a945c61f92f3da77dfd9fdd2c95aa257f4df6bcb82483c608ab660bb72e5f
size 450708
@@ -46,6 +46,18 @@ def get_component_type_id(component_name):
return component_type_id
def get_level_component_type_id(component_name):
"""
Gets the component_type_id from a given component name
:param component_name: String of component name to search for
:return component type ID
"""
type_ids_list = editor.EditorComponentAPIBus(bus.Broadcast, 'FindComponentTypeIdsByEntityType', [component_name],
entity.EntityType().Level)
component_type_id = type_ids_list[0]
return component_type_id
def add_level_component(component_name):
"""
Adds the specified component to the Level Inspector
@@ -145,6 +157,20 @@ def get_component_property_value(component, component_propertyPath):
print(f'FAILURE: Could not get value from {component_propertyPath}')
return None
def set_component_property_value(component, component_propertyPath, value):
"""
Given a component name and component property path, set component property value
:param component: Component object to act on.
:param componentPropertyPath: String of component property. (e.g. 'Settings|Visible')
:param value: new value for the variable being changed in the component
"""
componentPropertyObj = editor.EditorComponentAPIBus(bus.Broadcast, 'SetComponentProperty', component,
component_propertyPath, value)
if componentPropertyObj.IsSuccess():
print(f'{component_propertyPath} set to {value}')
else:
print(f'FAILURE: Could not set value in {component_propertyPath}')
def get_property_tree(component):
"""
@@ -25,8 +25,8 @@ class TestAutomation(TestAutomationBase):
def test_NvCloth_AddClothSimulationToMesh(self, request, workspace, editor, launcher_platform):
from .tests import NvCloth_AddClothSimulationToMesh as test_module
self._run_test(request, workspace, editor, test_module, use_null_renderer = self.use_null_renderer, enable_prefab_system=False)
self._run_test(request, workspace, editor, test_module, use_null_renderer = self.use_null_renderer)
def test_NvCloth_AddClothSimulationToActor(self, request, workspace, editor, launcher_platform):
from .tests import NvCloth_AddClothSimulationToActor as test_module
self._run_test(request, workspace, editor, test_module, use_null_renderer = self.use_null_renderer, enable_prefab_system=False)
self._run_test(request, workspace, editor, test_module, use_null_renderer = self.use_null_renderer)
@@ -0,0 +1,168 @@
"""
Copyright (c) Contributors to the Open 3D Engine Project.
For complete copyright and license terms please see the LICENSE at the root of this distribution.
SPDX-License-Identifier: Apache-2.0 OR MIT
"""
#fmt: off
class Tests():
level_components_added = ("Level components added correctly", "Failed to create level components")
create_terrain_spawner_entity = ("Terrain_spawner_entity created successfully", "Failed to create terrain_spawner_entity")
create_height_provider_entity = ("Height_provider_entity created successfully", "Failed to create height_provider_entity")
bounds_max_changed = ("Terrain World Bounds Max changed successfully", "Failed to change Terrain World Bounds Max")
bounds_min_changed = ("Terrain World Bounds Min changed successfully", "Failed to change Terrain World Bounds Min")
height_query_changed = ("Terrain World Height Query Resolution changed successfully", "Failed to change Height Query Resolution")
box_dimensions_changed = ("Aabb dimensions changed successfully", "Failed to change Aabb dimensions")
shape_changed = ("Shape changed successfully", "Failed Shape change")
frequency_changed = ("Frequency changed successfully", "Failed Frequency change")
entity_added = ("Entity added successfully", "Failed Entity add")
terrain_exists = ("Terrain exists at the provided point", "Terrain does not exist at the provided point")
terrain_does_not_exist = ("Terrain does not exist at the provided point", "Terrain exists at the provided point")
values_not_the_same = ("The tested values are not the same", "The tested values are the same")
no_errors_and_warnings_found = ("No errors and warnings found", "Found errors and warnings")
#fmt: on
def Terrain_World_ConfigurationWorks():
"""
Summary:
Test the Terrain World configuration changes when parameters are changed in the component
Test Steps:
Expected Behavior:
The Editor is stable there are no warnings or errors.
Test Steps:
1) Start the Tracer to catch any errors and warnings
2) Load the base level
3) Load the level components
4) Create 2 test entities, one parent at 512.0, 512.0, 50.0 and one child at the default position and add the required components
5) Set the base Terrain World values
6) Change the Axis Aligned Box Shape dimensions
7) Set the Shape Reference to terrain_spawner_entity
8) Set the FastNoise Gradient frequency to 0.01
9) Set the Gradient List to height_provider_entity
10) Disable and Enable the Terrain Gradient List so that it is recognised
11) Check terrain exists at a known position in the world
12) Check terrain does not exist at a known position outside the world
13) Check height value is the expected one when query resolution is changed
"""
from editor_python_test_tools.editor_entity_utils import EditorEntity
from editor_python_test_tools.utils import TestHelper as helper, Report
from editor_python_test_tools.utils import Report, Tracer
import editor_python_test_tools.hydra_editor_utils as hydra
import azlmbr.math as azmath
import azlmbr.legacy.general as general
import azlmbr.bus as bus
import azlmbr.editor as editor
import azlmbr.terrain as terrain
import math
SET_BOX_X_SIZE = 2048.0
SET_BOX_Y_SIZE = 2048.0
SET_BOX_Z_SIZE = 100.0
CLAMP = 1
helper.init_idle()
# 1) Start the Tracer to catch any errors and warnings
with Tracer() as section_tracer:
# 2) Load the level
helper.open_level("", "Base")
helper.wait_for_condition(lambda: general.get_current_level_name() == "Base", 2.0)
# 3) Load the level components
terrain_world_component = hydra.add_level_component("Terrain World")
terrain_world_renderer = hydra.add_level_component("Terrain World Renderer")
Report.critical_result(Tests.level_components_added,
terrain_world_component is not None and terrain_world_renderer is not None)
# 4) Create 2 test entities, one parent at 512.0, 512.0, 50.0 and one child at the default position and add the required components
entity1_components_to_add = ["Axis Aligned Box Shape", "Terrain Layer Spawner", "Terrain Height Gradient List", "Terrain Physics Heightfield Collider"]
entity2_components_to_add = ["Shape Reference", "Gradient Transform Modifier", "FastNoise Gradient"]
terrain_spawner_entity = hydra.Entity("TerrainEntity")
terrain_spawner_entity.create_entity(azmath.Vector3(512.0, 512.0, 50.0), entity1_components_to_add)
Report.result(Tests.create_terrain_spawner_entity, terrain_spawner_entity.id.IsValid())
height_provider_entity = hydra.Entity("HeightProviderEntity")
height_provider_entity.create_entity(azmath.Vector3(0.0, 0.0, 0.0), entity2_components_to_add,terrain_spawner_entity.id)
Report.result(Tests.create_height_provider_entity, height_provider_entity.id.IsValid())
# Give everything a chance to finish initializing.
general.idle_wait_frames(1)
# 5) Set the base Terrain World values
world_bounds_max = azmath.Vector3(1100.0, 1100.0, 1100.0)
world_bounds_min = azmath.Vector3(10.0, 10.0, 10.0)
height_query_resolution = azmath.Vector2(1.0, 1.0)
hydra.set_component_property_value(terrain_world_component, "Configuration|World Bounds (Max)", world_bounds_max)
hydra.set_component_property_value(terrain_world_component, "Configuration|World Bounds (Min)", world_bounds_min)
hydra.set_component_property_value(terrain_world_component, "Configuration|Height Query Resolution (m)", height_query_resolution)
world_max = hydra.get_component_property_value(terrain_world_component, "Configuration|World Bounds (Max)")
world_min = hydra.get_component_property_value(terrain_world_component, "Configuration|World Bounds (Min)")
world_query = hydra.get_component_property_value(terrain_world_component, "Configuration|Height Query Resolution (m)")
Report.result(Tests.bounds_max_changed, world_max == world_bounds_max)
Report.result(Tests.bounds_min_changed, world_min == world_bounds_min)
Report.result(Tests.height_query_changed, world_query == height_query_resolution)
# 6) Change the Axis Aligned Box Shape dimensions
box_dimensions = azmath.Vector3(SET_BOX_X_SIZE, SET_BOX_Y_SIZE, SET_BOX_Z_SIZE)
terrain_spawner_entity.get_set_test(0, "Axis Aligned Box Shape|Box Configuration|Dimensions", box_dimensions)
box_shape_dimensions = hydra.get_component_property_value(terrain_spawner_entity.components[0], "Axis Aligned Box Shape|Box Configuration|Dimensions")
Report.result(Tests.box_dimensions_changed, box_dimensions == box_shape_dimensions)
# 7) Set the Shape Reference to terrain_spawner_entity
height_provider_entity.get_set_test(0, "Configuration|Shape Entity Id", terrain_spawner_entity.id)
entityId = hydra.get_component_property_value(height_provider_entity.components[0], "Configuration|Shape Entity Id")
Report.result(Tests.shape_changed, entityId == terrain_spawner_entity.id)
# 8) Set the FastNoise Gradient frequency to 0.01
frequency = 0.01
height_provider_entity.get_set_test(2, "Configuration|Frequency", frequency)
frequencyVal = hydra.get_component_property_value(height_provider_entity.components[2], "Configuration|Frequency")
Report.result(Tests.frequency_changed, math.isclose(frequency, frequencyVal, abs_tol = 0.00001))
# 9) Set the Gradient List to height_provider_entity
propertyTree = hydra.get_property_tree(terrain_spawner_entity.components[2])
propertyTree.add_container_item("Configuration|Gradient Entities", 0, height_provider_entity.id)
checkID = propertyTree.get_container_item("Configuration|Gradient Entities", 0)
Report.result(Tests.entity_added, checkID.GetValue() == height_provider_entity.id)
general.idle_wait_frames(1)
# 10) Disable and Enable the Terrain Gradient List so that it is recognised, EnableComponents performs both actions.
editor.EditorComponentAPIBus(bus.Broadcast, 'EnableComponents', [terrain_spawner_entity.components[2]])
# 11) Check terrain exists at a known position in the world
terrainExists = not terrain.TerrainDataRequestBus(bus.Broadcast, 'GetIsHoleFromFloats', 10.0, 10.0, CLAMP)
Report.result(Tests.terrain_exists, terrainExists)
terrainExists = not terrain.TerrainDataRequestBus(bus.Broadcast, 'GetIsHoleFromFloats', 1100.0, 1100.0, CLAMP)
Report.result(Tests.terrain_exists, terrainExists)
# 12) Check terrain does not exist at a known position outside the world
terrainDoesNotExist = terrain.TerrainDataRequestBus(bus.Broadcast, 'GetIsHoleFromFloats', 1101.0, 1101.0, CLAMP)
Report.result(Tests.terrain_does_not_exist, terrainDoesNotExist)
terrainDoesNotExist = terrain.TerrainDataRequestBus(bus.Broadcast, 'GetIsHoleFromFloats', 9.0, 9.0, CLAMP)
Report.result(Tests.terrain_does_not_exist, terrainDoesNotExist)
# 13) Check height value is the expected one when query resolution is changed
testpoint = terrain.TerrainDataRequestBus(bus.Broadcast, 'GetHeightFromFloats', 10.5, 10.5, CLAMP)
height_query_resolution = azmath.Vector2(0.5, 0.5)
hydra.set_component_property_value(terrain_world_component, "Configuration|Height Query Resolution (m)", height_query_resolution)
general.idle_wait_frames(1)
testpoint2 = terrain.TerrainDataRequestBus(bus.Broadcast, 'GetHeightFromFloats', 10.5, 10.5, CLAMP)
Report.result(Tests.values_not_the_same, not math.isclose(testpoint, testpoint2, abs_tol = 0.000000001))
helper.wait_for_condition(lambda: section_tracer.has_errors or section_tracer.has_asserts, 1.0)
for error_info in section_tracer.errors:
Report.info(f"Error: {error_info.filename} {error_info.function} | {error_info.message}")
for assert_info in section_tracer.asserts:
Report.info(f"Assert: {assert_info.filename} {assert_info.function} | {assert_info.message}")
if __name__ == "__main__":
from editor_python_test_tools.utils import Report
Report.start_test(Terrain_World_ConfigurationWorks)
@@ -36,3 +36,6 @@ class TestAutomation(EditorTestSuite):
class test_TerrainMacroMaterialComponent_MacroMaterialActivates(EditorSharedTest):
from .EditorScripts import TerrainMacroMaterialComponent_MacroMaterialActivates as test_module
class test_TerrainWorld_ConfigurationWorks(EditorSharedTest):
from .EditorScripts import Terrain_World_ConfigurationWorks as test_module
+4
View File
@@ -0,0 +1,4 @@
/.maya_data/*
/.mayaSwatches/*
*.swatch
[Uu]ser_env.bat
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:57848334af0220b7348a8f2583080acf1d9c139a78c9fb1a93a7d2bce61f3c40
size 41335413
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9b936b72b5b45b52c188bf9f930d6066af65f0d79ff8abf5dc08927d97ac465e
size 55264
@@ -0,0 +1,35 @@
{
"description": "",
"materialType": "Materials/Types/StandardPBR.materialtype",
"parentMaterial": "",
"propertyLayoutVersion": 3,
"properties": {
"baseColor": {
"color": [
0.0,
0.0,
0.0,
1.0
]
},
"emissive": {
"color": [
0.0,
0.0,
0.0,
1.0
]
},
"irradiance": {
"color": [
0.0,
0.0,
0.0,
1.0
]
},
"opacity": {
"factor": 1.0
}
}
}
@@ -0,0 +1,35 @@
{
"description": "",
"materialType": "Materials/Types/StandardPBR.materialtype",
"parentMaterial": "",
"propertyLayoutVersion": 3,
"properties": {
"baseColor": {
"color": [
0.0,
1.0,
0.0,
1.0
]
},
"emissive": {
"color": [
0.0,
0.0,
0.0,
1.0
]
},
"irradiance": {
"color": [
0.0,
1.0,
0.0,
1.0
]
},
"opacity": {
"factor": 1.0
}
}
}
@@ -0,0 +1,49 @@
{
"description": "",
"materialType": "Materials/Types/StandardPBR.materialtype",
"parentMaterial": "",
"propertyLayoutVersion": 3,
"properties": {
"baseColor": {
"color": [
0.800000011920929,
0.800000011920929,
0.800000011920929,
1.0
],
"textureMap": "Textures/arch_1k_basecolor.png"
},
"general": {
"applySpecularAA": true
},
"irradiance": {
"color": [
1.0,
0.885053813457489,
0.801281750202179,
1.0
]
},
"metallic": {
"textureMap": "Textures/arch_1k_metallic.png"
},
"normal": {
"textureMap": "Textures/arch_1k_normal.jpg"
},
"occlusion": {
"diffuseTextureMap": "Textures/arch_1k_ao.png"
},
"opacity": {
"factor": 1.0
},
"parallax": {
"factor": 0.050999999046325687,
"pdo": true,
"quality": "High",
"useTexture": false
},
"roughness": {
"textureMap": "Textures/arch_1k_roughness.png"
}
}
}
@@ -0,0 +1,54 @@
{
"description": "",
"materialType": "Materials/Types/StandardPBR.materialtype",
"parentMaterial": "",
"propertyLayoutVersion": 3,
"properties": {
"baseColor": {
"color": [
0.800000011920929,
0.800000011920929,
0.800000011920929,
1.0
],
"textureMap": "Textures/bricks_1k_basecolor.png"
},
"clearCoat": {
"factor": 0.5,
"normalMap": "Textures/bricks_1k_normal.jpg",
"roughness": 0.5
},
"general": {
"applySpecularAA": true
},
"irradiance": {
"color": [
1.0,
0.9703211784362793,
0.9703211784362793,
1.0
]
},
"metallic": {
"textureMap": "Textures/bricks_1k_metallic.png"
},
"normal": {
"textureMap": "Textures/bricks_1k_normal.jpg"
},
"occlusion": {
"diffuseTextureMap": "Textures/bricks_1k_ao.png"
},
"opacity": {
"factor": 1.0
},
"parallax": {
"algorithm": "ContactRefinement",
"factor": 0.03500000014901161,
"quality": "Medium",
"useTexture": false
},
"roughness": {
"textureMap": "Textures/bricks_1k_roughness.png"
}
}
}
@@ -0,0 +1,51 @@
{
"description": "",
"materialType": "Materials/Types/StandardPBR.materialtype",
"parentMaterial": "",
"propertyLayoutVersion": 3,
"properties": {
"baseColor": {
"color": [
0.800000011920929,
0.800000011920929,
0.800000011920929,
1.0
],
"textureMap": "Textures/floor_1k_basecolor.png"
},
"clearCoat": {
"enable": true,
"influenceMap": "Textures/floor_1k_ao.png",
"normalMap": "Textures/floor_1k_normal.png",
"roughness": 0.25
},
"general": {
"applySpecularAA": true
},
"irradiance": {
"color": [
1.0,
0.9404135346412659,
0.8688944578170776,
1.0
]
},
"normal": {
"textureMap": "Textures/floor_1k_normal.png"
},
"occlusion": {
"diffuseTextureMap": "Textures/floor_1k_ao.png"
},
"opacity": {
"factor": 1.0
},
"parallax": {
"factor": 0.012000000104308129,
"pdo": true,
"useTexture": false
},
"roughness": {
"textureMap": "Textures/floor_1k_roughness.png"
}
}
}
@@ -0,0 +1,44 @@
{
"description": "",
"materialType": "Materials/Types/StandardPBR.materialtype",
"parentMaterial": "",
"propertyLayoutVersion": 3,
"properties": {
"baseColor": {
"color": [
0.800000011920929,
0.800000011920929,
0.800000011920929,
1.0
],
"textureBlendMode": "Lerp",
"textureMap": "Textures/roof_1k_basecolor.png"
},
"general": {
"applySpecularAA": true
},
"metallic": {
"useTexture": false
},
"normal": {
"factor": 0.5,
"flipY": true,
"textureMap": "Textures/roof_1k_normal.jpg"
},
"occlusion": {
"diffuseTextureMap": "Textures/roof_1k_ao.png"
},
"opacity": {
"factor": 1.0
},
"parallax": {
"algorithm": "ContactRefinement",
"factor": 0.019999999552965165,
"quality": "Medium",
"useTexture": false
},
"roughness": {
"textureMap": "Textures/roof_1k_roughness.png"
}
}
}
@@ -0,0 +1,35 @@
{
"description": "",
"materialType": "Materials/Types/StandardPBR.materialtype",
"parentMaterial": "",
"propertyLayoutVersion": 3,
"properties": {
"baseColor": {
"color": [
0.0,
0.0,
1.0,
1.0
]
},
"emissive": {
"color": [
0.0,
0.0,
0.0,
1.0
]
},
"irradiance": {
"color": [
0.0,
0.0,
1.0,
1.0
]
},
"opacity": {
"factor": 1.0
}
}
}
@@ -0,0 +1,35 @@
{
"description": "",
"materialType": "Materials/Types/StandardPBR.materialtype",
"parentMaterial": "",
"propertyLayoutVersion": 3,
"properties": {
"baseColor": {
"color": [
0.800000011920929,
0.0,
0.0,
1.0
]
},
"emissive": {
"color": [
0.0,
0.0,
0.0,
1.0
]
},
"irradiance": {
"color": [
1.0,
0.0,
0.0,
1.0
]
},
"opacity": {
"factor": 1.0
}
}
}
@@ -0,0 +1,19 @@
{
"description": "",
"materialType": "Materials/Types/StandardPBR.materialtype",
"parentMaterial": "",
"propertyLayoutVersion": 3,
"properties": {
"emissive": {
"color": [
0.0,
0.0,
0.0,
1.0
]
},
"opacity": {
"factor": 1.0
}
}
}
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d9c14dc81887be7647d9afa9e5481634eded0b1d0285b59bb76bb2a91326ca8a
size 3369
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9f21e251c50a657956ba8b401f102b8a3237a0c9c78eab0427332eb3ad8f5952
size 281259
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1b37ec99d6f8d26b8313315d801b9c378456ed9ec31cc2e0566c17ea3287b4fa
size 1643629
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:57657925d24ceb83881e614b3056b82dfc7197a3eebbb707a47f6721249d47c3
size 108869
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:fc5a747fef8c4d830b72e250645925f41125ea75c18b6fb094cafe7b19850ca5
size 70950
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8438ee2f06842f54e493fe1eda34b6ca39e6db19d2e0f21342f0f4e52fc3f1e3
size 689118
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0e59f003d7c8d26e7ec8460acec442f31cf7a06eb76008989c1ae6fccd8e2f15
size 537441
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b1c69c97ffc402d63130b680af75128b431504c4dedcbd15a5fbb41c142317fe
size 1305835
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6650f449128dee04f513961b9d65d81105f2bd4fa580f4dbd9d6fb7b0af932bc
size 275302
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f482b7b57d180c6df76b750d05547151731fc6c61d2b9674f3b9daa5ab0ac225
size 440844
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:955f60ebbe10948e9d47cb90e0e0359c4ee26bd8e76d95292a673a2adb68f410
size 82102
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d5d0f40ab7b5153a44b87ee0c83c65ddc69cf845d16c8c9c3c2c043f85c1f04f
size 542782
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e3d169b73a2852e404eaa113e91d32b66e0d45a1b55598cc58f64e16c9565bf9
size 729137
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f34b38f6e205b6bffec72ddfd1305a66d0146d61bcc2ef901fd146a0ec2708de
size 1934899
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9745b60c53a4b9fa33a6a3713b9b06ec7679883524533de44628cfe0d26ae038
size 377230
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:03eba2d92ed70e04d5278152e945cf3a170750b71a04fd0f835fd6030b731720
size 166767
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e35858a269d42405702102e7f7972a6330c3eaacfe637148c676e14d5c901c29
size 784675
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:22b80bfc1226fb587b230c51e9dac7fce6e295a4f0674326e96dc1232f40548b
size 901463
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b6743770a3428721a42a25a331fdb1e9895f71848c8215377e690b7cf9b7397f
size 1756093
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:756105faa27e722d6cc5915f33f8bcf9fd7afc022c41276a8c0e3b1f122303a3
size 501917
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:08fa78ce8e7840189d22442ed46863b4eaf5a4a99c0655690a2c47b1b0ebd9ce
size 1399902
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4c24b269cd413b86da8cdd44bb639f3b95cfd1a8c53a3a941cb5a22a1042f85d
size 689214
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:30a1308326a5b0288147d0fb92230ebd1cef107180e38f7d5795bdc13a62e368
size 3389
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:51c661aa2ee3fb4b4735005a71e734eb25e433ef73ded5131b110e4df2e94acf
size 384316
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4619ec32e2de143db42639e0a4e0dfb174eb85057eb20f9e0d0af59e40977d9a
size 11229
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a505d441c79f3ab674fd5a6b879a430970400fb9f56b379dde00900da296a47e
size 599094
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:552608851205bde18e2bc2f7cbf475ccefbb182c7bfcb9430fa931da22363c80
size 1836310
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:79f1c3430a193ee78c72b84a461612ffd79aa23374949af13a200ec9a301ba2d
size 274678
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d280d5676ccfd6e4b6efdc53e828cc6823f44339a87ec9cee8a79d989ad46175
size 127305
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5c4fb7c8012891c7af4ff371c8e6a8ef85ef1160a5b93012b964158ab48b8e4a
size 760602
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a9fe904a58b248937adde2b48ba320da5139700d03e3183fbadfaaa0ac8bb6f5
size 651508
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:37d461594dca7eb3da8f6f135511d38efc7c1f333afb98d286fb36a0034f3100
size 2158620
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8e95e08eed20fb4d44a6461f38f27f21fd3ae3f024550afed95ecf3bc30929b1
size 297329
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1b00b684b53854ec24e86441e59220e6c49948429bd6fb7edab7058a11e8f92e
size 139998
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5a6d428bf17ecee32d47c3feab27567a882b97dfa733dcf6ca8bf1b0bd0a025a
size 908698
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ab2c93badd7b72f45990c3859d6ddc7f2436a4aa5e93c0de65a139ea99120a97
size 628789
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:97ec8bd597b0805a8a36bcd90ccdba2ae9430ed3a8631b0f7f87796fb2ceefc5
size 2128105
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f8bbbc46f0f1ccfefec202b1e26ecbd418d3283037746bd63a892d1a930fb36d
size 282637
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:44db84371fb81e1712b5f6aa9777fcfe76728dc25a51f0423e07c294b062c724
size 137528
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c07d4a1af570a6b3817e97c92daa17f2593ea2b88e0e167ed43f7869b77971ab
size 881064
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4310237ce83738635b3880ccd896f78ea2c70bebadd620cb6ffaaccc78ba7cbf
size 9231896
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e093cf9538bb40615d32bec6fa9c60d4308bc017c5ab02a7c388310159bc87fe
size 8342440
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:465efab4da8d2b6698c83844d2fbe662e38a92f278aa27d356bbc1bca1e23f8b
size 8879938
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b4faebdc849479a6b5d10db4cac8b6e9823bf447aeb4b45945f6acd43333def8
size 4557863
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:064fbdba14e1ca04e438f4ec85d3f9a0fe3203620ee2a014113ec99454fbee65
size 2709058
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2c8159b1ad888143ec3cbf5e2535f87abbe238a1474619696355d11bc4e4bb49
size 812014
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0da92f21f46502a7c58c1a7ce7280354b4b41e553a5bf181d9962cacf8ed2191
size 2327816
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2a701afeb01e19efdff72393370c86ee148f6d81c1551bcbd211937df503be9b
size 3694284
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:368262bb832ab61b4649aadffe4158b64d46b70985e99106300fa0c7a7989c35
size 666377
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2021b64706bc328959d521f056dcb9b9acf3062a5f9ad35da9e93b2351dcab97
size 1371185
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:fdbb251cf483ffccc6cb1b344eba1b3262fa8087c37a36aa843f0c0e9d222f8f
size 403018
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8b67d6bea4c9fbc8412944b261a0c0f2dc1dc2e4103a6742bfb57d3c2d36429c
size 499028
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ae4c4d95bb92dfe25f5fba8564780c10ee663268360fccf1aa707b6c7c6a079c
size 1121073
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5429087af4e8c33d19b2f13bd194c983bcdbe0c43165bea3dc0711874c2e50b9
size 523398
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a1b6588cfdaa69b671ba879aa56712e88d6fcd74c160a751440441c9f18c727b
size 2102967
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:09c5ff45b66e5a65746c9bef6cbad8a897f58552b896ca6692e5498d91da71ab
size 2166239
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:abd3b68e5c2982ef558593017bd4c7a6e3f23681827aa8b8e19dbe21564493e2
size 1158454
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:27ee68e81cb549f65e437debaf97f8eaa57a0f6975a15adee7f395a8bb6f0028
size 2211896
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d3ddbc3833531aba81f9e16fcc1e9c88af1c8b329a8e8a4dfb6a9df08913085a
size 977058
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f44f224b5a162f56ad0e8b931f781eed5fdbfd5a8b9b143aedb5ab69f5c3ca29
size 564113
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c456fec0df8f7c72680b855a2c8dd183014429e93bce68a4b2c38059a765c5b6
size 126769
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ee04cb3dc6a718510f662ae06e04fe8fe52230472f4a504a4a513ab3ab344790
size 479191
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4097ae87d2d55653c44efa6c607da9513f35057a2556f2f41cd412e1ef447dc4
size 755476
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9ce7d28833be640b1b4809040580b25bc5ed0caa10f9fcb8b7f28c5b952102d5
size 689711
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:cd515352a030a1a8cf766dfbf9ff78ce27608349e7b661e48d5ec0b59c6d5a93
size 1376341
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:883499e06b12d8f25d3381954d56c34aefc9346a972c3a6a21ec5bb34029160c
size 427516
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5291109e90b65a1581ea05046d01c6918c10c87805790af915d62e57acd2d29a
size 1148004
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:40b175859bf806237bee5ea72efc935b2dd28e3f6198d0604d5e474aea3725c7
size 1215323
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:24fdf0849349745e7abdd0c42baa82ec2cc2d5b5a9c1a683bbf677a156251316
size 1316334
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:04fba251cdae222d9f82b6cf6d1e8135ee1e066911967489f8c07ba20d076b14
size 436348
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:80d91120f7213e835e342c150386e468865c5b68994915e9febf54c5cc83cf5a
size 1883340
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:bf6fd8259710d106daab4c459172ed3e98f29640d655b238a462cd36039be40a
size 543386
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:89ef6e57efdf8c232b771a4ff988799f9f4ae5aefe2149578c9fa661b8f66cd9
size 1062809
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9d1dd751aaed6dce2085e1a886be1d72845dd68df34d33cc8401618b03aed991
size 1509938
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:fb0a952c7976e646a5c14b222e23a8fde2510425567e12c73c6f6dc957108d0b
size 1326209

Some files were not shown because too many files have changed in this diff Show More