From 2ca43ec836abb518a15ff7e04369c7be7cc6b1d3 Mon Sep 17 00:00:00 2001 From: sylvermyon Date: Mon, 9 Mar 2026 05:26:20 -0700 Subject: [PATCH] they call me the UI designer (and i'm being real this time) --- .../LiberationSans SDF - Fallback.asset | 45 +- Assets/Prefabs/Enemy.prefab | 8 +- Assets/Prefabs/Main.prefab | 373 ++++------ Assets/Prefabs/Marisa.prefab | 62 +- Assets/Scenes/Game.unity | 678 ++++++++++++++++-- Assets/Scripts/Abilities/AbilityHotbarIcon.cs | 7 +- Assets/Scripts/Entities/Entity.cs | 5 +- Assets/Sprites/placeholders/marisareal.png | Bin 0 -> 94493 bytes .../Sprites/placeholders/marisareal.png.meta | 156 ++++ Assets/Sprites/placeholders/sillyfairy.png | Bin 0 -> 33043 bytes .../Sprites/placeholders/sillyfairy.png.meta | 156 ++++ 11 files changed, 1192 insertions(+), 298 deletions(-) create mode 100755 Assets/Sprites/placeholders/marisareal.png create mode 100644 Assets/Sprites/placeholders/marisareal.png.meta create mode 100755 Assets/Sprites/placeholders/sillyfairy.png create mode 100644 Assets/Sprites/placeholders/sillyfairy.png.meta diff --git a/Assets/Plugins/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset b/Assets/Plugins/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset index 85bb36f..2b283ea 100644 --- a/Assets/Plugins/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset +++ b/Assets/Plugins/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset @@ -215,8 +215,27 @@ MonoBehaviour: m_SourceFontFilePath: m_AtlasPopulationMode: 1 InternalDynamicOS: 0 - m_GlyphTable: [] - m_CharacterTable: [] + m_GlyphTable: + - m_Index: 2123 + m_Metrics: + m_Width: 42 + m_Height: 36 + m_HorizontalBearingX: 4 + m_HorizontalBearingY: 46 + m_HorizontalAdvance: 50 + m_GlyphRect: + m_X: 10 + m_Y: 10 + m_Width: 42 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + m_ClassDefinitionType: 0 + m_CharacterTable: + - m_ElementType: 1 + m_Unicode: 8801 + m_GlyphIndex: 2123 + m_Scale: 1 m_AtlasTextures: - {fileID: 28268798066460806} m_AtlasTextureIndex: 0 @@ -227,11 +246,19 @@ MonoBehaviour: m_AtlasHeight: 512 m_AtlasPadding: 9 m_AtlasRenderMode: 4169 - m_UsedGlyphRects: [] - m_FreeGlyphRects: + m_UsedGlyphRects: - m_X: 0 m_Y: 0 + m_Width: 61 + m_Height: 55 + m_FreeGlyphRects: + - m_X: 0 + m_Y: 55 m_Width: 511 + m_Height: 456 + - m_X: 61 + m_Y: 0 + m_Width: 450 m_Height: 511 m_FontFeatureTable: m_MultipleSubstitutionRecords: [] @@ -823,9 +850,9 @@ Texture2D: Hash: 00000000000000000000000000000000 m_IsAlphaChannelOptional: 0 serializedVersion: 3 - 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 @@ -850,8 +877,8 @@ Texture2D: m_LightmapFormat: 0 m_ColorSpace: 0 m_PlatformBlob: - image data: 1 - _typelessdata: 00 + image data: 262144 + _typelessdata: 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060a0e10111313131313131313131313131313131313131313131313131313131313131313131313131313131311100e0a0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040b11161a1d1e202020202020202020202020202020202020202020202020202020202020202020202020202020201e1d1a16110b0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050d151c2227292a2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2a2927221c150d050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d171f272e333637393939393939393939393939393939393939393939393939393939393939393939393939393939393736332e271f170d04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151f2931393f42444646464646464646464646464646464646464646464646464646464646464646464646464646464644423f3931291f150b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c27313b434a4f5153535353535353535353535353535353535353535353535353535353535353535353535353535353514f4a433b31271c110600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a16222e39434d555b5d606060606060606060606060606060606060606060606060606060606060606060606060606060605d5b554d43392e22160a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1a27333f4a555f676a6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6a675f554a3f33271a0e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101d2936424f5b677177797979797979797979797979797979797979797979797979797979797979797979797979797979797771675b4f4236291d100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2a3744515d6a77838686868686868686868686868686868686868686868686868686868686868686868686868686868683776a5d5144372a1e110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2a3744515d6a77849093939393939393939393939393939393939393939393939393939393939393939393939393939083776a5d5144372a1e110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2a3744515d6a7784909d9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9d9084776a5d5144372a1e110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2a3744515d6a7784909da2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a29d9084776a5d5144372a1e110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2a3744515d6a77839095959595959595959595959595959595959595959595959595959595959595959595959595959084776a5d5144372a1e110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2a3744515d6a77838989898989898989898989898989898989898989898989898989898989898989898989898989898984776a5d5144372a1e1100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000915222f3c4855626f7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c6f6255483c2f22150900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815212e3a47535f6a6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6a5f53473a2e211508000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b37434e585f6262626262626262626262626262626262626262626262626262626262626262626262626262626262625f584e43372b1f12060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b26313c464e53555656565656565656565656565656565656565656565656565656565656565656565656565656565655534e463c31261b0f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a15202a343c434748494949494949494949494949494949494949494949494949494949494949494949494949494949494847433c342a20150a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b26313c464e53555656565656565656565656565656565656565656565656565656565656565656565656565656565655534e463c31261b0f03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b37434e585f6262626262626262626262626262626262626262626262626262626262626262626262626262626262625f584e43372b1f120600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815212e3a47535f6a6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6a5f53473a2e21150800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000915222f3c4855626f7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c6f6255483c2f2215090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2a3744515d6a77848989898989898989898989898989898989898989898989898989898989898989898989898989898983776a5d5144372a1e110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2a3744515d6a77849095959595959595959595959595959595959595959595959595959595959595959595959595959083776a5d5144372a1e110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2a3744515d6a7784909da2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a29d9084776a5d5144372a1e110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2a3744515d6a7784909d9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9d9084776a5d5144372a1e110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2a3744515d6a77839093939393939393939393939393939393939393939393939393939393939393939393939393939084776a5d5144372a1e110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2a3744515d6a77838686868686868686868686868686868686868686868686868686868686868686868686868686868683776a5d5144372a1e110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101d2936424f5b677177797979797979797979797979797979797979797979797979797979797979797979797979797979797771675b4f4236291d1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1a27333f4a555f676a6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6a675f554a3f33271a0e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a16222e39434d555b5d606060606060606060606060606060606060606060606060606060606060606060606060606060605d5b554d43392e22160a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c27313b434a4f5153535353535353535353535353535353535353535353535353535353535353535353535353535353514f4a433b31271c11060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a15202a343c434748494949494949494949494949494949494949494949494949494949494949494949494949494949494847433c342a20150a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b26313c464e53555656565656565656565656565656565656565656565656565656565656565656565656565656565655534e463c31261b0f03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b37434e585f6262626262626262626262626262626262626262626262626262626262626262626262626262626262625f584e43372b1f120600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815212e3a47535f6a6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6a5f53473a2e21150800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000915222f3c4855626f7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c6f6255483c2f2215090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2a3744515d6a77848989898989898989898989898989898989898989898989898989898989898989898989898989898983776a5d5144372a1e110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2a3744515d6a77849095959595959595959595959595959595959595959595959595959595959595959595959595959083776a5d5144372a1e110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2a3744515d6a7784909da2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a29d9084776a5d5144372a1e110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2a3744515d6a7784909d9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9d9084776a5d5144372a1e110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2a3744515d6a77839093939393939393939393939393939393939393939393939393939393939393939393939393939084776a5d5144372a1e110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2a3744515d6a77838686868686868686868686868686868686868686868686868686868686868686868686868686868683776a5d5144372a1e110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101d2936424f5b677177797979797979797979797979797979797979797979797979797979797979797979797979797979797771675b4f4236291d1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1a27333f4a555f676a6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6a675f554a3f33271a0e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a16222e39434d555b5d606060606060606060606060606060606060606060606060606060606060606060606060606060605d5b554d43392e22160a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c27313b434a4f5153535353535353535353535353535353535353535353535353535353535353535353535353535353514f4a433b31271c11060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151f2931393f42444646464646464646464646464646464646464646464646464646464646464646464646464646464644423f3931291f150b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d171f272e333637393939393939393939393939393939393939393939393939393939393939393939393939393939393736332e271f170d040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050d151c2227292a2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2a2927221c150d0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040b11161a1d1e202020202020202020202020202020202020202020202020202020202020202020202020202020201e1d1a16110b0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060a0e10111313131313131313131313131313131313131313131313131313131313131313131313131313131311100e0a060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 m_StreamData: serializedVersion: 2 offset: 0 diff --git a/Assets/Prefabs/Enemy.prefab b/Assets/Prefabs/Enemy.prefab index 538d928..f0af191 100644 --- a/Assets/Prefabs/Enemy.prefab +++ b/Assets/Prefabs/Enemy.prefab @@ -18,7 +18,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!224 &4116324020464465292 RectTransform: m_ObjectHideFlags: 0 @@ -131,7 +131,7 @@ Transform: m_GameObject: {fileID: 7987017199152692169} serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -6.0929227, y: -4.173832, z: 0} + m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: @@ -183,7 +183,7 @@ SpriteRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 - m_Sprite: {fileID: 7482667652216324306, guid: 311925a002f4447b3a28927169b83ea6, type: 3} + m_Sprite: {fileID: 2038449967503034895, guid: 4276a09caef75140e8d88b4f29a9681b, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 @@ -232,7 +232,7 @@ BoxCollider2D: m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0.5, y: 0.5} - oldSize: {x: 1, y: 1} + oldSize: {x: 0.8125, y: 1.705} newSize: {x: 1, y: 1} adaptiveTilingThreshold: 0.5 drawMode: 0 diff --git a/Assets/Prefabs/Main.prefab b/Assets/Prefabs/Main.prefab index 12e05e4..1c44634 100644 --- a/Assets/Prefabs/Main.prefab +++ b/Assets/Prefabs/Main.prefab @@ -26,13 +26,13 @@ RectTransform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4047471004172482373} - 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: 1449508968750028431} - - {fileID: 2758633500608765212} + - {fileID: 2493739134057738870} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} @@ -68,7 +68,7 @@ MonoBehaviour: m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} + m_Sprite: {fileID: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 @@ -90,221 +90,9 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 18d0774d0a3b11b43858ef778057d6fe, type: 3} m_Name: m_EditorClassIdentifier: - overlay: {fileID: 5765724299595858927} - cooldownText: {fileID: 562573406507960318} + overlay: {fileID: 0} + cooldownBar: {fileID: 2068721013996546711} text: {fileID: 7179150960317052887} ---- !u!1 &5765724299595858927 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 2758633500608765212} - - component: {fileID: 4771244295907069562} - - component: {fileID: 1268280585873495723} - m_Layer: 5 - m_Name: CooldownOverlay - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 0 ---- !u!224 &2758633500608765212 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5765724299595858927} - 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: 5749448899681371347} - m_Father: {fileID: 3595604515381026928} - 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 &4771244295907069562 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5765724299595858927} - m_CullTransparentMesh: 1 ---- !u!114 &1268280585873495723 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5765724299595858927} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.11320752, g: 0.11320752, b: 0.11320752, a: 0.95686275} - 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!1 &5812690053708579647 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 5749448899681371347} - - component: {fileID: 8178049045515737004} - - component: {fileID: 562573406507960318} - m_Layer: 5 - m_Name: TimerText - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &5749448899681371347 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5812690053708579647} - 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: 2758633500608765212} - 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 &8178049045515737004 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5812690053708579647} - m_CullTransparentMesh: 1 ---- !u!114 &562573406507960318 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5812690053708579647} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} - m_Name: - m_EditorClassIdentifier: - 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: 60 - m_isRightToLeft: 0 - m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} - m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, 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: 72 - m_fontSizeBase: 36 - m_fontWeight: 400 - m_enableAutoSizing: 1 - m_fontSizeMin: 18 - m_fontSizeMax: 72 - m_fontStyle: 0 - m_HorizontalAlignment: 2 - m_VerticalAlignment: 512 - m_textAlignment: 65535 - m_characterSpacing: 0 - 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 &5826332855204939817 GameObject: m_ObjectHideFlags: 0 @@ -441,3 +229,154 @@ MonoBehaviour: m_hasFontAssetChanged: 0 m_baseMaterial: {fileID: 0} m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!1 &7601296069844126895 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2068721013996546711} + - component: {fileID: 4219871172584446259} + - component: {fileID: 1143149032477451843} + m_Layer: 5 + m_Name: Cooldown + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2068721013996546711 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7601296069844126895} + 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: 2493739134057738870} + 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.000030517578} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0.5} +--- !u!222 &4219871172584446259 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7601296069844126895} + m_CullTransparentMesh: 1 +--- !u!114 &1143149032477451843 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7601296069844126895} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 0.98537505, b: 0.6745283, 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: 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!1 &8478484835256583348 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2493739134057738870} + - component: {fileID: 583546651177708997} + - component: {fileID: 2009058821976215186} + m_Layer: 5 + m_Name: CooldownBG + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2493739134057738870 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8478484835256583348} + 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: 2068721013996546711} + m_Father: {fileID: 3595604515381026928} + 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, y: 65} + m_SizeDelta: {x: 200, y: 20} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &583546651177708997 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8478484835256583348} + m_CullTransparentMesh: 1 +--- !u!114 &2009058821976215186 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8478484835256583348} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.3301887, g: 0.3301887, b: 0.3301887, 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: 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 diff --git a/Assets/Prefabs/Marisa.prefab b/Assets/Prefabs/Marisa.prefab index a3965e9..a72b472 100644 --- a/Assets/Prefabs/Marisa.prefab +++ b/Assets/Prefabs/Marisa.prefab @@ -30,7 +30,7 @@ Transform: m_LocalScale: {x: 0.2, y: 0.2, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 5661264056639479186} + m_Father: {fileID: 9074937747694851886} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &3199296489905277417 SpriteRenderer: @@ -232,12 +232,12 @@ Transform: serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: 0.09428444, w: 0.9955453} m_LocalPosition: {x: -0.003, y: 0.36, z: 0} - m_LocalScale: {x: 1.4, y: 0.125, z: 1} + m_LocalScale: {x: 1.3999999, y: 0.125, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 7176420495959497304} - {fileID: 820671760500946211} - m_Father: {fileID: 5661264056639479186} + m_Father: {fileID: 9074937747694851886} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 10.82} --- !u!212 &7757013783652538548 SpriteRenderer: @@ -413,7 +413,7 @@ Transform: m_LocalScale: {x: -0.4309858, y: 0.6027311, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 5661264056639479186} + m_Father: {fileID: 9074937747694851886} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 55.218} --- !u!212 &6404552663771387828 SpriteRenderer: @@ -497,10 +497,10 @@ Transform: serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: 0.9004954, w: 0.4348655} m_LocalPosition: {x: -0.6984, y: 1.0468, z: 0} - m_LocalScale: {x: -0.13237624, y: 0.2736624, z: 1} + m_LocalScale: {x: -0.13237625, y: 0.27366242, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 5661264056639479186} + m_Father: {fileID: 9074937747694851886} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 128.447} --- !u!212 &7698841122530532018 SpriteRenderer: @@ -679,12 +679,9 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - - {fileID: 4441413143982445185} - - {fileID: 7862409553682532041} - - {fileID: 3445211528256210067} - - {fileID: 9200583498738940138} - {fileID: 5150015966705364997} - {fileID: 1955417614592701310} + - {fileID: 9074937747694851886} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &8885222195297553295 @@ -731,9 +728,9 @@ SpriteRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 - m_Sprite: {fileID: 7482667652216324306, guid: 311925a002f4447b3a28927169b83ea6, type: 3} - m_Color: {r: 0.9877385, g: 1, b: 0.5613208, a: 1} - m_FlipX: 0 + m_Sprite: {fileID: -2668729246912426200, guid: ea6dccfbc333b449987e16ff93abaa01, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 1 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} @@ -807,13 +804,13 @@ BoxCollider2D: m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0.5, y: 0.5} - oldSize: {x: 1, y: 1} + oldSize: {x: 1.5942857, y: 2.2942858} newSize: {x: 1, y: 1} adaptiveTilingThreshold: 0.5 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 - m_Size: {x: 1, y: 1} + m_Size: {x: 1.4, y: 1.8} m_EdgeRadius: 0 --- !u!114 &5275979051295637757 MonoBehaviour: @@ -842,6 +839,41 @@ MonoBehaviour: firingPoint: {fileID: 6266582235186827771} hpBarUI: {fileID: 0} healthText: {fileID: 0} +--- !u!1 &6049904439364741944 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 9074937747694851886} + m_Layer: 6 + m_Name: Decor + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!4 &9074937747694851886 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6049904439364741944} + serializedVersion: 2 + 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: 4441413143982445185} + - {fileID: 7862409553682532041} + - {fileID: 3445211528256210067} + - {fileID: 9200583498738940138} + m_Father: {fileID: 5661264056639479186} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &6396436912902618782 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Scenes/Game.unity b/Assets/Scenes/Game.unity index baae6dc..88b879b 100644 --- a/Assets/Scenes/Game.unity +++ b/Assets/Scenes/Game.unity @@ -416,18 +416,18 @@ RectTransform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 229603538} - 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: 1008626378} - {fileID: 1264758720} - m_Father: {fileID: 1935311237} + m_Father: {fileID: 446769397} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 350, y: 220} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 505, y: -55} m_SizeDelta: {x: 660, y: 60} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &229603540 @@ -499,13 +499,13 @@ RectTransform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - - {fileID: 944240574} + - {fileID: 396583278} m_Father: {fileID: 1935311237} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 1, y: 1} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: -100, y: -35} - m_SizeDelta: {x: 160, y: 30} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 925, y: 65} + m_SizeDelta: {x: 210, y: 130} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &342414425 MonoBehaviour: @@ -588,14 +588,14 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Color: {r: 0.22745098, g: 0.22745098, b: 0.22745098, 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: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Sprite: {fileID: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 @@ -754,6 +754,10 @@ PrefabInstance: propertyPath: healthText value: objectReference: {fileID: 1264758721} + - target: {fileID: 5275979051295637757, guid: 8764555a5fdde3428903d7ac06f8ff7f, type: 3} + propertyPath: isFacingRight + value: 1 + objectReference: {fileID: 0} - target: {fileID: 5661264056639479186, guid: 8764555a5fdde3428903d7ac06f8ff7f, type: 3} propertyPath: m_LocalPosition.x value: 0 @@ -831,6 +835,82 @@ Transform: m_CorrespondingSourceObject: {fileID: 5661264056639479186, guid: 8764555a5fdde3428903d7ac06f8ff7f, type: 3} m_PrefabInstance: {fileID: 394036755} m_PrefabAsset: {fileID: 0} +--- !u!1 &396583277 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 396583278} + - component: {fileID: 396583280} + - component: {fileID: 396583279} + m_Layer: 5 + m_Name: Panel + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &396583278 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 396583277} + 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: 944240574} + m_Father: {fileID: 342414424} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 2.4999998, y: -2.5} + m_SizeDelta: {x: -4.9999995, y: -5} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &396583279 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 396583277} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.9529412, g: 0.9529412, b: 0.9529412, 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: 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!222 &396583280 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 396583277} + m_CullTransparentMesh: 1 --- !u!1 &439163858 GameObject: m_ObjectHideFlags: 0 @@ -865,6 +945,43 @@ Transform: - {fileID: 1432589379} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &446769396 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 446769397} + m_Layer: 5 + m_Name: PlayerUI + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &446769397 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 446769396} + 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: 229603539} + - {fileID: 1101564679} + m_Father: {fileID: 1935311237} + 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 &519420028 GameObject: m_ObjectHideFlags: 0 @@ -1606,6 +1723,10 @@ PrefabInstance: propertyPath: m_Name value: SpellA objectReference: {fileID: 0} + - target: {fileID: 8457928522181752785, guid: 76fcc84ad57e7fa44a8b2ea9c59842ed, type: 3} + propertyPath: m_Sprite + value: + objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] @@ -1616,6 +1737,127 @@ RectTransform: m_CorrespondingSourceObject: {fileID: 3595604515381026928, guid: 76fcc84ad57e7fa44a8b2ea9c59842ed, type: 3} m_PrefabInstance: {fileID: 689507106} m_PrefabAsset: {fileID: 0} +--- !u!1 &714164553 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 714164554} + - component: {fileID: 714164557} + - component: {fileID: 714164556} + - component: {fileID: 714164555} + m_Layer: 5 + m_Name: Options Menu + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &714164554 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 714164553} + 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: 1154900752} + m_Father: {fileID: 1935311237} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 1135, y: 65} + m_SizeDelta: {x: 210, y: 130} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &714164555 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 714164553} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 714164556} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!114 &714164556 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 714164553} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.22745098, g: 0.22745098, b: 0.22745098, 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: 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!222 &714164557 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 714164553} + m_CullTransparentMesh: 1 --- !u!1 &760478887 GameObject: m_ObjectHideFlags: 0 @@ -2020,7 +2262,7 @@ RectTransform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 342414424} + m_Father: {fileID: 396583278} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -2047,7 +2289,7 @@ MonoBehaviour: m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_text: Abilties + m_text: A m_isRightToLeft: 0 m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} @@ -2074,13 +2316,13 @@ MonoBehaviour: m_faceColor: serializedVersion: 2 rgba: 4294967295 - m_fontSize: 24 - m_fontSizeBase: 24 + m_fontSize: 90 + m_fontSizeBase: 90 m_fontWeight: 400 m_enableAutoSizing: 0 m_fontSizeMin: 18 m_fontSizeMax: 72 - m_fontStyle: 0 + m_fontStyle: 1 m_HorizontalAlignment: 2 m_VerticalAlignment: 512 m_textAlignment: 65535 @@ -2492,6 +2734,81 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1034624965} m_CullTransparentMesh: 1 +--- !u!1 &1101564678 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1101564679} + - component: {fileID: 1101564681} + - component: {fileID: 1101564680} + m_Layer: 5 + m_Name: Image + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1101564679 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1101564678} + 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: 446769397} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 100, y: -100} + m_SizeDelta: {x: 150, y: 150} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1101564680 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1101564678} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + 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!222 &1101564681 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1101564678} + m_CullTransparentMesh: 1 --- !u!1 &1108889697 GameObject: m_ObjectHideFlags: 0 @@ -2579,6 +2896,82 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 +--- !u!1 &1154900751 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1154900752} + - component: {fileID: 1154900754} + - component: {fileID: 1154900753} + m_Layer: 5 + m_Name: Panel + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1154900752 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1154900751} + 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: 1771662913} + m_Father: {fileID: 714164554} + 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: -2.5} + m_SizeDelta: {x: -9.999999, y: -5} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1154900753 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1154900751} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.9529412, g: 0.9529412, b: 0.9529412, 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: 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!222 &1154900754 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1154900751} + m_CullTransparentMesh: 1 --- !u!1 &1205925643 GameObject: m_ObjectHideFlags: 0 @@ -3435,6 +3828,10 @@ PrefabInstance: propertyPath: m_Name value: Secondary objectReference: {fileID: 0} + - target: {fileID: 8457928522181752785, guid: 76fcc84ad57e7fa44a8b2ea9c59842ed, type: 3} + propertyPath: m_Sprite + value: + objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] @@ -3974,6 +4371,142 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: a75a4c92b7f4707cb82c77fef57ae2b3, type: 3} m_Name: m_EditorClassIdentifier: +--- !u!1 &1771662912 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1771662913} + - component: {fileID: 1771662915} + - component: {fileID: 1771662914} + m_Layer: 5 + m_Name: Label + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1771662913 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1771662912} + 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: 1154900752} + 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!114 &1771662914 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1771662912} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + 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: "\u2261" + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4281479730 + m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, 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: 90 + m_fontSizeBase: 90 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 1 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + 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!222 &1771662915 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1771662912} + m_CullTransparentMesh: 1 --- !u!1 &1923631093 GameObject: m_ObjectHideFlags: 0 @@ -4147,8 +4680,9 @@ RectTransform: - {fileID: 1493212142} - {fileID: 5007058640176408060} - {fileID: 342414424} + - {fileID: 714164554} - {fileID: 351951402} - - {fileID: 229603539} + - {fileID: 446769397} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} @@ -4634,6 +5168,10 @@ PrefabInstance: propertyPath: m_Name value: SpellB objectReference: {fileID: 0} + - target: {fileID: 8457928522181752785, guid: 76fcc84ad57e7fa44a8b2ea9c59842ed, type: 3} + propertyPath: m_Sprite + value: + objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] @@ -16453,30 +16991,6 @@ RectTransform: m_CorrespondingSourceObject: {fileID: 3595604515381026928, guid: 76fcc84ad57e7fa44a8b2ea9c59842ed, type: 3} m_PrefabInstance: {fileID: 4790752187006030204} m_PrefabAsset: {fileID: 0} ---- !u!114 &3758675619081454424 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4508066417797342323} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 8a8695521f0d02e499659fee002a26c2, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Padding: - m_Left: 20 - m_Right: 0 - m_Top: 0 - m_Bottom: 20 - m_ChildAlignment: 6 - m_StartCorner: 2 - m_StartAxis: 0 - m_CellSize: {x: 150, y: 150} - m_Spacing: {x: 20, y: 0} - m_Constraint: 0 - m_ConstraintCount: 2 --- !u!1 &4508066417797342323 GameObject: m_ObjectHideFlags: 0 @@ -16486,7 +17000,9 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 5007058640176408060} - - component: {fileID: 3758675619081454424} + - component: {fileID: 5007058640176408063} + - component: {fileID: 5007058640176408062} + - component: {fileID: 5007058640176408061} m_Layer: 5 m_Name: AbilityIconHotbar m_TagString: Untagged @@ -16582,6 +17098,14 @@ PrefabInstance: propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} + - target: {fileID: 3967213263405647408, guid: 76fcc84ad57e7fa44a8b2ea9c59842ed, type: 3} + propertyPath: overlay + value: + objectReference: {fileID: 0} + - target: {fileID: 3967213263405647408, guid: 76fcc84ad57e7fa44a8b2ea9c59842ed, type: 3} + propertyPath: cooldownText + value: + objectReference: {fileID: 0} - target: {fileID: 4047471004172482373, guid: 76fcc84ad57e7fa44a8b2ea9c59842ed, type: 3} propertyPath: m_Name value: Main @@ -16610,10 +17134,72 @@ RectTransform: m_Father: {fileID: 1935311237} 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_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 410, y: 65} + m_SizeDelta: {x: 820, y: 130} m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &5007058640176408061 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4508066417797342323} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8a8695521f0d02e499659fee002a26c2, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Padding: + m_Left: 5 + m_Right: 0 + m_Top: 30 + m_Bottom: 0 + m_ChildAlignment: 0 + m_StartCorner: 0 + m_StartAxis: 0 + m_CellSize: {x: 200, y: 100} + m_Spacing: {x: 5, y: 0} + m_Constraint: 0 + m_ConstraintCount: 2 +--- !u!114 &5007058640176408062 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4508066417797342323} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.2264151, g: 0.2264151, b: 0.2264151, 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!222 &5007058640176408063 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4508066417797342323} + m_CullTransparentMesh: 1 --- !u!114 &8557355471054574495 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 3967213263405647408, guid: 76fcc84ad57e7fa44a8b2ea9c59842ed, type: 3} diff --git a/Assets/Scripts/Abilities/AbilityHotbarIcon.cs b/Assets/Scripts/Abilities/AbilityHotbarIcon.cs index 2ea6d9f..ea6ad08 100644 --- a/Assets/Scripts/Abilities/AbilityHotbarIcon.cs +++ b/Assets/Scripts/Abilities/AbilityHotbarIcon.cs @@ -4,8 +4,7 @@ using UnityEngine; public class AbilityHotbarIcon : MonoBehaviour { - [SerializeField] private GameObject overlay; - [SerializeField] private TextMeshProUGUI cooldownText; + [SerializeField] private Transform cooldownBar; [SerializeField] private TextMeshProUGUI text; private bool onCooldown; private PlayerAbility thisAbility; @@ -14,11 +13,10 @@ public class AbilityHotbarIcon : MonoBehaviour { if (onCooldown) { - cooldownText.text = thisAbility.currentCooldown.ToString("F2"); + cooldownBar.localScale = new Vector3(Math.Clamp(1 - thisAbility.currentCooldown/thisAbility.cooldown, 0, 1), 1, 1); if (thisAbility.currentCooldown <= 0) { onCooldown = false; - overlay.SetActive(false); } } } @@ -28,7 +26,6 @@ public class AbilityHotbarIcon : MonoBehaviour if (thisAbility.currentCooldown > 0) { onCooldown = true; - overlay.SetActive(true); } } diff --git a/Assets/Scripts/Entities/Entity.cs b/Assets/Scripts/Entities/Entity.cs index 780d13f..63c446e 100644 --- a/Assets/Scripts/Entities/Entity.cs +++ b/Assets/Scripts/Entities/Entity.cs @@ -21,12 +21,12 @@ public class Entity : MonoBehaviour protected void FlipSprite(Vector2 lookDirection) { - if (lookDirection.x < 0f && isFacingRight) + if (lookDirection.x > 0f && isFacingRight) { sprite.flipX = true; isFacingRight = !isFacingRight; } - else if (lookDirection.x > 0f && !isFacingRight) + else if (lookDirection.x < 0f && !isFacingRight) { sprite.flipX = false; isFacingRight = !isFacingRight; @@ -37,6 +37,7 @@ public class Entity : MonoBehaviour if (!stalled) { rb.linearVelocity = moveDirection * speed; + FlipSprite(moveDirection); } } public virtual void TakeDamage(float damage, Entity origin) diff --git a/Assets/Sprites/placeholders/marisareal.png b/Assets/Sprites/placeholders/marisareal.png new file mode 100755 index 0000000000000000000000000000000000000000..bff5220436f623b6f210669d05e6dc1a2213f305 GIT binary patch literal 94493 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%0DS)o2A6&lolwdlV<} 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
8mv%t(jzUS`?bZ#_ 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 GfBi2BgoKCy literal 0 HcmV?d00001 diff --git a/Assets/Sprites/placeholders/marisareal.png.meta b/Assets/Sprites/placeholders/marisareal.png.meta new file mode 100644 index 0000000..9b28c3c --- /dev/null +++ b/Assets/Sprites/placeholders/marisareal.png.meta @@ -0,0 +1,156 @@ +fileFormatVersion: 2 +guid: ea6dccfbc333b449987e16ff93abaa01 +TextureImporter: + internalIDToNameTable: + - first: + 213: -2668729246912426200 + second: marisareal_0 + 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: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 2 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 700 + 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 + - serializedVersion: 4 + buildTarget: WebGL + 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: + - serializedVersion: 2 + name: marisareal_0 + rect: + serializedVersion: 2 + x: 94 + y: 48 + width: 1116 + height: 1606 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: -1 + bones: [] + spriteID: 82fc614b3e4c6fad0800000000000000 + internalID: -2668729246912426200 + vertices: [] + indices: + edges: [] + weights: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: + marisareal_0: -2668729246912426200 + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/placeholders/sillyfairy.png b/Assets/Sprites/placeholders/sillyfairy.png new file mode 100755 index 0000000000000000000000000000000000000000..65bb05c8380ec573631342ddf009bf6c30490cba GIT binary patch literal 33043 zcmd>k_dnHt`1d)7LypZsvJRbekXc6NiGw3#W`zAbVaxK~hdi76QS?WIqlt zH~YdJHPEcsY@EUt`|zXdZBrPYxf!1KSU#mD3@6k>r^a-~RY zB-EsGiIx}l+1m@r_gK%VjCZ;zaHTJET4*cGHMe0y$lxKyU zS?GvPh`V)-9?C?8(6~V;UT@xLa&POv(qSQE@owpy+dRz;EU3S`;zJtoZy|@d59_T( zWFf|B@e6;pzu5Bf^eCxWW}T`v>Pf3PXV@=uv0udcuAD`x&!00_LN?QHu%2I&yRXXo z-lu=|2KC#->A8gS94+z5*LZmrj&0Y=wTL?2^VNHR?ezRs$s2M>0fI@HkoxXp=Hw>n zn1YeJD>)Ykq2PP2QU|52J`8ZaXYJ_!U?atWE{Wz9wKaQ?kjfc1GcaJd5ZCcRhD9;q z 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 VuJ<=_@Qbn->dN33N*-9e`X8+zT+ILg literal 0 HcmV?d00001 diff --git a/Assets/Sprites/placeholders/sillyfairy.png.meta b/Assets/Sprites/placeholders/sillyfairy.png.meta new file mode 100644 index 0000000..1e5a59f --- /dev/null +++ b/Assets/Sprites/placeholders/sillyfairy.png.meta @@ -0,0 +1,156 @@ +fileFormatVersion: 2 +guid: 4276a09caef75140e8d88b4f29a9681b +TextureImporter: + internalIDToNameTable: + - first: + 213: 2038449967503034895 + second: sillyfairy_0 + 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: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 2 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 400 + 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 + - serializedVersion: 4 + buildTarget: WebGL + 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: + - serializedVersion: 2 + name: sillyfairy_0 + rect: + serializedVersion: 2 + x: 34 + y: 64 + width: 325 + height: 682 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: -1 + bones: [] + spriteID: f0acc6df1770a4c10800000000000000 + internalID: 2038449967503034895 + vertices: [] + indices: + edges: [] + weights: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: + sillyfairy_0: 2038449967503034895 + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: