From 878d46230b09cc0537fd86dc93d14dad752d7e14 Mon Sep 17 00:00:00 2001 From: Nikola Garabandic Date: Wed, 4 Sep 2024 17:04:43 +0200 Subject: [PATCH 1/8] Paste should now work properly accross all the webgl input fields. --- .../Plugins/Web3AuthSDK/WebGL/Clipboard.jslib | 2 +- .../Prefabs/Web3AuthWalletGUI.prefab | 13 - .../Web3AuthWalletGUIClipboardManager.cs | 66 ---- .../Scripts/Web3AuthWalletGUIUIManager.cs | 12 +- .../Runtime/Scripts/ClipboardManager.cs | 51 +++ .../Runtime/Scripts/ClipboardManager.cs.meta} | 2 +- .../Marketplace Samples/Prefabs/Scenes.meta | 8 + .../Scenes/MarketplaceSampleScene.unity | 356 ++++++++++++++++++ .../Scenes/MarketplaceSampleScene.unity.meta | 7 + .../LiberationSans SDF - Fallback.asset | 45 +-- .../ProjectSettings/EditorBuildSettings.asset | 3 + .../ProjectSettings/ProjectSettings.asset | 1 + 12 files changed, 447 insertions(+), 119 deletions(-) delete mode 100644 Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Scripts/Web3AuthWalletGUIClipboardManager.cs create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs rename Packages/{io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Scripts/Web3AuthWalletGUIClipboardManager.cs.meta => io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs.meta} (83%) create mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK Marketplace/2.6.1/Marketplace Samples/Prefabs/Scenes.meta create mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK Marketplace/2.6.1/Marketplace Samples/Prefabs/Scenes/MarketplaceSampleScene.unity create mode 100644 src/UnitySampleProject/Assets/Samples/web3.unity SDK Marketplace/2.6.1/Marketplace Samples/Prefabs/Scenes/MarketplaceSampleScene.unity.meta diff --git a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/WebGL/Clipboard.jslib b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/WebGL/Clipboard.jslib index d0730c13b..afe3a8506 100644 --- a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/WebGL/Clipboard.jslib +++ b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/WebGL/Clipboard.jslib @@ -11,7 +11,7 @@ mergeInto(LibraryManager.library, { PasteFromClipboard: function () { navigator.clipboard.readText().then( clipText => { - web3UnityInstance.SendMessage('Web3AuthWalletGUI(Clone)', 'OnPasteWebGL', clipText); + web3UnityInstance.SendMessage('WebGLClipboardManager', 'OnPaste', clipText); } ).catch(err => { console.error('Failed to read clipboard contents: ', err); diff --git a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Prefabs/Web3AuthWalletGUI.prefab b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Prefabs/Web3AuthWalletGUI.prefab index 9f3261658..e341d6402 100644 --- a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Prefabs/Web3AuthWalletGUI.prefab +++ b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Prefabs/Web3AuthWalletGUI.prefab @@ -4931,7 +4931,6 @@ GameObject: - component: {fileID: 4029780974178710413} - component: {fileID: 7234845548737740600} - component: {fileID: 804371200852392299} - - component: {fileID: 6274013656548490657} m_Layer: 0 m_Name: Web3AuthWalletGUI m_TagString: Untagged @@ -5112,18 +5111,6 @@ MonoBehaviour: holdToRevealPrivateKeyButton: {fileID: 198969248047024504} circleLoadingImage: {fileID: 1647118626164522998} holdDuration: 2 ---- !u!114 &6274013656548490657 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2911816339710442984} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 15ddd9b23c8d92f4db529a02cc14ecab, type: 3} - m_Name: - m_EditorClassIdentifier: --- !u!1 &2991694514551052582 GameObject: m_ObjectHideFlags: 0 diff --git a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Scripts/Web3AuthWalletGUIClipboardManager.cs b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Scripts/Web3AuthWalletGUIClipboardManager.cs deleted file mode 100644 index 17f446061..000000000 --- a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Scripts/Web3AuthWalletGUIClipboardManager.cs +++ /dev/null @@ -1,66 +0,0 @@ -using System.Linq; -using System.Runtime.InteropServices; -using TMPro; -using UnityEngine; - -public class Web3AuthWalletGUIClipboardManager : MonoBehaviour -{ - #region Fields - -#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR - [DllImport("__Internal")] - private static extern void CopyToClipboard(string text); - - [DllImport("__Internal")] - private static extern string PasteFromClipboard(); -#endif - - #endregion - - #region Methods - - public void OnPasteWebGL(string text) - { - var inputFields = FindObjectsOfType(); - TMP_InputField focusedInputField = inputFields.FirstOrDefault(inputField => inputField.isFocused); - if (focusedInputField != null) - { - focusedInputField.text = text; - } - } - - private void PasteText() - { - if (Input.GetKey(KeyCode.LeftControl) && Input.GetKeyDown(KeyCode.V)) - { -#if UNITY_WEBGL && !UNITY_EDITOR - PasteFromClipboard(); -#elif UNITY_IOS && !UNITY_EDITOR - string text = PasteFromClipboard(); - OnPasteWebGL(text); -#else - OnPasteWebGL(GUIUtility.systemCopyBuffer); -#endif - } - } - - public static void CopyText(string text) - { -#if UNITY_WEBGL && !UNITY_EDITOR - CopyToClipboard(text); -#elif UNITY_IOS && !UNITY_EDITOR - CopyToClipboard(text); -#else - GUIUtility.systemCopyBuffer = text; -#endif - } - - private void Update() - { -#if UNITY_WEBGL && !UNITY_EDITOR - PasteText(); -#endif - } - - #endregion -} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Scripts/Web3AuthWalletGUIUIManager.cs b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Scripts/Web3AuthWalletGUIUIManager.cs index 3b0665492..05d760a56 100644 --- a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Scripts/Web3AuthWalletGUIUIManager.cs +++ b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Scripts/Web3AuthWalletGUIUIManager.cs @@ -115,7 +115,11 @@ private void CheckWalletToggleKeyInput() /// private void CopyWalletAddress() { - Web3AuthWalletGUIClipboardManager.CopyText(walletAddressText.text); +#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR + ClipboardManager.CopyText(walletAddressText.text); +#else + GUIUtility.systemCopyBuffer = walletAddressText.text; +#endif } /// @@ -205,7 +209,11 @@ private void SetPrivateKey() /// private void CopyPrivateKey() { - Web3AuthWalletGUIClipboardManager.CopyText(privateKeyText.text); +#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR + ClipboardManager.CopyToClipboard(privateKeyText.text); + #else + GUIUtility.systemCopyBuffer = privateKeyText.text; +#endif } /// diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs new file mode 100644 index 000000000..dec67a896 --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs @@ -0,0 +1,51 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Runtime.InteropServices; +using TMPro; +using UnityEngine; +using UnityEngine.EventSystems; + +namespace ChainSafe.Gaming +{ +#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR + public class ClipboardManager : MonoBehaviour + { + [RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.AfterSceneLoad)] + public static void CreateGameObject() + { + var go = new GameObject("WebGLClipboardManager", typeof(ClipboardManager)); + DontDestroyOnLoad(go); + } + + [DllImport("__Internal")] + private static extern void CopyToClipboard(string text); + + [DllImport("__Internal")] + private static extern string PasteFromClipboard(); + + + public void Update() + { + if (Input.GetKey(KeyCode.LeftControl) && Input.GetKeyDown(KeyCode.V)) + { + #if UNITY_IOS + string text = PasteFromClipboard(); + OnPaste(text); + #else + PasteFromClipboard(); + #endif + } + } + + public void OnPaste(string text) + { + var currentGo = EventSystem.current.currentSelectedGameObject; + if (currentGo != null && currentGo.TryGetComponent(out var inputField)) + { + inputField.text = text; + } + } + } +#endif +} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Scripts/Web3AuthWalletGUIClipboardManager.cs.meta b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs.meta similarity index 83% rename from Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Scripts/Web3AuthWalletGUIClipboardManager.cs.meta rename to Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs.meta index 0f2772ef0..1f319c797 100644 --- a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Scripts/Web3AuthWalletGUIClipboardManager.cs.meta +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 15ddd9b23c8d92f4db529a02cc14ecab +guid: 14e42da487a6ca94b88a51b3907960f7 MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK Marketplace/2.6.1/Marketplace Samples/Prefabs/Scenes.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK Marketplace/2.6.1/Marketplace Samples/Prefabs/Scenes.meta new file mode 100644 index 000000000..277282faa --- /dev/null +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK Marketplace/2.6.1/Marketplace Samples/Prefabs/Scenes.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4a0055856d72f454ca204805793a0a1b +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK Marketplace/2.6.1/Marketplace Samples/Prefabs/Scenes/MarketplaceSampleScene.unity b/src/UnitySampleProject/Assets/Samples/web3.unity SDK Marketplace/2.6.1/Marketplace Samples/Prefabs/Scenes/MarketplaceSampleScene.unity new file mode 100644 index 000000000..9ac30326c --- /dev/null +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK Marketplace/2.6.1/Marketplace Samples/Prefabs/Scenes/MarketplaceSampleScene.unity @@ -0,0 +1,356 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 3 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 12 + m_GIWorkflowMode: 1 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 0 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1001 &324495856 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 1067755728589217075, guid: 9632a7d8952d45449843f4e8c3be0acc, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3848871182362943263, guid: 9632a7d8952d45449843f4e8c3be0acc, type: 3} + propertyPath: m_Name + value: MarketplaceLogin + objectReference: {fileID: 0} + - target: {fileID: 5973855777425387154, guid: 9632a7d8952d45449843f4e8c3be0acc, type: 3} + propertyPath: m_AnchoredPosition.y + value: -20 + objectReference: {fileID: 0} + - target: {fileID: 6828341401912270805, guid: 9632a7d8952d45449843f4e8c3be0acc, type: 3} + propertyPath: m_LocalPosition.x + value: 788.1468 + objectReference: {fileID: 0} + - target: {fileID: 6828341401912270805, guid: 9632a7d8952d45449843f4e8c3be0acc, type: 3} + propertyPath: m_LocalPosition.y + value: 477.82355 + objectReference: {fileID: 0} + - target: {fileID: 6828341401912270805, guid: 9632a7d8952d45449843f4e8c3be0acc, type: 3} + propertyPath: m_LocalPosition.z + value: -2.2110217 + objectReference: {fileID: 0} + - target: {fileID: 6828341401912270805, guid: 9632a7d8952d45449843f4e8c3be0acc, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 6828341401912270805, guid: 9632a7d8952d45449843f4e8c3be0acc, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6828341401912270805, guid: 9632a7d8952d45449843f4e8c3be0acc, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6828341401912270805, guid: 9632a7d8952d45449843f4e8c3be0acc, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6828341401912270805, guid: 9632a7d8952d45449843f4e8c3be0acc, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6828341401912270805, guid: 9632a7d8952d45449843f4e8c3be0acc, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6828341401912270805, guid: 9632a7d8952d45449843f4e8c3be0acc, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9632a7d8952d45449843f4e8c3be0acc, type: 3} +--- !u!1 &1452940851 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1452940854} + - component: {fileID: 1452940853} + - component: {fileID: 1452940852} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &1452940852 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1452940851} + m_Enabled: 1 +--- !u!20 &1452940853 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1452940851} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 1 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &1452940854 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1452940851} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &2088169816 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2088169819} + - component: {fileID: 2088169818} + - component: {fileID: 2088169817} + m_Layer: 0 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &2088169817 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2088169816} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3} + m_Name: + m_EditorClassIdentifier: + m_SendPointerHoverToParent: 1 + m_HorizontalAxis: Horizontal + m_VerticalAxis: Vertical + m_SubmitButton: Submit + m_CancelButton: Cancel + m_InputActionsPerSecond: 10 + m_RepeatDelay: 0.5 + m_ForceModuleActive: 0 +--- !u!114 &2088169818 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2088169816} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 10 +--- !u!4 &2088169819 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2088169816} + 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: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 1452940854} + - {fileID: 2088169819} + - {fileID: 324495856} diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK Marketplace/2.6.1/Marketplace Samples/Prefabs/Scenes/MarketplaceSampleScene.unity.meta b/src/UnitySampleProject/Assets/Samples/web3.unity SDK Marketplace/2.6.1/Marketplace Samples/Prefabs/Scenes/MarketplaceSampleScene.unity.meta new file mode 100644 index 000000000..3061b8174 --- /dev/null +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK Marketplace/2.6.1/Marketplace Samples/Prefabs/Scenes/MarketplaceSampleScene.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 3e59fc56d08b2cb42b49bdb0b0ac5f7b +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/src/UnitySampleProject/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset b/src/UnitySampleProject/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset index 705fc249e..e33a9e12d 100644 --- a/src/UnitySampleProject/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset +++ b/src/UnitySampleProject/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset @@ -196,45 +196,18 @@ MonoBehaviour: m_StrikethroughOffset: 18 m_StrikethroughThickness: 6.298828 m_TabWidth: 24 - m_GlyphTable: - - m_Index: 271 - m_Metrics: - m_Width: 42 - m_Height: 59 - m_HorizontalBearingX: 3 - m_HorizontalBearingY: 58 - m_HorizontalAdvance: 48 - m_GlyphRect: - m_X: 10 - m_Y: 10 - m_Width: 42 - m_Height: 59 - m_Scale: 1 - m_AtlasIndex: 0 - m_ClassDefinitionType: 0 - m_CharacterTable: - - m_ElementType: 1 - m_Unicode: 333 - m_GlyphIndex: 271 - m_Scale: 1 + m_GlyphTable: [] + m_CharacterTable: [] m_AtlasTextures: - {fileID: 28268798066460806} m_AtlasTextureIndex: 0 m_IsMultiAtlasTexturesEnabled: 0 m_ClearDynamicDataOnBuild: 1 - m_UsedGlyphRects: - - m_X: 0 - m_Y: 0 - m_Width: 61 - m_Height: 78 + m_UsedGlyphRects: [] m_FreeGlyphRects: - m_X: 0 - m_Y: 78 - m_Width: 511 - m_Height: 433 - - m_X: 61 m_Y: 0 - m_Width: 450 + m_Width: 511 m_Height: 511 m_fontInfo: Name: Liberation Sans @@ -349,9 +322,9 @@ Texture2D: m_DownscaleFallback: 0 m_IsAlphaChannelOptional: 0 serializedVersion: 2 - m_Width: 512 - m_Height: 512 - m_CompleteImageSize: 262144 + m_Width: 0 + m_Height: 0 + m_CompleteImageSize: 0 m_MipsStripped: 0 m_TextureFormat: 1 m_MipCount: 1 @@ -376,8 +349,8 @@ Texture2D: m_LightmapFormat: 0 m_ColorSpace: 0 m_PlatformBlob: - image data: 262144 - _typelessdata: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000406070a0d0f11121313131212100e0c0906060300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070c10131416191c1d1f1f20201f1e1d1b191613120f0b060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f12181c1f202326282a2b2c2c2c2c2b2a282523201f1c17110f0a03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f161b1d23292c2d303335373839393939383635322f2d2b28221c1b150e0903000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b151b21272c2f34383a3d40424445464646454543413f3c3938332d2b26201a150b06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a111720262b323839404547494c4f50525253535251504e4c4946443f3837312b262017110a02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b141c222832373d43484b515356595b5d5e5f5f5f5f5e5d5b585653504a47433c373127221b140b0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d151d262d333c43474f54555c606366686a6b6c6c6c6c6b69686562605b54534e47423c332d261d150d030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c151f272f383f444e54596063676d707375777879797978787674726f6c66625f58534d443f382f271f150d03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151e273139424a50585f626b6f75797d7f828385858686858483817f7c79746f6a625f575049413931271f150b01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d273039434b545b606a6f767c8185898c8e90919292929291908e8b8985817c756e69605b534b433931271d120700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d18232e39434b555d666c737c83898e9298999b9d9e9f9f9f9f9e9c9b9897918d88827b736c655d554b43392f24180e050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c161f2834404b555d676d78808790949b9fa2a9a29e9c9b9a9a9b9d9fa3a9a19e9a948f877f776d675d554b40352920170d020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28313a45515c676d79828d92999fa6a39f9a97928f8e8d8e8e9092989b9fa3a69e99928c82796d675d51453f32291e1408000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d19242f3a43505a606d79828f949fa3a7a099928e898583818181828386898e92999fa7a39f948f82796d605b51443b3025190e02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935414c56616c74818e949ea6a69f959087817c79767474747577797d818790959ea5a69e948e81756d62564c41362a1e140800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3945525d68717e8a939da6a89f948f837c746f6c6668676768666d70757c838f939ea7a69e938b7f72685e52463b3025190e0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935414c55606d7a85929ea5aca0968f82796e6a62605b545a5b545c60636a6e78818f959faba59f92857a6e61564c41362a1e11050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3945515d6773808d97a1ada69e91847a6d675f5853504a4e4e4b5153585f666d79839099a3ada2978d8174685e5246392d2014090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a85929fa9aa9e94897d70685d554e46443f41414045464e545c676f7c87929faca99f92867a6e6154473c31261a0e020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111e2a36424d5765727f8b98a2aea99c8f82756b60564c433c38332d2e34383c424b555f6a74818e9ba8aea3988c7f7266574d42372b1e1205000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a46525e697683909daaada196897d7063594f433a312b282223282c3039434e58626f7c8895a0acaa9d908477695f53463a2d211407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000814212e3b4754616e7b87959fabab9e9184786c6053463d31281f1c17181c1f27313c47535f6a7784919daaaca095887b6e6155483b2e221506000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1824313e4b5764717e8a97a7b1a79a8e8174665b5044382b1f160f0b0c10151f2b37434e586773808d9aa6b1a7988b7e7165584b3e2d22170b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2834414e5b6774818e9aa7b4aa978a7e7164544a3f3328190d040000040d1b26323d4a5764707d8a97aab4a79b8e81746853493f33271b0f03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111e2a36414c566a7683909da9aea298887b6e6155483b2d221708000000000a15212e3b4854616e7b8798a2aeaa9d908377655b5044372b1f120500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3946525e687885929fabac9f9285796c605346392d201306000000000714212d3a46535e697985929facac9f9285796c605346392d20130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212e3a4754616d7a8798a2aeaa9d918477665b5044382b1f12060000000005121e2a36424d576a7784919daaaea298877a6e6154473b2e21140800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000915222f3c4855626f7b8895aab4a99c8f837669544a3f33281c0f0300000000020e1a2531434f5c6976828f9ca9b4aa95887b6f6255483c2f22150900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1723303d4a5663707d8996a3b0a89b8e8275685b4f422d22170b000000000000091c2835424f5b6875828e9ba8b0a396897d7063564a3d3023170a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1724313d4a5764707d8a97a3b0a79a8e8174675b4e4134281b060000000000010e1b2834414e5b6774818e9aa7b0a3978a7d7064574a3d3124170a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1824313e4b5764717e8a97a4b1a79a8d8174675a4e4134271b0e0100000000010e1b2734414e5a6774818d9aa7b0a4978a7d7164574a3e3124170b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1825313e4b5864717e8b97a4b1a79a8d8074675a4d4134271a0e0100000000010e1a2734414d5a6774808d9aa7b1a4978b7e7164584b3e3125180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1824313e4b5764717e8a97a4b1a79a8d8174675a4e4134271b0e0100000000010e1b2734414e5a6774818d9aa7b1a4978a7e7164574b3e3124180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1724313d4a5764707d8a97a3b0a79a8e8174675b4e4134281b0e0100000000010e1b2834414e5b6774818e9aa7b0a3978a7d7064574a3d3124170a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1723303d4a5663707d8996a3b0a89b8e8175685b4e4235281b090000000000020f1b2835424e5b6875818e9ba8b0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8895aab4a99c8f8276695c4f4330251a0e0200000000030f1c2936424f5c6975828f9ca8b5ab95897c6f6256493c2f23160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000814212e3b4754616e7b8798a3aeaa9d9084776a574d42362a1e12050000000005111d2935414c566a7783909daaafa399877b6e6154483b2e21150800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3a4653606d7986929facab9f928578695e52463a2d201407000000000713202d3946525d687885929eabac9f9286796d6053463a2d201307000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b3844505c667784909daaaea298877b6e6154483b2e21150a000000000714212e3a4754616d7a8797a1adaa9e918477665c5145382c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003101c28343f4a546875818e9ba8b3aa978a7d7064574a3d32271b0d04000001081623303d495663707c8996a9b3a89c8f827569544b4034281c10040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17232e3f4b5865727e8b98a8b2a69a8d807367584e43372b1f15100c090e131e2a36414c5666727f8c99a5b3aa998c7f7366594c402e23180c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000615222f3c4855626f7b8896a0acaa9d9184776a6054473c31271f1c181b1a1e242d3946525e6876838f9ca9aea298897c706356493d30231607000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815212e3a47535f6a7784919eabaca095887c6f62584e4339312c282327262b2f35414c56616d7a86929facab9f9285796d6053463a2d2013070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b37434e586673808d99a3afa89b8e81756a5f554b433c38342e3431373a4145525d68737f8c99a3afa79b8e8175675c5145382c1f130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1a26313c4855616e7b87929faaac9f92877c6f675d554e46454041414142474c515b606d7a85929eabaca095897d7063554b4034281c100400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a15212d3a46535f6975818e98a3aea3999083796d675f5853514b4e4e4e4d53555d606d74818e97a1ada69d9083776b605443392e23180c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2a36424d57616e7b86929fa6aba0958f82796f6a63605c555b5a5b575f62676d747f8c939ea9a99f948a7d7064594f4430271d1207000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a26313b46535f69737f8c949fa7a79f948f837c75706d676867676869696e737a818c919ca5aaa1978f82766c6155473d331e150b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141f2a36424d57606d78828f959fa7a69f959087817d79777574747476787b80858e939ca3aaa29892857b6e615a5044352b210c030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e1a26313b44505c666d7a8390959da5a7a099938e898683828181818385888c92979da5a7a09892867d70695e52483e3323190f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141f28343f4a545e686d7a838e929d9fa7a49f9b9892908e8e8d8e8f9197999ea1a9a29e9590867d706b60574d42362c22110800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b17232e38424c565e686d79818990959b9fa2aaa39f9d9b9a9a9b9c9ea1a9a49f9c97928c837b706b60594f453b30241a1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c26303a444c565e676d747d83898e9298999b9d9e9f9f9f9f9e9d9b999993908b857f786e6960594f473d33291f1208000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141e28323a444c555c606b6f777d8185898c8e90919292929291908f8d8a86837e79726d665f574f473d352b20170d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c162029323a434b515960636b7075797c7f82838485868685858382807d7a76726d67605c544d453d352b23190e05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e172029313940454f54596063676d70727576787879797878777573706d6865605d55514a423c332b231911070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e171f272f343d44484f54555c606366686a6b6c6c6c6c6b6a686664615e5653514b444039302a2119110800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050d1527323b444a4f51534b515356595b5d5e5f5f5f5f5e5d5c5a5754524c534d4b4740382e1e180f0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222e39444d555b5d606060606060606060606060606060606060606060605957524a40352a1f130700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a27333f4a555f676a6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c66635c52473b2f23170a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101d2a36434f5b67717779797979797979797979797979797979797979797979736e63574b3f3226190c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111e2a3744515d6a778386868686868686868686868686868686868686868686807366594d4033261a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111e2a3744515d6a77849093939393939393939393939393939393939393938c807366594d4033261a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111e2a3744515d6a7784909d9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f998c807366594d4033261a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111e2a3744515d6a77849097979797979797979797979797979797979797978c807366594d4033261a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111e2a3744515d6a77838a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a807366594d4033261a0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1723303d4a5663707d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7c6f6255483c2f22150900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4854606b70717171717171717171717171717171717171717171716f6a5f53473a2e21150800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202c38444f59606364646464646464646464646464646464646464646464625f584e43372b1f1206000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c27333d474f54565757575757575757575757575757575757575757575755534e463c31261a0f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b16212b353d44484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4847433c342a20150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050f1a232b33383c3d3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3c3a37312a22180e03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111a21272c2f30313131313131313131313131313131313131313131312f2e2b262018100600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080f161c2022232424242424242424242424242424242424242424242422211f1a150e06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050b10141617171717171717171717171717171717171717171717171515120f0a030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000407090a0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b090806030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + image data: 0 + _typelessdata: m_StreamData: serializedVersion: 2 offset: 0 diff --git a/src/UnitySampleProject/ProjectSettings/EditorBuildSettings.asset b/src/UnitySampleProject/ProjectSettings/EditorBuildSettings.asset index 465d7b9a4..4d4c384fc 100644 --- a/src/UnitySampleProject/ProjectSettings/EditorBuildSettings.asset +++ b/src/UnitySampleProject/ProjectSettings/EditorBuildSettings.asset @@ -15,4 +15,7 @@ EditorBuildSettings: - enabled: 1 path: Assets/Samples/web3.unity SDK/2.6.0/Web3.Unity Samples/Scenes/SampleMain.unity guid: 516f54f8261cf44459691b7adc25e055 + - enabled: 1 + path: Assets/Samples/web3.unity SDK Marketplace/2.6.1/Marketplace Samples/Prefabs/Scenes/MarketplaceSampleScene.unity + guid: 3e59fc56d08b2cb42b49bdb0b0ac5f7b m_configObjects: {} diff --git a/src/UnitySampleProject/ProjectSettings/ProjectSettings.asset b/src/UnitySampleProject/ProjectSettings/ProjectSettings.asset index f44536f56..edffb0ac1 100644 --- a/src/UnitySampleProject/ProjectSettings/ProjectSettings.asset +++ b/src/UnitySampleProject/ProjectSettings/ProjectSettings.asset @@ -234,6 +234,7 @@ PlayerSettings: iOSMetalForceHardShadows: 0 metalEditorSupport: 1 metalAPIValidation: 1 + metalCompileShaderBinary: 0 iOSRenderExtraFrameOnPause: 0 iosCopyPluginsCodeInsteadOfSymlink: 0 appleDeveloperTeamID: From d7073316962fecf18a97ea7538438ad9535a80ca Mon Sep 17 00:00:00 2001 From: Nikola Garabandic Date: Thu, 5 Sep 2024 09:29:21 +0200 Subject: [PATCH 2/8] Refactored ClipboardManager a bit to make it not dependant on sending the messages but rather to do everything trough the callbacks. --- .../Libraries/ChainSafe.Gaming.HyperPlay.dll | Bin 12288 -> 12288 bytes .../ChainSafe.Gaming.Lootboxes.Chainlink.dll | Bin 30720 -> 30720 bytes .../Libraries/Chainsafe.Gaming.Chainlink.dll | Bin 5632 -> 5632 bytes .../Libraries/ChainSafe.Gaming.Mud.dll | Bin 10752 -> 38912 bytes .../Plugins/Web3AuthSDK/WebGL/Clipboard.jslib | 20 ---- .../Web3AuthSDK/iOS/ClipboardManager.m | 13 --- .../Scripts/Web3AuthWalletGUIUIManager.cs | 11 +- .../Libraries/ChainSafe.Gaming.Debugging.dll | Bin 13824 -> 13824 bytes .../Libraries/ChainSafe.Gaming.Gelato.dll | Bin 45056 -> 45056 bytes .../ChainSafe.Gaming.InProcessSigner.dll | Bin 9216 -> 9216 bytes ...fe.Gaming.InProcessTransactionExecutor.dll | Bin 9216 -> 9216 bytes .../ChainSafe.Gaming.Marketplace.dll | Bin 44032 -> 45568 bytes .../ChainSafe.Gaming.SygmaClient.dll | Bin 112640 -> 112640 bytes .../ChainSafe.Gaming.Unity.EthereumWindow.dll | Bin 12288 -> 12288 bytes .../ChainSafe.Gaming.Unity.MetaMask.dll | Bin 9728 -> 9728 bytes .../ChainSafe.Gaming.Unity.ThirdParty.dll | Bin 24064 -> 24064 bytes .../Libraries/ChainSafe.Gaming.Unity.dll | Bin 15360 -> 15360 bytes .../ChainSafe.Gaming.WalletConnect.dll | Bin 51200 -> 51200 bytes .../Runtime/Libraries/ChainSafe.Gaming.dll | Bin 288768 -> 309248 bytes .../Runtime/Plugins/Clipboard.jslib | 31 ++++++ .../Runtime/Plugins}/Clipboard.jslib.meta | 0 .../Runtime/Plugins/iOS/ClipboardManager.m | 27 +++++ .../Plugins}/iOS/ClipboardManager.m.meta | 0 .../Runtime/Scripts/ClipboardManager.cs | 103 ++++++++++++++---- .../Scenes/SampleLogin - Connect Modal.unity | 3 +- 25 files changed, 141 insertions(+), 67 deletions(-) delete mode 100644 Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/WebGL/Clipboard.jslib delete mode 100644 Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/iOS/ClipboardManager.m create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Plugins/Clipboard.jslib rename Packages/{io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/WebGL => io.chainsafe.web3-unity/Runtime/Plugins}/Clipboard.jslib.meta (100%) create mode 100644 Packages/io.chainsafe.web3-unity/Runtime/Plugins/iOS/ClipboardManager.m rename Packages/{io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK => io.chainsafe.web3-unity/Runtime/Plugins}/iOS/ClipboardManager.m.meta (100%) diff --git a/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll b/Packages/io.chainsafe.web3-unity.hyperplay/Runtime/Libraries/ChainSafe.Gaming.HyperPlay.dll index ddef45c47e4818241d8f60a06e5480d67b5a9b0c..63f76f65d1eda038099d5b06cb7e0d877f075865 100644 GIT binary patch delta 412 zcmZojXh@jQ!6MNYvTI_G4CAYbE5jM5PG)4RXZ$d^5lEig%*gazPT=Nj_q*F-)f~1} zA5QhHFwNe~q4N#lkEl+0r=0&?F@>#oW{=#XQx} zgn_}Hk-=*6K`H6Y)~cS2ynlCb-eF+$4PatmV3;*|qMAHwo+|@G-sG)n%8u6_?keE1 z=Jad7r{JWmQI^UGRO4zD6Ht_&m6~0W8RMLjnVMHp9OImkn3-3cn3ft-o|Zw=UGGzT;4< zK+c-KeyjH6;0x30Dit{Q0v!bd*C#Jjmu5UUd9S+WOlt-sP>p^@er~FMQE6UYYLR|<_o-{L{a0mBU=WyW$f&fLPos_5-;yDX!Ggh@!4wFM z7?K%GfOHCwmC9hoU;v~ofMP~Kwh==T5GI3FTLNXwfhvuFIE^6@s3R3fCjrF_H$T=^ RWny|^x>-=~J>x_Jb^tdMe)9kT diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/ChainSafe.Gaming.Lootboxes.Chainlink.dll index db757955accbe339058f1f775625eabec90ad708..e4bbd411ea7b6e16d817723e8285c4ca00a494f6 100644 GIT binary patch delta 419 zcmZqpz}WDCaY6@6V&bc#6MJMB`6jLmXWTiNk+GgpWO5^re7l*E>2QR=%WW!$*#oSc zR=qm4Tk_RB$IVxwR&r}tm|LWnm>C%xBpFyHCmWa=o2R8%n586J8mAbVq$H-8n;NB< zry80}%GBO`A?*k&uizz?YYdFO0Za@G4C^K@%#mlE)Xl&!Y4Xt=Wyf-kA3Ylbyga-2 zX*zT5{C1NOsK(VQCZH%kD>b_$GsZb5Gc~WIIL0|6F*C0?F)cNwJT=K!uQV^Sq%x+s zC^=^GL2nhAnEa%yn4r|0)WqV{n7q`I;*!L?l*FPGBR#{I$q%zsC->%Z8^NsdhFS%5 zRv3rFM23?>X_3`Pvb3@e~U3{Ugf@J zuDe MELirQaiRe`0JHRlC;$Ke diff --git a/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll b/Packages/io.chainsafe.web3-unity.lootboxes/Chainlink/Runtime/Libraries/Chainsafe.Gaming.Chainlink.dll index 7e741e2787fe601bf1969015fc408ecf26ea4c3f..2ba43eada3cd6ba8797ff398edc14f0cc2441884 100644 GIT binary patch delta 410 zcmZqBY0#O_!Qynv=HJ8~8OCE1SB5hdPG)4RXFM~x5lAlG%*eEvU0_Me$GC~Jr@C!^ zr@W=g@yhkhM>r)JH7v|6QcTQ@j17_uER&NBOpVRcQY_3;k}Zu>3{6rJQ_M|`Qp{5g zO(wH)NAt!V^Xg+@^bKHQU|^UvIhR|W)k}+k!E5qFZe_={A71y(<9_Vld->J3!++VY zG6L1OTEzqup#+0Wf8S9niWtLRN6c;7OOrFan zB@>gMlob<{nvLMyX~7Mi$9NW=2U#$!Qjr2IeM4CTWSLscA{( zhLc&jqj|ZlbAB-}`UWsDFfh!VoXaiG>Z!%R;5m6Bx3YuW#E{50Q(au9ELeMlVN2lx zMxYw~jQreG{i4#mywoE7^8BJ~{qoc#W4+S6%#uoEW^qxn{^Yq_QZoAaNm=?qsX3{M z#i{yvsU^iFiFqlBMJYylhF}GjdIc#-48b0bMy6&AP#c%PYy`RPR{zdvx~lKC&Jp^) zb_URGFtBNI9gj5QlF74pG&djP@nD>2z_OW-uZ`K?k|B-3g29}@6bOwNk{L{ZbPAA_ z%3#J|0HiH|Vn#r=5knFXCWBR50%gpBDvf|RjUf@JBNa#|0mTeAKNeJFVme~ASy1FX H&=Ph4r|f-a diff --git a/Packages/io.chainsafe.web3-unity.mud/Runtime/Libraries/ChainSafe.Gaming.Mud.dll b/Packages/io.chainsafe.web3-unity.mud/Runtime/Libraries/ChainSafe.Gaming.Mud.dll index ae571c4d47aba7ff9ea3d1cebfb928e4fe4ad15a..29d307e1aad6d25cdc0ce44b0c4354e28af02a45 100644 GIT binary patch literal 38912 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 diff --git a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/WebGL/Clipboard.jslib b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/WebGL/Clipboard.jslib deleted file mode 100644 index afe3a8506..000000000 --- a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/WebGL/Clipboard.jslib +++ /dev/null @@ -1,20 +0,0 @@ -mergeInto(LibraryManager.library, { - CopyToClipboard: function (text) { - var str = UTF8ToString(text); - navigator.clipboard.writeText(str).then(function () { - console.log('Text copied to clipboard: ' + str); - }).catch(function (error) { - console.error('Failed to copy text: ', error); - }); - }, - - PasteFromClipboard: function () { - navigator.clipboard.readText().then( - clipText => { - web3UnityInstance.SendMessage('WebGLClipboardManager', 'OnPaste', clipText); - } - ).catch(err => { - console.error('Failed to read clipboard contents: ', err); - }); - } -}); \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/iOS/ClipboardManager.m b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/iOS/ClipboardManager.m deleted file mode 100644 index d5199103d..000000000 --- a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/iOS/ClipboardManager.m +++ /dev/null @@ -1,13 +0,0 @@ -#import - -void CopyToClipboard(const char* text) { - NSString *textToCopy = [NSString stringWithUTF8String:text]; - UIPasteboard *pasteboard = [UIPasteboard generalPasteboard]; - pasteboard.string = textToCopy; -} - -const char* PasteFromClipboard() { - UIPasteboard *pasteboard = [UIPasteboard generalPasteboard]; - NSString *pastedText = pasteboard.string; - return [pastedText UTF8String]; -} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Scripts/Web3AuthWalletGUIUIManager.cs b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Scripts/Web3AuthWalletGUIUIManager.cs index 05d760a56..2c969c621 100644 --- a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Scripts/Web3AuthWalletGUIUIManager.cs +++ b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Scripts/Web3AuthWalletGUIUIManager.cs @@ -1,6 +1,7 @@ using System.Collections; using System.Collections.Generic; using ChainSafe.Gaming.InProcessSigner; +using ChainSafe.Gaming; using ChainSafe.Gaming.UnityPackage; using ChainSafe.GamingSdk.Web3Auth; using Nethereum.Web3.Accounts; @@ -115,11 +116,7 @@ private void CheckWalletToggleKeyInput() /// private void CopyWalletAddress() { -#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR ClipboardManager.CopyText(walletAddressText.text); -#else - GUIUtility.systemCopyBuffer = walletAddressText.text; -#endif } /// @@ -209,11 +206,7 @@ private void SetPrivateKey() /// private void CopyPrivateKey() { -#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR - ClipboardManager.CopyToClipboard(privateKeyText.text); - #else - GUIUtility.systemCopyBuffer = privateKeyText.text; -#endif + ClipboardManager.CopyText(walletAddressText.text); } /// diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Debugging.dll index a336696ff7f015683c13fcb367f9c514ce049ee3..80db3d195899733e3bf112c2d14556f1aa6b4980 100644 GIT binary patch delta 427 zcmZq3X~>z-!Lp81taoCM3}fBImEnwZiN&cgd8sAEC5d?{iA5*Yx!Y5*|pMUfCWQ2y_$-WP{iW6BWf6VU1$~=F@9q z_P1a#XRu&MVK8AZV=!VcW-wq#0%A*sWFRzPFa?U3Go%6KEr9YVKru_8ND6}?P<;wR gA`qJc)fj>4RFLTA$A+p*Obu3>1x?;FPBdT#0I(;1asU7T delta 419 zcmZq3X~>z-!D1w9_h@2|3}e;AmEnvUlNlN785<@y0?C-oj7-y&1cZz%m8U*D=euS0 zsn2CIuF7v-p>l{t&oa%z+|<-4*~B!(DAmls$RgRu%qS@-InBb-z}&>hBrVZ2H7&{9 zkb%L0k->U$w3f!^1DX+xyy6RtKQb`-1~4%&FwC5+sx8mT=*7UmIN4KM*`d2H(Qi|z zl;>pYoYOmt^0^s-YVgT1F6qh9Cr6d-m80i^;6-@rC&0_?$DHCQB$W)&CPW>6Bs8Nux#ejYh(7eWJqJMU@&Je1wtc+WCjx; zodRT~GMF(K0BH-Lm=Ta|#E=Ap$zau%KpAtON+TdnV@L$*NCnbKKrzG3j}29sm};yx L3!1zKTEY$hEw+1w diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Gelato.dll index d58f17c84501005d1e18f208da6a30f2d1d9af30..c85bce8acb9d8952a07979a929ccb3df5ee3806c 100644 GIT binary patch delta 394 zcmZp8z|`=7X+j6fZEe-<6MIS+*H30-{LlD!Gb59JpMcY^rtZq5t4e|YG&et- zbC`=aQRiGc1EX&M69WUol*t>H%d>VIV_@i*e0909W3y=2MCPbN&a0o#+N(H8X+0xQ zjjL5mKv8~HYIaFxjB`$AYF&gTG DILLlq delta 393 zcmZp8z|`=7X+j6fPAkQW6MIS+*G*<*{LlDkGb59JpTLK&g9U>*gDDUiF(fmX0O=GUE0w{F!2n2G q0L6@eY$JvwAWR0Uwgk$U163LUaT-G+P)90|P6CPar49;8OCoDSB5h#oXp5r&-iC@BapnhnUSenMBuuDl>OcH_Z;^Y zf1muPj=Oquhu8xq4GVLN6caNeV}m3E%j9GOQ)BbA6brMIWJ}`|Lz9%m6mwIf6!TO= zlgSe#zwpYbT$swh=o`Sqz`(F<@t2ZE0>eNF zMxYv3tC)bI{H)aMlFS(AoXpg`lHwTWjKs{m;>5JnnDW#lW4+S6%#zBO;-ci3$pS(O zGBNo{SusJWIjM=osWEw}CB-F)c`1oSDMosRAO(sR1u01k!5)rAre+LK8`r^X1iDW2 zUGNr$5lOtstP6FKq1CJ-Km6m3_I{Bou=H&O%(wq5Y4l(;%Fqkt~Fr+Y;FqknI zF&Hx#FeCx7B||b08ZejwMa&t}fbteV`4pg-B~T=V!4RlEg&`4$&4Fr+z;r4|bhEs| SOGc(2mYW5Y-ZM@#U!qbjX?6sW=5uR5rIE%R2Q;2y>Vas zV4V%q^L-~bcZfY;(y&akFgGUg0Gp(-+Ilf=cfh ICmOH=0M0Oh+W-In diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.InProcessTransactionExecutor.dll index b7637de212dfc072a5d1b6380fb9c1c02e5dd493..1e98394f0589e8a39d56c4b87e20d4bd4d53f9cb 100644 GIT binary patch delta 385 zcmZqhXz-ZO!Lsu9mwyv`N*KE*Gcx{X+`pNTX}X9&h`aJ8mhVzti@&Dn&iU16vw4M> zIJ2IGxkZYJnUS$Ul7VG%vVp0wd0L8vSxT~{af+cyN@9w+sZok~s-X!3LnQNY4|K!cmTAS}lXR-KOFqkt~Fr+Y;FqknIF&Hx#FeCx7B||b08Zejw qMa&t}fbteV`4pg-B~T=V!4RlEg&`4$&4Fr+z;r4|bn|qDOlAP13UUho delta 396 zcmZqhXz-ZO!P2tYch$t662`8{jEw&o_ibimnl2*1xM^3_vYLskZnqrh{W?*EIY-DDXl$4xiVQFA)Vq}t*XquXqWNyg7kjluAFnObp z)MOuNk;&3hmb~%TBbPET`UWsDFfi<&oG2yFnrz9ykUY6nO4;F1kEa^*ZWre@J08eH zDEY2n1gg=`$j?pHFDlK;OD)nb&o9c>FHcP})+^1+EU83h78fP!LoE`P(a%rH(ho|_ zNlh$H)z3>UDK1IOOGzwBG14=HDUvsW+LjEn4d^n}^rO13XYm>8FFMO&y9wwn7&rrB zD@;@rW861+i?r6}yVBV#{+0}B3>FOL45mP6#E{Hj0;E%btW*Xw1_K~%0TeR=vW*y$ ifG`=X+7c*Z4peCb#AytPKpm+-IteIdxOuulCNlsbHgT!| diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Marketplace.dll index 7e399b810e48ebce4f8fae7dd34c06e3b6f1ebef..6a8943af30b465885a6bf9d7b10c024d4640de9f 100644 GIT binary patch literal 45568 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 delta 10899 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 delta 432 zcmZqpz}E1AZ9)f2(9xQ06MJMBZ%teo&e$=Tk+Gif!Q@6Dxu=6q8;eln6 zk(SFnyA;ZPN$|e@w|xo+P%i3aQdS>uYk diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.EthereumWindow.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.EthereumWindow.dll index 2575fd1eec5275a3e4c955b9b7940d8b6078674f..5fb2234cc97033df9ba9b7eaad691bb510083f80 100644 GIT binary patch delta 382 zcmZojXh@jQ!E#;Z?aPThC5($FGcx{XyuO){>9DlGt(XpDksWc~yA^t8>^V01|K=;Q z5zKlP<`yX?W=6&aNd}h5$p)sz=4mMwW+};*#wms-DTyiOrba2|sfH#D41tUcK9d90 z)HXLL{$b`7V|G~1z~~#m#K6F?VREOcJZp^$14GT^wW`XF&mLv>N*`SBvti#w&Fwu^ zD;R-lT&-dPit@8kvr95#oO3c$^Gb?ioHG(L^NJJGQe(VJCo%W= z>(iRcE}RBB2nL=`Uauz2czyC|HLcCx)RcDt*peX` v2n`rafgB)ZvMXD2fNegk^W delta 393 zcmZojXh@jQ!7_D+KxZ2j`oBxAkOyv&kHWM*+uvOdTb8U6gEEd8L=oYchP zRQJUcy00-HLcBG)tFiREg8}nEEvogOo7mdA(_DhNT&cZ pC}sp?8!;pSVKP{?B~Zp3sL}|C(-;zgI#Pjj5>U)=v%AhtW&lrhdA|Sv diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.MetaMask.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.Unity.MetaMask.dll index fb93271866bf79aaca9a2a083bae258ce2a2c0f0..b2c5eaa012857d36e77203a6b1da82b7491edd42 100644 GIT binary patch delta 392 zcmZqhY4DlQ!J-)XZu!KX5=Q08jEw&o!#6WBIg1Lo>UGul=G3{bV4gWuPtVJCbBOp) zCOr#tixd+xBV&Uk1Iy%O15;!3v=j@olw?ce6ho7g#1wN=qZIR0LlXuDS4IYh$p@v3 zCa;x>=6%^xewKmJH-L$OfnmvHQE7SBKb8y(eD?9GiJbd{=%nJ9;oUVXLZGX2h z0@b)$#RL@PXQgJBWX3q>WTxho6vsGcBxdFnC#I#wl&2;c>y_qZmQ=<=sMpE zNBoP<7JvT2%o-HnZ3T1!6r@hpmyu=+pX@E8wYf~jjn&_R!JNT@A%($&!HmI(!I;5- zAqj{r8Ipm}fWZ_fV$P5Tl(zuNrvSw)fg&jkhCuZx42eK&4pd_Vrc*(po4J*~G6Mj* CF?Qns delta 391 zcmZqhY4DlQ!Lp)Z-m!^2C5%dw85#dGhHYkKauyXRW0mK5x2w#3gYkvDT(d<1n?uBZ zGU-{SS(uxe8YP>UrWmD~85mh48<`m;B_*d>SQ?m{7@4Fcnx>{DnHw@NxH2+0Og<=O zGwgAD-vA~C28P9xMWy9ge_Jvz{GMznt?XbOx715AQ`vjUxmka9ot?gz z5vWE#BR@A)zo;}XFSSU&JijPgzdSX`Sg$lMv!oK4SzMH?541#HMn69(OFt+zCpED+ zRX;Daq_`w8FD0=k#YoQ(q(H% z;vvGJVPS5OVq#`wY>;GNnVf83YHXgCVqun&Y-yZgXp)kcVs2`bVxDSfvUx**3o~!1 zQF%K9qi+Bc0|Uc~$&4ZLtZ#}K7~V`)4N-RFyC3LZ>Kp1Y!I)3!g6mp;MxYv3tC)bI z{H)aMlFS(AoXpg`lHwTWjKs{m;>5JnnDW#lW4+S6%#zBO;-ci3$&LYvGBNo{SusJW zIjM=osWEw}CB-F)c`1oSDMosRUhBrVZ2H7&{9aPx)$7iQkX z+k3t;F!}~CF)%PJpUfB{&-%KEf#LOJ)evQe0}7&|Pj)SJo*@z(<#luCR7Rj0{fzwF zRQ;mTyu8#R{qp>xZ2j`oBxAkOyv&kHWM*+uvi@Yp07V)7{G=@Xpwyhy#Nt%_ywsB7 zlEl1}#G(`^{4E*M7%Ujf8BBrDh#{H51W2ac60fB=eL?IsboqO6THCY*tDXsy+U$aO(j$%EvTHR%4)Kg zSCg0%%Xhj5sg6qlguX02>MLk^9vj<(fe@^|jSLecKer^QAQ9*t@HXjfb*>g9W!mOH z(sYN*FpO9BcQGB|z%&-w&HUFC8lE&lvT5QIxq^nxkllwYMCqE&xC0{o1G;9Nu4Lq3 zv;|r&L?h&Cbc2ILFK_H|^GHJ$TXI%5^VOouJ-W0bJE=_70!b`W)Gb3+EVD}2kM0?%CgcuR=a#PArybR?@kja2*(VCa z`wv)Jq00LY;ha#(){!Z`xq4x)@KLB(h_;iL{2CAW1ZGDt&=>da9fHM8&pbd>cEktx zD#TOx37!hJ;w}n4tq|Q1W1|pcLI_VU-(#C%Hvo%1%t*W?W-l3hT;nQK#1*>PiXqlm~-o-V(z#!iVIjav7}?mv}9eC z4V8~^|5T6`v5og;Sl#c<06SrCeSUJTxv}=HSLCVks>G2M!zq+RDWoD1B@mAU#G)KT8Y%Fws27+d8V5ZEx(Zwx7!`5gSCI^n Y1P||gvCWdDbk_HVFE?-fLY3IM-?Aw|G5`Po delta 1022 zcmY*YT}V?=96xuume(nMfI1U$)6#w1-R4YGBd!aI#d@~N}F;)RcCvh zv~#)j#`u%duhVdTWBfx;?xx{qWw$r#aXXz@6r2%ETsG_xu?vU8V$|ccxdkjlLrxM6 zyY0D$UB{W0Ar_(h+8bXyCXJC~FWXL=PtS4ix7!UaqaP-XN7M=nuZ(WkG#Z)ZCzOkIe@a%$r#SJ1vD=vQ!s6`(U{k zf3sA{oVI^76q5#N(S?Qmig2E*m2qDn6OrjpTq{j=_pB{40Ja`d@S2rV@TFC&px?%7 z`i`A4v@0d*facmhQA}i{bgG<$e!j2}6~HWCQ!>MIUQ>)4*#3BoNa-?L1L$leseG)$ z`U7P8Y&wx7WkQw>kmOi=4+ZPC#*(Khkcg0Yxj`eJv#e^Eu-BK=n&H9Vp1IHVQjsid z+vN|fR02l4>wyuxU*YGld@(wBiW`e}{~ntarrOc0pwGb_W_^6|)u2M#5w`CmCJoK$I-0T4%^Z;oAdYJYCfa={$l1ALv{RUVw~{Fj3kjHKbc65 z@slL%ux6xKdb&JJB}E>N3QcW%B7Bt}CUFu<5ndwcR5~O@LdgiW+GT-(EA6sX+(oWz z_DU-E?rZb2jm3{E6SSUEyA5}R1N84&7L2(sf`@@0f-hI=8mTzrMN#BIZsepLBM}J{ yBQzq&g=`c(l*2T}C``MksJ(Q?O_i9AC<;*rp%|u|9oD=7)gsQ-_vD$ZP4f?J<0m@+ diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.WalletConnect.dll index 61246e70d624acf7620361da7deb41d78f8aa741..80336e8b58b9b5f9a5d2a339ff7c9603b20c5147 100644 GIT binary patch delta 411 zcmZpez}zr_c|r$ESCjmli9IrmW)oM2Gd`Tm$XL&4Gr18+if(3PDqkqD|I38N*O{Aq zwu^LiJb$WRyt!lXasdqsbBh!cGb3YzBm>LjWCK%U^RyHTvy@~@;}k=al*ANsQ==5~ zR6~=^;adthd3EnQH!(2!1~4%&Ff5vUb+0_@t~(42yC(nKtL%7P%T_wJ@s`t`8kSiz zJ}!C82vp;06%$aDpOu*xa#rxqyacnuWQksZp|tX^K&*nSqf-vXPllQc`l7g{6VHiIGWKqG@Vc zlDXmL@GXU$yqT2`4l^+N1~4%&Ff5#Wb+0_@&N~bYJ176#tL$L+ZRKj&Ws_W&t?Cdi zQ$Hia2vnn=k)NBYUsRfxms+G>o?n!$U!Iy|tXGg)IyNs@+=n2eVHqG zDN5^HC&yi&3!p%0^1FS~j3Se{_G?Zy+ka!C0n28-1M8UmEg8}nEEvogOo7mdA(_Dh zNT&cZC}sp?8!;pSVKP{?B~Zp3sL}|C(-;zgI#Pjj5>U)=Gxw3dj7%oB Nn+1=(XPjuj4gmagg|h$v diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll b/Packages/io.chainsafe.web3-unity/Runtime/Libraries/ChainSafe.Gaming.dll index f14565857aee70ae47013b7ffc99d1ac857a99d6..47e8c6fac37314168fef336ed37f8ea92144a665 100644 GIT binary patch literal 309248 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

}B;Ix;U5x5O`C}@I!E|dR?Mpf~uDG`q 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 diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Plugins/Clipboard.jslib b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/Clipboard.jslib new file mode 100644 index 000000000..4230a483c --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/Clipboard.jslib @@ -0,0 +1,31 @@ +var ClipboardManager = { + $ClipboardManager: {}, + + SetPasteCallback: function (callback) { + console.log("SetPasteCallback"); + ClipboardManager.callback = callback; // Use ClipboardManager instead of this.ClipboardManager + }, + + PasteFromClipboard: function () { + navigator.clipboard.readText().then( + clipText => { + console.log("PasteFromClipboard: " + clipText); + Module.dynCall_vi(ClipboardManager.callback, stringToNewUTF8(clipText)); // Use ClipboardManager.callback + } + ).catch(err => { + console.error('Failed to read clipboard contents: ', err); + }); + }, + + CopyToClipboard: function (text) { + var str = UTF8ToString(text); + navigator.clipboard.writeText(str).then(function () { + console.log('Text copied to clipboard: ' + str); + }).catch(function (error) { + console.error('Failed to copy text: ', error); + }); + }, +}; + +autoAddDeps(ClipboardManager, '$ClipboardManager'); +mergeInto(LibraryManager.library, ClipboardManager); diff --git a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/WebGL/Clipboard.jslib.meta b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/Clipboard.jslib.meta similarity index 100% rename from Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/WebGL/Clipboard.jslib.meta rename to Packages/io.chainsafe.web3-unity/Runtime/Plugins/Clipboard.jslib.meta diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Plugins/iOS/ClipboardManager.m b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/iOS/ClipboardManager.m new file mode 100644 index 000000000..f9f7d41cf --- /dev/null +++ b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/iOS/ClipboardManager.m @@ -0,0 +1,27 @@ +#import + +// Define a function pointer for the callback +static void (*clipboardCallback)(const char* text) = NULL; + +// Set the callback function that will be called when pasting from clipboard +void SetPasteCallback(void (*callback)(const char* text)) { + clipboardCallback = callback; +} + +// Copy text to the clipboard +void CopyToClipboard(const char* text) { + NSString *textToCopy = [NSString stringWithUTF8String:text]; + UIPasteboard *pasteboard = [UIPasteboard generalPasteboard]; + pasteboard.string = textToCopy; +} + +// Paste from the clipboard and call the callback +void PasteFromClipboard() { + UIPasteboard *pasteboard = [UIPasteboard generalPasteboard]; + NSString *pastedText = pasteboard.string; + + // Call the callback function if it is set + if (clipboardCallback != NULL) { + clipboardCallback([pastedText UTF8String]); + } +} diff --git a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/iOS/ClipboardManager.m.meta b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/iOS/ClipboardManager.m.meta similarity index 100% rename from Packages/io.chainsafe.web3-unity.web3auth/Runtime/Plugins/Web3AuthSDK/iOS/ClipboardManager.m.meta rename to Packages/io.chainsafe.web3-unity/Runtime/Plugins/iOS/ClipboardManager.m.meta diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs index dec67a896..db76b5a4f 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs @@ -1,51 +1,108 @@ using System; -using System.Collections; -using System.Collections.Generic; using System.Runtime.InteropServices; +using AOT; using TMPro; using UnityEngine; using UnityEngine.EventSystems; +using UnityEngine.Scripting; namespace ChainSafe.Gaming { -#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR public class ClipboardManager : MonoBehaviour { + + private static IClipboardHandler _clipboardHandler; + [RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.AfterSceneLoad)] public static void CreateGameObject() { - var go = new GameObject("WebGLClipboardManager", typeof(ClipboardManager)); + var go = new GameObject("ClipboardManager", typeof(ClipboardManager)); DontDestroyOnLoad(go); } - - [DllImport("__Internal")] - private static extern void CopyToClipboard(string text); - [DllImport("__Internal")] - private static extern string PasteFromClipboard(); - + private void Awake() + { + InitializeClipboardHandler(); + _clipboardHandler?.SetTextPasteCallback(OnPaste); + Debug.Log("After clipboard called"); + } + + private void OnDisable() + { + Debug.Log("On disable called"); + } - public void Update() + private void InitializeClipboardHandler() + { +#if (UNITY_WEBGL || UNITY_IOS) && !UNITY_EDITOR + _clipboardHandler = new ClipboardHandler(); +#else + _clipboardHandler = null; +#endif + } + + void Update() { if (Input.GetKey(KeyCode.LeftControl) && Input.GetKeyDown(KeyCode.V)) { - #if UNITY_IOS - string text = PasteFromClipboard(); - OnPaste(text); - #else - PasteFromClipboard(); - #endif + _clipboardHandler?.Paste(); } } - public void OnPaste(string text) + [MonoPInvokeCallback(typeof(Action))] + public static void OnPaste(string text) { - var currentGo = EventSystem.current.currentSelectedGameObject; - if (currentGo != null && currentGo.TryGetComponent(out var inputField)) - { - inputField.text = text; - } + var currentGo = EventSystem.current?.currentSelectedGameObject; + if (currentGo != null && + currentGo.TryGetComponent(out TMP_InputField inputField)) + inputField.text = text; + } + + public static void CopyText(string text) + { +#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR + _clipboardHandler?.CopyTextToClipboard(text); +#else + GUIUtility.systemCopyBuffer = text; +#endif + } + } + + public delegate void ClipboardPasted(string text); + + public interface IClipboardHandler + { + void CopyTextToClipboard(string text); + void SetTextPasteCallback(ClipboardPasted callback); + void Paste(); + } +#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR + public class ClipboardHandler : IClipboardHandler + { + [DllImport("__Internal")] + private static extern void SetPasteCallback(ClipboardPasted clipboardPasted); + + [DllImport("__Internal")] + private static extern void PasteFromClipboard(); + + [DllImport("__Internal")] + private static extern void CopyToClipboard(string text); + + public void CopyTextToClipboard(string text) + { + CopyToClipboard(text); + } + + public void SetTextPasteCallback(ClipboardPasted callback) + { + SetPasteCallback(callback); } + + public void Paste() + { + PasteFromClipboard(); + } + } #endif } \ No newline at end of file diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.6.0/Web3.Unity Samples/Scenes/SampleLogin - Connect Modal.unity b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.6.0/Web3.Unity Samples/Scenes/SampleLogin - Connect Modal.unity index 1d9b25cc3..1eec44f7f 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.6.0/Web3.Unity Samples/Scenes/SampleLogin - Connect Modal.unity +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.6.0/Web3.Unity Samples/Scenes/SampleLogin - Connect Modal.unity @@ -38,7 +38,6 @@ RenderSettings: m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} - m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: @@ -362,7 +361,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 3d2237df0314604419146b916b88d158, type: 3} m_Name: m_EditorClassIdentifier: - sceneToLoad: SampleMain + sceneToLoad: MarketplaceSampleScene --- !u!224 &199374705475579680 RectTransform: m_ObjectHideFlags: 0 From b6d92d3fe393b16bc93789e2d57b706823083765 Mon Sep 17 00:00:00 2001 From: Nikola Garabandic Date: Thu, 5 Sep 2024 09:30:16 +0200 Subject: [PATCH 3/8] Scene is now SampleMain --- .../Web3.Unity Samples/Scenes/SampleLogin - Connect Modal.unity | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.6.0/Web3.Unity Samples/Scenes/SampleLogin - Connect Modal.unity b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.6.0/Web3.Unity Samples/Scenes/SampleLogin - Connect Modal.unity index 1eec44f7f..3c6806ba1 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.6.0/Web3.Unity Samples/Scenes/SampleLogin - Connect Modal.unity +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.6.0/Web3.Unity Samples/Scenes/SampleLogin - Connect Modal.unity @@ -361,7 +361,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 3d2237df0314604419146b916b88d158, type: 3} m_Name: m_EditorClassIdentifier: - sceneToLoad: MarketplaceSampleScene + sceneToLoad: SampleMain --- !u!224 &199374705475579680 RectTransform: m_ObjectHideFlags: 0 From 58867fb0f7671720f7e514ba7db78bef437c9ee0 Mon Sep 17 00:00:00 2001 From: Nikola Garabandic Date: Thu, 5 Sep 2024 09:58:29 +0200 Subject: [PATCH 4/8] Tidying up --- .../Runtime/Scripts/ClipboardManager.cs | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs index db76b5a4f..a9d307e82 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs @@ -13,23 +13,18 @@ public class ClipboardManager : MonoBehaviour private static IClipboardHandler _clipboardHandler; +#if (UNITY_WEBGL || UNITY_IOS) && !UNITY_EDITOR [RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.AfterSceneLoad)] public static void CreateGameObject() { var go = new GameObject("ClipboardManager", typeof(ClipboardManager)); DontDestroyOnLoad(go); } - +#endif private void Awake() { InitializeClipboardHandler(); _clipboardHandler?.SetTextPasteCallback(OnPaste); - Debug.Log("After clipboard called"); - } - - private void OnDisable() - { - Debug.Log("On disable called"); } private void InitializeClipboardHandler() From ea3ada41abae25c88a4667e419bbd6fc91c59fbe Mon Sep 17 00:00:00 2001 From: Nikola Garabandic Date: Thu, 5 Sep 2024 12:08:39 +0200 Subject: [PATCH 5/8] More cleanup --- .../Runtime/WalletGUI/Scripts/Web3AuthWalletGUIUIManager.cs | 2 +- .../Runtime/Web3AuthConnectionProvider.cs | 1 - .../io.chainsafe.web3-unity/Runtime/Plugins/Clipboard.jslib | 1 - 3 files changed, 1 insertion(+), 3 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Scripts/Web3AuthWalletGUIUIManager.cs b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Scripts/Web3AuthWalletGUIUIManager.cs index 2c969c621..037f0e652 100644 --- a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Scripts/Web3AuthWalletGUIUIManager.cs +++ b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/WalletGUI/Scripts/Web3AuthWalletGUIUIManager.cs @@ -206,7 +206,7 @@ private void SetPrivateKey() ///

private void CopyPrivateKey() { - ClipboardManager.CopyText(walletAddressText.text); + ClipboardManager.CopyText(privateKeyText.text); } /// diff --git a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Web3AuthConnectionProvider.cs b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Web3AuthConnectionProvider.cs index 4fc354370..19efc21ef 100644 --- a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Web3AuthConnectionProvider.cs +++ b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Web3AuthConnectionProvider.cs @@ -235,7 +235,6 @@ public Task OnWeb3Initialized(Web3 web3) { if (enableWalletGui) { - // TODO pass web3 instance here instead of using web3accessor _web3AuthWalletGui = Instantiate(web3AuthWalletGUIPrefab); _web3AuthWalletGui.Initialize(walletGuiConfig); } diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Plugins/Clipboard.jslib b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/Clipboard.jslib index 4230a483c..d9d92dcd9 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Plugins/Clipboard.jslib +++ b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/Clipboard.jslib @@ -20,7 +20,6 @@ var ClipboardManager = { CopyToClipboard: function (text) { var str = UTF8ToString(text); navigator.clipboard.writeText(str).then(function () { - console.log('Text copied to clipboard: ' + str); }).catch(function (error) { console.error('Failed to copy text: ', error); }); From b6f5b15777b8d6284174b3133051e9750e53661b Mon Sep 17 00:00:00 2001 From: Nikola Garabandic Date: Thu, 5 Sep 2024 12:51:49 +0200 Subject: [PATCH 6/8] adding the preprocessor for the new input system. --- .../Runtime/Scripts/ClipboardManager.cs | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs index a9d307e82..43087a42c 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs @@ -10,7 +10,6 @@ namespace ChainSafe.Gaming { public class ClipboardManager : MonoBehaviour { - private static IClipboardHandler _clipboardHandler; #if (UNITY_WEBGL || UNITY_IOS) && !UNITY_EDITOR @@ -36,12 +35,21 @@ private void InitializeClipboardHandler() #endif } - void Update() + private void Update() { +#if ENABLE_INPUT_SYSTEM + // Code for the new Input System + if (Keyboard.current.leftCtrlKey.isPressed && Keyboard.current.vKey.wasPressedThisFrame) + { + _clipboardHandler?.Paste(); + } +#else + // Code for the old Input System if (Input.GetKey(KeyCode.LeftControl) && Input.GetKeyDown(KeyCode.V)) { _clipboardHandler?.Paste(); } +#endif } [MonoPInvokeCallback(typeof(Action))] @@ -50,7 +58,7 @@ public static void OnPaste(string text) var currentGo = EventSystem.current?.currentSelectedGameObject; if (currentGo != null && currentGo.TryGetComponent(out TMP_InputField inputField)) - inputField.text = text; + inputField.text = text; } public static void CopyText(string text) @@ -58,7 +66,7 @@ public static void CopyText(string text) #if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR _clipboardHandler?.CopyTextToClipboard(text); #else - GUIUtility.systemCopyBuffer = text; + GUIUtility.systemCopyBuffer = text; #endif } } From f77d083ca4a6f0f22b846a33a7c1b7b19b39c1aa Mon Sep 17 00:00:00 2001 From: Nikola Garabandic Date: Thu, 5 Sep 2024 16:45:38 +0200 Subject: [PATCH 7/8] more cleanups. --- .../io.chainsafe.web3-unity/Runtime/Plugins/Clipboard.jslib | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Plugins/Clipboard.jslib b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/Clipboard.jslib index d9d92dcd9..3a2c9c694 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Plugins/Clipboard.jslib +++ b/Packages/io.chainsafe.web3-unity/Runtime/Plugins/Clipboard.jslib @@ -2,15 +2,13 @@ var ClipboardManager = { $ClipboardManager: {}, SetPasteCallback: function (callback) { - console.log("SetPasteCallback"); ClipboardManager.callback = callback; // Use ClipboardManager instead of this.ClipboardManager }, PasteFromClipboard: function () { navigator.clipboard.readText().then( clipText => { - console.log("PasteFromClipboard: " + clipText); - Module.dynCall_vi(ClipboardManager.callback, stringToNewUTF8(clipText)); // Use ClipboardManager.callback + Module.dynCall_vi(ClipboardManager.callback, stringToNewUTF8(clipText)); } ).catch(err => { console.error('Failed to read clipboard contents: ', err); From d9f79653f7d0640eb972583f491c8678e7ef9c35 Mon Sep 17 00:00:00 2001 From: Nikola Garabandic Date: Thu, 5 Sep 2024 16:49:13 +0200 Subject: [PATCH 8/8] Adding support for command + v --- .../Runtime/Scripts/ClipboardManager.cs | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs index 43087a42c..9d87c76f9 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ClipboardManager.cs @@ -38,20 +38,19 @@ private void InitializeClipboardHandler() private void Update() { #if ENABLE_INPUT_SYSTEM - // Code for the new Input System - if (Keyboard.current.leftCtrlKey.isPressed && Keyboard.current.vKey.wasPressedThisFrame) - { + if ((Keyboard.current.leftCtrlKey.isPressed || Keyboard.current.leftCommandKey.isPressed) && Keyboard.current.vKey.wasPressedThisFrame) + { _clipboardHandler?.Paste(); - } + } #else - // Code for the old Input System - if (Input.GetKey(KeyCode.LeftControl) && Input.GetKeyDown(KeyCode.V)) + if ((Input.GetKey(KeyCode.LeftControl) || Input.GetKey(KeyCode.LeftCommand)) && Input.GetKeyDown(KeyCode.V)) { _clipboardHandler?.Paste(); } #endif } + [MonoPInvokeCallback(typeof(Action))] public static void OnPaste(string text) {