diff --git a/Assets/GAME/Prefabs/Player/Player.prefab b/Assets/GAME/Prefabs/Player/Player.prefab
index b9ccef89..1ef7ef44 100644
--- a/Assets/GAME/Prefabs/Player/Player.prefab
+++ b/Assets/GAME/Prefabs/Player/Player.prefab
@@ -430,6 +430,7 @@ GameObject:
- component: {fileID: 4782095384616423459}
- component: {fileID: 1509526206074017255}
- component: {fileID: 1890885114087150018}
+ - component: {fileID: -4423719270533760289}
- component: {fileID: 656527942023048284}
- component: {fileID: 4969709554801488359}
m_Layer: 10
@@ -919,6 +920,7 @@ MonoBehaviour:
- {fileID: 4232943699575871128}
- {fileID: 7331404443355966726}
- {fileID: 3026700730577618004}
+ - {fileID: -4423719270533760289}
ownerOnlyObjects:
- {fileID: 3016760143010852029}
- {fileID: 5457574158965716017}
@@ -1040,6 +1042,21 @@ MonoBehaviour:
nameLabel: {fileID: 7210073718532933207}
faceCamera: 1
flipHorizontal: 0
+--- !u!114 &-4423719270533760289
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 5167716622245296089}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: fabb912832c44b945a26c8ef03db222a, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: Assembly-CSharp::Ashwild.Crafting.CraftDiscovery
+ _componentIndexCache: 255
+ _addedNetworkObject: {fileID: -5889822588553870904}
+ _networkObjectCache: {fileID: 0}
--- !u!114 &656527942023048284
MonoBehaviour:
m_ObjectHideFlags: 0
diff --git a/Assets/GAME/Prefabs/UI/IngredientSlotUI.prefab b/Assets/GAME/Prefabs/UI/IngredientSlotUI.prefab
index 1e284c4c..a69452cc 100644
--- a/Assets/GAME/Prefabs/UI/IngredientSlotUI.prefab
+++ b/Assets/GAME/Prefabs/UI/IngredientSlotUI.prefab
@@ -1,5 +1,69 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
+--- !u!1 &4431250198828445795
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 4036155841356705039}
+ - component: {fileID: 6008748456738279482}
+ m_Layer: 5
+ m_Name: GameObject
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &4036155841356705039
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4431250198828445795}
+ 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_ConstrainProportionsScale: 0
+ m_Children:
+ - {fileID: 7818010301368158588}
+ - {fileID: 3950729247332657127}
+ m_Father: {fileID: 2991053326735533102}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 1, y: 1}
+ m_AnchoredPosition: {x: 0, y: 0}
+ m_SizeDelta: {x: -20.8044, y: -20.8044}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &6008748456738279482
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4431250198828445795}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 59f8146938fff824cb5fd77236b75775, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.VerticalLayoutGroup
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_ChildAlignment: 4
+ m_Spacing: 0
+ m_ChildForceExpandWidth: 1
+ m_ChildForceExpandHeight: 1
+ m_ChildControlWidth: 1
+ m_ChildControlHeight: 0
+ m_ChildScaleWidth: 1
+ m_ChildScaleHeight: 1
+ m_ReverseArrangement: 0
--- !u!1 &4933178774466085049
GameObject:
m_ObjectHideFlags: 0
@@ -25,17 +89,17 @@ RectTransform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4933178774466085049}
- m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ 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_ConstrainProportionsScale: 0
m_Children: []
- m_Father: {fileID: 2991053326735533102}
+ m_Father: {fileID: 4036155841356705039}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
- m_AnchorMin: {x: 0.5, y: 1}
- m_AnchorMax: {x: 0.5, y: 1}
- m_AnchoredPosition: {x: 0, y: -10.6}
- m_SizeDelta: {x: 126.0229, y: 126.0229}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 0, y: 0}
+ m_AnchoredPosition: {x: 0, y: 0}
+ m_SizeDelta: {x: 0, y: 128}
m_Pivot: {x: 0.5, y: 1}
--- !u!222 &8806915406871817360
CanvasRenderer:
@@ -101,17 +165,17 @@ RectTransform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5498742472193566416}
- m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ 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_ConstrainProportionsScale: 0
m_Children: []
- m_Father: {fileID: 2991053326735533102}
+ m_Father: {fileID: 4036155841356705039}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
- m_AnchorMin: {x: 0.5, y: 0}
- m_AnchorMax: {x: 0.5, y: 0}
- m_AnchoredPosition: {x: 0, y: 13.2}
- m_SizeDelta: {x: 0, y: 0}
+ m_AnchorMin: {x: 0, y: 1}
+ m_AnchorMax: {x: 0, y: 1}
+ m_AnchoredPosition: {x: 89.5978, y: -180.48}
+ m_SizeDelta: {x: 66.59, y: 0}
m_Pivot: {x: 0.5, y: 0}
--- !u!222 &4058813637582350659
CanvasRenderer:
@@ -258,8 +322,7 @@ RectTransform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- - {fileID: 7818010301368158588}
- - {fileID: 3950729247332657127}
+ - {fileID: 4036155841356705039}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
@@ -319,5 +382,6 @@ MonoBehaviour:
m_EditorClassIdentifier: Assembly-CSharp::IngredientSlotUI
iconImage: {fileID: 6656192589770360378}
quantityText: {fileID: 2097148993551982845}
+ mysteryIcon: {fileID: 21300000, guid: 674a34f9888b21f4f9e8fe295f753065, type: 3}
enoughColor: {r: 1, g: 1, b: 1, a: 1}
missingColor: {r: 1, g: 0.3, b: 0.3, a: 1}
diff --git a/Assets/GAME/Prefabs/UI/NotificationItemUI.prefab b/Assets/GAME/Prefabs/UI/NotificationItemUI.prefab
index 1f646a85..02df9092 100644
--- a/Assets/GAME/Prefabs/UI/NotificationItemUI.prefab
+++ b/Assets/GAME/Prefabs/UI/NotificationItemUI.prefab
@@ -191,7 +191,7 @@ RectTransform:
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 26.81, y: -30.848938}
- m_SizeDelta: {x: 0, y: 0}
+ m_SizeDelta: {x: 26.81, y: 0}
m_Pivot: {x: 1, y: 0.5}
--- !u!222 &4956121116561260591
CanvasRenderer:
diff --git a/Assets/GAME/Prefabs/UI/Player_Canvas.prefab b/Assets/GAME/Prefabs/UI/Player_Canvas.prefab
index be436e9c..623b2854 100644
--- a/Assets/GAME/Prefabs/UI/Player_Canvas.prefab
+++ b/Assets/GAME/Prefabs/UI/Player_Canvas.prefab
@@ -121,6 +121,7 @@ MonoBehaviour:
zoomInEase: 27
zoomOutEase: 5
contextMenu: {fileID: 1973109538690513159}
+ hoverDescription: {fileID: 7853627366515981546}
--- !u!225 &5465333762399899748
CanvasGroup:
m_ObjectHideFlags: 0
@@ -133,6 +134,113 @@ CanvasGroup:
m_Interactable: 1
m_BlocksRaycasts: 1
m_IgnoreParentGroups: 0
+--- !u!1 &474628681375617731
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 3832936180864100740}
+ - component: {fileID: 2650068991916309732}
+ - component: {fileID: 2514473206466924638}
+ - component: {fileID: 1124262983229601777}
+ m_Layer: 5
+ m_Name: Chest Inventory
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 0
+--- !u!224 &3832936180864100740
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 474628681375617731}
+ 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_ConstrainProportionsScale: 0
+ m_Children:
+ - {fileID: 6542714236623699385}
+ m_Father: {fileID: 2905852001351823742}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 0, y: 0}
+ m_AnchoredPosition: {x: 0, y: 0}
+ m_SizeDelta: {x: 0, y: 0}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &2650068991916309732
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 474628681375617731}
+ m_CullTransparentMesh: 1
+--- !u!114 &2514473206466924638
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 474628681375617731}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
+ m_Material: {fileID: 0}
+ m_Color: {r: 0, g: 0, b: 0, a: 0}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0}
+ m_Type: 1
+ m_PreserveAspect: 0
+ m_FillCenter: 1
+ m_FillMethod: 4
+ m_FillAmount: 1
+ m_FillClockwise: 1
+ m_FillOrigin: 0
+ m_UseSpriteMesh: 0
+ m_PixelsPerUnitMultiplier: 1
+--- !u!114 &1124262983229601777
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 474628681375617731}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 1aa08ab6e0800fa44ae55d278d1423e3, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.ScrollRect
+ m_Content: {fileID: 6721013022203009082}
+ m_Horizontal: 1
+ m_Vertical: 1
+ m_MovementType: 2
+ m_Elasticity: 0.1
+ m_Inertia: 0
+ m_DecelerationRate: 0.135
+ m_ScrollSensitivity: 1
+ m_Viewport: {fileID: 6542714236623699385}
+ m_HorizontalScrollbar: {fileID: 0}
+ m_VerticalScrollbar: {fileID: 0}
+ m_HorizontalScrollbarVisibility: 2
+ m_VerticalScrollbarVisibility: 2
+ m_HorizontalScrollbarSpacing: -3
+ m_VerticalScrollbarSpacing: -3
+ m_OnValueChanged:
+ m_PersistentCalls:
+ m_Calls: []
--- !u!1 &511229666715879595
GameObject:
m_ObjectHideFlags: 0
@@ -312,14 +420,14 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
m_Material: {fileID: 0}
- m_Color: {r: 0.33962262, g: 0.25929406, b: 0.18102525, a: 1}
+ m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
- m_Sprite: {fileID: 0}
+ m_Sprite: {fileID: 21300000, guid: 4cf4bf9078db6fb469b85c4b7ed5725f, type: 3}
m_Type: 1
m_PreserveAspect: 1
m_FillCenter: 1
@@ -328,7 +436,7 @@ MonoBehaviour:
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
- m_PixelsPerUnitMultiplier: 1
+ m_PixelsPerUnitMultiplier: 5.34
--- !u!1 &636600910547975391
GameObject:
m_ObjectHideFlags: 0
@@ -466,6 +574,8 @@ MonoBehaviour:
stackSlideEase: 6
gainColor: {r: 0.45, g: 1, b: 0.45, a: 1}
lossColor: {r: 1, g: 0.45, b: 0.45, a: 1}
+ discoveryLabel: NEW
+ discoveryColor: {r: 1, g: 0.85, b: 0.3, a: 1}
--- !u!1 &727521436841129546
GameObject:
m_ObjectHideFlags: 0
@@ -936,6 +1046,96 @@ MonoBehaviour:
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
+--- !u!1 &1066084286080315301
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 6542714236623699385}
+ - component: {fileID: 2429399866811984282}
+ - component: {fileID: 1720230682981777030}
+ - component: {fileID: 3515543935088017007}
+ m_Layer: 5
+ m_Name: Viewport
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &6542714236623699385
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1066084286080315301}
+ 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_ConstrainProportionsScale: 0
+ m_Children:
+ - {fileID: 6721013022203009082}
+ m_Father: {fileID: 3832936180864100740}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 1, y: 1}
+ m_AnchoredPosition: {x: 0, y: 0}
+ m_SizeDelta: {x: 0, y: -17}
+ m_Pivot: {x: 0, y: 1}
+--- !u!222 &2429399866811984282
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1066084286080315301}
+ m_CullTransparentMesh: 1
+--- !u!114 &1720230682981777030
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1066084286080315301}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
+ m_Material: {fileID: 0}
+ m_Color: {r: 1, g: 1, b: 1, a: 1}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_Sprite: {fileID: 10917, guid: 0000000000000000f000000000000000, type: 0}
+ m_Type: 1
+ m_PreserveAspect: 0
+ m_FillCenter: 1
+ m_FillMethod: 4
+ m_FillAmount: 1
+ m_FillClockwise: 1
+ m_FillOrigin: 0
+ m_UseSpriteMesh: 0
+ m_PixelsPerUnitMultiplier: 1
+--- !u!114 &3515543935088017007
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1066084286080315301}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 31a19414c41e5ae4aae2af33fee712f6, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Mask
+ m_ShowMaskGraphic: 0
--- !u!1 &1350523439811144119
GameObject:
m_ObjectHideFlags: 0
@@ -949,7 +1149,7 @@ GameObject:
- component: {fileID: 519268785386442884}
- component: {fileID: 8906464787724662357}
m_Layer: 5
- m_Name: Scroll View
+ m_Name: Player Inventory
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
@@ -962,16 +1162,16 @@ RectTransform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1350523439811144119}
- m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ 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_ConstrainProportionsScale: 0
m_Children:
- {fileID: 8872796180055931122}
- m_Father: {fileID: 5874901917867652709}
+ m_Father: {fileID: 2905852001351823742}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
- m_AnchorMax: {x: 1, y: 1}
+ m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
@@ -1341,6 +1541,87 @@ MonoBehaviour:
menuRoot: {fileID: 7140770579932618209}
cardContainer: {fileID: 5773120585977368172}
cardPrefab: {fileID: -6976907714296214649, guid: d2a50107ca92d6d46984fdcd5f74e6ae, type: 3}
+--- !u!1 &1892111410838088828
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 7388683726000780022}
+ - component: {fileID: 5176893868055947021}
+ - component: {fileID: 4672849978522046281}
+ m_Layer: 5
+ m_Name: Text Holder
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &7388683726000780022
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1892111410838088828}
+ 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_ConstrainProportionsScale: 0
+ m_Children:
+ - {fileID: 5823696107255764197}
+ - {fileID: 6970999659148330512}
+ - {fileID: 3437325068895034057}
+ - {fileID: 5123158591827772935}
+ m_Father: {fileID: 5730202637239016209}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0.5, y: 1}
+ m_AnchorMax: {x: 0.5, y: 1}
+ m_AnchoredPosition: {x: 0, y: -235}
+ m_SizeDelta: {x: 654.01, y: 0}
+ m_Pivot: {x: 0.5, y: 1}
+--- !u!114 &5176893868055947021
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1892111410838088828}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 59f8146938fff824cb5fd77236b75775, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.VerticalLayoutGroup
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_ChildAlignment: 1
+ m_Spacing: 16.02
+ m_ChildForceExpandWidth: 1
+ m_ChildForceExpandHeight: 1
+ m_ChildControlWidth: 1
+ m_ChildControlHeight: 0
+ m_ChildScaleWidth: 0
+ m_ChildScaleHeight: 0
+ m_ReverseArrangement: 0
+--- !u!114 &4672849978522046281
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1892111410838088828}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 3245ec927659c4140ac4f8d17403cc18, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.ContentSizeFitter
+ m_HorizontalFit: 0
+ m_VerticalFit: 2
--- !u!1 &1929653332522253872
GameObject:
m_ObjectHideFlags: 0
@@ -1429,6 +1710,81 @@ CanvasGroup:
m_Interactable: 1
m_BlocksRaycasts: 1
m_IgnoreParentGroups: 0
+--- !u!1 &2238589130073132159
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 3437325068895034057}
+ - component: {fileID: 3065186820541605558}
+ - component: {fileID: 7616199398130002989}
+ m_Layer: 5
+ m_Name: Spacer
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &3437325068895034057
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2238589130073132159}
+ 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_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 7388683726000780022}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 0, y: 0}
+ m_AnchoredPosition: {x: 0, y: 0}
+ m_SizeDelta: {x: 0, y: 2.1304}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &3065186820541605558
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2238589130073132159}
+ m_CullTransparentMesh: 1
+--- !u!114 &7616199398130002989
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2238589130073132159}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
+ m_Material: {fileID: 0}
+ m_Color: {r: 1, g: 1, b: 1, a: 1}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_Sprite: {fileID: 0}
+ m_Type: 0
+ m_PreserveAspect: 0
+ m_FillCenter: 1
+ m_FillMethod: 4
+ m_FillAmount: 1
+ m_FillClockwise: 1
+ m_FillOrigin: 0
+ m_UseSpriteMesh: 0
+ m_PixelsPerUnitMultiplier: 1
--- !u!1 &2341067045314191684
GameObject:
m_ObjectHideFlags: 0
@@ -1624,6 +1980,143 @@ MonoBehaviour:
hideDuration: 0.15
showEase: 27
hideEase: 5
+--- !u!1 &2691049611229646647
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 5823696107255764197}
+ - component: {fileID: 8740671926834774183}
+ - component: {fileID: 7989110468174040486}
+ m_Layer: 5
+ m_Name: Item Name Text
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &5823696107255764197
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2691049611229646647}
+ 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_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 7388683726000780022}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 0, y: 0}
+ m_AnchoredPosition: {x: 0, y: 0}
+ m_SizeDelta: {x: 0, y: 63.9658}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &8740671926834774183
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2691049611229646647}
+ m_CullTransparentMesh: 1
+--- !u!114 &7989110468174040486
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2691049611229646647}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: Unity.TextMeshPro::TMPro.TextMeshProUGUI
+ m_Material: {fileID: 0}
+ m_Color: {r: 1, g: 1, b: 1, a: 1}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_text: Item Name
+ m_isRightToLeft: 0
+ m_fontAsset: {fileID: 11400000, guid: dc221f629ad2625429da3920b6f9a348, type: 2}
+ m_sharedMaterial: {fileID: 3767062857633432899, guid: dc221f629ad2625429da3920b6f9a348, type: 2}
+ m_fontSharedMaterials: []
+ m_fontMaterial: {fileID: 0}
+ m_fontMaterials: []
+ m_fontColor32:
+ serializedVersion: 2
+ rgba: 4294967295
+ m_fontColor: {r: 1, g: 1, b: 1, a: 1}
+ m_enableVertexGradient: 0
+ m_colorMode: 3
+ m_fontColorGradient:
+ topLeft: {r: 1, g: 1, b: 1, a: 1}
+ topRight: {r: 1, g: 1, b: 1, a: 1}
+ bottomLeft: {r: 1, g: 1, b: 1, a: 1}
+ bottomRight: {r: 1, g: 1, b: 1, a: 1}
+ m_fontColorGradientPreset: {fileID: 0}
+ m_spriteAsset: {fileID: 0}
+ m_tintAllSprites: 0
+ m_StyleSheet: {fileID: 0}
+ m_TextStyleHashCode: -1183493901
+ m_overrideHtmlColors: 0
+ m_faceColor:
+ serializedVersion: 2
+ rgba: 4294967295
+ m_fontSize: 45
+ m_fontSizeBase: 45
+ m_fontWeight: 400
+ m_enableAutoSizing: 0
+ m_fontSizeMin: 18
+ m_fontSizeMax: 72
+ m_fontStyle: 0
+ m_HorizontalAlignment: 2
+ m_VerticalAlignment: 512
+ m_textAlignment: 65535
+ m_characterSpacing: 0
+ m_characterHorizontalScale: 1
+ m_wordSpacing: 0
+ m_lineSpacing: 0
+ m_lineSpacingMax: 0
+ m_paragraphSpacing: 0
+ m_charWidthMaxAdj: 0
+ m_TextWrappingMode: 1
+ m_wordWrappingRatios: 0.4
+ m_overflowMode: 0
+ m_linkedTextComponent: {fileID: 0}
+ parentLinkedComponent: {fileID: 0}
+ m_enableKerning: 0
+ m_ActiveFontFeatures: 6e72656b
+ m_enableExtraPadding: 0
+ checkPaddingRequired: 0
+ m_isRichText: 1
+ m_EmojiFallbackSupport: 1
+ m_parseCtrlCharacters: 1
+ m_isOrthographic: 1
+ m_isCullingEnabled: 0
+ m_horizontalMapping: 0
+ m_verticalMapping: 0
+ m_uvLineOffset: 0
+ m_geometrySortingOrder: 0
+ m_IsTextObjectScaleStatic: 0
+ m_VertexBufferAutoSizeReduction: 0
+ m_useMaxVisibleDescender: 1
+ m_pageToDisplay: 1
+ m_margin: {x: 0, y: 0, z: 0, w: 0}
+ m_isUsingLegacyAnimationComponent: 0
+ m_isVolumetricText: 0
+ m_hasFontAssetChanged: 0
+ m_baseMaterial: {fileID: 0}
+ m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!1 &2693481511981605626
GameObject:
m_ObjectHideFlags: 0
@@ -1943,6 +2436,81 @@ MonoBehaviour:
m_OnClick:
m_PersistentCalls:
m_Calls: []
+--- !u!1 &3112924373595349990
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 1276266347716975483}
+ - component: {fileID: 565081979364118879}
+ - component: {fileID: 6360488772227373542}
+ m_Layer: 5
+ m_Name: Icon Item
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &1276266347716975483
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 3112924373595349990}
+ 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_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 5730202637239016209}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0.5, y: 1}
+ m_AnchorMax: {x: 0.5, y: 1}
+ m_AnchoredPosition: {x: 0, y: -29}
+ m_SizeDelta: {x: 182.0425, y: 182.0425}
+ m_Pivot: {x: 0.5, y: 1}
+--- !u!222 &565081979364118879
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 3112924373595349990}
+ m_CullTransparentMesh: 1
+--- !u!114 &6360488772227373542
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 3112924373595349990}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
+ m_Material: {fileID: 0}
+ m_Color: {r: 1, g: 1, b: 1, a: 1}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_Sprite: {fileID: 21300000, guid: 2237e4ae38354ff459a9b61781694de6, type: 3}
+ m_Type: 0
+ m_PreserveAspect: 1
+ m_FillCenter: 1
+ m_FillMethod: 4
+ m_FillAmount: 1
+ m_FillClockwise: 1
+ m_FillOrigin: 0
+ m_UseSpriteMesh: 0
+ m_PixelsPerUnitMultiplier: 1
--- !u!1 &3370630088149517968
GameObject:
m_ObjectHideFlags: 0
@@ -2122,42 +2690,6 @@ RectTransform:
m_AnchoredPosition: {x: -152, y: -0.00070763}
m_SizeDelta: {x: 981.2905, y: 750.62}
m_Pivot: {x: 1, y: 0.5}
---- !u!1 &3605697365339967505
-GameObject:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- serializedVersion: 6
- m_Component:
- - component: {fileID: 5874901917867652709}
- m_Layer: 5
- m_Name: GameObject
- m_TagString: Untagged
- m_Icon: {fileID: 0}
- m_NavMeshLayer: 0
- m_StaticEditorFlags: 0
- m_IsActive: 1
---- !u!224 &5874901917867652709
-RectTransform:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 3605697365339967505}
- 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_ConstrainProportionsScale: 0
- m_Children:
- - {fileID: 3306204304498001035}
- m_Father: {fileID: 2905852001351823742}
- m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
- m_AnchorMin: {x: 0, y: 0}
- m_AnchorMax: {x: 1, y: 1}
- m_AnchoredPosition: {x: 0, y: 0}
- m_SizeDelta: {x: 0, y: 0}
- m_Pivot: {x: 0.5, y: 0.5}
--- !u!1 &3849948217555596051
GameObject:
m_ObjectHideFlags: 0
@@ -2381,13 +2913,14 @@ GameObject:
serializedVersion: 6
m_Component:
- component: {fileID: 2905852001351823742}
+ - component: {fileID: 5619771010822944838}
m_Layer: 5
m_Name: Inventory
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
- m_IsActive: 0
+ m_IsActive: 1
--- !u!224 &2905852001351823742
RectTransform:
m_ObjectHideFlags: 0
@@ -2400,14 +2933,208 @@ RectTransform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- - {fileID: 5874901917867652709}
+ - {fileID: 3306204304498001035}
+ - {fileID: 3832936180864100740}
+ - {fileID: 5730202637239016209}
m_Father: {fileID: 6807638771067203276}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
- m_AnchorMin: {x: 1, y: 0.5}
+ m_AnchorMin: {x: 0, y: 0.5}
m_AnchorMax: {x: 1, y: 0.5}
m_AnchoredPosition: {x: 0, y: 0}
- m_SizeDelta: {x: 961.9158, y: 714.4288}
- m_Pivot: {x: 1, y: 0.5}
+ m_SizeDelta: {x: 0, y: 714.4288}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &5619771010822944838
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4092515852661730968}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 30649d3a9faa99c48a7b1166b86bf2a0, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.HorizontalLayoutGroup
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_ChildAlignment: 0
+ m_Spacing: 0
+ m_ChildForceExpandWidth: 1
+ m_ChildForceExpandHeight: 1
+ m_ChildControlWidth: 1
+ m_ChildControlHeight: 1
+ m_ChildScaleWidth: 1
+ m_ChildScaleHeight: 1
+ m_ReverseArrangement: 0
+--- !u!1 &4358990449238054615
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 6970999659148330512}
+ - component: {fileID: 4693272792105647456}
+ - component: {fileID: 612073043696227689}
+ - component: {fileID: 8439961917879560732}
+ m_Layer: 5
+ m_Name: Mask Durability
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &6970999659148330512
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4358990449238054615}
+ 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_ConstrainProportionsScale: 0
+ m_Children:
+ - {fileID: 3172337541367463545}
+ - {fileID: 3880919081758902990}
+ m_Father: {fileID: 7388683726000780022}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 0, y: 0}
+ m_AnchoredPosition: {x: 0, y: 0}
+ m_SizeDelta: {x: 0, y: 22.1847}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &4693272792105647456
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4358990449238054615}
+ m_CullTransparentMesh: 1
+--- !u!114 &612073043696227689
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4358990449238054615}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
+ m_Material: {fileID: 0}
+ m_Color: {r: 0.3056603, g: 0.3056603, b: 0.3056603, a: 1}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_Sprite: {fileID: 21300000, guid: b3f0d976f6d6802479d6465d11b3aa68, type: 3}
+ m_Type: 1
+ m_PreserveAspect: 0
+ m_FillCenter: 1
+ m_FillMethod: 4
+ m_FillAmount: 1
+ m_FillClockwise: 1
+ m_FillOrigin: 0
+ m_UseSpriteMesh: 0
+ m_PixelsPerUnitMultiplier: 2.19
+--- !u!114 &8439961917879560732
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4358990449238054615}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 31a19414c41e5ae4aae2af33fee712f6, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Mask
+ m_ShowMaskGraphic: 1
+--- !u!1 &4441217771617946248
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 3172337541367463545}
+ - component: {fileID: 746305385717340098}
+ - component: {fileID: 5691646995165598041}
+ m_Layer: 5
+ m_Name: Image (1)
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &3172337541367463545
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4441217771617946248}
+ 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_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 6970999659148330512}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 1, y: 1}
+ m_AnchoredPosition: {x: 0, y: 0}
+ m_SizeDelta: {x: 0, y: 0}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &746305385717340098
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4441217771617946248}
+ m_CullTransparentMesh: 1
+--- !u!114 &5691646995165598041
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4441217771617946248}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
+ m_Material: {fileID: 0}
+ m_Color: {r: 0.4862745, g: 0.9882354, b: 0, a: 1}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_Sprite: {fileID: 21300000, guid: 89cc97401eb588a408315f5fa0148929, type: 3}
+ m_Type: 3
+ m_PreserveAspect: 0
+ m_FillCenter: 1
+ m_FillMethod: 0
+ m_FillAmount: 1
+ m_FillClockwise: 1
+ m_FillOrigin: 0
+ m_UseSpriteMesh: 0
+ m_PixelsPerUnitMultiplier: 2.8
--- !u!1 &4479733069776906296
GameObject:
m_ObjectHideFlags: 0
@@ -2827,6 +3554,145 @@ MonoBehaviour:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.ContentSizeFitter
m_HorizontalFit: 2
m_VerticalFit: 2
+--- !u!1 &4939753983732359216
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 3880919081758902990}
+ - component: {fileID: 7972373020932375361}
+ - component: {fileID: 216151169672398588}
+ m_Layer: 5
+ m_Name: Text (TMP)
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &3880919081758902990
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4939753983732359216}
+ 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_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 6970999659148330512}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 1, y: 1}
+ m_AnchoredPosition: {x: 0, y: 0}
+ m_SizeDelta: {x: 0, y: 0}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &7972373020932375361
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4939753983732359216}
+ m_CullTransparentMesh: 1
+--- !u!114 &216151169672398588
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 4939753983732359216}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: Unity.TextMeshPro::TMPro.TextMeshProUGUI
+ m_Material: {fileID: 0}
+ m_Color: {r: 1, g: 1, b: 1, a: 1}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_text: '50/10
+
+'
+ m_isRightToLeft: 0
+ m_fontAsset: {fileID: 11400000, guid: dc221f629ad2625429da3920b6f9a348, type: 2}
+ m_sharedMaterial: {fileID: 3767062857633432899, guid: dc221f629ad2625429da3920b6f9a348, type: 2}
+ m_fontSharedMaterials: []
+ m_fontMaterial: {fileID: 0}
+ m_fontMaterials: []
+ m_fontColor32:
+ serializedVersion: 2
+ rgba: 4294967295
+ m_fontColor: {r: 1, g: 1, b: 1, a: 1}
+ m_enableVertexGradient: 0
+ m_colorMode: 3
+ m_fontColorGradient:
+ topLeft: {r: 1, g: 1, b: 1, a: 1}
+ topRight: {r: 1, g: 1, b: 1, a: 1}
+ bottomLeft: {r: 1, g: 1, b: 1, a: 1}
+ bottomRight: {r: 1, g: 1, b: 1, a: 1}
+ m_fontColorGradientPreset: {fileID: 0}
+ m_spriteAsset: {fileID: 0}
+ m_tintAllSprites: 0
+ m_StyleSheet: {fileID: 0}
+ m_TextStyleHashCode: -1183493901
+ m_overrideHtmlColors: 0
+ m_faceColor:
+ serializedVersion: 2
+ rgba: 4294967295
+ m_fontSize: 20
+ m_fontSizeBase: 20
+ m_fontWeight: 400
+ m_enableAutoSizing: 0
+ m_fontSizeMin: 18
+ m_fontSizeMax: 72
+ m_fontStyle: 0
+ m_HorizontalAlignment: 2
+ m_VerticalAlignment: 512
+ m_textAlignment: 65535
+ m_characterSpacing: 0
+ m_characterHorizontalScale: 1
+ m_wordSpacing: 0
+ m_lineSpacing: 0
+ m_lineSpacingMax: 0
+ m_paragraphSpacing: 0
+ m_charWidthMaxAdj: 0
+ m_TextWrappingMode: 1
+ m_wordWrappingRatios: 0.4
+ m_overflowMode: 0
+ m_linkedTextComponent: {fileID: 0}
+ parentLinkedComponent: {fileID: 0}
+ m_enableKerning: 0
+ m_ActiveFontFeatures: 6e72656b
+ m_enableExtraPadding: 0
+ checkPaddingRequired: 0
+ m_isRichText: 1
+ m_EmojiFallbackSupport: 1
+ m_parseCtrlCharacters: 1
+ m_isOrthographic: 1
+ m_isCullingEnabled: 0
+ m_horizontalMapping: 0
+ m_verticalMapping: 0
+ m_uvLineOffset: 0
+ m_geometrySortingOrder: 0
+ m_IsTextObjectScaleStatic: 0
+ m_VertexBufferAutoSizeReduction: 0
+ m_useMaxVisibleDescender: 1
+ m_pageToDisplay: 1
+ m_margin: {x: 0, y: 0, z: 0, w: 0}
+ m_isUsingLegacyAnimationComponent: 0
+ m_isVolumetricText: 0
+ m_hasFontAssetChanged: 0
+ m_baseMaterial: {fileID: 0}
+ m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!1 &5057378280272467793
GameObject:
m_ObjectHideFlags: 0
@@ -3431,8 +4297,8 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
- m_AnchoredPosition: {x: 0.000061035156, y: 0}
- m_SizeDelta: {x: 580, y: 460}
+ m_AnchoredPosition: {x: 0.00012207031, y: 0}
+ m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &3796965522655361346
MonoBehaviour:
@@ -3871,6 +4737,77 @@ MonoBehaviour:
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
+--- !u!1 &6044636001445961873
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 5730202637239016209}
+ - component: {fileID: 5329696924780033850}
+ - component: {fileID: 7853627366515981546}
+ m_Layer: 5
+ m_Name: Hover Descriton Object
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &5730202637239016209
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6044636001445961873}
+ 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_ConstrainProportionsScale: 0
+ m_Children:
+ - {fileID: 1276266347716975483}
+ - {fileID: 7388683726000780022}
+ m_Father: {fileID: 2905852001351823742}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 0, y: 0}
+ m_AnchoredPosition: {x: 0, y: 0}
+ m_SizeDelta: {x: 0, y: 0}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!225 &5329696924780033850
+CanvasGroup:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6044636001445961873}
+ m_Enabled: 1
+ m_Alpha: 0
+ m_Interactable: 1
+ m_BlocksRaycasts: 1
+ m_IgnoreParentGroups: 0
+--- !u!114 &7853627366515981546
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6044636001445961873}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 40050a905c9108244901dadab24daa28, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: Assembly-CSharp::Ashwild.Inventory.HoverDescriptionUI
+ canvasGroup: {fileID: 5329696924780033850}
+ iconImage: {fileID: 6360488772227373542}
+ nameText: {fileID: 7989110468174040486}
+ descriptionText: {fileID: 4548427624059251081}
+ durationBarRoot: {fileID: 4358990449238054615}
+ durationBarFill: {fileID: 5691646995165598041}
+ durationText: {fileID: 216151169672398588}
+ fadeDuration: 0.15
--- !u!1 &6165938517923142743
GameObject:
m_ObjectHideFlags: 0
@@ -4222,6 +5159,81 @@ MonoBehaviour:
copyCodeButton: {fileID: 1928265616147476981}
copyFeedback: "Copi\xE9 !"
copyFeedbackDuration: 1.2
+--- !u!1 &6910200010088238136
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 6721013022203009082}
+ - component: {fileID: 542832212946640832}
+ - component: {fileID: 8847650619090686647}
+ m_Layer: 5
+ m_Name: Content
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &6721013022203009082
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6910200010088238136}
+ 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_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 6542714236623699385}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0.5, y: 0.5}
+ m_AnchorMax: {x: 0.5, y: 0.5}
+ m_AnchoredPosition: {x: 0.00012207031, y: 0}
+ m_SizeDelta: {x: 0, y: 0}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &542832212946640832
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6910200010088238136}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 8a8695521f0d02e499659fee002a26c2, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.GridLayoutGroup
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_ChildAlignment: 4
+ m_StartCorner: 0
+ m_StartAxis: 0
+ m_CellSize: {x: 100, y: 100}
+ m_Spacing: {x: 20, y: 20}
+ m_Constraint: 1
+ m_ConstraintCount: 5
+--- !u!114 &8847650619090686647
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6910200010088238136}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 3245ec927659c4140ac4f8d17403cc18, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.ContentSizeFitter
+ m_HorizontalFit: 2
+ m_VerticalFit: 2
--- !u!1 &6932640679636081786
GameObject:
m_ObjectHideFlags: 0
@@ -4363,6 +5375,7 @@ MonoBehaviour:
ghostIcon: {fileID: 851595111141412138}
ghostQuantityText: {fileID: 6390483776083046270}
contextMenu: {fileID: 1973109538690513159}
+ hoverDescription: {fileID: 7853627366515981546}
categoryManager: {fileID: 3613858266590048352}
hotbarUI: {fileID: 2770030247523870978}
--- !u!225 &1031644727210428016
@@ -4453,6 +5466,161 @@ MonoBehaviour:
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 8
+--- !u!1 &7341978142027178335
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 5123158591827772935}
+ - component: {fileID: 282259139774999690}
+ - component: {fileID: 4548427624059251081}
+ - component: {fileID: 2428651810531999524}
+ m_Layer: 5
+ m_Name: Item Descrtion Text
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &5123158591827772935
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 7341978142027178335}
+ 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_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 7388683726000780022}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 1}
+ m_AnchorMax: {x: 0, y: 1}
+ m_AnchoredPosition: {x: 327.005, y: -304.3409}
+ m_SizeDelta: {x: 654.01, y: 0}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &282259139774999690
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 7341978142027178335}
+ m_CullTransparentMesh: 1
+--- !u!114 &4548427624059251081
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 7341978142027178335}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: Unity.TextMeshPro::TMPro.TextMeshProUGUI
+ m_Material: {fileID: 0}
+ m_Color: {r: 1, g: 1, b: 1, a: 1}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_text: Lorem Ipsum is simply dummy text of the printing and typesetting industry.
+ Lorem Ipsum has been the industry's standard dummy text ever since 1966, when
+ designers at Letraset and James Mosley, the librarian at St Bride Printing Library
+ in London, took a 1914 Cicero translation and scrambled
+ m_isRightToLeft: 0
+ m_fontAsset: {fileID: 11400000, guid: dc221f629ad2625429da3920b6f9a348, type: 2}
+ m_sharedMaterial: {fileID: 3767062857633432899, guid: dc221f629ad2625429da3920b6f9a348, type: 2}
+ m_fontSharedMaterials: []
+ m_fontMaterial: {fileID: 0}
+ m_fontMaterials: []
+ m_fontColor32:
+ serializedVersion: 2
+ rgba: 4294967295
+ m_fontColor: {r: 1, g: 1, b: 1, a: 1}
+ m_enableVertexGradient: 0
+ m_colorMode: 3
+ m_fontColorGradient:
+ topLeft: {r: 1, g: 1, b: 1, a: 1}
+ topRight: {r: 1, g: 1, b: 1, a: 1}
+ bottomLeft: {r: 1, g: 1, b: 1, a: 1}
+ bottomRight: {r: 1, g: 1, b: 1, a: 1}
+ m_fontColorGradientPreset: {fileID: 0}
+ m_spriteAsset: {fileID: 0}
+ m_tintAllSprites: 0
+ m_StyleSheet: {fileID: 0}
+ m_TextStyleHashCode: -1183493901
+ m_overrideHtmlColors: 0
+ m_faceColor:
+ serializedVersion: 2
+ rgba: 4294967295
+ m_fontSize: 35
+ m_fontSizeBase: 45
+ m_fontWeight: 400
+ m_enableAutoSizing: 1
+ m_fontSizeMin: 18
+ m_fontSizeMax: 35
+ m_fontStyle: 0
+ m_HorizontalAlignment: 1
+ m_VerticalAlignment: 256
+ m_textAlignment: 65535
+ m_characterSpacing: 0
+ m_characterHorizontalScale: 1
+ m_wordSpacing: 0
+ m_lineSpacing: 0
+ m_lineSpacingMax: 0
+ m_paragraphSpacing: 0
+ m_charWidthMaxAdj: 0
+ m_TextWrappingMode: 1
+ m_wordWrappingRatios: 0.4
+ m_overflowMode: 0
+ m_linkedTextComponent: {fileID: 0}
+ parentLinkedComponent: {fileID: 0}
+ m_enableKerning: 0
+ m_ActiveFontFeatures: 6e72656b
+ m_enableExtraPadding: 0
+ checkPaddingRequired: 0
+ m_isRichText: 1
+ m_EmojiFallbackSupport: 1
+ m_parseCtrlCharacters: 1
+ m_isOrthographic: 1
+ m_isCullingEnabled: 0
+ m_horizontalMapping: 0
+ m_verticalMapping: 0
+ m_uvLineOffset: 0
+ m_geometrySortingOrder: 0
+ m_IsTextObjectScaleStatic: 0
+ m_VertexBufferAutoSizeReduction: 0
+ m_useMaxVisibleDescender: 1
+ m_pageToDisplay: 1
+ m_margin: {x: 0, y: 0, z: 0, w: 0}
+ m_isUsingLegacyAnimationComponent: 0
+ m_isVolumetricText: 0
+ m_hasFontAssetChanged: 0
+ m_baseMaterial: {fileID: 0}
+ m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
+--- !u!114 &2428651810531999524
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 7341978142027178335}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 3245ec927659c4140ac4f8d17403cc18, type: 3}
+ m_Name:
+ m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.ContentSizeFitter
+ m_HorizontalFit: 0
+ m_VerticalFit: 2
--- !u!1 &7377768996722452843
GameObject:
m_ObjectHideFlags: 0
@@ -5859,7 +7027,7 @@ RectTransform:
m_AnchorMin: {x: 0.5, y: 1}
m_AnchorMax: {x: 0.5, y: 1}
m_AnchoredPosition: {x: -37.8232, y: -24}
- m_SizeDelta: {x: 1113.6, y: 58.6461}
+ m_SizeDelta: {x: 1113.6, y: 0}
m_Pivot: {x: 0.5, y: 1}
--- !u!114 &7364250967311033696
MonoBehaviour:
@@ -6193,11 +7361,11 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 296093886323266928, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_SizeDelta.x
- value: 500
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 296093886323266928, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_SizeDelta.y
- value: 58.6461
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 296093886323266928, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_LocalPosition.x
@@ -6249,39 +7417,39 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 2257542146602515425, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_AnchorMax.y
- value: 1
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 2257542146602515425, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_AnchorMin.y
- value: 1
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 2257542146602515425, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_SizeDelta.x
- value: 500
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 2257542146602515425, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_AnchoredPosition.x
- value: 250
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 4060108778761738880, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_AnchorMax.y
- value: 1
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 4060108778761738880, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_AnchorMin.y
- value: 1
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 4060108778761738880, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_SizeDelta.x
- value: 500
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 4060108778761738880, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_AnchoredPosition.x
- value: 250
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 4060108778761738880, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_AnchoredPosition.y
- value: -56.178997
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 4480488855411992823, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_text
@@ -8489,11 +9657,11 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 296093886323266928, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_SizeDelta.x
- value: 500
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 296093886323266928, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_SizeDelta.y
- value: 58.6461
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 296093886323266928, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_LocalPosition.x
@@ -8545,39 +9713,39 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 2257542146602515425, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_AnchorMax.y
- value: 1
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 2257542146602515425, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_AnchorMin.y
- value: 1
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 2257542146602515425, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_SizeDelta.x
- value: 500
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 2257542146602515425, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_AnchoredPosition.x
- value: 250
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 4060108778761738880, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_AnchorMax.y
- value: 1
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 4060108778761738880, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_AnchorMin.y
- value: 1
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 4060108778761738880, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_SizeDelta.x
- value: 500
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 4060108778761738880, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_AnchoredPosition.x
- value: 250
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 4060108778761738880, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_AnchoredPosition.y
- value: -56.178997
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: 8885003621289277313, guid: 9aa2a0e4ac3b1a84abc8799daf212210, type: 3}
propertyPath: m_Name
diff --git a/Assets/GAME/Scenes/Dev Scene/Dev Scene.unity b/Assets/GAME/Scenes/Dev Scene/Dev Scene.unity
index 8139e1eb..09a25353 100644
--- a/Assets/GAME/Scenes/Dev Scene/Dev Scene.unity
+++ b/Assets/GAME/Scenes/Dev Scene/Dev Scene.unity
@@ -3613,22 +3613,6 @@ PrefabInstance:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_Modifications:
- - target: {fileID: 268644269685709644, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_AnchorMax.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 268644269685709644, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_AnchorMin.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 268644269685709644, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_SizeDelta.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 268644269685709644, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_AnchoredPosition.x
- value: 0
- objectReference: {fileID: 0}
- target: {fileID: 297657202941871783, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
propertyPath: m_AnchorMax.y
value: 0
@@ -3773,14 +3757,6 @@ PrefabInstance:
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- - target: {fileID: 1798594070215275997, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_SizeDelta.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1798594070215275997, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_SizeDelta.y
- value: 0
- objectReference: {fileID: 0}
- target: {fileID: 1941997771569907896, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
propertyPath: m_AnchorMax.y
value: 0
@@ -3817,34 +3793,6 @@ PrefabInstance:
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- - target: {fileID: 2645420000368753197, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_AnchorMax.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 2645420000368753197, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_AnchorMin.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 2645420000368753197, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_SizeDelta.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 2645420000368753197, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_AnchoredPosition.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 2645420000368753197, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_AnchoredPosition.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 3137753552549908057, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_SizeDelta.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 3137753552549908057, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_SizeDelta.y
- value: 0
- objectReference: {fileID: 0}
- target: {fileID: 3377263676762350218, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
propertyPath: m_AnchorMax.y
value: 0
@@ -4041,26 +3989,6 @@ PrefabInstance:
propertyPath: m_SizeDelta.x
value: 0
objectReference: {fileID: 0}
- - target: {fileID: 5483805172319020686, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_AnchorMax.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 5483805172319020686, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_AnchorMin.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 5483805172319020686, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_SizeDelta.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 5483805172319020686, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_AnchoredPosition.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 5483805172319020686, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_AnchoredPosition.y
- value: 0
- objectReference: {fileID: 0}
- target: {fileID: 5516694424821111620, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
propertyPath: m_AnchorMax.y
value: 0
@@ -4245,22 +4173,6 @@ PrefabInstance:
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- - target: {fileID: 7716463092849739759, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_AnchorMax.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 7716463092849739759, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_AnchorMin.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 7716463092849739759, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_SizeDelta.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 7716463092849739759, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_AnchoredPosition.x
- value: 0
- objectReference: {fileID: 0}
- target: {fileID: 7749384703976975436, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
propertyPath: m_AnchorMax.y
value: 0
@@ -4317,18 +4229,6 @@ PrefabInstance:
propertyPath: m_SizeDelta.y
value: 0
objectReference: {fileID: 0}
- - target: {fileID: 7924365604093564939, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_SizeDelta.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 8095760197126531454, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_SizeDelta.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 8095760197126531454, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
- propertyPath: m_SizeDelta.y
- value: 0
- objectReference: {fileID: 0}
- target: {fileID: 8331890770765351021, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
propertyPath: m_Name
value: Canvas
diff --git a/Assets/GAME/Script/Crafting/CraftDiscovery.cs b/Assets/GAME/Script/Crafting/CraftDiscovery.cs
new file mode 100644
index 00000000..72555510
--- /dev/null
+++ b/Assets/GAME/Script/Crafting/CraftDiscovery.cs
@@ -0,0 +1,119 @@
+using System.Collections.Generic;
+using UnityEngine;
+using FishNet.Object;
+using Ashwild.Inventory;
+using Ashwild.Player;
+
+namespace Ashwild.Crafting
+{
+ ///
+ /// The local player's craft-discovery knowledge: the set of items it has ever acquired.
+ /// A recipe is only revealed (and only craftable) once its ingredients have been discovered,
+ /// so the player uncovers crafts by gathering resources rather than seeing the whole catalog
+ /// at once. Discovery is triggered the first time an item enters the inventory — pickups,
+ /// harvest drops AND craft results all count, which lets crafting chains reveal step by step.
+ ///
+ /// This is owner-only local state: each player keeps its own knowledge, and it is never
+ /// replicated over the wire (no one else needs to read it). It mirrors PlayerInventory's
+ /// singleton pattern purely for reliable owner gating — set the Instance for the owning
+ /// client in OnStartNetwork, and gate the component off on remotes via ownerOnlyBehaviours.
+ ///
+ [DisallowMultipleComponent]
+ public class CraftDiscovery : NetworkBehaviour
+ {
+ #region Singleton
+
+ ///
+ /// The local player's discovery knowledge (set only on the owning client).
+ ///
+ public static CraftDiscovery Instance { get; private set; }
+
+ #endregion
+
+ #region State
+
+ private readonly HashSet discovered = new HashSet();
+
+ #endregion
+
+ #region Network Lifecycle
+
+ ///
+ /// Registers the singleton on the owning client only (before LocalPlayerSpawned fires).
+ ///
+ public override void OnStartNetwork()
+ {
+ base.OnStartNetwork();
+ if (base.Owner.IsLocalClient) Instance = this;
+ }
+
+ ///
+ /// Clears the singleton when this player leaves the network.
+ ///
+ public override void OnStopNetwork()
+ {
+ base.OnStopNetwork();
+ if (Instance == this) Instance = null;
+ }
+
+ #endregion
+
+ #region Unity Lifecycle
+
+ ///
+ /// Starts tracking every item the local player acquires.
+ ///
+ private void OnEnable()
+ {
+ PlayerEvents.ItemAdded += HandleItemAdded;
+ }
+
+ ///
+ /// Stops tracking — mirrors OnEnable exactly.
+ ///
+ private void OnDisable()
+ {
+ PlayerEvents.ItemAdded -= HandleItemAdded;
+ }
+
+ #endregion
+
+ #region Event Handlers
+
+ ///
+ /// Marks an acquired item as discovered. Guarded to the owning instance so a remote puppet
+ /// that briefly subscribed before being gated off can never drive discovery on the wrong copy.
+ ///
+ private void HandleItemAdded(ItemData item, int quantity)
+ {
+ if (Instance != this) return;
+ Discover(item);
+ }
+
+ #endregion
+
+ #region Public API
+
+ ///
+ /// Whether the local player has ever acquired this item (and therefore knows it).
+ ///
+ public bool IsDiscovered(ItemData item) => item != null && discovered.Contains(item);
+
+ #endregion
+
+ #region Internal Helpers
+
+ ///
+ /// Adds an item to the discovered set the first time it is seen and announces it on the bus
+ /// so the crafting view can reveal any recipe the item unlocks.
+ ///
+ private void Discover(ItemData item)
+ {
+ if (item == null) return;
+ if (discovered.Add(item))
+ PlayerEvents.RaiseItemDiscovered(item);
+ }
+
+ #endregion
+ }
+}
diff --git a/Assets/GAME/Script/Crafting/CraftDiscovery.cs.meta b/Assets/GAME/Script/Crafting/CraftDiscovery.cs.meta
new file mode 100644
index 00000000..81aed412
--- /dev/null
+++ b/Assets/GAME/Script/Crafting/CraftDiscovery.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: fabb912832c44b945a26c8ef03db222a
\ No newline at end of file
diff --git a/Assets/GAME/Script/Crafting/CraftingManager.cs b/Assets/GAME/Script/Crafting/CraftingManager.cs
index c85aae38..fd37f957 100644
--- a/Assets/GAME/Script/Crafting/CraftingManager.cs
+++ b/Assets/GAME/Script/Crafting/CraftingManager.cs
@@ -1,3 +1,4 @@
+using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Events;
using Ashwild.Inventory;
@@ -31,6 +32,7 @@ namespace Ashwild.Crafting
private PlayerInventory inventory;
private bool bound;
+ private readonly HashSet unlockedRecipes = new HashSet();
#endregion
@@ -43,19 +45,25 @@ namespace Ashwild.Crafting
///
/// Returns whether the local player can currently craft the recipe the given number of times.
+ /// A recipe is only craftable once every ingredient has been discovered, on top of the usual
+ /// inventory check — an ingredient still shown as a mystery ("?") blocks the craft.
///
public bool CanCraft(CraftingRecipe recipe, int count = 1)
{
- return PlayerInventory.Instance != null && recipe.CanCraft(PlayerInventory.Instance, count);
+ return PlayerInventory.Instance != null
+ && IsFullyDiscovered(recipe)
+ && recipe.CanCraft(PlayerInventory.Instance, count);
}
///
- /// Consumes the ingredients and produces the result if the local player can afford it.
+ /// Consumes the ingredients and produces the result if the local player can afford it and has
+ /// discovered every ingredient. The result item is added through the inventory, which in turn
+ /// discovers it — so crafting an intermediate result reveals the recipes further down the chain.
///
public bool TryCraft(CraftingRecipe recipe, int count = 1)
{
PlayerInventory inv = PlayerInventory.Instance;
- if (inv == null || !recipe.CanCraft(inv, count))
+ if (inv == null || !IsFullyDiscovered(recipe) || !recipe.CanCraft(inv, count))
return false;
// Consume ingredients
@@ -82,6 +90,7 @@ namespace Ashwild.Crafting
private void OnEnable()
{
PlayerEvents.LocalPlayerSpawned += HandleLocalPlayerSpawned;
+ PlayerEvents.ItemDiscovered += HandleItemDiscovered;
}
///
@@ -90,6 +99,7 @@ namespace Ashwild.Crafting
private void OnDisable()
{
PlayerEvents.LocalPlayerSpawned -= HandleLocalPlayerSpawned;
+ PlayerEvents.ItemDiscovered -= HandleItemDiscovered;
}
///
@@ -98,7 +108,7 @@ namespace Ashwild.Crafting
private void Start()
{
if (craftingUI != null)
- craftingUI.Build(recipes, CanCraft, CountItem, TryCraft);
+ craftingUI.Build(recipes, CanCraft, CountItem, TryCraft, IsDiscovered, IsRecipeVisible);
else
Debug.LogError("[CraftingManager] No CraftingUI assigned — the crafting panel will not populate.", this);
@@ -134,6 +144,19 @@ namespace Ashwild.Crafting
craftingUI.Refresh();
}
+ ///
+ /// Reacts to a newly discovered item: announces any recipe it just unlocked (for the "NEW"
+ /// craft notification), then refreshes the view so those recipes appear and their once-mystery
+ /// ingredients are shown.
+ ///
+ private void HandleItemDiscovered(ItemData item)
+ {
+ NotifyNewlyUnlockedRecipes();
+
+ if (craftingUI != null)
+ craftingUI.Refresh();
+ }
+
#endregion
#region Internal Helpers
@@ -150,10 +173,41 @@ namespace Ashwild.Crafting
inventory.onSlotChanged.AddListener(HandleInventoryChanged);
+ SeedUnlockedRecipes();
+
if (craftingUI != null)
craftingUI.Refresh();
}
+ ///
+ /// Records the recipes already revealed at bind time (e.g. from restored discoveries) so they
+ /// are treated as known and never fire a spurious "NEW" notification. With a fresh player this
+ /// is empty since discovery starts at zero.
+ ///
+ private void SeedUnlockedRecipes()
+ {
+ for (int i = 0; i < recipes.Length; i++)
+ if (IsRecipeVisible(recipes[i]))
+ unlockedRecipes.Add(recipes[i]);
+ }
+
+ ///
+ /// Raises a "NEW" notification for every recipe that has just become visible (its first
+ /// discovered ingredient), each announced once. Called after an item is discovered.
+ ///
+ private void NotifyNewlyUnlockedRecipes()
+ {
+ for (int i = 0; i < recipes.Length; i++)
+ {
+ CraftingRecipe recipe = recipes[i];
+ if (unlockedRecipes.Contains(recipe)) continue;
+ if (!IsRecipeVisible(recipe)) continue;
+
+ unlockedRecipes.Add(recipe);
+ PlayerEvents.RaiseRecipeDiscovered(recipe.Icon, recipe.RecipeName);
+ }
+ }
+
///
/// How many of an item the local player currently holds (0 when offline).
///
@@ -162,6 +216,37 @@ namespace Ashwild.Crafting
return PlayerInventory.Instance != null ? PlayerInventory.Instance.CountItem(item) : 0;
}
+ ///
+ /// Whether the local player has discovered the item (false when the discovery tracker isn't ready).
+ ///
+ private bool IsDiscovered(ItemData item)
+ {
+ return CraftDiscovery.Instance != null && CraftDiscovery.Instance.IsDiscovered(item);
+ }
+
+ ///
+ /// Whether the recipe should appear at all: revealed as soon as at least one of its ingredients
+ /// has been discovered. Undiscovered ingredients then show as a mystery until found.
+ ///
+ private bool IsRecipeVisible(CraftingRecipe recipe)
+ {
+ CraftingIngredient[] ingredients = recipe.Ingredients;
+ for (int i = 0; i < ingredients.Length; i++)
+ if (IsDiscovered(ingredients[i].item)) return true;
+ return false;
+ }
+
+ ///
+ /// Whether every ingredient of the recipe has been discovered — the gate for actually crafting it.
+ ///
+ private bool IsFullyDiscovered(CraftingRecipe recipe)
+ {
+ CraftingIngredient[] ingredients = recipe.Ingredients;
+ for (int i = 0; i < ingredients.Length; i++)
+ if (!IsDiscovered(ingredients[i].item)) return false;
+ return true;
+ }
+
#endregion
}
}
diff --git a/Assets/GAME/Script/Crafting/CraftingUI.cs b/Assets/GAME/Script/Crafting/CraftingUI.cs
index 4a6421cb..d45a2211 100644
--- a/Assets/GAME/Script/Crafting/CraftingUI.cs
+++ b/Assets/GAME/Script/Crafting/CraftingUI.cs
@@ -42,6 +42,8 @@ namespace Ashwild.Crafting
private Func canCraftQuery;
private Func countItemQuery;
private Func craftRequest;
+ private Func isDiscoveredQuery;
+ private Func isRecipeVisibleQuery;
private readonly List recipeButtons = new List();
private readonly List ingredientInstances = new List();
private RecipeButtonUI selectedButton;
@@ -55,12 +57,15 @@ namespace Ashwild.Crafting
///
/// Builds the recipe buttons (once) and wires the manager-owned queries/action. Safe to
/// call again later to re-point the delegates; it then simply refreshes the display.
+ /// The discovery queries decide which recipes are shown and which ingredients are still a mystery.
///
- public void Build(CraftingRecipe[] recipes, Func canCraft, Func countItem, Func craft)
+ public void Build(CraftingRecipe[] recipes, Func canCraft, Func countItem, Func craft, Func isDiscovered, Func isRecipeVisible)
{
canCraftQuery = canCraft;
countItemQuery = countItem;
craftRequest = craft;
+ isDiscoveredQuery = isDiscovered;
+ isRecipeVisibleQuery = isRecipeVisible;
if (!built)
{
@@ -81,8 +86,9 @@ namespace Ashwild.Crafting
}
///
- /// Recomputes craftability for every recipe button and refreshes the open detail.
- /// Called by the manager whenever the local player's inventory changes.
+ /// Recomputes each recipe button's visibility (revealed once an ingredient is discovered) and
+ /// its craftability, then refreshes the open detail. Called by the manager whenever the local
+ /// player's inventory changes or a new item is discovered.
///
public void Refresh()
{
@@ -91,6 +97,9 @@ namespace Ashwild.Crafting
for (int i = 0; i < recipeButtons.Count; i++)
{
RecipeButtonUI btn = recipeButtons[i];
+ bool visible = isRecipeVisibleQuery == null || isRecipeVisibleQuery(btn.Recipe);
+ btn.gameObject.SetActive(visible);
+
bool canCraft = canCraftQuery != null && canCraftQuery(btn.Recipe, btn.CraftCount);
btn.UpdateCraftability(canCraft);
}
@@ -193,12 +202,21 @@ namespace Ashwild.Crafting
GameObject slotGO = Instantiate(ingredientSlotPrefab, ingredientContainer);
IngredientSlotUI slotUI = slotGO.GetComponent();
- int required = ingredients[i].quantity * count;
- int playerHas = countItemQuery != null ? countItemQuery(ingredients[i].item) : 0;
- slotUI.Setup(ingredients[i].item, required, playerHas);
-
- if (playerHas < required)
+ bool discovered = isDiscoveredQuery == null || isDiscoveredQuery(ingredients[i].item);
+ if (!discovered)
+ {
+ slotUI.SetupMystery();
canCraft = false;
+ }
+ else
+ {
+ int required = ingredients[i].quantity * count;
+ int playerHas = countItemQuery != null ? countItemQuery(ingredients[i].item) : 0;
+ slotUI.Setup(ingredients[i].item, required, playerHas);
+
+ if (playerHas < required)
+ canCraft = false;
+ }
ingredientInstances.Add(slotGO);
}
diff --git a/Assets/GAME/Script/Crafting/IngredientSlotUI.cs b/Assets/GAME/Script/Crafting/IngredientSlotUI.cs
index b2c25da8..8d7de392 100644
--- a/Assets/GAME/Script/Crafting/IngredientSlotUI.cs
+++ b/Assets/GAME/Script/Crafting/IngredientSlotUI.cs
@@ -5,21 +5,45 @@ using Ashwild.Inventory;
namespace Ashwild.Crafting
{
+ ///
+ /// A single ingredient cell in the crafting detail panel. Renders either a known ingredient
+ /// (icon + required quantity, tinted by whether the player has enough) or a mystery placeholder
+ /// ("?") for an ingredient the player has not discovered yet.
+ ///
public class IngredientSlotUI : MonoBehaviour
{
[SerializeField] private Image iconImage;
[SerializeField] private TextMeshProUGUI quantityText;
+ [Header("Mystery (undiscovered ingredient)")]
+ [Tooltip("Icon shown for an ingredient the player hasn't discovered yet (a question mark).")]
+ [SerializeField] private Sprite mysteryIcon;
+
[Header("Colors")]
[SerializeField] private Color enoughColor = Color.white;
[SerializeField] private Color missingColor = new Color(1f, 0.3f, 0.3f, 1f);
+ ///
+ /// Renders a known ingredient: its icon and required amount, dimmed/red when the player lacks it.
+ ///
public void Setup(ItemData item, int required, int playerHas)
{
+ quantityText.gameObject.SetActive(true);
iconImage.sprite = item.Icon;
quantityText.text = "x" + required;
quantityText.color = playerHas >= required ? enoughColor : missingColor;
iconImage.color = playerHas >= required ? Color.white : new Color(1f, 1f, 1f, 0.5f);
}
+
+ ///
+ /// Renders an undiscovered ingredient as a mystery: the "?" icon with no quantity text, so the
+ /// player knows a craft exists but must still find what it needs and how much.
+ ///
+ public void SetupMystery()
+ {
+ iconImage.sprite = mysteryIcon;
+ iconImage.color = new Color(1f, 1f, 1f, 0.5f);
+ quantityText.gameObject.SetActive(false);
+ }
}
}
diff --git a/Assets/GAME/Script/Inventory/HotbarUI.cs b/Assets/GAME/Script/Inventory/HotbarUI.cs
index 2abe3e65..85f6207d 100644
--- a/Assets/GAME/Script/Inventory/HotbarUI.cs
+++ b/Assets/GAME/Script/Inventory/HotbarUI.cs
@@ -24,6 +24,10 @@ namespace Ashwild.Inventory
[Header("Context Menu")]
[SerializeField] private SlotContextMenu contextMenu;
+ [Header("Hover Description")]
+ [Tooltip("Same panel used by the inventory — assign the shared HoverDescriptionUI here too.")]
+ [SerializeField] private HoverDescriptionUI hoverDescription;
+
private PlayerInventory inventory;
private Tweener scaleTween;
private Tweener alphaTween;
@@ -51,7 +55,7 @@ namespace Ashwild.Inventory
{
// Visual setup that does not need the player.
for (int i = 0; i < hotbarSlot.Length; i++)
- hotbarSlot[i].Initialize(i, InventoryUI.OnSwapRequested, OnSlotClicked);
+ hotbarSlot[i].Initialize(i, InventoryUI.OnSwapRequested, OnSlotClicked, OnSlotHoverEnter, OnSlotHoverExit);
transform.localScale = Vector3.one * idleScale;
if (canvasGroup != null)
@@ -167,6 +171,40 @@ namespace Ashwild.Inventory
hotbarSlot[index].UpdateVisual(inventory.GetSlot(index));
}
+ ///
+ /// Shows the shared description panel for a hovered hotbar slot, but only while the inventory
+ /// is open — during normal play the hotbar must not pop a description. The duration bar
+ /// reflects the item's remaining uses/durability.
+ ///
+ private void OnSlotHoverEnter(int index)
+ {
+ if (hoverDescription == null || inventory == null || !PlayerEvents.IsInventoryOpen) return;
+
+ InventorySlot slot = inventory.GetSlot(index);
+ if (slot == null || slot.IsEmpty)
+ {
+ hoverDescription.Hide();
+ return;
+ }
+
+ ItemData item = slot.ItemData;
+ bool hasDuration = item.HasUses;
+ float fill = hasDuration ? (float)slot.CurrentUses / item.MaxUses : 0f;
+ string durationText = hasDuration ? $"{slot.CurrentUses} / {item.MaxUses}" : string.Empty;
+
+ hoverDescription.Show(new ItemDescriptionView(
+ item.Icon, item.ItemName, item.Description, hasDuration, fill, durationText));
+ }
+
+ ///
+ /// Hides the description panel when the pointer leaves a hotbar slot.
+ ///
+ private void OnSlotHoverExit()
+ {
+ if (hoverDescription != null)
+ hoverDescription.Hide();
+ }
+
private void UpdateSelection(int selectedIndex)
{
for (int i = 0; i < hotbarSlot.Length; i++)
diff --git a/Assets/GAME/Script/Inventory/HoverDescriptionUI.cs b/Assets/GAME/Script/Inventory/HoverDescriptionUI.cs
new file mode 100644
index 00000000..8fafafce
--- /dev/null
+++ b/Assets/GAME/Script/Inventory/HoverDescriptionUI.cs
@@ -0,0 +1,110 @@
+using UnityEngine;
+using UnityEngine.UI;
+using TMPro;
+using DG.Tweening;
+
+namespace Ashwild.Inventory
+{
+ ///
+ /// The fixed description panel shown beside the inventory — a pure view. When the pointer
+ /// enters a filled slot the inventory manager hands it an and
+ /// it fades its CanvasGroup in, drawing the icon, name, description and (for uses-tracked items)
+ /// the duration bar. It never reads ItemData or the inventory itself; it renders what it is given.
+ ///
+ [DisallowMultipleComponent]
+ public class HoverDescriptionUI : MonoBehaviour
+ {
+ #region Serialized Fields
+
+ [Header("References")]
+ [SerializeField] private CanvasGroup canvasGroup;
+ [SerializeField] private Image iconImage;
+ [SerializeField] private TextMeshProUGUI nameText;
+ [SerializeField] private TextMeshProUGUI descriptionText;
+
+ [Header("Duration Bar")]
+ [Tooltip("Root object of the duration/uses bar — shown only for items that track uses.")]
+ [SerializeField] private GameObject durationBarRoot;
+ [Tooltip("Filled image whose fillAmount maps to the remaining uses (Image Type = Filled).")]
+ [SerializeField] private Image durationBarFill;
+ [Tooltip("Label drawn over the bar, e.g. \"3 / 5\".")]
+ [SerializeField] private TextMeshProUGUI durationText;
+
+ [Header("Animation")]
+ [SerializeField] private float fadeDuration = 0.15f;
+
+ #endregion
+
+ #region State
+
+ private Tweener fadeTween;
+
+ #endregion
+
+ #region Unity Lifecycle
+
+ ///
+ /// Starts hidden so the panel only appears once a slot is actually hovered.
+ ///
+ private void Awake() => SetHidden();
+
+ ///
+ /// Kills the fade tween so it never targets the CanvasGroup after teardown.
+ ///
+ private void OnDestroy() => fadeTween?.Kill();
+
+ #endregion
+
+ #region Public API
+
+ ///
+ /// Draws the payload and fades the panel in. Called by the inventory manager on hover enter.
+ ///
+ public void Show(ItemDescriptionView view)
+ {
+ if (iconImage != null)
+ {
+ iconImage.sprite = view.Icon;
+ iconImage.enabled = view.Icon != null;
+ }
+ if (nameText != null)
+ nameText.text = view.Name;
+ if (descriptionText != null)
+ descriptionText.text = view.Description;
+
+ if (durationBarRoot != null)
+ durationBarRoot.SetActive(view.HasDuration);
+ if (view.HasDuration)
+ {
+ if (durationBarFill != null)
+ durationBarFill.fillAmount = view.DurationFill;
+ if (durationText != null)
+ durationText.text = view.DurationText;
+ }
+
+ fadeTween?.Kill();
+ fadeTween = canvasGroup.DOFade(1f, fadeDuration).SetUpdate(true);
+ }
+
+ ///
+ /// Fades the panel out via its CanvasGroup only — the GameObject stays active so it can be
+ /// shown again instantly. Called on hover exit / inventory close.
+ ///
+ public void Hide()
+ {
+ fadeTween?.Kill();
+ fadeTween = canvasGroup.DOFade(0f, fadeDuration).SetUpdate(true);
+ }
+
+ #endregion
+
+ #region Internal Helpers
+
+ ///
+ /// Instantly parks the panel invisible via the CanvasGroup, without deactivating it.
+ ///
+ private void SetHidden() => canvasGroup.alpha = 0f;
+
+ #endregion
+ }
+}
diff --git a/Assets/GAME/Script/Inventory/HoverDescriptionUI.cs.meta b/Assets/GAME/Script/Inventory/HoverDescriptionUI.cs.meta
new file mode 100644
index 00000000..ac113bf6
--- /dev/null
+++ b/Assets/GAME/Script/Inventory/HoverDescriptionUI.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: 40050a905c9108244901dadab24daa28
\ No newline at end of file
diff --git a/Assets/GAME/Script/Inventory/InventoryUI.cs b/Assets/GAME/Script/Inventory/InventoryUI.cs
index 5b3b4e21..4b706e6e 100644
--- a/Assets/GAME/Script/Inventory/InventoryUI.cs
+++ b/Assets/GAME/Script/Inventory/InventoryUI.cs
@@ -33,6 +33,9 @@ namespace Ashwild.Inventory
[Header("Context Menu")]
[SerializeField] private SlotContextMenu contextMenu;
+ [Header("Hover Description")]
+ [SerializeField] private HoverDescriptionUI hoverDescription;
+
[Header("Categories")]
[SerializeField] private InventoryCategoryManager categoryManager;
@@ -93,7 +96,7 @@ namespace Ashwild.Inventory
int slotIndex = inventory.HotbarSize + i;
GameObject slotGO = Instantiate(slotPrefab, slotContainer);
SlotUI slotUI = slotGO.GetComponent();
- slotUI.Initialize(slotIndex, OnSwapRequested, OnSlotClicked);
+ slotUI.Initialize(slotIndex, OnSwapRequested, OnSlotClicked, OnSlotHoverEnter, OnSlotHoverExit);
slotUIs[i] = slotUI;
}
@@ -133,6 +136,9 @@ namespace Ashwild.Inventory
if (contextMenu != null)
contextMenu.Hide();
+ if (hoverDescription != null)
+ hoverDescription.Hide();
+
if (categoryManager != null)
categoryManager.Close();
@@ -192,6 +198,39 @@ namespace Ashwild.Inventory
}
}
+ ///
+ /// Builds the description payload for the hovered slot and shows the side panel. Empty slots
+ /// keep the panel hidden. The duration bar reflects the item's remaining uses/durability.
+ ///
+ private void OnSlotHoverEnter(int index)
+ {
+ if (hoverDescription == null || inventory == null) return;
+
+ InventorySlot slot = inventory.GetSlot(index);
+ if (slot == null || slot.IsEmpty)
+ {
+ hoverDescription.Hide();
+ return;
+ }
+
+ ItemData item = slot.ItemData;
+ bool hasDuration = item.HasUses;
+ float fill = hasDuration ? (float)slot.CurrentUses / item.MaxUses : 0f;
+ string durationText = hasDuration ? $"{slot.CurrentUses} / {item.MaxUses}" : string.Empty;
+
+ hoverDescription.Show(new ItemDescriptionView(
+ item.Icon, item.ItemName, item.Description, hasDuration, fill, durationText));
+ }
+
+ ///
+ /// Hides the description panel when the pointer leaves a slot.
+ ///
+ private void OnSlotHoverExit()
+ {
+ if (hoverDescription != null)
+ hoverDescription.Hide();
+ }
+
private void RefreshSlot(int index)
{
if (slotUIs == null) return;
diff --git a/Assets/GAME/Script/Inventory/ItemDescriptionView.cs b/Assets/GAME/Script/Inventory/ItemDescriptionView.cs
new file mode 100644
index 00000000..b4742ce3
--- /dev/null
+++ b/Assets/GAME/Script/Inventory/ItemDescriptionView.cs
@@ -0,0 +1,43 @@
+using UnityEngine;
+
+namespace Ashwild.Inventory
+{
+ ///
+ /// The view payload for the hover description panel: exactly what the panel renders (icon,
+ /// name, description, and an optional duration/uses bar), nothing more. The inventory manager
+ /// builds one of these from a hovered slot and pushes it into the view, so the panel never
+ /// touches ItemData or the inventory model — it just draws what it is handed.
+ ///
+ public readonly struct ItemDescriptionView
+ {
+ public readonly Sprite Icon;
+ public readonly string Name;
+ public readonly string Description;
+
+ ///
+ /// Whether the hovered item tracks uses/durability and should show its duration bar.
+ ///
+ public readonly bool HasDuration;
+
+ ///
+ /// Remaining uses as a 0..1 fill for the bar's Filled image.
+ ///
+ public readonly float DurationFill;
+
+ ///
+ /// The remaining/max label drawn over the bar, e.g. "3 / 5".
+ ///
+ public readonly string DurationText;
+
+ public ItemDescriptionView(Sprite icon, string name, string description,
+ bool hasDuration, float durationFill, string durationText)
+ {
+ Icon = icon;
+ Name = name;
+ Description = description;
+ HasDuration = hasDuration;
+ DurationFill = durationFill;
+ DurationText = durationText;
+ }
+ }
+}
diff --git a/Assets/GAME/Script/Inventory/ItemDescriptionView.cs.meta b/Assets/GAME/Script/Inventory/ItemDescriptionView.cs.meta
new file mode 100644
index 00000000..c42ca095
--- /dev/null
+++ b/Assets/GAME/Script/Inventory/ItemDescriptionView.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: b901ece22e48ee344837ad720d6f2e18
\ No newline at end of file
diff --git a/Assets/GAME/Script/Inventory/SlotUI.cs b/Assets/GAME/Script/Inventory/SlotUI.cs
index cae702c1..da1e76f1 100644
--- a/Assets/GAME/Script/Inventory/SlotUI.cs
+++ b/Assets/GAME/Script/Inventory/SlotUI.cs
@@ -6,7 +6,7 @@ using System;
namespace Ashwild.Inventory
{
- public class SlotUI : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler, IDropHandler, IPointerClickHandler
+ public class SlotUI : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler, IDropHandler, IPointerClickHandler, IPointerEnterHandler, IPointerExitHandler
{
[Header("References")]
[SerializeField] private Image iconImage;
@@ -26,6 +26,8 @@ namespace Ashwild.Inventory
private int slotIndex;
private Action onSwapRequested;
private Action onClicked;
+ private Action onHoverEnter;
+ private Action onHoverExit;
public int SlotIndex => slotIndex;
@@ -43,11 +45,14 @@ namespace Ashwild.Inventory
ghostObject.SetActive(false);
}
- public void Initialize(int index, Action swapCallback, Action clickCallback)
+ public void Initialize(int index, Action swapCallback, Action clickCallback,
+ Action hoverEnterCallback = null, Action hoverExitCallback = null)
{
slotIndex = index;
onSwapRequested = swapCallback;
onClicked = clickCallback;
+ onHoverEnter = hoverEnterCallback;
+ onHoverExit = hoverExitCallback;
}
///
@@ -170,5 +175,23 @@ namespace Ashwild.Inventory
if (eventData.button == PointerEventData.InputButton.Right)
onClicked?.Invoke(slotIndex, true);
}
+
+ ///
+ /// Reports the hovered slot index so the manager can show its description panel. Suppressed
+ /// while a drag is in progress, where the panel would only get in the way.
+ ///
+ public void OnPointerEnter(PointerEventData eventData)
+ {
+ if (draggedSlot != null) return;
+ onHoverEnter?.Invoke(slotIndex);
+ }
+
+ ///
+ /// Reports that the pointer left the slot so the manager can hide the description panel.
+ ///
+ public void OnPointerExit(PointerEventData eventData)
+ {
+ onHoverExit?.Invoke();
+ }
}
}
diff --git a/Assets/GAME/Script/Player/Events/PlayerEvents.cs b/Assets/GAME/Script/Player/Events/PlayerEvents.cs
index 9ea80dc6..334209eb 100644
--- a/Assets/GAME/Script/Player/Events/PlayerEvents.cs
+++ b/Assets/GAME/Script/Player/Events/PlayerEvents.cs
@@ -101,6 +101,8 @@ namespace Ashwild.Player
public static event Action ItemDropped;
public static event Action ItemConsumed;
public static event Action ItemPickedUp;
+ public static event Action ItemDiscovered; // an item entered the inventory for the first time (unlocks recipes)
+ public static event Action RecipeDiscovered; // a recipe was just revealed (icon, name) — for the "NEW" craft notification
public static event Action HeldItemChanged;
public static event Action InventoryOpenChanged;
public static event Action ChestOpenChanged;
@@ -248,6 +250,8 @@ namespace Ashwild.Player
public static void RaiseItemDropped(ItemData d, int q) { Log(nameof(ItemDropped)); ItemDropped?.Invoke(d, q); }
public static void RaiseItemConsumed(ItemData d) { Log(nameof(ItemConsumed)); ItemConsumed?.Invoke(d); }
public static void RaiseItemPickedUp(ItemData d, int q) { Log(nameof(ItemPickedUp)); ItemPickedUp?.Invoke(d, q); }
+ public static void RaiseItemDiscovered(ItemData d) { Log(nameof(ItemDiscovered)); ItemDiscovered?.Invoke(d); }
+ public static void RaiseRecipeDiscovered(Sprite icon, string recipeName) { Log(nameof(RecipeDiscovered)); RecipeDiscovered?.Invoke(icon, recipeName); }
public static void RaiseHeldItemChanged(ItemData d) { Log(nameof(HeldItemChanged)); HeldItemChanged?.Invoke(d); }
public static void RaiseInventoryOpenChanged(bool b)
{
diff --git a/Assets/GAME/Script/UI/NotificationItemUI.cs b/Assets/GAME/Script/UI/NotificationItemUI.cs
index e0fbc7b4..dd3d554b 100644
--- a/Assets/GAME/Script/UI/NotificationItemUI.cs
+++ b/Assets/GAME/Script/UI/NotificationItemUI.cs
@@ -19,6 +19,7 @@ namespace Ashwild.UI
private int totalQuantity;
private float hideTimer;
private bool isHiding;
+ private bool isDiscovery;
private Tweener fadeTween;
private Tweener slideTween;
@@ -30,6 +31,9 @@ namespace Ashwild.UI
// A notification is either a gain (+) or a loss (-); merging only happens within the same direction.
public bool IsGain => totalQuantity >= 0;
+ // A discovery notification (icon + name + "NEW" badge) never merges with a gain/loss one.
+ public bool IsDiscovery => isDiscovery;
+
public void Initialize(ItemData item, int signedQuantity, Color numberColor, float displayDuration, float slideInDuration, Ease slideInEase)
{
itemData = item;
@@ -49,6 +53,34 @@ namespace Ashwild.UI
fadeTween = canvasGroup.DOFade(1f, slideInDuration).SetEase(Ease.OutQuad);
}
+ ///
+ /// Sets up a discovery notification: an icon and name (of the unlocked recipe) with a fixed
+ /// badge (e.g. "NEW") in the number slot, tinted with the caller-chosen colour. It carries no
+ /// quantity and never merges, so it reads as a one-time "recipe unlocked" cue.
+ ///
+ public void InitializeDiscovery(Sprite icon, string displayName, string badgeText, Color badgeColor, float displayDuration, float slideInDuration)
+ {
+ itemData = null;
+ isDiscovery = true;
+ hideTimer = displayDuration;
+ isHiding = false;
+
+ if (iconImage != null)
+ iconImage.sprite = icon;
+
+ if (labelText != null)
+ labelText.text = displayName;
+
+ if (numberText != null)
+ {
+ numberText.text = badgeText;
+ numberText.color = badgeColor;
+ }
+
+ canvasGroup.alpha = 0f;
+ fadeTween = canvasGroup.DOFade(1f, slideInDuration).SetEase(Ease.OutQuad);
+ }
+
public void AddQuantity(int signedAmount, float displayDuration)
{
totalQuantity += signedAmount;
diff --git a/Assets/GAME/Script/UI/NotificationUI.cs b/Assets/GAME/Script/UI/NotificationUI.cs
index f380de84..a4c6ae29 100644
--- a/Assets/GAME/Script/UI/NotificationUI.cs
+++ b/Assets/GAME/Script/UI/NotificationUI.cs
@@ -30,6 +30,11 @@ namespace Ashwild.UI
[SerializeField] private Color gainColor = new Color(0.45f, 1f, 0.45f); // picked up / added
[SerializeField] private Color lossColor = new Color(1f, 0.45f, 0.45f); // dropped / consumed
+ [Header("Discovery")]
+ [Tooltip("Badge shown in the number slot when a new item/recipe is discovered.")]
+ [SerializeField] private string discoveryLabel = "NEW";
+ [SerializeField] private Color discoveryColor = new Color(1f, 0.85f, 0.3f);
+
private readonly List activeNotifications = new List();
private void OnEnable()
@@ -37,6 +42,7 @@ namespace Ashwild.UI
PlayerEvents.ItemAdded += OnItemAdded;
PlayerEvents.ItemDropped += OnItemDropped;
PlayerEvents.ItemConsumed += OnItemConsumed;
+ PlayerEvents.RecipeDiscovered += OnRecipeDiscovered;
PlayerEvents.FoodPlacedToCook += OnItemSpent;
PlayerEvents.FuelAdded += OnItemSpent;
}
@@ -46,6 +52,7 @@ namespace Ashwild.UI
PlayerEvents.ItemAdded -= OnItemAdded;
PlayerEvents.ItemDropped -= OnItemDropped;
PlayerEvents.ItemConsumed -= OnItemConsumed;
+ PlayerEvents.RecipeDiscovered -= OnRecipeDiscovered;
PlayerEvents.FoodPlacedToCook -= OnItemSpent;
PlayerEvents.FuelAdded -= OnItemSpent;
}
@@ -53,6 +60,7 @@ namespace Ashwild.UI
private void OnItemAdded(ItemData item, int quantity) => Push(item, quantity);
private void OnItemDropped(ItemData item, int quantity) => Push(item, -quantity);
private void OnItemConsumed(ItemData item) => Push(item, -1);
+ private void OnRecipeDiscovered(Sprite icon, string recipeName) => PushDiscovery(icon, recipeName);
// Food placed on a cooking station or fuel fed to it both leave the inventory by one.
private void OnItemSpent(ItemData item) => Push(item, -1);
@@ -69,7 +77,8 @@ namespace Ashwild.UI
// Merge only with a notification for the same item AND same direction
for (int i = 0; i < activeNotifications.Count; i++)
{
- if (activeNotifications[i] != null && activeNotifications[i].ItemData == item
+ if (activeNotifications[i] != null && !activeNotifications[i].IsDiscovery
+ && activeNotifications[i].ItemData == item
&& activeNotifications[i].IsGain == gain)
{
activeNotifications[i].AddQuantity(signedQuantity, displayDuration);
@@ -94,6 +103,29 @@ namespace Ashwild.UI
activeNotifications.Add(notification);
}
+ ///
+ /// Pushes a one-time "NEW" notification for a newly unlocked recipe: its result icon and name
+ /// with the configured badge in the discovery colour. Never merges with anything.
+ ///
+ private void PushDiscovery(Sprite icon, string recipeName)
+ {
+ activeNotifications.RemoveAll(n => n == null);
+
+ GameObject go = Instantiate(notificationPrefab, container);
+ NotificationItemUI notification = go.GetComponent();
+
+ float targetY = startOffsetY + activeNotifications.Count * (notificationHeight + spacing);
+
+ RectTransform rt = notification.RectTransform;
+ rt.anchoredPosition = new Vector2(0f, targetY - 30f);
+
+ notification.InitializeDiscovery(icon, recipeName, discoveryLabel, discoveryColor, displayDuration, slideInDuration);
+
+ rt.DOAnchorPosY(targetY, slideInDuration).SetEase(slideInEase);
+
+ activeNotifications.Add(notification);
+ }
+
private void LateUpdate()
{
// Clean up destroyed notifications and reposition remaining ones
diff --git a/Assets/GAME/Images.meta b/Assets/GAME/Sprites.meta
similarity index 100%
rename from Assets/GAME/Images.meta
rename to Assets/GAME/Sprites.meta
diff --git a/Assets/GAME/Images/Box.png b/Assets/GAME/Sprites/Box.png
similarity index 100%
rename from Assets/GAME/Images/Box.png
rename to Assets/GAME/Sprites/Box.png
diff --git a/Assets/GAME/Images/Box.png.meta b/Assets/GAME/Sprites/Box.png.meta
similarity index 100%
rename from Assets/GAME/Images/Box.png.meta
rename to Assets/GAME/Sprites/Box.png.meta
diff --git a/Assets/GAME/Images/Build.meta b/Assets/GAME/Sprites/Build.meta
similarity index 100%
rename from Assets/GAME/Images/Build.meta
rename to Assets/GAME/Sprites/Build.meta
diff --git a/Assets/GAME/Images/Build/Animated PBR Chest _Wood_Demo.png b/Assets/GAME/Sprites/Build/Animated PBR Chest _Wood_Demo.png
similarity index 100%
rename from Assets/GAME/Images/Build/Animated PBR Chest _Wood_Demo.png
rename to Assets/GAME/Sprites/Build/Animated PBR Chest _Wood_Demo.png
diff --git a/Assets/GAME/Images/Build/Animated PBR Chest _Wood_Demo.png.meta b/Assets/GAME/Sprites/Build/Animated PBR Chest _Wood_Demo.png.meta
similarity index 100%
rename from Assets/GAME/Images/Build/Animated PBR Chest _Wood_Demo.png.meta
rename to Assets/GAME/Sprites/Build/Animated PBR Chest _Wood_Demo.png.meta
diff --git a/Assets/GAME/Images/Build/Door.png b/Assets/GAME/Sprites/Build/Door.png
similarity index 100%
rename from Assets/GAME/Images/Build/Door.png
rename to Assets/GAME/Sprites/Build/Door.png
diff --git a/Assets/GAME/Images/Build/Door.png.meta b/Assets/GAME/Sprites/Build/Door.png.meta
similarity index 100%
rename from Assets/GAME/Images/Build/Door.png.meta
rename to Assets/GAME/Sprites/Build/Door.png.meta
diff --git a/Assets/GAME/Images/Build/Foundation_Stairs_Prefab.png b/Assets/GAME/Sprites/Build/Foundation_Stairs_Prefab.png
similarity index 100%
rename from Assets/GAME/Images/Build/Foundation_Stairs_Prefab.png
rename to Assets/GAME/Sprites/Build/Foundation_Stairs_Prefab.png
diff --git a/Assets/GAME/Images/Build/Foundation_Stairs_Prefab.png.meta b/Assets/GAME/Sprites/Build/Foundation_Stairs_Prefab.png.meta
similarity index 100%
rename from Assets/GAME/Images/Build/Foundation_Stairs_Prefab.png.meta
rename to Assets/GAME/Sprites/Build/Foundation_Stairs_Prefab.png.meta
diff --git a/Assets/GAME/Images/Build/Wall_Prefab.png b/Assets/GAME/Sprites/Build/Wall_Prefab.png
similarity index 100%
rename from Assets/GAME/Images/Build/Wall_Prefab.png
rename to Assets/GAME/Sprites/Build/Wall_Prefab.png
diff --git a/Assets/GAME/Images/Build/Wall_Prefab.png.meta b/Assets/GAME/Sprites/Build/Wall_Prefab.png.meta
similarity index 100%
rename from Assets/GAME/Images/Build/Wall_Prefab.png.meta
rename to Assets/GAME/Sprites/Build/Wall_Prefab.png.meta
diff --git a/Assets/GAME/Images/Build/WoodCelling_Prefab.png b/Assets/GAME/Sprites/Build/WoodCelling_Prefab.png
similarity index 100%
rename from Assets/GAME/Images/Build/WoodCelling_Prefab.png
rename to Assets/GAME/Sprites/Build/WoodCelling_Prefab.png
diff --git a/Assets/GAME/Images/Build/WoodCelling_Prefab.png.meta b/Assets/GAME/Sprites/Build/WoodCelling_Prefab.png.meta
similarity index 100%
rename from Assets/GAME/Images/Build/WoodCelling_Prefab.png.meta
rename to Assets/GAME/Sprites/Build/WoodCelling_Prefab.png.meta
diff --git a/Assets/GAME/Images/Build/WoodWallDoor_Prefab.png b/Assets/GAME/Sprites/Build/WoodWallDoor_Prefab.png
similarity index 100%
rename from Assets/GAME/Images/Build/WoodWallDoor_Prefab.png
rename to Assets/GAME/Sprites/Build/WoodWallDoor_Prefab.png
diff --git a/Assets/GAME/Images/Build/WoodWallDoor_Prefab.png.meta b/Assets/GAME/Sprites/Build/WoodWallDoor_Prefab.png.meta
similarity index 100%
rename from Assets/GAME/Images/Build/WoodWallDoor_Prefab.png.meta
rename to Assets/GAME/Sprites/Build/WoodWallDoor_Prefab.png.meta
diff --git a/Assets/GAME/Images/Build/WoodWallWindow_Prefab.png b/Assets/GAME/Sprites/Build/WoodWallWindow_Prefab.png
similarity index 100%
rename from Assets/GAME/Images/Build/WoodWallWindow_Prefab.png
rename to Assets/GAME/Sprites/Build/WoodWallWindow_Prefab.png
diff --git a/Assets/GAME/Images/Build/WoodWallWindow_Prefab.png.meta b/Assets/GAME/Sprites/Build/WoodWallWindow_Prefab.png.meta
similarity index 100%
rename from Assets/GAME/Images/Build/WoodWallWindow_Prefab.png.meta
rename to Assets/GAME/Sprites/Build/WoodWallWindow_Prefab.png.meta
diff --git a/Assets/GAME/Images/ChatGPT Image 2 avr. 2026, 19_08_15.png b/Assets/GAME/Sprites/ChatGPT Image 2 avr. 2026, 19_08_15.png
similarity index 100%
rename from Assets/GAME/Images/ChatGPT Image 2 avr. 2026, 19_08_15.png
rename to Assets/GAME/Sprites/ChatGPT Image 2 avr. 2026, 19_08_15.png
diff --git a/Assets/GAME/Images/ChatGPT Image 2 avr. 2026, 19_08_15.png.meta b/Assets/GAME/Sprites/ChatGPT Image 2 avr. 2026, 19_08_15.png.meta
similarity index 100%
rename from Assets/GAME/Images/ChatGPT Image 2 avr. 2026, 19_08_15.png.meta
rename to Assets/GAME/Sprites/ChatGPT Image 2 avr. 2026, 19_08_15.png.meta
diff --git a/Assets/GAME/Images/Contour.png b/Assets/GAME/Sprites/Contour.png
similarity index 100%
rename from Assets/GAME/Images/Contour.png
rename to Assets/GAME/Sprites/Contour.png
diff --git a/Assets/GAME/Images/Contour.png.meta b/Assets/GAME/Sprites/Contour.png.meta
similarity index 100%
rename from Assets/GAME/Images/Contour.png.meta
rename to Assets/GAME/Sprites/Contour.png.meta
diff --git a/Assets/GAME/Images/Flat.png b/Assets/GAME/Sprites/Flat.png
similarity index 100%
rename from Assets/GAME/Images/Flat.png
rename to Assets/GAME/Sprites/Flat.png
diff --git a/Assets/GAME/Images/Flat.png.meta b/Assets/GAME/Sprites/Flat.png.meta
similarity index 100%
rename from Assets/GAME/Images/Flat.png.meta
rename to Assets/GAME/Sprites/Flat.png.meta
diff --git a/Assets/GAME/Images/Food.meta b/Assets/GAME/Sprites/Food.meta
similarity index 100%
rename from Assets/GAME/Images/Food.meta
rename to Assets/GAME/Sprites/Food.meta
diff --git a/Assets/GAME/Images/Food/Cooked Steak.png b/Assets/GAME/Sprites/Food/Cooked Steak.png
similarity index 100%
rename from Assets/GAME/Images/Food/Cooked Steak.png
rename to Assets/GAME/Sprites/Food/Cooked Steak.png
diff --git a/Assets/GAME/Images/Food/Cooked Steak.png.meta b/Assets/GAME/Sprites/Food/Cooked Steak.png.meta
similarity index 100%
rename from Assets/GAME/Images/Food/Cooked Steak.png.meta
rename to Assets/GAME/Sprites/Food/Cooked Steak.png.meta
diff --git a/Assets/GAME/Images/Food/Raw Steak.png b/Assets/GAME/Sprites/Food/Raw Steak.png
similarity index 100%
rename from Assets/GAME/Images/Food/Raw Steak.png
rename to Assets/GAME/Sprites/Food/Raw Steak.png
diff --git a/Assets/GAME/Images/Food/Raw Steak.png.meta b/Assets/GAME/Sprites/Food/Raw Steak.png.meta
similarity index 100%
rename from Assets/GAME/Images/Food/Raw Steak.png.meta
rename to Assets/GAME/Sprites/Food/Raw Steak.png.meta
diff --git a/Assets/GAME/Images/Hand Take.png b/Assets/GAME/Sprites/Hand Take.png
similarity index 100%
rename from Assets/GAME/Images/Hand Take.png
rename to Assets/GAME/Sprites/Hand Take.png
diff --git a/Assets/GAME/Images/Hand Take.png.meta b/Assets/GAME/Sprites/Hand Take.png.meta
similarity index 100%
rename from Assets/GAME/Images/Hand Take.png.meta
rename to Assets/GAME/Sprites/Hand Take.png.meta
diff --git a/Assets/GAME/Images/Input.meta b/Assets/GAME/Sprites/Input.meta
similarity index 100%
rename from Assets/GAME/Images/Input.meta
rename to Assets/GAME/Sprites/Input.meta
diff --git a/Assets/GAME/Images/Input/T_0_Key_Retro.png b/Assets/GAME/Sprites/Input/T_0_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_0_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_0_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_0_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_0_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_0_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_0_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_1_Key_Retro.png b/Assets/GAME/Sprites/Input/T_1_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_1_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_1_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_1_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_1_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_1_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_1_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_2_Key_Retro.png b/Assets/GAME/Sprites/Input/T_2_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_2_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_2_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_2_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_2_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_2_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_2_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_3_Key_Retro.png b/Assets/GAME/Sprites/Input/T_3_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_3_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_3_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_3_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_3_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_3_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_3_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_4_Key_Retro.png b/Assets/GAME/Sprites/Input/T_4_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_4_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_4_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_4_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_4_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_4_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_4_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_5_Key_Retro.png b/Assets/GAME/Sprites/Input/T_5_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_5_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_5_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_5_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_5_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_5_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_5_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_6_Key_Retro.png b/Assets/GAME/Sprites/Input/T_6_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_6_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_6_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_6_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_6_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_6_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_6_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_7_Key_Retro.png b/Assets/GAME/Sprites/Input/T_7_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_7_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_7_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_7_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_7_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_7_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_7_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_8_Key_Retro.png b/Assets/GAME/Sprites/Input/T_8_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_8_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_8_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_8_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_8_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_8_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_8_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_9_Key_Retro.png b/Assets/GAME/Sprites/Input/T_9_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_9_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_9_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_9_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_9_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_9_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_9_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_A_Key_Retro.png b/Assets/GAME/Sprites/Input/T_A_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_A_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_A_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_A_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_A_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_A_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_A_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Alt_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Alt_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Alt_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Alt_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Alt_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Alt_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Alt_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Alt_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Asterisk_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Asterisk_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Asterisk_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Asterisk_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Asterisk_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Asterisk_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Asterisk_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Asterisk_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_B_Key_Retro.png b/Assets/GAME/Sprites/Input/T_B_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_B_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_B_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_B_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_B_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_B_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_B_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_BackSpace_Key_Retro.png b/Assets/GAME/Sprites/Input/T_BackSpace_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_BackSpace_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_BackSpace_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_BackSpace_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_BackSpace_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_BackSpace_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_BackSpace_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Backspace_Alt_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Backspace_Alt_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Backspace_Alt_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Backspace_Alt_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Backspace_Alt_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Backspace_Alt_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Backspace_Alt_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Backspace_Alt_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Brackets_L_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Brackets_L_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Brackets_L_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Brackets_L_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Brackets_L_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Brackets_L_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Brackets_L_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Brackets_L_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Brackets_R_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Brackets_R_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Brackets_R_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Brackets_R_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Brackets_R_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Brackets_R_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Brackets_R_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Brackets_R_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_C_Key_Retro.png b/Assets/GAME/Sprites/Input/T_C_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_C_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_C_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_C_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_C_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_C_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_C_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_CapsLock_Key_Retro.png b/Assets/GAME/Sprites/Input/T_CapsLock_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_CapsLock_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_CapsLock_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_CapsLock_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_CapsLock_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_CapsLock_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_CapsLock_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Crtl_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Crtl_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Crtl_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Crtl_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Crtl_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Crtl_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Crtl_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Crtl_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Cursor_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Cursor_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Cursor_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Cursor_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Cursor_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Cursor_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Cursor_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Cursor_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_D_Key_Retro.png b/Assets/GAME/Sprites/Input/T_D_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_D_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_D_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_D_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_D_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_D_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_D_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Del_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Del_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Del_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Del_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Del_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Del_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Del_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Del_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Down_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Down_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Down_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Down_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Down_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Down_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Down_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Down_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_E_Key_Retro.png b/Assets/GAME/Sprites/Input/T_E_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_E_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_E_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_E_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_E_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_E_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_E_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_End_Key_Retro.png b/Assets/GAME/Sprites/Input/T_End_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_End_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_End_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_End_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_End_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_End_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_End_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Enter_Alt_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Enter_Alt_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Enter_Alt_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Enter_Alt_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Enter_Alt_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Enter_Alt_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Enter_Alt_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Enter_Alt_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Enter_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Enter_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Enter_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Enter_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Enter_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Enter_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Enter_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Enter_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Enter_Tall_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Enter_Tall_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Enter_Tall_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Enter_Tall_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Enter_Tall_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Enter_Tall_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Enter_Tall_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Enter_Tall_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Esc_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Esc_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Esc_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Esc_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Esc_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Esc_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Esc_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Esc_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_F10_Key_Retro.png b/Assets/GAME/Sprites/Input/T_F10_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_F10_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_F10_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_F10_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_F10_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_F10_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_F10_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_F11_Key_Retro.png b/Assets/GAME/Sprites/Input/T_F11_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_F11_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_F11_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_F11_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_F11_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_F11_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_F11_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_F12_Key_Retro.png b/Assets/GAME/Sprites/Input/T_F12_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_F12_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_F12_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_F12_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_F12_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_F12_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_F12_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_F1_Key_Retro.png b/Assets/GAME/Sprites/Input/T_F1_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_F1_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_F1_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_F1_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_F1_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_F1_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_F1_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_F2_Key_Retro.png b/Assets/GAME/Sprites/Input/T_F2_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_F2_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_F2_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_F2_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_F2_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_F2_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_F2_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_F3_Key_Retro.png b/Assets/GAME/Sprites/Input/T_F3_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_F3_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_F3_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_F3_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_F3_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_F3_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_F3_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_F4_Key_Retro.png b/Assets/GAME/Sprites/Input/T_F4_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_F4_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_F4_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_F4_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_F4_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_F4_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_F4_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_F5_Key_Retro.png b/Assets/GAME/Sprites/Input/T_F5_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_F5_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_F5_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_F5_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_F5_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_F5_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_F5_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_F6_Key_Retro.png b/Assets/GAME/Sprites/Input/T_F6_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_F6_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_F6_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_F6_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_F6_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_F6_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_F6_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_F7_Key_Retro.png b/Assets/GAME/Sprites/Input/T_F7_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_F7_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_F7_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_F7_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_F7_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_F7_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_F7_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_F8_Key_Retro.png b/Assets/GAME/Sprites/Input/T_F8_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_F8_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_F8_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_F8_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_F8_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_F8_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_F8_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_F9_Key_Retro.png b/Assets/GAME/Sprites/Input/T_F9_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_F9_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_F9_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_F9_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_F9_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_F9_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_F9_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_F_Key_Retro.png b/Assets/GAME/Sprites/Input/T_F_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_F_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_F_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_F_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_F_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_F_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_F_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_G_Key_Retro.png b/Assets/GAME/Sprites/Input/T_G_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_G_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_G_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_G_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_G_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_G_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_G_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_H_Key_Retro.png b/Assets/GAME/Sprites/Input/T_H_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_H_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_H_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_H_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_H_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_H_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_H_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Home_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Home_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Home_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Home_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Home_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Home_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Home_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Home_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_I_Key_Retro.png b/Assets/GAME/Sprites/Input/T_I_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_I_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_I_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_I_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_I_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_I_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_I_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Ins_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Ins_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Ins_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Ins_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Ins_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Ins_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Ins_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Ins_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_J_Key_Retro.png b/Assets/GAME/Sprites/Input/T_J_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_J_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_J_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_J_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_J_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_J_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_J_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_K_Key_Retro.png b/Assets/GAME/Sprites/Input/T_K_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_K_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_K_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_K_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_K_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_K_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_K_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Keyboard_R_Key_Retro-1.png b/Assets/GAME/Sprites/Input/T_Keyboard_R_Key_Retro-1.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Keyboard_R_Key_Retro-1.png
rename to Assets/GAME/Sprites/Input/T_Keyboard_R_Key_Retro-1.png
diff --git a/Assets/GAME/Images/Input/T_Keyboard_R_Key_Retro-1.png.meta b/Assets/GAME/Sprites/Input/T_Keyboard_R_Key_Retro-1.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Keyboard_R_Key_Retro-1.png.meta
rename to Assets/GAME/Sprites/Input/T_Keyboard_R_Key_Retro-1.png.meta
diff --git a/Assets/GAME/Images/Input/T_Keyboard_R_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Keyboard_R_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Keyboard_R_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Keyboard_R_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Keyboard_R_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Keyboard_R_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Keyboard_R_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Keyboard_R_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_L_Key_Retro.png b/Assets/GAME/Sprites/Input/T_L_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_L_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_L_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_L_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_L_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_L_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_L_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Left_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Left_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Left_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Left_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Left_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Left_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Left_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Left_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_M_Key_Retro.png b/Assets/GAME/Sprites/Input/T_M_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_M_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_M_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_M_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_M_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_M_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_M_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Minus_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Minus_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Minus_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Minus_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Minus_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Minus_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Minus_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Minus_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Mouse_Left_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Mouse_Left_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Mouse_Left_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Mouse_Left_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Mouse_Left_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Mouse_Left_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Mouse_Left_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Mouse_Left_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Mouse_Middle_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Mouse_Middle_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Mouse_Middle_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Mouse_Middle_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Mouse_Middle_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Mouse_Middle_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Mouse_Middle_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Mouse_Middle_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Mouse_Right_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Mouse_Right_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Mouse_Right_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Mouse_Right_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Mouse_Right_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Mouse_Right_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Mouse_Right_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Mouse_Right_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Mouse_Scroll_Down_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Mouse_Scroll_Down_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Mouse_Scroll_Down_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Mouse_Scroll_Down_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Mouse_Scroll_Down_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Mouse_Scroll_Down_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Mouse_Scroll_Down_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Mouse_Scroll_Down_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Mouse_Scroll_Key_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Mouse_Scroll_Key_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Mouse_Scroll_Key_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Mouse_Scroll_Key_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Mouse_Scroll_Key_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Mouse_Scroll_Key_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Mouse_Scroll_Key_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Mouse_Scroll_Key_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Mouse_Scroll_Up_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Mouse_Scroll_Up_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Mouse_Scroll_Up_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Mouse_Scroll_Up_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Mouse_Scroll_Up_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Mouse_Scroll_Up_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Mouse_Scroll_Up_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Mouse_Scroll_Up_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Mouse_Simple_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Mouse_Simple_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Mouse_Simple_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Mouse_Simple_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Mouse_Simple_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Mouse_Simple_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Mouse_Simple_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Mouse_Simple_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Mouse_X_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Mouse_X_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Mouse_X_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Mouse_X_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Mouse_X_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Mouse_X_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Mouse_X_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Mouse_X_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_N_Key_Retro.png b/Assets/GAME/Sprites/Input/T_N_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_N_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_N_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_N_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_N_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_N_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_N_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_NumLock_Key_Retro.png b/Assets/GAME/Sprites/Input/T_NumLock_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_NumLock_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_NumLock_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_NumLock_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_NumLock_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_NumLock_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_NumLock_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_O_Key_Retro.png b/Assets/GAME/Sprites/Input/T_O_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_O_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_O_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_O_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_O_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_O_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_O_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_P_Key_Retro.png b/Assets/GAME/Sprites/Input/T_P_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_P_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_P_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_P_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_P_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_P_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_P_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_PageDown_Key_Retro.png b/Assets/GAME/Sprites/Input/T_PageDown_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_PageDown_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_PageDown_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_PageDown_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_PageDown_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_PageDown_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_PageDown_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_PageUp_Key_Retro.png b/Assets/GAME/Sprites/Input/T_PageUp_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_PageUp_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_PageUp_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_PageUp_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_PageUp_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_PageUp_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_PageUp_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Plus_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Plus_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Plus_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Plus_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Plus_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Plus_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Plus_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Plus_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Plus_Tall_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Plus_Tall_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Plus_Tall_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Plus_Tall_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Plus_Tall_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Plus_Tall_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Plus_Tall_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Plus_Tall_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_PrtScrn_Key_Retro.png b/Assets/GAME/Sprites/Input/T_PrtScrn_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_PrtScrn_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_PrtScrn_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_PrtScrn_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_PrtScrn_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_PrtScrn_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_PrtScrn_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Q_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Q_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Q_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Q_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Q_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Q_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Q_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Q_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Question_Mark_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Question_Mark_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Question_Mark_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Question_Mark_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Question_Mark_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Question_Mark_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Question_Mark_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Question_Mark_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Quotation_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Quotation_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Quotation_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Quotation_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Quotation_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Quotation_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Quotation_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Quotation_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_R_Key_Retro.png b/Assets/GAME/Sprites/Input/T_R_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_R_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_R_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_R_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_R_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_R_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_R_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Right_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Right_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Right_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Right_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Right_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Right_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Right_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Right_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_S_Key_Retro.png b/Assets/GAME/Sprites/Input/T_S_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_S_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_S_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_S_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_S_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_S_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_S_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Semicolon_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Semicolon_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Semicolon_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Semicolon_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Semicolon_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Semicolon_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Semicolon_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Semicolon_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Shift_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Shift_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Shift_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Shift_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Shift_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Shift_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Shift_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Shift_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Shift_Super_Wide_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Shift_Super_Wide_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Shift_Super_Wide_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Shift_Super_Wide_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Shift_Super_Wide_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Shift_Super_Wide_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Shift_Super_Wide_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Shift_Super_Wide_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Slash_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Slash_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Slash_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Slash_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Slash_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Slash_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Slash_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Slash_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Space_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Space_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Space_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Space_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Space_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Space_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Space_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Space_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_T_Key_Retro.png b/Assets/GAME/Sprites/Input/T_T_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_T_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_T_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_T_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_T_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_T_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_T_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Tab_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Tab_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Tab_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Tab_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Tab_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Tab_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Tab_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Tab_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Tilde_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Tilde_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Tilde_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Tilde_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Tilde_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Tilde_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Tilde_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Tilde_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_U_Key_Retro.png b/Assets/GAME/Sprites/Input/T_U_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_U_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_U_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_U_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_U_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_U_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_U_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Up_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Up_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Up_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Up_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Up_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Up_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Up_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Up_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_V_Key_Retro.png b/Assets/GAME/Sprites/Input/T_V_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_V_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_V_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_V_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_V_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_V_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_V_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_W_Key_Retro.png b/Assets/GAME/Sprites/Input/T_W_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_W_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_W_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_W_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_W_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_W_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_W_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_X_Key_Retro.png b/Assets/GAME/Sprites/Input/T_X_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_X_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_X_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_X_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_X_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_X_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_X_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Y_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Y_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Y_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Y_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Y_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Y_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Y_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Y_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Input/T_Z_Key_Retro.png b/Assets/GAME/Sprites/Input/T_Z_Key_Retro.png
similarity index 100%
rename from Assets/GAME/Images/Input/T_Z_Key_Retro.png
rename to Assets/GAME/Sprites/Input/T_Z_Key_Retro.png
diff --git a/Assets/GAME/Images/Input/T_Z_Key_Retro.png.meta b/Assets/GAME/Sprites/Input/T_Z_Key_Retro.png.meta
similarity index 100%
rename from Assets/GAME/Images/Input/T_Z_Key_Retro.png.meta
rename to Assets/GAME/Sprites/Input/T_Z_Key_Retro.png.meta
diff --git a/Assets/GAME/Images/Item.meta b/Assets/GAME/Sprites/Item.meta
similarity index 100%
rename from Assets/GAME/Images/Item.meta
rename to Assets/GAME/Sprites/Item.meta
diff --git a/Assets/GAME/Images/Item/ChatGPT Image 25 juin 2026, 09_36_08.png b/Assets/GAME/Sprites/Item/ChatGPT Image 25 juin 2026, 09_36_08.png
similarity index 100%
rename from Assets/GAME/Images/Item/ChatGPT Image 25 juin 2026, 09_36_08.png
rename to Assets/GAME/Sprites/Item/ChatGPT Image 25 juin 2026, 09_36_08.png
diff --git a/Assets/GAME/Images/Item/ChatGPT Image 25 juin 2026, 09_36_08.png.meta b/Assets/GAME/Sprites/Item/ChatGPT Image 25 juin 2026, 09_36_08.png.meta
similarity index 100%
rename from Assets/GAME/Images/Item/ChatGPT Image 25 juin 2026, 09_36_08.png.meta
rename to Assets/GAME/Sprites/Item/ChatGPT Image 25 juin 2026, 09_36_08.png.meta
diff --git a/Assets/GAME/Images/Item/ChatGPT Image 25 juin 2026, 09_39_23.png b/Assets/GAME/Sprites/Item/ChatGPT Image 25 juin 2026, 09_39_23.png
similarity index 100%
rename from Assets/GAME/Images/Item/ChatGPT Image 25 juin 2026, 09_39_23.png
rename to Assets/GAME/Sprites/Item/ChatGPT Image 25 juin 2026, 09_39_23.png
diff --git a/Assets/GAME/Images/Item/ChatGPT Image 25 juin 2026, 09_39_23.png.meta b/Assets/GAME/Sprites/Item/ChatGPT Image 25 juin 2026, 09_39_23.png.meta
similarity index 100%
rename from Assets/GAME/Images/Item/ChatGPT Image 25 juin 2026, 09_39_23.png.meta
rename to Assets/GAME/Sprites/Item/ChatGPT Image 25 juin 2026, 09_39_23.png.meta
diff --git a/Assets/GAME/Images/Logo.meta b/Assets/GAME/Sprites/Logo.meta
similarity index 100%
rename from Assets/GAME/Images/Logo.meta
rename to Assets/GAME/Sprites/Logo.meta
diff --git a/Assets/GAME/Images/Logo/Logo 1.png b/Assets/GAME/Sprites/Logo/Logo 1.png
similarity index 100%
rename from Assets/GAME/Images/Logo/Logo 1.png
rename to Assets/GAME/Sprites/Logo/Logo 1.png
diff --git a/Assets/GAME/Images/Logo/Logo 1.png.meta b/Assets/GAME/Sprites/Logo/Logo 1.png.meta
similarity index 100%
rename from Assets/GAME/Images/Logo/Logo 1.png.meta
rename to Assets/GAME/Sprites/Logo/Logo 1.png.meta
diff --git a/Assets/GAME/Images/Menu.meta b/Assets/GAME/Sprites/Menu.meta
similarity index 100%
rename from Assets/GAME/Images/Menu.meta
rename to Assets/GAME/Sprites/Menu.meta
diff --git a/Assets/GAME/Images/Menu/Loading Sceen.meta b/Assets/GAME/Sprites/Menu/Loading Sceen.meta
similarity index 100%
rename from Assets/GAME/Images/Menu/Loading Sceen.meta
rename to Assets/GAME/Sprites/Menu/Loading Sceen.meta
diff --git a/Assets/GAME/Images/Menu/Loading Sceen/ChatGPT Image 24 juin 2026, 08_42_48.png b/Assets/GAME/Sprites/Menu/Loading Sceen/ChatGPT Image 24 juin 2026, 08_42_48.png
similarity index 100%
rename from Assets/GAME/Images/Menu/Loading Sceen/ChatGPT Image 24 juin 2026, 08_42_48.png
rename to Assets/GAME/Sprites/Menu/Loading Sceen/ChatGPT Image 24 juin 2026, 08_42_48.png
diff --git a/Assets/GAME/Images/Menu/Loading Sceen/ChatGPT Image 24 juin 2026, 08_42_48.png.meta b/Assets/GAME/Sprites/Menu/Loading Sceen/ChatGPT Image 24 juin 2026, 08_42_48.png.meta
similarity index 100%
rename from Assets/GAME/Images/Menu/Loading Sceen/ChatGPT Image 24 juin 2026, 08_42_48.png.meta
rename to Assets/GAME/Sprites/Menu/Loading Sceen/ChatGPT Image 24 juin 2026, 08_42_48.png.meta
diff --git a/Assets/GAME/Images/Menu/Pause Menu.meta b/Assets/GAME/Sprites/Menu/Pause Menu.meta
similarity index 100%
rename from Assets/GAME/Images/Menu/Pause Menu.meta
rename to Assets/GAME/Sprites/Menu/Pause Menu.meta
diff --git a/Assets/GAME/Images/Menu/Pause Menu/copier-le-document.png b/Assets/GAME/Sprites/Menu/Pause Menu/copier-le-document.png
similarity index 100%
rename from Assets/GAME/Images/Menu/Pause Menu/copier-le-document.png
rename to Assets/GAME/Sprites/Menu/Pause Menu/copier-le-document.png
diff --git a/Assets/GAME/Images/Menu/Pause Menu/copier-le-document.png.meta b/Assets/GAME/Sprites/Menu/Pause Menu/copier-le-document.png.meta
similarity index 100%
rename from Assets/GAME/Images/Menu/Pause Menu/copier-le-document.png.meta
rename to Assets/GAME/Sprites/Menu/Pause Menu/copier-le-document.png.meta
diff --git a/Assets/GAME/Images/Menu/Setting.meta b/Assets/GAME/Sprites/Menu/Setting.meta
similarity index 100%
rename from Assets/GAME/Images/Menu/Setting.meta
rename to Assets/GAME/Sprites/Menu/Setting.meta
diff --git a/Assets/GAME/Images/Menu/Setting/Reste.png b/Assets/GAME/Sprites/Menu/Setting/Reste.png
similarity index 100%
rename from Assets/GAME/Images/Menu/Setting/Reste.png
rename to Assets/GAME/Sprites/Menu/Setting/Reste.png
diff --git a/Assets/GAME/Images/Menu/Setting/Reste.png.meta b/Assets/GAME/Sprites/Menu/Setting/Reste.png.meta
similarity index 100%
rename from Assets/GAME/Images/Menu/Setting/Reste.png.meta
rename to Assets/GAME/Sprites/Menu/Setting/Reste.png.meta
diff --git a/Assets/GAME/Images/Ressources.meta b/Assets/GAME/Sprites/Ressources.meta
similarity index 100%
rename from Assets/GAME/Images/Ressources.meta
rename to Assets/GAME/Sprites/Ressources.meta
diff --git a/Assets/GAME/Images/Ressources/Wood.png b/Assets/GAME/Sprites/Ressources/Wood.png
similarity index 100%
rename from Assets/GAME/Images/Ressources/Wood.png
rename to Assets/GAME/Sprites/Ressources/Wood.png
diff --git a/Assets/GAME/Images/Ressources/Wood.png.meta b/Assets/GAME/Sprites/Ressources/Wood.png.meta
similarity index 100%
rename from Assets/GAME/Images/Ressources/Wood.png.meta
rename to Assets/GAME/Sprites/Ressources/Wood.png.meta
diff --git a/Assets/GAME/Images/Ressources/brqnch.png b/Assets/GAME/Sprites/Ressources/brqnch.png
similarity index 100%
rename from Assets/GAME/Images/Ressources/brqnch.png
rename to Assets/GAME/Sprites/Ressources/brqnch.png
diff --git a/Assets/GAME/Images/Ressources/brqnch.png.meta b/Assets/GAME/Sprites/Ressources/brqnch.png.meta
similarity index 100%
rename from Assets/GAME/Images/Ressources/brqnch.png.meta
rename to Assets/GAME/Sprites/Ressources/brqnch.png.meta
diff --git a/Assets/GAME/Images/Sans titre-1 (1).png b/Assets/GAME/Sprites/Sans titre-1 (1).png
similarity index 100%
rename from Assets/GAME/Images/Sans titre-1 (1).png
rename to Assets/GAME/Sprites/Sans titre-1 (1).png
diff --git a/Assets/GAME/Images/Sans titre-1 (1).png.meta b/Assets/GAME/Sprites/Sans titre-1 (1).png.meta
similarity index 100%
rename from Assets/GAME/Images/Sans titre-1 (1).png.meta
rename to Assets/GAME/Sprites/Sans titre-1 (1).png.meta
diff --git a/Assets/GAME/Images/Sans titre-1.png b/Assets/GAME/Sprites/Sans titre-1.png
similarity index 100%
rename from Assets/GAME/Images/Sans titre-1.png
rename to Assets/GAME/Sprites/Sans titre-1.png
diff --git a/Assets/GAME/Images/Sans titre-1.png.meta b/Assets/GAME/Sprites/Sans titre-1.png.meta
similarity index 100%
rename from Assets/GAME/Images/Sans titre-1.png.meta
rename to Assets/GAME/Sprites/Sans titre-1.png.meta
diff --git a/Assets/GAME/Images/arrow.png b/Assets/GAME/Sprites/arrow.png
similarity index 100%
rename from Assets/GAME/Images/arrow.png
rename to Assets/GAME/Sprites/arrow.png
diff --git a/Assets/GAME/Images/arrow.png.meta b/Assets/GAME/Sprites/arrow.png.meta
similarity index 100%
rename from Assets/GAME/Images/arrow.png.meta
rename to Assets/GAME/Sprites/arrow.png.meta
diff --git a/Assets/GAME/Images/arrowBeige_left.png b/Assets/GAME/Sprites/arrowBeige_left.png
similarity index 100%
rename from Assets/GAME/Images/arrowBeige_left.png
rename to Assets/GAME/Sprites/arrowBeige_left.png
diff --git a/Assets/GAME/Images/arrowBeige_left.png.meta b/Assets/GAME/Sprites/arrowBeige_left.png.meta
similarity index 100%
rename from Assets/GAME/Images/arrowBeige_left.png.meta
rename to Assets/GAME/Sprites/arrowBeige_left.png.meta
diff --git a/Assets/GAME/Images/arrowBeige_right.png b/Assets/GAME/Sprites/arrowBeige_right.png
similarity index 100%
rename from Assets/GAME/Images/arrowBeige_right.png
rename to Assets/GAME/Sprites/arrowBeige_right.png
diff --git a/Assets/GAME/Images/arrowBeige_right.png.meta b/Assets/GAME/Sprites/arrowBeige_right.png.meta
similarity index 100%
rename from Assets/GAME/Images/arrowBeige_right.png.meta
rename to Assets/GAME/Sprites/arrowBeige_right.png.meta
diff --git a/Assets/GAME/Images/arrowBlue_left.png b/Assets/GAME/Sprites/arrowBlue_left.png
similarity index 100%
rename from Assets/GAME/Images/arrowBlue_left.png
rename to Assets/GAME/Sprites/arrowBlue_left.png
diff --git a/Assets/GAME/Images/arrowBlue_left.png.meta b/Assets/GAME/Sprites/arrowBlue_left.png.meta
similarity index 100%
rename from Assets/GAME/Images/arrowBlue_left.png.meta
rename to Assets/GAME/Sprites/arrowBlue_left.png.meta
diff --git a/Assets/GAME/Images/arrowBlue_right.png b/Assets/GAME/Sprites/arrowBlue_right.png
similarity index 100%
rename from Assets/GAME/Images/arrowBlue_right.png
rename to Assets/GAME/Sprites/arrowBlue_right.png
diff --git a/Assets/GAME/Images/arrowBlue_right.png.meta b/Assets/GAME/Sprites/arrowBlue_right.png.meta
similarity index 100%
rename from Assets/GAME/Images/arrowBlue_right.png.meta
rename to Assets/GAME/Sprites/arrowBlue_right.png.meta
diff --git a/Assets/GAME/Images/arrowBrown_left.png b/Assets/GAME/Sprites/arrowBrown_left.png
similarity index 100%
rename from Assets/GAME/Images/arrowBrown_left.png
rename to Assets/GAME/Sprites/arrowBrown_left.png
diff --git a/Assets/GAME/Images/arrowBrown_left.png.meta b/Assets/GAME/Sprites/arrowBrown_left.png.meta
similarity index 100%
rename from Assets/GAME/Images/arrowBrown_left.png.meta
rename to Assets/GAME/Sprites/arrowBrown_left.png.meta
diff --git a/Assets/GAME/Images/arrowBrown_right.png b/Assets/GAME/Sprites/arrowBrown_right.png
similarity index 100%
rename from Assets/GAME/Images/arrowBrown_right.png
rename to Assets/GAME/Sprites/arrowBrown_right.png
diff --git a/Assets/GAME/Images/arrowBrown_right.png.meta b/Assets/GAME/Sprites/arrowBrown_right.png.meta
similarity index 100%
rename from Assets/GAME/Images/arrowBrown_right.png.meta
rename to Assets/GAME/Sprites/arrowBrown_right.png.meta
diff --git a/Assets/GAME/Images/arrowSilver_left.png b/Assets/GAME/Sprites/arrowSilver_left.png
similarity index 100%
rename from Assets/GAME/Images/arrowSilver_left.png
rename to Assets/GAME/Sprites/arrowSilver_left.png
diff --git a/Assets/GAME/Images/arrowSilver_left.png.meta b/Assets/GAME/Sprites/arrowSilver_left.png.meta
similarity index 100%
rename from Assets/GAME/Images/arrowSilver_left.png.meta
rename to Assets/GAME/Sprites/arrowSilver_left.png.meta
diff --git a/Assets/GAME/Images/arrowSilver_right.png b/Assets/GAME/Sprites/arrowSilver_right.png
similarity index 100%
rename from Assets/GAME/Images/arrowSilver_right.png
rename to Assets/GAME/Sprites/arrowSilver_right.png
diff --git a/Assets/GAME/Images/arrowSilver_right.png.meta b/Assets/GAME/Sprites/arrowSilver_right.png.meta
similarity index 100%
rename from Assets/GAME/Images/arrowSilver_right.png.meta
rename to Assets/GAME/Sprites/arrowSilver_right.png.meta
diff --git a/Assets/GAME/Images/barBack_horizontalLeft.png b/Assets/GAME/Sprites/barBack_horizontalLeft.png
similarity index 100%
rename from Assets/GAME/Images/barBack_horizontalLeft.png
rename to Assets/GAME/Sprites/barBack_horizontalLeft.png
diff --git a/Assets/GAME/Images/barBack_horizontalLeft.png.meta b/Assets/GAME/Sprites/barBack_horizontalLeft.png.meta
similarity index 100%
rename from Assets/GAME/Images/barBack_horizontalLeft.png.meta
rename to Assets/GAME/Sprites/barBack_horizontalLeft.png.meta
diff --git a/Assets/GAME/Images/barBack_horizontalMid.png b/Assets/GAME/Sprites/barBack_horizontalMid.png
similarity index 100%
rename from Assets/GAME/Images/barBack_horizontalMid.png
rename to Assets/GAME/Sprites/barBack_horizontalMid.png
diff --git a/Assets/GAME/Images/barBack_horizontalMid.png.meta b/Assets/GAME/Sprites/barBack_horizontalMid.png.meta
similarity index 100%
rename from Assets/GAME/Images/barBack_horizontalMid.png.meta
rename to Assets/GAME/Sprites/barBack_horizontalMid.png.meta
diff --git a/Assets/GAME/Images/barBack_horizontalRight.png b/Assets/GAME/Sprites/barBack_horizontalRight.png
similarity index 100%
rename from Assets/GAME/Images/barBack_horizontalRight.png
rename to Assets/GAME/Sprites/barBack_horizontalRight.png
diff --git a/Assets/GAME/Images/barBack_horizontalRight.png.meta b/Assets/GAME/Sprites/barBack_horizontalRight.png.meta
similarity index 100%
rename from Assets/GAME/Images/barBack_horizontalRight.png.meta
rename to Assets/GAME/Sprites/barBack_horizontalRight.png.meta
diff --git a/Assets/GAME/Images/barBack_verticalBottom.png b/Assets/GAME/Sprites/barBack_verticalBottom.png
similarity index 100%
rename from Assets/GAME/Images/barBack_verticalBottom.png
rename to Assets/GAME/Sprites/barBack_verticalBottom.png
diff --git a/Assets/GAME/Images/barBack_verticalBottom.png.meta b/Assets/GAME/Sprites/barBack_verticalBottom.png.meta
similarity index 100%
rename from Assets/GAME/Images/barBack_verticalBottom.png.meta
rename to Assets/GAME/Sprites/barBack_verticalBottom.png.meta
diff --git a/Assets/GAME/Images/barBack_verticalMid.png b/Assets/GAME/Sprites/barBack_verticalMid.png
similarity index 100%
rename from Assets/GAME/Images/barBack_verticalMid.png
rename to Assets/GAME/Sprites/barBack_verticalMid.png
diff --git a/Assets/GAME/Images/barBack_verticalMid.png.meta b/Assets/GAME/Sprites/barBack_verticalMid.png.meta
similarity index 100%
rename from Assets/GAME/Images/barBack_verticalMid.png.meta
rename to Assets/GAME/Sprites/barBack_verticalMid.png.meta
diff --git a/Assets/GAME/Images/barBack_verticalTop.png b/Assets/GAME/Sprites/barBack_verticalTop.png
similarity index 100%
rename from Assets/GAME/Images/barBack_verticalTop.png
rename to Assets/GAME/Sprites/barBack_verticalTop.png
diff --git a/Assets/GAME/Images/barBack_verticalTop.png.meta b/Assets/GAME/Sprites/barBack_verticalTop.png.meta
similarity index 100%
rename from Assets/GAME/Images/barBack_verticalTop.png.meta
rename to Assets/GAME/Sprites/barBack_verticalTop.png.meta
diff --git a/Assets/GAME/Images/barBlue_horizontalBlue.png b/Assets/GAME/Sprites/barBlue_horizontalBlue.png
similarity index 100%
rename from Assets/GAME/Images/barBlue_horizontalBlue.png
rename to Assets/GAME/Sprites/barBlue_horizontalBlue.png
diff --git a/Assets/GAME/Images/barBlue_horizontalBlue.png.meta b/Assets/GAME/Sprites/barBlue_horizontalBlue.png.meta
similarity index 100%
rename from Assets/GAME/Images/barBlue_horizontalBlue.png.meta
rename to Assets/GAME/Sprites/barBlue_horizontalBlue.png.meta
diff --git a/Assets/GAME/Images/barBlue_horizontalLeft.png b/Assets/GAME/Sprites/barBlue_horizontalLeft.png
similarity index 100%
rename from Assets/GAME/Images/barBlue_horizontalLeft.png
rename to Assets/GAME/Sprites/barBlue_horizontalLeft.png
diff --git a/Assets/GAME/Images/barBlue_horizontalLeft.png.meta b/Assets/GAME/Sprites/barBlue_horizontalLeft.png.meta
similarity index 100%
rename from Assets/GAME/Images/barBlue_horizontalLeft.png.meta
rename to Assets/GAME/Sprites/barBlue_horizontalLeft.png.meta
diff --git a/Assets/GAME/Images/barBlue_horizontalRight.png b/Assets/GAME/Sprites/barBlue_horizontalRight.png
similarity index 100%
rename from Assets/GAME/Images/barBlue_horizontalRight.png
rename to Assets/GAME/Sprites/barBlue_horizontalRight.png
diff --git a/Assets/GAME/Images/barBlue_horizontalRight.png.meta b/Assets/GAME/Sprites/barBlue_horizontalRight.png.meta
similarity index 100%
rename from Assets/GAME/Images/barBlue_horizontalRight.png.meta
rename to Assets/GAME/Sprites/barBlue_horizontalRight.png.meta
diff --git a/Assets/GAME/Images/barBlue_verticalBottom.png b/Assets/GAME/Sprites/barBlue_verticalBottom.png
similarity index 100%
rename from Assets/GAME/Images/barBlue_verticalBottom.png
rename to Assets/GAME/Sprites/barBlue_verticalBottom.png
diff --git a/Assets/GAME/Images/barBlue_verticalBottom.png.meta b/Assets/GAME/Sprites/barBlue_verticalBottom.png.meta
similarity index 100%
rename from Assets/GAME/Images/barBlue_verticalBottom.png.meta
rename to Assets/GAME/Sprites/barBlue_verticalBottom.png.meta
diff --git a/Assets/GAME/Images/barBlue_verticalMid.png b/Assets/GAME/Sprites/barBlue_verticalMid.png
similarity index 100%
rename from Assets/GAME/Images/barBlue_verticalMid.png
rename to Assets/GAME/Sprites/barBlue_verticalMid.png
diff --git a/Assets/GAME/Images/barBlue_verticalMid.png.meta b/Assets/GAME/Sprites/barBlue_verticalMid.png.meta
similarity index 100%
rename from Assets/GAME/Images/barBlue_verticalMid.png.meta
rename to Assets/GAME/Sprites/barBlue_verticalMid.png.meta
diff --git a/Assets/GAME/Images/barBlue_verticalTop.png b/Assets/GAME/Sprites/barBlue_verticalTop.png
similarity index 100%
rename from Assets/GAME/Images/barBlue_verticalTop.png
rename to Assets/GAME/Sprites/barBlue_verticalTop.png
diff --git a/Assets/GAME/Images/barBlue_verticalTop.png.meta b/Assets/GAME/Sprites/barBlue_verticalTop.png.meta
similarity index 100%
rename from Assets/GAME/Images/barBlue_verticalTop.png.meta
rename to Assets/GAME/Sprites/barBlue_verticalTop.png.meta
diff --git a/Assets/GAME/Images/barGreen_horizontalLeft.png b/Assets/GAME/Sprites/barGreen_horizontalLeft.png
similarity index 100%
rename from Assets/GAME/Images/barGreen_horizontalLeft.png
rename to Assets/GAME/Sprites/barGreen_horizontalLeft.png
diff --git a/Assets/GAME/Images/barGreen_horizontalLeft.png.meta b/Assets/GAME/Sprites/barGreen_horizontalLeft.png.meta
similarity index 100%
rename from Assets/GAME/Images/barGreen_horizontalLeft.png.meta
rename to Assets/GAME/Sprites/barGreen_horizontalLeft.png.meta
diff --git a/Assets/GAME/Images/barGreen_horizontalMid.png b/Assets/GAME/Sprites/barGreen_horizontalMid.png
similarity index 100%
rename from Assets/GAME/Images/barGreen_horizontalMid.png
rename to Assets/GAME/Sprites/barGreen_horizontalMid.png
diff --git a/Assets/GAME/Images/barGreen_horizontalMid.png.meta b/Assets/GAME/Sprites/barGreen_horizontalMid.png.meta
similarity index 100%
rename from Assets/GAME/Images/barGreen_horizontalMid.png.meta
rename to Assets/GAME/Sprites/barGreen_horizontalMid.png.meta
diff --git a/Assets/GAME/Images/barGreen_horizontalRight.png b/Assets/GAME/Sprites/barGreen_horizontalRight.png
similarity index 100%
rename from Assets/GAME/Images/barGreen_horizontalRight.png
rename to Assets/GAME/Sprites/barGreen_horizontalRight.png
diff --git a/Assets/GAME/Images/barGreen_horizontalRight.png.meta b/Assets/GAME/Sprites/barGreen_horizontalRight.png.meta
similarity index 100%
rename from Assets/GAME/Images/barGreen_horizontalRight.png.meta
rename to Assets/GAME/Sprites/barGreen_horizontalRight.png.meta
diff --git a/Assets/GAME/Images/barGreen_verticalBottom.png b/Assets/GAME/Sprites/barGreen_verticalBottom.png
similarity index 100%
rename from Assets/GAME/Images/barGreen_verticalBottom.png
rename to Assets/GAME/Sprites/barGreen_verticalBottom.png
diff --git a/Assets/GAME/Images/barGreen_verticalBottom.png.meta b/Assets/GAME/Sprites/barGreen_verticalBottom.png.meta
similarity index 100%
rename from Assets/GAME/Images/barGreen_verticalBottom.png.meta
rename to Assets/GAME/Sprites/barGreen_verticalBottom.png.meta
diff --git a/Assets/GAME/Images/barGreen_verticalMid.png b/Assets/GAME/Sprites/barGreen_verticalMid.png
similarity index 100%
rename from Assets/GAME/Images/barGreen_verticalMid.png
rename to Assets/GAME/Sprites/barGreen_verticalMid.png
diff --git a/Assets/GAME/Images/barGreen_verticalMid.png.meta b/Assets/GAME/Sprites/barGreen_verticalMid.png.meta
similarity index 100%
rename from Assets/GAME/Images/barGreen_verticalMid.png.meta
rename to Assets/GAME/Sprites/barGreen_verticalMid.png.meta
diff --git a/Assets/GAME/Images/barGreen_verticalTop.png b/Assets/GAME/Sprites/barGreen_verticalTop.png
similarity index 100%
rename from Assets/GAME/Images/barGreen_verticalTop.png
rename to Assets/GAME/Sprites/barGreen_verticalTop.png
diff --git a/Assets/GAME/Images/barGreen_verticalTop.png.meta b/Assets/GAME/Sprites/barGreen_verticalTop.png.meta
similarity index 100%
rename from Assets/GAME/Images/barGreen_verticalTop.png.meta
rename to Assets/GAME/Sprites/barGreen_verticalTop.png.meta
diff --git a/Assets/GAME/Images/barRed_horizontalLeft.png b/Assets/GAME/Sprites/barRed_horizontalLeft.png
similarity index 100%
rename from Assets/GAME/Images/barRed_horizontalLeft.png
rename to Assets/GAME/Sprites/barRed_horizontalLeft.png
diff --git a/Assets/GAME/Images/barRed_horizontalLeft.png.meta b/Assets/GAME/Sprites/barRed_horizontalLeft.png.meta
similarity index 100%
rename from Assets/GAME/Images/barRed_horizontalLeft.png.meta
rename to Assets/GAME/Sprites/barRed_horizontalLeft.png.meta
diff --git a/Assets/GAME/Images/barRed_horizontalMid.png b/Assets/GAME/Sprites/barRed_horizontalMid.png
similarity index 100%
rename from Assets/GAME/Images/barRed_horizontalMid.png
rename to Assets/GAME/Sprites/barRed_horizontalMid.png
diff --git a/Assets/GAME/Images/barRed_horizontalMid.png.meta b/Assets/GAME/Sprites/barRed_horizontalMid.png.meta
similarity index 100%
rename from Assets/GAME/Images/barRed_horizontalMid.png.meta
rename to Assets/GAME/Sprites/barRed_horizontalMid.png.meta
diff --git a/Assets/GAME/Images/barRed_horizontalRight.png b/Assets/GAME/Sprites/barRed_horizontalRight.png
similarity index 100%
rename from Assets/GAME/Images/barRed_horizontalRight.png
rename to Assets/GAME/Sprites/barRed_horizontalRight.png
diff --git a/Assets/GAME/Images/barRed_horizontalRight.png.meta b/Assets/GAME/Sprites/barRed_horizontalRight.png.meta
similarity index 100%
rename from Assets/GAME/Images/barRed_horizontalRight.png.meta
rename to Assets/GAME/Sprites/barRed_horizontalRight.png.meta
diff --git a/Assets/GAME/Images/barRed_verticalBottom.png b/Assets/GAME/Sprites/barRed_verticalBottom.png
similarity index 100%
rename from Assets/GAME/Images/barRed_verticalBottom.png
rename to Assets/GAME/Sprites/barRed_verticalBottom.png
diff --git a/Assets/GAME/Images/barRed_verticalBottom.png.meta b/Assets/GAME/Sprites/barRed_verticalBottom.png.meta
similarity index 100%
rename from Assets/GAME/Images/barRed_verticalBottom.png.meta
rename to Assets/GAME/Sprites/barRed_verticalBottom.png.meta
diff --git a/Assets/GAME/Images/barRed_verticalMid.png b/Assets/GAME/Sprites/barRed_verticalMid.png
similarity index 100%
rename from Assets/GAME/Images/barRed_verticalMid.png
rename to Assets/GAME/Sprites/barRed_verticalMid.png
diff --git a/Assets/GAME/Images/barRed_verticalMid.png.meta b/Assets/GAME/Sprites/barRed_verticalMid.png.meta
similarity index 100%
rename from Assets/GAME/Images/barRed_verticalMid.png.meta
rename to Assets/GAME/Sprites/barRed_verticalMid.png.meta
diff --git a/Assets/GAME/Images/barRed_verticalTop.png b/Assets/GAME/Sprites/barRed_verticalTop.png
similarity index 100%
rename from Assets/GAME/Images/barRed_verticalTop.png
rename to Assets/GAME/Sprites/barRed_verticalTop.png
diff --git a/Assets/GAME/Images/barRed_verticalTop.png.meta b/Assets/GAME/Sprites/barRed_verticalTop.png.meta
similarity index 100%
rename from Assets/GAME/Images/barRed_verticalTop.png.meta
rename to Assets/GAME/Sprites/barRed_verticalTop.png.meta
diff --git a/Assets/GAME/Images/barYellow_horizontalLeft.png b/Assets/GAME/Sprites/barYellow_horizontalLeft.png
similarity index 100%
rename from Assets/GAME/Images/barYellow_horizontalLeft.png
rename to Assets/GAME/Sprites/barYellow_horizontalLeft.png
diff --git a/Assets/GAME/Images/barYellow_horizontalLeft.png.meta b/Assets/GAME/Sprites/barYellow_horizontalLeft.png.meta
similarity index 100%
rename from Assets/GAME/Images/barYellow_horizontalLeft.png.meta
rename to Assets/GAME/Sprites/barYellow_horizontalLeft.png.meta
diff --git a/Assets/GAME/Images/barYellow_horizontalMid.png b/Assets/GAME/Sprites/barYellow_horizontalMid.png
similarity index 100%
rename from Assets/GAME/Images/barYellow_horizontalMid.png
rename to Assets/GAME/Sprites/barYellow_horizontalMid.png
diff --git a/Assets/GAME/Images/barYellow_horizontalMid.png.meta b/Assets/GAME/Sprites/barYellow_horizontalMid.png.meta
similarity index 100%
rename from Assets/GAME/Images/barYellow_horizontalMid.png.meta
rename to Assets/GAME/Sprites/barYellow_horizontalMid.png.meta
diff --git a/Assets/GAME/Images/barYellow_horizontalRight.png b/Assets/GAME/Sprites/barYellow_horizontalRight.png
similarity index 100%
rename from Assets/GAME/Images/barYellow_horizontalRight.png
rename to Assets/GAME/Sprites/barYellow_horizontalRight.png
diff --git a/Assets/GAME/Images/barYellow_horizontalRight.png.meta b/Assets/GAME/Sprites/barYellow_horizontalRight.png.meta
similarity index 100%
rename from Assets/GAME/Images/barYellow_horizontalRight.png.meta
rename to Assets/GAME/Sprites/barYellow_horizontalRight.png.meta
diff --git a/Assets/GAME/Images/barYellow_verticalBottom.png b/Assets/GAME/Sprites/barYellow_verticalBottom.png
similarity index 100%
rename from Assets/GAME/Images/barYellow_verticalBottom.png
rename to Assets/GAME/Sprites/barYellow_verticalBottom.png
diff --git a/Assets/GAME/Images/barYellow_verticalBottom.png.meta b/Assets/GAME/Sprites/barYellow_verticalBottom.png.meta
similarity index 100%
rename from Assets/GAME/Images/barYellow_verticalBottom.png.meta
rename to Assets/GAME/Sprites/barYellow_verticalBottom.png.meta
diff --git a/Assets/GAME/Images/barYellow_verticalMid.png b/Assets/GAME/Sprites/barYellow_verticalMid.png
similarity index 100%
rename from Assets/GAME/Images/barYellow_verticalMid.png
rename to Assets/GAME/Sprites/barYellow_verticalMid.png
diff --git a/Assets/GAME/Images/barYellow_verticalMid.png.meta b/Assets/GAME/Sprites/barYellow_verticalMid.png.meta
similarity index 100%
rename from Assets/GAME/Images/barYellow_verticalMid.png.meta
rename to Assets/GAME/Sprites/barYellow_verticalMid.png.meta
diff --git a/Assets/GAME/Images/barYellow_verticalTop.png b/Assets/GAME/Sprites/barYellow_verticalTop.png
similarity index 100%
rename from Assets/GAME/Images/barYellow_verticalTop.png
rename to Assets/GAME/Sprites/barYellow_verticalTop.png
diff --git a/Assets/GAME/Images/barYellow_verticalTop.png.meta b/Assets/GAME/Sprites/barYellow_verticalTop.png.meta
similarity index 100%
rename from Assets/GAME/Images/barYellow_verticalTop.png.meta
rename to Assets/GAME/Sprites/barYellow_verticalTop.png.meta
diff --git a/Assets/GAME/Images/buttonLong_beige.png b/Assets/GAME/Sprites/buttonLong_beige.png
similarity index 100%
rename from Assets/GAME/Images/buttonLong_beige.png
rename to Assets/GAME/Sprites/buttonLong_beige.png
diff --git a/Assets/GAME/Images/buttonLong_beige.png.meta b/Assets/GAME/Sprites/buttonLong_beige.png.meta
similarity index 100%
rename from Assets/GAME/Images/buttonLong_beige.png.meta
rename to Assets/GAME/Sprites/buttonLong_beige.png.meta
diff --git a/Assets/GAME/Images/buttonLong_beige_pressed.png b/Assets/GAME/Sprites/buttonLong_beige_pressed.png
similarity index 100%
rename from Assets/GAME/Images/buttonLong_beige_pressed.png
rename to Assets/GAME/Sprites/buttonLong_beige_pressed.png
diff --git a/Assets/GAME/Images/buttonLong_beige_pressed.png.meta b/Assets/GAME/Sprites/buttonLong_beige_pressed.png.meta
similarity index 100%
rename from Assets/GAME/Images/buttonLong_beige_pressed.png.meta
rename to Assets/GAME/Sprites/buttonLong_beige_pressed.png.meta
diff --git a/Assets/GAME/Images/buttonLong_blue.png b/Assets/GAME/Sprites/buttonLong_blue.png
similarity index 100%
rename from Assets/GAME/Images/buttonLong_blue.png
rename to Assets/GAME/Sprites/buttonLong_blue.png
diff --git a/Assets/GAME/Images/buttonLong_blue.png.meta b/Assets/GAME/Sprites/buttonLong_blue.png.meta
similarity index 100%
rename from Assets/GAME/Images/buttonLong_blue.png.meta
rename to Assets/GAME/Sprites/buttonLong_blue.png.meta
diff --git a/Assets/GAME/Images/buttonLong_blue_pressed.png b/Assets/GAME/Sprites/buttonLong_blue_pressed.png
similarity index 100%
rename from Assets/GAME/Images/buttonLong_blue_pressed.png
rename to Assets/GAME/Sprites/buttonLong_blue_pressed.png
diff --git a/Assets/GAME/Images/buttonLong_blue_pressed.png.meta b/Assets/GAME/Sprites/buttonLong_blue_pressed.png.meta
similarity index 100%
rename from Assets/GAME/Images/buttonLong_blue_pressed.png.meta
rename to Assets/GAME/Sprites/buttonLong_blue_pressed.png.meta
diff --git a/Assets/GAME/Images/buttonLong_brown.png b/Assets/GAME/Sprites/buttonLong_brown.png
similarity index 100%
rename from Assets/GAME/Images/buttonLong_brown.png
rename to Assets/GAME/Sprites/buttonLong_brown.png
diff --git a/Assets/GAME/Images/buttonLong_brown.png.meta b/Assets/GAME/Sprites/buttonLong_brown.png.meta
similarity index 100%
rename from Assets/GAME/Images/buttonLong_brown.png.meta
rename to Assets/GAME/Sprites/buttonLong_brown.png.meta
diff --git a/Assets/GAME/Images/buttonLong_brown_pressed.png b/Assets/GAME/Sprites/buttonLong_brown_pressed.png
similarity index 100%
rename from Assets/GAME/Images/buttonLong_brown_pressed.png
rename to Assets/GAME/Sprites/buttonLong_brown_pressed.png
diff --git a/Assets/GAME/Images/buttonLong_brown_pressed.png.meta b/Assets/GAME/Sprites/buttonLong_brown_pressed.png.meta
similarity index 100%
rename from Assets/GAME/Images/buttonLong_brown_pressed.png.meta
rename to Assets/GAME/Sprites/buttonLong_brown_pressed.png.meta
diff --git a/Assets/GAME/Images/buttonLong_grey.png b/Assets/GAME/Sprites/buttonLong_grey.png
similarity index 100%
rename from Assets/GAME/Images/buttonLong_grey.png
rename to Assets/GAME/Sprites/buttonLong_grey.png
diff --git a/Assets/GAME/Images/buttonLong_grey.png.meta b/Assets/GAME/Sprites/buttonLong_grey.png.meta
similarity index 100%
rename from Assets/GAME/Images/buttonLong_grey.png.meta
rename to Assets/GAME/Sprites/buttonLong_grey.png.meta
diff --git a/Assets/GAME/Images/buttonLong_grey_pressed.png b/Assets/GAME/Sprites/buttonLong_grey_pressed.png
similarity index 100%
rename from Assets/GAME/Images/buttonLong_grey_pressed.png
rename to Assets/GAME/Sprites/buttonLong_grey_pressed.png
diff --git a/Assets/GAME/Images/buttonLong_grey_pressed.png.meta b/Assets/GAME/Sprites/buttonLong_grey_pressed.png.meta
similarity index 100%
rename from Assets/GAME/Images/buttonLong_grey_pressed.png.meta
rename to Assets/GAME/Sprites/buttonLong_grey_pressed.png.meta
diff --git a/Assets/GAME/Images/buttonRound_beige.png b/Assets/GAME/Sprites/buttonRound_beige.png
similarity index 100%
rename from Assets/GAME/Images/buttonRound_beige.png
rename to Assets/GAME/Sprites/buttonRound_beige.png
diff --git a/Assets/GAME/Images/buttonRound_beige.png.meta b/Assets/GAME/Sprites/buttonRound_beige.png.meta
similarity index 100%
rename from Assets/GAME/Images/buttonRound_beige.png.meta
rename to Assets/GAME/Sprites/buttonRound_beige.png.meta
diff --git a/Assets/GAME/Images/buttonRound_blue.png b/Assets/GAME/Sprites/buttonRound_blue.png
similarity index 100%
rename from Assets/GAME/Images/buttonRound_blue.png
rename to Assets/GAME/Sprites/buttonRound_blue.png
diff --git a/Assets/GAME/Images/buttonRound_blue.png.meta b/Assets/GAME/Sprites/buttonRound_blue.png.meta
similarity index 100%
rename from Assets/GAME/Images/buttonRound_blue.png.meta
rename to Assets/GAME/Sprites/buttonRound_blue.png.meta
diff --git a/Assets/GAME/Images/buttonRound_brown.png b/Assets/GAME/Sprites/buttonRound_brown.png
similarity index 100%
rename from Assets/GAME/Images/buttonRound_brown.png
rename to Assets/GAME/Sprites/buttonRound_brown.png
diff --git a/Assets/GAME/Images/buttonRound_brown.png.meta b/Assets/GAME/Sprites/buttonRound_brown.png.meta
similarity index 100%
rename from Assets/GAME/Images/buttonRound_brown.png.meta
rename to Assets/GAME/Sprites/buttonRound_brown.png.meta
diff --git a/Assets/GAME/Images/buttonRound_grey.png b/Assets/GAME/Sprites/buttonRound_grey.png
similarity index 100%
rename from Assets/GAME/Images/buttonRound_grey.png
rename to Assets/GAME/Sprites/buttonRound_grey.png
diff --git a/Assets/GAME/Images/buttonRound_grey.png.meta b/Assets/GAME/Sprites/buttonRound_grey.png.meta
similarity index 100%
rename from Assets/GAME/Images/buttonRound_grey.png.meta
rename to Assets/GAME/Sprites/buttonRound_grey.png.meta
diff --git a/Assets/GAME/Images/buttonSquare_beige.png b/Assets/GAME/Sprites/buttonSquare_beige.png
similarity index 100%
rename from Assets/GAME/Images/buttonSquare_beige.png
rename to Assets/GAME/Sprites/buttonSquare_beige.png
diff --git a/Assets/GAME/Images/buttonSquare_beige.png.meta b/Assets/GAME/Sprites/buttonSquare_beige.png.meta
similarity index 100%
rename from Assets/GAME/Images/buttonSquare_beige.png.meta
rename to Assets/GAME/Sprites/buttonSquare_beige.png.meta
diff --git a/Assets/GAME/Images/buttonSquare_beige_pressed.png b/Assets/GAME/Sprites/buttonSquare_beige_pressed.png
similarity index 100%
rename from Assets/GAME/Images/buttonSquare_beige_pressed.png
rename to Assets/GAME/Sprites/buttonSquare_beige_pressed.png
diff --git a/Assets/GAME/Images/buttonSquare_beige_pressed.png.meta b/Assets/GAME/Sprites/buttonSquare_beige_pressed.png.meta
similarity index 100%
rename from Assets/GAME/Images/buttonSquare_beige_pressed.png.meta
rename to Assets/GAME/Sprites/buttonSquare_beige_pressed.png.meta
diff --git a/Assets/GAME/Images/buttonSquare_blue.png b/Assets/GAME/Sprites/buttonSquare_blue.png
similarity index 100%
rename from Assets/GAME/Images/buttonSquare_blue.png
rename to Assets/GAME/Sprites/buttonSquare_blue.png
diff --git a/Assets/GAME/Images/buttonSquare_blue.png.meta b/Assets/GAME/Sprites/buttonSquare_blue.png.meta
similarity index 100%
rename from Assets/GAME/Images/buttonSquare_blue.png.meta
rename to Assets/GAME/Sprites/buttonSquare_blue.png.meta
diff --git a/Assets/GAME/Images/buttonSquare_blue_pressed.png b/Assets/GAME/Sprites/buttonSquare_blue_pressed.png
similarity index 100%
rename from Assets/GAME/Images/buttonSquare_blue_pressed.png
rename to Assets/GAME/Sprites/buttonSquare_blue_pressed.png
diff --git a/Assets/GAME/Images/buttonSquare_blue_pressed.png.meta b/Assets/GAME/Sprites/buttonSquare_blue_pressed.png.meta
similarity index 100%
rename from Assets/GAME/Images/buttonSquare_blue_pressed.png.meta
rename to Assets/GAME/Sprites/buttonSquare_blue_pressed.png.meta
diff --git a/Assets/GAME/Images/buttonSquare_brown.png b/Assets/GAME/Sprites/buttonSquare_brown.png
similarity index 100%
rename from Assets/GAME/Images/buttonSquare_brown.png
rename to Assets/GAME/Sprites/buttonSquare_brown.png
diff --git a/Assets/GAME/Images/buttonSquare_brown.png.meta b/Assets/GAME/Sprites/buttonSquare_brown.png.meta
similarity index 100%
rename from Assets/GAME/Images/buttonSquare_brown.png.meta
rename to Assets/GAME/Sprites/buttonSquare_brown.png.meta
diff --git a/Assets/GAME/Images/buttonSquare_brown_pressed.png b/Assets/GAME/Sprites/buttonSquare_brown_pressed.png
similarity index 100%
rename from Assets/GAME/Images/buttonSquare_brown_pressed.png
rename to Assets/GAME/Sprites/buttonSquare_brown_pressed.png
diff --git a/Assets/GAME/Images/buttonSquare_brown_pressed.png.meta b/Assets/GAME/Sprites/buttonSquare_brown_pressed.png.meta
similarity index 100%
rename from Assets/GAME/Images/buttonSquare_brown_pressed.png.meta
rename to Assets/GAME/Sprites/buttonSquare_brown_pressed.png.meta
diff --git a/Assets/GAME/Images/buttonSquare_grey.png b/Assets/GAME/Sprites/buttonSquare_grey.png
similarity index 100%
rename from Assets/GAME/Images/buttonSquare_grey.png
rename to Assets/GAME/Sprites/buttonSquare_grey.png
diff --git a/Assets/GAME/Images/buttonSquare_grey.png.meta b/Assets/GAME/Sprites/buttonSquare_grey.png.meta
similarity index 100%
rename from Assets/GAME/Images/buttonSquare_grey.png.meta
rename to Assets/GAME/Sprites/buttonSquare_grey.png.meta
diff --git a/Assets/GAME/Images/buttonSquare_grey_pressed.png b/Assets/GAME/Sprites/buttonSquare_grey_pressed.png
similarity index 100%
rename from Assets/GAME/Images/buttonSquare_grey_pressed.png
rename to Assets/GAME/Sprites/buttonSquare_grey_pressed.png
diff --git a/Assets/GAME/Images/buttonSquare_grey_pressed.png.meta b/Assets/GAME/Sprites/buttonSquare_grey_pressed.png.meta
similarity index 100%
rename from Assets/GAME/Images/buttonSquare_grey_pressed.png.meta
rename to Assets/GAME/Sprites/buttonSquare_grey_pressed.png.meta
diff --git a/Assets/GAME/Images/checkmarck.png b/Assets/GAME/Sprites/checkmarck.png
similarity index 100%
rename from Assets/GAME/Images/checkmarck.png
rename to Assets/GAME/Sprites/checkmarck.png
diff --git a/Assets/GAME/Images/checkmarck.png.meta b/Assets/GAME/Sprites/checkmarck.png.meta
similarity index 100%
rename from Assets/GAME/Images/checkmarck.png.meta
rename to Assets/GAME/Sprites/checkmarck.png.meta
diff --git a/Assets/GAME/Images/cursorGauntlet_blue.png b/Assets/GAME/Sprites/cursorGauntlet_blue.png
similarity index 100%
rename from Assets/GAME/Images/cursorGauntlet_blue.png
rename to Assets/GAME/Sprites/cursorGauntlet_blue.png
diff --git a/Assets/GAME/Images/cursorGauntlet_blue.png.meta b/Assets/GAME/Sprites/cursorGauntlet_blue.png.meta
similarity index 100%
rename from Assets/GAME/Images/cursorGauntlet_blue.png.meta
rename to Assets/GAME/Sprites/cursorGauntlet_blue.png.meta
diff --git a/Assets/GAME/Images/cursorGauntlet_bronze.png b/Assets/GAME/Sprites/cursorGauntlet_bronze.png
similarity index 100%
rename from Assets/GAME/Images/cursorGauntlet_bronze.png
rename to Assets/GAME/Sprites/cursorGauntlet_bronze.png
diff --git a/Assets/GAME/Images/cursorGauntlet_bronze.png.meta b/Assets/GAME/Sprites/cursorGauntlet_bronze.png.meta
similarity index 100%
rename from Assets/GAME/Images/cursorGauntlet_bronze.png.meta
rename to Assets/GAME/Sprites/cursorGauntlet_bronze.png.meta
diff --git a/Assets/GAME/Images/cursorGauntlet_grey.png b/Assets/GAME/Sprites/cursorGauntlet_grey.png
similarity index 100%
rename from Assets/GAME/Images/cursorGauntlet_grey.png
rename to Assets/GAME/Sprites/cursorGauntlet_grey.png
diff --git a/Assets/GAME/Images/cursorGauntlet_grey.png.meta b/Assets/GAME/Sprites/cursorGauntlet_grey.png.meta
similarity index 100%
rename from Assets/GAME/Images/cursorGauntlet_grey.png.meta
rename to Assets/GAME/Sprites/cursorGauntlet_grey.png.meta
diff --git a/Assets/GAME/Images/cursorHand_beige.png b/Assets/GAME/Sprites/cursorHand_beige.png
similarity index 100%
rename from Assets/GAME/Images/cursorHand_beige.png
rename to Assets/GAME/Sprites/cursorHand_beige.png
diff --git a/Assets/GAME/Images/cursorHand_beige.png.meta b/Assets/GAME/Sprites/cursorHand_beige.png.meta
similarity index 100%
rename from Assets/GAME/Images/cursorHand_beige.png.meta
rename to Assets/GAME/Sprites/cursorHand_beige.png.meta
diff --git a/Assets/GAME/Images/cursorHand_blue.png b/Assets/GAME/Sprites/cursorHand_blue.png
similarity index 100%
rename from Assets/GAME/Images/cursorHand_blue.png
rename to Assets/GAME/Sprites/cursorHand_blue.png
diff --git a/Assets/GAME/Images/cursorHand_blue.png.meta b/Assets/GAME/Sprites/cursorHand_blue.png.meta
similarity index 100%
rename from Assets/GAME/Images/cursorHand_blue.png.meta
rename to Assets/GAME/Sprites/cursorHand_blue.png.meta
diff --git a/Assets/GAME/Images/cursorHand_grey.png b/Assets/GAME/Sprites/cursorHand_grey.png
similarity index 100%
rename from Assets/GAME/Images/cursorHand_grey.png
rename to Assets/GAME/Sprites/cursorHand_grey.png
diff --git a/Assets/GAME/Images/cursorHand_grey.png.meta b/Assets/GAME/Sprites/cursorHand_grey.png.meta
similarity index 100%
rename from Assets/GAME/Images/cursorHand_grey.png.meta
rename to Assets/GAME/Sprites/cursorHand_grey.png.meta
diff --git a/Assets/GAME/Images/cursorSword_bronze.png b/Assets/GAME/Sprites/cursorSword_bronze.png
similarity index 100%
rename from Assets/GAME/Images/cursorSword_bronze.png
rename to Assets/GAME/Sprites/cursorSword_bronze.png
diff --git a/Assets/GAME/Images/cursorSword_bronze.png.meta b/Assets/GAME/Sprites/cursorSword_bronze.png.meta
similarity index 100%
rename from Assets/GAME/Images/cursorSword_bronze.png.meta
rename to Assets/GAME/Sprites/cursorSword_bronze.png.meta
diff --git a/Assets/GAME/Images/cursorSword_gold.png b/Assets/GAME/Sprites/cursorSword_gold.png
similarity index 100%
rename from Assets/GAME/Images/cursorSword_gold.png
rename to Assets/GAME/Sprites/cursorSword_gold.png
diff --git a/Assets/GAME/Images/cursorSword_gold.png.meta b/Assets/GAME/Sprites/cursorSword_gold.png.meta
similarity index 100%
rename from Assets/GAME/Images/cursorSword_gold.png.meta
rename to Assets/GAME/Sprites/cursorSword_gold.png.meta
diff --git a/Assets/GAME/Images/cursorSword_silver.png b/Assets/GAME/Sprites/cursorSword_silver.png
similarity index 100%
rename from Assets/GAME/Images/cursorSword_silver.png
rename to Assets/GAME/Sprites/cursorSword_silver.png
diff --git a/Assets/GAME/Images/cursorSword_silver.png.meta b/Assets/GAME/Sprites/cursorSword_silver.png.meta
similarity index 100%
rename from Assets/GAME/Images/cursorSword_silver.png.meta
rename to Assets/GAME/Sprites/cursorSword_silver.png.meta
diff --git a/Packages/com.distantlands.cozy.core/Content/Integration/Import for BiRP.unitypackage.meta b/Assets/GAME/Sprites/icon.meta
similarity index 67%
rename from Packages/com.distantlands.cozy.core/Content/Integration/Import for BiRP.unitypackage.meta
rename to Assets/GAME/Sprites/icon.meta
index 52b74fd8..d7c85733 100644
--- a/Packages/com.distantlands.cozy.core/Content/Integration/Import for BiRP.unitypackage.meta
+++ b/Assets/GAME/Sprites/icon.meta
@@ -1,5 +1,6 @@
fileFormatVersion: 2
-guid: 2f1b9c7f4731e2d44af6b3606190070b
+guid: bfb46575b2c4c81429e1aee9b8641140
+folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
diff --git a/Assets/GAME/Sprites/icon/question mark.png b/Assets/GAME/Sprites/icon/question mark.png
new file mode 100644
index 00000000..338345d6
Binary files /dev/null and b/Assets/GAME/Sprites/icon/question mark.png differ
diff --git a/Assets/GAME/Sprites/icon/question mark.png.meta b/Assets/GAME/Sprites/icon/question mark.png.meta
new file mode 100644
index 00000000..f699411d
--- /dev/null
+++ b/Assets/GAME/Sprites/icon/question mark.png.meta
@@ -0,0 +1,117 @@
+fileFormatVersion: 2
+guid: 674a34f9888b21f4f9e8fe295f753065
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 13
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 1
+ wrapV: 1
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 1
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 8
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 4
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 4
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ customData:
+ physicsShape: []
+ bones: []
+ spriteID: 5e97eb03825dee720800000000000000
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ spriteCustomMetadata:
+ entries: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/GAME/Images/iconCheck_beige.png b/Assets/GAME/Sprites/iconCheck_beige.png
similarity index 100%
rename from Assets/GAME/Images/iconCheck_beige.png
rename to Assets/GAME/Sprites/iconCheck_beige.png
diff --git a/Assets/GAME/Images/iconCheck_beige.png.meta b/Assets/GAME/Sprites/iconCheck_beige.png.meta
similarity index 100%
rename from Assets/GAME/Images/iconCheck_beige.png.meta
rename to Assets/GAME/Sprites/iconCheck_beige.png.meta
diff --git a/Assets/GAME/Images/iconCheck_blue.png b/Assets/GAME/Sprites/iconCheck_blue.png
similarity index 100%
rename from Assets/GAME/Images/iconCheck_blue.png
rename to Assets/GAME/Sprites/iconCheck_blue.png
diff --git a/Assets/GAME/Images/iconCheck_blue.png.meta b/Assets/GAME/Sprites/iconCheck_blue.png.meta
similarity index 100%
rename from Assets/GAME/Images/iconCheck_blue.png.meta
rename to Assets/GAME/Sprites/iconCheck_blue.png.meta
diff --git a/Assets/GAME/Images/iconCheck_bronze.png b/Assets/GAME/Sprites/iconCheck_bronze.png
similarity index 100%
rename from Assets/GAME/Images/iconCheck_bronze.png
rename to Assets/GAME/Sprites/iconCheck_bronze.png
diff --git a/Assets/GAME/Images/iconCheck_bronze.png.meta b/Assets/GAME/Sprites/iconCheck_bronze.png.meta
similarity index 100%
rename from Assets/GAME/Images/iconCheck_bronze.png.meta
rename to Assets/GAME/Sprites/iconCheck_bronze.png.meta
diff --git a/Assets/GAME/Images/iconCheck_grey.png b/Assets/GAME/Sprites/iconCheck_grey.png
similarity index 100%
rename from Assets/GAME/Images/iconCheck_grey.png
rename to Assets/GAME/Sprites/iconCheck_grey.png
diff --git a/Assets/GAME/Images/iconCheck_grey.png.meta b/Assets/GAME/Sprites/iconCheck_grey.png.meta
similarity index 100%
rename from Assets/GAME/Images/iconCheck_grey.png.meta
rename to Assets/GAME/Sprites/iconCheck_grey.png.meta
diff --git a/Assets/GAME/Images/iconCircle_beige.png b/Assets/GAME/Sprites/iconCircle_beige.png
similarity index 100%
rename from Assets/GAME/Images/iconCircle_beige.png
rename to Assets/GAME/Sprites/iconCircle_beige.png
diff --git a/Assets/GAME/Images/iconCircle_beige.png.meta b/Assets/GAME/Sprites/iconCircle_beige.png.meta
similarity index 100%
rename from Assets/GAME/Images/iconCircle_beige.png.meta
rename to Assets/GAME/Sprites/iconCircle_beige.png.meta
diff --git a/Assets/GAME/Images/iconCircle_blue.png b/Assets/GAME/Sprites/iconCircle_blue.png
similarity index 100%
rename from Assets/GAME/Images/iconCircle_blue.png
rename to Assets/GAME/Sprites/iconCircle_blue.png
diff --git a/Assets/GAME/Images/iconCircle_blue.png.meta b/Assets/GAME/Sprites/iconCircle_blue.png.meta
similarity index 100%
rename from Assets/GAME/Images/iconCircle_blue.png.meta
rename to Assets/GAME/Sprites/iconCircle_blue.png.meta
diff --git a/Assets/GAME/Images/iconCircle_brown.png b/Assets/GAME/Sprites/iconCircle_brown.png
similarity index 100%
rename from Assets/GAME/Images/iconCircle_brown.png
rename to Assets/GAME/Sprites/iconCircle_brown.png
diff --git a/Assets/GAME/Images/iconCircle_brown.png.meta b/Assets/GAME/Sprites/iconCircle_brown.png.meta
similarity index 100%
rename from Assets/GAME/Images/iconCircle_brown.png.meta
rename to Assets/GAME/Sprites/iconCircle_brown.png.meta
diff --git a/Assets/GAME/Images/iconCircle_grey.png b/Assets/GAME/Sprites/iconCircle_grey.png
similarity index 100%
rename from Assets/GAME/Images/iconCircle_grey.png
rename to Assets/GAME/Sprites/iconCircle_grey.png
diff --git a/Assets/GAME/Images/iconCircle_grey.png.meta b/Assets/GAME/Sprites/iconCircle_grey.png.meta
similarity index 100%
rename from Assets/GAME/Images/iconCircle_grey.png.meta
rename to Assets/GAME/Sprites/iconCircle_grey.png.meta
diff --git a/Assets/GAME/Images/iconCross_beige.png b/Assets/GAME/Sprites/iconCross_beige.png
similarity index 100%
rename from Assets/GAME/Images/iconCross_beige.png
rename to Assets/GAME/Sprites/iconCross_beige.png
diff --git a/Assets/GAME/Images/iconCross_beige.png.meta b/Assets/GAME/Sprites/iconCross_beige.png.meta
similarity index 100%
rename from Assets/GAME/Images/iconCross_beige.png.meta
rename to Assets/GAME/Sprites/iconCross_beige.png.meta
diff --git a/Assets/GAME/Images/iconCross_blue.png b/Assets/GAME/Sprites/iconCross_blue.png
similarity index 100%
rename from Assets/GAME/Images/iconCross_blue.png
rename to Assets/GAME/Sprites/iconCross_blue.png
diff --git a/Assets/GAME/Images/iconCross_blue.png.meta b/Assets/GAME/Sprites/iconCross_blue.png.meta
similarity index 100%
rename from Assets/GAME/Images/iconCross_blue.png.meta
rename to Assets/GAME/Sprites/iconCross_blue.png.meta
diff --git a/Assets/GAME/Images/iconCross_brown.png b/Assets/GAME/Sprites/iconCross_brown.png
similarity index 100%
rename from Assets/GAME/Images/iconCross_brown.png
rename to Assets/GAME/Sprites/iconCross_brown.png
diff --git a/Assets/GAME/Images/iconCross_brown.png.meta b/Assets/GAME/Sprites/iconCross_brown.png.meta
similarity index 100%
rename from Assets/GAME/Images/iconCross_brown.png.meta
rename to Assets/GAME/Sprites/iconCross_brown.png.meta
diff --git a/Assets/GAME/Images/iconCross_grey.png b/Assets/GAME/Sprites/iconCross_grey.png
similarity index 100%
rename from Assets/GAME/Images/iconCross_grey.png
rename to Assets/GAME/Sprites/iconCross_grey.png
diff --git a/Assets/GAME/Images/iconCross_grey.png.meta b/Assets/GAME/Sprites/iconCross_grey.png.meta
similarity index 100%
rename from Assets/GAME/Images/iconCross_grey.png.meta
rename to Assets/GAME/Sprites/iconCross_grey.png.meta
diff --git a/Assets/GAME/Images/panelInset_beige.png b/Assets/GAME/Sprites/panelInset_beige.png
similarity index 100%
rename from Assets/GAME/Images/panelInset_beige.png
rename to Assets/GAME/Sprites/panelInset_beige.png
diff --git a/Assets/GAME/Images/panelInset_beige.png.meta b/Assets/GAME/Sprites/panelInset_beige.png.meta
similarity index 100%
rename from Assets/GAME/Images/panelInset_beige.png.meta
rename to Assets/GAME/Sprites/panelInset_beige.png.meta
diff --git a/Assets/GAME/Images/panelInset_beigeLight.png b/Assets/GAME/Sprites/panelInset_beigeLight.png
similarity index 100%
rename from Assets/GAME/Images/panelInset_beigeLight.png
rename to Assets/GAME/Sprites/panelInset_beigeLight.png
diff --git a/Assets/GAME/Images/panelInset_beigeLight.png.meta b/Assets/GAME/Sprites/panelInset_beigeLight.png.meta
similarity index 100%
rename from Assets/GAME/Images/panelInset_beigeLight.png.meta
rename to Assets/GAME/Sprites/panelInset_beigeLight.png.meta
diff --git a/Assets/GAME/Images/panelInset_blue.png b/Assets/GAME/Sprites/panelInset_blue.png
similarity index 100%
rename from Assets/GAME/Images/panelInset_blue.png
rename to Assets/GAME/Sprites/panelInset_blue.png
diff --git a/Assets/GAME/Images/panelInset_blue.png.meta b/Assets/GAME/Sprites/panelInset_blue.png.meta
similarity index 100%
rename from Assets/GAME/Images/panelInset_blue.png.meta
rename to Assets/GAME/Sprites/panelInset_blue.png.meta
diff --git a/Assets/GAME/Images/panelInset_brown.png b/Assets/GAME/Sprites/panelInset_brown.png
similarity index 100%
rename from Assets/GAME/Images/panelInset_brown.png
rename to Assets/GAME/Sprites/panelInset_brown.png
diff --git a/Assets/GAME/Images/panelInset_brown.png.meta b/Assets/GAME/Sprites/panelInset_brown.png.meta
similarity index 100%
rename from Assets/GAME/Images/panelInset_brown.png.meta
rename to Assets/GAME/Sprites/panelInset_brown.png.meta
diff --git a/Assets/GAME/Images/panel_beige.png b/Assets/GAME/Sprites/panel_beige.png
similarity index 100%
rename from Assets/GAME/Images/panel_beige.png
rename to Assets/GAME/Sprites/panel_beige.png
diff --git a/Assets/GAME/Images/panel_beige.png.meta b/Assets/GAME/Sprites/panel_beige.png.meta
similarity index 100%
rename from Assets/GAME/Images/panel_beige.png.meta
rename to Assets/GAME/Sprites/panel_beige.png.meta
diff --git a/Assets/GAME/Images/panel_beigeLight.png b/Assets/GAME/Sprites/panel_beigeLight.png
similarity index 100%
rename from Assets/GAME/Images/panel_beigeLight.png
rename to Assets/GAME/Sprites/panel_beigeLight.png
diff --git a/Assets/GAME/Images/panel_beigeLight.png.meta b/Assets/GAME/Sprites/panel_beigeLight.png.meta
similarity index 100%
rename from Assets/GAME/Images/panel_beigeLight.png.meta
rename to Assets/GAME/Sprites/panel_beigeLight.png.meta
diff --git a/Assets/GAME/Images/panel_blue.png b/Assets/GAME/Sprites/panel_blue.png
similarity index 100%
rename from Assets/GAME/Images/panel_blue.png
rename to Assets/GAME/Sprites/panel_blue.png
diff --git a/Assets/GAME/Images/panel_blue.png.meta b/Assets/GAME/Sprites/panel_blue.png.meta
similarity index 100%
rename from Assets/GAME/Images/panel_blue.png.meta
rename to Assets/GAME/Sprites/panel_blue.png.meta
diff --git a/Assets/GAME/Images/panel_brown.png b/Assets/GAME/Sprites/panel_brown.png
similarity index 100%
rename from Assets/GAME/Images/panel_brown.png
rename to Assets/GAME/Sprites/panel_brown.png
diff --git a/Assets/GAME/Images/panel_brown.png.meta b/Assets/GAME/Sprites/panel_brown.png.meta
similarity index 100%
rename from Assets/GAME/Images/panel_brown.png.meta
rename to Assets/GAME/Sprites/panel_brown.png.meta
diff --git a/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset b/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset
index 459a1eed..ff237174 100644
--- a/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset
+++ b/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset
@@ -215,8 +215,293 @@ MonoBehaviour:
m_SourceFontFilePath:
m_AtlasPopulationMode: 1
InternalDynamicOS: 0
- m_GlyphTable: []
- m_CharacterTable: []
+ m_GlyphTable:
+ - m_Index: 66
+ m_Metrics:
+ m_Width: 51
+ m_Height: 6
+ m_HorizontalBearingX: -2
+ m_HorizontalBearingY: -12
+ m_HorizontalAdvance: 48
+ m_GlyphRect:
+ m_X: 93
+ m_Y: 10
+ m_Width: 51
+ m_Height: 6
+ m_Scale: 1
+ m_AtlasIndex: 0
+ m_ClassDefinitionType: 0
+ - m_Index: 2030
+ m_Metrics:
+ m_Width: 64
+ m_Height: 9
+ m_HorizontalBearingX: 11
+ m_HorizontalBearingY: 9
+ m_HorizontalAdvance: 86
+ m_GlyphRect:
+ m_X: 10
+ m_Y: 10
+ m_Width: 64
+ m_Height: 9
+ m_Scale: 1
+ m_AtlasIndex: 0
+ m_ClassDefinitionType: 0
+ - m_Index: 49
+ m_Metrics:
+ m_Width: 49
+ m_Height: 59
+ m_HorizontalBearingX: 7
+ m_HorizontalBearingY: 59
+ m_HorizontalAdvance: 62
+ m_GlyphRect:
+ m_X: 163
+ m_Y: 10
+ m_Width: 49
+ m_Height: 59
+ m_Scale: 1
+ m_AtlasIndex: 0
+ m_ClassDefinitionType: 0
+ - m_Index: 72
+ m_Metrics:
+ m_Width: 42
+ m_Height: 47
+ m_HorizontalBearingX: 3
+ m_HorizontalBearingY: 46
+ m_HorizontalAdvance: 48
+ m_GlyphRect:
+ m_X: 93
+ m_Y: 35
+ m_Width: 42
+ m_Height: 47
+ m_Scale: 1
+ m_AtlasIndex: 0
+ m_ClassDefinitionType: 0
+ - m_Index: 90
+ m_Metrics:
+ m_Width: 64
+ m_Height: 45
+ m_HorizontalBearingX: -1
+ m_HorizontalBearingY: 45
+ m_HorizontalAdvance: 62
+ m_GlyphRect:
+ m_X: 10
+ m_Y: 38
+ m_Width: 64
+ m_Height: 45
+ m_Scale: 1
+ m_AtlasIndex: 0
+ m_ClassDefinitionType: 0
+ - m_Index: 3
+ m_Metrics:
+ m_Width: 0
+ m_Height: 0
+ m_HorizontalBearingX: 0
+ m_HorizontalBearingY: 0
+ m_HorizontalAdvance: 24
+ m_GlyphRect:
+ m_X: 0
+ m_Y: 0
+ m_Width: 0
+ m_Height: 0
+ m_Scale: 1
+ m_AtlasIndex: 0
+ m_ClassDefinitionType: 0
+ - m_Index: 55
+ m_Metrics:
+ m_Width: 50
+ m_Height: 59
+ m_HorizontalBearingX: 1
+ m_HorizontalBearingY: 59
+ m_HorizontalAdvance: 53
+ m_GlyphRect:
+ m_X: 231
+ m_Y: 10
+ m_Width: 50
+ m_Height: 59
+ m_Scale: 1
+ m_AtlasIndex: 0
+ m_ClassDefinitionType: 0
+ - m_Index: 91
+ m_Metrics:
+ m_Width: 43
+ m_Height: 45
+ m_HorizontalBearingX: 0
+ m_HorizontalBearingY: 45
+ m_HorizontalAdvance: 43
+ m_GlyphRect:
+ m_X: 300
+ m_Y: 10
+ m_Width: 43
+ m_Height: 45
+ m_Scale: 1
+ m_AtlasIndex: 0
+ m_ClassDefinitionType: 0
+ - m_Index: 87
+ m_Metrics:
+ m_Width: 23
+ m_Height: 56
+ m_HorizontalBearingX: 1
+ m_HorizontalBearingY: 55
+ m_HorizontalAdvance: 24
+ m_GlyphRect:
+ m_X: 362
+ m_Y: 10
+ m_Width: 23
+ m_Height: 56
+ m_Scale: 1
+ m_AtlasIndex: 0
+ m_ClassDefinitionType: 0
+ - m_Index: 37
+ m_Metrics:
+ m_Width: 46
+ m_Height: 59
+ m_HorizontalBearingX: 7
+ m_HorizontalBearingY: 59
+ m_HorizontalAdvance: 57
+ m_GlyphRect:
+ m_X: 404
+ m_Y: 10
+ m_Width: 46
+ m_Height: 59
+ m_Scale: 1
+ m_AtlasIndex: 0
+ m_ClassDefinitionType: 0
+ - m_Index: 88
+ m_Metrics:
+ m_Width: 38
+ m_Height: 46
+ m_HorizontalBearingX: 5
+ m_HorizontalBearingY: 45
+ m_HorizontalAdvance: 48
+ m_GlyphRect:
+ m_X: 300
+ m_Y: 74
+ m_Width: 38
+ m_Height: 46
+ m_Scale: 1
+ m_AtlasIndex: 0
+ m_ClassDefinitionType: 0
+ - m_Index: 79
+ m_Metrics:
+ m_Width: 9
+ m_Height: 62
+ m_HorizontalBearingX: 5
+ m_HorizontalBearingY: 62
+ m_HorizontalAdvance: 19
+ m_GlyphRect:
+ m_X: 357
+ m_Y: 85
+ m_Width: 9
+ m_Height: 62
+ m_Scale: 1
+ m_AtlasIndex: 0
+ m_ClassDefinitionType: 0
+ - m_Index: 82
+ m_Metrics:
+ m_Width: 42
+ m_Height: 47
+ m_HorizontalBearingX: 3
+ m_HorizontalBearingY: 46
+ m_HorizontalAdvance: 48
+ m_GlyphRect:
+ m_X: 385
+ m_Y: 88
+ m_Width: 42
+ m_Height: 47
+ m_Scale: 1
+ m_AtlasIndex: 0
+ m_ClassDefinitionType: 0
+ - m_Index: 93
+ m_Metrics:
+ m_Width: 36
+ m_Height: 45
+ m_HorizontalBearingX: 3
+ m_HorizontalBearingY: 45
+ m_HorizontalAdvance: 43
+ m_GlyphRect:
+ m_X: 446
+ m_Y: 88
+ m_Width: 36
+ m_Height: 45
+ m_Scale: 1
+ m_AtlasIndex: 0
+ m_ClassDefinitionType: 0
+ - m_Index: 85
+ m_Metrics:
+ m_Width: 23
+ m_Height: 46
+ m_HorizontalBearingX: 5
+ m_HorizontalBearingY: 46
+ m_HorizontalAdvance: 29
+ m_GlyphRect:
+ m_X: 469
+ m_Y: 10
+ m_Width: 23
+ m_Height: 46
+ m_Scale: 1
+ m_AtlasIndex: 0
+ m_ClassDefinitionType: 0
+ m_CharacterTable:
+ - m_ElementType: 1
+ m_Unicode: 95
+ m_GlyphIndex: 66
+ m_Scale: 1
+ - m_ElementType: 1
+ m_Unicode: 8230
+ m_GlyphIndex: 2030
+ m_Scale: 1
+ - m_ElementType: 1
+ m_Unicode: 78
+ m_GlyphIndex: 49
+ m_Scale: 1
+ - m_ElementType: 1
+ m_Unicode: 101
+ m_GlyphIndex: 72
+ m_Scale: 1
+ - m_ElementType: 1
+ m_Unicode: 119
+ m_GlyphIndex: 90
+ m_Scale: 1
+ - m_ElementType: 1
+ m_Unicode: 32
+ m_GlyphIndex: 3
+ m_Scale: 1
+ - m_ElementType: 1
+ m_Unicode: 84
+ m_GlyphIndex: 55
+ m_Scale: 1
+ - m_ElementType: 1
+ m_Unicode: 120
+ m_GlyphIndex: 91
+ m_Scale: 1
+ - m_ElementType: 1
+ m_Unicode: 116
+ m_GlyphIndex: 87
+ m_Scale: 1
+ - m_ElementType: 1
+ m_Unicode: 66
+ m_GlyphIndex: 37
+ m_Scale: 1
+ - m_ElementType: 1
+ m_Unicode: 117
+ m_GlyphIndex: 88
+ m_Scale: 1
+ - m_ElementType: 1
+ m_Unicode: 108
+ m_GlyphIndex: 79
+ m_Scale: 1
+ - m_ElementType: 1
+ m_Unicode: 111
+ m_GlyphIndex: 82
+ m_Scale: 1
+ - m_ElementType: 1
+ m_Unicode: 122
+ m_GlyphIndex: 93
+ m_Scale: 1
+ - m_ElementType: 1
+ m_Unicode: 114
+ m_GlyphIndex: 85
+ m_Scale: 1
m_AtlasTextures:
- {fileID: 28268798066460806}
m_AtlasTextureIndex: 0
@@ -227,11 +512,115 @@ MonoBehaviour:
m_AtlasHeight: 512
m_AtlasPadding: 9
m_AtlasRenderMode: 4169
- m_UsedGlyphRects: []
- m_FreeGlyphRects:
+ m_UsedGlyphRects:
- m_X: 0
m_Y: 0
+ m_Width: 83
+ m_Height: 28
+ - m_X: 83
+ m_Y: 0
+ m_Width: 70
+ m_Height: 25
+ - m_X: 153
+ m_Y: 0
+ m_Width: 68
+ m_Height: 78
+ - m_X: 83
+ m_Y: 25
+ m_Width: 61
+ m_Height: 66
+ - m_X: 0
+ m_Y: 28
+ m_Width: 83
+ m_Height: 64
+ - m_X: 221
+ m_Y: 0
+ m_Width: 69
+ m_Height: 78
+ - m_X: 290
+ m_Y: 0
+ m_Width: 62
+ m_Height: 64
+ - m_X: 352
+ m_Y: 0
+ m_Width: 42
+ m_Height: 75
+ - m_X: 394
+ m_Y: 0
+ m_Width: 65
+ m_Height: 78
+ - m_X: 290
+ m_Y: 64
+ m_Width: 57
+ m_Height: 65
+ - m_X: 347
+ m_Y: 75
+ m_Width: 28
+ m_Height: 81
+ - m_X: 375
+ m_Y: 78
+ m_Width: 61
+ m_Height: 66
+ - m_X: 436
+ m_Y: 78
+ m_Width: 55
+ m_Height: 64
+ - m_X: 459
+ m_Y: 0
+ m_Width: 42
+ m_Height: 65
+ m_FreeGlyphRects:
+ - m_X: 144
+ m_Y: 25
+ m_Width: 9
+ m_Height: 486
+ - m_X: 144
+ m_Y: 78
+ m_Width: 146
+ m_Height: 433
+ - m_X: 0
+ m_Y: 92
+ m_Width: 290
+ m_Height: 419
+ - m_X: 83
+ m_Y: 91
+ m_Width: 207
+ m_Height: 420
+ - m_X: 0
+ m_Y: 156
m_Width: 511
+ m_Height: 355
+ - m_X: 0
+ m_Y: 129
+ m_Width: 347
+ m_Height: 382
+ - m_X: 347
+ m_Y: 64
+ m_Width: 5
+ m_Height: 11
+ - m_X: 375
+ m_Y: 144
+ m_Width: 136
+ m_Height: 367
+ - m_X: 375
+ m_Y: 75
+ m_Width: 19
+ m_Height: 3
+ - m_X: 436
+ m_Y: 142
+ m_Width: 75
+ m_Height: 369
+ - m_X: 459
+ m_Y: 65
+ m_Width: 52
+ m_Height: 13
+ - m_X: 491
+ m_Y: 65
+ m_Width: 20
+ m_Height: 446
+ - m_X: 501
+ m_Y: 0
+ m_Width: 10
m_Height: 511
m_FontFeatureTable:
m_MultipleSubstitutionRecords: []
@@ -8893,9 +9282,9 @@ Texture2D:
Hash: 00000000000000000000000000000000
m_IsAlphaChannelOptional: 0
serializedVersion: 4
- m_Width: 1
- m_Height: 1
- m_CompleteImageSize: 1
+ m_Width: 512
+ m_Height: 512
+ m_CompleteImageSize: 262144
m_MipsStripped: 0
m_TextureFormat: 1
m_MipCount: 1
@@ -8920,8 +9309,8 @@ Texture2D:
m_LightmapFormat: 0
m_ColorSpace: 0
m_PlatformBlob:
- image data: 1
- _typelessdata: 00
+ image data: 262144
+ _typelessdata: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080a0b1313131313131311110e0b060100000000000000000004090e11121313131313131313070705010000000000000000000000060a0e1011131313131313130b0a080400000000000000000000000000020507080c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0b0a0805000000000000000000000002080c101212131313131313090806030000000000000000000000000000000000000000000000000406071113131313131313131308070502000000000000000000000000000000000000000000000000000000000000000000050a0d0f10131313131313130909070300000000000000000000000000000000000000000000000000000000000000000004090c0e0f131313131313130c0b09060100000000000000000000000000000004090c0e0f13131313131313100605030000000000000000000000000000000000000000000000000407090a0e111213121211100d0b0806050300000000000000000000000002080c101212131313131313131313131313131313131313131313131313131211100f0d0a07070501000000000000000000000000000000000000000000000000000000040613131313131313130d0c0a07020000000000000000000000000000000000000000000000000000000000000000000000050c11141717202020202020201e1d1b17120c0400000000000000080f151a1d1f20202020202020201413110d080200000000000000040b11161a1d1e20202020202020171714110c0500000000000000000003090e12141519191919191919191919191919191919191919191919191919191919191919191919191919191919191919191919191919181715110c060000000000000000060d13181c1e1f2020202020201615130f0a040000000000000000000000000000000000000000070c1013131e2020202020202020201414110e08020000000000000000000000000000000000000000000000000000000000030a1016191c1d202020202020201615130f0a04000000000000000000000000000000000000000000000000000000000002091015191b1c20202020202020191816120d0700000000000000000000000002091015191b1c202020202020201c13120f0b060000000000000000000000000000000000000000050b101316171b1e1f201f1e1e1c1a181513120f0b06000000000000000000060d13181c1e1f2020202020202020202020202020202020202020202020201f1f1e1d1b19171413110d08050200000000000000000000000000000000000000000001070c101320202020202020201a1917130e070000000000000000000000000000000000000000000000000000000000000000000810171c2123242d2d2d2d2d2d2d2b2a27231d160e06000000000009121920262a2c2c2d2d2d2d2d2d2d21201d19130c050000000000050d151c2227292a2d2d2d2d2d2d2d2423211c17100800000000000000060d141a1e2122262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262424211d1710090000000000000710181f24282b2c2d2d2d2d2d2d22211f1b150e060000000000000000000000000000000000030b12181c1f202b2d2d2d2d2d2d2d2d2d21201e19140d05000000000000000000000000000000000000000000000000000000040d151c212629292d2d2d2d2d2d2d23221f1b160f07000000000000000000000000000000000000000000000000000000030c141b212528292d2d2d2d2d2d2d2625221e18110901000000000000000000030c141b212528292d2d2d2d2d2d2d29201f1b17110a020000000000000000000000000000000003090e161c202223272a2c2c2c2b2a29272422201f1b17110a020000000000000710181f24282b2c2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2c2c2b2a28262421201d1914120e0903000000000000000000000000000000000000030b12181c1f2d2d2d2d2d2d2d2d2626231f19120a0100000000000000000000000000000000000000000000000000000000000008121a22282d3031393939393939393837332e2820180e0400000008121b242b31363839393939393939392e2d2a251e160e05000000040d171f272e3336373939393939393931302d28221a12080000000000060f181f262a2d2e3232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323231302d28221b1209000000000610192229303538393939393939392f2e2b2620181006000000000000000000000000000000030c151d23282c2d373939393939393939392e2d2a251e170e0500000000000000000000000000000000000000000000000000030d161f262d32353639393939393939302f2c272119100700000000000000000000000000000000000000000000000000020c151e252c3134353939393939393932312e29231b13090000000000000000000c151e262c31343539393939393939362d2b27221b140b020000000000000000000000000000060d141a21272c2f30343738393938373634312f2d2b27221b140b0200000000061019222930353839393939393939393939393939393939393939393939393939393938363533302e2d2925211e1a140f0a04000000000000000000000000000000030d151d23292c393939393939393933322f2a241c130a000000000000000000000000000000000000000000000000000000000005101a242c33393c3e4646464646464644433f39322a20160c0100040f19242d353d42454646464646464646463936302820160c0200000b151f2931393f4244464646464646463e3c39332c241a1005000000030d18212931363a3b3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3e3d39342c241b10060000020d18222b343b4144454646464646463c3b37322a22180e0400000000000000000000000000000b151e272e34383a444646464646464646463b3936302920170d020000000000000000000000000000000000000000000000000a151f2831383e4243464646464646463c3b38322b23190f0400000000000000000000000000000000000000000000000009141e2730373d4142464646464646463f3e3a352d251b0f060000000000000008121e2730373d414246464646464646433937332d261d140a00000000000000000000000000060f171f262a33383c3d4144454645454443403e3b3937332d261d140a000000020d18222b343b4144454646464646464646464646464646464646464646464646464645444342403d3a3935302d2b261f1b160e0802000000000000000000000000010b151f272f34384646464646464646403f3b352e261c1207000000000000000000000000000000000000000000000000000000000c17222c363e45494a53535353535353514f4b443c32281d1206000915202b353f474e5253535353535353535346413a32281e13080006111c27313b434a4f51535353535353534a49453e362c22170c00000009141f29333b4246484c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4b49453e362c22170c000008131f29343d464c51525353535353534947433c342a20150a0000000000000000000000000007121d273039404546515353535353535353535346413b32291e1408000000000000000000000000000000000000000000000005101c26313a42494e50535353535353534948433d352b21160a000000000000000000000000000000000000000000000004101b25303942494d4f535353535353534c4a463f372d21180b020000000000050e1a24303942494d4f535353535353534f46443f382f261b11060000000000000000000000060f18212931363d44484a4e5152535251514f4d4b4846443f382f261b1106000008131f29343d464c5152535353535353535353535353535353535353535353535353525251504e4c4a4746413b3a37312c272119140d05000000000000000000000007121d273139404553535353535353534d4b4740382e24190e02000000000000000000000000000000000000000000000000000004111c28333e48505557606060606060605e5c564e44392e23170b010e1a26313d4751595e5f606060606060605f524c443a3025190d010a16222e39434d555b5d60606060606060575550483e33281c110400020e1a26313b454d535559595959595959595959595959595959595959595959595959595959595959595959595959595959595959595959595959575550483e34281d1105000c1824303b464f575d5f60606060606055534e463c32261b0f030000000000000000000000020b18232e39434b51535e6060606060606060605f524c443b3025190e02000000000000000000000000000000000000000000000a16212d38424c545a5c6060606060606056544f473d32271b0f03000000000000000000000000000000000000000000000915212c37424b53595c60606060606060595651493f332a1d140a00000000020d17202c36424b54595c606060606060605c53504941382d22170b00000000000000000000030c18212a333b42464f54565a5d5f5f5f5e5d5c5a575553504941382d22170b00000c1824303b464f575d5f6060606060606060606060606060606060606060606060605f5f5e5d5b595754524c4846423c38322a251e170e08000000000000000000000c18232f39434b515f606060606060605957524a40352a1f130700000000000000000000000000000000000000000000000000000814212d3945505a61646c6c6c6c6c6c6c6b6760564b3f33271b0e04111d2a36424e59636a6c6c6c6c6c6c6c6c6c5e564c41362a1d11050e1a27333f4a555f676a6c6c6c6c6c6c6c64615a5045392d2114080005121e2a36424d575f616565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656564615a5045392d21150800101c2835414c5761696c6c6c6c6c6c6c625f584e43372b1f130600000000000000000000000a141d2834404b555c606a6c6c6c6c6c6c6c6c6c6c5e564c41362a1e1105000000000000000000000000000000000000000000010d1926323e49545e66696c6c6c6c6c6c6c6360594f43382c1f1307000000000000000000000000000000000000000000000c1925313d49535d65686c6c6c6c6c6c6c65625b51453c2f261c110600000008141e29323e48545d65686c6c6c6c6c6c6c69605b53493f33271b0f030000000000000000000b151e2a333c454d53596063676a6b6c6c6b6a69676462605b53493f33271b0f0300101c2835414c5761696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b69686663615e5655534d48433d363029201a1109000000000000000004101c2934404b555c6c6c6c6c6c6c6c6c66635c52473b2f23170a00000000000000000000000000000000000000000000000000000a1723303c4955616c71797979797979797772675c4f43372a1d1106121f2c3845525e6a75797979797979797976685e5246392d201307101d2936424f5b67717779797979797979716c6155493c3023170a000714212d3a46535f696e72727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272716c6155493d3024170a00121e2b3844515d697378797979797979766a5f53473b2e2115080000000000000000000006111b262f3845515c676d7779797979797979797976685e5246392d201407000000000000000000000000000000000000000000030f1c2935424e5a667076797979797979796f6b6054483b2f221509000000000000000000000000000000000000000000020e1b2834414d59656f7579797979797979726d62574d42382d22170b0200050e1925303b44505a656f7579797979797979766c655b5044372b1f1205000000000000000007121c27303c454e575f616b70747778797878777673716e6c655b5044372b1f120500121e2b3844515d697378797979797979797979797979797979797979797979797979797877767573706d6866615f57544f46413b322c231b12090000000000000006131f2c3845515c677679797979797979736e63574b3f3226190c00000000000000000000000000000000000000000000000000000b1724313e4a5764717e8686868686868684776b5e5144382b1e110613202c3946535f6c7987868686868686867a6d6154473a2e211407111e2a3744515d6a7783868686868686867e7164574a3e3124170b000815222e3b4855616e7b7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7e7164574b3e3124180b00121f2c3945525f6c78858686868686867c6f6255493c2f221609000000000000000000000b17222d38414e58606d79848686868686868686867a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c697682868686868686867d6f6356493c30231609000000000000000000000000000000000000000000020f1c2935424f5c687582868686868686867f72695f544a3f33281d140a020c17202a36414c56616c75818686868686868682796c605346392d20130600000000000000000c18232e39424e575f696e767d8184858685848482807e7b776c605346392d20130600121f2c3945525f6c788586868686868686868686868686868686868686868686868685858483817f7d7a77736e69636059524c443d352d241b12080000000000000714202d3a4753606d7986868686868686807366594d4033261a0d00000000000000000000000000000000000000000000000000000b1724313e4a5764717d8a93939393939184776b5e5144382b1e110613202c3946535f6c7986929393939393877a6d6154473a2e211407111e2a3744515d6a77849093939393938a7d7164574a3e3124170b000a1724303d4a5763707d8a8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c83776a5d5044372a1d1100121f2c3945525f6c78859293939393887c6f6255493c2f221609000000000000000000040f1b27333f49535f6a73808c9693939393939393877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9393939393897c6f6356493c30231609000000000000000000000000000000000000000000000714212e3a4754616d7a85919393939392867b6e665b50443c2f261c1108131e29323a46525e68717e8a939393939392857a6e655b5044372b1f12050000000000000004101c2834404a545f6a6e7b83898d9092929291908f8d8a887d7063564a3d3023170a00121f2c3945525f6c7885929393939393939393939393939393939393939393939993929291908e8c8a86837f7b766f6b615e564f473f362d241a0f0600000000000714202d3a4753606d7a8693939393938c807366594d4033261a0d00000000000000000000000000000000000000000000000000000b1724313e4a5764717d8a979f9f9f9e9184776b5e5144382b1e110613202c3946535f6c7986929f9f9f9f94877a6d6154473a2e211407111e2a3744515d6a7784909d9f9f9f978a7d7164574a3e3124170b000a1724303d4a5763707d8a96989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989083776a5d5044372a1d1100121f2c3945525f6c7885929f9f9f95887c6f6255493c2f2216090000000000000000040d1a232b3744505b656e7c86929fa89f9f9f9f9f94877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9c9f9f9f96897c6f6356493c30231609000000000000000000000000000000000000000000000713202d3946525e68707d8a929da8a2989083786c60574d42382d22170e1925303a44505a616e7a85929ea5a89d938a7d70685e53493f33271b0f030000000000000006121f2c3844515c666e7c8590949a9d9e9f9f9e9d9c9a96897d7063564a3d3023170a00121f2c3945525f6c7885929f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa49f9f9f9e9c9b999a93908c87827c756e68605950483f362c21180e03000000000714202d3a4753606d7a86939f9f9f998c807366594d4033261a0d00000000000000000000000000000000000000000000000000000b1724313e4a5764717d8a97a4acaa9e9184776b5e5144382b1e110613202c3946535f6c7986929facaca094877a6d6154473a2e211407111e2a3744515d6a7784909daaaca4978a7d7164574a3e3124170b000a1724303d4a5763707d8a969f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9d9083776a5d5044372a1d1100121f2c3945525f6c7885929faba295887c6f6255493c2f22160900000000000000010c161f2a36414c56606c77839099a3aeacacacaca194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9aca296897c6f6356493c302316090000000000000000000000000000000000000000000005111d2a36414c56616b74808d96a0aa9f948b7f72695f544a3f33281d16202a36414c56616c75818f97a1aba0968e81746c61564d41382d22170b00000000000000000713202d3a4653606d788390979fa6aaababa5a1a0a0a196897d7063564a3d3023170a00121f2c3945525f6c7885929fabacacada7a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a6a7a8a9a8aca49f9d9a938f89827a706b625a50483e332a1f1509000000000714202d3a4753606d7a8693a0aca6998c807366594d4033261a0d00000000000000000000000000000000000000000000000000000b1724313e4a5764717d8a97a4b0aa9e9184776b5e5144382b1e110613202c3946535f6c7986929facada094877a6d6154473a2e211407111e2a3744515d6a7784909daab0a4978a7d7164574a3e3124170b000a1724303d4a5763707d8a93939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939083776a5d5044372a1d1100121f2c3945525f6c7885929faba295887c6f6255493c2f2216090000000000000007121d28313946525e68717e8b949fabb4b8b9beada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c3023160900000000000000000000000000000000000000000000010d1925303a444f59606d79849199a3a69f92867b6e665b50443c2f261e28323a46525e68717e8a939ea9a3999184796d605a50443b2f261b11060000000000000004111d2935404b5564717e8b95a0a9b0a9a19e989493939496897d7063564a3d3023170a00121f2c3945525f6c7885929fabb8ada39c9998989898989898989898989898989899999a9b9d9fa3ababaca49f9c938f857d716c625a50453c31261a0e050000000714202d3a4753606d7a8693a0ada6998c807366594d4033261a0d00000000000000000000000000000000000000000000000000000b1724313e4a5764717d8a97a4acaa9e9184776b5e5144382b1e110613202c3946535f6c7986929facaca094877a6d6154473a2e211407111e2a3744515d6a7784909daaaca4978a7d7164574a3e3124170b000a1724303d4a5763707d8686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868683776a5d5044372a1d1100121f2c3945525f6c7885929faba295887c6f6255493c2f221609000000000000020c18242f39434f59616e7a85929fa6b0adabadb3ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c30231609000000000000000000000000000000000000000000000008131e28323e45515d676f7c87929fa6a2989083786c60574d42382d25303a44505a616d7a85929ea5a69f92877c6f675d51483e32291d140a00000000000000000613202c3945515d677683909ca7b1aaa197918b8886868789897d7063564a3d3023170a00121f2c3945525f6c7885929fabb8a79c918c8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8c8c8d8e9192999b9fa2aaaca59e9792877e716c61574d42372b21170b0000000714202d3a4753606d7a8693a0ada6998c807366594d4033261a0d00000000000000000000000000000000000000000000000000000b1724313e4a5764717d8a979f9f9f9e9184776b5e5144382b1e110613202c3946535f6c7986929f9f9f9f94877a6d6154473a2e211407111e2a3744515d6a7784909d9f9f9f978a7d7164574a3e3124170b000916232f3c4855616b70797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797771665b4f4236291d1000121f2c3945525f6c7885929faba295887c6f6255493c2f2216090000000000000a141e2935404b55616b75818e97a2ada9a19ea1a9b3a194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c302316090000000000000000000000000000000000000000000000020c16202935404b55606a737f8c949faa9f948b7f72695f544a3f332935414c56616c75818e97a1aa9f948c7f736a60554b40362c20170b0200000000000000000714202d3a4753606d7a86939facaea29891857e7b79797b7d7f7b6e6255483b2f22150800121f2c3945525f6c7885929fabb2a5998c7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f8080828486898e92989fa4aca9a19992877e71695f53473e33281c100200000714202d3a4753606d7a8693a0ada6998c807366594d4033261a0d00000000000000000000000000000000000000000000000000000b1724313e4a5764717d8a93939393939184776b5e5144382b1e110613202c3946535f6c7986929393939393877a6d6154473a2e211407111e2a3744515d6a77849093939393938a7d7164574a3e3124170b000714202c38444f5961636c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6a665f554a3e32261a0e00121f2c3945525f6c7885929faba295887c6f6255493c2f221609000000000006111c26303845515d67707d8a939ea9a69e979197a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c30231609000000000000000000000000000000000000000000000000050e18242f39434e58606d78839098a2a69f92867b6e665b50443c323a46525e68707e8a939ea9a2989083786d60584e43392f231a0e05000000000000000000091623303c4956636f7c8999a4afac9f92867b726e6d6d6e70726e695f53473a2e21140800121f2c3945525f6c7885929fabada094877a7272727272727272727272727272727273747577797d81858e939aa3ababa39992867b6e62594f44382c1e140800000714202d3a4753606d7a8693a0ada6998c807366594d4033261a0d00000000000000000000000000000000000000000000000000000b1724313e4a5764717e8686868686868684776b5e5144382b1e110613202c3946535f6c7987868686868686867a6d6154473a2e211407111e2a3744515d6a7783868686868686867e7164574a3e3124170b0004101c28333e474f5557606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060605d5b554d43392d22160a00121f2c3945525f6c7885929faba295887c6f6255493c2f22160900000000000b17232e38424e58606d7984919ea5aa9e948f85919eaba194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c302316090000000000000000000000000000000000000000000000000007121d27313c44505c666e7b86929fa5a2989083786c60574d423a44505a616d7a85919ea5a59f92867b6e665c50463d31281d1108000000000000000000000b1824313e4b5764717e8a97abb5a79a8d807469616060616365625f574d42372b1e120600121f2c3945525f6c7885929fabada094877a6d656565656565656565656565656566666768676d70747a81889299a3afaba2989083766b6155483b3025190d01000714202d3a4753606d7a8693a0ada6998c807366594d4033261a0d00000000000000000000000000000000000000000000000000000a1723303c4955616c71797979797979797772675c4f43372a1d1106121f2c3845525e6a75797979797979797976685e5246392d201307101d2936424f5b67717779797979797979716c6155493c3023170a00000b16212c353e44484a53535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353504f4a433b31271c110500121f2c3945525f6c7885929faba295887c6f6255493c2f2216090000000004101c28343f4a545f6a73808d96a1aca2988f82818f9ba8a194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000010b151f28343f4a545f69717e8b939ea99f948b7f72695f544a414c56616c75818e97a1a89e938b7e71695f544a3f342b1f160c00000000000000000000000c1825323f4b5865727e8b98a5b0a3978a7d706457535354565955534d453c31261a0e0200121f2c3945525f6c7885929fabada094877a6d615858585858585858585858585859595a555c6063686d747e87929fa6b0aa9f948a7d7063564c41362a1e1105000714202d3a4753606d7a8693a0ada6998c807366594d4033261a0d00000000000000000000000000000000000000000000000000000814212d3945505a61646c6c6c6c6c6c6c6b6760564b3f33271b0e04111d2a36424e59636a6c6c6c6c6c6c6c6c6c5e564c41362a1d11050e1a27333f4a555f676a6c6c6c6c6c6c6c64615a5045392d211408000005101a232c33383c3d4646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464644423e3931291f150b0000121f2c3945525f6c7885929faba295887c6f6255493c2f221609000000040d1a242b3844505c666f7c87929fa8a79f92867b838f9ca9a194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000030d17232e38424d57626c75828f97a1a69f92867b6e665b5045525d68707d8a939ea9a1968e81756c62574d42382e22190d0400000000000000000000000c1926323f4c5965727f8c98a5aea295887b6f62554846484a4c4847423c332a1f15090000121f2c3945525f6c7885929fabada094877a6d61544c4c4c4c4c4c4c4c4c4c4c4c4c4d4d4b5153565d616c717e8a949eaab0a69c8f8276685e5246392d201407000714202d3a4753606d7a8693a0ada6998c807366594d4033261a0d000000000000000000000000000000000000000000000000000004111c28333e48505557606060606060605e5c564e44392e23170b010e1a26313d4751595e5f606060606060605f524c443a3025190d010a16222e39434d555b5d60606060606060575550483e33281c110400000008111a21282c2f30393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393736322d271f170d030000121f2c3945525f6c7885929faba295887c6f6255493c2f2216090000010c16202a36424d57606d78839099a3ab9f958b7f7783909daaa194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000000006111c26303b45505a616d7a85919ea4a2989083786c60574f59606d7a84919ea5a49a91847a6d615a50453b30261c10070000000000000000000000000c1926323f4c5965727f8c98a5aea194877b6e6154483b3b3d3f3b3a37312a21180e030000121f2c3945525f6c7885929fabada094877a6d6154473f3f3f3f3f3f3f3f3f3f3f3f40414045464c525a616c75828f9ca8b2ac9f93877a6e6154473b2e211408000714202d3a4753606d7a8693a0ada6998c807366594d4033261a0d0000000000000000000000000000000000000000000000000000000c17222c363e45494a53535353535353514f4b443c32281d1206000915202b353f474e5253535353535353535346413a32281e13080006111c27313b434a4f51535353535353534a49453e362c22170c00000000000810161c2023242d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2a2926221c150d05000000121f2c3945525f6c7885929faba295887c6f6255493c2f221609000008131e28323a46535e69727f8c95a0aba3999083787784919eaaa194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000a141e29333f46525e68707d8a929da89f948b7f72695f56616b74818e97a1a79f93887d70685d52483e33291e140a000000000000000000000000000c1926323f4c5965727f8c98a5aea194877b6e6154483b2e30322f2e2b261f180f06000000121f2c3945525f6c7885929fabada094877a6d6154473a3232323232323232323233332e34383a4146505a626f7c8896a0acafa49a8a7e7164574b3e3124180b000714202d3a4753606d7a8693a0ada6998c807366594d4033261a0d00000000000000000000000000000000000000000000000000000005101a242c33393c3e4646464646464644433f39322a20160c0100040f19242d353d42454646464646464646463936302820160c0200000b151f2931393f4244464646464646463e3c39332c241a1005000000000000050b10141617202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020201d1d1a16110b0300000000121f2c3945525f6c7885929faba295887c6f6255493c2f22160900030c19242f3a44505a616e7b86929fa7a89f92877c6f7885919eaba194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000000000020c18212a36414c56616b74818d96a0a69f92867b6e665d68707d8a939ea9a0958d80736b60564c41362d21180c02000000000000000000000000000c1926323f4c5965727f8c98a5aea194877b6e6154483b2e232622211e1a150e0600000000121f2c3945525f6c7885929fabada094877a6d6154473a2e252525252525252525262623282c30353e47535f6a7784919daab6ac9a8d8073675a4d4034271a0d000714202d3a4753606d7a8693a0ada6998c807366594d4033261a0d0000000000000000000000000000000000000000000000000000000008121a22282d3031393939393939393837332e2820180e0400000008121b242b31363839393939393939392e2d2a251e160e05000000040d171f272e3336373939393939393931302d28221a12080000000000000000000407090a1313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131311100e0a05000000000000121f2c3945525f6c7885929faba295887c6f6255493c2f221609000b151e2935414c56616c75828f98a2aca0968d80736a7985929faca194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000060f1925303a444f59606d79849199a3a2989083786c606d7a84919ea5a3989083796d60594f443a30241b0f0600000000000000000000000000000c1926323f4c5965727f8c98a5aea194877b6e6154483b2e21191514120e09030000000000121f2c3945525f6c7885929fabada094877a6d6154473a2e211919191919191919191a181c1f242b37434e586774808d9aa7b3a89c8f8275695c4f4236291c0f000714202d3a4753606d7a8693a0ada6998c807366594d4033261a0d00000000000000000000000000000000000000000000000000000000000810171c2123242d2d2d2d2d2d2d2b2a27231d160e06000000000009121920262a2c2c2d2d2d2d2d2d2d21201d19130c050000000000050d151c2227292a2d2d2d2d2d2d2d2423211c1710080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000121f2c3945525f6c7885929faba295887c6f6255493c2f22160907121c27303945525d68717e8a949eaaa59e9184796d6c7986939faca194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000008131e28323e45515d676f7c87929fa79f948b7f726b74818e96a1a69f92867c6f675c51473d32281e12090000000000000000000000000000000c1926323f4c5965727f8c98a5aea194877b6e6154483b2e21150808060200000000000000121f2c3945525f6c7885929fabada094877a6d6154473a2e21140c0c0c0c0c0c0c0c070c10131b26313f4c5865727f8b98a5b2a99c908276695d5043362a1d10000714202d3a4753606d7a8693a0ada6998c807366594d4033261a0d000000000000000000000000000000000000000000000000000000000000050c11141717202020202020201e1d1b17120c0400000000000000080f151a1d1f20202020202020201413110d080200000000000000040b11161a1d1e20202020202020171714110c0500000000000000000000000000000000000000000000000000030608090c0e10111213131212110f0d0b080705020000000000000000000000000000000000000000000000000000000000121f2c3945525f6c7885929faba295887c6f6255493c2f2216090c18232e39424f59606d7a85919ea6a99e93897d70676d7a869aa4afa194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000020c16202935404b55606a737f8c959fa69f92867b707d89939da89f948b7f726a5f554b40352b20160c000000000000000000000000000000000c1926323f4c5965727f8c98a5aea194877b6e6154483b2e21150800000000000000000000121f2c3945525f6c7885929fabada094877a6d6154473a2e211407000000000000000000040a1824313e4b5764717e8a97a4b1aa9d9083776a5d5044372a1d11000714202d3a4753606d7a8693a0ada6998c807366594d4033261a0d000000000000000000000000000000000000000000000000000000000000000004080a0b1313131313131311110e0b060100000000000000000004090e11121313131313131313070705010000000000000000000000060a0e1011131313131313130b0a080400000000000000000000000000000000000000000000000002050a0f121515181b1d1e1f20201f1f1e1c1a181514120e0905010000000000000000000000000000000000000000000000000000121f2c3945525f6c7885929faba295887c6f6255493c2f221609101c2834404a54606b74818d97a1ada1978e81756b616d7a8794a0b6a194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000000050e18242f39434e58606d78839098a2a29890827a84919ea5a2978f82776c60584e43392e23190e04000000000000000000000000000000000c1926323f4c5965727f8c98a5aea194877b6e6154483b2e21150800000000000000000000121f2c3945525f6c7885929fabada094877a6d6154473a2e21140700000000000000000003081724313d4a5764707d8a97a3b0a99c908276695d5043362a1d10000714202d3a4753606d7a8693a0ada6998c807366594d4033261a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003090e12151b1f21222528292b2c2c2c2c2b2b29272521201e1a14110d0802000000000000000000000000000000000000000000000000121f2c3945525f6c7885929faba295887c6f6255493c2f22160e1b242c3844515c666f7c88939fa9a69e92857a6d61616e7a8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000007121d27313d44505c666e7b86929fa69f9490849196a1a59e92857b6e655b50463c30271d110800000000000000000000000000000000000c1926323f4c5965727f8c98a5aea194877b6e6154483b2e21150800000000000000000000121f2c3945525f6c7885929fabada094877a6d6154473a2e21140a0a0a0a0a0a0a0a060b0f131925323e4b5865717e8b98a4b1a89b8e8175685b4f4235281c0f000714202d3a4753606d7a8693a0ada6998c807366594d4033261a0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002070b0d0d13131313131313130c0c0906010000000000000000000003080b0d0e13131313131313130c0b090601000000000000000000000000000000000000000000000000000000000000000002080d141a1e20262b2e2f323436383939393938373633312e2d2a25201d19130d080200000000000000000000000000000000000000000000121f2c3945525f6c7885929faba295887c6f6255493c2f221617202b37424d57606d7883919aa4aa9f948b7e71685e616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000010b151f28343f4a545f69717e8b939ea69f969196a0a89d938a7e71695e53493f342a1e150b0000000000000000000000000000000000000c1926323f4c5965727f8c98a5aea194877b6e6154483b2e21150800000000000000000000121f2c3945525f6c7885929fabada094877a6d6154473a2e2116161616161616171718171c1f252a36414c5666737f8c99a6b5ab9a8d8074675a4d4134271a0e000714202d3a4753606d7a8693a0ada6998c807366594d4033261a0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000001080e1317191a2020202020202020191816120d070000000000000001080f14181a1b2020202020202020191816120d07000000000000000000000000000000000000000000000000000000000000050d13191f252a2d31373a3c3f41434445464645454442403e3b3a36302d29251e19130c04000000000000000000000000000000000000000000121f2c3945525f6c7885929faba295887c6f6255493c2f22161e29323a47535f69737f8c95a0aca3988f82766c6256616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000000030d17232e38424d57626c75828f97a1a8a09ea0a8a0968e81746c61564d41382d22180c030000000000000000000000000000000000000c1926323f4c5965727f8c98a5aea194877b6e6154483b2e21150800000000000000000000121f2c3945525f6c7885929fabada094877a6d6154473a2e232323232323232323242522282b30353e46525e687683909ca9aea3998a7d7064574a3d3124170a000714202d3a4753606d7a8693a0ada6998c807366594d4033261a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000020a12191f2326272d2d2d2d2d2d2d2d2625221e18110a0100000000020b131a202427282d2d2d2d2d2d2d2d2625221e18110901000000000000000000000000000000000000000000000000000000060e171e252a30363a3c4347484b4e50515253535252514f4d4b4846423b39353029241e160e070000000000000000000000000000000000000000121f2c3945525f6c7885929faba295887c6f6255493c2f221925303a44505a616e7b86929fa7a79f92867b6e615a54616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000006111c26303c45505a616d7a85929eabacaaaca3999184796d605a50443b2f261b1006000000000000000000000000000000000000000c1926323f4c5965727f8c98a5aea194877b6e6154483b2e21150800000000000000000000121f2c3945525f6c7885929fabada094877a6d6154473a3030303030303030303031312d33383a41464f59616e7a87939facab9f92867a6d6054473a2d211407000714202d3a4753606d7a8693a0ada6998c807366594d4033261a0d00000000000000000000000000000000000000000000000000000000000000000000000000000000010a141c242b2f3334393939393939393932312e2a231c130a000000010b141d252b303334393939393939393932312e29231b130900000000000000000000000000000000000000000000000000020a1117202930363b4246484e5355585b5c5e5f5f5f5f5e5e5c5a5854524d4746413a3530282019110901000000000000000000000000000000000000121f2c3945525f6c7885929faba295887c6f6255493c2f221f2a36414c56626c76828f98a3aba0958c7f72695f5354616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000000000000000a141e2a333f46525e68707d8a99a3aeb7ac9f92877c6f675d51483e32291d140a00000000000000000000000000000000000000000c1926323f4c5965727f8c98a5aea194877b6e6154483b2e21150800000000000000000000121f2c3945525f6c7885929fabada094877a6d6154473d3d3d3d3d3d3d3d3d3d3d3d3e3f3f44464c5259616b74818e99a4afa3998e8175675d5145392c201306000714202d3a4753606d7a8693a0ada6998c807366594d4033261a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000008121c262e363b3f4046464646464646463f3e3a352d251c1107000008131d262f363c404146464646464646463f3e3a352d251b11070000000000000000000000000000000000000000000000020b141b2227323a41464d5254585f626567696b6c6c6c6c6b6a696664615e5754524c46413a322b231b1309000000000000000000000000000000000000121f2c3945525f6c7885929faba295887c6f6255493c2f2227313946525e68717e8b949faaa4999083786d60574d54616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000000000008131e28323a45515c666e7b86929facb7ab9e91847a6d605a50443b2f261b110600000000000000000000000000000000000000000c1926323f4c5965727f8c98a5aea194877b6e6154483b2e21150800000000000000000000121f2c3945525f6c7885929fabada094877a6d615449494949494949494949494a4a4b4c4a5053565e616b707d88939faba69f92877b6e61554b4135291d1104000714202d3a4753606d7a8693a0ada6998d8073665a4d4033271a0d000000000000000000000000000000000000000000000000000000000000000000000000000000020e19242e3840474c4d53535353535353534c4a463f372d23180d01030f1a252f3841484c4e53535353535353534c4a463f372d23180d01000000000000000000000000000000000000000000020b141d262d333e444c52575e61666a6f727476777879797878777573716e6966615e56524c443d352d251b13090000000000000000000000000000000000121f2c3945525f6c7885929faba295887c6f6255493c2f242f39434f59616d7a85929ea6a89f93877c6f665c514854616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000000000000050f19242f3a444f59606d79839099a3acaaaca1968e81746c61564d41382d22170c03000000000000000000000000000000000000000c1926323f4c5965727f8c98a5aea194877b6e6154483b2e21150800000000000000000000121f2c3945525f6c7885929fabada094877a6d6156565656565656565656565656575858545b6063686d747d86929aa4a79f948d8073695f53433a2f24180d01000714202d3a4753606d7a8693a0ada69a8d8073675a4d4034271a0d01000000000000000000000000000000000000000000000000000000000000000000000000000007131f2b36404a52585a6060606060606060595751493f352a1e12000814202b36414a53595b6060606060606060595651493f35291e12010000000000000000000000000000000000000000000a141d262f383f4450565e61696e73777b7e81838485868685858482807e7b77736d68615d564f473f372d251b110800000000000000000000000000000000121f2c3945525f6c7885929faba295887c6f6255493c2f2935404b55606b75818e97a1ada1968d80746a60544a4854616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000000020b17212935414c56606b73808d95a0a7a09da0a79d938a7e70685e53493f33271e150b000000000000000000000000000000000000000c1926323f4c5965727f8c98a5aea194877b6e6154483b2e21150800000000000000000000121f2c3945525f6c7885929fabada094877a6d636363636363636363636363636364646567666c6f747a80879298a2a59e958f82786d60574d4231281d130700000714202d3a4753606d7a8693a0ada79a8e8174675b4e4134281b070000000000000000000000000000000000000000000000000000000000000000000000000000000b17232f3b47525c64676c6c6c6c6c6c6c6c65635b51463a2e1c12070b1824303c48535d64676c6c6c6c6c6c6c6c65625b51463a2e1d1207000000000000000000000000000000000000000006111b262f384149505a61686d747b8084888b8e8f919292929291918f8d8b87837f7a736d68605951493f372d231a0e04000000000000000000000000000000121f2c3945525f6c7885929faba295887c6f6255493c2f2f3845515d67707d89939ea9a59e9184796d60584e424854616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000a141d29333b45525d68707d87939fa69f959095a0a59e92857a6e655b50443c30271d12070000000000000000000000000000000000000c1926323f4c5965727f8c98a5aea194877b6e6154483b2e21150800000000000000000000121f2c3945525f6c7885929fabada094877a7070707070707070707070707070707071727476797c80858d9299a2a19e938f837a6d665c50453c311f160c0100000714202d3a4753606d7a8693a0ada89b8e8175685b4e422f24180c0000000000000000000000000000000000000000000000000000000000000000000000000000000d1926333f4c58646e737979797979797979726d63574a392e23180c0d1a2733404c59646f747979797979797979726d62564a392f24180d01000000000000000000000000000000000000030c17222d384149535b606c717a81868d9196989a9c9e9f9f9f9f9e9d9c999795908c86807a706b625b51493f352c20160c020000000000000000000000000000121f2c3945525f6c7885929faba295887c6f6255493c2d38424e58606d7984919ea5a99e938a7d70675d51463d4854616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000006111c262f3b45505a606d7a849199a49f9490849096a1a1978f82776c60584e43392e23180e0400000000000000000000000000000000000c1926323f4c5965727f8c98a5aea194877b6e6154483b2e21150800000000000000000000121f2c3945525f6c7885929fabb0a3978a7e7c7c7c7c7c7c7c7c7c7c7c7c7c7c7d7d7e7f818385898d92979fa19e97928b82796d685e544a3f332a1f0d040000000714202d3a4753606d7a8693a0ada99c8f837669554b4035291d10040000000000000000000000000000000000000000000000000000000000000000000000000005121e2a36424d5767738086868686868686867f7265544a4034281c10121e2a36424d5767748186868686868686867f7265554b4035291d10040000000000000000000000000000000000000b151e27333f49535b656c737e858e92999ea0a8a9a19e9d9c9b9c9d9fa2aaa7a09d98928d847d726d625b51473e32281e13080000000000000000000000000000121f2c3945525f6c7885929faba295887c6f6255493c333f4a545f6a73808d96a0aca2978f82756c61554b413b4854616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000000030d17222d38424d57616c75818e96a1a39890827a84919ea59f948b7f726a5f554b40342820160c02000000000000000000000000000000000c1926323f4c5965727f8c98a5aea194877b6e6154483b2e21150800000000000000000000121f2c3945525f6c7885929fabb8a69a908a8989898989898989898989898989898a8b8b8d8f92979a9f9c9a96918c857f776d675e564c42382e21180e000000000714202d3a4753606d7a8693a0adab9e918478675d5145392c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a46525e697784919393939393938f8276665c5144382c1f1214202d3a46525e697784919393939393938f8276675d5145392c201306000000000000000000000000000000000007121d27303944505b656c77808a92979fa3a8a19e999792908f8f8f909298999da0a7a29f9691877f726d62594f443a3024190d0200000000000000000000000000121f2c3945525f6c7885929faba295887c6f6255493c3844505b666f7c87929fa8a69f92857b6e615a50433a3b4854616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000010b151f28333f4a545e69717e8a939ea79f92867b707d89939ea69f92867c6f675c51453d32281e1308000000000000000000000000000000000c1926323f4c5965727f8c98a5aea194877b6e6154483b2e21150800000000000000000000121f2c3945525f6c7885929fabb8aba29a979696969696969696969696969696969797989a9c9ea097928f8d89847f7a726c655d554c443a30261c0f06000000000714202d3a4753606d7a8693a0adac9f93867a6d6053473a2d20140a060709070705010000000000000000000000000000000000000000000000000000000000000815212e3b4854616e7b8795a09f9f9f9f9f9285796d6053463a2d201315212e3b4854616e7b8796a09f9f9f9f9f92867a6d6053473a2d20140a00000000000000000000000000000000000c18232e39424f59606c77808d929fa2a9a39f96918c8885838282838385888c91959ea1a8a199938b7f726b61564c4135291f140900000000000000000000000000121f2c3945525f6c7885929faba295887c6f6255493c424d57606c78839099a3ab9f948b7f72695e52473e313b4854616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000007121d27313944505b666e7b85929fa5a0958c7f726b75818e97a1a3989083796d60594f443a3025190f060000000000000000000000000000000c1926323f4c5965727f8c98a5aea194877b6e6154483b2e21150800000000000000000000121f2c3945525f6c7885929fabb8b4aba6a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a4a5a7a9a095908583807c78736d67605b534b433a32291e150a00000000000714202d3a4753606d7a8693a0adafa49a897c6f6356493d32271b131314161413110d080200000000000000000000000000000000000000000000000000000003101c28343f4a5465717e8b98a7acabacaea298897c6f6356493c2f24181824313e4b5764717e8a97a8adababada3998a7d7064574a3d31261b0f0300000000000000000000000000000004101c2834404b54606b737f8c929da4a9a299928c847f7b787675757677797b7f848b9297a0a7a49f93887d70685d52453b30251a0e02000000000000000000000000121f2c3945525f6c7885929faba295887c6f6255493c46525e69727f8b959faba3999083776c60564d42352e3b4854616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000050e18242f39434e58606c78829097a2a3999083786d616d7a85929ea6a0958d80746b60564c41352921180c0300000000000000000000000000000c1926323f4c5965727f8c98a5aea194877b6e6154483b2e21150807040000000000000000121f2c3945525f6c7885929fabb8b0a8a3a09f9f9f9f9f9f9f9f9f9f9f9f9fa0a1a1a3a6a8aa9d90847e7b756f6a66605d555049413a312920170c0300000000000714202d3a4753606d7a8693a0adb6ac998d807366594f44382c201f20212321201d19130c04000000000000000000000000000000000000000000000000000006121f2c3844505c6675828f9ba8a19ea1a8aa998c7f7366554b4035291d1e2a36424d576774818e9aa9a29f9ea2a99a8e817467584e43372b1f120600000000000000000000000000000006131f2c3845515c66707d87939fa4aba29792877f79726e696a696869666c6e72787e859095a0a8a49a91847a6d60574d42362a1e1105000000000000000000000000121f2c3945525f6c7885929faba295887c6f62554943505a616e7b85929fa7a89f92877c6f655b50443b302e3b4854616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000000000020c17202935404b555f6a727f8c949fa89f92877c6f665e68717e8a949ea79f93887d70685e52463f332a1e150a00000000000000000000000000060c1926323f4c5965727f8c98a5aea194877b6e6154483b2e21161613100b05000000000000121f2c3945525f6c7885929fabb8a89e97949393939393939393939393939393949597999c9fa095908b87827c746d675e574d453b30281f170e050000000000000714202d3a4753606d7a8693a0adb7aa9d9083776b6054483e342d2c2d2d302e2d29251e160e04000000000000000000000000000000000000000000000000000713202d3a4653606d7985929fa1969196a0a89c908376675d5145392c1f202d3a46525e697784919ea297929297a29e9184786a5f53473a2e211508000000000000000000000000000004101c2834404b54606d79849199a4aea39992857d726d67625f575c5c545b6062666c717b839095a0aaa1968e8174695e52463a2d201407000000000000000000000000121f2c3945525f6c7885929faba295887c6f6255494b55616c75828f98a2aca0968c80736a5f53493f32292e3b4854616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000008131e29323a45515d676f7c87929fa6a0968d80736a5f56616c75828f98a2a49a91857a6d615a50453c30261c110600000000000000000000000810171d26323f4c5965727f8c98a5aea194877b6e6154483b2e262322201c160f070000000000121f2c3945525f6c7885929fabb8a3978c87868686868686868686868686868687888a8c8f92999e9d99938e8881796e695e574d42382e23170c020000000000000714202d3a4753606d7a8693a0adb4aba095897c6f635a50463e3a38393a3c3a3935302820160c020000000000000000000000000000000000000000000000000a1623303d495663707c8998a29e91849196a09f92867a6d6053473a2d20212e3b4754616e7b8796a09f928585929ea196887b6f6255483c2f24190d010000000000000000000000000006131f2c3845515c66727f8c96a0aba89f92877d6f6b605c55534d4f4f4a5053545b60696e7a839198a3a39f92867b6e6154473b2e211408000000000000000000000000121f2c3945525f6c7885929faba295887c6f625549515d67707d8a939eaaa59d9184796d60584e41382d212e3b4854616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000060f1925303a444f59606d79839199a3a49a9184796d6058505a616e7b86929fa7a1978f81756c62574d42382e23170d0400000000000000000008121a22282d323f4c5965727f8c98a5aea194877b6e6154483b3333302f2c272119110700000000121f2c3945525f6c7885929fabada094877a797979797979797979797979797a7a7b7d7f82868b92979e9f9b928d847b6e695e544a3f34281e13080000000000000714202d3a4753606d7a8693a0adaea399928f82766c6158504846454647494746413a32281e1308000000000000000000000000000000000000000000000005111e2a36414c566673808d99aa9a8d8084919ea399897d7063564a3d2f2424313e4b5764717e8a97a89c8f82828f9ca8998c7f7266564c4135291d1104000000000000000000000000000713202d3a4653606d7984919ea8aca1968c80736b6059514b474242423f44464a50575e686e7b86929a99928f8b8073665a4d4033271a0d000000000000000000000000121f2c3945525f6c7885929faba295887c6f62554e58606d7984919ea5a99d93897d70675c51463c2f26212e3b4854616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000030c18212a36414c56616b74808d95a0a89f93887d6f675c5146535e69727f8b959fa99e938b7e71695f544a3f34281f160c010000000000000006101a242c34393d3f4c5965727f8c98a5aea194877b6e6154484040403d3b38332b23190f05000000121f2c3945525f6c7885929fabada094877a6d6c6c6c6c6c6c6c6c6c6c656c6d6e6e7073757a7f858f949ea49d9691847b6e665c50443a3024190d0100000000000714202d3a4753606d7a8693a0adac9f9286928a7e716a615a55535153545654524c443a3025190d01000000000000000000000000000000000000000000000714202d3946525e687783909da9978b7e818e9bab998d807366564c4135292a36424d566774818e9aaa998c7f7f8c99ab9c908376685d5245392c20130600000000000000000000000004111d2935414c5564717e8a96a1adaa9e9184796d60594f45403937312d3338393f444d565f6973808c8e8a86827f7b6e6155483b2e221508000000000000000000000000121f2c3945525f6c7885929faba295887c6f625554606a74808d96a1ada1978e81746b60554b40342a1d212e3b4854616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000000b151e2a333c46525e68707d8a929da8a1968d80746b60554b424d57606c78839099a3a59f92867b6e665c50443d31281e1308000000000000000c17222c363e45494b4d5965727f8c98a5aea194877b6e61544d4d4d4d4948443d352b21160b000000121f2c3945525f6c7885929fabada094877a6d616060606060606060605b606061626466686d727a828f949ea8a0969083786d60564c4135291d110400000000000714212d3a4754606d7a8793a0ada79a8e818e92867c716c6461605c606063615e564c4135291d1105000000000000000000000000000000000000000000000814212e3b4754616e7a87939fa297887b7e8b98a89d908377685d5245392c2d3a46525e697784919ea298897c7d8999a39f92867a6d6054473a2d22170b0000000000000000000000000613202c3945515d6775828f9ca8aea2988b7e71675d51473d342e2b2622282b2d333b444d57616d7a84817d7a76726e695f53463a2d211407000000000000000000000000121f2c3945525f6c7885929faba295887c6f62555c666f7c87939fa8a69e92857a6d60594f43392e2218212e3b4854616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c302316090000000000000000000000000000000000000000000000000007121c27303c45515b616d7a85919ea4a59e9184796d60594f433b44505b666f7c86929fa7a2989083786d60594f433a2f24190f05000000000005111d28343e48505557595965727f8c98a5aea194877b6e61595959595956544f473d33271c10040000121f2c3945525f6c7885929fabada094877a6d61545353535353535349505353545557565d61686d78828f97a2a89f958c7f73685d5245392c20130700000000000714212e3a4754616d7a8794a0ada296897c879292867e76716e6d666c6d6f6d685e5246392d201307000000000000000000000000000000000000000000030f1c28333f4a5464717e8b9aa49f9285787b8796a09f93867a6d6054473a2d2e3b4754616e7b8796a09f9285797a86929fa3998a7d716453493f33271b0f0300000000000000000000000714212d3a4754606d7a86929facac9f92857a6d60554b403528231d1a171c1f2228323c46525e686d7774706d6765615f574d42372b1e1205000000000000000000000000121f2c3945525f6c7885929faba295887c6f6257606d78839099a4aa9e948a7e71685d52473d30271d15212e3b4854616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c30231609000000000000000000000000000000000000000000000000040d18232e39424d57626d75828f97a1a99e938a7d70675d51473d333f4a545f6a73808c95a0aa9f958c80736b60554c41352921170b02000000000815212d3945505a6164666666727f8c98a5aea194877b6e6666666666666360594f44382c2013070000121f2c3945525f6c7885929fabada094877a6d6154474646464646463f44464747484a4c52565e666d7a85929faba79f92867a6d6054473a2f24180d01000000000714212e3a4754616d7a8794a0ada194877b828f98928a837e7b7979797a7c7a6d6154473a2e21140700000000000000000000000000000000000000000006121f2b3844505b6675818e9bac9c8f82767784919ea4998a7d7064574a3d30313e4b5764717e8a97a89c8f82767783909dab9b8e8174655b5044372b1f120500000000000000000000000a1724303d4a5763707d8a99a3aea89b8e8175675d5143392f23181d1d1d1d1d17202a36414c565e616b6764605d5555534d453c31261a0e02000000000000000000000000121f2c3945525f6c7885929faba295887b6f625f69727f8c95a0aba2988f82756c61564c41352b1e1515212e3b4854616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c302316090000000000000000000000000000000000000000000000010c161f2834404a545f69727e8b949ea9a1978e81756b61554b41352d38424e58606d79839199a4a79f92877d6f675d51453e33291d140a000000000a1723303d4955616c71737373737f8c98a5aea194877b73737373737373706b6054483b2f2216090000121f2c3945525f6c7885929fabada094877a6d6154473a393939392d3337393a3b3b3d41464c545e68727f8c99a8aea2988c7f7266554b4035291d1104000000000814212e3b4754616e7a8794a1ada094877a7d8a959f94908b8886858687897c6f6256493c2f2316090000000000000000000000000000000000000000000613202d394653606c7985929eab998c807374818e9aab9a8d807467564c413636424d566774818e9aaa998c7f7274808d9aab9e9185786c605346392d20130800000000000000000000010d1a2734404d5a6773808d9aabb4aa978a7e7164554b4031272a2a2a2a2a2a2a2a2a25303a444c52545e5b5753514b4846423c332a1f140900000000000000000000000000121f2c3945525f6c7885929faba194887b6e61616e7b86929fa7a79f92867b6e615a50443a3023190c15212e3b4854616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c30231609000000000000000000000000000000000000000000000008131e28313a44515c666e7b86929fa6a69e92857a6d61594f433a2f262f3c45515c666f7c87939fa8a39991847a6d605a50453b2f261c11060000000b1824313e4b5764717e80808080828f9ca9b3a69a8d80808080808080807d706356493d3023160a0000121f2c3945525f6c7885929fabada094877a6d6154473a2e2d2d2d22272b2d2d2e2f30353a424c56616e7b8896a1adaa9d908376675d5145392c201306000000000815222e3b4855616e7b8894a1afa49a867a7883909d9f9c979a9392939a897c6f6256493c2f2316090000000000000000000000000000000000000000000916232f3c4956626f7c8997a2a399897d70717d8a99a49d918477685e5246393a46525e697784919ea298897c6f707d8a99a3a197887c6f6255493c3025190d0100000000000000000004101d2935404b556976828f9ca9aea298887b6e6255483b2f373737373737373737373737323a414647514e4a4745403b3a373128231c140c02000000000000000000000000121f2c3945525f6c7885929faba194877b6e616c76828f98a2aba0958c7f72695e53483e32281e110815212e3b4854616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000000000000000000000003101d293643505c6976838f9ca9afa296897c6f6356493c3023160900000000000000000000000000000000000000000000010d19242f3a434f59606d78839098a2a99e948a7e71685e52473e31281d2834404b54606b74808d96a1aba0968e81746c61574d42382d22170b0000000f1c2936424f5c6975828c8c8c8c8f949fabb5a99d928d8c8c8c8c8c8c8c807366594d4033261a0d0000121f2c3945525f6c7885929fabada094877a6d6154473a2e212020171b1f202021222429303a47535f697884919eabac9f92867a6d6053473a2d201407000000000815222f3b4855626e7b8895a1ac9f938679707d89939ea6aca49f9f9f95897c6f6256493c2f231609000000000000000000000000000000000000000005111d2a36414c566673808c99a99f92867a6d6d7a86939fa095877a6e6154473b3b4754616e7b8796a09f9285796d6d7a86929fa9998c7f7366564c41362a1d110500000000000000000006131f2c3845515d677885919eabac9f9285796c6053464444444444444444444444444444444444444444444444444444443a38342e261e140a000000000000000000000000121f2c3945525f6c7885929faba094877a6d68717e8a949faaa3999083786d60574d42362c20160c0815212e3b4854616e7b8794a1ada194877a6e6154473b2e21140800000000000000000000000101010101010101010103101d293643505c6976838f9ca9afa296897c6f6356493c302316090101010101010101010100000000000000000000000004111d2935414c55606b73808d959f9fa2978f82756c61564c41352c1f18232e39424f59606d7984919ea5a89e938a7e71695e544a3f33281c0f0300000f1c2936424f5c6975828f9999999c9fa6b0b9aea49d9a9999999999998c807366594d4033261a0d0000121f2c3945525f6c7885929fabada094877a6d6154473a2e2114130b0f1213141415191e2b37424d576a7683909da9afa399897c6f6256493c2f231609000000000916222f3c4955626f7c88959f9f9f9285796b75818e949fa3ababaca295897c6f6256493c2f23160900000000000000000000000000000000000000000713202d3946525e687683909da99c90837667687783909da7978a7e7164574b3e3e4b5764717e8a97a89c8f827666677683909da99d908376685e5246392d2013060000000000000000000714202d3a4753606d7a8696a1adaa9d908377665b505050505050505050505050505050505050505050505050505050505046443f3830261c11060000000000000000000000121f2c3945525f6c7885929faba093877a6d6d7a85929ea6a89f92877c6f665c50453b31241a0e040815212e3b4854616e7b8794a1ada194877a6e6154473b2e21140800000000000000000406070d0d0d0d0d0d0d0d0d0d0d101d293643505c6976838f9ca9afa296897c6f6356493c3023160d0d0d0d0d0d0d0d0d0d0d0a0a080400000000000000000613202c3945515d676f7d87939393939392857b6e615a50443a30231a121d27303d45515d67707d8a939393939392857b6e665b5044382b1f120600000f1c2936424f5c6975828f9c9f9fa0acafb5bdb1a9a3a19f9f9f9f9f998c807366594d4033261a0d0000121f2c3945525f6c7885929fabada094877a6d6154473a2e21140c0c0c0c0c0c080d111a2631424f5c6975828f9ca8b5ab968a7d7063574a3d3024170a00000000091623303c4956636f7c89939393939285786b6d79828d92999c9e9f9f95897c6f6256493c2f23160900000000000000000000000000000000000000000714212e3a4754616d7a86939fab998c8073666673808d99aa9a8e817467574d42414d566774818e9aaa998c7f72666673808c99aa9f93867a6d6154473a2d22170b0000000000000000000815222e3b4855616e7b8894a9b2a99c8f837669545d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d53504a42382e23170b0000000000000000000000121f2c3945525f6c7885929fabaa93867a6d74818e97a1aca1968d80736a5f544a3f33291f1208000815212e3b4854616e7b8794a1ada194877a6e6154473b2e211408000000000001070c1013141a1a1a1a1a1a1a1a1a1a1a1a1d293643505c6976838f9ca9afa296897c6f6356493c30231a1a1a1a1a1a1a1a1a1a1a1a171614100b050000000000000714212d3a4754606d7a84868686868686867f71695e52483e32281e110b151e2935414b55616b75818686868686868682796c605346392d20130600000f1c2936424f5c6975828f939393939fa4abb5a99f97949393939393938c807366594d4033261a0d0000121f2c3945525f6c7885929fabada094877a6d6154473a2e21191919191919191a191d202935414c566976838f9ca9b1a4978b7e7164584b3e3125180b000000000a1723303d4a5663707d86868686868684786b676d7980868c8f91929291897c6f6256493c2f23160900000000000000000000000000000000000000030f1b27333f495364717e8a99a4a399897d706363707d8998a39e918477695e534646525e687784919ea298897c6f6263707c8998a3a4998a7e7164544a3f33281c0f0300000000000000000916232f3c4956626f7c8995a2afa89b8f82756a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a605c544a3f34281c100300000000000000000000121f2c3945525f6c7885929faba3988679707d89939da9a59e9184796d60584e42382e21170d00000815212e3b4854616e7b8794a1ada194877a6e6154473b2e21140800000000030b12181c1f2027272727272727272727272727293643505c6976838f9ca9afa296897c6f6356493c30272727272727272727272727272423201c17100800000000000613202c3945515d676d7879797979797979716d62574d42362c20160c030c18242f3a434f59656f7579797979797979766c665b5044382b1f120600000f1c2936424f5c69758286868686879399a4afa3978d8786868686868686807366594d4033261a0d0000121f2c3945525f6c7885929fabada094877a6d6154473a2e252525252525252626252a2d313946525e687784919daab1a4978a7e7164574b3e3124180b000000000916222f3c4854606b707979797979797872685d676d747b7f8284858685827b6e6155483b2e2215080000000000000000000000000000000000000005121f2b3744505b6575818e9bab9f92867a6d60606d7986929fa096877b6e6154484754616e7a8796a09f9285796d60606d7986929fab9b8e8175665b5044382b1f120600000000000000000a1723303d4a5663707d8996a3b0a79b8e8177777777777777777777777777777777777777777777777777777777777777776d665c5044382b1f120600000000000000000000121f2c3945525f6c7885929fab9f9285797984919da5a99e938a7d70675d51463c30261c0f0500000815212e3b4854616e7b8794a1ada194877a6e6154473b2e211408000000030d151d23292c2d34343434343434343434343434343643505c6976838f9ca9afa296897c6f6356493c343434343434343434343434343431302d28211a11080000000004111d2935414c555d606b6c6c6c6c6c6c6c65625a50453b30241a0e040007131d28313e47535d65686c6c6c6c6c6c6c69605b544a3f33281c0f0300000f1b2835414d5a657075797979797987939faca194877b79797979797979736e63574b3f3226190c0000121f2c3945525f6c7885929fabada094877a6d6154473a323232323232323233333036393c434c56616d7a86929facb3a9968a7d7063574a3d3024170a000000000713202c38444f5960636c6c6c6c6c6c6b6860555c60696e737678797978766e695f53463a2d211407000000000000000000000000000000000000000613202d394653606c7885929ea99c908376675d5c6776828f9ca8988b7e7165584b4b5764717e8a97a89c8f8275665c5c6776828f9ca99e9285796c605346392d20130800000000000000000a1724313d4a5764707d8a97a3b0ab9e92858383838383838383838383838383838383838383838383838383838383838383786d6053463a2d20130700000000000000000000121f2c3945525f6c7885929fab9e928578808c96a0aca2978e81756b61554b40342a1e140a0000000815212e3b4854616e7b8794a1ada194877a6e6154473b2e2114080000010b151f272f34383a40404040404040404040404040404043505c6976838f9ca9afa296897c6f6356494040404040404040404040404040403d3c39332c231a1005000000010d19242f3a434c51545e60606060606060585650483f33291f12080000010c161f2c35414b53595b606060606060605c53504a42382d22170b0000000d1925313d49545e65696c6c6c677784909daaa194877b6e6c6c6c6c6c6c66635c52473b2f23170a0000121f2c3945525f6c7885929fabada094877a6d6154473f3f3f3f3f3f3f3f3f3f40414146474e555d68717e8b99a3afada297887b6e6155483b2e2215080000000004101c27333d474f54566060606060605e5c564b51575e6166696b6c6c6b69615f574d42362a1e1205000000000000000000000000000000000000000916222f3c4955626f7c8897a1ab998c807366555566727f8c99a99b8e817568574e4d566774818e9aa9988c7f7265545566727f8c99a9a197897c6f6256493c3025190e02000000000000000b1724313e4a5764717d8a97a4b0ada197929090909090909090909090909090909090909090909090909090909090909086796c605346392d20130600000000000000000000121f2c3945525f6c7885929faa9e91847b86929fa8a69f92857a6d61594f43392f22190c020000000815212e3b4854616e7b8794a1ada194877a6e6154473b2e211408000007121d2731394045474d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d505c6976838f9ca9afa296897c6f63564d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4a49443e352c21170b0000000008131e28313a41454751535353535353534b4a453f362d20170d00000000040d1a232f3941484d4e535353535353535046443f382f261c11060000000915212c37424c545a5c6060556774818e9aa7a194877b6e6160606060605957524a40352a1f13070000121f2c3945525f6c7885929fabada094877a6d61544c4c4c4c4c4c4c4c4c4c4c4d4d4c52545860676d7a84919eabb5ab9f9285796c605346392d20130600000000000b16212b353d44484a53535353535351504b40454d5254595c5e5f5f5e5c55534d453b31261a0e0200000000000000000000000000000000000004111d2935414c5666737f8c99a9a399897c70635655626f7c8897a29e9184786a5f53525e687784919da197887c6f625556626f7c8997a2a9998c807366564d41362a1e1105000000000000000b1724313e4a5764717d8a97a4b0b3a9a19e9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d928679655b5044372b1f120500000000000000000000121f2c3945525f6c7885929faa9d9083839099a3aa9f948b7e71685e52473e31281d1007000000000815212e3b4854616e7b8794a1ada194877a6e6154473b2e21140800000c18232f39434b51535a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5c6976838f9ca9afa296897c6f635a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a57554f473e33281c1004000000010c161f282f35393a45464646464646463e3d3a342d241b0e05000000000008111d272f373d404246464646464646433938332d261d140a0000000004101b26303942494d4f53535864717e8b97a9a194877b6e6154535353534d4b4740382e24190e020000121f2c3945525f6c7885929fabada094877a6d61585858585858585858585859595a565e61646a6f79828f96a1adb1a79b8e8275665b5044382b1f12060000000000050f19232b33383c3d46464646464645433f343b4246484c4f515253524f4846423b33291f1409000000000000000000000000000000000000000713202c3945525d687683909ca99f9286796d605353606c7985929ea196887b6e625554616e7a8796a09e9285786c605353606d7985929faa9d908377685e5246392d201407000000000000000a1724303d4a5763707d8a96a3b0b8b0aba99f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9faaaaaaaaaa9f9285786c5f493f33271b0f0300000000000000000000121f2c3945525f6c7885929fab9f928790949faba3988f82766c62564c41352c1f160c00000000000815212e3b4854616e7b8794a1ada194877a6e6154473b2e2114080004101c2934404b555c606767676767676767676767676767676767676976838f9ca9afa296897c6f6767676767676767676767676767676767676461594f44392d20140800000000040d161e24292c2d383939393939393932312e29221b1209000000000000000b151d252c31343539393939393939362d2b28221c140b02000000000009141e2730373d4142464855626e7b8897a1a194877b6e615448464646403f3b352e261c1207000000121f2c3945525f6c7885929fabada094877a6d65656565656565656565656566666769686d71757c838f949ea8b2aa9f95897d7063544a3f33281c0f0300000000000008111921272c2f303939393939393837332930363a3b404345464645433b3a36312921170d03000000000000000000000000000000000000000714212d3a4754606d7a86929fa99c908376675d51505b6675828e9ba9988b7e7265535764717e8a97a89b8e8275655b50505c6675828f9ba89f93877a6e6154473b2e23180c000000000000000a1623303d495663707c8996a3afb0a69f9c93939393939393939393939393939393939393939393939393a0a8b2ab9e9185786b5e52452d22170b0000000000000000000000121f2c3945525f6c7885929faba39992999fa6a79f92867b6e625a50443a30231a0d0400000000000815212e3b4854616e7b8794a1ada194877a6e6154473b2e2114080006131f2c3845515c676d7373737373737373737373737373737373737376838f9ca9afa296897c73737373737373737373737373737373737373706c6155493c3023160a0000000000040c13191d20212b2d2d2d2d2d2d2d2524211d1811090000000000000000030b131a202527282d2d2d2d2d2d2d29201f1c17110a02000000000000020c151e262c3135363a47535f697885929ea194877b6e6154483b393933322f2a241c130a00000000121f2c3945525f6c7885929fabada094877a7272727272727272727272727272737475777a7e828890959ea6b0aca3989083766b605442382d22170b0000000000000000080f161c2022232d2d2d2d2d2d2b2a271f252a2d2e333638393938362e2d2a261f170f0600000000000000000000000000000000000000000b1724313e4a5764717d8a99a3aa998c807366554b4a5465727e8b98a89b8e8275655b566774818e9aa9988b7e726553494a5465727f8b98a9a49a8b7e7165544a4034281c10040000000000000915222f3c4855626f7b8895aab3ab9f948f8686868686868686868686868686868686868686868686868996a0acaa9d9083776a5d5044372a1d060000000000000000000000121f2c3945525f6c7885929fababa39fa3abaca0958c7f73695f53483f32291e11080000000000000815212e3b4854616e7b8794a1ada194877a6e6154473b2e211408000714202d3a4753606d7a808080808080808080808080808080808080808084919eabb4a89b8e81808080808080808080808080808080808080807e7064574a3d3124170a00000000000001080d1113141e20202020202020181715110c060000000000000000000002090f14181b1b202020202020201d13120f0b06000000000000000000030c141b2125282b37424d576975828f9ca194877b6e6154483b2e2d2626231f19120a0100000000121f2c3945525f6c7885929fabb2a5998c7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f80808284868a8f949da0a7b0aaa39a92867c6f62594f442f261c1106000000000000000000050b101316172020202020201e1d1b141a1e202126292b2c2c2b2922211e1a140d06000000000000000000000000000000000000000006121f2b37434e586774818e9aaba398897c706356494855616e7b8896a19e9285796c605e687784919da196887b6e6255484855626f7b8897a1ac9b8e8275665c5144382c1f12060000000000000714212e3a4754616d7a8798a2aea99c8f8279797979797979797979797979797979797979797979797984919eaaa99c8f8276695c4f4336291c100300000000000000000000121f2c3945525f6c7885929fabb5afacafafa49a9083786d60574d42362d20170d000000000000000815212e3b4854616e7b8794a1ada194877a6e6154473b2e211408000714212d3a4754606d7a878d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d9196a1adb6aa9e938e8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8074675a4d4134271a0e00000000000000000104060712131313131313130b0b0905010000000000000000000000000004080c0e0f131313131313131006060300000000000000000000000002091015191a2631404c5966737f8c999f94877b6e6154483b2e211a1917130e07000000000000121f2c3945525f6c7885929fabb8a79c918c8b8b8b8b8b8b8b8b8b8b8b8b8b8c8c8d8f9193999c9ea6abaca7a09892887e716a5f53473d331d140a0000000000000000000000000407090a13131313131312110f090e121415191c1e1f201f1c1514120e09030000000000000000000000000000000000000000000815212e3a47535f6a7884919eab9f9286796d60534746535f697884919ea197887c6f62616e7a8796a09e918478695f534747535f6a7885919eab9f9285796d6053463a2d2013090000000000000713202d3946525d687885929fabaa9d9084776c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6d7986929faca79a8d8174675a4e4134271b0e0100000000000000000000121f2c3945525f6c7885929fabb8bbb9b2a99f93887c6f665c51453c31241b0e05000000000000000815212e3b4854616e7b8794a1ada194877a6e6154473b2e211408000714212d3a4754606d7a87939a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9ea1a8b2baafa59e9b9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a8d8074675a4d4134271a0e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000409091623303d495663707c89999393877b6e6154483b2e2115080a070200000000000000121f2c3945525f6c7885929fabb8ada39c999898989898989898989898989899999a9c9e9fa4abaaaba8a09e9590867e716c61584e43352b210b020000000000000000000000000000000006060606060605040200020507080d1012131312100807050200000000000000000000000000000000000000000000000915222f3c4855626f7c8896a1a99c8f8376675c5145424d576774818e9aa9988b7f726564717e8a97a89b8e817568574d42434e586875818e9ba8a298897c706356493d31251a0e02000000000005111d2935414c566a7683909da9ab9f928578695e606060606060606060606060606060606060626e7b8899a3afab988b7f7265584c3f3225190c0000000000000000000000121f2c3945525f6c7885929fabacacacada1968d81746b60544a40332a1f120900000000000000000815212e3b4854616e7b8794a1aca194877a6e6154473b2e211408000714212d3a4754606d7a8793a0a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6abadb2acacacafaaa8a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a69a8d8074675a4d4134271a0e000000000000000000000000000000010507070a0d101112131312110f0d0a0706030000000000000606060606060600000000000000000000000000000000000000000000000714202d3a4753606d7987868686867b6e6154483b2e21150800000000000000000000121f2c3945525f6c7885929fabacacada7a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a6a7a8a9a8a6a8a19e9a96918b837c716c615a50463c32231a0f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935414b5566727f8c99a9aa998c7f7366554b403e4b5764717e8a9aa49b8f8275666774818d9aa8988b7e7165584b3e3e4b5865717e8b98a8aa9a8d807367574d42362a1e12050000000000010d192430414e5a6774818d9aabada297877b6e6154535353535353535353535353535353535764717d8a97abaea399897c706356493d3023160a0000000000000000000000121f2c3945525f6c7885929f9f9f9f9fa59e91847a6d60594f42392e21180e0000000000000000000815212e3b4854616e7b87949f9f9f94877a6e6154473b2e211408000714212d3a4754606d7a87939f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9a8d8074675a4d4134271a0e0000000000000000000000000002080d111314171a1d1e1f20201f1e1c1a161312100c06000507071313131313131307070401000000000000000000000000000000000000000613202c3945515d6775797979797976695e52463a2d20140700000000000000000000121f2c3945525f6c7885929f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa39f9f9e9d9c9b999796918e89847e786f6a615a50483e342a201108000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3945515d6776838f9ca9a398897c6f6356493c3a4754616d7a87939f9f9285796c687784919da096877b6e6154483b3b4854616e7b8796a0aa9d908477695e53463a2d211407000000000000081724313e4a5764717e8a99a4afa9978b7e7164564d41464646464646464646464646434f596774818e9aa7ac9f92867a6d6053473a2d2014070000000000000000000000121f2c3945525f6c788592939393939393938a7e71685d52463d30271c0f060000000000000000000815212e3b4854616e7b879393939393877a6e6154473b2e211408000714212d3a4754606d7a87939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393938d8074675a4d4134271a0e000000000000000000000003090e13191d20212427292b2b2c2c2c2b292723201f1c17110d111314202020202020201413110d0802000000000000000000000000000000000004111d2935404b555d6a6c6c6c6c6c6c5e574d42362a1e120500000000000000000000121f2c3945525f6c788592939393939393939393939393939393939393939992929291908e8c8a8884817d78716d66605850483e362d22180e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a86929fac9f9286796d6053463a3946525e687783909da297887c6f6e7a8796a09e918477695e53463a3a46535e697784919eaaa095877b6e6154483b2e23180c0000000000000714212e3a4754616d7a86939faca89b8e8175685e52463c313939393939393939313a4854606b7884919eaba99d908376675d5145392c1f13060000000000000000000000121f2c3945525f6c7885868686868686868681756c61564c41342b1e150b000000000000000000000815212e3b4854616e7b868686868686867a6e6154473b2e211408000714212d3a4754606d7a8686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868074675a4d4134271a0e00000000000000000000060b151a1e25292d2e3134363738393938383633302d2c28231c191d20212d2d2d2d2d2d2d21201d19130c0400000000000000000000000000000000010d18242f3a434b515e5f606060605f524d453b30251a0e0200000000000000000000121f2c3945525f6c7885868686868686868686868686868686868686868686868585848381807d7b7874706c66605c544e463e362d241b100600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1724313d4a5764707d8a99a3a99c8f8376675c51453836414c566773808d9aa9988c7f72717e8a97a89a8e817467574d423636424d576774818e9aaca7988b7e7265554b4034281c100400000000000713202d3946525e6876838f9ca9ac9f92867b6e61584e433a322c292424292c323a434e58636f7c8996a1aca6998c7f7266554b4035291d10040000000000000000000000121e2b3844515d6973787979797979797979756f655a50433a2f22190c03000000000000000000000714212d3a46535e69767979797979797976685e5246392d201407000713202c3945525d6876797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979746e64584c3f33261a0d0000000000000000020a111720262b3035393a3d404344454646454442403d3a38342e2a25292d3939393939393939392c29241e160e040000000000000000000000000000000007131d28313a40454753535353534846423b33291f14090000000000000000000000121e2b3844515d69737879797979797979797979797979797979797979797979797877767573716e696763605b54504a423d342d241b1209000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b37434e586774818d9aabaa998c7f7366554b4034303d4a5663707d8998a39b8f827574808d9aa8978a7e7164574b3e31313e4a5764717e8a9aa4a89c8f8275675c5145382c1f1306000000000005111d2a36414c5665717e8b97a1ada3998d80736a5f554c443d39352f2f35393d444c56606a75828f9ca8ab9f94887b6e6155483b2f24180c000000000000000000000000101c2835414c5761696c6c6c6c6c6c6c6c6c68655d54483e31281e1007000000000000000000000005121e2a36424d575e6c6c6c6c6c6c6c6c6c5e564c41362a1e11050004111d2935414c565d6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c67645c52473c3023170b00000000000000030b141b222731373a4146474a4d505152535352514f4d4946443f38363035394646464646464646463935302820160c02000000000000000000000000000000010c161f282f35393a46464646463b3a36302921170d020000000000000000000000101c2835414c5761696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b6a69686664615f575653504a443f38302b221b12090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000814212e3a47535f6a7884919eaba298897c6f6356493c2e2d3a4753606d7986929f9e9285797683909da095877a6e6154473b2e2e3a4754616d7a87939fac9f9285796d6053463a2d2013090000000000010d1925303a4753606d7985919ea8ab9f92867c6f675e564f47454041414045474e565d686f7c87939faca69c8f8276695f53463a2d1d12070000000000000000000000000c1824303b464f575d5f60606060606060605c59544b42362c1f160c000000000000000000000000020e1a25313b454d535f606060606060605f524c443b3025190e0200010d19242f3a444c525f6060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060605a58524a40362b1f1307000000000000030d151d262d333c42474c5254575a5c5e5e5f5f5f5e5c5a5653504a46413a414653535353535353535345413a32281e130800000000000000000000000000000000040d161d24292c2d39393939392e2d2a251f170f050000000000000000000000000c1824303b464f575d5f6060606060606060606060606060606060606060605f5f5f5e5d5b595755534d4946443f38342e261e191009000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8896a1ac9f9286796d6053463a2d2c3845515d6776838f9ca197887b7986929f9d918477685e5246392d2d3946525e687784909daaa298897d7063564a3d31261a0e02000000000008131f2c3845515c67727f8c96a0aba3989183796d68605953514b4e4e4b51535860686d7a84919aa4aa9f94897d7063574d42362a1e0b0100000000000000000000000008131f29343d464c515253535353535353534f4d49423930241a0d040000000000000000000000000009141f29333b424648535353535353535346413b32291e140800000008131e28323a4145535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353534d4c4740382f24190e030000000000010b151f272f383f444e53565e616467696a6b6c6c6b6b696663605c54524c444c525f606060606060605f524c443a3024190d0100000000000000000000000000000000040c13181d20202c2d2d2d2d21201e1a140d050000000000000000000000000008131f29343d464c515253535353535353535353535353535353535353535353525251504e4d4a4846423d3938332d28231c150c070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101d2935404b5565727f8c98a8a99c8f8276665c5145382c2935404b5566737f8c99a9978b7e7c8998a39a8d817467564d41362a2a36414c566774808d9aabaa9a8d807467574d42372b1e1205000000000004101c2934404b55606d79849199a3aaa09590837a706b64605d555b5b555d60636a6f7a828f96a0aca3988f82766b6055453b31261a0e00000000000000000000000000020d18222b343b414445464646464646464642413d3730271e12080000000000000000000000000000030d17212931363a3b464646464646463b3936302920170d02000000010c1620282f353946464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646413f3c362f261d120800000000000007121d273139414950575f62686d7073767778797978777573706d66615e5650565d6c6c6c6c6c6c6c6c6c5d564c4135291d1104000000000000000000000000000000000001070d11131420202020201514120e09020000000000000000000000000000020d18222b343b414445464646464646464646464646464646464646464646464645444342403e3b3a36312d2b28221c17110a03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2c3845515d6776828f9ca9aa998c7f7366544b403428242f3c4956626f7c8997a29a8d817f8b98a49a8a7d7164574a3e302525303d4a5763707d8a99a3aa9e918477695f53463a2d2114070000000000000c18232f3945515c67707d87929fa4a79f9590847d75706d6769676869676d70757c848f949fa8a49f92867c6f62594f44332a1f1409000000000000000000000000000006101922293035383939393939393939393534312c261e150c00000000000000000000000000000000050f171f252a2d2e393939393939392e2d2a251e170e050000000000040d161e24292c393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393433302b241d140b010000000000000c18232f39434b535b606a6e747a7d808384858686858482807c79736d68615a5d68767979797979797976685d5245392c2013070000000000000000000000000000000000000001040607131313131308070502000000000000000000000000000000000006101922293035383939393939393939393939393939393939393939393939393837363533312e2d2a26201f1c17110c06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a4753606d7986929faca298897c6f6356493c2e23202d3a4653606d7985929f9d9083818e9b9f93877a6d6154473a2e21212d3a4754606d7a86929faca096887b6e6155483b2f24180c00000000000007121d2834404b55606b727f8c929da4a79f969189827d7a7675747475777a7d828991969fa6a49d928b7f726a5f53473d3321180e030000000000000000000000000000000710181f24282b2c2d2d2d2d2d2d2d2d292825211b140c030000000000000000000000000000000000050d141a1e21212d2d2d2d2d2d2d21201e19140d0500000000000000040c13191d202d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2726231f19120b0200000000000004101c2934404b555c656c737b81868a8d8f9191929292918f8d8985807a716c64616d7a868686868686867a6d6054473a2d21140700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000710181f24282b2c2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2c2c2c2b2a28262422211e1a13120f0b060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1724303d4a5763707d8a98a3ac9f9285796d6053463a2d201f2b3844505c6675828f9b9f928784919e9d908377685e5246392d20202c3945515d677683909da9a8988b7f7265554b4035291d10040000000000010c18232e39434f59636d74808d929fa2a8a09e948f8a86838281818283868a8f949ea0a8a29f928d80746d62584e43352c210f060000000000000000000000000000000000060d13181c1e1f20202020202020201c1b19151009020000000000000000000000000000000000000003090e121415202020202020201414110e080200000000000000000001080d1113142020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020201a1a17130e0801000000000000040e18222c3845515c676d7780878e92999a9c9d9e9f9f9e9e9c9997928c857e736e616e7b88939393939386796c605346392d2013060000000000000003060809131313131313130b0a08050000000000000000000000000000000000000000000000000000000000060d13181c1e1f202020202020202020202020202020202020202020201f1f1e1d1b1a171514120e0906030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2a36424d576774808d9aaaa99c8f8276665c5144382c1f1c28343f4a5465727e8b98a399929196a19a8d807367564c4135291d1d2935414b556673808c99aaa99c8f8276675d5145392c1f130600000000000007121d27303d47515b606c77808a92979fa3a69e9c9992908f8e8e8f9092999c9ea6a49f98928b80776c605b51463c31231a0f0000000000000000000000000000000000000002080c10121213131313131313130f0e0c0904000000000000000000000000000000000000000000000002050708131313131313130807050200000000000000000000000000010407071313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313130e0d0b070300000000000000000a15202c38444f59606d79818c939a9fa3aba9a8aaa29f9e9e9e9fa29e97928a80746e6f7b88959f9f9f928579655b5044372b1f12050000000000040a0f13151620202020202020181715110c060000000000000000000000000000000000000000000000000000000002080c10121213131313131313131313131313131313131313131313131211100f0d0b08070502000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a46535f697784919eaaaa998c7f7266544a4034281c17232e3b4855626e7b8896a1a39f9ea1a3998a7d7063574a3d30251918242f3d495663707c8998a2ac9f92867a6d6053473a2d20140a000000000000000b151e2b353f44505b656c737e858e92999ea1a8a39f9d9c9a9b9c9d9fa3a9a19e9a938f867e746c655b50493f342a201108000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b26323c4854606b74818e939fa4acaba39f9b979892919192939a999d9f928d80746f7c8996a2ab9e9285786b5f493f33271b0f0300000000070f151b1f22222d2d2d2d2d2d2d2424211d171009000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b8896a0aca298897c6f6256493c2e231814212e3a47535f697884919eabacabac9f92867a6d6054473a2d211413202d3a4653606d7986929faca3988a7d7063574a3d31261a0f02000000000000030c192327333f49535b606c717a81878d9196989b9c9e9f9f9f9f9e9c9b9897928d87827b716c605b53493f372d22180e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2b37434e5863707d89939da5afa8a199928e8a878584848586888c90959e928b7f727d8996a3ab9e9185786b5e52452d22170b0000000007101920272b2e2f3939393939393931302d28221b120900000000000000000000000000000000000000000000010406070a0d0f11121313131211100e0c09080603000000000000000000000000000000000000000000000000000002070a0c0d13131313131313131313131313131313131313131313131313131313131313131313100f0d090500000000000000000000000000000000000000000000000000000004101c2834404b5565727f8b98a89f9f9285796d6053463a2d2013121e2b37424d576874818e9b9f9f9f9f9d908376675d5145392c2013131f2c3845515c6776828f9c9f9f9a8d817467584e43372b1f120600000000000000071117222d384149505a61686e747b8084888b8e90919292929291908e8c8985817b756e69625a504941382d251b1006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815212e3b47535f6a7683909da5afaaa1969187817d7a79787778797c7f838b919792877c7d8a97a3ab9e9184786b5e5145382b1e06000000040f19222b32373b3c464646464646463e3d39342c241b10060000000000000000000000000000000000000001070d101314171a1c1d1f1f20201f1e1d1b181515120f0a050200000000000000000000000000000000000000000000070e1317191a202020202020202020202020202020202020202020202020202020202020202020201c1c1915100a020000000000000000000000000000000000000000000000000006131f2c3845515c6775828f939393938f8276665c5044382c1f120e1a26313e4b5764717e8a9393939393938d807366554c4135291d11101c2834404b5566727f8c939393939184786a5f53473a2e211408000000000000000006111b262f383f4450565e61696e73787c7f818384858686858483817f7c79746e6a615e5750443f382f261b130900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c88959fabaea29891847c75706d686b6b666d6f73787e85919590837e8a97a4ab9e9184786b5e5145382b1e120500000a15202b343c434749535353535353534b49453e362c22170c0000000000000000000000000000000000050b1012181d20202326292a2c2c2d2c2c2b29282522211f1b15120e0903000000000000000000000000000000000000010a12191f2326262d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d292825211b140c040000000000000000000000000000000000000000000000000713202d3a4653606d79868686868686867f7266544a3f34281c100914212e3b4754616e7a86868686868686867d7063564a3d2f24190d0c18232e3c4956626f7c868686868686867b6e6255483b2f2215080000000000000000000a141d262d333e444c52575e61656c6f7274767878797978787675726f6d66625f58534d453f332d261d140a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003101c28343f4a546673808d99a7b1ab9f92867c6f6a64615e56545c6062666c717b8391959083909daaaa9e9184776b5e5144382b1e110500030f1b27323c464e545560606060606060575550483e34281d11050000000000000000000000000000040a0f161c1d24292c2d303335373839393939383634322f2e2b26211e1a140e0902000000000000000000000000000000000a131c242a2f3233393939393939393939393939393939393939393939393939393939393939393939393635322c261e160c02000000000000000000000000000000000000000000000006131f2c3845515c676d79797979797979726d635742382e23170c0714202d3946525e68767979797979797979706b6054483c2f1e13080715222e3b4754606a6f79797979797979766a5f53473a2e211408000000000000000000020b141b2227323b41464d53535b60626568696b6c6c6c6c6b69686562605c54534e46423b3327221b140b02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b3844505c667683909da9afa3998c80736a605854524c4a5153545b60696e7a8491959095a0abaa9e9184776b5e5144382b1e11050006131f2b37434e5860626c6c6c6c6c6c6c64615a5045392d21150800000000000000000000000000060c161b21272c2f35393a3d40424445464646454443413f3c3b37322d2a251f19140d05000000000000000000000000000007121c262e353b3f404646464646464646464646464646464646464646464646464646464646464646464643413d3830281e140a000000000000000000000000000000000000000000000004101c2834404b555c606c6c6c6c6c6c6c66635b514630261c110605111e2a36414c565e6c6c6c6c6c6c6c6c6c6360594f44382c200c0106131f2b37434e5860626c6c6c6c6c6c6c6c5f584e43372b1f120600000000000000000000020a1117202930363b424649505355585b5d5e5f5f5f5f5e5d5b595653504a47433c3631292117110a020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3a4653606d7986929facac9f92867a6d61584e4746414044464a50575e686f7c87929da0a7b1aa9e9184776b5e5144382b1e1105000815222e3b4754606a7679797979797979716c6155493d3024170a0000000000000000000000030a111721272c3338394045474a4d4f50525253535251504e4b4847433c3a36312a251f170e06000000000000000000000000020e19242e3840474b4d535353535353535353535353535353535353535353535353535353535353535353534f4e49423a30261b100500000000000000000000000000000000000000000000000c18232e39434b51535f606060606060595751493f351e150a00010d1925303b444c525f606060606060606056544f473d33271c1000030f1b27323d464e54566060606060606055534e463c31261a0f02000000000000000000000000060e171e252a3136383f4446494c4e50515253535251504e4c4946443f3837312a251f170f0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b8898a3aea99c908376685e52463c393634383a3f444d56606a73808d99a3afb7aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c868686868686867e7164574b3e3124180b00000000000000000000040c151c232832383d44484b515356595c5d5f5f605f5f5e5c5b5855534e4846423b3630292017110a020000000000000000000007131f2a35404a525759606060606060606060606060606060606060606060606060606060606060606060605c5a544c42382c211509000000000000000000000000000000000000000000000007121d273039404546525353535353534c4b463f372e230c03000008141e29323b41465353535353535353534a48443d352b21160b00000a15202b343d434749535353535353534847433c342a20150a0000000000000000000000000000050d14191f252a2d3337393c3f414345454646454543423f3c3a38342e2b26201a140d050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996aab4a79a8d807467564c41342d2a282c2d333b444e58616e7b86929facb7aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8893939393938a7e7164574b3e3124180b000000000000000000040d161e262e343d43484f54555d606366686a6b6c6c6c6c6b696765625f5854534d46423b3228221c140b020000000000000000000a17232f3b47525c63666c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c69665e54493d3225190d0000000000000000000000000000000000000000000000000b151e272e34383a464646464646463f3e3a352e251c11000000020d1720293036393b46464646464646463d3c38332b23190f050000040f19222b32373b3c464646464646463b3a37312a22180e0300000000000000000000000000000002080d141a1b22272b2d2f3235363839393939383635322f2d2b28231c1a150e0903000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1724313e4a5764717d8a97a4b0a5988b7e7265584b3f30251d1c1f2228323d46525e6975828f9ba8b5aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c88959f9f9f978a7e7164574b3e3124180b0000000000000000030d161f2830383f444e54596063676d707375777879797978777674726f6a67615e57524d443f332d261d140b0200000000000000000c1926323f4b57636e73797979797979797979797979797979797979797979797979797979797979797979797670665a4e4135281c0f000000000000000000000000000000000000000000000000030c151d23282c2d3939393939393933322e2a231c130a00000000050e171e252a2d2e3939393939393939302f2c27211911080000000007101920272b2e2f393939393939392f2e2b2620180f0600000000000000000000000000000000000003090e11171b1f202225282a2b2c2c2c2c2b2a282623201f1c17110f0a030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1825323e4b5865717e8b98a4b0a3978a7d7064574a3d312417101217202a36424d5764717e8b97a9b3aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2aca4978a7e7164574b3e3124180b00000000000000010b151f28313a424a505860626b70757a7d80828385858686858483817e7c78736e69615e5650443f382f261d140a00000000000000000d1a2633404d59667380868686868686868686868686868686868686868686868686868686868686868686868276695c4f4336291c1000000000000000000000000000000000000000000000000000030b12181c1f202c2d2d2d2d2d2d2625221e18110a010000000000050d14191e20212d2d2d2d2d2d2d2d2322201c160f08000000000000070f151b1f22232d2d2d2d2d2d2d22211f1a150e0600000000000000000000000000000000000000000000060b0f121316191b1d1e1f20201f1e1d1b19161312100b060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1825323f4b5865727e8b98a5afa296897c6f6356493c30231609060e1a25303b4855626e7b8897a2adaa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b0000000000000007121d27313a434c545c606a6f767d8285898c8f909292939292918f8e8b8884807b756e69625a504a42382f261c1106000000000000000d1a2633404d596673808c93939393939393939393939393939393939393939393939393939393939393938f8276695c4f4336291c10000000000000000000000000000000000000000000000000000000070c1013131f202020202020191816120d07000000000000000002080d1114142020202020202020171613100b050000000000000000040a0f131516202020202020201514120f0a0300000000000000000000000000000000000000000000000000030506090c0e10121213131212100f0c0907060300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295897c6f6256493c2f231609000913202d394653606c7985929fabaa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b000000000000040e18242f39434c555d666d737c83898e9298999b9d9e9f9f9f9f9e9c9a9896918d87817b716c605b544a42382d22170d030000000000000d1a2633404d596673808c999f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9c8f8276695c4f4336291c100000000000000000000000000000000000000000000000000000000000040607131313131313130c0c0a060200000000000000000000000105070813131313131313130a090704000000000000000000000000030608091313131313131308080602000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f2216090005121f2b3744505b657784919daaaa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b0000000000020c16202935404b555d676d78808790959b9fa2a9a19e9c9b9a9a9b9d9fa3a8a19e99928e867e746c665b544a3f33281f150b0100000000000d1a2633404d596673808c99a6acacb3a9a19e9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9c8f8276695c4f4336291c100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900030f1b27333f49536a7683909da9aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b000000000008131e28323a45515d676d79828d93999fa7a39f9a97928f8e8d8e8f9092999c9ea6a39f98928b80786c665b50443d31271d120700000000000d1a2633404d596673808c99a8b2b9ada197929191919191919191919191919191919191919191919191918f8276695c4f4336291c100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900000b17222d424f5c6975828f9ca8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b00000000010d1925303a44505a606d79828f949fa4a79f99928d8885838181818283868a8f949ea0a8a29f928d81786c60594f43392f23180c00000000000d192633404c5966737f8c96a1abb4ab9e9285848484848484848484848484848484848484848484848484848174675b4e4134281b0e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f2216090000061c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b0000000005111d2935414c56626c75818e949fa6a69f959086817c797674747475777a7d828991969fa7a49d938c80736b60554b4034291d1207000000000714212d3a4754606d7a849199a3aeaa9d918479777777777777777777777777777777777777777777777777746f64584c4033271a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900020f1c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b000000000713202d3946525e68717e8b939ea6a89f948f837b746f6c6568676768676d70757c8490959fa8a59f93887d70675c5145392e23180c000000000713202c3945525d686f7c87929fa5aca0958e81756d6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a67645c53483c3024180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900020f1c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b00000005111d2935414c56616d7a85929fa5aca0968f82796e6962605b535a5b555d60636a6f7a839096a1ada49a9184796d60544b4034281c100400000004111d2935414c56606a727f8b939ea8a89e938b7f726a60565e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5b58534a41362b2014080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900020f1c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b0000000713202d3946525d6874808d97a2ada59d9184796d675f575350494e4e4b51535860686d7a84919ea6aca0968c7f72665c5145382c1f1307000000010d1924303a444e58626d75818e96a0aaa59f92867c6f685d534951515151515151515151515151515151514e4c4841382f251a0f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900020f1c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b0000000714212e3a4754616d7a86929fa9aa9e93897c6f675d554d46443f41414045474e565e68707d8a949faba89e9184796d6053463a2e23180c0000000008131e28323d46515b606d79849198a2aea39891847a6d655b50444444444444444444444444444444444441403c362f261d1308000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900020f1c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b000005121e2a36424d5765727f8c98a2aea89b8f82756b60554b433c37332d2f35393d444c56616b7683909caaada1968a7d7164544b4034281c1004000000020c16202b343f45515d676f7c86929fa5aaa0968f82776c60594f443a2f373737373737373737373737373433302b251d140b01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900020f1c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b00000714212d3a46535e697783909daaaca196897c6f63594f433a312b272224292c323a444f5964717e8a98a2aea89b8e8275665c5145382c1f130600000000040e19222935414b555f6a717e8b939da7a89e938c7f726b60564c42382d222b2b2b2b2b2b2b2b2b2b2b282724201a130b0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900020f1c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b00000815212e3b4854616e7b8795a0abab9e9184786c6053463d31281f1b17181d2029323e4753606d7985929facac9f9286796d6053463a2d2013070000000000071018242f3a434e58626c74818e95a0aaa69f92877d6f685e544a3f332821171e1e1e1e1e1e1e1e1e1b1a18140f08010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900020f1c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b00000b1825313e4b5864717e8b97a7b1a79a8d8074655b5044372b1f160f0b0c1017202c3845515d6775828f9ca8aea298897c6f6356493c3023160900000000000007131d28313c46505a606d79839098a2aea39991847a6d665b50443d33291e150a111111111111110e0d0b080300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900020f1c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b00030f1b27333f49536874818e9ba7b4aa978a7d716453493f3327190d04000005101d2935404b5566727f8c99a5b4aa998c7f7266594c3f33261907000000000000010c161f2a343f45515d676e7b86929fa4aba1968f82786c60594f453b30261c1106000404040404010100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900020f1c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b0005121f2b3744505b657783909daaaea298877b6e6154483b2d221708000000000c18242f3d4a5663707d8996abb5a89b8e8175685b4e422e23180c00000000000000040d18222935404b555f69717e8a929da7a99f948c80736b60574d42382e23170f060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900020f1c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b000613202d394653606c7985929facac9f928579695e53463a2d211406000000000715212e3b4854616e7b8799a3aeaa9d9083776a554b4034281c100400000000000000061018242f39434d57616c74808d959fa9a69f93877d70695e544a3f342821180c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900020f1c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b000814212e3b4754616e7a8798a2aeaa9d9084776a574d42362a1e1205000000000613202d394653606c7986929facab9f928578675c5145382c1f1306000000000000000007121d27313c45505a606d78839097a2aca49992857b6e665c50443e33291e150b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900020f1c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b000916222f3c4955626f7c8895aab4a99c8f8276695c4f4331251a0e020000000006121f2b3844505b667884919eabada29786796d6053463a2d2013070000000000000000010b151f2a333e45515c666e7b85929aa4aba1979082786d605a50453b30271d1207000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900020f1c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b000a1724303d4a5763707d8a96a3b0a89b8e8175685b4e4235281b090000000000030f1c28333f4a546a7784909daab3a994877b6e6154483b2e211508000000000000000000030d18212834404b545e69707d88939fa6a99f948d80736c61574d43392e23180f060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900020f1c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b000b1724313e4a5764717d8a97a4b0a79a8d8174675a4e4134271b0e0100000000000b17222d43505d697683909ca9aea195887b6e6255483b2f22150800000000000000000000060f18232e39424d57616b73808d949fa9a69d928a7e70695f554b40342822180d0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900020f1c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b000b1825313e4b5864717e8b97a4b1a79a8d8074675a4d4134271a0e010000000000061d293643505c6976838f9ca9afa295887c6f6255493c2f221609000000000000000000000007121d27303b454f59606d78829097a1aba49f92857b6e675c51453e342a1f160c01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900020f1c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b000b1825323e4b5865717e8b98a4b1a69a8d8073675a4d4034271a0d010000000003101c2936434f5c6976828f9ca9afa295897c6f6256493c2f2316090000000000000000000000000b151e29333e44505c666e7b859299a4ada2979083796d605a50463c31281d1207000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900020f1c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b000b1825313e4b5864717e8b97a4b1a79a8d8074675a4d4134271a0e010000000003101d293643505c6976838f9ca9afa295887c6f6255493c2f221609000000000000000000000000030c172128343f4a545e69707d87939fa6a9a0958d81746c61584e43392f241810070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900020f1c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b000b1724313e4a5764717d8a97a4b0a79a8d8174675a4e4134271b0e010000000003101d2a3643505d697683909ca9aea195887b6e6255483b2f22150800000000000000000000000000050f17232e38424d56606b737f8c949fa8a79d928a7e716a5f554b40352922180d0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900020f1c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b000a1724303d4a5763707d8a96a3b0a89b8e8175685b4e4235281b08000000000004111d2a3744505d6a7783909daab4aa94887b6e6155483b2e221508000000000000000000000000000006111c26303b444f59606c78828f96a1aba49f92867c6e675d51453f342a1f160c01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5afa295887c6f6255493c2f22160900020f1c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b000916232f3c4956626f7c8995abb5a89c8f8275695c4f423025190e020000000005111d2935414c566b7784919eaaaea398877a6d6054473a2d2114070000000000000000000000000000000a151e29323d44505b666d7a849199a3aea2989183796d605a50463c31281e1308000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98a5aca295887c6f6255493c2f22160900020f1c2935424f5c6875828f9ba8aa9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b000815212e3b4854616e7b8799a3afaa9d9083776a564c41362a1e1105000000000713202d3946525e687985929facac9f928579675d5145392c201306000000000000000000000000000000030c172028333f4a545e686f7d87929fa5aaa0958e81756d62584e433a2f241910070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b989f9f9f95887c6f6255493c2f22160900020f1c2935424f5c6875828f9b9f9f9e9184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b000713202d3a4653606d7986929facab9f928578685e5246392d201407000000000714212e3a4754616d7a8798a2aeaa9e9184776b554b4135291d110400000000000000000000000004040400050e17222d38424c56606b727f8c939ea8a79e938b7e716a5f564c41352922190e0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b9393939393887c6f6255493c2f22160900020f1c2935424f5c6875828f939393939184776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b0006121f2c3844515c667784919daaada297877a6e6154473b2e21140a00000000091623303c4956636f7c8996aab4a89c8f8275695c4f422f24180d01000000000000000001050707111111111106111c262f3a444f59626d75828f96a0aaa59f92867c6f685d52453f342b20160b02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f868686868686867c6f6255493c2f22160900020f1c2935424f5c68758186868686868684776b5e5144382b1e1105000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b0004101c2834404a546875828e9ba8b3a9968a7d7063574a3d31261b0d040000030f1b27333f495365717e8b98a4b1a69a8d8073675a4d4034271a070000000000000002080d1113141e1e1e1e1e1e1e141d29323d47515b606d7a849198a3aea39891847a6d605b51463d32281d140a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1824313e4a56626d7279797979797979766a5f53473b2e21150800020e1b2834414d59656f757979797979797772675c4f43372a1d1104000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b00000c18232e3f4c5865727f8b98a8b2a6998d807366584e43372b1f15100c0b0f141f2b3744505b6574818e9ba7b1a7978a7d7164574a3e3124170b000000000000050c13191d20212b2b2b2b2b2b2b2b2b2b2b343f45525d686f7c86929fa5aaa0968f81756d62594f443a2f261c11060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000915222e3a46515b62656c6c6c6c6c6c6c625f584e43372b1f130600000c1925313d49545d65686c6c6c6c6c6c6b6760564b3f33271b0e02000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b00000716222f3c4955626f7c8896a1acaa9d9083776a5f53473c31271f1c18171b1f2630394653606c7884919eabaca095877a6e6154473b2e2114080000000000050e161e252a2d2e37373737373737373737373735414c56606a727f8b939ea8a89e938c7f726b60564c42382d22170b05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121e29343f495156586060606060606055534e463c32261b0f0300000915212c37424b54595c6060606060605e5c564e44392e23170b00000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b00000613202d394653606c7884919eabaca095887c6f62584e4339302c282322272b2f38424d57626f7c8996a1adab9d908377685e5246392d20140700000000020c1620283036393a4444444444444444444444444444444e58626d75818e95a0aaa59f92877d6f685e544a3f332821160b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d18232d373f464a4c535353535353534947433c342a20150a00000004101b26303942494d4f535353535353514f4b443c32281d120600000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b000005121f2b3744505b6573808d99a4afa79a8e81746a5f554b423c38342e2d33373b414a545f6974818e9ba8afa4998c7f7366564d41362a1e11050000000008131e28323a41464751515151515151515151515151515151515b606d79839198a2aea39991847a6d665b50443d33271c1004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111b252d343a3e3f464646464646463c3b37322a22180e040000000009141e2730373d414246464646464644433f39322a20160c0100000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b0000030f1b27333f4953616e7b87939fabac9f92877c6f675c544e46444041413f44464c535c666e7b86929facab9f93877b6e6155483b3025190e02000000010d1925303a444c52545e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5d676f7c86929fa5aba1968f82786c60594f44382c20130700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009131b23292e3132393939393939392f2e2b26201810060000000000020c151e262c3134353939393939393837332e2820180e040000000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b0000000b17222d3847535f6975828f99a3aea3999083796d665f5753514a4e4e495053565e656d78829099a3aea4998f8275695f53463a2d1f14080000000005111d2a36414c565e616a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a717e8b939da9a89f948c7f736b6054483c2f221609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010911181e2224252d2d2d2d2d2d2d22211f1b150e0600000000000000030c141b212528292d2d2d2d2d2d2b2a27231d160e06000000000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b00000006111b2b37424d57626e7b87929fa6ab9f958f81786e6a63605c545b5a535b6062686e77818e949faba79f93877c6f62574d42362a1e0d02000000000713202d3946525e686d7777777777777777777777777777777777777777777777818e9aa7b0a69f93877d7063564a3d3023170a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060d12151819202020202020201615130f0a0400000000000000000002091015191b1c2020202020201e1d1b17120c0400000000000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b000000000e1a26313c47535f6a73808d949fa8a79e938f837b74706d6668676768656c6f737a828e939da6a9a0958d80746a5f53453b31261a0e00000000000714212e3a4754616d7a848484848484848484848484848484848484848484848484919eaab7afa4999083776a5d5044372a1d110400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000106090b0c13131313131313090806030000000000000000000000000004090c0e0f13131313131311110e0b06010000000000000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b0000000009151f2b37424e57606d78829096a0a7a69e959087817c79767574747576797c80868f949da5a9a1979183796d60584e4333291f140900000000000814212e3b4754616e7a87919191919191919191919191919191919191919191919196a0acb9b5ab9d9084776a5d5144372a1e11040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b00000000030e1a26313c44505c666e7a8490959da5a79f99928e898583828181818385888d92989ea6a69f9791857c6e675d51463c3221170d0300000000000814212e3b4754616e7a87949d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9ea0a8b2acacaa9d9084776a5d5144372a1e11040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b000000000009152028343f4a545e686e7a838e939da0a7a39f9b9892908e8e8d8e9092979a9fa2a8a19e948f857c6f6a5f554b40342a200f060000000000000814212e3b4754616e7a87949f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9d9084776a5d5144372a1e11040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b0000000000030c17232e38424c565e686e79818990959b9fa2aaa29f9d9b9a9a9b9c9ea1a9a39f9c96918b827a6f6a5f574e43392f22180e000000000000000814212e3b4754616e7a879393939393939393939393939393939393939393939393939393939393939084776a5d5144372a1e11040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b00000000000006111c26303b444d565e676d747d83898e9298999b9d9e9f9f9f9f9e9d9b9999928f8a847e776e685f584e453c31281d1006000000000000000814212e3b4754616e7a868686868686868686868686868686868686868686868686868686868686868683776a5d5144372a1e11040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b000000000000000a151e29323b444d555d606b70777d8285898c8e90919292929291908f8c8a86827e79716c655e564e463c332a1f160c00000000000000000714202d3946525e687679797979797979797979797979797979797979797979797979797979797979797771675b4f43362a1d10040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b00000000000000030c172029323b434b515960636b7075797d7f82838585868685858382807d7a76716d66605b534c443c342a21180d04000000000000000005111e2a36414c565e6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6a675f554a3f33271a0e020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b0000000000000000050e172029313940454f54596063676d70727576787879797878777573706d6864605c545049413b322a22180f06000000000000000000020e1925303b444c525f60606060606060606060606060606060606060606060606060606060606060605d5b554d44392e22170b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b000000000000000000050e171f272f353d44484f54555d606366686a6b6c6c6c6c6b6a686663605d5653514a443f382f2920181006000000000000000000000008141e29323b4146535353535353535353535353535353535353535353535353535353535353535353514f4a443b32271d1106000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b00000000000000000000050d151d242933383d44484b515356595b5d5e5f5f5f5f5e5d5c595754524c46444039332d261d170e06000000000000000000000000020d1720293036393b464646464646464646464646464646464646464646464646464646464646464644433f39322920160b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b0000000000000000000000030b121821272c333839404547494c4f50525253535252504f4d4a4745413a38342e27221b140b050000000000000000000000000000050e171e252a2d2e39393939393939393939393939393939393939393939393939393939393939393736332e2720170e0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b00000000000000000000000001070c161c21272c2f35383a3d3f42434545464645454442403d3a39352f2c28231c17110a0200000000000000000000000000000000050d14191e20212d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2a2a27221d160e050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b0000000000000000000000000000050b10161c1d24292c2d30333537383939393938373533302d2c29241f1c18120b060000000000000000000000000000000000000002080e11141420202020202020202020202020202020202020202020202020202020202020201e1d1a17110b04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b00000000000000000000000000000000050b1012181d1f202326282a2b2c2c2c2c2b2a29262421201d1913100c07000000000000000000000000000000000000000000000002050708131313131313131313131313131313131313131313131313131313131313131311100e0b060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8895a2afa4978a7e7164574b3e3124180b00000000000000000000000000000000000001070c10131416191c1d1f1f20201f1f1d1c1a171413110d08040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8895a2aca4978a7e7164574b3e3124180b0000000000000000000000000000000000000000000406070a0c0f10121213131212110f0d0a0707040100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c88959f9f9f978a7e7164574b3e3124180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8893939393938a7e7164574b3e3124180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c868686868686867e7164574b3e3124180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4754606a7679797979797979716c6155493d3024170a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2b37434e5860626c6c6c6c6c6c6c64615a5045392d2115080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b27323c464e545560606060606060575550483e34281d11050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a15202b343c434749535353535353534b49453e362c22170c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040f19222b32373b3c464646464646463e3d39342c241b1006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007101920272b2e2f3939393939393931302d28221b120900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070f151b1f22222d2d2d2d2d2d2d2424211d171009000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f13151620202020202020181715110c0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003060809131313131313130b0a0805000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
m_StreamData:
serializedVersion: 2
offset: 0
diff --git a/Packages/com.distantlands.cozy.core/Content/Art/Materials/Particles/Leaves.mat b/Packages/com.distantlands.cozy.core/Content/Art/Materials/Particles/Leaves.mat
index dca07d82..42ab2025 100644
--- a/Packages/com.distantlands.cozy.core/Content/Art/Materials/Particles/Leaves.mat
+++ b/Packages/com.distantlands.cozy.core/Content/Art/Materials/Particles/Leaves.mat
@@ -13,6 +13,7 @@ Material:
m_ModifiedSerializedProperties: 0
m_ValidKeywords:
- _ALPHATEST_ON
+ - _EMISSION
m_InvalidKeywords:
- _FLIPBOOKBLENDING_OFF
m_LightmapFlags: 6
diff --git a/Packages/com.distantlands.cozy.core/Content/Integration/Import for HDRP.unitypackage.meta b/Packages/com.distantlands.cozy.core/Content/Integration/Import for HDRP.unitypackage.meta
deleted file mode 100644
index f263fd33..00000000
--- a/Packages/com.distantlands.cozy.core/Content/Integration/Import for HDRP.unitypackage.meta
+++ /dev/null
@@ -1,7 +0,0 @@
-fileFormatVersion: 2
-guid: c226d4e6697573345932a7bf39dd615a
-DefaultImporter:
- externalObjects: {}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Packages/com.distantlands.cozy.core/Content/Integration/Import for URP.unitypackage.meta b/Packages/com.distantlands.cozy.core/Content/Integration/Import for URP.unitypackage.meta
deleted file mode 100644
index 384510c7..00000000
--- a/Packages/com.distantlands.cozy.core/Content/Integration/Import for URP.unitypackage.meta
+++ /dev/null
@@ -1,7 +0,0 @@
-fileFormatVersion: 2
-guid: 3643c0d76ec153646b1203880bfb64ed
-DefaultImporter:
- externalObjects: {}
- userData:
- assetBundleName:
- assetBundleVariant: